public interface Factor
Modifier and Type | Interface and Description |
---|---|
static interface |
Factor.Iterator
Interface to be implemented by an object/algorithm that wishes to iterate
over the possible assignments for the random variables comprising this
Factor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
contains(RandomVariable rv) |
java.util.Set<RandomVariable> |
getArgumentVariables() |
double[] |
getValues()
Note: Do not modify the double[] returned by this method directly
as it is intended to be read only.
|
void |
iterateOver(Factor.Iterator fi)
Iterate over all the possible value assignments for the Random Variables
comprising this Factor.
|
void |
iterateOver(Factor.Iterator fi,
AssignmentProposition... fixedValues)
Iterate over all possible values assignments for the Random Variables
comprising this Factor that are not in the fixed set of values.
|
Factor |
pointwiseProduct(Factor multiplier)
Pointwise multiplication of this Factor by a given multiplier, creating a
new Factor representing the product of the two.
see: AIMA3e Figure 14.10 page 527. Note: Default Factor multiplication is not commutative. |
Factor |
pointwiseProductPOS(Factor multiplier,
RandomVariable... prodVarOrder)
Pointwise Multiplication - Product Order Specified (POS).
see: AIMA3e Figure 14.10 page 527. Pointwise multiplication of this Factor by a given multiplier, creating a new Factor representing the product of the two. |
Factor |
sumOut(RandomVariable... vars)
Sum out the provided variables from this Factor creating a new Factor of
the remaining variables with their values updated with the summed out
random variables.
see: AIMA3e page 527. |
java.util.Set<RandomVariable> getArgumentVariables()
boolean contains(RandomVariable rv)
rv
- the Random Variable to be checked.double[] getValues()
Factor sumOut(RandomVariable... vars)
vars
- the random variables to sum out.Factor pointwiseProduct(Factor multiplier)
multiplier
- pointwiseProductPOS(Factor, RandomVariable...)
Factor pointwiseProductPOS(Factor multiplier, RandomVariable... prodVarOrder)
multiplier
- prodVarOrder
- the order the variables comprising the product are to be in.pointwiseProduct(Factor)
void iterateOver(Factor.Iterator fi)
fi
- the Factor Iterator to iterate.void iterateOver(Factor.Iterator fi, AssignmentProposition... fixedValues)
fi
- the Factor Iterator to iteratefixedValues
- Fixed values for a subset of the Random Variables comprising
this Factor.