Class VariableEliminationProvider
java.lang.Object
org.episteme.core.mathematics.statistics.bayesian.providers.VariableEliminationProvider
- All Implemented Interfaces:
BayesianInferenceProvider, AlgorithmProvider
@AutoService(AlgorithmProvider.class)
public class VariableEliminationProvider
extends Object
implements BayesianInferenceProvider
Implementation of the Variable Elimination algorithm for Bayesian Inference.
Supports multiple precisions (float, double, Real).
- Since:
- 1.2
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested classes/interfaces inherited from interface BayesianInferenceProvider
BayesianInferenceProvider.BayesNodeData -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetName()intReturns the execution priority (higher is better).query(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Performs inference on a Bayesian network using Real precision.doublequeryDouble(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Performs inference on a Bayesian network using double precision.floatqueryFloat(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Performs inference on a Bayesian network using float precision.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface AlgorithmProvider
description, getMetadata, isAvailable, score, shutdownMethods inherited from interface BayesianInferenceProvider
getAlgorithmType
-
Constructor Details
-
VariableEliminationProvider
public VariableEliminationProvider()
-
-
Method Details
-
getPriority
public int getPriority()Description copied from interface:AlgorithmProviderReturns the execution priority (higher is better).- Specified by:
getPriorityin interfaceAlgorithmProvider
-
query
public Real query(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Description copied from interface:BayesianInferenceProviderPerforms inference on a Bayesian network using Real precision.- Specified by:
queryin interfaceBayesianInferenceProvider
-
queryFloat
public float queryFloat(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Description copied from interface:BayesianInferenceProviderPerforms inference on a Bayesian network using float precision.- Specified by:
queryFloatin interfaceBayesianInferenceProvider
-
queryDouble
public double queryDouble(String target, String targetState, Map<String, String> evidence, List<BayesianInferenceProvider.BayesNodeData> nodes) Description copied from interface:BayesianInferenceProviderPerforms inference on a Bayesian network using double precision.- Specified by:
queryDoublein interfaceBayesianInferenceProvider
-
getName
- Specified by:
getNamein interfaceAlgorithmProvider- Specified by:
getNamein interfaceBayesianInferenceProvider
-