Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState > Class Template Reference

This tracker implements state estimation for POMDPs. More...

#include <NondeterministicBeliefTracker.h>

Classes

struct  Options
 

Public Member Functions

 NondeterministicBeliefTracker (storm::models::sparse::Pomdp< ValueType > const &pomdp, typename NondeterministicBeliefTracker< ValueType, BeliefState >::Options options=Options())
 
bool reset (uint32_t observation)
 Start with a new trace.
 
bool track (uint64_t newObservation)
 Extend the observed trace with the new observation.
 
std::unordered_set< BeliefState > const & getCurrentBeliefs () const
 Provides access to the current beliefs.
 
uint32_t getCurrentObservation () const
 What was the last obervation that we made?
 
uint64_t getNumberOfBeliefs () const
 How many beliefs are we currently tracking?
 
ValueType getCurrentRisk (bool max=true)
 What is the (worst-case/best-case) risk over all beliefs.
 
void setRisk (std::vector< ValueType > const &risk)
 Sets the state-risk to use for all beliefs.
 
uint64_t getCurrentDimension () const
 What is the dimension of the current set of beliefs, i.e., what is the number of states we could possibly be in?
 
uint64_t reduce ()
 Apply reductions to the belief state.
 
bool hasTimedOut () const
 Did we time out during the computation?
 

Detailed Description

template<typename ValueType, typename BeliefState>
class storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >

This tracker implements state estimation for POMDPs.

This corresponds to forward filtering in Junges, Torfah, Seshia.

Template Parameters
ValueTypeHow are probabilities stored
BeliefStateWhat format to use for beliefs

Definition at line 133 of file NondeterministicBeliefTracker.h.

Constructor & Destructor Documentation

◆ NondeterministicBeliefTracker()

template<typename ValueType , typename BeliefState >
storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::NondeterministicBeliefTracker ( storm::models::sparse::Pomdp< ValueType > const &  pomdp,
typename NondeterministicBeliefTracker< ValueType, BeliefState >::Options  options = Options() 
)

Definition at line 377 of file NondeterministicBeliefTracker.cpp.

Member Function Documentation

◆ getCurrentBeliefs()

template<typename ValueType , typename BeliefState >
std::unordered_set< BeliefState > const & storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::getCurrentBeliefs ( ) const

Provides access to the current beliefs.

Returns

Definition at line 438 of file NondeterministicBeliefTracker.cpp.

◆ getCurrentDimension()

template<typename ValueType , typename BeliefState >
uint64_t storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::getCurrentDimension ( ) const

What is the dimension of the current set of beliefs, i.e., what is the number of states we could possibly be in?

Returns

Definition at line 453 of file NondeterministicBeliefTracker.cpp.

◆ getCurrentObservation()

template<typename ValueType , typename BeliefState >
uint32_t storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::getCurrentObservation ( ) const

What was the last obervation that we made?

Returns

Definition at line 443 of file NondeterministicBeliefTracker.cpp.

◆ getCurrentRisk()

template<typename ValueType , typename BeliefState >
ValueType storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::getCurrentRisk ( bool  max = true)

What is the (worst-case/best-case) risk over all beliefs.

Parameters
maxShould we take the max or the min?
Returns

Definition at line 413 of file NondeterministicBeliefTracker.cpp.

◆ getNumberOfBeliefs()

template<typename ValueType , typename BeliefState >
uint64_t storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::getNumberOfBeliefs ( ) const

How many beliefs are we currently tracking?

Returns

Definition at line 448 of file NondeterministicBeliefTracker.cpp.

◆ hasTimedOut()

template<typename ValueType , typename BeliefState >
bool storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::hasTimedOut ( ) const

Did we time out during the computation?

Returns

Definition at line 488 of file NondeterministicBeliefTracker.cpp.

◆ reduce()

template<typename ValueType , typename BeliefState >
uint64_t storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::reduce ( )

Apply reductions to the belief state.

Returns

Definition at line 463 of file NondeterministicBeliefTracker.cpp.

◆ reset()

template<typename ValueType , typename BeliefState >
bool storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::reset ( uint32_t  observation)

Start with a new trace.

Parameters
observationThe initial observation to start with.
Returns

Definition at line 384 of file NondeterministicBeliefTracker.cpp.

◆ setRisk()

template<typename ValueType , typename BeliefState >
void storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::setRisk ( std::vector< ValueType > const &  risk)

Sets the state-risk to use for all beliefs.

Parameters
risk

Definition at line 433 of file NondeterministicBeliefTracker.cpp.

◆ track()

template<typename ValueType , typename BeliefState >
bool storm::generator::NondeterministicBeliefTracker< ValueType, BeliefState >::track ( uint64_t  newObservation)

Extend the observed trace with the new observation.

Parameters
newObservation
Returns

Definition at line 397 of file NondeterministicBeliefTracker.cpp.


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