32 "Multi-objective Model checking on model with multiple initial states is not supported.");
37 storm::exceptions::InvalidArgumentException,
"Unable to check multi-objective formula on non-closed Markov automaton.");
42 swPreprocessing.
stop();
45 <<
" Result: " << preprocessorResult <<
'\n');
47 STORM_LOG_INFO(
"Preprocessing done in " << swPreprocessing <<
" seconds.\n"
48 <<
" Result: " << preprocessorResult <<
'\n');
53 std::unique_ptr<CheckResult> result;
56 case MultiObjectiveMethod::Pcaa: {
61 result = achChecker.check(env);
64 storm::exceptions::NotImplementedException,
"The query type is not implemented with scheduler restrictions.");
66 result = explorer.check(env);
68 explorer.exportPlotOfCurrentApproximation(env);
72 std::unique_ptr<SparsePcaaQuery<SparseModelType, storm::RationalNumber>> query;
73 switch (preprocessorResult.queryType) {
75 query = std::unique_ptr<SparsePcaaQuery<SparseModelType, storm::RationalNumber>>(
79 query = std::unique_ptr<SparsePcaaQuery<SparseModelType, storm::RationalNumber>>(
83 query = std::unique_ptr<SparsePcaaQuery<SparseModelType, storm::RationalNumber>>(
88 "The multi-objective query type is not supported for the selected solution method '" <<
toString(method) <<
"'.");
92 result = query->check(env);
95 query->exportPlotOfCurrentApproximation(env);
100 case MultiObjectiveMethod::ConstraintBased: {
102 "The selected multi-objective model checking method does not support scheduler restrictions.");
103 std::unique_ptr<SparseCbQuery<SparseModelType>> query;
104 switch (preprocessorResult.queryType) {
110 "The multi-objective query type is not supported for the selected solution method '" <<
toString(method) <<
"'.");
114 result = query->check(env);
117 STORM_LOG_ERROR(
"Can not export plot for the constrained based solver.");
123 "The multi-objective solution method '" <<
toString(method) <<
"' is not supported.");
129 STORM_PRINT_AND_LOG(
"Solving multi-objective query took " << swTotal <<
" seconds (consisting of " << swPreprocessing
130 <<
" seconds for preprocessing and " << swAnalysis
131 <<
" seconds for analyzing the preprocessed model).\n");