aboutsummaryrefslogtreecommitdiffstats
path: root/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-06-15 20:56:47 -0400
committerLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-06-15 20:56:47 -0400
commitc0c5a1644cc221352b8b9b370eea6a87677ba948 (patch)
tree4b1412577c568440b7098dc31691438ebc8e7e9d /Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java
parentBump MDEOptimizer version (diff)
downloadVIATRA-Generator-c0c5a1644cc221352b8b9b370eea6a87677ba948.tar.gz
VIATRA-Generator-c0c5a1644cc221352b8b9b370eea6a87677ba948.tar.zst
VIATRA-Generator-c0c5a1644cc221352b8b9b370eea6a87677ba948.zip
Try fix statecode bug
Modified graph width calculation to not depend on order of nodes
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.java8
1 files changed, 6 insertions, 2 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 077fea21..144e7484 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
@@ -20,8 +20,8 @@ import java.util.List;
20import java.util.PriorityQueue; 20import java.util.PriorityQueue;
21import java.util.Random; 21import java.util.Random;
22 22
23import org.apache.log4j.Level;
24import org.apache.log4j.Logger; 23import org.apache.log4j.Logger;
24import org.eclipse.emf.ecore.EObject;
25import org.eclipse.emf.ecore.util.EcoreUtil; 25import org.eclipse.emf.ecore.util.EcoreUtil;
26import org.eclipse.viatra.dse.api.strategy.interfaces.IStrategy; 26import org.eclipse.viatra.dse.api.strategy.interfaces.IStrategy;
27import org.eclipse.viatra.dse.base.ThreadContext; 27import org.eclipse.viatra.dse.base.ThreadContext;
@@ -254,6 +254,7 @@ public class BestFirstStrategyForModelGeneration implements IStrategy {
254 activationIds = new ArrayList<Object>(context.getUntraversedActivationIds()); 254 activationIds = new ArrayList<Object>(context.getUntraversedActivationIds());
255 Collections.shuffle(activationIds); 255 Collections.shuffle(activationIds);
256 } catch (NullPointerException e) { 256 } catch (NullPointerException e) {
257 logger.warn("Unexpected state code: " + context.getDesignSpaceManager().getCurrentState());
257 numberOfStatecoderFail++; 258 numberOfStatecoderFail++;
258 activationIds = Collections.emptyList(); 259 activationIds = Collections.emptyList();
259 } 260 }
@@ -295,7 +296,10 @@ public class BestFirstStrategyForModelGeneration implements IStrategy {
295 int id = ++numberOfPrintedModel; 296 int id = ++numberOfPrintedModel;
296 if (id % configuration.debugConfiguration.partalInterpretationVisualisationFrequency == 0) { 297 if (id % configuration.debugConfiguration.partalInterpretationVisualisationFrequency == 0) {
297 PartialInterpretationVisualisation visualisation = partialInterpretatioVisualiser.visualiseConcretization(p); 298 PartialInterpretationVisualisation visualisation = partialInterpretatioVisualiser.visualiseConcretization(p);
298 visualisation.writeToFile(workspace, String.format("state%09d.png", id)); 299 logger.debug("Visualizing state: " + id + " (" + context.getDesignSpaceManager().getCurrentState() + ")");
300 String name = String.format("state%09d", id);
301 visualisation.writeToFile(workspace, name + ".png");
302 workspace.writeModel((EObject) context.getModel(), name + ".xmi");
299 } 303 }
300 } 304 }
301 } 305 }