aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-07-29 15:36:28 +0200
committerLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-07-29 15:36:28 +0200
commit83f8384f66ddb1d86567c928bdb102174c70cba0 (patch)
treecc65238c275b6ae1accc26de3a4e2fd1c973973d
parentMake CbcPolyhedronSolver more robust (diff)
downloadVIATRA-Generator-83f8384f66ddb1d86567c928bdb102174c70cba0.tar.gz
VIATRA-Generator-83f8384f66ddb1d86567c928bdb102174c70cba0.tar.zst
VIATRA-Generator-83f8384f66ddb1d86567c928bdb102174c70cba0.zip
Fix CBC timeout
-rw-r--r--Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/cpp/viatracbc.cpp4
-rwxr-xr-xSolvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/lib/libviatracbc.sobin33944 -> 33944 bytes
-rw-r--r--Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/cardinality/PolyhedronScopePropagator.xtend2
-rw-r--r--Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend2
4 files changed, 5 insertions, 3 deletions
diff --git a/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/cpp/viatracbc.cpp b/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/cpp/viatracbc.cpp
index ffd35759..34cab1dd 100644
--- a/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/cpp/viatracbc.cpp
+++ b/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/cpp/viatracbc.cpp
@@ -154,7 +154,9 @@ jint SolveModel(CoinModel &build, jdouble timeoutSeconds, jboolean silent, jdoub
154 solver.loadFromCoinModel(build); 154 solver.loadFromCoinModel(build);
155 CbcModel model{solver}; 155 CbcModel model{solver};
156 156
157 model.setDblParam(CbcModel::CbcMaximumSeconds, timeoutSeconds); 157 if (timeoutSeconds >= 0) {
158 model.setDblParam(CbcModel::CbcMaximumSeconds, timeoutSeconds);
159 }
158 if (silent == JNI_FALSE) { 160 if (silent == JNI_FALSE) {
159 model.messageHandler()->setLogLevel(2); 161 model.messageHandler()->setLogLevel(2);
160 model.solver()->messageHandler()->setLogLevel(1); 162 model.solver()->messageHandler()->setLogLevel(1);
diff --git a/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/lib/libviatracbc.so b/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/lib/libviatracbc.so
index 4eae7de6..96289216 100755
--- a/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/lib/libviatracbc.so
+++ b/Solvers/ILP-Solver/hu.bme.mit.inf.dslreasoner.ilp.cbc/lib/libviatracbc.so
Binary files differ
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/cardinality/PolyhedronScopePropagator.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/cardinality/PolyhedronScopePropagator.xtend
index 3fd50071..a3977653 100644
--- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/cardinality/PolyhedronScopePropagator.xtend
+++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/cardinality/PolyhedronScopePropagator.xtend
@@ -63,6 +63,7 @@ class PolyhedronScopePropagator extends ScopePropagator {
63 populatePolyhedronFromScope() 63 populatePolyhedronFromScope()
64// println(polyhedron) 64// println(polyhedron)
65 val result = operator.saturate() 65 val result = operator.saturate()
66// println(polyhedron)
66 if (result == PolyhedronSaturationResult.EMPTY) { 67 if (result == PolyhedronSaturationResult.EMPTY) {
67 throw new IllegalStateException("Scope bounds cannot be satisfied") 68 throw new IllegalStateException("Scope bounds cannot be satisfied")
68 } else { 69 } else {
@@ -71,7 +72,6 @@ class PolyhedronScopePropagator extends ScopePropagator {
71 super.propagateAllScopeConstraints() 72 super.propagateAllScopeConstraints()
72 } 73 }
73 } 74 }
74// println(polyhedron)
75 } 75 }
76 76
77 def resetBounds() { 77 def resetBounds() {
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend
index 3c9ef74c..7a3a2d67 100644
--- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend
+++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend
@@ -51,7 +51,7 @@ class ViatraReasonerConfiguration extends LogicSolverConfiguration {
51 */ 51 */
52 public var SearchSpaceConstraint searchSpaceConstraints = new SearchSpaceConstraint 52 public var SearchSpaceConstraint searchSpaceConstraints = new SearchSpaceConstraint
53 53
54 public var ScopePropagatorStrategy scopePropagatorStrategy = ScopePropagatorStrategy.PolyhedralRelations 54 public var ScopePropagatorStrategy scopePropagatorStrategy = ScopePropagatorStrategy.PolyhedralTypeHierarchy
55 55
56 public var List<CostObjectiveConfiguration> costObjectives = newArrayList 56 public var List<CostObjectiveConfiguration> costObjectives = newArrayList
57} 57}