c

com.cra.figaro.experimental.marginalmap

OneTimeProbEvidenceMarginalMAP

class OneTimeProbEvidenceMarginalMAP extends ProbEvidenceMarginalMAP with OneTimeSampler with OneTimeMarginalMAP

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OneTimeProbEvidenceMarginalMAP
  2. OneTimeMarginalMAP
  3. OneTimeSampler
  4. OneTime
  5. ProbEvidenceMarginalMAP
  6. MarginalMAPAlgorithm
  7. MetropolisHastings
  8. BaseUnweightedSampler
  9. Sampler
  10. Algorithm
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OneTimeProbEvidenceMarginalMAP(numSamples: Int, universe: Universe, tolerance: Double, samplesPerIteration: Int, maxRuns: Int, proposalScheme: ProposalScheme, schedule: Schedule, mapElements: List[Element[_]])

Type Members

  1. class NotATargetException [T] extends AlgorithmException
    Definition Classes
    MarginalMAPAlgorithm
  2. type LastUpdate[T] = (T, Int)
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  3. type Sample = Map[Element[_], Any]

    A sample is a map from elements to their values.

    A sample is a map from elements to their values.

    Definition Classes
    BaseUnweightedSampler
  4. type TimesSeen[T] = Map[T, Int]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  5. class MMAPProbEvidenceSampler extends ProbEvidenceSampler with OneTimeProbEvidenceSampler with OnlineLogStatistics

    Special probability of evidence sampler used for marginal MAP.

    Special probability of evidence sampler used for marginal MAP. Unlike a regular probability of evidence sampler, this records its own variance. It does so in an online fashion, and computes it in log space to prevent underflow. Additionally, this algorithm may be run multiple times. The rolling mean and variance computation incorporates the samples taken from all runs.

    Definition Classes
    ProbEvidenceMarginalMAP

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def accept(state: State): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  5. var acceptProbability: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  6. def acceptRejectRatio: Double

    Get the acceptance ratio for the sampler.

    Get the acceptance ratio for the sampler.

    Definition Classes
    MetropolisHastings
  7. var accepts: Int
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  8. val active: Boolean
    Attributes
    protected
    Definition Classes
    Algorithm
  9. var allLastUpdates: Map[Element[_], LastUpdate[_]]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  10. var allTimesSeen: Map[Element[_], TimesSeen[_]]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  11. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  12. var chainCache: Cache
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  13. def check[T](target: Element[T]): Unit
    Attributes
    protected
    Definition Classes
    MarginalMAPAlgorithm
  14. def cleanUp(): Unit

    Clean up the sampler, freeing memory.

    Clean up the sampler, freeing memory.

    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastingsAlgorithm
  15. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. final def compareMeans(oldSampler: MMAPProbEvidenceSampler, newSampler: MMAPProbEvidenceSampler, logConstant: Double, runs: Int): Boolean

    Decides whether or not the mean of the old sampler, multiplied by the constant given, is likely to be less than the mean of the new sampler.

    Decides whether or not the mean of the old sampler, multiplied by the constant given, is likely to be less than the mean of the new sampler. Computes in log space to avoid underflow. This may mutate the state of the universe. This does not take into account conditions and constraints on the MAP elements directly; these should be incorporated in the log constant provided.

    oldSampler

    Probability of evidence sampler for the previous state of the MAP elements.

    newSampler

    Probability of evidence sampler for the next state of the MAP elements.

    logConstant

    Log of a multiplicative constant, by which we multiply the mean of the old sampler.

    runs

    Maximum allowed additional runs of probability of evidence sampling before this method should return a best guess. This is a kill switch to avoid taking an absurd number of samples when the difference between the means is negligible. Must be >= 0. Setting this to 0 is equivalent to performing no hypothesis test at all and just comparing the values.

    returns

    A decision to accept based on a one-sided t-test of the weights sampled from the two samplers.

    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
    Annotations
    @tailrec()
  17. def computeMostLikelyValue[T](target: Element[T]): T
  18. def computeScores(): Double
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastings
  19. var constraintsBound: Boolean

    Set this flag to true when constraints are bound between 0 and 1 to enable early rejection of states with constrained elements.

    Set this flag to true when constraints are bound between 0 and 1 to enable early rejection of states with constrained elements.

    Definition Classes
    MetropolisHastings
  20. var constraintsSum: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  21. val currentConstraintValues: Map[Element[_], Double]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  22. def currentMAPValues: List[ElemVal[_]]

    Record the current values of all MAP elements.

    Record the current values of all MAP elements.

    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
  23. var debug: Boolean

    Set this flag to true to obtain debugging information.

    Set this flag to true to obtain debugging information.

    Definition Classes
    MetropolisHastings
  24. def decideToAccept(newState: State): Boolean

    Decide whether or not to accept the new (unconstrained) state, first taking into account conditions on the MAP elements.

    Decide whether or not to accept the new (unconstrained) state, first taking into account conditions on the MAP elements. Does not change the state of the universe. Updates the temperature, preserved elements, and probability of evidence sampler accordingly. Incorporates constraints on the MAP elements.

    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastings
  25. def decideToAcceptSatisfied(): Boolean

    Like decideToAccept, but assume all conditions on the MAP elements are satisfied.

    Like decideToAccept, but assume all conditions on the MAP elements are satisfied.

    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
  26. var dissatisfied: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  27. def doInitialize(): Unit
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastings
  28. def doKill(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  29. def doMostLikelyValue[T](target: Element[T]): T
    Attributes
    protected
    Definition Classes
    OneTimeMarginalMAPMarginalMAPAlgorithm
  30. def doResume(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  31. def doSample(): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastingsBaseUnweightedSamplerSampler
  32. def doStart(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  33. def doStop(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  34. var elementsUsedBy: Map[Element[_], Set[Element[_]]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  35. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  37. val fastTargets: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  38. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  39. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  40. def getDissatisfied: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  41. def getSampleCount: Int

    Number of samples taken

    Number of samples taken

    Definition Classes
    BaseUnweightedSampler
  42. def getTemperature: Double

    Get the current temperature.

    Get the current temperature. Used for debugging.

    Definition Classes
    ProbEvidenceMarginalMAP
  43. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  44. def initConstrainedValues(): Unit
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastings
  45. def initUpdates(): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  46. def initialize(): Unit

    Called when the algorithm is started before running any steps.

    Called when the algorithm is started before running any steps. By default, does nothing. Can be overridden.

    Definition Classes
    Algorithm
  47. def isActive: Boolean
    Definition Classes
    Algorithm
  48. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  49. def kill(): Unit

    Kill the algorithm so that it is inactive.

    Kill the algorithm so that it is inactive. It will no longer be able to provide answers.Throws AlgorithmInactiveException if the algorithm is not active.

    Definition Classes
    Algorithm
  50. val mapElements: List[Element[_]]
  51. def mhStep(): State
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastings
  52. def mostLikelyValue[T](target: Element[T]): T

    Returns an estimate of the max a posteriori value of the target.

    Returns an estimate of the max a posteriori value of the target.

    Definition Classes
    MarginalMAPAlgorithm
    Exceptions thrown

    AlgorithmInactiveException if the algorithm is inactive.

    NotATargetException if called on a target that is not in the list of MAP elements.

  53. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  54. def newLastUpdate[T](target: Element[T]): LastUpdate[T]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  55. def newTimesSeen[T](target: Element[T]): TimesSeen[T]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  56. final def notify(): Unit
    Definition Classes
    AnyRef
  57. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  58. val numSamples: Int
  59. var oldModelProb: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  60. var oldPropProb: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  61. var preserve: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
  62. var probEvidenceSampler: MMAPProbEvidenceSampler
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
  63. def proposeAndUpdate(): State
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  64. var proposedElementsSortedUpdates: Map[Iterable[Element[_]], List[Element[_]]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  65. lazy val queryTargets: List[Element[_]]
    Definition Classes
    BaseUnweightedSampler
  66. var rejects: Int
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  67. def resetCounts(): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSamplerSampler
  68. def resume(): Unit

    Resume the computation of the algorithm, if it has been stopped.

    Resume the computation of the algorithm, if it has been stopped. Throws AlgorithmInactiveException if the algorithm is not active.

    Definition Classes
    Algorithm
  69. def run(): Unit

    Run the algorithm, performing its computation to completion.

    Run the algorithm, performing its computation to completion.

    Definition Classes
    OneTimeProbEvidenceMarginalMAPOneTimeSamplerOneTime
  70. def runScheme(): State
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  71. def sample(): (Boolean, Sample)

    Produce a single sample.

    Produce a single sample.

    Definition Classes
    ProbEvidenceMarginalMAPMetropolisHastingsBaseUnweightedSampler
  72. var sampleCount: Int
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  73. def start(): Unit

    Start the algorithm and make it active.

    Start the algorithm and make it active. After it returns, the algorithm must be ready to provide answers. Throws AlgorithmActiveException if the algorithm is already active.

    Definition Classes
    Algorithm
  74. def stop(): Unit

    Stop the algorithm from computing.

    Stop the algorithm from computing. The algorithm is still ready to provide answers after it returns. Throws AlgorithmInactiveException if the algorithm is not active.

    Definition Classes
    Algorithm
  75. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  76. var temperature: Double
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAP
  77. def test(numSamples: Int, predicates: Seq[Predicate[_]], elementsToTrack: Seq[Element[_]]): (Double, Map[Predicate[_], Double], Map[Element[_], Double])

    Test Metropolis-Hastings by repeatedly running a single step from the same initial state.

    Test Metropolis-Hastings by repeatedly running a single step from the same initial state. For each of a set of predicates, the fraction of times the predicate is satisfied by the resulting state is returned. By the resulting state, we mean the new state if it is accepted and the original state if not.

    Definition Classes
    MetropolisHastings
  78. def toString(): String
    Definition Classes
    AnyRef → Any
  79. def undo(state: State): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  80. val universe: Universe
    Definition Classes
    BaseUnweightedSampler
  81. def update(): Unit
  82. def updateTimesSeenForTarget[T](elem: Element[T], newValue: T): Unit
    Attributes
    protected
    Definition Classes
    ProbEvidenceMarginalMAPBaseUnweightedSampler
  83. def updateTimesSeenWithValue[T](value: T, timesSeen: TimesSeen[T], seen: Int): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  84. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  85. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  86. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from OneTimeMarginalMAP

Inherited from OneTimeSampler

Inherited from OneTime

Inherited from ProbEvidenceMarginalMAP

Inherited from MarginalMAPAlgorithm

Inherited from MetropolisHastings

Inherited from BaseUnweightedSampler

Inherited from Sampler

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped