com.cra.figaro.algorithm.filtering

ParticleFilter

abstract class ParticleFilter extends Filtering

An abstract class of particle filters. A particle filter is provided with three models: a static model, containing a universe defining a distribution over static elements that do not change over time; an initial model, containing a universe defining a distribution over the initial state of time-varying elements; and a transition model, which is a function from the previous universe to a new universe. defining the way the distribution over the new state of the time-varying variables depends on their values in the previous state. The fourth argument to the particle filter is the number of particles to use at each time step.

The particle filter works in an online fashion. At each point in time, it maintains its current beliefs about the state of the system as a set of representative states. advanceTime is used to move forward one time step. The particle filter updates its beliefs in light of the new evidence.

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

Instance Constructors

  1. new ParticleFilter(static: Universe = new Universe(), initial: Universe, transition: (Universe, Universe) ⇒ Universe, numParticles: Int)

    static

    A universe with static elements that do not change over time.

    transition

    The transition function that returns a new universe from a static and previous universe, respectively.

Abstract Value Members

  1. abstract def advanceTime(evidence: Seq[NamedEvidence[_]]): Unit

    Advance the filtering one time step, conditioning on the given evidence at the new time point.

    Advance the filtering one time step, conditioning on the given evidence at the new time point.

    Definition Classes
    Filtering
  2. abstract 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
    Filtering
  3. abstract 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
    Filtering
  4. abstract 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
    Filtering
  5. abstract def doKill(): Unit

    Attributes
    protected
    Definition Classes
    Algorithm
  6. abstract def doResume(): Unit

    Attributes
    protected
    Definition Classes
    Algorithm
  7. abstract def doStart(): Unit

    Attributes
    protected
    Definition Classes
    Algorithm
  8. abstract def doStop(): Unit

    Attributes
    protected
    Definition Classes
    Algorithm

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. var active: Boolean

    Attributes
    protected
    Definition Classes
    Algorithm
  5. def addWeightedParticle(evidence: Seq[NamedEvidence[_]], index: Int): WeightedParticle

    Attributes
    protected
  6. def advanceUniverse(): Unit

    Attributes
    protected
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. val beliefState: BeliefState

    The belief about the state of the system at the current point in time.

  9. 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
  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. 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
    ParticleFilterFiltering
  12. 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
    ParticleFilterFiltering
  13. 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
  14. 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
  15. var currentUniverse: Universe

    Attributes
    protected
  16. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit

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

    Definition Classes
    AnyRef → Any
  20. def getlogProbEvidence(): Double

    The computed log probability of evidence.

  21. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  22. def initialWeightedParticle(): WeightedParticle

    Attributes
    protected
  23. 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
  24. def isActive: Boolean

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

    Definition Classes
    Any
  26. 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
  27. var logProbEvidence: Double

    Attributes
    protected
  28. def makeWeightedParticle(previousState: State): WeightedParticle

    Attributes
    protected
  29. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  32. var previousUniverse: Universe

    Attributes
    protected
  33. def probEvidence(): Double

    The computed probability of evidence.

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

    Definition Classes
    AnyRef
  38. def toString(): String

    Definition Classes
    AnyRef → Any
  39. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Filtering

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped