Browse Source

Added some todos

Conflicts:
	src/storm/modelchecker/prctl/helper/SparseMdpPrctlHelper.cpp
	src/storm/storage/Scheduler.h
tempestpy_adaptions
Tim Quatmann 3 years ago
committed by Stefan Pranger
parent
commit
5c204182eb
  1. 2
      src/storm/modelchecker/prctl/helper/SparseMdpPrctlHelper.cpp
  2. 8
      src/storm/storage/Scheduler.h
  3. 2
      src/storm/storage/memorystructure/MemoryStructureBuilder.h

2
src/storm/modelchecker/prctl/helper/SparseMdpPrctlHelper.cpp

@ -629,7 +629,7 @@ namespace storm {
} }
std::vector<ValueType> maybeStateChoiceValues = std::vector<ValueType>(sizeMaybeStateChoiceValues, storm::utility::zero<ValueType>()); std::vector<ValueType> maybeStateChoiceValues = std::vector<ValueType>(sizeMaybeStateChoiceValues, storm::utility::zero<ValueType>());
// TODO: if a scheduler is to be produced and maybestatesNotRelevant is true, we have to set the scheduler for maybsetsates as "unreachable" TODO
// Check whether we need to compute exact probabilities for some states. // Check whether we need to compute exact probabilities for some states.
if ((qualitative || maybeStatesNotRelevant) && !goal.isShieldingTask()) { if ((qualitative || maybeStatesNotRelevant) && !goal.isShieldingTask()) {
// Set the values for all maybe-states to 0.5 to indicate that their probability values are neither 0 nor 1. // Set the values for all maybe-states to 0.5 to indicate that their probability values are neither 0 nor 1.

8
src/storm/storage/Scheduler.h

@ -5,6 +5,7 @@
#include "storm/storage/memorystructure/MemoryStructure.h" #include "storm/storage/memorystructure/MemoryStructure.h"
#include "storm/storage/SchedulerChoice.h" #include "storm/storage/SchedulerChoice.h"
#include "storm/storage/BitVector.h"
namespace storm { namespace storm {
namespace storage { namespace storage {
@ -65,7 +66,7 @@ namespace storm {
storm::storage::BitVector computeActionSupport(std::vector<uint64_t> const& nondeterministicChoiceIndicies) const; storm::storage::BitVector computeActionSupport(std::vector<uint64_t> const& nondeterministicChoiceIndicies) const;
/*! /*!
* Retrieves whether there is a pair of model and memory state for which the choice is undefined.
* Retrieves whether there is a *reachable* pair of model and memory state for which the choice is undefined.
*/ */
bool isPartialScheduler() const; bool isPartialScheduler() const;
@ -127,8 +128,11 @@ namespace storm {
std::vector<std::vector<SchedulerChoice<ValueType>>> schedulerChoices; std::vector<std::vector<SchedulerChoice<ValueType>>> schedulerChoices;
bool printUndefinedChoices = false; bool printUndefinedChoices = false;
uint_fast64_t numOfUndefinedChoices;
std::vector<storm::storage::BitVector> reachableStates;
uint_fast64_t numOfUndefinedChoices; // Only consider reachable ones
uint_fast64_t numOfDeterministicChoices; uint_fast64_t numOfDeterministicChoices;
uint_fast64_t numOfUnreachableStates;
}; };
} }
} }

2
src/storm/storage/memorystructure/MemoryStructureBuilder.h

@ -19,7 +19,7 @@ namespace storm {
* @param numberOfMemoryStates The number of states the resulting memory structure should have * @param numberOfMemoryStates The number of states the resulting memory structure should have
*/ */
MemoryStructureBuilder(uint_fast64_t numberOfMemoryStates, storm::models::sparse::Model<ValueType, RewardModelType> const& model); MemoryStructureBuilder(uint_fast64_t numberOfMemoryStates, storm::models::sparse::Model<ValueType, RewardModelType> const& model);
// TODO: Add variant with a flag: Consider non-initial model states
/*! /*!
* Initializes a new builder with the data from the provided memory structure * Initializes a new builder with the data from the provided memory structure
*/ */

Loading…
Cancel
Save