From 3f95682207cf18c6d0def835ae54bf8ae13b3652 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Wed, 18 Jul 2018 17:49:48 +0200 Subject: [PATCH] make random solver more reliable --- .../inf/st/mquat/solving/random/RandomSolver.java | 9 +++------ .../inf/st/mquat/solving/RandomHandwrittenTest.java | 2 +- .../tudresden/inf/st/mquat/solving/RandomSolverTest.java | 2 +- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/jastadd-mquat-solver-random/src/main/java/de/tudresden/inf/st/mquat/solving/random/RandomSolver.java b/jastadd-mquat-solver-random/src/main/java/de/tudresden/inf/st/mquat/solving/random/RandomSolver.java index 476d6b5..a90785c 100644 --- a/jastadd-mquat-solver-random/src/main/java/de/tudresden/inf/st/mquat/solving/random/RandomSolver.java +++ b/jastadd-mquat-solver-random/src/main/java/de/tudresden/inf/st/mquat/solving/random/RandomSolver.java @@ -27,12 +27,11 @@ public class RandomSolver implements BenchmarkableSolver { private long maxSolvingTime; private boolean timedOut; - public RandomSolver() { - this(Long.MAX_VALUE); - } + private final Random random; - public RandomSolver(long maxSolvingTime) { + public RandomSolver(long maxSolvingTime, long seed) { this.maxSolvingTime = maxSolvingTime; + this.random = new Random(seed); reset(); } @@ -50,8 +49,6 @@ public class RandomSolver implements BenchmarkableSolver { List<Solution> solutions = new ArrayList<>(); - Random random = new Random(); - do { numTotalSoftwareSolutions++; diff --git a/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomHandwrittenTest.java b/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomHandwrittenTest.java index 6641db6..83e5927 100644 --- a/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomHandwrittenTest.java +++ b/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomHandwrittenTest.java @@ -6,6 +6,6 @@ public class RandomHandwrittenTest extends HandwrittenTestSuite { @Override protected Solver getSolver() { - return new RandomSolver(60000); + return new RandomSolver(5000, 0); } } diff --git a/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomSolverTest.java b/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomSolverTest.java index 32c5722..9722756 100644 --- a/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomSolverTest.java +++ b/jastadd-mquat-solver-random/src/test/java/de/tudresden/inf/st/mquat/solving/RandomSolverTest.java @@ -42,7 +42,7 @@ public class RandomSolverTest { ScenarioGenerator generator = new ScenarioGenerator(new ScenarioDescription(tlc, iac, isd, cac, csd, dep, imp, res, req, cpu, seed)); Root model = generator.generate(); - RandomSolver solver = new RandomSolver(5000); + RandomSolver solver = new RandomSolver(5000, 1337); Solution solution = solver.solve(model); -- GitLab