Class sdm::SolvableByDP
Class List > sdm > SolvableByDP
Public interface that must be implemented by all transformed problems that can be solved using HSVI (i.e. beliefMDP, occupancyMDP, occupancyGame, etc).More...
- #include <solvable_by_dp.hpp>
Public Functions
| Type | Name | 
|---|---|
| virtual std::shared_ptr< Space > | getActionSpaceAt (const std::shared_ptr< State > & state, number t) = 0 Get the actions availables at a specific state. | 
| virtual double | getDiscount (number t) = 0 Get the specific discount factor for the problem at hand. | 
| virtual double | getExpectedNextValue (const std::shared_ptr< ValueFunction > & value_function, const std::shared_ptr< State > & state, const std::shared_ptr< Action > & action, number t) const = 0 Get the expected next value. | 
| virtual std::shared_ptr< Distribution< std::shared_ptr< State > > > | getNextStateDistribution (const std::shared_ptr< State > & state, const std::shared_ptr< Action > & action, number t=0) const Get the distribution over next states. | 
| virtual double | getReward (const std::shared_ptr< State > & state, const std::shared_ptr< Action > & action, number t) const = 0 Get the reward at a given occupancy state and occupancy action. | 
| virtual std::shared_ptr< Distribution< std::shared_ptr< State > > > | getStartDistribution () const = 0 | 
| virtual | ~SolvableByDP () | 
Detailed Description
Template parameters:
- TStateThe state type
- TActionThe action type
Public Functions Documentation
function getActionSpaceAt
virtual std::shared_ptr< Space > sdm::SolvableByDP::getActionSpaceAt (
    const std::shared_ptr< State > & state,
    number t
) = 0
Parameters:
- statethe state
Returns:
the action space
function getDiscount
virtual double sdm::SolvableByDP::getDiscount (
    number t
) = 0
Parameters:
- numberdecision epoch or any other parameter
Returns:
double discount factor
function getExpectedNextValue
virtual double sdm::SolvableByDP::getExpectedNextValue (
    const std::shared_ptr< ValueFunction > & value_function,
    const std::shared_ptr< State > & state,
    const std::shared_ptr< Action > & action,
    number t
) const = 0
Parameters:
- value_functiona pointer on the value function to use to perform the calculus.
- statethe state on which to evaluate the next expected value *
- action
- t
Returns:
double
function getNextStateDistribution
virtual std::shared_ptr< Distribution < std::shared_ptr< State > > > sdm::SolvableByDP::getNextStateDistribution (
    const std::shared_ptr< State > & state,
    const std::shared_ptr< Action > & action,
    number t=0
) const
Parameters:
- state
- action
- t
Returns:
std::shared_ptr<Distribution<std::shared_ptr<State>>>
function getReward
virtual double sdm::SolvableByDP::getReward (
    const std::shared_ptr< State > & state,
    const std::shared_ptr< Action > & action,
    number t
) const = 0
function getStartDistribution
virtual std::shared_ptr< Distribution < std::shared_ptr< State > > > sdm::SolvableByDP::getStartDistribution () const = 0
function ~SolvableByDP
inline virtual sdm::SolvableByDP::~SolvableByDP () 
The documentation for this class was generated from the following file src/sdm/world/solvable_by_dp.hpp