diff options
author | 20001LastOrder <boqi.chen@mail.mcgill.ca> | 2020-11-03 22:52:26 -0500 |
---|---|---|
committer | 20001LastOrder <boqi.chen@mail.mcgill.ca> | 2020-11-03 22:52:26 -0500 |
commit | 945f487a08b643392a5d5918c631640b9a0e4605 (patch) | |
tree | b537c456e395950ce98daaabb9468c7c17d5a72b /Application/hu.bme.mit.inf.dslreasoner.application/src/hu | |
parent | Fix numeric-solver-at-end (diff) | |
download | VIATRA-Generator-945f487a08b643392a5d5918c631640b9a0e4605.tar.gz VIATRA-Generator-945f487a08b643392a5d5918c631640b9a0e4605.tar.zst VIATRA-Generator-945f487a08b643392a5d5918c631640b9a0e4605.zip |
add realistic solver
Diffstat (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src/hu')
-rw-r--r-- | Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend index 2fe69a47..32db44bc 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend | |||
@@ -15,6 +15,7 @@ import org.eclipse.xtext.xbase.lib.Functions.Function1 | |||
15 | import hu.bme.mit.inf.dslreasoner.visualisation.pi2graphviz.GraphvizVisualiser | 15 | import hu.bme.mit.inf.dslreasoner.visualisation.pi2graphviz.GraphvizVisualiser |
16 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.DiversityDescriptor | 16 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.DiversityDescriptor |
17 | import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder.SolverConfiguration | 17 | import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder.SolverConfiguration |
18 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.RealisticGuidance | ||
18 | 19 | ||
19 | class SolverLoader { | 20 | class SolverLoader { |
20 | def loadSolver(Solver solver, Map<String, String> config) { | 21 | def loadSolver(Solver solver, Map<String, String> config) { |
@@ -130,6 +131,30 @@ class SolverLoader { | |||
130 | c.calculateObjectCreationCosts = Boolean.parseBoolean(stringValue) | 131 | c.calculateObjectCreationCosts = Boolean.parseBoolean(stringValue) |
131 | } catch(Exception e) {} | 132 | } catch(Exception e) {} |
132 | } | 133 | } |
134 | |||
135 | if(config.containsKey('realistic-guidance')){ | ||
136 | try{ | ||
137 | val stringValue = config.get('realistic-guidance'); | ||
138 | c.realisticGuidance = RealisticGuidance.valueOf(stringValue); | ||
139 | }catch(IllegalArgumentException e){ | ||
140 | console.writeError('''Illegal Guidance Name: «e.message»''') | ||
141 | } | ||
142 | } | ||
143 | |||
144 | if(config.containsKey('domain')){ | ||
145 | val stringValue = config.get('domain'); | ||
146 | c.domain = stringValue | ||
147 | } | ||
148 | |||
149 | if(config.containsKey('optional-wf')){ | ||
150 | val stringValue = config.get('optional-wf'); | ||
151 | c.isWFOptional = Boolean.parseBoolean(stringValue) | ||
152 | } | ||
153 | |||
154 | if(config.containsKey('allow-must-violations')){ | ||
155 | val stringValue = config.get('allow-must-violations'); | ||
156 | c.allowMustViolations = Boolean.parseBoolean(stringValue); | ||
157 | } | ||
133 | ] | 158 | ] |
134 | } else { | 159 | } else { |
135 | throw new UnsupportedOperationException('''Unknown solver: «solver»''') | 160 | throw new UnsupportedOperationException('''Unknown solver: «solver»''') |