MultiAgentDecisionProcess
|
BGIP_IncrementalSolverInterface is an interface for BGIP_Solvers that can incrementally return multiple solutions. More...
#include <BGIP_IncrementalSolverInterface.h>
Public Member Functions | |
bool | AllSolutionsHaveBeenReturned () const |
BGIP_IncrementalSolverInterface (const boost::shared_ptr< const BayesianGameIdenticalPayoffInterface > &bg, size_t nrDesiredSolutions=INT_MAX) | |
bool | GetNextJointPolicyAndValue (boost::shared_ptr< JointPolicyDiscretePure > &jpol, double &value) |
Gets the next solution from the Incremental CBG solver. More... | |
virtual | ~BGIP_IncrementalSolverInterface () |
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 JointPolicyPureVector & | GetJointPolicyPureVector () const |
virtual boost::shared_ptr < JointPolicyDiscretePure > | GetNewJpol () const |
returns a new policy to be used with this BayesianGameIdenticalPayoffSolver More... | |
boost::shared_ptr< JPPVValuePair > | GetNextSolutionJPPV () 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 |
virtual bool | IsExactSolver () const =0 |
Methods should indicated whether they compute exact (optimal) solutions or not. More... | |
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 | SetCBGlowerBound (double lowerbound)=0 |
virtual void | SetCBGupperBound (double ub)=0 |
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 double | Solve ()=0 |
The methods that performs the planning. More... | |
virtual | ~BayesianGameIdenticalPayoffSolver () |
Destructor. More... | |
Protected Member Functions | |
virtual bool | GetNextJointPolicyAndValueSpecific (boost::shared_ptr< JointPolicyDiscretePure > &jpol, double &value)=0 |
The specific implementation that should be implemented by the derived class: More... | |
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 | |
size_t | _m_nrSolutionsReturned |
The number of solutions we already returned (not computed) More... | |
BGIP_IncrementalSolverInterface is an interface for BGIP_Solvers that can incrementally return multiple solutions.
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
Gets the next solution from the Incremental CBG solver.
If a next solution does not exist, for instance because of upper and lower bounds on the solution value, the function will return false instead of true.
References GetNextJointPolicyAndValueSpecific().
|
protectedpure virtual |
The specific implementation that should be implemented by the derived class:
Implemented in BGIP_SolverBranchAndBound< JP >, BGIP_SolverAlternatingMaximization< JP >, and BGIP_SolverBruteForceSearch< JP >.
Referenced by GetNextJointPolicyAndValue().
|
protected |
The number of solutions we already returned (not computed)