Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType > Class Template Reference

#include <BeliefManager.h>

Classes

struct  BeliefClipping
 
struct  Triangulation
 

Public Types

enum class  TriangulationMode { Static , Dynamic }
 
typedef PomdpType::ValueType ValueType
 
typedef boost::container::flat_map< StateType, BeliefValueType > BeliefType
 
typedef boost::container::flat_set< StateType > BeliefSupportType
 
typedef uint64_t BeliefId
 

Public Member Functions

 BeliefManager (PomdpType const &pomdp, BeliefValueType const &precision, TriangulationMode const &triangulationMode)
 
void setRewardModel (std::optional< std::string > rewardModelName=std::nullopt)
 
void unsetRewardModel ()
 
BeliefId noId () const
 
bool isEqual (BeliefId const &first, BeliefId const &second) const
 
std::string toString (BeliefId const &beliefId) const
 
std::string toString (Triangulation const &t) const
 
ValueType getWeightedSum (BeliefId const &beliefId, std::vector< ValueType > const &summands)
 
std::pair< bool, ValueTypegetWeightedSum (BeliefId const &beliefId, std::unordered_map< StateType, ValueType > const &summands)
 
BeliefId const & getInitialBelief () const
 
ValueType getBeliefActionReward (BeliefId const &beliefId, uint64_t const &localActionIndex) const
 
uint32_t getBeliefObservation (BeliefId beliefId)
 
uint64_t getBeliefNumberOfChoices (BeliefId beliefId)
 
uint64_t getRepresentativeState (BeliefId const &beliefId)
 Returns the first state in the belief as a representative.
 
Triangulation triangulateBelief (BeliefId beliefId, BeliefValueType resolution)
 
template<typename DistributionType >
void addToDistribution (DistributionType &distr, StateType const &state, BeliefValueType const &value)
 
void joinSupport (BeliefId const &beliefId, BeliefSupportType &support)
 
BeliefId getNumberOfBeliefIds () const
 
std::vector< std::pair< BeliefId, ValueType > > expandAndTriangulate (BeliefId const &beliefId, uint64_t actionIndex, std::vector< BeliefValueType > const &observationResolutions)
 
std::vector< std::pair< BeliefId, ValueType > > expandAndClip (BeliefId const &beliefId, uint64_t actionIndex, std::vector< uint64_t > const &observationResolutions)
 
std::vector< std::pair< BeliefId, ValueType > > expand (BeliefId const &beliefId, uint64_t actionIndex)
 
BeliefClipping clipBeliefToGrid (BeliefId const &beliefId, uint64_t resolution, storm::storage::BitVector isInfinite=storm::storage::BitVector())
 
std::string getObservationLabel (BeliefId const &beliefId)
 
std::vector< BeliefValueType > computeMatrixBeliefProduct (BeliefId const &beliefId, storm::storage::SparseMatrix< BeliefValueType > &matrix)
 

Detailed Description

template<typename PomdpType, typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
class storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >

Definition at line 22 of file BeliefManager.h.

Member Typedef Documentation

◆ BeliefId

template<typename PomdpType , typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
typedef uint64_t storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId

Definition at line 27 of file BeliefManager.h.

◆ BeliefSupportType

template<typename PomdpType , typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
typedef boost::container::flat_set<StateType> storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefSupportType

Definition at line 26 of file BeliefManager.h.

◆ BeliefType

template<typename PomdpType , typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
typedef boost::container::flat_map<StateType, BeliefValueType> storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefType

Definition at line 25 of file BeliefManager.h.

◆ ValueType

template<typename PomdpType , typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
typedef PomdpType::ValueType storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType

Definition at line 24 of file BeliefManager.h.

Member Enumeration Documentation

◆ TriangulationMode

template<typename PomdpType , typename BeliefValueType = typename PomdpType::ValueType, typename StateType = uint64_t>
enum class storm::storage::BeliefManager::TriangulationMode
strong
Enumerator
Static 
Dynamic 

Definition at line 29 of file BeliefManager.h.

Constructor & Destructor Documentation

◆ BeliefManager()

template<typename PomdpType , typename BeliefValueType , typename StateType >
storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefManager ( PomdpType const &  pomdp,
BeliefValueType const &  precision,
TriangulationMode const &  triangulationMode 
)

Definition at line 82 of file BeliefManager.cpp.

Member Function Documentation

◆ addToDistribution()

template<typename PomdpType , typename BeliefValueType , typename StateType >
template<typename DistributionType >
void storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::addToDistribution ( DistributionType &  distr,
StateType const &  state,
BeliefValueType const &  value 
)

Definition at line 198 of file BeliefManager.cpp.

◆ clipBeliefToGrid()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefClipping storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::clipBeliefToGrid ( BeliefId const &  beliefId,
uint64_t  resolution,
storm::storage::BitVector  isInfinite = storm::storage::BitVector() 
)

Definition at line 582 of file BeliefManager.cpp.

