com.cra.figaro.algorithm

AnytimeProbQuery

trait AnytimeProbQuery extends ProbQueryAlgorithm with Anytime

Anytime algorithms that compute conditional probability of query elements. A class that implements this trait must implement initialize, runStep, computeDistribution, and computeExpectation methods.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AnytimeProbQuery
  2. Anytime
  3. ProbQueryAlgorithm
  4. Algorithm
  5. AnyRef
  6. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. 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.

  2. 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

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. class Runner extends Actor

    A class representing the actor running the algorithm.

Abstract Value Members

  1. abstract 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. The result is a lazy stream. It is up to the algorithm how the stream is ordered.

    Definition Classes
    ProbQueryAlgorithm
  2. abstract 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
    ProbQueryAlgorithm
  3. abstract val queryTargets: Seq[Element[_]]

    Definition Classes
    ProbQueryAlgorithm
  4. abstract 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
    Anytime
  5. abstract val universe: Universe

    Definition Classes
    ProbQueryAlgorithm

Concrete 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. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. 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
  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. 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
  11. val customConf: Config

    The actor running the algorithm.

    The actor running the algorithm.

    Definition Classes
    Anytime
  12. 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
  13. def doDistribution[T](target: Element[T]): Stream[(Double, T)]

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

    Attributes
    protected
    Definition Classes
    AnytimeProbQueryProbQueryAlgorithm
  15. def doKill(): Unit

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

    Attributes
    protected
    Definition Classes
    AnytimeProbQueryProbQueryAlgorithm
  17. def doResume(): Unit

    Attributes
    protected
    Definition Classes
    AnytimeAlgorithm
  18. def doStart(): Unit

    Attributes
    protected
    Definition Classes
    AnytimeAlgorithm
  19. def doStop(): Unit

    Attributes
    protected
    Definition Classes
    AnytimeAlgorithm
  20. final def eq(arg0: AnyRef): Boolean

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

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

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

    Definition Classes
    AnyRef → Any
  25. def handle(service: Service): Response

    A handler of services provided by the algorithm.

    A handler of services provided by the algorithm.

    Definition Classes
    AnytimeProbQueryAnytime
  26. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  27. 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
  28. def isActive: Boolean

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

    Definition Classes
    Any
  30. 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
  31. 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
  32. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  33. final def notify(): Unit

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

    Definition Classes
    AnyRef
  35. 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
  36. 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
  37. 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
  38. 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
  39. var runner: ActorRef

    Definition Classes
    Anytime
  40. var running: Boolean

    Definition Classes
    Anytime
  41. def shutdown: Unit

    Definition Classes
    Anytime
  42. 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
  43. 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
  44. def stopUpdate(): Unit

    Optional function to run when the algorithm is stopped (not killed).

    Optional function to run when the algorithm is stopped (not killed). Used in samplers to update lazy values

    Definition Classes
    Anytime
  45. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  46. var system: ActorSystem

    Definition Classes
    Anytime
  47. implicit val timeout: Timeout

  48. def toString(): String

    Definition Classes
    AnyRef → Any
  49. 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
  50. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Anytime

Inherited from ProbQueryAlgorithm

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped