Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
PreprocessingPomdpValueBoundsModelChecker.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace storm {
8class Environment;
9namespace modelchecker {
10template<typename FormulaType, typename ValueType>
11class CheckTask;
12class CheckResult;
13} // namespace modelchecker
14namespace logic {
15class Formula;
16}
17namespace pomdp::modelchecker {
18template<typename PomdpType>
20 public:
21 using PomdpValueType = typename PomdpType::ValueType;
24
25 explicit PreprocessingPomdpValueBoundsModelChecker(PomdpType const& pomdp);
26
28
30
32
34
36
39
40 private:
41 PomdpType const& pomdp;
42
43 std::vector<PomdpValueType> getChoiceValues(std::vector<PomdpValueType> const& stateValues, std::vector<PomdpValueType>* actionBasedRewards);
44
45 std::pair<std::vector<PomdpValueType>, storm::storage::Scheduler<PomdpValueType>> computeValuesForGuessedScheduler(
46 storm::Environment const& env, std::vector<PomdpValueType> const& stateValues, std::vector<PomdpValueType>* actionBasedRewards,
48 std::shared_ptr<storm::models::sparse::Mdp<PomdpValueType>> underlyingMdp, PomdpValueType const& scoreThreshold, bool relativeScore);
49
50 std::pair<std::vector<PomdpValueType>, storm::storage::Scheduler<PomdpValueType>> computeValuesForRandomFMPolicy(
51 storm::Environment const& env, storm::logic::Formula const& formula, storm::pomdp::analysis::FormulaInformation const& info, uint64_t memoryBound);
52
53 [[maybe_unused]] std::pair<std::vector<PomdpValueType>, storm::storage::Scheduler<PomdpValueType>> computeValuesForRandomMemorylessPolicy(
55 std::shared_ptr<storm::models::sparse::Mdp<PomdpValueType>> underlyingMdp);
56};
57} // namespace pomdp::modelchecker
58} // namespace storm
This class represents a (discrete-time) Markov decision process.
Definition Mdp.h:16
pomdp::storage::PreprocessingPomdpValueBounds< PomdpValueType > ValueBounds
This class defines which action is chosen in a particular state of a non-deterministic model.
Definition Scheduler.h:18
Struct to store the extreme bound values needed for the reward correction values when clipping is use...
Struct for storing precomputed values bounding the actual values on the POMDP.