aboutsummaryrefslogtreecommitdiffstats
path: root/Domains/hu.bme.mit.inf.dslreasoner.domains.cps
diff options
context:
space:
mode:
Diffstat (limited to 'Domains/hu.bme.mit.inf.dslreasoner.domains.cps')
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend5
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.xtend85
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/cplex/.CpsToLpTranslator.xtendbinbin11104 -> 11104 bytes
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/dse/.CpsStateCoder.xtendbinbin7626 -> 7626 bytes
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.CpsMdeOptimiserMain.xtendbinbin6286 -> 6069 bytes
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.ExcludedOptimisationInterpreter.xtendbinbin7559 -> 0 bytes
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.java7
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedMoeaOptimisation.java54
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.java31
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedRun.java24
10 files changed, 4 insertions, 202 deletions
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
index 459c6ab7..4a4b7a87 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
@@ -11,7 +11,7 @@ import org.eclipse.emf.common.util.URI
11import org.eclipse.emf.ecore.EPackage 11import org.eclipse.emf.ecore.EPackage
12import org.eclipse.emf.ecore.resource.Resource 12import org.eclipse.emf.ecore.resource.Resource
13import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl 13import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl
14import uk.ac.kcl.inf.mdeoptimiser.languages.MoptStandaloneSetup 14import uk.ac.kcl.inf.mdeoptimiser.interfaces.cli.Run
15 15
16class CpsMdeOptimiserMain { 16class CpsMdeOptimiserMain {
17 static val PROJECT_PATH = "." 17 static val PROJECT_PATH = "."
@@ -31,8 +31,7 @@ class CpsMdeOptimiserMain {
31 problem.eResource.URI = URI.createFileURI(PROBLEM_PATH) 31 problem.eResource.URI = URI.createFileURI(PROBLEM_PATH)
32 problem.eResource.save(emptyMap) 32 problem.eResource.save(emptyMap)
33 fixupHenshinModel("model/cps.henshin", "model/cps_fixup.henshin", #{"cps.ecore" -> CpsPackage.eNS_URI}) 33 fixupHenshinModel("model/cps.henshin", "model/cps_fixup.henshin", #{"cps.ecore" -> CpsPackage.eNS_URI})
34 val injector = new MoptStandaloneSetup().createInjectorAndDoEMFRegistration(); 34 Run.main(#["-p", PROJECT_PATH, "-m", MOPT_PATH])
35 injector.getInstance(ExcludedRun).run(PROJECT_PATH, MOPT_PATH)
36 } 35 }
37 36
38 private def static void fixupHenshinModel(String originalPath, String outputPath, Map<String, String> remapMap) { 37 private def static void fixupHenshinModel(String originalPath, String outputPath, Map<String, String> remapMap) {
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.xtend b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.xtend
deleted file mode 100644
index 1e9c5adf..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.xtend
+++ /dev/null
@@ -1,85 +0,0 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo
2
3import java.util.Properties
4import org.moeaframework.Executor
5import org.moeaframework.Instrumenter
6import org.moeaframework.algorithm.PeriodicAction
7import org.moeaframework.core.TerminationCondition
8import org.moeaframework.core.spi.AlgorithmFactory
9import uk.ac.kcl.inf.mdeoptimiser.interfaces.cli.Run
10import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.Optimisation
11import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.SolverSpec
12import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.OptimisationInterpreter
13import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.executor.SolutionGenerator
14import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.MoeaOptimisation
15import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.algorithms.MoeaOptimisationAlgorithmProvider
16import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.instrumentation.PopulationCollector
17import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.problem.MoeaOptimisationProblem
18import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.operators.adaptation.MutationStepSizeStrategyFactory
19import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.output.MDEOBatch
20
21class ExcludedMoeaOptimisation extends MoeaOptimisation {
22 SolutionGenerator solutionGenerator
23 Instrumenter algorithmStepSizeInstrumenter
24
25 override execute(SolverSpec solverSpec, SolutionGenerator solutionGenerator) {
26 this.solutionGenerator = solutionGenerator
27 super.execute(solverSpec, solutionGenerator)
28 }
29
30 override Instrumenter runOptimisation(SolverSpec solverSpec, Properties optimisationProperties) {
31 val algorithmFactory = new AlgorithmFactory
32 algorithmFactory.addProvider(new MoeaOptimisationAlgorithmProvider)
33
34 algorithmStepSizeInstrumenter = new Instrumenter().addExcludedPackage("org.eclipse").withProblemClass(
35 MoeaOptimisationProblem, solutionGenerator).attachApproximationSetCollector().attachElapsedTimeCollector().
36 attachPopulationSizeCollector.attach(new PopulationCollector()).withFrequency(1).withFrequencyType(
37 PeriodicAction.FrequencyType.STEPS)
38
39 var stepSizeStrategy = new MutationStepSizeStrategyFactory(solverSpec.algorithm, algorithmStepSizeInstrumenter).
40 strategy
41
42 solutionGenerator.setMutationStepSizeStrategy(stepSizeStrategy)
43
44 // TODO: Place this in a better location.
45 // Exclude JDK packages from Instrumenter
46 this.algorithmStepSizeInstrumenter.addExcludedPackage("jdk")
47
48 new Executor().usingAlgorithmFactory(algorithmFactory).withAlgorithm(solverSpec.algorithm.name) // Initialize problem with our solution generator
49 .withProblemClass(MoeaOptimisationProblem, solutionGenerator).withProperties(optimisationProperties).
50 withInstrumenter(algorithmStepSizeInstrumenter).withTerminationCondition(
51 optimisationProperties.get("terminationCondition") as TerminationCondition).run()
52
53 return algorithmStepSizeInstrumenter
54 }
55}
56
57class ExcludedOptimisationInterpreter extends OptimisationInterpreter {
58 val Optimisation model
59
60 new(String projectPath, Optimisation model) {
61 super(projectPath, model)
62 this.model = model
63 }
64
65 override start() {
66 // This model provider loads the model given by the user in the DSL
67 var solutionGenerator = new SolutionGenerator(model, getBreedingOperators, getMutationOperators,
68 getModelProvider, getMetamodel);
69
70 return new ExcludedMoeaOptimisation().execute(model.solver, solutionGenerator)
71 }
72
73}
74
75class ExcludedRun extends Run {
76 override runBatch(String moptProjectPath, Optimisation optimisationModel, Integer batch, boolean singleBatch) {
77 val optimisationInterpreter = new ExcludedOptimisationInterpreter(moptProjectPath, optimisationModel);
78 val startTime = System.nanoTime();
79 val optimisationOutcome = optimisationInterpreter.start();
80 val endTime = System.nanoTime();
81 val experimentDuration = ((endTime - startTime) / 1000000);
82 val generatedRules = optimisationInterpreter.getRulegenOperators();
83 return new MDEOBatch(batch, experimentDuration, optimisationOutcome, generatedRules, singleBatch);
84 }
85}
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/cplex/.CpsToLpTranslator.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/cplex/.CpsToLpTranslator.xtendbin
index fd8995c0..9acd8621 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/cplex/.CpsToLpTranslator.xtendbin
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/cplex/.CpsToLpTranslator.xtendbin
Binary files differ
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/dse/.CpsStateCoder.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/dse/.CpsStateCoder.xtendbin
index afdf61a1..ee672cb1 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/dse/.CpsStateCoder.xtendbin
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/dse/.CpsStateCoder.xtendbin
Binary files differ
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.CpsMdeOptimiserMain.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.CpsMdeOptimiserMain.xtendbin
index e8035410..b9f0df1a 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.CpsMdeOptimiserMain.xtendbin
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.CpsMdeOptimiserMain.xtendbin
Binary files differ
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.ExcludedOptimisationInterpreter.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.ExcludedOptimisationInterpreter.xtendbin
deleted file mode 100644
index 315d1748..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/.ExcludedOptimisationInterpreter.xtendbin
+++ /dev/null
Binary files differ
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.java
index 7a2a7e99..c047f255 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.java
@@ -1,10 +1,8 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo; 1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo;
2 2
3import com.google.inject.Injector;
4import hu.bme.mit.inf.dslreasoner.domains.cps.CpsPackage; 3import hu.bme.mit.inf.dslreasoner.domains.cps.CpsPackage;
5import hu.bme.mit.inf.dslreasoner.domains.cps.CyberPhysicalSystem; 4import hu.bme.mit.inf.dslreasoner.domains.cps.CyberPhysicalSystem;
6import hu.bme.mit.inf.dslreasoner.domains.cps.generator.CpsGenerator; 5import hu.bme.mit.inf.dslreasoner.domains.cps.generator.CpsGenerator;
7import hu.bme.mit.inf.dslreasoner.domains.cps.mdeo.ExcludedRun;
8import java.io.BufferedReader; 6import java.io.BufferedReader;
9import java.io.BufferedWriter; 7import java.io.BufferedWriter;
10import java.io.FileReader; 8import java.io.FileReader;
@@ -19,7 +17,7 @@ import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
19import org.eclipse.xtext.xbase.lib.CollectionLiterals; 17import org.eclipse.xtext.xbase.lib.CollectionLiterals;
20import org.eclipse.xtext.xbase.lib.Exceptions; 18import org.eclipse.xtext.xbase.lib.Exceptions;
21import org.eclipse.xtext.xbase.lib.Pair; 19import org.eclipse.xtext.xbase.lib.Pair;
22import uk.ac.kcl.inf.mdeoptimiser.languages.MoptStandaloneSetup; 20import uk.ac.kcl.inf.mdeoptimiser.interfaces.cli.Run;
23 21
24@SuppressWarnings("all") 22@SuppressWarnings("all")
25public class CpsMdeOptimiserMain { 23public class CpsMdeOptimiserMain {
@@ -46,8 +44,7 @@ public class CpsMdeOptimiserMain {
46 problem.eResource().save(CollectionLiterals.<Object, Object>emptyMap()); 44 problem.eResource().save(CollectionLiterals.<Object, Object>emptyMap());
47 Pair<String, String> _mappedTo = Pair.<String, String>of("cps.ecore", CpsPackage.eNS_URI); 45 Pair<String, String> _mappedTo = Pair.<String, String>of("cps.ecore", CpsPackage.eNS_URI);
48 CpsMdeOptimiserMain.fixupHenshinModel("model/cps.henshin", "model/cps_fixup.henshin", Collections.<String, String>unmodifiableMap(CollectionLiterals.<String, String>newHashMap(_mappedTo))); 46 CpsMdeOptimiserMain.fixupHenshinModel("model/cps.henshin", "model/cps_fixup.henshin", Collections.<String, String>unmodifiableMap(CollectionLiterals.<String, String>newHashMap(_mappedTo)));
49 final Injector injector = new MoptStandaloneSetup().createInjectorAndDoEMFRegistration(); 47 Run.main(new String[] { "-p", CpsMdeOptimiserMain.PROJECT_PATH, "-m", CpsMdeOptimiserMain.MOPT_PATH });
50 injector.<ExcludedRun>getInstance(ExcludedRun.class).run(CpsMdeOptimiserMain.PROJECT_PATH, CpsMdeOptimiserMain.MOPT_PATH);
51 } catch (Throwable _e) { 48 } catch (Throwable _e) {
52 throw Exceptions.sneakyThrow(_e); 49 throw Exceptions.sneakyThrow(_e);
53 } 50 }
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedMoeaOptimisation.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedMoeaOptimisation.java
deleted file mode 100644
index 52d3f665..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedMoeaOptimisation.java
+++ /dev/null
@@ -1,54 +0,0 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo;
2
3import java.util.Properties;
4import org.moeaframework.Executor;
5import org.moeaframework.Instrumenter;
6import org.moeaframework.algorithm.PeriodicAction;
7import org.moeaframework.core.TerminationCondition;
8import org.moeaframework.core.spi.AlgorithmFactory;
9import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.AlgorithmSpec;
10import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.SolverSpec;
11import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.executor.SolutionGenerator;
12import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.MoeaOptimisation;
13import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.algorithms.MoeaOptimisationAlgorithmProvider;
14import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.instrumentation.PopulationCollector;
15import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.moea.problem.MoeaOptimisationProblem;
16import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.operators.adaptation.MutationStepSizeStrategy;
17import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.operators.adaptation.MutationStepSizeStrategyFactory;
18
19@SuppressWarnings("all")
20public class ExcludedMoeaOptimisation extends MoeaOptimisation {
21 private SolutionGenerator solutionGenerator;
22
23 private Instrumenter algorithmStepSizeInstrumenter;
24
25 @Override
26 public Instrumenter execute(final SolverSpec solverSpec, final SolutionGenerator solutionGenerator) {
27 Instrumenter _xblockexpression = null;
28 {
29 this.solutionGenerator = solutionGenerator;
30 _xblockexpression = super.execute(solverSpec, solutionGenerator);
31 }
32 return _xblockexpression;
33 }
34
35 @Override
36 public Instrumenter runOptimisation(final SolverSpec solverSpec, final Properties optimisationProperties) {
37 final AlgorithmFactory algorithmFactory = new AlgorithmFactory();
38 MoeaOptimisationAlgorithmProvider _moeaOptimisationAlgorithmProvider = new MoeaOptimisationAlgorithmProvider();
39 algorithmFactory.addProvider(_moeaOptimisationAlgorithmProvider);
40 Instrumenter _attachPopulationSizeCollector = new Instrumenter().addExcludedPackage("org.eclipse").withProblemClass(
41 MoeaOptimisationProblem.class, this.solutionGenerator).attachApproximationSetCollector().attachElapsedTimeCollector().attachPopulationSizeCollector();
42 PopulationCollector _populationCollector = new PopulationCollector();
43 this.algorithmStepSizeInstrumenter = _attachPopulationSizeCollector.attach(_populationCollector).withFrequency(1).withFrequencyType(
44 PeriodicAction.FrequencyType.STEPS);
45 AlgorithmSpec _algorithm = solverSpec.getAlgorithm();
46 MutationStepSizeStrategy stepSizeStrategy = new MutationStepSizeStrategyFactory(_algorithm, this.algorithmStepSizeInstrumenter).getStrategy();
47 this.solutionGenerator.setMutationStepSizeStrategy(stepSizeStrategy);
48 this.algorithmStepSizeInstrumenter.addExcludedPackage("jdk");
49 Object _get = optimisationProperties.get("terminationCondition");
50 new Executor().usingAlgorithmFactory(algorithmFactory).withAlgorithm(solverSpec.getAlgorithm().getName()).withProblemClass(MoeaOptimisationProblem.class, this.solutionGenerator).withProperties(optimisationProperties).withInstrumenter(this.algorithmStepSizeInstrumenter).withTerminationCondition(
51 ((TerminationCondition) _get)).run();
52 return this.algorithmStepSizeInstrumenter;
53 }
54}
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.java
deleted file mode 100644
index 90641d73..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedOptimisationInterpreter.java
+++ /dev/null
@@ -1,31 +0,0 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo;
2
3import hu.bme.mit.inf.dslreasoner.domains.cps.mdeo.ExcludedMoeaOptimisation;
4import java.util.List;
5import org.eclipse.emf.ecore.EPackage;
6import org.eclipse.emf.henshin.model.Unit;
7import org.moeaframework.Instrumenter;
8import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.Optimisation;
9import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.IModelProvider;
10import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.OptimisationInterpreter;
11import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.executor.SolutionGenerator;
12
13@SuppressWarnings("all")
14public class ExcludedOptimisationInterpreter extends OptimisationInterpreter {
15 private final Optimisation model;
16
17 public ExcludedOptimisationInterpreter(final String projectPath, final Optimisation model) {
18 super(projectPath, model);
19 this.model = model;
20 }
21
22 @Override
23 public Instrumenter start() {
24 List<Unit> _breedingOperators = this.getBreedingOperators();
25 List<Unit> _mutationOperators = this.getMutationOperators();
26 IModelProvider _modelProvider = this.getModelProvider();
27 EPackage _metamodel = this.getMetamodel();
28 SolutionGenerator solutionGenerator = new SolutionGenerator(this.model, _breedingOperators, _mutationOperators, _modelProvider, _metamodel);
29 return new ExcludedMoeaOptimisation().execute(this.model.getSolver(), solutionGenerator);
30 }
31}
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedRun.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedRun.java
deleted file mode 100644
index 76f12e79..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/ExcludedRun.java
+++ /dev/null
@@ -1,24 +0,0 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo;
2
3import hu.bme.mit.inf.dslreasoner.domains.cps.mdeo.ExcludedOptimisationInterpreter;
4import java.util.List;
5import java.util.Map;
6import org.eclipse.emf.ecore.EPackage;
7import org.moeaframework.Instrumenter;
8import uk.ac.kcl.inf.mdeoptimiser.interfaces.cli.Run;
9import uk.ac.kcl.inf.mdeoptimiser.languages.mopt.Optimisation;
10import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.output.MDEOBatch;
11
12@SuppressWarnings("all")
13public class ExcludedRun extends Run {
14 @Override
15 public MDEOBatch runBatch(final String moptProjectPath, final Optimisation optimisationModel, final Integer batch, final boolean singleBatch) {
16 final ExcludedOptimisationInterpreter optimisationInterpreter = new ExcludedOptimisationInterpreter(moptProjectPath, optimisationModel);
17 final long startTime = System.nanoTime();
18 final Instrumenter optimisationOutcome = optimisationInterpreter.start();
19 final long endTime = System.nanoTime();
20 final long experimentDuration = ((endTime - startTime) / 1000000);
21 final Map<EPackage, List<org.eclipse.emf.henshin.model.Module>> generatedRules = optimisationInterpreter.getRulegenOperators();
22 return new MDEOBatch(batch, experimentDuration, optimisationOutcome, generatedRules, singleBatch);
23 }
24}