49#ifndef GUM_CN_MONTE_CARLO_SAMPLING_H
50#define GUM_CN_MONTE_CARLO_SAMPLING_H
79 template < GUM_Numeric GUM_SCALAR,
class BNInferenceEngine = LazyPropagation< GUM_SCALAR > >
116 inline void _binaryRep_(std::vector< bool >& toFill,
const Idx value)
const;
151#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
<agrum/CN/CNMonteCarloSampling.h>
void _verticesSampling_(Size this_thread)
Thread samples a IBayesNet from the CredalNet.
~CNMonteCarloSampling() override
Destructor.
CNMonteCarloSampling(const CredalNet< GUM_SCALAR > &credalNet)
Constructor.
void _binaryRep_(std::vector< bool > &toFill, const Idx value) const
Get the binary representation of a given value.
void _threadInference_(Size this_thread)
Thread performs an inference using BNInferenceEngine.
void _insertEvidence_(Size this_thread)
Insert CredalNet evidence into a thread BNInferenceEngine.
void _mcInitApproximationScheme_()
Initialize approximation Scheme.
MultipleInferenceEngine< GUM_SCALAR, BNInferenceEngine > _infEs_
To easily acces MultipleInferenceEngine< GUM_SCALAR, BNInferenceEngine.
void _mcThreadDataCopy_()
Initialize threads data.
void _threadUpdate_(Size this_thread)
Update thread data after a IBayesNet inference.
void insertEvidenceFile(std::string_view path) override
unsigned int notOptDelete;
void makeInference() override
Starts the inference.
Class template representing a Credal Network.
const CredalNet< GUM_SCALAR > & credalNet() const
MultipleInferenceEngine(const CredalNet< GUM_SCALAR > &credalNet)
std::size_t Size
In aGrUM, hashed values are unsigned long int.
Size Idx
Type for indexes.
Abstract class representing CredalNet inference engines.
namespace for all credal networks entities
gum is the global namespace for all aGrUM entities