com.cra.figaro.algorithm.decision

OneTimeDecisionMetropolisHastings

class OneTimeDecisionMetropolisHastings[T, U] extends DecisionMetropolisHastings[T, U] with OneTimeProbQuerySampler

One-time Decision Metropolis-Hastings sampler.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. OneTimeDecisionMetropolisHastings
  2. OneTimeProbQuerySampler
  3. OneTimeProbQuery
  4. OneTimeSampler
  5. OneTime
  6. DecisionMetropolisHastings
  7. DecisionAlgorithm
  8. UnweightedSampler
  9. Sampler
  10. ProbQueryAlgorithm
  11. Algorithm
  12. AnyRef
  13. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OneTimeDecisionMetropolisHastings(universe: Universe, myNumSamples: Int, scheme: ProposalScheme, burnIn: Int, interval: Int, utilityNodes: List[Element[_]], decisionTarget: Decision[T, U])

Type Members

  1. type LastUpdate[T] = (T, Int)

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  2. 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
    UnweightedSampler
  3. type TimesSeen[T] = Map[T, Int]

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  4. type WeightSeen[T] = (Element[T], Map[T, Double])

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastings

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. var active: Boolean

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

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  8. var allTimesSeen: Map[Element[_], TimesSeen[_]]

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  9. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  10. def cleanUp(): Unit

    Called when the algorithm is killed.

    Called when the algorithm is killed. By default, does nothing. Can be overridden.

    Definition Classes
    Algorithm
  11. def cleanup(): Unit

    Cleans up the temporary elements created during sampling

    Cleans up the temporary elements created during sampling

    Definition Classes
    DecisionMetropolisHastings
  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def computeDistribution[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.

    Definition Classes
    UnweightedSamplerProbQueryAlgorithm
  14. 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
    UnweightedSamplerProbQueryAlgorithm
  15. 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
    ProbQueryAlgorithm
  16. def computeUtility(): Map[(T, U), DecisionSample]

    Compute the utility of each parent/decision tuple and return a DecisionSample.

    Compute the utility of each parent/decision tuple and return a DecisionSample. Each decision algorithm must define how this is done since it is used to set the policy for a decision. For sampling algorithms, this will me a map of parent/decision tuples to a utility and a weight for that combination. For factored algorithms, the DecisionSample will contain the exact expected utility with a weight of 1.0.

    Definition Classes
    DecisionMetropolisHastingsDecisionAlgorithm
  17. var debug: Boolean

    Set this flag to true to obtain debugging information

    Set this flag to true to obtain debugging information

    Definition Classes
    DecisionMetropolisHastings
  18. 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
    ProbQueryAlgorithm
  19. def doDistribution[T](target: Element[T]): Stream[(Double, T)]

    Attributes
    protected
    Definition Classes
    OneTimeProbQueryProbQueryAlgorithm
  20. def doExpectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Attributes
    protected
    Definition Classes
    OneTimeProbQueryProbQueryAlgorithm
  21. def doInitialize(): Unit

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastings
  22. def doKill(): Unit

    Attributes
    protected
    Definition Classes
    OneTimeAlgorithm
  23. def doProbability[T](target: Element[T], predicate: (T) ⇒ Boolean): Double

    Attributes
    protected
    Definition Classes
    OneTimeProbQueryProbQueryAlgorithm
  24. def doResume(): Unit

    Attributes
    protected
    Definition Classes
    OneTimeAlgorithm
  25. final def doSample(): Unit

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastingsUnweightedSamplerSampler
  26. def doStart(): Unit

    Attributes
    protected
    Definition Classes
    OneTimeAlgorithm
  27. def doStop(): Unit

    Attributes
    protected
    Definition Classes
    OneTimeAlgorithm
  28. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  30. 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
    ProbQueryAlgorithm
  31. def finalize(): Unit

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

    Definition Classes
    AnyRef → Any
  33. def getSampleCount: Int

    Number of samples taken.

    Number of samples taken.

    Definition Classes
    UnweightedSampler
  34. def getUtility(p: T, d: U): DecisionSample

    Get the total utility and weight for a specific value of a parent and decision

    Get the total utility and weight for a specific value of a parent and decision

    Definition Classes
    DecisionAlgorithm
  35. def getUtility(): Map[(T, U), DecisionSample]

    Get the total utility and weight for all sampled values of the parent and decision

    Get the total utility and weight for all sampled values of the parent and decision

    Definition Classes
    DecisionAlgorithm
  36. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  37. def initUpdates(): Unit

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  38. 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
  39. def isActive: Boolean

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

    Definition Classes
    Any
  41. 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
  42. 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
    ProbQueryAlgorithm
  43. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  44. def newLastUpdate[T](target: Element[T]): (T, Int)

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  45. def newTimesSeen[T](target: Element[T]): TimesSeen[T]

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  46. def newWeightSeen[T](target: Element[T]): (Element[T], Map[T, Double])

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastings
  47. final def notify(): Unit

    Definition Classes
    AnyRef
  48. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  49. val numSamples: Int

    Number of samples to take.

    Number of samples to take.

    Definition Classes
    OneTimeDecisionMetropolisHastingsOneTimeSampler
  50. 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
  51. 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
    ProbQueryAlgorithm
  52. 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
    ProbQueryAlgorithm
  53. lazy val queryTargets: List[Element[_]]

    Definition Classes
    UnweightedSamplerProbQueryAlgorithm
  54. def resetCounts(): Unit

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastingsUnweightedSamplerSampler
  55. 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
  56. def run(): Unit

    Run the algorithm, performing its computation to completion.

    Run the algorithm, performing its computation to completion.

    Definition Classes
    OneTimeDecisionMetropolisHastingsOneTimeSamplerOneTime
  57. final def sample(): (Boolean, Sample)

    Produce a single sample.

    Produce a single sample.

    Definition Classes
    DecisionMetropolisHastingsUnweightedSampler
  58. var sampleCount: Int

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  59. def setPolicy(e: Decision[T, U]): Unit

    Sets the policy for the given decision.

    Sets the policy for the given decision. This will get the computed utility of the algorithm and call setPolicy on the decision. Note there is no error checking here, so the decision in the argument must match the target decision in the algorithm

    Definition Classes
    DecisionAlgorithm
  60. 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
  61. 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
  62. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

    Test Metropolis-Hastings Decisions 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
    DecisionMetropolisHastings
  64. def toString(): String

    Definition Classes
    AnyRef → Any
  65. def update(): Unit

    Attributes
    protected
    Definition Classes
    UnweightedSamplerSampler
  66. def updateTimesSeenForTarget[T](elem: Element[T], newValue: T): Unit

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

    Attributes
    protected
    Definition Classes
    UnweightedSampler
  68. def updateWeightSeenForTarget[T](sample: (Double, Map[Element[_], Any]), weightSeen: (Element[T], Map[T, Double])): Unit

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastings
  69. def updateWeightSeenWithValue[T](value: T, weight: Double, weightSeen: (Element[T], Map[T, Double])): Unit

    Attributes
    protected
    Definition Classes
    DecisionMetropolisHastings
  70. 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
    ProbQueryAlgorithm
  71. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from OneTimeProbQuerySampler

Inherited from OneTimeProbQuery

Inherited from OneTimeSampler

Inherited from OneTime

Inherited from DecisionMetropolisHastings[T, U]

Inherited from DecisionAlgorithm[T, U]

Inherited from UnweightedSampler

Inherited from Sampler

Inherited from ProbQueryAlgorithm

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped