MultiAgentDecisionProcess
BGCG_SolverFG Class Reference

#include <BGCG_SolverFG.h>

Inheritance diagram for BGCG_SolverFG:
[legend]

Public Types

typedef libDAI::MADP_util::valConf valConf
 

Public Member Functions

 BGCG_SolverFG (const boost::shared_ptr< const BayesianGameCollaborativeGraphical > &bgcg, BG_FactorGraphCreator::BGFactorGraph_t FGt=BG_FactorGraphCreator::AgentTypeIndependence, FG_Solver::FG_Solver_t FGSt=FG_Solver::FGSt_MaxPlus, size_t nrSolutions=1, int verbosity=2, double deadlineInSeconds=0, bool exploitSparseness=false)
 (default) Constructor More...
 
 BGCG_SolverFG (const BGCG_SolverFG &a)
 Copy constructor. More...
 
bool IsExactSolver () const
 Methods should indicated whether they compute exact (optimal) solutions or not. More...
 
BGCG_SolverFGoperator= (const BGCG_SolverFG &o)
 Copy assignment operator. More...
 
void SetCBGlowerBound (double lb)
 
void SetCBGupperBound (double ub)
 
void SetDamping (double d)
 
void SetMaxIter (size_t m)
 
void SetNrRestarts (size_t n)
 
void SetUpdateType (std::string s)
 max-plus parameter setting More...
 
double Solve ()
 Go! (solve the BayesianGameCollaborativeGraphical) More...
 
 ~BGCG_SolverFG ()
 Destructor. More...
 
- Public Member Functions inherited from BGCG_Solver
 BGCG_Solver (const boost::shared_ptr< const BayesianGameCollaborativeGraphical > &bgcg, size_t nrSolutions=1)
 (default) Constructor More...
 
boost::shared_ptr< const
BayesianGameCollaborativeGraphical
GetBGCG () const
 
BGCG_Solveroperator= (const BGCG_Solver &o)
 Copy assignment operator. More...
 
virtual ~BGCG_Solver ()
 Copy constructor. More...
 
- Public Member Functions inherited from BayesianGameIdenticalPayoffSolver
void AddSolution (const JointPolicyPureVector &jp, double value)
 
void AddSolution (const JointPolicyPureVectorForClusteredBG &jp, double value)
 
void AddSolution (LIndex jpolIndex, double value)
 
 BayesianGameIdenticalPayoffSolver (const boost::shared_ptr< const BayesianGameIdenticalPayoffInterface > &bg, size_t nrDesiredSolutions=1)
 (default) Constructor More...
 
double Evaluate (const JointPolicyPureVector &jpolBG) const
 
double Evaluate (const JointPolicyPureVectorForClusteredBG &jpolBG) const
 
boost::shared_ptr< const
BayesianGameIdenticalPayoffInterface
GetBGIPI () const
 
double GetExpectedReward () const
 
const boost::shared_ptr
< JointPolicy
GetJointPolicy () const
 
const JointPolicyPureVectorGetJointPolicyPureVector () const
 
virtual boost::shared_ptr
< JointPolicyDiscretePure
GetNewJpol () const
 returns a new policy to be used with this BayesianGameIdenticalPayoffSolver More...
 
boost::shared_ptr< JPPVValuePairGetNextSolutionJPPV () const
 
boost::shared_ptr
< PartialJPDPValuePair
GetNextSolutionPJPDP () const
 
size_t GetNrDesiredSolutions () const
 
size_t GetNrFoundSolutions () const
 Gets the found number of solutions. More...
 
double GetPayoff () const
 
std::ofstream * GetResultsOFStream () const
 
std::ofstream * GetTimingsOFStream () const
 
bool GetWriteAnyTimeResults () const
 
bool IsEmptyJPPV () const
 
bool IsEmptyPJPDP () const
 
void PopNextSolutionJPPV ()
 
void PopNextSolutionPJPDP ()
 
void SaveSolution (const std::string &filename) const
 
void SetAnyTimeResults (bool turn_on, std::ofstream *results, std::ofstream *timings)
 Turns Anytime results on and of. More...
 
virtual void SetDeadline (double deadlineInSeconds)
 To limit the amount of time the solver uses. More...
 
void SetNrDesiredSolutions (size_t n)
 Gets the desired number of solutions to be returned. More...
 
std::string SoftPrintSolution () const
 
virtual ~BayesianGameIdenticalPayoffSolver ()
 Destructor. More...
 

Private Member Functions

double ProcessFoundConfigurations_AI (std::list< valConf > &bestConfs)
 
double ProcessFoundConfigurations_ATI (std::list< valConf > &bestConfs)
 

Private Attributes

double _m_damping
 
double _m_deadlineInSeconds
 
BG_FactorGraphCreator_m_fgc
 the factor graph creator More...
 
FG_Solver::FG_Solver_t _m_FGSt
 
BG_FactorGraphCreator::BGFactorGraph_t _m_FGt
 
size_t _m_maxIter
 
size_t _m_nrRestarts
 
std::string _m_updateType
 
int _m_verbosity
 the verbosity level More...
 

Additional Inherited Members

- Protected Member Functions inherited from BayesianGameIdenticalPayoffSolver
virtual void CheckDeadline (const std::string &errorMessage) const
 Checks whether the deadline has expired. Throws EDeadline. More...
 
virtual void InitDeadline ()
 Should be called at the beginning of Solve(). More...
 
- Protected Attributes inherited from BGCG_Solver
boost::shared_ptr< const
BayesianGameCollaborativeGraphical
_m_bgcg
 

Member Typedef Documentation

typedef libDAI::MADP_util::valConf BGCG_SolverFG::valConf

Constructor & Destructor Documentation

BGCG_SolverFG::BGCG_SolverFG ( const boost::shared_ptr< const BayesianGameCollaborativeGraphical > &  bgcg,
BG_FactorGraphCreator::BGFactorGraph_t  FGt = BG_FactorGraphCreator::AgentTypeIndependence,
FG_Solver::FG_Solver_t  FGSt = FG_Solver::FGSt_MaxPlus,
size_t  nrSolutions = 1,
int  verbosity = 2,
double  deadlineInSeconds = 0,
bool  exploitSparseness = false 
)
BGCG_SolverFG::BGCG_SolverFG ( const BGCG_SolverFG a)

Copy constructor.

BGCG_SolverFG::~BGCG_SolverFG ( )

Destructor.

References _m_fgc.

Member Function Documentation

bool BGCG_SolverFG::IsExactSolver ( ) const
inlinevirtual

Methods should indicated whether they compute exact (optimal) solutions or not.

Implements BayesianGameIdenticalPayoffSolver.

BGCG_SolverFG & BGCG_SolverFG::operator= ( const BGCG_SolverFG o)

Copy assignment operator.

double BGCG_SolverFG::ProcessFoundConfigurations_AI ( std::list< valConf > &  bestConfs)
private
double BGCG_SolverFG::ProcessFoundConfigurations_ATI ( std::list< valConf > &  bestConfs)
private
void BGCG_SolverFG::SetCBGlowerBound ( double  lb)
inlinevirtual
void BGCG_SolverFG::SetCBGupperBound ( double  ub)
inlinevirtual
void BGCG_SolverFG::SetDamping ( double  d)
inline
void BGCG_SolverFG::SetMaxIter ( size_t  m)
inline
void BGCG_SolverFG::SetNrRestarts ( size_t  n)
inline
void BGCG_SolverFG::SetUpdateType ( std::string  s)
inline

max-plus parameter setting

Referenced by BGCG_SolverCreator_FG::Create_BGCG_Solver().

Member Data Documentation

double BGCG_SolverFG::_m_damping
private

Referenced by BGCG_SolverFG(), and Solve().

double BGCG_SolverFG::_m_deadlineInSeconds
private

Referenced by Solve().

BG_FactorGraphCreator* BGCG_SolverFG::_m_fgc
private

the factor graph creator

Referenced by BGCG_SolverFG(), ProcessFoundConfigurations_ATI(), Solve(), and ~BGCG_SolverFG().

FG_Solver::FG_Solver_t BGCG_SolverFG::_m_FGSt
private

Referenced by Solve().

BG_FactorGraphCreator::BGFactorGraph_t BGCG_SolverFG::_m_FGt
private
size_t BGCG_SolverFG::_m_maxIter
private

Referenced by BGCG_SolverFG(), and Solve().

size_t BGCG_SolverFG::_m_nrRestarts
private

Referenced by BGCG_SolverFG(), and Solve().

std::string BGCG_SolverFG::_m_updateType
private

Referenced by BGCG_SolverFG(), and Solve().

int BGCG_SolverFG::_m_verbosity
private