◆ computeMatrixBeliefProduct()

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::vector< BeliefValueType > storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::computeMatrixBeliefProduct ( BeliefId const &  beliefId,
storm::storage::SparseMatrix< BeliefValueType > &  matrix 
)

Definition at line 813 of file BeliefManager.cpp.

◆ expand()

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::vector< std::pair< typename BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId, typename BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType > > storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::expand ( BeliefId const &  beliefId,
uint64_t  actionIndex 
)

Definition at line 246 of file BeliefManager.cpp.

◆ expandAndClip()

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::vector< std::pair< typename BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId, typename BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType > > storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::expandAndClip ( BeliefId const &  beliefId,
uint64_t  actionIndex,
std::vector< uint64_t > const &  observationResolutions 
)

Definition at line 238 of file BeliefManager.cpp.

◆ expandAndTriangulate()

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::vector< std::pair< typename BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId, typename BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType > > storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::expandAndTriangulate ( BeliefId const &  beliefId,
uint64_t  actionIndex,
std::vector< BeliefValueType > const &  observationResolutions 
)

Definition at line 230 of file BeliefManager.cpp.

◆ getBeliefActionReward()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getBeliefActionReward ( BeliefId const &  beliefId,
uint64_t const &  localActionIndex 
) const

Definition at line 164 of file BeliefManager.cpp.

◆ getBeliefNumberOfChoices()

template<typename PomdpType , typename BeliefValueType , typename StateType >
uint64_t storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getBeliefNumberOfChoices ( BeliefId  beliefId)

Definition at line 185 of file BeliefManager.cpp.

◆ getBeliefObservation()

template<typename PomdpType , typename BeliefValueType , typename StateType >
uint32_t storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getBeliefObservation ( BeliefId  beliefId)

Definition at line 180 of file BeliefManager.cpp.

◆ getInitialBelief()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId const & storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getInitialBelief ( ) const

Definition at line 159 of file BeliefManager.cpp.

◆ getNumberOfBeliefIds()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getNumberOfBeliefIds ( ) const

Definition at line 223 of file BeliefManager.cpp.

◆ getObservationLabel()

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::string storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getObservationLabel ( BeliefId const &  beliefId)

Definition at line 789 of file BeliefManager.cpp.

◆ getRepresentativeState()

template<typename PomdpType , typename BeliefValueType , typename StateType >
uint64_t storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getRepresentativeState ( BeliefId const &  beliefId)

Returns the first state in the belief as a representative.

Parameters
beliefId
Returns

Definition at line 784 of file BeliefManager.cpp.

◆ getWeightedSum() [1/2]

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::pair< bool, typename BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType > storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getWeightedSum ( BeliefId const &  beliefId,
std::unordered_map< StateType, ValueType > const &  summands 
)

Definition at line 142 of file BeliefManager.cpp.

◆ getWeightedSum() [2/2]

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::ValueType storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::getWeightedSum ( BeliefId const &  beliefId,
std::vector< ValueType > const &  summands 
)

Definition at line 132 of file BeliefManager.cpp.

◆ isEqual()

template<typename PomdpType , typename BeliefValueType , typename StateType >
bool storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::isEqual ( BeliefId const &  first,
BeliefId const &  second 
) const

Definition at line 111 of file BeliefManager.cpp.

◆ joinSupport()

template<typename PomdpType , typename BeliefValueType , typename StateType >
void storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::joinSupport ( BeliefId const &  beliefId,
BeliefSupportType support 
)

Definition at line 215 of file BeliefManager.cpp.

◆ noId()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::BeliefId storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::noId ( ) const

Definition at line 106 of file BeliefManager.cpp.

◆ setRewardModel()

template<typename PomdpType , typename BeliefValueType , typename StateType >
void storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::setRewardModel ( std::optional< std::string >  rewardModelName = std::nullopt)

Definition at line 91 of file BeliefManager.cpp.

◆ toString() [1/2]

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::string storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::toString ( BeliefId const &  beliefId) const

Definition at line 116 of file BeliefManager.cpp.

◆ toString() [2/2]

template<typename PomdpType , typename BeliefValueType , typename StateType >
std::string storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::toString ( Triangulation const &  t) const

Definition at line 121 of file BeliefManager.cpp.

◆ triangulateBelief()

template<typename PomdpType , typename BeliefValueType , typename StateType >
BeliefManager< PomdpType, BeliefValueType, StateType >::Triangulation storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::triangulateBelief ( BeliefId  beliefId,
BeliefValueType  resolution 
)

Definition at line 191 of file BeliefManager.cpp.

◆ unsetRewardModel()

template<typename PomdpType , typename BeliefValueType , typename StateType >
void storm::storage::BeliefManager< PomdpType, BeliefValueType, StateType >::unsetRewardModel ( )

Definition at line 101 of file BeliefManager.cpp.


The documentation for this class was generated from the following files: