Class/Object

com.cra.figaro.algorithm.structured.algorithm.flat

FlatBP

Related Docs: object FlatBP | package flat

Permalink

class FlatBP extends StructuredProbQueryAlgorithm with DecompositionProbQuery

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FlatBP
  2. DecompositionProbQuery
  3. DecompositionStructuredAlgorithm
  4. OneTimeStructuredProbQuery
  5. OneTimeProbQuery
  6. OneTimeStructured
  7. OneTime
  8. StructuredProbQueryAlgorithm
  9. ProbQueryAlgorithm
  10. BaseProbQueryAlgorithm
  11. StructuredAlgorithm
  12. Algorithm
  13. AnyRef
  14. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new FlatBP(universe: Universe, iterations: Int, targets: Element[_]*)

    Permalink

Type Members

  1. class NotATargetException[T] extends AlgorithmException

    Permalink
    Definition Classes
    BaseProbQueryAlgorithm

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

    Permalink
    Attributes
    protected
    Definition Classes
    Algorithm
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def check[T](target: Element[T]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseProbQueryAlgorithm
  7. def checkConstraintBounds(): Unit

    Permalink

    Verify that all constraint factors satisfy the bounds needed for the correctness of this algorithm.

    Verify that all constraint factors satisfy the bounds needed for the correctness of this algorithm. This gets executed before solving. By default, this method does nothing; subclasses can override this to throw an exception if the bounds requirements are not met.

    Definition Classes
    StructuredAlgorithm
  8. def cleanUp(): Unit

    Permalink

    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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. val collection: ComponentCollection

    Permalink

    Collection of problem components for this inference problem.

    Collection of problem components for this inference problem. Defaults to a new, empty, collection for non-recursive models.

    Definition Classes
    StructuredAlgorithm
  11. def computeDistribution[T](target: Element[T]): Stream[(Double, T)]

    Permalink

    Computes the normalized distribution over a single target element.

    Computes the normalized distribution over a single target element. Throws an IllegalArgumentException if the range of the target contains star, or if lower and upper bounds are needed.

    Definition Classes
    StructuredProbQueryAlgorithmBaseProbQueryAlgorithm
  12. def computeExpectation[T](target: Element[T], function: (T) ⇒ Double): Double

    Permalink

    Computes the expectation of a given function for single target element.

    Computes the expectation of a given function for single target element. Throws an IllegalArgumentException if the range of the target contains star, or if lower and upper bounds are needed.

    Definition Classes
    StructuredProbQueryAlgorithmBaseProbQueryAlgorithm
  13. 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
  14. def computeProjection[T](target: Element[T]): List[(T, Double)]

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    BaseProbQueryAlgorithm
  15. def distribution(target: List[Element[_]]): (List[(String, ProblemComponent[_])], List[(Double, List[Extended[_]])])

    Permalink
    Definition Classes
    StructuredProbQueryAlgorithm
  16. 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
  17. def doDistribution[T](target: Element[T]): Stream[(Double, T)]

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

    Permalink
    Attributes
    protected
    Definition Classes
    OneTimeProbQueryBaseProbQueryAlgorithm
  19. def doKill(): Unit

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    OneTimeProbQueryBaseProbQueryAlgorithm
  22. def doResume(): Unit

    Permalink
    Attributes
    protected[com.cra.figaro.algorithm]
    Definition Classes
    OneTimeAlgorithm
  23. def doStart(): Unit

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  27. def expectation[T](target: Element[T])(function: (T) ⇒ Double, c: Any = DummyImplicit): 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
  28. 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
  29. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  31. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  32. def initialElements: List[Element[_]]

    Permalink

    Initial elements to pass to the bottom-up strategy for decomposition.

    Initial elements to pass to the bottom-up strategy for decomposition. Defaults to a list containing all problem targets and all evidence elements in the universe.

    Definition Classes
    DecompositionStructuredAlgorithm
  33. def initialize(): Unit

    Permalink

    Initialize the problem by adding all permanent elements to it.

    Initialize the problem by adding all permanent elements to it. This is to ensure that all top-level elements are correctly added to the top-level problem.

    Definition Classes
    DecompositionStructuredAlgorithmStructuredAlgorithmAlgorithm
  34. def isActive: Boolean

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

    Permalink
    Definition Classes
    Any
  36. 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
  37. 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
  38. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  39. def neededBounds(): Set[Bounds]

    Permalink

    All bounds for which this algorithm needs to compute solutions.

    All bounds for which this algorithm needs to compute solutions. This is determined by looking for components that have * in their range, and have constraint factors associated with them. If such a component exists, we need both lower and upper bounds. Otherwise, just one of the bounds suffices because they are equivalent; it defaults to lower in this case.

    returns

    All bounds for which this algorithm should compute solutions.

    Definition Classes
    StructuredAlgorithm
  40. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  42. 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
  43. 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
  44. def probability[T](target: Element[T])(predicate: (T) ⇒ Boolean, c: Any = DummyImplicit): 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
  45. 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
  46. val problem: Problem

    Permalink

    Inference problem to be solved.

    Inference problem to be solved.

    Definition Classes
    StructuredAlgorithm
  47. def problemTargets: List[Element[_]]

    Permalink

    List of targets that should not be eliminated when solving the problem.

    List of targets that should not be eliminated when solving the problem.

    returns

    Targets for the problem.

    Definition Classes
    StructuredProbQueryAlgorithmStructuredAlgorithm
  48. def processSolutions(solutions: Map[Bounds, Solution]): Unit

    Permalink

    Extract the solution in a way that allows fast queries to the algorithm.

    Extract the solution in a way that allows fast queries to the algorithm. This usually involves storing some form of the solution in a variable, but the exact implementation is up to the algorithm that overrides this.

    solutions

    A map from bounds to computed solutions for those bounds. Contains one key for each of the bounds needed, according to neededBounds().

    Definition Classes
    StructuredProbQueryAlgorithmStructuredAlgorithm
  49. val queryTargets: Element[_]*

    Permalink
  50. def rangingStrategy: RangingStrategy

    Permalink

    Uses the default ranging strategy with ParticleGenerator.defaultNumSamplesFromAtomics values.

    Uses the default ranging strategy with ParticleGenerator.defaultNumSamplesFromAtomics values.

    Definition Classes
    OneTimeStructuredStructuredAlgorithm
  51. def refiningStrategy(): RefiningStrategy

    Permalink

    Strategy to use for refinement at a single iteration.

    Strategy to use for refinement at a single iteration. This may return a new strategy for each iteration.

    returns

    A refining strategy to be used for a single iteration.

    Definition Classes
    DecompositionStructuredAlgorithmStructuredAlgorithm
  52. 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
  53. def run(): Unit

    Permalink

    Run the algorithm, performing its computation to completion.

    Run the algorithm, performing its computation to completion.

    Definition Classes
    OneTimeStructuredOneTime
  54. def runStep(): Unit

    Permalink

    Run a single iteration of refinement/solving, then record the solutions.

    Run a single iteration of refinement/solving, then record the solutions.

    Definition Classes
    StructuredAlgorithm
  55. def solvingStrategy(): ConstantStrategy

    Permalink

    Strategy to use for solving at a single iteration.

    Strategy to use for solving at a single iteration. This may return a new strategy for each iteration.

    returns

    A solving strategy to be used for a single iteration.

    Definition Classes
    FlatBPStructuredAlgorithm
  56. 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
  57. 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
  58. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  59. var targetFactors: Map[Bounds, Map[Element[_], Factor[Double]]]

    Permalink
    Attributes
    protected
    Definition Classes
    StructuredProbQueryAlgorithm
  60. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  61. val universe: Universe

    Permalink

    Universe to which elements in the corresponding problem belong.

    Universe to which elements in the corresponding problem belong.

    Definition Classes
    StructuredAlgorithm
  62. def useBoundsString: String

    Permalink
    Attributes
    protected
    Definition Classes
    StructuredProbQueryAlgorithm
  63. 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
  64. final def wait(): Unit

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

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

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

Inherited from DecompositionProbQuery

Inherited from OneTimeProbQuery

Inherited from OneTimeStructured

Inherited from OneTime

Inherited from ProbQueryAlgorithm

Inherited from StructuredAlgorithm

Inherited from Algorithm

Inherited from AnyRef

Inherited from Any

Ungrouped