MultiAgentDecisionProcess
FSDist_COF Class Reference

FSDist_COF is a class that represents a completely factored state distribution. More...

#include <FSDist_COF.h>

Inheritance diagram for FSDist_COF:
[legend]

Public Member Functions

virtual FSDist_COFClone () const
 Returns a pointer to a copy of this class. More...
 
 FSDist_COF ()
 Constructor without arguments, needed for serialization. More...
 
 FSDist_COF (const MADPComponentFactoredStates &a)
 
 FSDist_COF (const MultiAgentDecisionProcessDiscreteFactoredStatesInterface &a)
 
 FSDist_COF (const FSDist_COF &a)
 Copy constructor. More...
 
virtual size_t GetNrStates () const
 
virtual double GetProbability (Index sI) const
 
double GetProbability (const std::vector< Index > &sfacValues) const
 
double GetProbability (const Scope &sfSc, const std::vector< Index > &sfacValues) const
 
double & GetReferrence (Index sfacI, Index sfacValueI)
 
virtual void Normalize (Index sfacI)
 
void Normalize (Index sfacI, double sum)
 
FSDist_COFoperator= (const FSDist_COF &o)
 Copy assignment operator. More...
 
std::vector< IndexSampleState () const
 
void SanityCheck ()
 
void SetProbability (Index sfacI, Index valI, double prob)
 
virtual void SetUniform ()
 
virtual void SetZero ()
 
virtual std::string SoftPrint () const
 
virtual std::vector< double > ToVectorOfDoubles () const
 
virtual ~FSDist_COF ()
 Destructor. More...
 
- Public Member Functions inherited from FactoredStateDistribution
virtual ~FactoredStateDistribution ()
 Destructor. More...
 
- Public Member Functions inherited from StateDistribution
virtual ~StateDistribution ()
 

Private Attributes

size_t _m_nrStateFactors
 The number of state factors. More...
 
std::vector< std::vector
< double > > 
_m_probs
 _m_probs[sfacI][valI] contains probability of valI for SF sfacI. More...
 
std::vector< size_t > _m_sfacDomainSizes
 Vector with size of the domain of each state factor (the nr. values) More...
 
size_t * _m_stepSize
 Array caching the stepsize - used for computing indices. More...
 

Detailed Description

FSDist_COF is a class that represents a completely factored state distribution.

I.e., a distribution represented as the product of marginal state factor probabilities.

Constructor & Destructor Documentation

FSDist_COF::FSDist_COF ( )

Constructor without arguments, needed for serialization.

Referenced by Clone().

FSDist_COF::FSDist_COF ( const FSDist_COF a)

Copy constructor.

References _m_sfacDomainSizes, _m_stepSize, and IndexTools::CalculateStepSize().

FSDist_COF::~FSDist_COF ( )
virtual

Destructor.

References _m_stepSize.

Member Function Documentation

virtual FSDist_COF* FSDist_COF::Clone ( ) const
inlinevirtual

Returns a pointer to a copy of this class.

Implements FactoredStateDistribution.

References FSDist_COF().

size_t FSDist_COF::GetNrStates ( ) const
virtual

Implements StateDistribution.

References _m_nrStateFactors, and _m_sfacDomainSizes.

Referenced by ToVectorOfDoubles().

double FSDist_COF::GetProbability ( Index  sI) const
virtual
double FSDist_COF::GetProbability ( const std::vector< Index > &  sfacValues) const
virtual
double FSDist_COF::GetProbability ( const Scope sfSc,
const std::vector< Index > &  sfacValues 
) const

References _m_probs.

double& FSDist_COF::GetReferrence ( Index  sfacI,
Index  sfacValueI 
)
inline

Referenced by FSAOHDist_NECOF::Update().

void FSDist_COF::Normalize ( Index  sfacI)
virtual

References _m_probs.

Referenced by SanityCheck().

void FSDist_COF::Normalize ( Index  sfacI,
double  sum 
)
FSDist_COF & FSDist_COF::operator= ( const FSDist_COF o)
vector< Index > FSDist_COF::SampleState ( ) const
virtual
void FSDist_COF::SetProbability ( Index  sfacI,
Index  valI,
double  prob 
)
inline
void FSDist_COF::SetUniform ( )
virtual
void FSDist_COF::SetZero ( )
virtual
string FSDist_COF::SoftPrint ( ) const
virtual
vector< double > FSDist_COF::ToVectorOfDoubles ( ) const
virtual

Member Data Documentation

size_t FSDist_COF::_m_nrStateFactors
private

The number of state factors.

Referenced by GetNrStates(), GetProbability(), operator=(), SampleState(), SetUniform(), SetZero(), and ToVectorOfDoubles().

std::vector< std::vector<double> > FSDist_COF::_m_probs
private

_m_probs[sfacI][valI] contains probability of valI for SF sfacI.

Referenced by FSDist_COF(), GetProbability(), Normalize(), operator=(), SampleState(), SanityCheck(), SetUniform(), SetZero(), and SoftPrint().

std::vector<size_t> FSDist_COF::_m_sfacDomainSizes
private

Vector with size of the domain of each state factor (the nr. values)

This is used to compute state indices.

Referenced by FSDist_COF(), GetNrStates(), operator=(), SampleState(), SetUniform(), SetZero(), and ToVectorOfDoubles().

size_t* FSDist_COF::_m_stepSize
private

Array caching the stepsize - used for computing indices.

Computed during initialization.

Referenced by FSDist_COF(), GetProbability(), operator=(), and ~FSDist_COF().