diff options
Diffstat (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java')
-rw-r--r-- | Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java index 1234d54b..6ff867d7 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java | |||
@@ -75,7 +75,6 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
75 | // Running | 75 | // Running |
76 | private PriorityQueue<TrajectoryWithFitness> trajectoiresToExplore; | 76 | private PriorityQueue<TrajectoryWithFitness> trajectoiresToExplore; |
77 | private SolutionStore solutionStore; | 77 | private SolutionStore solutionStore; |
78 | private SolutionStoreWithDiversityDescriptor solutionStoreWithDiversityDescriptor; | ||
79 | private volatile boolean isInterrupted = false; | 78 | private volatile boolean isInterrupted = false; |
80 | private ModelResult modelResultByInternalSolver = null; | 79 | private ModelResult modelResultByInternalSolver = null; |
81 | private Random random = new Random(); | 80 | private Random random = new Random(); |
@@ -96,9 +95,6 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
96 | this.method = method; | 95 | this.method = method; |
97 | } | 96 | } |
98 | 97 | ||
99 | public SolutionStoreWithDiversityDescriptor getSolutionStoreWithDiversityDescriptor() { | ||
100 | return solutionStoreWithDiversityDescriptor; | ||
101 | } | ||
102 | public int getNumberOfStatecoderFail() { | 98 | public int getNumberOfStatecoderFail() { |
103 | return numberOfStatecoderFail; | 99 | return numberOfStatecoderFail; |
104 | } | 100 | } |
@@ -117,8 +113,6 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
117 | matchers.add(matcher); | 113 | matchers.add(matcher); |
118 | } | 114 | } |
119 | 115 | ||
120 | this.solutionStoreWithDiversityDescriptor = new SolutionStoreWithDiversityDescriptor(configuration.diversityRequirement); | ||
121 | |||
122 | final ObjectiveComparatorHelper objectiveComparatorHelper = context.getObjectiveComparatorHelper(); | 116 | final ObjectiveComparatorHelper objectiveComparatorHelper = context.getObjectiveComparatorHelper(); |
123 | this.comparator = new Comparator<TrajectoryWithFitness>() { | 117 | this.comparator = new Comparator<TrajectoryWithFitness>() { |
124 | @Override | 118 | @Override |
@@ -142,7 +136,7 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
142 | } | 136 | } |
143 | 137 | ||
144 | final Fitness firstfitness = context.calculateFitness(); | 138 | final Fitness firstfitness = context.calculateFitness(); |
145 | checkForSolution(firstfitness); | 139 | solutionStore.newSolution(context); |
146 | 140 | ||
147 | final ObjectiveComparatorHelper objectiveComparatorHelper = context.getObjectiveComparatorHelper(); | 141 | final ObjectiveComparatorHelper objectiveComparatorHelper = context.getObjectiveComparatorHelper(); |
148 | final Object[] firstTrajectory = context.getTrajectory().toArray(new Object[0]); | 142 | final Object[] firstTrajectory = context.getTrajectory().toArray(new Object[0]); |
@@ -215,7 +209,7 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
215 | context.backtrack(); | 209 | context.backtrack(); |
216 | } else { | 210 | } else { |
217 | final Fitness nextFitness = context.calculateFitness(); | 211 | final Fitness nextFitness = context.calculateFitness(); |
218 | checkForSolution(nextFitness); | 212 | solutionStore.newSolution(context); |
219 | if (context.getDepth() > configuration.searchSpaceConstraints.maxDepth) { | 213 | if (context.getDepth() > configuration.searchSpaceConstraints.maxDepth) { |
220 | logger.debug("Reached max depth."); | 214 | logger.debug("Reached max depth."); |
221 | context.backtrack(); | 215 | context.backtrack(); |
@@ -264,15 +258,6 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { | |||
264 | return activationIds; | 258 | return activationIds; |
265 | } | 259 | } |
266 | 260 | ||
267 | private void checkForSolution(final Fitness fitness) { | ||
268 | if (fitness.isSatisifiesHardObjectives()) { | ||
269 | if (solutionStoreWithDiversityDescriptor.isDifferent(context)) { | ||
270 | solutionStoreWithDiversityDescriptor.newSolution(context); | ||
271 | solutionStore.newSolution(context); | ||
272 | } | ||
273 | } | ||
274 | } | ||
275 | |||
276 | @Override | 261 | @Override |
277 | public void interruptStrategy() { | 262 | public void interruptStrategy() { |
278 | isInterrupted = true; | 263 | isInterrupted = true; |