t

# DecompositionStructuredAlgorithm 

#### trait DecompositionStructuredAlgorithm extends StructuredAlgorithm with OneTimeStructured

One time structured algorithms that use a single bottom-up refining strategy to decompose the entire model. This uses the default ranging strategy, and does not create parameterized factors.

Linear Supertypes
Ordering
1. Alphabetic
2. By Inheritance
Inherited
1. DecompositionStructuredAlgorithm
2. OneTimeStructured
3. OneTime
4. StructuredAlgorithm
5. Algorithm
6. AnyRef
7. Any
1. Hide All
2. Show All
Visibility
1. Public
2. All

### Abstract Value Members

1. abstract def problemTargets: List[Element[_]]

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
StructuredAlgorithm
2. abstract def processSolutions(solutions: Map[Bounds, Solution]): Unit

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
StructuredAlgorithm
3. abstract def solvingStrategy()

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
StructuredAlgorithm

### 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. final def asInstanceOf[T0]: T0
Definition Classes
Any
6. def checkConstraintBounds(): Unit

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
7. 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
8. def clone(): AnyRef
Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )
9. val collection
Definition Classes
StructuredAlgorithm
10. def doKill(): Unit
Attributes
protected[com.cra.figaro.algorithm]
Definition Classes
OneTimeAlgorithm
11. def doResume(): Unit
Attributes
protected[com.cra.figaro.algorithm]
Definition Classes
OneTimeAlgorithm
12. def doStart(): Unit
Attributes
protected[com.cra.figaro.algorithm]
Definition Classes
OneTimeAlgorithm
13. def doStop(): Unit
Attributes
protected[com.cra.figaro.algorithm]
Definition Classes
OneTimeAlgorithm
14. final def eq(arg0: AnyRef): Boolean
Definition Classes
AnyRef
15. def equals(arg0: Any): Boolean
Definition Classes
AnyRef → Any
16. def finalize(): Unit
Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
17. final def getClass(): Class[_]
Definition Classes
AnyRef → Any
18. def hashCode(): Int
Definition Classes
AnyRef → Any
19. def initialElements: List[Element[_]]

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.

20. def initialize(): Unit

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
21. def isActive: Boolean
Definition Classes
Algorithm
22. final def isInstanceOf[T0]: Boolean
Definition Classes
Any
23. 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
24. final def ne(arg0: AnyRef): Boolean
Definition Classes
AnyRef
25. def neededBounds(): Set[Bounds]

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
26. final def notify(): Unit
Definition Classes
AnyRef
27. final def notifyAll(): Unit
Definition Classes
AnyRef
28. val problem

Inference problem to be solved.

Inference problem to be solved.

Definition Classes
StructuredAlgorithm
29. def rangingStrategy

Uses the default ranging strategy with `ParticleGenerator.defaultNumSamplesFromAtomics` values.

Uses the default ranging strategy with `ParticleGenerator.defaultNumSamplesFromAtomics` values.

Definition Classes
OneTimeStructuredStructuredAlgorithm
30. def refiningStrategy()

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
31. 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
32. def run(): Unit

Run the algorithm, performing its computation to completion.

Run the algorithm, performing its computation to completion.

Definition Classes
OneTimeStructuredOneTime
33. def runStep(): Unit

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
34. 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
35. 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
36. final def synchronized[T0](arg0: ⇒ T0): T0
Definition Classes
AnyRef
37. def toString(): String
Definition Classes
AnyRef → Any
38. val universe
Definition Classes
StructuredAlgorithm
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( ... )