MultiAgentDecisionProcess
AlphaVectorPruning Class Reference

AlphaVectorPruning reduces sets of alpha vectors to their parsimonious representation via LP-based pruning. More...

#include <AlphaVectorPruning.h>

Public Member Functions

 AlphaVectorPruning ()
 (default) Constructor More...
 
virtual ~AlphaVectorPruning ()
 Destructor. More...
 

Static Public Member Functions

static ValueFunctionPOMDPDiscrete Prune (const ValueFunctionPOMDPDiscrete &V, size_t acceleratedPruningThreshold=200)
 

Static Private Member Functions

static bool Contains (const ValueFunctionPOMDPDiscrete &V, const AlphaVector &alpha)
 
static bool FindBelief (const AlphaVector &p, const ValueFunctionPOMDPDiscrete &uU, std::vector< double > &belief, size_t acceleratedPruningThreshold)
 
static bool FindBeliefAccelerated (const AlphaVector &p, const ValueFunctionPOMDPDiscrete &uU, std::vector< double > &belief)
 
static bool FindBeliefNormal (const AlphaVector &p, const ValueFunctionPOMDPDiscrete &uU, std::vector< double > &belief)
 
static double GetBeliefDiff (std::vector< double > &belief0, std::vector< double > &belief1)
 
static double GetNormalObj (const AlphaVector &p, const ValueFunctionPOMDPDiscrete &uU)
 
static int GetVectorIndex (const AlphaVector &p, const ValueFunctionPOMDPDiscrete &uU, std::vector< double > &belief)
 
static double InnerProduct (const AlphaVector &alpha, const std::vector< double > &belief)
 
static bool LexGreater (const AlphaVector &alpha1, const AlphaVector &alpha2)
 
static bool ParetoDominates (AlphaVector x, AlphaVector y)
 
static ValueFunctionPOMDPDiscrete ParetoPrune (const ValueFunctionPOMDPDiscrete &V)
 
static void RemoveFirst (ValueFunctionPOMDPDiscrete &V)
 
static void RemoveFirstOccurrence (ValueFunctionPOMDPDiscrete &V, const AlphaVector &alpha)
 

Detailed Description

AlphaVectorPruning reduces sets of alpha vectors to their parsimonious representation via LP-based pruning.

Constructor & Destructor Documentation

AlphaVectorPruning::AlphaVectorPruning ( )

(default) Constructor

AlphaVectorPruning::~AlphaVectorPruning ( )
virtual

Destructor.

Member Function Documentation

bool AlphaVectorPruning::Contains ( const ValueFunctionPOMDPDiscrete V,
const AlphaVector alpha 
)
staticprivate

References AlphaVector::Equal().

bool AlphaVectorPruning::FindBelief ( const AlphaVector p,
const ValueFunctionPOMDPDiscrete uU,
std::vector< double > &  belief,
size_t  acceleratedPruningThreshold 
)
staticprivate
bool AlphaVectorPruning::FindBeliefAccelerated ( const AlphaVector p,
const ValueFunctionPOMDPDiscrete uU,
std::vector< double > &  belief 
)
staticprivate
bool AlphaVectorPruning::FindBeliefNormal ( const AlphaVector p,
const ValueFunctionPOMDPDiscrete uU,
std::vector< double > &  belief 
)
staticprivate
double AlphaVectorPruning::GetBeliefDiff ( std::vector< double > &  belief0,
std::vector< double > &  belief1 
)
staticprivate
double AlphaVectorPruning::GetNormalObj ( const AlphaVector p,
const ValueFunctionPOMDPDiscrete uU 
)
staticprivate
int AlphaVectorPruning::GetVectorIndex ( const AlphaVector p,
const ValueFunctionPOMDPDiscrete uU,
std::vector< double > &  belief 
)
staticprivate
double AlphaVectorPruning::InnerProduct ( const AlphaVector alpha,
const std::vector< double > &  belief 
)
staticprivate
bool AlphaVectorPruning::LexGreater ( const AlphaVector alpha1,
const AlphaVector alpha2 
)
staticprivate
bool AlphaVectorPruning::ParetoDominates ( AlphaVector  x,
AlphaVector  y 
)
staticprivate
ValueFunctionPOMDPDiscrete AlphaVectorPruning::ParetoPrune ( const ValueFunctionPOMDPDiscrete V)
staticprivate
ValueFunctionPOMDPDiscrete AlphaVectorPruning::Prune ( const ValueFunctionPOMDPDiscrete V,
size_t  acceleratedPruningThreshold = 200 
)
static
void AlphaVectorPruning::RemoveFirst ( ValueFunctionPOMDPDiscrete V)
staticprivate
void AlphaVectorPruning::RemoveFirstOccurrence ( ValueFunctionPOMDPDiscrete V,
const AlphaVector alpha 
)
staticprivate

References AlphaVector::Equal().