c

com.cra.figaro.algorithm.sampling

AnytimeMetropolisHastings

class AnytimeMetropolisHastings extends MetropolisHastings with UnweightedSampler with AnytimeProbQuerySampler

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AnytimeMetropolisHastings
  2. AnytimeProbQuerySampler
  3. AnytimeSampler
  4. AnytimeProbQuery
  5. Anytime
  6. UnweightedSampler
  7. StreamableProbQueryAlgorithm
  8. ProbQueryAlgorithm
  9. ProbQuerySampler
  10. BaseProbQuerySampler
  11. BaseProbQueryAlgorithm
  12. MetropolisHastings
  13. BaseUnweightedSampler
  14. Sampler
  15. Algorithm
  16. AnyRef
  17. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AnytimeMetropolisHastings(universe: Universe, scheme: ProposalScheme, burnIn: Int, interval: Int, targets: Element[_]*)

    burnIn

    The number of iterations to run before samples are collected

    interval

    The number of iterations to perform between collecting samples

Type Members

  1. class Runner extends Actor

    A class representing the actor running the algorithm.

    A class representing the actor running the algorithm.

    Definition Classes
    Anytime
  2. case class ComputeDistribution [T](target: Element[T]) extends Service with Product with Serializable

    A message instructing the handler to compute the distribution of the target element.

    A message instructing the handler to compute the distribution of the target element.

    Definition Classes
    AnytimeProbQuery
  3. case class ComputeExpectation [T](target: Element[T], function: (T) ⇒ Double) extends Service with Product with Serializable

    A message instructing the handler to compute the expectation of the target element under the given function.

    A message instructing the handler to compute the expectation of the target element under the given function.

    Definition Classes
    AnytimeProbQuery
  4. case class ComputeProbability [T](target: Element[T], predicate: (T) ⇒ Boolean) extends Service with Product with Serializable

    A message instructing the handler to compute the probability of the predicate for the target element.

    A message instructing the handler to compute the probability of the predicate for the target element.

    Definition Classes
    AnytimeProbQuery
  5. case class ComputeProjection [T](target: Element[T]) extends Service with Product with Serializable

    A message instructing the handler to compute the projection of the target element.

    A message instructing the handler to compute the projection of the target element.

    Definition Classes
    AnytimeProbQuery
  6. case class Distribution [T](distribution: Stream[(Double, T)]) extends Response with Product with Serializable

    A message from the handler containing the distribution of the previously requested element.

    A message from the handler containing the distribution of the previously requested element.

    Definition Classes
    AnytimeProbQuery
  7. case class Expectation (expectation: Double) extends Response with Product with Serializable

    A message from the handler containing the expected value of the previously requested element and function.

    A message from the handler containing the expected value of the previously requested element and function.

    Definition Classes
    AnytimeProbQuery
  8. case class Probability (probability: Double) extends Response with Product with Serializable

    A message from the handler containing the probability of the previously requested predicate and element.

    A message from the handler containing the probability of the previously requested predicate and element.

    Definition Classes
    AnytimeProbQuery
  9. case class Projection [T](projection: List[(T, Double)]) extends Response with Product with Serializable

    A message from the handler containing the projection of the previously requested element.

    A message from the handler containing the projection of the previously requested element.

    Definition Classes
    AnytimeProbQuery
  10. class NotATargetException [T] extends AlgorithmException
    Definition Classes
    BaseProbQueryAlgorithm
  11. type LastUpdate[T] = (T, Int)
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  12. 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
  13. type TimesSeen[T] = Map[T, Int]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler

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. def awaitResponse(response: Future[Any], duration: Duration): Response
    Attributes
    protected
    Definition Classes
    Anytime
  13. val blockSize: Int

    Number of samples that should be taken in a single step of the algorithm.

    Number of samples that should be taken in a single step of the algorithm.

    Definition Classes
    AnytimeSampler
  14. var chainCache: Cache
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  15. def check[T](target: Element[T]): Unit
    Attributes
    protected
    Definition Classes
    BaseProbQueryAlgorithm
  16. def cleanUp(): Unit

    Clean up the sampler, freeing memory.

    Clean up the sampler, freeing memory.

    Definition Classes
    MetropolisHastingsAlgorithm
  17. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. def computeDistribution[T](target: Element[T]): Stream[(Double, T)]

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Definition Classes
    BaseProbQuerySamplerBaseProbQueryAlgorithm
  19. def computeExpectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Definition Classes
    BaseProbQuerySamplerBaseProbQueryAlgorithm
  20. def computeProbability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target.

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target.

    Definition Classes
    BaseProbQueryAlgorithm
  21. def computeProjection[T](target: Element[T]): List[(T, Double)]
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    UnweightedSamplerBaseProbQueryAlgorithm
  22. def computeScores(): Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  23. 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
  24. var constraintsSum: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  25. val currentConstraintValues: Map[Element[_], Double]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  26. val customConf: Config

    The actor running the algorithm.

    The actor running the algorithm.

    Definition Classes
    Anytime
  27. var debug: Boolean

    Set this flag to true to obtain debugging information.

    Set this flag to true to obtain debugging information.

    Definition Classes
    MetropolisHastings
  28. def decideToAccept(newState: State): Boolean
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  29. var dissatisfied: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  30. def distribution[T](target: Element[T]): Stream[(Double, T)]

    Return an estimate of the marginal probability distribution over the target that lists each element with its probability.

    Return an estimate of the marginal probability distribution over the target that lists each element with its probability. The result is a lazy stream. It is up to the algorithm how the stream is ordered. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  31. def doDistribution[T](target: Element[T]): Stream[(Double, T)]
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  32. def doExpectation[T](target: Element[T], function: (T) ⇒ Double): Double
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  33. def doInitialize(): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  34. def doKill(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  35. def doProbability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  36. def doProjection[T](target: Element[T]): List[(T, Double)]
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  37. def doResume(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  38. def doSample(): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastingsBaseUnweightedSamplerSampler
  39. def doStart(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  40. def doStop(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  41. var elementsUsedBy: Map[Element[_], Set[Element[_]]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  42. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  43. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  44. def expectation[T](target: Element[T])(function: (T) ⇒ Double, c: Any = DummyImplicit): Double

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Return an estimate of the expectation of the function under the marginal probability distribution of the target. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  45. def expectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Return an estimate of the expectation of the function under the marginal probability distribution of the target.

    Return an estimate of the expectation of the function under the marginal probability distribution of the target. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  46. val fastTargets: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  47. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  48. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  49. def getDissatisfied: Set[Element[_]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  50. def getSampleCount: Int

    Number of samples taken

    Number of samples taken

    Definition Classes
    BaseUnweightedSampler
  51. def getTotalWeight: Double

    Total weight of samples taken, in log space

    Total weight of samples taken, in log space

    Definition Classes
    UnweightedSamplerBaseProbQuerySampler
  52. def handle(service: Service): Response

    A handler of services provided by the algorithm.

    A handler of services provided by the algorithm.

    Definition Classes
    AnytimeProbQueryAnytime
  53. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  54. def initConstrainedValues(): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  55. def initUpdates(): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  56. def initialize(): Unit

    Initialize the sampler.

    Initialize the sampler.

    Definition Classes
    AnytimeMetropolisHastingsAnytimeSamplerAlgorithm
  57. def isActive: Boolean
    Definition Classes
    Algorithm
  58. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  59. 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
  60. def mean(target: Element[Double]): Double

    Return the mean of the probability density function for the given continuous element.

    Return the mean of the probability density function for the given continuous element.

    Definition Classes
    BaseProbQueryAlgorithm
  61. implicit val messageTimeout: Timeout

    default message timeout.

    default message timeout. Increase if queries to the algorithm fail due to timeout

    Definition Classes
    Anytime
  62. def mhStep(): State
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  63. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  64. def newLastUpdate[T](target: Element[T]): LastUpdate[T]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  65. def newTimesSeen[T](target: Element[T]): TimesSeen[T]
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  66. final def notify(): Unit
    Definition Classes
    AnyRef
  67. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  68. var oldModelProb: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  69. var oldPropProb: Double
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  70. def posteriorElement[T](target: Element[T], universe: Universe = Universe.universe): Element[T]

    Return an element representing the posterior probability distribution of the given element.

    Return an element representing the posterior probability distribution of the given element.

    Definition Classes
    ProbQueryAlgorithm
  71. def probability[T](target: Element[T], value: T): Double

    Return an estimate of the probability that the target produces the value.

    Return an estimate of the probability that the target produces the value. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  72. def probability[T](target: Element[T])(predicate: (T) ⇒ Boolean, c: Any = DummyImplicit): Double

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target.

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  73. def probability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target.

    Return an estimate of the probability of the predicate under the marginal probability distribution of the target. Throws NotATargetException if called on a target that is not in the list of targets of the algorithm. Throws AlgorithmInactiveException if the algorithm is inactive.

    Definition Classes
    BaseProbQueryAlgorithm
  74. def proposeAndUpdate(): State
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  75. var proposedElementsSortedUpdates: Map[Iterable[Element[_]], List[Element[_]]]
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  76. lazy val queryTargets: List[Element[_]]
    Definition Classes
    BaseUnweightedSampler
  77. var rejects: Int
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  78. def resetCounts(): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSamplerSampler
  79. 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
  80. def runScheme(): State
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  81. def runStep(): Unit

    Run a single step of the algorithm.

    Run a single step of the algorithm. The algorithm must be able to provide answers after each step.

    Definition Classes
    AnytimeSamplerAnytime
  82. val runner: ActorRef
    Definition Classes
    Anytime
  83. val running: Boolean
    Definition Classes
    Anytime
  84. def sample(): (Boolean, Sample)

    Produce a single sample.

    Produce a single sample.

    Definition Classes
    MetropolisHastingsBaseUnweightedSampler
  85. var sampleCount: Int
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  86. def sampleFromPosterior[T](element: Element[T]): Stream[T]

    Sample an value from the posterior of this element

    Sample an value from the posterior of this element

    Definition Classes
    UnweightedSamplerStreamableProbQueryAlgorithm
  87. def shutdown: Unit

    Release all resources from this anytime algorithm.

    Release all resources from this anytime algorithm.

    Definition Classes
    Anytime
  88. 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
  89. 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
  90. def stopUpdate(): Unit

    Override the stopUpdate function in anytime to call the sampler update function

    Override the stopUpdate function in anytime to call the sampler update function

    Definition Classes
    AnytimeSamplerAnytime
  91. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  92. val system: ActorSystem
    Definition Classes
    Anytime
  93. 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
  94. def toString(): String
    Definition Classes
    AnyRef → Any
  95. def undo(state: State): Unit
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  96. val universe: Universe
    Definition Classes
    BaseUnweightedSampler
  97. def update(): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSamplerSampler
  98. def updateTimesSeenForTarget[T](elem: Element[T], newValue: T): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  99. def updateTimesSeenWithValue[T](value: T, timesSeen: TimesSeen[T], seen: Int): Unit
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  100. def variance(target: Element[Double]): Double

    Return the variance of the probability density function for the given continuous element.

    Return the variance of the probability density function for the given continuous element.

    Definition Classes
    BaseProbQueryAlgorithm
  101. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  102. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  103. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnytimeProbQuerySampler

Inherited from AnytimeSampler

Inherited from AnytimeProbQuery

Inherited from Anytime

Inherited from UnweightedSampler

Inherited from ProbQueryAlgorithm

Inherited from ProbQuerySampler

Inherited from BaseProbQuerySampler[Element]

Inherited from MetropolisHastings

Inherited from BaseUnweightedSampler

Inherited from Sampler

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped