Storm 1.13.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::modelchecker::helper::rewardbounded Namespace Reference

Classes

class  CostLimit
class  CostLimitClosure
struct  Dimension
class  EpochManager
struct  EpochModel
class  MemoryStateManager
class  MultiDimensionalRewardUnfolding
class  ProductModel
class  QuantileHelper

Typedefs

typedef std::vector< CostLimitCostLimits

Enumerations

enum class  DimensionBoundType { Unbounded , UpperBound , LowerBound , LowerBoundInfinity }
enum class  BoundTransformation { None , GreaterZero , GreaterEqualZero , LessEqualZero }

Functions

template<typename ValueType>
std::vector< ValueType > analyzeTrivialDtmcEpochModel (EpochModel< ValueType, true > &epochModel)
template<typename ValueType>
std::vector< ValueType > analyzeNonTrivialDtmcEpochModel (Environment const &env, EpochModel< ValueType, true > &epochModel, std::vector< ValueType > &x, std::vector< ValueType > &b, std::unique_ptr< storm::solver::LinearEquationSolver< ValueType > > &linEqSolver, boost::optional< ValueType > const &lowerBound, boost::optional< ValueType > const &upperBound)
template<typename ValueType>
std::vector< ValueType > analyzeTrivialMdpEpochModel (OptimizationDirection dir, EpochModel< ValueType, true > &epochModel)
template<typename ValueType>
std::vector< ValueType > analyzeNonTrivialMdpEpochModel (Environment const &env, OptimizationDirection dir, EpochModel< ValueType, true > &epochModel, std::vector< ValueType > &x, std::vector< ValueType > &b, std::unique_ptr< storm::solver::MinMaxLinearEquationSolver< ValueType > > &minMaxSolver, boost::optional< ValueType > const &lowerBound, boost::optional< ValueType > const &upperBound)
std::shared_ptr< storm::logic::ProbabilityOperatorFormulatransformBoundedUntilOperator (storm::logic::ProbabilityOperatorFormula const &boundedUntilOperator, std::vector< BoundTransformation > const &transformations, bool complementQuery=false)
void increasePrecision (storm::Environment &env)
 Increases the precision of solver results.
template<typename ValueType>
std::pair< ValueType, ValueType > getLowerUpperBound (storm::Environment const &env, ValueType const &factor, ValueType const &value, bool minMax=true)
 Computes a lower / upper bound on the actual result of a sound minmax or linear equation solver.
bool getNextCandidateCostLimit (CostLimit const &candidateCostLimitSum, CostLimits &current)
bool translateEpochToCostLimits (EpochManager::Epoch const &epoch, EpochManager::Epoch const &startEpoch, storm::storage::BitVector const &consideredDimensions, storm::storage::BitVector const &lowerBoundedDimensions, EpochManager const &epochManager, CostLimits &epochAsCostLimits)

Typedef Documentation

◆ CostLimits

Enumeration Type Documentation

◆ BoundTransformation

Enumerator
None 
GreaterZero 
GreaterEqualZero 
LessEqualZero 

Definition at line 85 of file QuantileHelper.cpp.

◆ DimensionBoundType

Enumerator
Unbounded 
UpperBound 
LowerBound 
LowerBoundInfinity 

Definition at line 13 of file Dimension.h.

Function Documentation

◆ analyzeNonTrivialDtmcEpochModel()

template<typename ValueType>
std::vector< ValueType > storm::modelchecker::helper::rewardbounded::analyzeNonTrivialDtmcEpochModel ( Environment const & env,
EpochModel< ValueType, true > & epochModel,
std::vector< ValueType > & x,
std::vector< ValueType > & b,
std::unique_ptr< storm::solver::LinearEquationSolver< ValueType > > & linEqSolver,
boost::optional< ValueType > const & lowerBound,
boost::optional< ValueType > const & upperBound )

Definition at line 45 of file EpochModel.cpp.

◆ analyzeNonTrivialMdpEpochModel()

template<typename ValueType>
std::vector< ValueType > storm::modelchecker::helper::rewardbounded::analyzeNonTrivialMdpEpochModel ( Environment const & env,
OptimizationDirection dir,
EpochModel< ValueType, true > & epochModel,
std::vector< ValueType > & x,
std::vector< ValueType > & b,
std::unique_ptr< storm::solver::MinMaxLinearEquationSolver< ValueType > > & minMaxSolver,
boost::optional< ValueType > const & lowerBound,
boost::optional< ValueType > const & upperBound )

Definition at line 155 of file EpochModel.cpp.

◆ analyzeTrivialDtmcEpochModel()

template<typename ValueType>
std::vector< ValueType > storm::modelchecker::helper::rewardbounded::analyzeTrivialDtmcEpochModel ( EpochModel< ValueType, true > & epochModel)

Definition at line 17 of file EpochModel.cpp.

◆ analyzeTrivialMdpEpochModel()

template<typename ValueType>
std::vector< ValueType > storm::modelchecker::helper::rewardbounded::analyzeTrivialMdpEpochModel ( OptimizationDirection dir,
EpochModel< ValueType, true > & epochModel )

Definition at line 105 of file EpochModel.cpp.

◆ getLowerUpperBound()

template<typename ValueType>
std::pair< ValueType, ValueType > storm::modelchecker::helper::rewardbounded::getLowerUpperBound ( storm::Environment const & env,
ValueType const & factor,
ValueType const & value,
bool minMax = true )

Computes a lower / upper bound on the actual result of a sound minmax or linear equation solver.

Definition at line 163 of file QuantileHelper.cpp.

◆ getNextCandidateCostLimit()

bool storm::modelchecker::helper::rewardbounded::getNextCandidateCostLimit ( CostLimit const & candidateCostLimitSum,
CostLimits & current )

Definition at line 338 of file QuantileHelper.cpp.

◆ increasePrecision()

void storm::modelchecker::helper::rewardbounded::increasePrecision ( storm::Environment & env)

Increases the precision of solver results.

Definition at line 150 of file QuantileHelper.cpp.

◆ transformBoundedUntilOperator()

std::shared_ptr< storm::logic::ProbabilityOperatorFormula > storm::modelchecker::helper::rewardbounded::transformBoundedUntilOperator ( storm::logic::ProbabilityOperatorFormula const & boundedUntilOperator,
std::vector< BoundTransformation > const & transformations,
bool complementQuery = false )

Definition at line 86 of file QuantileHelper.cpp.

◆ translateEpochToCostLimits()

bool storm::modelchecker::helper::rewardbounded::translateEpochToCostLimits ( EpochManager::Epoch const & epoch,
EpochManager::Epoch const & startEpoch,
storm::storage::BitVector const & consideredDimensions,
storm::storage::BitVector const & lowerBoundedDimensions,
EpochManager const & epochManager,
CostLimits & epochAsCostLimits )

Definition at line 361 of file QuantileHelper.cpp.