abstract class RaisingStrategy extends SolvingStrategy
A solving strategy that handles subproblems. It either recursively raises subproblems, or solves them and raises their solutions.
 Alphabetic
 By Inheritance
 RaisingStrategy
 SolvingStrategy
 AnyRef
 Any
 Hide All
 Show All
 Public
 All
Instance Constructors

new
RaisingStrategy(problem: Problem, raisingCriteria: RaisingCriteria)
 problem
Problem to solve.
 raisingCriteria
Decision function to decide whether to solve a subproblem or raise without elimination.
Abstract Value Members

abstract
def
eliminate(toEliminate: Set[Variable[_]], toPreserve: Set[Variable[_]], factors: List[Factor[Double]]): (List[Factor[Double]], Map[Variable[_], Factor[_]])
Solve the problem by eliminating variables, leaving only the ones that belong in the solution.
Solve the problem by eliminating variables, leaving only the ones that belong in the solution.
 toEliminate
Variables to eliminate.
 toPreserve
Variables to preserve.
 factors
Factors over which to perform elimination.
 returns
A list of factors over the variables to preserve representing their joint distribution, and a map of recording factors for MPE.
 Definition Classes
 SolvingStrategy

abstract
def
recurse(subproblem: NestedProblem[_]): RaisingStrategy
Returns a strategy that could be used to solve the nested problem.
Returns a strategy that could be used to solve the nested problem.
 subproblem
Unsolved nested problem to recurse on.
 returns
A strategy to solve the nested problem.
Concrete Value Members

final
def
!=(arg0: Any): Boolean
 Definition Classes
 AnyRef → Any

final
def
##(): Int
 Definition Classes
 AnyRef → Any

final
def
==(arg0: Any): Boolean
 Definition Classes
 AnyRef → Any

final
def
asInstanceOf[T0]: T0
 Definition Classes
 Any

def
chainNonConstraintFactors[ParentValue, Value](chainComp: ChainComponent[ParentValue, Value]): List[Factor[Double]]
Get nonconstraint factors associated with a single Chain component.
Get nonconstraint factors associated with a single Chain component.
 chainComp
Chain component to process.
 returns
All factors associated with the chain component that are needed for solving. This includes (possibly eliminated) subproblem factors.

def
clone(): AnyRef
 Attributes
 protected[java.lang]
 Definition Classes
 AnyRef
 Annotations
 @throws( ... )

def
constraintFactors(bounds: Bounds): List[Factor[Double]]
Get all of the constraint factors needed for solving.
Get all of the constraint factors needed for solving.
 bounds
Bounds for the returned constraint factors.
 returns
Constraint factors for solving.
 Definition Classes
 SolvingStrategy

final
def
eq(arg0: AnyRef): Boolean
 Definition Classes
 AnyRef

def
equals(arg0: Any): Boolean
 Definition Classes
 AnyRef → Any

def
execute(bounds: Bounds = Lower): Unit
Solve the problem defined by all the components' current factors.
Solve the problem defined by all the components' current factors. This involves solving and incorporating subproblems as well. This will set the globals accordingly. All components in this problem and contained subproblems should be eliminated in the solution.
 bounds
Bounds for constraint factors. Defaults to
Lower
. This default is intended for the cases where it does not matter which bounds should be used because both upper and lower bounds would be the same.
 Definition Classes
 SolvingStrategy

def
finalize(): Unit
 Attributes
 protected[java.lang]
 Definition Classes
 AnyRef
 Annotations
 @throws( classOf[java.lang.Throwable] )

final
def
getClass(): Class[_]
 Definition Classes
 AnyRef → Any

def
hashCode(): Int
 Definition Classes
 AnyRef → Any

final
def
isInstanceOf[T0]: Boolean
 Definition Classes
 Any

final
def
ne(arg0: AnyRef): Boolean
 Definition Classes
 AnyRef

def
nonConstraintFactors(): List[Factor[Double]]
Get all of the nonconstraint factors needed for solving.
Get all of the nonconstraint factors needed for solving. This includes subproblem factors.
 returns
Nonconstraint factors for solving.
 Definition Classes
 RaisingStrategy → SolvingStrategy

final
def
notify(): Unit
 Definition Classes
 AnyRef

final
def
notifyAll(): Unit
 Definition Classes
 AnyRef

def
subproblemNonConstraintFactors[ParentValue, Value](chainComp: ChainComponent[ParentValue, Value]): Map[ParentValue, List[Factor[Double]]]
Get the nonconstraint factors associated with all subproblems of a Chain component.
Get the nonconstraint factors associated with all subproblems of a Chain component. This returns the existing solution if there is one. Otherwise, it chooses to solve or raise the subproblem based on the raising criteria.
 chainComp
Chain component whose subproblems are to be processed.
 returns
All factors associated with subproblems that are needed for solving, grouped by parent value.

final
def
synchronized[T0](arg0: ⇒ T0): T0
 Definition Classes
 AnyRef

def
toString(): String
 Definition Classes
 AnyRef → Any

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

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

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