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

#include <BeliefManager.h>

Classes

struct  Triangulation
struct  BeliefClipping

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 197 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 581 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 812 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 245 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 237 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 229 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 163 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 184 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 179 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 158 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 222 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 788 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 783 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 141 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 131 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 110 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 214 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 105 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 90 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 115 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 120 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 190 of file BeliefManager.cpp.

◆ unsetRewardModel()

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

Definition at line 100 of file BeliefManager.cpp.


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