Class

com.cra.figaro.algorithm.sampling

AnytimeMetropolisHastings

Related Doc: package sampling

Permalink

class AnytimeMetropolisHastings extends MetropolisHastings with UnweightedSampler with AnytimeProbQuerySampler

Anytime Metropolis-Hastings sampler.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AnytimeMetropolisHastings
  2. AnytimeProbQuerySampler
  3. AnytimeSampler
  4. AnytimeProbQuery
  5. Anytime
  6. ProbQueryAlgorithm
  7. UnweightedSampler
  8. ProbQuerySampler
  9. BaseProbQuerySampler
  10. BaseProbQueryAlgorithm
  11. MetropolisHastings
  12. BaseUnweightedSampler
  13. Sampler
  14. Algorithm
  15. AnyRef
  16. 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[_]*)

    Permalink

    burnIn

    The number of iterations to run before samples are collected

    interval

    The number of iterations to perform between collecting samples

Type Members

  1. case class ComputeDistribution[T](target: Element[T]) extends Service with Product with Serializable

    Permalink

    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
  2. case class ComputeExpectation[T](target: Element[T], function: (T) ⇒ Double) extends Service with Product with Serializable

    Permalink

    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
  3. case class ComputeProbability[T](target: Element[T], predicate: (T) ⇒ Boolean) extends Service with Product with Serializable

    Permalink

    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
  4. case class ComputeProjection[T](target: Element[T]) extends Service with Product with Serializable

    Permalink

    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
  5. case class Distribution[T](distribution: Stream[(Double, T)]) extends Response with Product with Serializable

    Permalink

    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
  6. case class Expectation(expectation: Double) extends Response with Product with Serializable

    Permalink

    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
  7. type LastUpdate[T] = (T, Int)

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  8. class NotATargetException[T] extends AlgorithmException

    Permalink
    Definition Classes
    BaseProbQueryAlgorithm
  9. case class Probability(probability: Double) extends Response with Product with Serializable

    Permalink

    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
  10. case class Projection[T](projection: List[(T, Double)]) extends Response with Product with Serializable

    Permalink

    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
  11. class Runner extends Actor

    Permalink

    A class representing the actor running the algorithm.

    A class representing the actor running the algorithm.

    Definition Classes
    Anytime
  12. type Sample = Map[Element[_], Any]

    Permalink

    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]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def accept(state: State): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  5. def acceptRejectRatio: Double

    Permalink

    Get the acceptance ratio for the sampler.

    Get the acceptance ratio for the sampler.

    Definition Classes
    MetropolisHastings
  6. var accepts: Int

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  7. var active: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Algorithm
  8. var allLastUpdates: Map[Element[_], LastUpdate[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  9. var allTimesSeen: Map[Element[_], TimesSeen[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def awaitResponse(response: Future[Any], duration: Duration): Response

    Permalink
    Attributes
    protected
    Definition Classes
    Anytime
  12. val blockSize: Int

    Permalink

    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
  13. var chainCache: Cache

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  14. def cleanUp(): Unit

    Permalink

    Clean up the sampler, freeing memory.

    Clean up the sampler, freeing memory.

    Definition Classes
    AnytimeMetropolisHastingsAlgorithm
  15. def clone(): AnyRef

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

    Permalink

    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
  17. def computeExpectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Permalink

    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
  18. def computeProbability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Permalink

    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
  19. def computeProjection[T](target: Element[T]): List[(T, Double)]

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    UnweightedSamplerBaseProbQueryAlgorithm
  20. def computeScores(): Double

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  21. val customConf: Config

    Permalink

    The actor running the algorithm.

    The actor running the algorithm.

    Definition Classes
    Anytime
  22. var debug: Boolean

    Permalink

    Set this flag to true to obtain debugging information.

    Set this flag to true to obtain debugging information.

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

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  24. var dissatisfied: Set[Element[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  25. def distribution[T](target: Element[T]): Stream[(Double, T)]

    Permalink

    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
  26. def doDistribution[T](target: Element[T]): Stream[(Double, T)]

    Permalink
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  27. def doExpectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Permalink
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  28. def doInitialize(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  29. def doKill(): Unit

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  30. def doProbability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Permalink
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  31. def doProjection[T](target: Element[T]): List[(T, Double)]

    Permalink
    Attributes
    protected
    Definition Classes
    AnytimeProbQueryBaseProbQueryAlgorithm
  32. def doResume(): Unit

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  33. def doSample(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastingsBaseUnweightedSamplerSampler
  34. def doStart(): Unit

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  35. def doStop(): Unit

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    AnytimeAlgorithm
  36. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  37. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  38. def expectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Permalink

    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
  39. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  40. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  41. def getDissatisfied: Set[Element[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  42. def getSampleCount: Int

    Permalink

    Number of samples taken

    Number of samples taken

    Definition Classes
    BaseUnweightedSampler
  43. def getTotalWeight: Double

    Permalink

    Total weight of samples taken, in log space

    Total weight of samples taken, in log space

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

    Permalink

    A handler of services provided by the algorithm.

    A handler of services provided by the algorithm.

    Definition Classes
    AnytimeProbQueryAnytime
  45. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  46. def initConstrainedValues(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  47. def initUpdates(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  48. def initialize(): Unit

    Permalink

    Initialize the sampler.

    Initialize the sampler.

    Definition Classes
    AnytimeMetropolisHastingsAnytimeSamplerAlgorithm
  49. def isActive: Boolean

    Permalink
    Definition Classes
    Algorithm
  50. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  51. def kill(): Unit

    Permalink

    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
  52. def mean(target: Element[Double]): Double

    Permalink

    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
  53. implicit var messageTimeout: Timeout

    Permalink

    default message timeout.

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

    Definition Classes
    Anytime
  54. def mhStep(): State

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  55. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  56. def newLastUpdate[T](target: Element[T]): LastUpdate[T]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  57. def newTimesSeen[T](target: Element[T]): TimesSeen[T]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  58. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  59. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  60. def posteriorElement[T](target: Element[T], universe: Universe = Universe.universe): Element[T]

    Permalink

    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
  61. def probability[T](target: Element[T], value: T): Double

    Permalink

    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
  62. def probability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Permalink

    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
  63. def proposeAndUpdate(): State

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  64. lazy val queryTargets: List[Element[_]]

    Permalink
    Definition Classes
    BaseUnweightedSampler
  65. var rejects: Int

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  66. def resetCounts(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSamplerSampler
  67. def resume(): Unit

    Permalink

    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
  68. def runScheme(): State

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  69. def runStep(): Unit

    Permalink

    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
  70. var runner: ActorRef

    Permalink
    Definition Classes
    Anytime
  71. var running: Boolean

    Permalink
    Definition Classes
    Anytime
  72. def sample(): (Boolean, Sample)

    Permalink

    Produce a single sample.

    Produce a single sample.

    Definition Classes
    MetropolisHastingsBaseUnweightedSampler
  73. var sampleCount: Int

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  74. def shutdown: Unit

    Permalink

    Release all resources from this anytime algorithm.

    Release all resources from this anytime algorithm.

    Definition Classes
    Anytime
  75. def start(): Unit

    Permalink

    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
  76. def stop(): Unit

    Permalink

    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
  77. def stopUpdate(): Unit

    Permalink

    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
  78. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  79. var system: ActorSystem

    Permalink
    Definition Classes
    Anytime
  80. def test(numSamples: Int, predicates: Seq[Predicate[_]], elementsToTrack: Seq[Element[_]]): (Double, Map[Predicate[_], Double], Map[Element[_], Double])

    Permalink

    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
  81. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  82. def undo(state: State): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MetropolisHastings
  83. val universe: Universe

    Permalink
    Definition Classes
    BaseUnweightedSampler
  84. def update(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSamplerSampler
  85. def updateTimesSeenForTarget[T](elem: Element[T], newValue: T): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  86. def updateTimesSeenWithValue[T](value: T, timesSeen: TimesSeen[T], seen: Int): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseUnweightedSampler
  87. def variance(target: Element[Double]): Double

    Permalink

    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
  88. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  89. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  90. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnytimeProbQuerySampler

Inherited from AnytimeSampler

Inherited from AnytimeProbQuery

Inherited from Anytime

Inherited from ProbQueryAlgorithm

Inherited from UnweightedSampler

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