From ab3d3773a0ae532b8ac409185a0613e7a40503b1 Mon Sep 17 00:00:00 2001 From: Dave Parker Date: Wed, 29 Feb 2012 16:14:49 +0000 Subject: [PATCH] Added valiter switch (for use by MDP explicit engine). git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@4758 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- prism/src/explicit/ProbModelChecker.java | 10 +++++----- prism/src/prism/PrismSettings.java | 4 +++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/prism/src/explicit/ProbModelChecker.java b/prism/src/explicit/ProbModelChecker.java index 372981fe..1b180c1a 100644 --- a/prism/src/explicit/ProbModelChecker.java +++ b/prism/src/explicit/ProbModelChecker.java @@ -165,15 +165,15 @@ public class ProbModelChecker extends StateModelChecker // PRISM_MDP_SOLN_METHOD s = settings.getString(PrismSettings.PRISM_MDP_SOLN_METHOD); if (s.equals("Value iteration")) { - setSolnMethod(SolnMethod.VALUE_ITERATION); + setMDPSolnMethod(MDPSolnMethod.VALUE_ITERATION); } else if (s.equals("Gauss-Seidel")) { - setSolnMethod(SolnMethod.GAUSS_SEIDEL); + setMDPSolnMethod(MDPSolnMethod.GAUSS_SEIDEL); } else if (s.equals("Policy iteration")) { - setSolnMethod(SolnMethod.POLICY_ITERATION); + setMDPSolnMethod(MDPSolnMethod.POLICY_ITERATION); } else if (s.equals("Modified policy iteration")) { - setSolnMethod(SolnMethod.MODIFIED_POLICY_ITERATION); + setMDPSolnMethod(MDPSolnMethod.MODIFIED_POLICY_ITERATION); } else if (s.equals("Linear programming")) { - setSolnMethod(SolnMethod.LINEAR_PROGRAMMING); + setMDPSolnMethod(MDPSolnMethod.LINEAR_PROGRAMMING); } else { throw new PrismException("Explicit engine does not support MDP solution method \"" + s + "\""); } diff --git a/prism/src/prism/PrismSettings.java b/prism/src/prism/PrismSettings.java index 013bf5ac..0fdf9b89 100644 --- a/prism/src/prism/PrismSettings.java +++ b/prism/src/prism/PrismSettings.java @@ -763,7 +763,7 @@ public class PrismSettings implements Observer // NUMERICAL SOLUTION OPTIONS: - // Linear equation solver method + // Linear equation solver + MDP soln method else if (sw.equals("power") || sw.equals("pow") || sw.equals("pwr")) { set(PRISM_LIN_EQ_METHOD, "Power"); } else if (sw.equals("jacobi") || sw.equals("jac")) { @@ -787,6 +787,8 @@ public class PrismSettings implements Observer set(PRISM_LIN_EQ_METHOD, "Pseudo-SOR"); } else if (sw.equals("bpsor")) { set(PRISM_LIN_EQ_METHOD, "Backwards Pseudo-SOR"); + } else if (sw.equals("valiter")) { + set(PRISM_MDP_SOLN_METHOD, "Value iteration"); } // Linear equation solver over-relaxation parameter else if (sw.equals("omega")) {