abstract class FactoredFrontier extends Filtering with OneTimeFiltering with FFBPHandler

Abstract class that runs the Factored Frontier algorithm. Like a particle filter, the algorithm is supplied with models representing initial and static universes, as well as a universe transition function.

At each time step, the algorithm copies the marginal probabilities for each named element to a new dummy universe. This dummy universe is then supplied to the transition function.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FactoredFrontier
  2. FFBPHandler
  3. InnerBPHandler
  4. OneTimeFiltering
  5. OneTime
  6. Filtering
  7. Algorithm
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new FactoredFrontier(static: Universe, initial: Universe, transition: (Universe, Universe) ⇒ Universe)

    static

    The universe of elements that do not change over time.

    initial

    The universe describing the distribution over the initial state of the system.

    transition

    The transition model describing how the current state of the system depends on the static and previous, respectively.

Abstract Value Members

  1. abstract def createBP(targets: List[Element[_]], dependentUniverses: List[(Universe, List[NamedEvidence[_]])], dependentAlgorithm: (Universe, List[NamedEvidence[_]]) ⇒ () ⇒ Double, depth: Int = Int.MaxValue, upperBounds: Boolean = false): Unit

    Instantiates the appropriate BP algorithm for the current time step.

    Instantiates the appropriate BP algorithm for the current time step.

    Attributes
    protected
    Definition Classes
    InnerBPHandler
  2. abstract def runBP(): Unit

    Runs the BP algorithm at the current time step.

    Runs the BP algorithm at the current time step.

    Attributes
    protected
    Definition Classes
    InnerBPHandler

Concrete 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. val active: Boolean
    Attributes
    protected
    Definition Classes
    Algorithm
  5. def advanceTime(evidence: Seq[NamedEvidence[_]] = List()): Unit

    Advance the algorithm one time step based on the provided evidence.

    Advance the algorithm one time step based on the provided evidence.

    Definition Classes
    FactoredFrontierFiltering
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. val bp: ProbQueryBeliefPropagation

    BP algorithm associated with this time step.

    BP algorithm associated with this time step.

    Attributes
    protected[com.cra.figaro]
    Definition Classes
    InnerBPHandler
  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
    FactoredFrontierAlgorithm
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def computeCurrentDistribution[T](reference: Reference[T]): Stream[(Double, T)]

    Returns the distribution over the element referred to by the reference at the current time point.

    Returns the distribution over the element referred to by the reference at the current time point.

    Definition Classes
    FactoredFrontierFiltering
  11. def computeCurrentExpectation[T](reference: Reference[T], function: (T) ⇒ Double): Double

    Returns the expectation of the element referred to by the reference under the given function at the current time point.

    Returns the expectation of the element referred to by the reference under the given function at the current time point.

    Definition Classes
    FactoredFrontierFiltering
  12. def computeCurrentProbability[T](reference: Reference[T], predicate: (T) ⇒ Boolean): Double

    Returns the probability that the element referred to by the reference satisfies the given predicate at the current time point.

    Returns the probability that the element referred to by the reference satisfies the given predicate at the current time point.

    Attributes
    protected
    Definition Classes
    Filtering
  13. def currentDistribution[T](reference: Reference[T]): Stream[(Double, T)]

    Returns the distribution over the element referred to by the reference at the current time point.

    Returns the distribution over the element referred to by the reference at the current time point.

    Definition Classes
    OneTimeFilteringFiltering
  14. def currentExpectation[T](reference: Reference[T], function: (T) ⇒ Double): Double

    Returns the expectation of the element referred to by the reference under the given function at the current time point.

    Returns the expectation of the element referred to by the reference under the given function at the current time point.

    Definition Classes
    OneTimeFilteringFiltering
  15. def currentProbability[T](reference: Reference[T], predicate: (T) ⇒ Boolean): Double

    Returns the probability that the element referred to by the reference satisfies the given predicate at the current time point.

    Returns the probability that the element referred to by the reference satisfies the given predicate at the current time point.

    Definition Classes
    OneTimeFilteringFiltering
  16. def currentProbability[T](reference: Reference[T], value: T): Double

    Returns the probability that the element referred to by the reference produces the given value at the current time point.

    Returns the probability that the element referred to by the reference produces the given value at the current time point.

    Definition Classes
    Filtering
  17. var currentStatic: Universe
    Attributes
    protected
    Definition Classes
    FactoredFrontierFFBPHandler
  18. val currentUniverse: Universe

    Universe associated with this algorithm.

    Universe associated with this algorithm.

    Attributes
    protected
    Definition Classes
    InnerBPHandler
  19. val dependentAlgorithm: (Universe, List[NamedEvidence[_]]) ⇒ () ⇒ Double
  20. val dependentUniverse: List[Nothing]
  21. def doKill(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  22. def doResume(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  23. def doStart(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  24. def doStop(): Unit
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  25. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  27. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  28. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  29. def getNamedElements(u: Universe): List[Element[_]]

    Returns all named elements in this universe.

    Returns all named elements in this universe.

    Attributes
    protected
    Definition Classes
    FFBPHandler
  30. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  31. 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
    FactoredFrontierAlgorithm
  32. def isActive: Boolean
    Definition Classes
    Algorithm
  33. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  34. 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
  35. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. final def notify(): Unit
    Definition Classes
    AnyRef
  37. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  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. def run(): Unit

    Run the algorithm, performing its computation to completion.

    Run the algorithm, performing its computation to completion.

    Definition Classes
    FactoredFrontierOneTime
  40. 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
  41. 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
  42. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  43. def toString(): String
    Definition Classes
    AnyRef → Any
  44. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from FFBPHandler

Inherited from InnerBPHandler

Inherited from OneTimeFiltering

Inherited from OneTime

Inherited from Filtering

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped