Package com.bayesserver.inference
Interface InferenceFactory
-
- All Known Implementing Classes:
BackdoorInferenceFactory
,DisjunctiveCauseInferenceFactory
,FrontDoorInferenceFactory
,LikelihoodSamplingInferenceFactory
,LoopyBeliefInferenceFactory
,RelevanceTreeInferenceFactory
,VariableEliminationInferenceFactory
public interface InferenceFactory
Uses the factory design pattern to create inference related objects for inference algorithms. An inference algorithm provides an implementation of this factory, which creates objects specific to that algorithm.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Inference
createInferenceEngine(Network network)
Creates an instance of an inference algorithm, with the [network] as it's target.QueryOptions
createQueryOptions()
Creates options that govern how eachquery
is performed.QueryOutput
createQueryOutput()
Creates an object that collects information about eachquery
, in addition to thedistributions
.
-
-
-
Method Detail
-
createInferenceEngine
Inference createInferenceEngine(Network network)
Creates an instance of an inference algorithm, with the [network] as it's target.- Parameters:
network
- The target Bayesian network.- Returns:
- The inference algorithm/engine.
-
createQueryOptions
QueryOptions createQueryOptions()
Creates options that govern how eachquery
is performed. Each algorithm may provide additional options.- Returns:
- The options.
-
createQueryOutput
QueryOutput createQueryOutput()
Creates an object that collects information about eachquery
, in addition to thedistributions
. Each algorithm may provide additional output information.The output object can be created once, and reused over many calls to
Inference.query(com.bayesserver.inference.QueryOptions, com.bayesserver.inference.QueryOutput)
.- Returns:
- The output instance.
-
-