Google OR-Tools v9.9
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
Solver.java
Go to the documentation of this file.
1/* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (https://www.swig.org).
3 * Version 4.2.0
4 *
5 * Do not make changes to this file unless you know what you are doing - modify
6 * the SWIG interface file instead.
7 * ----------------------------------------------------------------------------- */
8
9package com.google.ortools.constraintsolver;
10
11import com.google.ortools.constraintsolver.ConstraintSolverParameters;
12import com.google.ortools.constraintsolver.RegularLimitParameters;
13
14// Used to wrap DisplayCallback (std::function<std::string()>)
15// see https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html
16import java.util.function.Supplier;
17// Used to wrap std::function<bool()>
18// see https://docs.oracle.com/javase/8/docs/api/java/util/function/BooleanSupplier.html
19import java.util.function.BooleanSupplier;
20
21// Used to wrap IndexEvaluator1 (std::function<int64_t(int64_t)>)
22// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongUnaryOperator.html
23import java.util.function.LongUnaryOperator;
24// Used to wrap IndexEvaluator2 (std::function<int64_t(int64_t, int64_t)>)
25// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongBinaryOperator.html
26import java.util.function.LongBinaryOperator;
27// Used to wrap IndexEvaluator3 (std::function<int64_t(int64_t, int64_t, int64_t)>)
28// note: Java does not provide TernaryOperator so we provide it.
29import com.google.ortools.constraintsolver.LongTernaryOperator;
30// Used to wrap std::function<int64_t(int, int)>
31// note: Java does not provide it, so we provide it.
32import com.google.ortools.constraintsolver.IntIntToLongFunction;
33
34// Used to wrap IndexFilter1 (std::function<bool(int64_t)>)
35// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongPredicate.html
36import java.util.function.LongPredicate;
37
38// Used to wrap std::function<bool(int64_t, int64_t, int64_t)>
39// note: Java does not provide TernaryPredicate so we provide it
40import com.google.ortools.constraintsolver.LongTernaryPredicate;
41
42// Used to wrap std::function<void(Solver*)>
43// see https://docs.oracle.com/javase/8/docs/api/java/util/function/Consumer.html
44import java.util.function.Consumer;
45
46// Used to wrap ObjectiveWatcher (std::function<void(int64_t)>)
47// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongConsumer.html
48import java.util.function.LongConsumer;
49
50// Used to wrap Closure (std::function<void()>)
51// see https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html
52import java.lang.Runnable;
53
54// Used to keep alive java references to objects passed to the C++ layer.
55import java.util.HashSet;
56
76public class Solver {
77 private transient long swigCPtr;
78 protected transient boolean swigCMemOwn;
79
80 protected Solver(long cPtr, boolean cMemoryOwn) {
81 swigCMemOwn = cMemoryOwn;
82 swigCPtr = cPtr;
83 }
84
85 protected static long getCPtr(Solver obj) {
86 return (obj == null) ? 0 : obj.swigCPtr;
87 }
88
89 protected static long swigRelease(Solver obj) {
90 long ptr = 0;
91 if (obj != null) {
92 if (!obj.swigCMemOwn)
93 throw new RuntimeException("Cannot release ownership as memory is not owned");
94 ptr = obj.swigCPtr;
95 obj.swigCMemOwn = false;
96 obj.delete();
97 }
98 return ptr;
99 }
100
101 @SuppressWarnings({"deprecation", "removal"})
102 protected void finalize() {
103 delete();
104 }
105
106 public synchronized void delete() {
107 if (swigCPtr != 0) {
108 if (swigCMemOwn) {
109 swigCMemOwn = false;
110 mainJNI.delete_Solver(swigCPtr);
111 }
112 swigCPtr = 0;
113 }
114 }
115
120 public static class FailException extends Exception {
121 public FailException() {
122 super();
123 }
124
125 public FailException(String message) {
126 super(message);
127 }
128 }
129
130 public IntVar[] makeIntVarArray(int count, long min, long max) {
131 IntVar[] array = new IntVar[count];
132 for (int i = 0; i < count; ++i) {
133 array[i] = makeIntVar(min, max);
134 }
135 return array;
136 }
137
138 public IntVar[] makeIntVarArray(int count, long min, long max, String name) {
139 IntVar[] array = new IntVar[count];
140 for (int i = 0; i < count; ++i) {
141 String var_name = name + i;
142 array[i] = makeIntVar(min, max, var_name);
143 }
144 return array;
145 }
146
147 public IntVar[] makeBoolVarArray(int count) {
148 IntVar[] array = new IntVar[count];
149 for (int i = 0; i < count; ++i) {
150 array[i] = makeBoolVar();
151 }
152 return array;
153 }
154
155 public IntVar[] makeBoolVarArray(int count, String name) {
156 IntVar[] array = new IntVar[count];
157 for (int i = 0; i < count; ++i) {
158 String var_name = name + i;
159 array[i] = makeBoolVar(var_name);
160 }
161 return array;
162 }
163
165 long start_min,
166 long start_max,
167 long duration,
168 boolean optional) {
169 IntervalVar[] array = new IntervalVar[count];
170 for (int i = 0; i < count; ++i) {
171 array[i] = makeFixedDurationIntervalVar(start_min,
172 start_max,
173 duration,
174 optional,
175 "");
176 }
177 return array;
178 }
179
181 long start_min,
182 long start_max,
183 long duration,
184 boolean optional,
185 String name) {
186 IntervalVar[] array = new IntervalVar[count];
187 for (int i = 0; i < count; ++i) {
188 array[i] = makeFixedDurationIntervalVar(start_min,
189 start_max,
190 duration,
191 optional,
192 name + i);
193 }
194 return array;
195 }
196
197 // Ensure that the GC doesn't collect any DecisionBuilder set from Java
198 // as the underlying C++ class stores a shallow copy
199 private HashSet<DecisionBuilder> keepAliveDecisionBuilders;
201 if (keepAliveDecisionBuilders == null) {
202 keepAliveDecisionBuilders = new HashSet<DecisionBuilder>();
203 }
204 keepAliveDecisionBuilders.add(db);
205 }
207 for (DecisionBuilder db : dbs) {
209 }
210 }
211
218 static public class IntegerCastInfo {
219 private transient long swigCPtr;
220 protected transient boolean swigCMemOwn;
221
222 protected IntegerCastInfo(long cPtr, boolean cMemoryOwn) {
223 swigCMemOwn = cMemoryOwn;
224 swigCPtr = cPtr;
225 }
226
227 protected static long getCPtr(IntegerCastInfo obj) {
228 return (obj == null) ? 0 : obj.swigCPtr;
229 }
230
231 protected static long swigRelease(IntegerCastInfo obj) {
232 long ptr = 0;
233 if (obj != null) {
234 if (!obj.swigCMemOwn)
235 throw new RuntimeException("Cannot release ownership as memory is not owned");
236 ptr = obj.swigCPtr;
237 obj.swigCMemOwn = false;
238 obj.delete();
239 }
240 return ptr;
241 }
242
243 @SuppressWarnings({"deprecation", "removal"})
244 protected void finalize() {
245 delete();
246 }
247
248 public synchronized void delete() {
249 if (swigCPtr != 0) {
250 if (swigCMemOwn) {
251 swigCMemOwn = false;
252 mainJNI.delete_Solver_IntegerCastInfo(swigCPtr);
253 }
254 swigCPtr = 0;
255 }
256 }
257
259 this(mainJNI.new_Solver_IntegerCastInfo__SWIG_0(), true);
260 }
261
263 this(mainJNI.new_Solver_IntegerCastInfo__SWIG_1(IntVar.getCPtr(v), v, IntExpr.getCPtr(e), e, Constraint.getCPtr(c), c), true);
264 }
265
266 public void setVariable(IntVar value) {
267 mainJNI.Solver_IntegerCastInfo_variable_set(swigCPtr, this, IntVar.getCPtr(value), value);
268 }
269
271 long cPtr = mainJNI.Solver_IntegerCastInfo_variable_get(swigCPtr, this);
272 return (cPtr == 0) ? null : new IntVar(cPtr, false);
273 }
274
275 public void setExpression(IntExpr value) {
276 mainJNI.Solver_IntegerCastInfo_expression_set(swigCPtr, this, IntExpr.getCPtr(value), value);
277 }
278
280 long cPtr = mainJNI.Solver_IntegerCastInfo_expression_get(swigCPtr, this);
281 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
282 }
283
284 public void setMaintainer(Constraint value) {
285 mainJNI.Solver_IntegerCastInfo_maintainer_set(swigCPtr, this, Constraint.getCPtr(value), value);
286 }
287
289 long cPtr = mainJNI.Solver_IntegerCastInfo_maintainer_get(swigCPtr, this);
290 return (cPtr == 0) ? null : new Constraint(cPtr, false);
291 }
292
293 }
294
298 public Solver(String name) {
299 this(mainJNI.new_Solver__SWIG_0(name), true);
300 }
301
302 public Solver(String name, com.google.ortools.constraintsolver.ConstraintSolverParameters parameters) {
303 this(mainJNI.new_Solver__SWIG_1(name, parameters.toByteArray()), true);
304 }
305
310 byte[] buf = mainJNI.Solver_parameters(swigCPtr, this);
311 if (buf == null || buf.length == 0) {
312 return null;
313 }
314 try {
315 return com.google.ortools.constraintsolver.ConstraintSolverParameters.parseFrom(buf);
316 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
317 throw new RuntimeException(
318 "Unable to parse com.google.ortools.constraintsolver.ConstraintSolverParameters protocol message.");
319 }
320}
321
322 public SWIGTYPE_p_operations_research__ConstraintSolverParameters const_parameters() {
323 return new SWIGTYPE_p_operations_research__ConstraintSolverParameters(mainJNI.Solver_const_parameters(swigCPtr, this), false);
324 }
325
330 byte[] buf = mainJNI.Solver_defaultSolverParameters();
331 if (buf == null || buf.length == 0) {
332 return null;
333 }
334 try {
335 return com.google.ortools.constraintsolver.ConstraintSolverParameters.parseFrom(buf);
336 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
337 throw new RuntimeException(
338 "Unable to parse com.google.ortools.constraintsolver.ConstraintSolverParameters protocol message.");
339 }
340}
341
377 public void addConstraint(Constraint c) {
378 mainJNI.Solver_addConstraint(swigCPtr, this, Constraint.getCPtr(c), c);
379 }
380
386 public void addCastConstraint(CastConstraint constraint, IntVar target_var, IntExpr expr) {
387 mainJNI.Solver_addCastConstraint(swigCPtr, this, CastConstraint.getCPtr(constraint), constraint, IntVar.getCPtr(target_var), target_var, IntExpr.getCPtr(expr), expr);
388 }
389
433 public boolean solve(DecisionBuilder db, SearchMonitor[] monitors) {
434 try {
435 return mainJNI.Solver_solve__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
436 } finally {
438 }
439 }
440
441 public boolean solve(DecisionBuilder db) {
442 try {
443 return mainJNI.Solver_solve__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
444 } finally {
446 }
447 }
448
449 public boolean solve(DecisionBuilder db, SearchMonitor m1) {
450 try {
451 return mainJNI.Solver_solve__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
452 } finally {
454 }
455 }
456
458 try {
459 return mainJNI.Solver_solve__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
460 } finally {
462 }
463 }
464
466 try {
467 return mainJNI.Solver_solve__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
468 } finally {
470 }
471 }
472
474 try {
475 return mainJNI.Solver_solve__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3, SearchMonitor.getCPtr(m4), m4);
476 } finally {
478 }
479 }
480
492 public void newSearch(DecisionBuilder db, SearchMonitor[] monitors) {
493 try {
494 mainJNI.Solver_newSearch__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
495 } finally {
497 }
498 }
499
500 public void newSearch(DecisionBuilder db) {
501 try {
502 mainJNI.Solver_newSearch__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
503 } finally {
505 }
506 }
507
509 try {
510 mainJNI.Solver_newSearch__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
511 } finally {
513 }
514 }
515
517 try {
518 mainJNI.Solver_newSearch__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
519 } finally {
521 }
522 }
523
525 try {
526 mainJNI.Solver_newSearch__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
527 } finally {
529 }
530 }
531
533 try {
534 mainJNI.Solver_newSearch__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3, SearchMonitor.getCPtr(m4), m4);
535 } finally {
537 }
538 }
539
540 public boolean nextSolution() {
541 return mainJNI.Solver_nextSolution(swigCPtr, this);
542 }
543
544 public void restartSearch() {
545 mainJNI.Solver_restartSearch(swigCPtr, this);
546 }
547
548 public void endSearch() {
549 mainJNI.Solver_endSearch(swigCPtr, this);
550 }
551
563 public boolean solveAndCommit(DecisionBuilder db, SearchMonitor[] monitors) {
564 try {
565 return mainJNI.Solver_solveAndCommit__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
566 } finally {
568 }
569 }
570
571 public boolean solveAndCommit(DecisionBuilder db) {
572 try {
573 return mainJNI.Solver_solveAndCommit__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
574 } finally {
576 }
577 }
578
580 try {
581 return mainJNI.Solver_solveAndCommit__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
582 } finally {
584 }
585 }
586
588 try {
589 return mainJNI.Solver_solveAndCommit__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
590 } finally {
592 }
593 }
594
596 try {
597 return mainJNI.Solver_solveAndCommit__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
598 } finally {
600 }
601 }
602
606 public boolean checkAssignment(Assignment solution) {
607 return mainJNI.Solver_checkAssignment(swigCPtr, this, Assignment.getCPtr(solution), solution);
608 }
609
615 public boolean checkConstraint(Constraint ct) {
616 return mainJNI.Solver_checkConstraint(swigCPtr, this, Constraint.getCPtr(ct), ct);
617 }
618
622 public int state() {
623 return mainJNI.Solver_state(swigCPtr, this);
624 }
625
629 public void fail() {
630 mainJNI.Solver_fail(swigCPtr, this);
631 }
632
636 public String toString() {
637 return mainJNI.Solver_toString(swigCPtr, this);
638 }
639
643 public static long memoryUsage() {
644 return mainJNI.Solver_memoryUsage();
645 }
646
651 public long wallTime() {
652 return mainJNI.Solver_wallTime(swigCPtr, this);
653 }
654
658 public long branches() {
659 return mainJNI.Solver_branches(swigCPtr, this);
660 }
661
665 public long solutions() {
666 return mainJNI.Solver_solutions(swigCPtr, this);
667 }
668
672 public long unchecked_solutions() {
673 return mainJNI.Solver_unchecked_solutions(swigCPtr, this);
674 }
675
679 public long demon_runs(int p) {
680 return mainJNI.Solver_demon_runs(swigCPtr, this, p);
681 }
682
686 public long failures() {
687 return mainJNI.Solver_failures(swigCPtr, this);
688 }
689
693 public long neighbors() {
694 return mainJNI.Solver_neighbors(swigCPtr, this);
695 }
696
701 public void ClearNeighbors() {
702 mainJNI.Solver_ClearNeighbors(swigCPtr, this);
703 }
704
705 public void IncrementNeighbors() {
706 mainJNI.Solver_IncrementNeighbors(swigCPtr, this);
707 }
708
712 public long filteredNeighbors() {
713 return mainJNI.Solver_filteredNeighbors(swigCPtr, this);
714 }
715
719 public long acceptedNeighbors() {
720 return mainJNI.Solver_acceptedNeighbors(swigCPtr, this);
721 }
722
727 public long stamp() {
728 return mainJNI.Solver_stamp(swigCPtr, this);
729 }
730
734 public long fail_stamp() {
735 return mainJNI.Solver_fail_stamp(swigCPtr, this);
736 }
737
741 public void set_context(String context) {
742 mainJNI.Solver_set_context(swigCPtr, this, context);
743 }
744
748 public String context() {
749 return mainJNI.Solver_context(swigCPtr, this);
750 }
751
756 return mainJNI.Solver_optimization_direction(swigCPtr, this);
757 }
758
759 public void set_optimization_direction(int direction) {
760 mainJNI.Solver_set_optimization_direction(swigCPtr, this, direction);
761 }
762
766 public IntVar makeIntVar(long min, long max, String name) {
767 long cPtr = mainJNI.Solver_makeIntVar__SWIG_0(swigCPtr, this, min, max, name);
768 return (cPtr == 0) ? null : new IntVar(cPtr, false);
769 }
770
774 public IntVar makeIntVar(long[] values, String name) {
775 long cPtr = mainJNI.Solver_makeIntVar__SWIG_1(swigCPtr, this, values, name);
776 return (cPtr == 0) ? null : new IntVar(cPtr, false);
777 }
778
782 public IntVar makeIntVar(int[] values, String name) {
783 long cPtr = mainJNI.Solver_makeIntVar__SWIG_2(swigCPtr, this, values, name);
784 return (cPtr == 0) ? null : new IntVar(cPtr, false);
785 }
786
790 public IntVar makeIntVar(long min, long max) {
791 long cPtr = mainJNI.Solver_makeIntVar__SWIG_3(swigCPtr, this, min, max);
792 return (cPtr == 0) ? null : new IntVar(cPtr, false);
793 }
794
798 public IntVar makeIntVar(long[] values) {
799 long cPtr = mainJNI.Solver_makeIntVar__SWIG_4(swigCPtr, this, values);
800 return (cPtr == 0) ? null : new IntVar(cPtr, false);
801 }
802
806 public IntVar makeIntVar(int[] values) {
807 long cPtr = mainJNI.Solver_makeIntVar__SWIG_5(swigCPtr, this, values);
808 return (cPtr == 0) ? null : new IntVar(cPtr, false);
809 }
810
814 public IntVar makeBoolVar(String name) {
815 long cPtr = mainJNI.Solver_makeBoolVar__SWIG_0(swigCPtr, this, name);
816 return (cPtr == 0) ? null : new IntVar(cPtr, false);
817 }
818
823 long cPtr = mainJNI.Solver_makeBoolVar__SWIG_1(swigCPtr, this);
824 return (cPtr == 0) ? null : new IntVar(cPtr, false);
825 }
826
830 public IntVar makeIntConst(long val, String name) {
831 long cPtr = mainJNI.Solver_makeIntConst__SWIG_0(swigCPtr, this, val, name);
832 return (cPtr == 0) ? null : new IntVar(cPtr, false);
833 }
834
838 public IntVar makeIntConst(long val) {
839 long cPtr = mainJNI.Solver_makeIntConst__SWIG_1(swigCPtr, this, val);
840 return (cPtr == 0) ? null : new IntVar(cPtr, false);
841 }
842
846 public IntExpr makeSum(IntExpr left, IntExpr right) {
847 long cPtr = mainJNI.Solver_makeSum__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
848 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
849 }
850
854 public IntExpr makeSum(IntExpr expr, long value) {
855 long cPtr = mainJNI.Solver_makeSum__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
856 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
857 }
858
862 public IntExpr makeSum(IntVar[] vars) {
863 long cPtr = mainJNI.Solver_makeSum__SWIG_2(swigCPtr, this, vars);
864 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
865 }
866
870 public IntExpr makeScalProd(IntVar[] vars, long[] coefs) {
871 long cPtr = mainJNI.Solver_makeScalProd__SWIG_0(swigCPtr, this, vars, coefs);
872 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
873 }
874
878 public IntExpr makeScalProd(IntVar[] vars, int[] coefs) {
879 long cPtr = mainJNI.Solver_makeScalProd__SWIG_1(swigCPtr, this, vars, coefs);
880 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
881 }
882
886 public IntExpr makeDifference(IntExpr left, IntExpr right) {
887 long cPtr = mainJNI.Solver_makeDifference__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
888 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
889 }
890
894 public IntExpr makeDifference(long value, IntExpr expr) {
895 long cPtr = mainJNI.Solver_makeDifference__SWIG_1(swigCPtr, this, value, IntExpr.getCPtr(expr), expr);
896 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
897 }
898
903 long cPtr = mainJNI.Solver_makeOpposite(swigCPtr, this, IntExpr.getCPtr(expr), expr);
904 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
905 }
906
910 public IntExpr makeProd(IntExpr left, IntExpr right) {
911 long cPtr = mainJNI.Solver_makeProd__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
912 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
913 }
914
918 public IntExpr makeProd(IntExpr expr, long value) {
919 long cPtr = mainJNI.Solver_makeProd__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
920 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
921 }
922
926 public IntExpr makeDiv(IntExpr expr, long value) {
927 long cPtr = mainJNI.Solver_makeDiv__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
928 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
929 }
930
934 public IntExpr makeDiv(IntExpr numerator, IntExpr denominator) {
935 long cPtr = mainJNI.Solver_makeDiv__SWIG_1(swigCPtr, this, IntExpr.getCPtr(numerator), numerator, IntExpr.getCPtr(denominator), denominator);
936 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
937 }
938
942 public IntExpr makeAbs(IntExpr expr) {
943 long cPtr = mainJNI.Solver_makeAbs(swigCPtr, this, IntExpr.getCPtr(expr), expr);
944 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
945 }
946
951 long cPtr = mainJNI.Solver_makeSquare(swigCPtr, this, IntExpr.getCPtr(expr), expr);
952 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
953 }
954
958 public IntExpr makePower(IntExpr expr, long n) {
959 long cPtr = mainJNI.Solver_makePower(swigCPtr, this, IntExpr.getCPtr(expr), expr, n);
960 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
961 }
962
966 public IntExpr makeElement(long[] values, IntVar index) {
967 long cPtr = mainJNI.Solver_makeElement__SWIG_0(swigCPtr, this, values, IntVar.getCPtr(index), index);
968 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
969 }
970
974 public IntExpr makeElement(int[] values, IntVar index) {
975 long cPtr = mainJNI.Solver_makeElement__SWIG_1(swigCPtr, this, values, IntVar.getCPtr(index), index);
976 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
977 }
978
984 public IntExpr makeElement(LongUnaryOperator values, IntVar index) {
985 long cPtr = mainJNI.Solver_makeElement__SWIG_2(swigCPtr, this, values, IntVar.getCPtr(index), index);
986 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
987 }
988
997 public IntExpr makeMonotonicElement(LongUnaryOperator values, boolean increasing, IntVar index) {
998 long cPtr = mainJNI.Solver_makeMonotonicElement(swigCPtr, this, values, increasing, IntVar.getCPtr(index), index);
999 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1000 }
1001
1005 public IntExpr makeElement(LongBinaryOperator values, IntVar index1, IntVar index2) {
1006 long cPtr = mainJNI.Solver_makeElement__SWIG_3(swigCPtr, this, values, IntVar.getCPtr(index1), index1, IntVar.getCPtr(index2), index2);
1007 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1008 }
1009
1013 public IntExpr makeElement(IntVar[] vars, IntVar index) {
1014 long cPtr = mainJNI.Solver_makeElement__SWIG_4(swigCPtr, this, vars, IntVar.getCPtr(index), index);
1015 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1016 }
1017
1022 public IntExpr makeIndexExpression(IntVar[] vars, long value) {
1023 long cPtr = mainJNI.Solver_makeIndexExpression(swigCPtr, this, vars, value);
1024 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1025 }
1026
1030 public Constraint makeIfThenElseCt(IntVar condition, IntExpr then_expr, IntExpr else_expr, IntVar target_var) {
1031 long cPtr = mainJNI.Solver_makeIfThenElseCt(swigCPtr, this, IntVar.getCPtr(condition), condition, IntExpr.getCPtr(then_expr), then_expr, IntExpr.getCPtr(else_expr), else_expr, IntVar.getCPtr(target_var), target_var);
1032 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1033 }
1034
1038 public IntExpr makeMin(IntVar[] vars) {
1039 long cPtr = mainJNI.Solver_makeMin__SWIG_0(swigCPtr, this, vars);
1040 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1041 }
1042
1046 public IntExpr makeMin(IntExpr left, IntExpr right) {
1047 long cPtr = mainJNI.Solver_makeMin__SWIG_1(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1048 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1049 }
1050
1054 public IntExpr makeMin(IntExpr expr, long value) {
1055 long cPtr = mainJNI.Solver_makeMin__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1056 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1057 }
1058
1062 public IntExpr makeMin(IntExpr expr, int value) {
1063 long cPtr = mainJNI.Solver_makeMin__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1064 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1065 }
1066
1070 public IntExpr makeMax(IntVar[] vars) {
1071 long cPtr = mainJNI.Solver_makeMax__SWIG_0(swigCPtr, this, vars);
1072 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1073 }
1074
1078 public IntExpr makeMax(IntExpr left, IntExpr right) {
1079 long cPtr = mainJNI.Solver_makeMax__SWIG_1(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1080 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1081 }
1082
1086 public IntExpr makeMax(IntExpr expr, long value) {
1087 long cPtr = mainJNI.Solver_makeMax__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1088 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1089 }
1090
1094 public IntExpr makeMax(IntExpr expr, int value) {
1095 long cPtr = mainJNI.Solver_makeMax__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1096 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1097 }
1098
1102 public IntExpr makeConvexPiecewiseExpr(IntExpr expr, long early_cost, long early_date, long late_date, long late_cost) {
1103 long cPtr = mainJNI.Solver_makeConvexPiecewiseExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr, early_cost, early_date, late_date, late_cost);
1104 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1105 }
1106
1111 public IntExpr makeSemiContinuousExpr(IntExpr expr, long fixed_charge, long step) {
1112 long cPtr = mainJNI.Solver_makeSemiContinuousExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr, fixed_charge, step);
1113 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1114 }
1115
1122 public IntExpr makeModulo(IntExpr x, long mod) {
1123 long cPtr = mainJNI.Solver_makeModulo__SWIG_0(swigCPtr, this, IntExpr.getCPtr(x), x, mod);
1124 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1125 }
1126
1131 long cPtr = mainJNI.Solver_makeModulo__SWIG_1(swigCPtr, this, IntExpr.getCPtr(x), x, IntExpr.getCPtr(mod), mod);
1132 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1133 }
1134
1138 public IntExpr makeConditionalExpression(IntVar condition, IntExpr expr, long unperformed_value) {
1139 long cPtr = mainJNI.Solver_makeConditionalExpression(swigCPtr, this, IntVar.getCPtr(condition), condition, IntExpr.getCPtr(expr), expr, unperformed_value);
1140 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
1141 }
1142
1147 long cPtr = mainJNI.Solver_makeTrueConstraint(swigCPtr, this);
1148 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1149 }
1150
1155 long cPtr = mainJNI.Solver_makeFalseConstraint__SWIG_0(swigCPtr, this);
1156 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1157 }
1158
1159 public Constraint makeFalseConstraint(String explanation) {
1160 long cPtr = mainJNI.Solver_makeFalseConstraint__SWIG_1(swigCPtr, this, explanation);
1161 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1162 }
1163
1167 public Constraint makeIsEqualCstCt(IntExpr var, long value, IntVar boolvar) {
1168 long cPtr = mainJNI.Solver_makeIsEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
1169 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1170 }
1171
1175 public IntVar makeIsEqualCstVar(IntExpr var, long value) {
1176 long cPtr = mainJNI.Solver_makeIsEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1177 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1178 }
1179
1184 long cPtr = mainJNI.Solver_makeIsEqualVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2, IntVar.getCPtr(b), b);
1185 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1186 }
1187
1192 long cPtr = mainJNI.Solver_makeIsEqualVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2);
1193 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1194 }
1195
1200 long cPtr = mainJNI.Solver_makeEquality__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1201 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1202 }
1203
1207 public Constraint makeEquality(IntExpr expr, long value) {
1208 long cPtr = mainJNI.Solver_makeEquality__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1209 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1210 }
1211
1215 public Constraint makeEquality(IntExpr expr, int value) {
1216 long cPtr = mainJNI.Solver_makeEquality__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1217 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1218 }
1219
1223 public Constraint makeIsDifferentCstCt(IntExpr var, long value, IntVar boolvar) {
1224 long cPtr = mainJNI.Solver_makeIsDifferentCstCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
1225 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1226 }
1227
1231 public IntVar makeIsDifferentCstVar(IntExpr var, long value) {
1232 long cPtr = mainJNI.Solver_makeIsDifferentCstVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1233 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1234 }
1235
1240 long cPtr = mainJNI.Solver_makeIsDifferentCstVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2);
1241 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1242 }
1243
1248 long cPtr = mainJNI.Solver_makeIsDifferentCstCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2, IntVar.getCPtr(b), b);
1249 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1250 }
1251
1256 long cPtr = mainJNI.Solver_makeNonEquality__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1257 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1258 }
1259
1263 public Constraint makeNonEquality(IntExpr expr, long value) {
1264 long cPtr = mainJNI.Solver_makeNonEquality__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1265 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1266 }
1267
1271 public Constraint makeNonEquality(IntExpr expr, int value) {
1272 long cPtr = mainJNI.Solver_makeNonEquality__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1273 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1274 }
1275
1279 public Constraint makeIsLessOrEqualCstCt(IntExpr var, long value, IntVar boolvar) {
1280 long cPtr = mainJNI.Solver_makeIsLessOrEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
1281 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1282 }
1283
1287 public IntVar makeIsLessOrEqualCstVar(IntExpr var, long value) {
1288 long cPtr = mainJNI.Solver_makeIsLessOrEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1289 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1290 }
1291
1296 long cPtr = mainJNI.Solver_makeIsLessOrEqualVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1297 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1298 }
1299
1304 long cPtr = mainJNI.Solver_makeIsLessOrEqualCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
1305 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1306 }
1307
1312 long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1313 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1314 }
1315
1319 public Constraint makeLessOrEqual(IntExpr expr, long value) {
1320 long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1321 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1322 }
1323
1327 public Constraint makeLessOrEqual(IntExpr expr, int value) {
1328 long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1329 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1330 }
1331
1335 public Constraint makeIsGreaterOrEqualCstCt(IntExpr var, long value, IntVar boolvar) {
1336 long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
1337 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1338 }
1339
1344 long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1345 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1346 }
1347
1352 long cPtr = mainJNI.Solver_makeIsGreaterOrEqualVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1353 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1354 }
1355
1360 long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
1361 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1362 }
1363
1368 long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1369 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1370 }
1371
1375 public Constraint makeGreaterOrEqual(IntExpr expr, long value) {
1376 long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1377 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1378 }
1379
1383 public Constraint makeGreaterOrEqual(IntExpr expr, int value) {
1384 long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1385 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1386 }
1387
1392 long cPtr = mainJNI.Solver_makeIsGreaterCstCt(swigCPtr, this, IntExpr.getCPtr(v), v, c, IntVar.getCPtr(b), b);
1393 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1394 }
1395
1399 public IntVar makeIsGreaterCstVar(IntExpr var, long value) {
1400 long cPtr = mainJNI.Solver_makeIsGreaterCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1401 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1402 }
1403
1408 long cPtr = mainJNI.Solver_makeIsGreaterVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1409 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1410 }
1411
1416 long cPtr = mainJNI.Solver_makeIsGreaterCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
1417 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1418 }
1419
1424 long cPtr = mainJNI.Solver_makeGreater__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1425 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1426 }
1427
1431 public Constraint makeGreater(IntExpr expr, long value) {
1432 long cPtr = mainJNI.Solver_makeGreater__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1433 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1434 }
1435
1439 public Constraint makeGreater(IntExpr expr, int value) {
1440 long cPtr = mainJNI.Solver_makeGreater__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1441 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1442 }
1443
1448 long cPtr = mainJNI.Solver_makeIsLessCstCt(swigCPtr, this, IntExpr.getCPtr(v), v, c, IntVar.getCPtr(b), b);
1449 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1450 }
1451
1455 public IntVar makeIsLessCstVar(IntExpr var, long value) {
1456 long cPtr = mainJNI.Solver_makeIsLessCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
1457 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1458 }
1459
1463 public IntVar makeIsLessVar(IntExpr left, IntExpr right) {
1464 long cPtr = mainJNI.Solver_makeIsLessVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1465 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1466 }
1467
1472 long cPtr = mainJNI.Solver_makeIsLessCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
1473 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1474 }
1475
1479 public Constraint makeLess(IntExpr left, IntExpr right) {
1480 long cPtr = mainJNI.Solver_makeLess__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
1481 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1482 }
1483
1487 public Constraint makeLess(IntExpr expr, long value) {
1488 long cPtr = mainJNI.Solver_makeLess__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1489 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1490 }
1491
1495 public Constraint makeLess(IntExpr expr, int value) {
1496 long cPtr = mainJNI.Solver_makeLess__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
1497 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1498 }
1499
1503 public Constraint makeSumLessOrEqual(IntVar[] vars, long cst) {
1504 long cPtr = mainJNI.Solver_makeSumLessOrEqual(swigCPtr, this, vars, cst);
1505 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1506 }
1507
1508 public Constraint makeSumGreaterOrEqual(IntVar[] vars, long cst) {
1509 long cPtr = mainJNI.Solver_makeSumGreaterOrEqual(swigCPtr, this, vars, cst);
1510 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1511 }
1512
1513 public Constraint makeSumEquality(IntVar[] vars, long cst) {
1514 long cPtr = mainJNI.Solver_makeSumEquality__SWIG_0(swigCPtr, this, vars, cst);
1515 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1516 }
1517
1519 long cPtr = mainJNI.Solver_makeSumEquality__SWIG_1(swigCPtr, this, vars, IntVar.getCPtr(var), var);
1520 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1521 }
1522
1523 public Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, long cst) {
1524 long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_0(swigCPtr, this, vars, coefficients, cst);
1525 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1526 }
1527
1528 public Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, long cst) {
1529 long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_1(swigCPtr, this, vars, coefficients, cst);
1530 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1531 }
1532
1533 public Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, IntVar target) {
1534 long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_2(swigCPtr, this, vars, coefficients, IntVar.getCPtr(target), target);
1535 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1536 }
1537
1538 public Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, IntVar target) {
1539 long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_3(swigCPtr, this, vars, coefficients, IntVar.getCPtr(target), target);
1540 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1541 }
1542
1543 public Constraint makeScalProdGreaterOrEqual(IntVar[] vars, long[] coeffs, long cst) {
1544 long cPtr = mainJNI.Solver_makeScalProdGreaterOrEqual__SWIG_0(swigCPtr, this, vars, coeffs, cst);
1545 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1546 }
1547
1548 public Constraint makeScalProdGreaterOrEqual(IntVar[] vars, int[] coeffs, long cst) {
1549 long cPtr = mainJNI.Solver_makeScalProdGreaterOrEqual__SWIG_1(swigCPtr, this, vars, coeffs, cst);
1550 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1551 }
1552
1553 public Constraint makeScalProdLessOrEqual(IntVar[] vars, long[] coefficients, long cst) {
1554 long cPtr = mainJNI.Solver_makeScalProdLessOrEqual__SWIG_0(swigCPtr, this, vars, coefficients, cst);
1555 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1556 }
1557
1558 public Constraint makeScalProdLessOrEqual(IntVar[] vars, int[] coefficients, long cst) {
1559 long cPtr = mainJNI.Solver_makeScalProdLessOrEqual__SWIG_1(swigCPtr, this, vars, coefficients, cst);
1560 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1561 }
1562
1563 public Constraint makeMinEquality(IntVar[] vars, IntVar min_var) {
1564 long cPtr = mainJNI.Solver_makeMinEquality(swigCPtr, this, vars, IntVar.getCPtr(min_var), min_var);
1565 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1566 }
1567
1568 public Constraint makeMaxEquality(IntVar[] vars, IntVar max_var) {
1569 long cPtr = mainJNI.Solver_makeMaxEquality(swigCPtr, this, vars, IntVar.getCPtr(max_var), max_var);
1570 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1571 }
1572
1573 public Constraint makeElementEquality(long[] vals, IntVar index, IntVar target) {
1574 long cPtr = mainJNI.Solver_makeElementEquality__SWIG_0(swigCPtr, this, vals, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
1575 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1576 }
1577
1578 public Constraint makeElementEquality(int[] vals, IntVar index, IntVar target) {
1579 long cPtr = mainJNI.Solver_makeElementEquality__SWIG_1(swigCPtr, this, vals, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
1580 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1581 }
1582
1583 public Constraint makeElementEquality(IntVar[] vars, IntVar index, IntVar target) {
1584 long cPtr = mainJNI.Solver_makeElementEquality__SWIG_2(swigCPtr, this, vars, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
1585 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1586 }
1587
1588 public Constraint makeElementEquality(IntVar[] vars, IntVar index, long target) {
1589 long cPtr = mainJNI.Solver_makeElementEquality__SWIG_3(swigCPtr, this, vars, IntVar.getCPtr(index), index, target);
1590 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1591 }
1592
1597 long cPtr = mainJNI.Solver_makeAbsEquality(swigCPtr, this, IntVar.getCPtr(var), var, IntVar.getCPtr(abs_var), abs_var);
1598 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1599 }
1600
1607 public Constraint makeIndexOfConstraint(IntVar[] vars, IntVar index, long target) {
1608 long cPtr = mainJNI.Solver_makeIndexOfConstraint(swigCPtr, this, vars, IntVar.getCPtr(index), index, target);
1609 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1610 }
1611
1617 long cPtr = mainJNI.Solver_makeConstraintInitialPropagateCallback(swigCPtr, this, Constraint.getCPtr(ct), ct);
1618 return (cPtr == 0) ? null : new Demon(cPtr, false);
1619 }
1620
1627 long cPtr = mainJNI.Solver_makeDelayedConstraintInitialPropagateCallback(swigCPtr, this, Constraint.getCPtr(ct), ct);
1628 return (cPtr == 0) ? null : new Demon(cPtr, false);
1629 }
1630
1634 public Demon makeClosureDemon(Runnable closure) {
1635 long cPtr = mainJNI.Solver_makeClosureDemon(swigCPtr, this, closure);
1636 return (cPtr == 0) ? null : new Demon(cPtr, false);
1637 }
1638
1642 public Constraint makeBetweenCt(IntExpr expr, long l, long u) {
1643 long cPtr = mainJNI.Solver_makeBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u);
1644 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1645 }
1646
1653 public Constraint makeNotBetweenCt(IntExpr expr, long l, long u) {
1654 long cPtr = mainJNI.Solver_makeNotBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u);
1655 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1656 }
1657
1661 public Constraint makeIsBetweenCt(IntExpr expr, long l, long u, IntVar b) {
1662 long cPtr = mainJNI.Solver_makeIsBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u, IntVar.getCPtr(b), b);
1663 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1664 }
1665
1666 public IntVar makeIsBetweenVar(IntExpr v, long l, long u) {
1667 long cPtr = mainJNI.Solver_makeIsBetweenVar(swigCPtr, this, IntExpr.getCPtr(v), v, l, u);
1668 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1669 }
1670
1675 public Constraint makeMemberCt(IntExpr expr, long[] values) {
1676 long cPtr = mainJNI.Solver_makeMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1677 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1678 }
1679
1680 public Constraint makeMemberCt(IntExpr expr, int[] values) {
1681 long cPtr = mainJNI.Solver_makeMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1682 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1683 }
1684
1688 public Constraint makeNotMemberCt(IntExpr expr, long[] values) {
1689 long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1690 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1691 }
1692
1693 public Constraint makeNotMemberCt(IntExpr expr, int[] values) {
1694 long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1695 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1696 }
1697
1701 public Constraint makeNotMemberCt(IntExpr expr, long[] starts, long[] ends) {
1702 long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, starts, ends);
1703 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1704 }
1705
1709 public Constraint makeNotMemberCt(IntExpr expr, int[] starts, int[] ends) {
1710 long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, starts, ends);
1711 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1712 }
1713
1717 public Constraint makeIsMemberCt(IntExpr expr, long[] values, IntVar boolvar) {
1718 long cPtr = mainJNI.Solver_makeIsMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values, IntVar.getCPtr(boolvar), boolvar);
1719 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1720 }
1721
1722 public Constraint makeIsMemberCt(IntExpr expr, int[] values, IntVar boolvar) {
1723 long cPtr = mainJNI.Solver_makeIsMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values, IntVar.getCPtr(boolvar), boolvar);
1724 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1725 }
1726
1727 public IntVar makeIsMemberVar(IntExpr expr, long[] values) {
1728 long cPtr = mainJNI.Solver_makeIsMemberVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1729 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1730 }
1731
1732 public IntVar makeIsMemberVar(IntExpr expr, int[] values) {
1733 long cPtr = mainJNI.Solver_makeIsMemberVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1734 return (cPtr == 0) ? null : new IntVar(cPtr, false);
1735 }
1736
1740 public Constraint makeCount(IntVar[] vars, long value, long max_count) {
1741 long cPtr = mainJNI.Solver_makeCount__SWIG_0(swigCPtr, this, vars, value, max_count);
1742 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1743 }
1744
1748 public Constraint makeCount(IntVar[] vars, long value, IntVar max_count) {
1749 long cPtr = mainJNI.Solver_makeCount__SWIG_1(swigCPtr, this, vars, value, IntVar.getCPtr(max_count), max_count);
1750 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1751 }
1752
1756 public Constraint makeDistribute(IntVar[] vars, long[] values, IntVar[] cards) {
1757 long cPtr = mainJNI.Solver_makeDistribute__SWIG_0(swigCPtr, this, vars, values, cards);
1758 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1759 }
1760
1764 public Constraint makeDistribute(IntVar[] vars, int[] values, IntVar[] cards) {
1765 long cPtr = mainJNI.Solver_makeDistribute__SWIG_1(swigCPtr, this, vars, values, cards);
1766 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1767 }
1768
1772 public Constraint makeDistribute(IntVar[] vars, IntVar[] cards) {
1773 long cPtr = mainJNI.Solver_makeDistribute__SWIG_2(swigCPtr, this, vars, cards);
1774 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1775 }
1776
1781 public Constraint makeDistribute(IntVar[] vars, long card_min, long card_max, long card_size) {
1782 long cPtr = mainJNI.Solver_makeDistribute__SWIG_3(swigCPtr, this, vars, card_min, card_max, card_size);
1783 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1784 }
1785
1791 public Constraint makeDistribute(IntVar[] vars, long[] card_min, long[] card_max) {
1792 long cPtr = mainJNI.Solver_makeDistribute__SWIG_4(swigCPtr, this, vars, card_min, card_max);
1793 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1794 }
1795
1801 public Constraint makeDistribute(IntVar[] vars, int[] card_min, int[] card_max) {
1802 long cPtr = mainJNI.Solver_makeDistribute__SWIG_5(swigCPtr, this, vars, card_min, card_max);
1803 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1804 }
1805
1811 public Constraint makeDistribute(IntVar[] vars, long[] values, long[] card_min, long[] card_max) {
1812 long cPtr = mainJNI.Solver_makeDistribute__SWIG_6(swigCPtr, this, vars, values, card_min, card_max);
1813 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1814 }
1815
1821 public Constraint makeDistribute(IntVar[] vars, int[] values, int[] card_min, int[] card_max) {
1822 long cPtr = mainJNI.Solver_makeDistribute__SWIG_7(swigCPtr, this, vars, values, card_min, card_max);
1823 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1824 }
1825
1832 public Constraint makeDeviation(IntVar[] vars, IntVar deviation_var, long total_sum) {
1833 long cPtr = mainJNI.Solver_makeDeviation(swigCPtr, this, vars, IntVar.getCPtr(deviation_var), deviation_var, total_sum);
1834 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1835 }
1836
1842 long cPtr = mainJNI.Solver_makeAllDifferent__SWIG_0(swigCPtr, this, vars);
1843 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1844 }
1845
1851 public Constraint makeAllDifferent(IntVar[] vars, boolean stronger_propagation) {
1852 long cPtr = mainJNI.Solver_makeAllDifferent__SWIG_1(swigCPtr, this, vars, stronger_propagation);
1853 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1854 }
1855
1860 public Constraint makeAllDifferentExcept(IntVar[] vars, long escape_value) {
1861 long cPtr = mainJNI.Solver_makeAllDifferentExcept(swigCPtr, this, vars, escape_value);
1862 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1863 }
1864
1883 long cPtr = mainJNI.Solver_makeSortingConstraint(swigCPtr, this, vars, sorted);
1884 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1885 }
1886
1891 public Constraint makeLexicalLess(IntVar[] left, IntVar[] right) {
1892 long cPtr = mainJNI.Solver_makeLexicalLess(swigCPtr, this, left, right);
1893 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1894 }
1895
1901 long cPtr = mainJNI.Solver_makeLexicalLessOrEqual(swigCPtr, this, left, right);
1902 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1903 }
1904
1911 public Constraint MakeLexicalLessOrEqualWithOffsets(IntVar[] left, IntVar[] right, long[] offsets) {
1912 long cPtr = mainJNI.Solver_MakeLexicalLessOrEqualWithOffsets(swigCPtr, this, left, right, offsets);
1913 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1914 }
1915
1916 public Constraint MakeIsLexicalLessOrEqualWithOffsetsCt(IntVar[] left, IntVar[] right, long[] offsets, IntVar boolvar) {
1917 long cPtr = mainJNI.Solver_MakeIsLexicalLessOrEqualWithOffsetsCt(swigCPtr, this, left, right, offsets, IntVar.getCPtr(boolvar), boolvar);
1918 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1919 }
1920
1928 long cPtr = mainJNI.Solver_makeInversePermutationConstraint(swigCPtr, this, left, right);
1929 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1930 }
1931
1937 long cPtr = mainJNI.Solver_makeIndexOfFirstMaxValueConstraint(swigCPtr, this, IntVar.getCPtr(index), index, vars);
1938 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1939 }
1940
1946 long cPtr = mainJNI.Solver_makeIndexOfFirstMinValueConstraint(swigCPtr, this, IntVar.getCPtr(index), index, vars);
1947 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1948 }
1949
1956 public Constraint makeNullIntersect(IntVar[] first_vars, IntVar[] second_vars) {
1957 long cPtr = mainJNI.Solver_makeNullIntersect(swigCPtr, this, first_vars, second_vars);
1958 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1959 }
1960
1968 public Constraint makeNullIntersectExcept(IntVar[] first_vars, IntVar[] second_vars, long escape_value) {
1969 long cPtr = mainJNI.Solver_makeNullIntersectExcept(swigCPtr, this, first_vars, second_vars, escape_value);
1970 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1971 }
1972
1984 public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler) {
1985 long cPtr = mainJNI.Solver_makeNoCycle__SWIG_0(swigCPtr, this, nexts, active, sink_handler);
1986 return (cPtr == 0) ? null : new Constraint(cPtr, false);
1987 }
1988
2000 public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active) {
2001 long cPtr = mainJNI.Solver_makeNoCycle__SWIG_1(swigCPtr, this, nexts, active);
2002 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2003 }
2004
2005 public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler, boolean assume_paths) {
2006 long cPtr = mainJNI.Solver_makeNoCycle__SWIG_2(swigCPtr, this, nexts, active, sink_handler, assume_paths);
2007 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2008 }
2009
2014 long cPtr = mainJNI.Solver_makeCircuit(swigCPtr, this, nexts);
2015 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2016 }
2017
2023 long cPtr = mainJNI.Solver_makeSubCircuit(swigCPtr, this, nexts);
2024 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2025 }
2026
2033 public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits) {
2034 long cPtr = mainJNI.Solver_makePathCumul__SWIG_0(swigCPtr, this, nexts, active, cumuls, transits);
2035 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2036 }
2037
2042 public Constraint makeDelayedPathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits) {
2043 long cPtr = mainJNI.Solver_makeDelayedPathCumul(swigCPtr, this, nexts, active, cumuls, transits);
2044 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2045 }
2046
2055 public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, LongBinaryOperator transit_evaluator) {
2056 long cPtr = mainJNI.Solver_makePathCumul__SWIG_1(swigCPtr, this, nexts, active, cumuls, transit_evaluator);
2057 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2058 }
2059
2068 public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] slacks, LongBinaryOperator transit_evaluator) {
2069 long cPtr = mainJNI.Solver_makePathCumul__SWIG_2(swigCPtr, this, nexts, active, cumuls, slacks, transit_evaluator);
2070 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2071 }
2072
2078 public Constraint makePathConnected(IntVar[] nexts, long[] sources, long[] sinks, IntVar[] status) {
2079 long cPtr = mainJNI.Solver_makePathConnected(swigCPtr, this, nexts, sources, sinks, status);
2080 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2081 }
2082
2088 public Constraint makeMapDomain(IntVar var, IntVar[] actives) {
2089 long cPtr = mainJNI.Solver_makeMapDomain(swigCPtr, this, IntVar.getCPtr(var), var, actives);
2090 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2091 }
2092
2100 long cPtr = mainJNI.Solver_makeAllowedAssignment(swigCPtr, this, vars, IntTupleSet.getCPtr(tuples), tuples);
2101 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2102 }
2103
2113 public Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, long[] final_states) {
2114 long cPtr = mainJNI.Solver_makeTransitionConstraint__SWIG_0(swigCPtr, this, vars, IntTupleSet.getCPtr(transition_table), transition_table, initial_state, final_states);
2115 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2116 }
2117
2127 public Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, int[] final_states) {
2128 long cPtr = mainJNI.Solver_makeTransitionConstraint__SWIG_1(swigCPtr, this, vars, IntTupleSet.getCPtr(transition_table), transition_table, initial_state, final_states);
2129 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2130 }
2131
2142 public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size) {
2143 long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_0(swigCPtr, this, x_vars, y_vars, x_size, y_size);
2144 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2145 }
2146
2147 public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_long_const_t x_size, SWIGTYPE_p_absl__SpanT_long_const_t y_size) {
2148 long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_1(swigCPtr, this, x_vars, y_vars, SWIGTYPE_p_absl__SpanT_long_const_t.getCPtr(x_size), SWIGTYPE_p_absl__SpanT_long_const_t.getCPtr(y_size));
2149 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2150 }
2151
2152 public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_int_const_t x_size, SWIGTYPE_p_absl__SpanT_int_const_t y_size) {
2153 long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_2(swigCPtr, this, x_vars, y_vars, SWIGTYPE_p_absl__SpanT_int_const_t.getCPtr(x_size), SWIGTYPE_p_absl__SpanT_int_const_t.getCPtr(y_size));
2154 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2155 }
2156
2167 public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size) {
2168 long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_0(swigCPtr, this, x_vars, y_vars, x_size, y_size);
2169 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2170 }
2171
2172 public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_long_const_t x_size, SWIGTYPE_p_absl__SpanT_long_const_t y_size) {
2173 long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_1(swigCPtr, this, x_vars, y_vars, SWIGTYPE_p_absl__SpanT_long_const_t.getCPtr(x_size), SWIGTYPE_p_absl__SpanT_long_const_t.getCPtr(y_size));
2174 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2175 }
2176
2177 public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_int_const_t x_size, SWIGTYPE_p_absl__SpanT_int_const_t y_size) {
2178 long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_2(swigCPtr, this, x_vars, y_vars, SWIGTYPE_p_absl__SpanT_int_const_t.getCPtr(x_size), SWIGTYPE_p_absl__SpanT_int_const_t.getCPtr(y_size));
2179 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2180 }
2181
2189 public Pack makePack(IntVar[] vars, int number_of_bins) {
2190 long cPtr = mainJNI.Solver_makePack(swigCPtr, this, vars, number_of_bins);
2191 return (cPtr == 0) ? null : new Pack(cPtr, false);
2192 }
2193
2200 public IntervalVar makeFixedDurationIntervalVar(long start_min, long start_max, long duration, boolean optional, String name) {
2201 long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_0(swigCPtr, this, start_min, start_max, duration, optional, name);
2202 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2203 }
2204
2209 public IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, String name) {
2210 long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_1(swigCPtr, this, IntVar.getCPtr(start_variable), start_variable, duration, name);
2211 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2212 }
2213
2218 public IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, IntVar performed_variable, String name) {
2219 long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_2(swigCPtr, this, IntVar.getCPtr(start_variable), start_variable, duration, IntVar.getCPtr(performed_variable), performed_variable, name);
2220 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2221 }
2222
2226 public IntervalVar makeFixedInterval(long start, long duration, String name) {
2227 long cPtr = mainJNI.Solver_makeFixedInterval(swigCPtr, this, start, duration, name);
2228 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2229 }
2230
2235 public IntervalVar makeIntervalVar(long start_min, long start_max, long duration_min, long duration_max, long end_min, long end_max, boolean optional, String name) {
2236 long cPtr = mainJNI.Solver_makeIntervalVar(swigCPtr, this, start_min, start_max, duration_min, duration_max, end_min, end_max, optional, name);
2237 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2238 }
2239
2245 long cPtr = mainJNI.Solver_makeMirrorInterval(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
2246 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2247 }
2248
2255 public IntervalVar makeFixedDurationStartSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset) {
2256 long cPtr = mainJNI.Solver_makeFixedDurationStartSyncedOnStartIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
2257 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2258 }
2259
2266 public IntervalVar makeFixedDurationStartSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset) {
2267 long cPtr = mainJNI.Solver_makeFixedDurationStartSyncedOnEndIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
2268 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2269 }
2270
2277 public IntervalVar makeFixedDurationEndSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset) {
2278 long cPtr = mainJNI.Solver_makeFixedDurationEndSyncedOnStartIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
2279 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2280 }
2281
2288 public IntervalVar makeFixedDurationEndSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset) {
2289 long cPtr = mainJNI.Solver_makeFixedDurationEndSyncedOnEndIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
2290 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2291 }
2292
2313 long cPtr = mainJNI.Solver_makeIntervalRelaxedMin(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
2314 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2315 }
2316
2337 long cPtr = mainJNI.Solver_makeIntervalRelaxedMax(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
2338 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2339 }
2340
2346 long cPtr = mainJNI.Solver_makeIntervalVarRelation__SWIG_0(swigCPtr, this, IntervalVar.getCPtr(t), t, r, d);
2347 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2348 }
2349
2354 long cPtr = mainJNI.Solver_makeIntervalVarRelation__SWIG_1(swigCPtr, this, IntervalVar.getCPtr(t1), t1, r, IntervalVar.getCPtr(t2), t2);
2355 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2356 }
2357
2365 long cPtr = mainJNI.Solver_makeIntervalVarRelationWithDelay(swigCPtr, this, IntervalVar.getCPtr(t1), t1, r, IntervalVar.getCPtr(t2), t2, delay);
2366 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2367 }
2368
2375 long cPtr = mainJNI.Solver_makeTemporalDisjunction__SWIG_0(swigCPtr, this, IntervalVar.getCPtr(t1), t1, IntervalVar.getCPtr(t2), t2, IntVar.getCPtr(alt), alt);
2376 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2377 }
2378
2384 long cPtr = mainJNI.Solver_makeTemporalDisjunction__SWIG_1(swigCPtr, this, IntervalVar.getCPtr(t1), t1, IntervalVar.getCPtr(t2), t2);
2385 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2386 }
2387
2393 long cPtr = mainJNI.Solver_makeDisjunctiveConstraint(swigCPtr, this, intervals, name);
2394 return (cPtr == 0) ? null : new DisjunctiveConstraint(cPtr, false);
2395 }
2396
2403 long cPtr = mainJNI.Solver_makeStrictDisjunctiveConstraint(swigCPtr, this, intervals, name);
2404 return (cPtr == 0) ? null : new DisjunctiveConstraint(cPtr, false);
2405 }
2406
2418 public Constraint makeCumulative(IntervalVar[] intervals, long[] demands, long capacity, String name) {
2419 long cPtr = mainJNI.Solver_makeCumulative__SWIG_0(swigCPtr, this, intervals, demands, capacity, name);
2420 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2421 }
2422
2434 public Constraint makeCumulative(IntervalVar[] intervals, int[] demands, long capacity, String name) {
2435 long cPtr = mainJNI.Solver_makeCumulative__SWIG_1(swigCPtr, this, intervals, demands, capacity, name);
2436 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2437 }
2438
2450 public Constraint makeCumulative(IntervalVar[] intervals, long[] demands, IntVar capacity, String name) {
2451 long cPtr = mainJNI.Solver_makeCumulative__SWIG_2(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
2452 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2453 }
2454
2466 public Constraint makeCumulative(IntervalVar[] intervals, int[] demands, IntVar capacity, String name) {
2467 long cPtr = mainJNI.Solver_makeCumulative__SWIG_3(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
2468 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2469 }
2470
2480 public Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, long capacity, String name) {
2481 long cPtr = mainJNI.Solver_makeCumulative__SWIG_4(swigCPtr, this, intervals, demands, capacity, name);
2482 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2483 }
2484
2494 public Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, IntVar capacity, String name) {
2495 long cPtr = mainJNI.Solver_makeCumulative__SWIG_5(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
2496 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2497 }
2498
2506 public Constraint makeCover(IntervalVar[] vars, IntervalVar target_var) {
2507 long cPtr = mainJNI.Solver_makeCover(swigCPtr, this, vars, IntervalVar.getCPtr(target_var), target_var);
2508 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2509 }
2510
2515 long cPtr = mainJNI.Solver_makeEquality__SWIG_3(swigCPtr, this, IntervalVar.getCPtr(var1), var1, IntervalVar.getCPtr(var2), var2);
2516 return (cPtr == 0) ? null : new Constraint(cPtr, false);
2517 }
2518
2523 long cPtr = mainJNI.Solver_makeAssignment__SWIG_0(swigCPtr, this);
2524 return (cPtr == 0) ? null : new Assignment(cPtr, false);
2525 }
2526
2531 long cPtr = mainJNI.Solver_makeAssignment__SWIG_1(swigCPtr, this, Assignment.getCPtr(a), a);
2532 return (cPtr == 0) ? null : new Assignment(cPtr, false);
2533 }
2534
2539 long cPtr = mainJNI.Solver_makeFirstSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
2540 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2541 }
2542
2548 long cPtr = mainJNI.Solver_makeFirstSolutionCollector__SWIG_1(swigCPtr, this);
2549 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2550 }
2551
2556 long cPtr = mainJNI.Solver_makeLastSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
2557 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2558 }
2559
2565 long cPtr = mainJNI.Solver_makeLastSolutionCollector__SWIG_1(swigCPtr, this);
2566 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2567 }
2568
2575 public SolutionCollector makeBestValueSolutionCollector(Assignment assignment, boolean maximize) {
2576 long cPtr = mainJNI.Solver_makeBestValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, maximize);
2577 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2578 }
2579
2584 public SolutionCollector MakeBestLexicographicValueSolutionCollector(Assignment assignment, SWIGTYPE_p_std__vectorT_bool_t maximize) {
2585 long cPtr = mainJNI.Solver_MakeBestLexicographicValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize));
2586 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2587 }
2588
2597 long cPtr = mainJNI.Solver_makeBestValueSolutionCollector__SWIG_1(swigCPtr, this, maximize);
2598 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2599 }
2600
2605 public SolutionCollector MakeBestLexicographicValueSolutionCollector(SWIGTYPE_p_std__vectorT_bool_t maximize) {
2606 long cPtr = mainJNI.Solver_MakeBestLexicographicValueSolutionCollector__SWIG_1(swigCPtr, this, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize));
2607 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2608 }
2609
2615 public SolutionCollector makeNBestValueSolutionCollector(Assignment assignment, int solution_count, boolean maximize) {
2616 long cPtr = mainJNI.Solver_makeNBestValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, solution_count, maximize);
2617 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2618 }
2619
2620 public SolutionCollector makeNBestValueSolutionCollector(int solution_count, boolean maximize) {
2621 long cPtr = mainJNI.Solver_makeNBestValueSolutionCollector__SWIG_1(swigCPtr, this, solution_count, maximize);
2622 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2623 }
2624
2629 public SolutionCollector MakeNBestLexicographicValueSolutionCollector(Assignment assignment, int solution_count, SWIGTYPE_p_std__vectorT_bool_t maximize) {
2630 long cPtr = mainJNI.Solver_MakeNBestLexicographicValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, solution_count, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize));
2631 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2632 }
2633
2634 public SolutionCollector MakeNBestLexicographicValueSolutionCollector(int solution_count, SWIGTYPE_p_std__vectorT_bool_t maximize) {
2635 long cPtr = mainJNI.Solver_MakeNBestLexicographicValueSolutionCollector__SWIG_1(swigCPtr, this, solution_count, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize));
2636 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2637 }
2638
2643 long cPtr = mainJNI.Solver_makeAllSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
2644 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2645 }
2646
2652 long cPtr = mainJNI.Solver_makeAllSolutionCollector__SWIG_1(swigCPtr, this);
2653 return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
2654 }
2655
2659 public OptimizeVar makeMinimize(IntVar v, long step) {
2660 long cPtr = mainJNI.Solver_makeMinimize(swigCPtr, this, IntVar.getCPtr(v), v, step);
2661 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2662 }
2663
2667 public OptimizeVar makeMaximize(IntVar v, long step) {
2668 long cPtr = mainJNI.Solver_makeMaximize(swigCPtr, this, IntVar.getCPtr(v), v, step);
2669 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2670 }
2671
2675 public OptimizeVar makeOptimize(boolean maximize, IntVar v, long step) {
2676 long cPtr = mainJNI.Solver_makeOptimize(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step);
2677 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2678 }
2679
2684 public OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, long[] weights, long step) {
2685 long cPtr = mainJNI.Solver_makeWeightedMinimize__SWIG_0(swigCPtr, this, sub_objectives, weights, step);
2686 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2687 }
2688
2693 public OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, int[] weights, long step) {
2694 long cPtr = mainJNI.Solver_makeWeightedMinimize__SWIG_1(swigCPtr, this, sub_objectives, weights, step);
2695 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2696 }
2697
2701 public OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, long[] weights, long step) {
2702 long cPtr = mainJNI.Solver_makeWeightedMaximize__SWIG_0(swigCPtr, this, sub_objectives, weights, step);
2703 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2704 }
2705
2709 public OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, int[] weights, long step) {
2710 long cPtr = mainJNI.Solver_makeWeightedMaximize__SWIG_1(swigCPtr, this, sub_objectives, weights, step);
2711 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2712 }
2713
2717 public OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, long[] weights, long step) {
2718 long cPtr = mainJNI.Solver_makeWeightedOptimize__SWIG_0(swigCPtr, this, maximize, sub_objectives, weights, step);
2719 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2720 }
2721
2725 public OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, int[] weights, long step) {
2726 long cPtr = mainJNI.Solver_makeWeightedOptimize__SWIG_1(swigCPtr, this, maximize, sub_objectives, weights, step);
2727 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2728 }
2729
2734 public OptimizeVar MakeLexicographicOptimize(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] variables, long[] steps) {
2735 long cPtr = mainJNI.Solver_MakeLexicographicOptimize(swigCPtr, this, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize), variables, steps);
2736 return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
2737 }
2738
2757 public ObjectiveMonitor makeTabuSearch(boolean maximize, IntVar objective, long step, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor) {
2758 long cPtr = mainJNI.Solver_makeTabuSearch(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, step, vars, keep_tenure, forbid_tenure, tabu_factor);
2759 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2760 }
2761
2762 public ObjectiveMonitor MakeLexicographicTabuSearch(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] objectives, long[] steps, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor) {
2763 long cPtr = mainJNI.Solver_MakeLexicographicTabuSearch(swigCPtr, this, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize), objectives, steps, vars, keep_tenure, forbid_tenure, tabu_factor);
2764 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2765 }
2766
2771 public ObjectiveMonitor makeGenericTabuSearch(boolean maximize, IntVar v, long step, IntVar[] tabu_vars, long forbid_tenure) {
2772 long cPtr = mainJNI.Solver_makeGenericTabuSearch(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step, tabu_vars, forbid_tenure);
2773 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2774 }
2775
2779 public ObjectiveMonitor makeSimulatedAnnealing(boolean maximize, IntVar v, long step, long initial_temperature) {
2780 long cPtr = mainJNI.Solver_makeSimulatedAnnealing(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step, initial_temperature);
2781 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2782 }
2783
2784 public ObjectiveMonitor MakeLexicographicSimulatedAnnealing(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] vars, long[] steps, long[] initial_temperatures) {
2785 long cPtr = mainJNI.Solver_MakeLexicographicSimulatedAnnealing(swigCPtr, this, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize), vars, steps, initial_temperatures);
2786 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2787 }
2788
2793 public ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor, boolean reset_penalties_on_new_best_solution) {
2794 long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_0(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, penalty_factor, reset_penalties_on_new_best_solution);
2795 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2796 }
2797
2802 public ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor) {
2803 long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_1(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, penalty_factor);
2804 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2805 }
2806
2807 public ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor, boolean reset_penalties_on_new_best_solution) {
2808 long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_2(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, secondary_vars, penalty_factor, reset_penalties_on_new_best_solution);
2809 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2810 }
2811
2812 public ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor) {
2813 long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_3(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, secondary_vars, penalty_factor);
2814 return (cPtr == 0) ? null : new ObjectiveMonitor(cPtr, false);
2815 }
2816
2822 public SearchMonitor makeLubyRestart(int scale_factor) {
2823 long cPtr = mainJNI.Solver_makeLubyRestart(swigCPtr, this, scale_factor);
2824 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
2825 }
2826
2831 public SearchMonitor makeConstantRestart(int frequency) {
2832 long cPtr = mainJNI.Solver_makeConstantRestart(swigCPtr, this, frequency);
2833 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
2834 }
2835
2839 public RegularLimit makeTimeLimit(SWIGTYPE_p_absl__Duration time) {
2840 long cPtr = mainJNI.Solver_makeTimeLimit__SWIG_0(swigCPtr, this, SWIGTYPE_p_absl__Duration.getCPtr(time));
2841 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2842 }
2843
2844 public RegularLimit makeTimeLimit(long time_in_ms) {
2845 long cPtr = mainJNI.Solver_makeTimeLimit__SWIG_1(swigCPtr, this, time_in_ms);
2846 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2847 }
2848
2854 long cPtr = mainJNI.Solver_makeBranchesLimit(swigCPtr, this, branches);
2855 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2856 }
2857
2863 long cPtr = mainJNI.Solver_makeFailuresLimit(swigCPtr, this, failures);
2864 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2865 }
2866
2872 long cPtr = mainJNI.Solver_makeSolutionsLimit(swigCPtr, this, solutions);
2873 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2874 }
2875
2880 public RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative) {
2881 long cPtr = mainJNI.Solver_makeLimit__SWIG_0(swigCPtr, this, SWIGTYPE_p_absl__Duration.getCPtr(time), branches, failures, solutions, smart_time_check, cumulative);
2882 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2883 }
2884
2889 public RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions, boolean smart_time_check) {
2890 long cPtr = mainJNI.Solver_makeLimit__SWIG_1(swigCPtr, this, SWIGTYPE_p_absl__Duration.getCPtr(time), branches, failures, solutions, smart_time_check);
2891 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2892 }
2893
2898 public RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions) {
2899 long cPtr = mainJNI.Solver_makeLimit__SWIG_2(swigCPtr, this, SWIGTYPE_p_absl__Duration.getCPtr(time), branches, failures, solutions);
2900 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2901 }
2902
2906 public RegularLimit makeLimit(com.google.ortools.constraintsolver.RegularLimitParameters proto) {
2907 long cPtr = mainJNI.Solver_makeLimit__SWIG_3(swigCPtr, this, proto.toByteArray());
2908 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2909 }
2910
2911 public RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative) {
2912 long cPtr = mainJNI.Solver_makeLimit__SWIG_4(swigCPtr, this, time, branches, failures, solutions, smart_time_check, cumulative);
2913 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2914 }
2915
2916 public RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check) {
2917 long cPtr = mainJNI.Solver_makeLimit__SWIG_5(swigCPtr, this, time, branches, failures, solutions, smart_time_check);
2918 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2919 }
2920
2921 public RegularLimit makeLimit(long time, long branches, long failures, long solutions) {
2922 long cPtr = mainJNI.Solver_makeLimit__SWIG_6(swigCPtr, this, time, branches, failures, solutions);
2923 return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
2924 }
2925
2930 byte[] buf = mainJNI.Solver_makeDefaultRegularLimitParameters(swigCPtr, this);
2931 if (buf == null || buf.length == 0) {
2932 return null;
2933 }
2934 try {
2935 return com.google.ortools.constraintsolver.RegularLimitParameters.parseFrom(buf);
2936 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2937 throw new RuntimeException(
2938 "Unable to parse com.google.ortools.constraintsolver.RegularLimitParameters protocol message.");
2939 }
2940}
2941
2948 long cPtr = mainJNI.Solver_makeLimit__SWIG_7(swigCPtr, this, SearchLimit.getCPtr(limit_1), limit_1, SearchLimit.getCPtr(limit_2), limit_2);
2949 return (cPtr == 0) ? null : new SearchLimit(cPtr, false);
2950 }
2951
2958 public ImprovementSearchLimit MakeImprovementLimit(IntVar objective_var, boolean maximize, double objective_scaling_factor, double objective_offset, double improvement_rate_coefficient, int improvement_rate_solutions_distance) {
2959 long cPtr = mainJNI.Solver_MakeImprovementLimit(swigCPtr, this, IntVar.getCPtr(objective_var), objective_var, maximize, objective_scaling_factor, objective_offset, improvement_rate_coefficient, improvement_rate_solutions_distance);
2960 return (cPtr == 0) ? null : new ImprovementSearchLimit(cPtr, false);
2961 }
2962
2967 public ImprovementSearchLimit MakeLexicographicImprovementLimit(IntVar[] objective_vars, SWIGTYPE_p_std__vectorT_bool_t maximize, double[] objective_scaling_factors, double[] objective_offsets, double improvement_rate_coefficient, int improvement_rate_solutions_distance) {
2968 long cPtr = mainJNI.Solver_MakeLexicographicImprovementLimit(swigCPtr, this, objective_vars, SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize), objective_scaling_factors, objective_offsets, improvement_rate_coefficient, improvement_rate_solutions_distance);
2969 return (cPtr == 0) ? null : new ImprovementSearchLimit(cPtr, false);
2970 }
2971
2976 public SearchLimit makeCustomLimit(BooleanSupplier limiter) {
2977 long cPtr = mainJNI.Solver_makeCustomLimit(swigCPtr, this, limiter);
2978 return (cPtr == 0) ? null : new SearchLimit(cPtr, false);
2979 }
2980
2985 public SearchMonitor makeSearchLog(int branch_period) {
2986 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_0(swigCPtr, this, branch_period);
2987 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
2988 }
2989
2993 public SearchMonitor makeSearchLog(int branch_period, IntVar var) {
2994 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_1(swigCPtr, this, branch_period, IntVar.getCPtr(var), var);
2995 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
2996 }
2997
3002 public SearchMonitor makeSearchLog(int branch_period, Supplier<String> display_callback) {
3003 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_2(swigCPtr, this, branch_period, display_callback);
3004 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3005 }
3006
3011 public SearchMonitor makeSearchLog(int branch_period, IntVar var, Supplier<String> display_callback) {
3012 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_3(swigCPtr, this, branch_period, IntVar.getCPtr(var), var, display_callback);
3013 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3014 }
3015
3020 public SearchMonitor makeSearchLog(int branch_period, IntVar[] vars, Supplier<String> display_callback) {
3021 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_4(swigCPtr, this, branch_period, vars, display_callback);
3022 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3023 }
3024
3029 public SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var) {
3030 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_5(swigCPtr, this, branch_period, OptimizeVar.getCPtr(opt_var), opt_var);
3031 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3032 }
3033
3038 public SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var, Supplier<String> display_callback) {
3039 long cPtr = mainJNI.Solver_makeSearchLog__SWIG_6(swigCPtr, this, branch_period, OptimizeVar.getCPtr(opt_var), opt_var, display_callback);
3040 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3041 }
3042
3047 public SearchMonitor makeSearchTrace(String prefix) {
3048 long cPtr = mainJNI.Solver_makeSearchTrace(swigCPtr, this, prefix);
3049 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3050 }
3051
3055 public SearchMonitor makeEnterSearchCallback(Runnable callback) {
3056 long cPtr = mainJNI.Solver_makeEnterSearchCallback(swigCPtr, this, callback);
3057 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3058 }
3059
3060 public SearchMonitor makeExitSearchCallback(Runnable callback) {
3061 long cPtr = mainJNI.Solver_makeExitSearchCallback(swigCPtr, this, callback);
3062 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3063 }
3064
3065 public SearchMonitor makeAtSolutionCallback(Runnable callback) {
3066 long cPtr = mainJNI.Solver_makeAtSolutionCallback(swigCPtr, this, callback);
3067 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3068 }
3069
3074 long cPtr = mainJNI.Solver_makePrintModelVisitor(swigCPtr, this);
3075 return (cPtr == 0) ? null : new ModelVisitor(cPtr, false);
3076 }
3077
3082 long cPtr = mainJNI.Solver_makeStatisticsModelVisitor(swigCPtr, this);
3083 return (cPtr == 0) ? null : new ModelVisitor(cPtr, false);
3084 }
3085
3090 long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_0(swigCPtr, this, visitors);
3091 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3092 }
3093
3095 long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_1(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1);
3096 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3097 }
3098
3100 long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_2(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2);
3101 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3102 }
3103
3105 long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_3(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2, SymmetryBreaker.getCPtr(v3), v3);
3106 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3107 }
3108
3110 long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_4(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2, SymmetryBreaker.getCPtr(v3), v3, SymmetryBreaker.getCPtr(v4), v4);
3111 return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
3112 }
3113
3118 long cPtr = mainJNI.Solver_makeAssignVariableValue(swigCPtr, this, IntVar.getCPtr(var), var, val);
3119 return (cPtr == 0) ? null : new Decision(cPtr, false);
3120 }
3121
3123 long cPtr = mainJNI.Solver_makeVariableLessOrEqualValue(swigCPtr, this, IntVar.getCPtr(var), var, value);
3124 return (cPtr == 0) ? null : new Decision(cPtr, false);
3125 }
3126
3128 long cPtr = mainJNI.Solver_makeVariableGreaterOrEqualValue(swigCPtr, this, IntVar.getCPtr(var), var, value);
3129 return (cPtr == 0) ? null : new Decision(cPtr, false);
3130 }
3131
3132 public Decision makeSplitVariableDomain(IntVar var, long val, boolean start_with_lower_half) {
3133 long cPtr = mainJNI.Solver_makeSplitVariableDomain(swigCPtr, this, IntVar.getCPtr(var), var, val, start_with_lower_half);
3134 return (cPtr == 0) ? null : new Decision(cPtr, false);
3135 }
3136
3138 long cPtr = mainJNI.Solver_makeAssignVariableValueOrFail(swigCPtr, this, IntVar.getCPtr(var), var, value);
3139 return (cPtr == 0) ? null : new Decision(cPtr, false);
3140 }
3141
3143 long cPtr = mainJNI.Solver_MakeAssignVariableValueOrDoNothing(swigCPtr, this, IntVar.getCPtr(var), var, value);
3144 return (cPtr == 0) ? null : new Decision(cPtr, false);
3145 }
3146
3147 public Decision makeAssignVariablesValues(IntVar[] vars, long[] values) {
3148 long cPtr = mainJNI.Solver_makeAssignVariablesValues(swigCPtr, this, vars, values);
3149 return (cPtr == 0) ? null : new Decision(cPtr, false);
3150 }
3151
3153 long cPtr = mainJNI.Solver_MakeAssignVariablesValuesOrDoNothing(swigCPtr, this, vars, values);
3154 return (cPtr == 0) ? null : new Decision(cPtr, false);
3155 }
3156
3157 public Decision MakeAssignVariablesValuesOrFail(IntVar[] vars, long[] values) {
3158 long cPtr = mainJNI.Solver_MakeAssignVariablesValuesOrFail(swigCPtr, this, vars, values);
3159 return (cPtr == 0) ? null : new Decision(cPtr, false);
3160 }
3161
3163 long cPtr = mainJNI.Solver_makeFailDecision(swigCPtr, this);
3164 return (cPtr == 0) ? null : new Decision(cPtr, false);
3165 }
3166
3167 public Decision makeDecision(Consumer<Solver> apply, Consumer<Solver> refute) {
3168 long cPtr = mainJNI.Solver_makeDecision(swigCPtr, this, apply, refute);
3169 return (cPtr == 0) ? null : new Decision(cPtr, false);
3170 }
3171
3183 try {
3184 long cPtr = mainJNI.Solver_compose__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2);
3185 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3186 } finally {
3189 }
3190 }
3191
3193 try {
3194 long cPtr = mainJNI.Solver_compose__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3);
3195 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3196 } finally {
3200 }
3201 }
3202
3204 try {
3205 long cPtr = mainJNI.Solver_compose__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3, DecisionBuilder.getCPtr(db4), db4);
3206 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3207 } finally {
3212 }
3213 }
3214
3216 try {
3217 long cPtr = mainJNI.Solver_compose__SWIG_3(swigCPtr, this, dbs);
3218 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3219 } finally {
3221 }
3222 }
3223
3242 try {
3243 long cPtr = mainJNI.Solver_tryDecisions__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2);
3244 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3245 } finally {
3248 }
3249 }
3250
3252 try {
3253 long cPtr = mainJNI.Solver_tryDecisions__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3);
3254 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3255 } finally {
3259 }
3260 }
3261
3263 try {
3264 long cPtr = mainJNI.Solver_tryDecisions__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3, DecisionBuilder.getCPtr(db4), db4);
3265 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3266 } finally {
3271 }
3272 }
3273
3275 try {
3276 long cPtr = mainJNI.Solver_tryDecisions__SWIG_3(swigCPtr, this, dbs);
3277 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3278 } finally {
3280 }
3281 }
3282
3287 public DecisionBuilder makePhase(IntVar[] vars, int var_str, int val_str) {
3288 long cPtr = mainJNI.Solver_makePhase__SWIG_0(swigCPtr, this, vars, var_str, val_str);
3289 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3290 }
3291
3292 public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, int val_str) {
3293 long cPtr = mainJNI.Solver_makePhase__SWIG_1(swigCPtr, this, vars, var_evaluator, val_str);
3294 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3295 }
3296
3297 public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator) {
3298 long cPtr = mainJNI.Solver_makePhase__SWIG_2(swigCPtr, this, vars, var_str, value_evaluator);
3299 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3300 }
3301
3306 public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongTernaryPredicate var_val1_val2_comparator) {
3307 long cPtr = mainJNI.Solver_makePhase__SWIG_3(swigCPtr, this, vars, var_str, var_val1_val2_comparator);
3308 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3309 }
3310
3311 public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator) {
3312 long cPtr = mainJNI.Solver_makePhase__SWIG_4(swigCPtr, this, vars, var_evaluator, value_evaluator);
3313 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3314 }
3315
3316 public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker) {
3317 long cPtr = mainJNI.Solver_makePhase__SWIG_5(swigCPtr, this, vars, var_str, value_evaluator, tie_breaker);
3318 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3319 }
3320
3321 public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker) {
3322 long cPtr = mainJNI.Solver_makePhase__SWIG_6(swigCPtr, this, vars, var_evaluator, value_evaluator, tie_breaker);
3323 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3324 }
3325
3327 long cPtr = mainJNI.Solver_makeDefaultPhase__SWIG_0(swigCPtr, this, vars);
3328 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3329 }
3330
3332 long cPtr = mainJNI.Solver_makeDefaultPhase__SWIG_1(swigCPtr, this, vars, DefaultPhaseParameters.getCPtr(parameters), parameters);
3333 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3334 }
3335
3339 public DecisionBuilder makePhase(IntVar v0, int var_str, int val_str) {
3340 long cPtr = mainJNI.Solver_makePhase__SWIG_7(swigCPtr, this, IntVar.getCPtr(v0), v0, var_str, val_str);
3341 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3342 }
3343
3344 public DecisionBuilder makePhase(IntVar v0, IntVar v1, int var_str, int val_str) {
3345 long cPtr = mainJNI.Solver_makePhase__SWIG_8(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, var_str, val_str);
3346 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3347 }
3348
3349 public DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, int var_str, int val_str) {
3350 long cPtr = mainJNI.Solver_makePhase__SWIG_9(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, IntVar.getCPtr(v2), v2, var_str, val_str);
3351 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3352 }
3353
3354 public DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, IntVar v3, int var_str, int val_str) {
3355 long cPtr = mainJNI.Solver_makePhase__SWIG_10(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, IntVar.getCPtr(v2), v2, IntVar.getCPtr(v3), v3, var_str, val_str);
3356 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3357 }
3358
3366 public Decision makeScheduleOrPostpone(IntervalVar var, long est, SWIGTYPE_p_long marker) {
3367 long cPtr = mainJNI.Solver_makeScheduleOrPostpone(swigCPtr, this, IntervalVar.getCPtr(var), var, est, SWIGTYPE_p_long.getCPtr(marker));
3368 return (cPtr == 0) ? null : new Decision(cPtr, false);
3369 }
3370
3378 public Decision makeScheduleOrExpedite(IntervalVar var, long est, SWIGTYPE_p_long marker) {
3379 long cPtr = mainJNI.Solver_makeScheduleOrExpedite(swigCPtr, this, IntervalVar.getCPtr(var), var, est, SWIGTYPE_p_long.getCPtr(marker));
3380 return (cPtr == 0) ? null : new Decision(cPtr, false);
3381 }
3382
3387 public Decision makeRankFirstInterval(SequenceVar sequence, int index) {
3388 long cPtr = mainJNI.Solver_makeRankFirstInterval(swigCPtr, this, SequenceVar.getCPtr(sequence), sequence, index);
3389 return (cPtr == 0) ? null : new Decision(cPtr, false);
3390 }
3391
3396 public Decision makeRankLastInterval(SequenceVar sequence, int index) {
3397 long cPtr = mainJNI.Solver_makeRankLastInterval(swigCPtr, this, SequenceVar.getCPtr(sequence), sequence, index);
3398 return (cPtr == 0) ? null : new Decision(cPtr, false);
3399 }
3400
3408 public DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, int str) {
3409 long cPtr = mainJNI.Solver_makePhase__SWIG_11(swigCPtr, this, vars, eval, str);
3410 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3411 }
3412
3422 public DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, LongUnaryOperator tie_breaker, int str) {
3423 long cPtr = mainJNI.Solver_makePhase__SWIG_12(swigCPtr, this, vars, eval, tie_breaker, str);
3424 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3425 }
3426
3430 public DecisionBuilder makePhase(IntervalVar[] intervals, int str) {
3431 long cPtr = mainJNI.Solver_makePhase__SWIG_13(swigCPtr, this, intervals, str);
3432 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3433 }
3434
3435 public DecisionBuilder makePhase(SequenceVar[] sequences, int str) {
3436 long cPtr = mainJNI.Solver_makePhase__SWIG_14(swigCPtr, this, sequences, str);
3437 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3438 }
3439
3445 try {
3446 long cPtr = mainJNI.Solver_makeDecisionBuilderFromAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment, DecisionBuilder.getCPtr(db), db, vars);
3447 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3448 } finally {
3450 }
3451 }
3452
3458 long cPtr = mainJNI.Solver_makeConstraintAdder(swigCPtr, this, Constraint.getCPtr(ct), ct);
3459 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3460 }
3461
3469 try {
3470 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
3471 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3472 } finally {
3474 }
3475 }
3476
3478 try {
3479 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1);
3480 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3481 } finally {
3483 }
3484 }
3485
3487 try {
3488 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2);
3489 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3490 } finally {
3492 }
3493 }
3494
3496 try {
3497 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3);
3498 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3499 } finally {
3501 }
3502 }
3503
3505 try {
3506 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3, SearchMonitor.getCPtr(monitor4), monitor4);
3507 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3508 } finally {
3510 }
3511 }
3512
3514 try {
3515 long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
3516 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3517 } finally {
3519 }
3520 }
3521
3531 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step) {
3532 try {
3533 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step);
3534 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3535 } finally {
3537 }
3538 }
3539
3540 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1) {
3541 try {
3542 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1);
3543 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3544 } finally {
3546 }
3547 }
3548
3549 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2) {
3550 try {
3551 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2);
3552 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3553 } finally {
3555 }
3556 }
3557
3558 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3) {
3559 try {
3560 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3);
3561 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3562 } finally {
3564 }
3565 }
3566
3567 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4) {
3568 try {
3569 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3, SearchMonitor.getCPtr(monitor4), monitor4);
3570 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3571 } finally {
3573 }
3574 }
3575
3576 public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor[] monitors) {
3577 try {
3578 long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, monitors);
3579 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3580 } finally {
3582 }
3583 }
3584
3590 long cPtr = mainJNI.Solver_makeRestoreAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
3591 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3592 }
3593
3599 long cPtr = mainJNI.Solver_makeStoreAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
3600 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3601 }
3602
3606 public LocalSearchOperator makeOperator(IntVar[] vars, int op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t get_neighbors) {
3607 long cPtr = mainJNI.Solver_makeOperator__SWIG_0(swigCPtr, this, vars, op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t.getCPtr(get_neighbors));
3608 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3609 }
3610
3614 public LocalSearchOperator makeOperator(IntVar[] vars, int op) {
3615 long cPtr = mainJNI.Solver_makeOperator__SWIG_1(swigCPtr, this, vars, op);
3616 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3617 }
3618
3619 public LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t get_neighbors) {
3620 long cPtr = mainJNI.Solver_makeOperator__SWIG_2(swigCPtr, this, vars, secondary_vars, op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t.getCPtr(get_neighbors));
3621 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3622 }
3623
3624 public LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op) {
3625 long cPtr = mainJNI.Solver_makeOperator__SWIG_3(swigCPtr, this, vars, secondary_vars, op);
3626 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3627 }
3628
3630 long cPtr = mainJNI.Solver_makeOperator__SWIG_4(swigCPtr, this, vars, evaluator, op);
3631 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3632 }
3633
3634 public LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator evaluator, int op) {
3635 long cPtr = mainJNI.Solver_makeOperator__SWIG_5(swigCPtr, this, vars, secondary_vars, evaluator, op);
3636 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3637 }
3638
3648 public LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables) {
3649 long cPtr = mainJNI.Solver_makeRandomLnsOperator__SWIG_0(swigCPtr, this, vars, number_of_variables);
3650 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3651 }
3652
3653 public LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables, int seed) {
3654 long cPtr = mainJNI.Solver_makeRandomLnsOperator__SWIG_1(swigCPtr, this, vars, number_of_variables, seed);
3655 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3656 }
3657
3666 long cPtr = mainJNI.Solver_makeMoveTowardTargetOperator__SWIG_0(swigCPtr, this, Assignment.getCPtr(target), target);
3667 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3668 }
3669
3678 public LocalSearchOperator makeMoveTowardTargetOperator(IntVar[] variables, long[] target_values) {
3679 long cPtr = mainJNI.Solver_makeMoveTowardTargetOperator__SWIG_1(swigCPtr, this, variables, target_values);
3680 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3681 }
3682
3715 long cPtr = mainJNI.Solver_concatenateOperators__SWIG_0(swigCPtr, this, ops);
3716 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3717 }
3718
3720 long cPtr = mainJNI.Solver_concatenateOperators__SWIG_1(swigCPtr, this, ops, restart);
3721 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3722 }
3723
3725 long cPtr = mainJNI.Solver_concatenateOperators__SWIG_2(swigCPtr, this, ops, evaluator);
3726 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3727 }
3728
3734 long cPtr = mainJNI.Solver_randomConcatenateOperators__SWIG_0(swigCPtr, this, ops);
3735 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3736 }
3737
3744 long cPtr = mainJNI.Solver_randomConcatenateOperators__SWIG_1(swigCPtr, this, ops, seed);
3745 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3746 }
3747
3757 public LocalSearchOperator MultiArmedBanditConcatenateOperators(LocalSearchOperator[] ops, double memory_coefficient, double exploration_coefficient, boolean maximize) {
3758 long cPtr = mainJNI.Solver_MultiArmedBanditConcatenateOperators(swigCPtr, this, ops, memory_coefficient, exploration_coefficient, maximize);
3759 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3760 }
3761
3770 long cPtr = mainJNI.Solver_makeNeighborhoodLimit(swigCPtr, this, LocalSearchOperator.getCPtr(op), op, limit);
3771 return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
3772 }
3773
3800 long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
3801 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3802 }
3803
3805 try {
3806 long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_1(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
3807 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3808 } finally {
3809 keepAliveDecisionBuilder(first_solution);
3810 }
3811 }
3812
3816 public DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, DecisionBuilder first_solution_sub_decision_builder, LocalSearchPhaseParameters parameters) {
3817 try {
3818 long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_2(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, DecisionBuilder.getCPtr(first_solution_sub_decision_builder), first_solution_sub_decision_builder, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
3819 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3820 } finally {
3821 keepAliveDecisionBuilder(first_solution);
3822 keepAliveDecisionBuilder(first_solution_sub_decision_builder);
3823 }
3824 }
3825
3827 try {
3828 long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_3(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
3829 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
3830 } finally {
3831 keepAliveDecisionBuilder(first_solution);
3832 }
3833 }
3834
3841 public Assignment RunUncheckedLocalSearch(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit, SWIGTYPE_p_absl__flat_hash_setT_operations_research__IntVar_p_t touched) {
3842 long cPtr = mainJNI.Solver_RunUncheckedLocalSearch__SWIG_0(swigCPtr, this, Assignment.getCPtr(initial_solution), initial_solution, LocalSearchFilterManager.getCPtr(filter_manager), filter_manager, LocalSearchOperator.getCPtr(ls_operator), ls_operator, monitors, RegularLimit.getCPtr(limit), limit, SWIGTYPE_p_absl__flat_hash_setT_operations_research__IntVar_p_t.getCPtr(touched));
3843 return (cPtr == 0) ? null : new Assignment(cPtr, false);
3844 }
3845
3852 public Assignment RunUncheckedLocalSearch(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit) {
3853 long cPtr = mainJNI.Solver_RunUncheckedLocalSearch__SWIG_1(swigCPtr, this, Assignment.getCPtr(initial_solution), initial_solution, LocalSearchFilterManager.getCPtr(filter_manager), filter_manager, LocalSearchOperator.getCPtr(ls_operator), ls_operator, monitors, RegularLimit.getCPtr(limit), limit);
3854 return (cPtr == 0) ? null : new Assignment(cPtr, false);
3855 }
3856
3861 long cPtr = mainJNI.Solver_makeDefaultSolutionPool(swigCPtr, this);
3862 return (cPtr == 0) ? null : new SolutionPool(cPtr, false);
3863 }
3864
3869 try {
3870 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_0(swigCPtr, this, IntVar.getCPtr(objective), objective, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder);
3871 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3872 } finally {
3873 keepAliveDecisionBuilder(sub_decision_builder);
3874 }
3875 }
3876
3878 try {
3879 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_1(swigCPtr, this, IntVar.getCPtr(objective), objective, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit);
3880 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3881 } finally {
3882 keepAliveDecisionBuilder(sub_decision_builder);
3883 }
3884 }
3885
3887 try {
3888 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_2(swigCPtr, this, IntVar.getCPtr(objective), objective, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit, LocalSearchFilterManager.getCPtr(filter_manager), filter_manager);
3889 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3890 } finally {
3891 keepAliveDecisionBuilder(sub_decision_builder);
3892 }
3893 }
3894
3896 try {
3897 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_3(swigCPtr, this, IntVar.getCPtr(objective), objective, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder);
3898 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3899 } finally {
3900 keepAliveDecisionBuilder(sub_decision_builder);
3901 }
3902 }
3903
3905 try {
3906 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_4(swigCPtr, this, IntVar.getCPtr(objective), objective, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit);
3907 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3908 } finally {
3909 keepAliveDecisionBuilder(sub_decision_builder);
3910 }
3911 }
3912
3914 try {
3915 long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_5(swigCPtr, this, IntVar.getCPtr(objective), objective, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit, LocalSearchFilterManager.getCPtr(filter_manager), filter_manager);
3916 return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
3917 } finally {
3918 keepAliveDecisionBuilder(sub_decision_builder);
3919 }
3920 }
3921
3926 long cPtr = mainJNI.Solver_MakeAcceptFilter(swigCPtr, this);
3927 return (cPtr == 0) ? null : new LocalSearchFilter(cPtr, false);
3928 }
3929
3931 long cPtr = mainJNI.Solver_MakeRejectFilter(swigCPtr, this);
3932 return (cPtr == 0) ? null : new LocalSearchFilter(cPtr, false);
3933 }
3934
3936 long cPtr = mainJNI.Solver_makeVariableDomainFilter(swigCPtr, this);
3937 return (cPtr == 0) ? null : new LocalSearchFilter(cPtr, false);
3938 }
3939
3940 public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, int filter_enum) {
3941 long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_0(swigCPtr, this, vars, values, filter_enum);
3942 return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
3943 }
3944
3945 public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, int filter_enum) {
3946 long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_1(swigCPtr, this, vars, secondary_vars, values, filter_enum);
3947 return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
3948 }
3949
3954 public void topPeriodicCheck() {
3955 mainJNI.Solver_topPeriodicCheck(swigCPtr, this);
3956 }
3957
3963 public int topProgressPercent() {
3964 return mainJNI.Solver_topProgressPercent(swigCPtr, this);
3965 }
3966
3972 public void pushState() {
3973 mainJNI.Solver_pushState(swigCPtr, this);
3974 }
3975
3976 public void popState() {
3977 mainJNI.Solver_popState(swigCPtr, this);
3978 }
3979
3984 public int searchDepth() {
3985 return mainJNI.Solver_searchDepth(swigCPtr, this);
3986 }
3987
3992 public int searchLeftDepth() {
3993 return mainJNI.Solver_searchLeftDepth(swigCPtr, this);
3994 }
3995
4000 public int solveDepth() {
4001 return mainJNI.Solver_solveDepth(swigCPtr, this);
4002 }
4003
4007 public long rand64(long size) {
4008 return mainJNI.Solver_rand64(swigCPtr, this, size);
4009 }
4010
4014 public int rand32(int size) {
4015 return mainJNI.Solver_rand32(swigCPtr, this, size);
4016 }
4017
4021 public void reSeed(int seed) {
4022 mainJNI.Solver_reSeed(swigCPtr, this, seed);
4023 }
4024
4030 public void exportProfilingOverview(String filename) {
4031 mainJNI.Solver_exportProfilingOverview(swigCPtr, this, filename);
4032 }
4033
4037 public String localSearchProfile() {
4038 return mainJNI.Solver_localSearchProfile(swigCPtr, this);
4039 }
4040
4046 public boolean currentlyInSolve() {
4047 return mainJNI.Solver_currentlyInSolve(swigCPtr, this);
4048 }
4049
4054 public int constraints() {
4055 return mainJNI.Solver_constraints(swigCPtr, this);
4056 }
4057
4061 public void accept(ModelVisitor visitor) {
4062 mainJNI.Solver_accept(swigCPtr, this, ModelVisitor.getCPtr(visitor), visitor);
4063 }
4064
4066 long cPtr = mainJNI.Solver_balancing_decision(swigCPtr, this);
4067 return (cPtr == 0) ? null : new Decision(cPtr, false);
4068 }
4069
4073 public void clear_fail_intercept() {
4074 mainJNI.Solver_clear_fail_intercept(swigCPtr, this);
4075 }
4076
4081 public void SetUseFastLocalSearch(boolean use_fast_local_search) {
4082 mainJNI.Solver_SetUseFastLocalSearch(swigCPtr, this, use_fast_local_search);
4083 }
4084
4088 public boolean UseFastLocalSearch() {
4089 return mainJNI.Solver_UseFastLocalSearch(swigCPtr, this);
4090 }
4091
4095 public boolean hasName(PropagationBaseObject object) {
4096 return mainJNI.Solver_hasName(swigCPtr, this, PropagationBaseObject.getCPtr(object), object);
4097 }
4098
4102 public Demon registerDemon(Demon demon) {
4103 long cPtr = mainJNI.Solver_registerDemon(swigCPtr, this, Demon.getCPtr(demon), demon);
4104 return (cPtr == 0) ? null : new Demon(cPtr, false);
4105 }
4106
4111 long cPtr = mainJNI.Solver_registerIntExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr);
4112 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
4113 }
4114
4119 long cPtr = mainJNI.Solver_registerIntVar(swigCPtr, this, IntVar.getCPtr(var), var);
4120 return (cPtr == 0) ? null : new IntVar(cPtr, false);
4121 }
4122
4128 long cPtr = mainJNI.Solver_registerIntervalVar(swigCPtr, this, IntervalVar.getCPtr(var), var);
4129 return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
4130 }
4131
4136 long cPtr = mainJNI.Solver_cache(swigCPtr, this);
4137 return (cPtr == 0) ? null : new ModelCache(cPtr, false);
4138 }
4139
4143 public boolean instrumentsDemons() {
4144 return mainJNI.Solver_instrumentsDemons(swigCPtr, this);
4145 }
4146
4150 public boolean isProfilingEnabled() {
4151 return mainJNI.Solver_isProfilingEnabled(swigCPtr, this);
4152 }
4153
4158 return mainJNI.Solver_isLocalSearchProfilingEnabled(swigCPtr, this);
4159 }
4160
4164 public boolean instrumentsVariables() {
4165 return mainJNI.Solver_instrumentsVariables(swigCPtr, this);
4166 }
4167
4171 public boolean nameAllVariables() {
4172 return mainJNI.Solver_nameAllVariables(swigCPtr, this);
4173 }
4174
4178 public String model_name() {
4179 return mainJNI.Solver_model_name(swigCPtr, this);
4180 }
4181
4186 long cPtr = mainJNI.Solver_getPropagationMonitor(swigCPtr, this);
4187 return (cPtr == 0) ? null : new PropagationMonitor(cPtr, false);
4188 }
4189
4195 mainJNI.Solver_addPropagationMonitor(swigCPtr, this, PropagationMonitor.getCPtr(monitor), monitor);
4196 }
4197
4202 long cPtr = mainJNI.Solver_getLocalSearchMonitor(swigCPtr, this);
4203 return (cPtr == 0) ? null : new LocalSearchMonitor(cPtr, false);
4204 }
4205
4211 mainJNI.Solver_addLocalSearchMonitor(swigCPtr, this, LocalSearchMonitor.getCPtr(monitor), monitor);
4212 }
4213
4218 long cPtr = mainJNI.Solver_GetOrCreateLocalSearchState(swigCPtr, this);
4219 return (cPtr == 0) ? null : new Assignment(cPtr, false);
4220 }
4221
4226 mainJNI.Solver_ClearLocalSearchState(swigCPtr, this);
4227 }
4228
4235 public void setTmpVector(long[] value) {
4236 mainJNI.Solver_tmpVector_set(swigCPtr, this, value);
4237 }
4238
4245 public long[] getTmpVector() {
4246 return mainJNI.Solver_tmpVector_get(swigCPtr, this);
4247}
4248
4254 long cPtr = mainJNI.Solver_castExpression(swigCPtr, this, IntVar.getCPtr(var), var);
4255 return (cPtr == 0) ? null : new IntExpr(cPtr, false);
4256 }
4257
4261 public void finishCurrentSearch() {
4262 mainJNI.Solver_finishCurrentSearch(swigCPtr, this);
4263 }
4264
4265 public void restartCurrentSearch() {
4266 mainJNI.Solver_restartCurrentSearch(swigCPtr, this);
4267 }
4268
4273 public void shouldFail() {
4274 mainJNI.Solver_shouldFail(swigCPtr, this);
4275 }
4276
4277 public void checkFail() {
4278 mainJNI.Solver_checkFail(swigCPtr, this);
4279 }
4280
4285 try {
4286 long cPtr = mainJNI.Solver_MakeProfiledDecisionBuilderWrapper(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
4287 return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
4288 } finally {
4290 }
4291 }
4292
4296 public final static int kNumPriorities = mainJNI.Solver_kNumPriorities_get();
4297 // IntVarStrategy
4306 public final static int INT_VAR_DEFAULT = mainJNI.Solver_INT_VAR_DEFAULT_get();
4310 public final static int INT_VAR_SIMPLE = mainJNI.Solver_INT_VAR_SIMPLE_get();
4316 public final static int CHOOSE_FIRST_UNBOUND = mainJNI.Solver_CHOOSE_FIRST_UNBOUND_get();
4320 public final static int CHOOSE_RANDOM = mainJNI.Solver_CHOOSE_RANDOM_get();
4329 public final static int CHOOSE_MIN_SIZE_LOWEST_MIN = mainJNI.Solver_CHOOSE_MIN_SIZE_LOWEST_MIN_get();
4338 public final static int CHOOSE_MIN_SIZE_HIGHEST_MIN = mainJNI.Solver_CHOOSE_MIN_SIZE_HIGHEST_MIN_get();
4347 public final static int CHOOSE_MIN_SIZE_LOWEST_MAX = mainJNI.Solver_CHOOSE_MIN_SIZE_LOWEST_MAX_get();
4356 public final static int CHOOSE_MIN_SIZE_HIGHEST_MAX = mainJNI.Solver_CHOOSE_MIN_SIZE_HIGHEST_MAX_get();
4363 public final static int CHOOSE_LOWEST_MIN = mainJNI.Solver_CHOOSE_LOWEST_MIN_get();
4370 public final static int CHOOSE_HIGHEST_MAX = mainJNI.Solver_CHOOSE_HIGHEST_MAX_get();
4376 public final static int CHOOSE_MIN_SIZE = mainJNI.Solver_CHOOSE_MIN_SIZE_get();
4382 public final static int CHOOSE_MAX_SIZE = mainJNI.Solver_CHOOSE_MAX_SIZE_get();
4387 public final static int CHOOSE_MAX_REGRET_ON_MIN = mainJNI.Solver_CHOOSE_MAX_REGRET_ON_MIN_get();
4392 public final static int CHOOSE_PATH = mainJNI.Solver_CHOOSE_PATH_get();
4393
4394 // IntValueStrategy
4403 public final static int INT_VALUE_DEFAULT = mainJNI.Solver_INT_VALUE_DEFAULT_get();
4407 public final static int INT_VALUE_SIMPLE = mainJNI.Solver_INT_VALUE_SIMPLE_get();
4411 public final static int ASSIGN_MIN_VALUE = mainJNI.Solver_ASSIGN_MIN_VALUE_get();
4415 public final static int ASSIGN_MAX_VALUE = mainJNI.Solver_ASSIGN_MAX_VALUE_get();
4419 public final static int ASSIGN_RANDOM_VALUE = mainJNI.Solver_ASSIGN_RANDOM_VALUE_get();
4425 public final static int ASSIGN_CENTER_VALUE = mainJNI.Solver_ASSIGN_CENTER_VALUE_get();
4430 public final static int SPLIT_LOWER_HALF = mainJNI.Solver_SPLIT_LOWER_HALF_get();
4435 public final static int SPLIT_UPPER_HALF = mainJNI.Solver_SPLIT_UPPER_HALF_get();
4436
4437 // EvaluatorStrategy
4457 public final static int CHOOSE_STATIC_GLOBAL_BEST = mainJNI.Solver_CHOOSE_STATIC_GLOBAL_BEST_get();
4464 public final static int CHOOSE_DYNAMIC_GLOBAL_BEST = mainJNI.Solver_CHOOSE_DYNAMIC_GLOBAL_BEST_get();
4465
4466 // SequenceStrategy
4471 public final static int SEQUENCE_DEFAULT = mainJNI.Solver_SEQUENCE_DEFAULT_get();
4472 public final static int SEQUENCE_SIMPLE = mainJNI.Solver_SEQUENCE_SIMPLE_get();
4473 public final static int CHOOSE_MIN_SLACK_RANK_FORWARD = mainJNI.Solver_CHOOSE_MIN_SLACK_RANK_FORWARD_get();
4474 public final static int CHOOSE_RANDOM_RANK_FORWARD = mainJNI.Solver_CHOOSE_RANDOM_RANK_FORWARD_get();
4475
4476 // IntervalStrategy
4485 public final static int INTERVAL_DEFAULT = mainJNI.Solver_INTERVAL_DEFAULT_get();
4489 public final static int INTERVAL_SIMPLE = mainJNI.Solver_INTERVAL_SIMPLE_get();
4494 public final static int INTERVAL_SET_TIMES_FORWARD = mainJNI.Solver_INTERVAL_SET_TIMES_FORWARD_get();
4499 public final static int INTERVAL_SET_TIMES_BACKWARD = mainJNI.Solver_INTERVAL_SET_TIMES_BACKWARD_get();
4500
4501 // LocalSearchOperators
4518 public final static int TWOOPT = mainJNI.Solver_TWOOPT_get();
4535 public final static int OROPT = mainJNI.Solver_OROPT_get();
4539 public final static int RELOCATE = mainJNI.Solver_RELOCATE_get();
4549 public final static int EXCHANGE = mainJNI.Solver_EXCHANGE_get();
4561 public final static int CROSS = mainJNI.Solver_CROSS_get();
4570 public final static int MAKEACTIVE = mainJNI.Solver_MAKEACTIVE_get();
4578 public final static int MAKEINACTIVE = mainJNI.Solver_MAKEINACTIVE_get();
4587 public final static int MAKECHAININACTIVE = mainJNI.Solver_MAKECHAININACTIVE_get();
4595 public final static int SWAPACTIVE = mainJNI.Solver_SWAPACTIVE_get();
4608 public final static int EXTENDEDSWAPACTIVE = mainJNI.Solver_EXTENDEDSWAPACTIVE_get();
4618 public final static int PATHLNS = mainJNI.Solver_PATHLNS_get();
4623 public final static int FULLPATHLNS = mainJNI.Solver_FULLPATHLNS_get();
4629 public final static int UNACTIVELNS = mainJNI.Solver_UNACTIVELNS_get();
4640 public final static int INCREMENT = mainJNI.Solver_INCREMENT_get();
4646 public final static int DECREMENT = mainJNI.Solver_DECREMENT_get();
4656 public final static int SIMPLELNS = mainJNI.Solver_SIMPLELNS_get();
4657
4658 // EvaluatorLocalSearchOperators
4670 public final static int LK = mainJNI.Solver_LK_get();
4679 public final static int TSPOPT = mainJNI.Solver_TSPOPT_get();
4688 public final static int TSPLNS = mainJNI.Solver_TSPLNS_get();
4689
4690 // LocalSearchFilterBound
4701 public final static int GE = mainJNI.Solver_GE_get();
4705 public final static int LE = mainJNI.Solver_LE_get();
4710 public final static int EQ = mainJNI.Solver_EQ_get();
4711
4712 // DemonPriority
4723 public final static int DELAYED_PRIORITY = mainJNI.Solver_DELAYED_PRIORITY_get();
4727 public final static int VAR_PRIORITY = mainJNI.Solver_VAR_PRIORITY_get();
4731 public final static int NORMAL_PRIORITY = mainJNI.Solver_NORMAL_PRIORITY_get();
4732
4733 // BinaryIntervalRelation
4742 public final static int ENDS_AFTER_END = mainJNI.Solver_ENDS_AFTER_END_get();
4746 public final static int ENDS_AFTER_START = mainJNI.Solver_ENDS_AFTER_START_get();
4750 public final static int ENDS_AT_END = mainJNI.Solver_ENDS_AT_END_get();
4754 public final static int ENDS_AT_START = mainJNI.Solver_ENDS_AT_START_get();
4758 public final static int STARTS_AFTER_END = mainJNI.Solver_STARTS_AFTER_END_get();
4762 public final static int STARTS_AFTER_START = mainJNI.Solver_STARTS_AFTER_START_get();
4766 public final static int STARTS_AT_END = mainJNI.Solver_STARTS_AT_END_get();
4770 public final static int STARTS_AT_START = mainJNI.Solver_STARTS_AT_START_get();
4776 public final static int STAYS_IN_SYNC = mainJNI.Solver_STAYS_IN_SYNC_get();
4777
4778 // UnaryIntervalRelation
4787 public final static int ENDS_AFTER = mainJNI.Solver_ENDS_AFTER_get();
4791 public final static int ENDS_AT = mainJNI.Solver_ENDS_AT_get();
4795 public final static int ENDS_BEFORE = mainJNI.Solver_ENDS_BEFORE_get();
4799 public final static int STARTS_AFTER = mainJNI.Solver_STARTS_AFTER_get();
4803 public final static int STARTS_AT = mainJNI.Solver_STARTS_AT_get();
4807 public final static int STARTS_BEFORE = mainJNI.Solver_STARTS_BEFORE_get();
4813 public final static int CROSS_DATE = mainJNI.Solver_CROSS_DATE_get();
4819 public final static int AVOID_DATE = mainJNI.Solver_AVOID_DATE_get();
4820
4821 // DecisionModification
4834 public final static int NO_CHANGE = mainJNI.Solver_NO_CHANGE_get();
4840 public final static int KEEP_LEFT = mainJNI.Solver_KEEP_LEFT_get();
4846 public final static int KEEP_RIGHT = mainJNI.Solver_KEEP_RIGHT_get();
4851 public final static int KILL_BOTH = mainJNI.Solver_KILL_BOTH_get();
4856 public final static int SWITCH_BRANCHES = mainJNI.Solver_SWITCH_BRANCHES_get();
4857
4858 // MarkerType
4864 public final static int SENTINEL = mainJNI.Solver_SENTINEL_get();
4865 public final static int SIMPLE_MARKER = mainJNI.Solver_SIMPLE_MARKER_get();
4866 public final static int CHOICE_POINT = mainJNI.Solver_CHOICE_POINT_get();
4867 public final static int REVERSIBLE_ACTION = mainJNI.Solver_REVERSIBLE_ACTION_get();
4868
4869 // SolverState
4877 public final static int OUTSIDE_SEARCH = mainJNI.Solver_OUTSIDE_SEARCH_get();
4881 public final static int IN_ROOT_NODE = mainJNI.Solver_IN_ROOT_NODE_get();
4885 public final static int IN_SEARCH = mainJNI.Solver_IN_SEARCH_get();
4889 public final static int AT_SOLUTION = mainJNI.Solver_AT_SOLUTION_get();
4893 public final static int NO_MORE_SOLUTIONS = mainJNI.Solver_NO_MORE_SOLUTIONS_get();
4897 public final static int PROBLEM_INFEASIBLE = mainJNI.Solver_PROBLEM_INFEASIBLE_get();
4898
4899 // OptimizationDirection
4904 public final static int NOT_SET = mainJNI.Solver_NOT_SET_get();
4905 public final static int MAXIMIZATION = mainJNI.Solver_MAXIMIZATION_get();
4906 public final static int MINIMIZATION = mainJNI.Solver_MINIMIZATION_get();
4907
4908}
IntegerCastInfo(IntVar v, IntExpr e, Constraint c)
Definition Solver.java:262
Constraint makeIfThenElseCt(IntVar condition, IntExpr then_expr, IntExpr else_expr, IntVar target_var)
Definition Solver.java:1030
IntVar makeIsDifferentCstVar(IntExpr var, long value)
Definition Solver.java:1231
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1)
Definition Solver.java:3540
Constraint makeNotBetweenCt(IntExpr expr, long l, long u)
Definition Solver.java:1653
DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, int str)
Definition Solver.java:3408
Constraint makeTemporalDisjunction(IntervalVar t1, IntervalVar t2)
Definition Solver.java:2383
void exportProfilingOverview(String filename)
Definition Solver.java:4030
Constraint makeScalProdGreaterOrEqual(IntVar[] vars, long[] coeffs, long cst)
Definition Solver.java:1543
Constraint makeElementEquality(int[] vals, IntVar index, IntVar target)
Definition Solver.java:1578
ImprovementSearchLimit MakeImprovementLimit(IntVar objective_var, boolean maximize, double objective_scaling_factor, double objective_offset, double improvement_rate_coefficient, int improvement_rate_solutions_distance)
Definition Solver.java:2958
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3)
Definition Solver.java:3558
SolutionCollector makeNBestValueSolutionCollector(int solution_count, boolean maximize)
Definition Solver.java:2620
Decision makeScheduleOrPostpone(IntervalVar var, long est, SWIGTYPE_p_long marker)
Definition Solver.java:3366
Constraint makeDistribute(IntVar[] vars, long card_min, long card_max, long card_size)
Definition Solver.java:1781
LocalSearchOperator makeMoveTowardTargetOperator(IntVar[] variables, long[] target_values)
Definition Solver.java:3678
Constraint makeDistribute(IntVar[] vars, long[] card_min, long[] card_max)
Definition Solver.java:1791
Constraint makeCumulative(IntervalVar[] intervals, long[] demands, IntVar capacity, String name)
Definition Solver.java:2450
Constraint makeCumulative(IntervalVar[] intervals, int[] demands, IntVar capacity, String name)
Definition Solver.java:2466
void newSearch(DecisionBuilder db, SearchMonitor[] monitors)
Definition Solver.java:492
IntExpr makeMax(IntExpr left, IntExpr right)
Definition Solver.java:1078
Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, int[] final_states)
Definition Solver.java:2127
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition Solver.java:465
static final int INT_VALUE_DEFAULT
IntValueStrategy.
Definition Solver.java:4403
Constraint makeIntervalVarRelationWithDelay(IntervalVar t1, int r, IntervalVar t2, long delay)
Definition Solver.java:2364
IntExpr makeProd(IntExpr left, IntExpr right)
Definition Solver.java:910
Constraint makeIntervalVarRelation(IntervalVar t1, int r, IntervalVar t2)
Definition Solver.java:2353
static final int SEQUENCE_DEFAULT
SequenceStrategy.
Definition Solver.java:4471
IntVar makeIsEqualCstVar(IntExpr var, long value)
Definition Solver.java:1175
IntervalVar[] makeFixedDurationIntervalVarArray(int count, long start_min, long start_max, long duration, boolean optional, String name)
Definition Solver.java:180
Constraint makeNotMemberCt(IntExpr expr, int[] values)
Definition Solver.java:1693
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, int val_str)
Definition Solver.java:3292
IntervalVar makeFixedDurationEndSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition Solver.java:2277
SolutionCollector makeFirstSolutionCollector(Assignment assignment)
Definition Solver.java:2538
OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, int[] weights, long step)
Definition Solver.java:2725
DisjunctiveConstraint makeStrictDisjunctiveConstraint(IntervalVar[] intervals, String name)
Definition Solver.java:2402
Decision makeSplitVariableDomain(IntVar var, long val, boolean start_with_lower_half)
Definition Solver.java:3132
IntExpr makeConditionalExpression(IntVar condition, IntExpr expr, long unperformed_value)
Definition Solver.java:1138
Constraint makeScalProdLessOrEqual(IntVar[] vars, long[] coefficients, long cst)
Definition Solver.java:1553
Constraint makeIsBetweenCt(IntExpr expr, long l, long u, IntVar b)
Definition Solver.java:1661
SearchMonitor makeSymmetryManager(SymmetryBreaker[] visitors)
Definition Solver.java:3089
SolutionCollector makeBestValueSolutionCollector(Assignment assignment, boolean maximize)
Definition Solver.java:2575
DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, DecisionBuilder first_solution_sub_decision_builder, LocalSearchPhaseParameters parameters)
Definition Solver.java:3816
Constraint makeDeviation(IntVar[] vars, IntVar deviation_var, long total_sum)
Definition Solver.java:1832
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3)
Definition Solver.java:3192
DecisionBuilder makePhase(IntVar v0, int var_str, int val_str)
Definition Solver.java:3339
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2)
Definition Solver.java:3182
Constraint makeAbsEquality(IntVar var, IntVar abs_var)
Definition Solver.java:1596
SolutionCollector makeBestValueSolutionCollector(boolean maximize)
Definition Solver.java:2596
Decision makeVariableGreaterOrEqualValue(IntVar var, long value)
Definition Solver.java:3127
Constraint makeMemberCt(IntExpr expr, long[] values)
Definition Solver.java:1675
SearchMonitor makeSearchTrace(String prefix)
Definition Solver.java:3047
DecisionBuilder makePhase(SequenceVar[] sequences, int str)
Definition Solver.java:3435
IntervalVar makeIntervalRelaxedMax(IntervalVar interval_var)
Definition Solver.java:2336
IntVar makeIsLessOrEqualCstVar(IntExpr var, long value)
Definition Solver.java:1287
Constraint makeIsMemberCt(IntExpr expr, long[] values, IntVar boolvar)
Definition Solver.java:1717
SolutionCollector makeLastSolutionCollector()
Definition Solver.java:2564
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor[] monitors)
Definition Solver.java:3576
SWIGTYPE_p_operations_research__ConstraintSolverParameters const_parameters()
Definition Solver.java:322
IntervalVar makeFixedInterval(long start, long duration, String name)
Definition Solver.java:2226
Constraint makeLexicalLess(IntVar[] left, IntVar[] right)
Definition Solver.java:1891
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, int filter_enum)
Definition Solver.java:3940
Constraint makeSumLessOrEqual(IntVar[] vars, long cst)
Definition Solver.java:1503
Decision makeAssignVariablesValues(IntVar[] vars, long[] values)
Definition Solver.java:3147
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_int_const_t x_size, SWIGTYPE_p_absl__SpanT_int_const_t y_size)
Definition Solver.java:2152
LocalSearchOperator randomConcatenateOperators(LocalSearchOperator[] ops, int seed)
Definition Solver.java:3743
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2)
Definition Solver.java:3486
IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, IntVar performed_variable, String name)
Definition Solver.java:2218
Decision MakeAssignVariablesValuesOrDoNothing(IntVar[] vars, long[] values)
Definition Solver.java:3152
Constraint makeSumEquality(IntVar[] vars, IntVar var)
Definition Solver.java:1518
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step)
Definition Solver.java:3531
Constraint makeIsGreaterOrEqualCt(IntExpr left, IntExpr right, IntVar b)
Definition Solver.java:1359
void newSearch(DecisionBuilder db, SearchMonitor m1)
Definition Solver.java:508
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition Solver.java:595
OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, int[] weights, long step)
Definition Solver.java:2693
Constraint makeSubCircuit(IntVar[] nexts)
Definition Solver.java:2022
Constraint makeMinEquality(IntVar[] vars, IntVar min_var)
Definition Solver.java:1563
IntVar makeIntVar(long[] values, String name)
Definition Solver.java:774
static final int TWOOPT
LocalSearchOperators.
Definition Solver.java:4518
Constraint makeIsLessCt(IntExpr left, IntExpr right, IntVar b)
Definition Solver.java:1471
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3, SymmetryBreaker v4)
Definition Solver.java:3109
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size)
Definition Solver.java:2167
IntExpr makeElement(int[] values, IntVar index)
Definition Solver.java:974
Decision MakeAssignVariablesValuesOrFail(IntVar[] vars, long[] values)
Definition Solver.java:3157
IntExpr makeModulo(IntExpr x, long mod)
Definition Solver.java:1122
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit)
Definition Solver.java:3904
IntervalVar makeIntervalVar(long start_min, long start_max, long duration_min, long duration_max, long end_min, long end_max, boolean optional, String name)
Definition Solver.java:2235
Constraint makeNotMemberCt(IntExpr expr, int[] starts, int[] ends)
Definition Solver.java:1709
Constraint makeIsLessOrEqualCt(IntExpr left, IntExpr right, IntVar b)
Definition Solver.java:1303
Constraint makeCount(IntVar[] vars, long value, IntVar max_count)
Definition Solver.java:1748
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition Solver.java:587
LocalSearchOperator makeMoveTowardTargetOperator(Assignment target)
Definition Solver.java:3665
SearchLimit makeLimit(SearchLimit limit_1, SearchLimit limit_2)
Definition Solver.java:2947
Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, IntVar target)
Definition Solver.java:1538
DecisionBuilder makeSolveOnce(DecisionBuilder db)
Definition Solver.java:3468
SolutionCollector MakeNBestLexicographicValueSolutionCollector(Assignment assignment, int solution_count, SWIGTYPE_p_std__vectorT_bool_t maximize)
Definition Solver.java:2629
RegularLimit makeBranchesLimit(long branches)
Definition Solver.java:2853
void addCastConstraint(CastConstraint constraint, IntVar target_var, IntExpr expr)
Definition Solver.java:386
Solver(long cPtr, boolean cMemoryOwn)
Definition Solver.java:80
SolutionCollector MakeBestLexicographicValueSolutionCollector(SWIGTYPE_p_std__vectorT_bool_t maximize)
Definition Solver.java:2605
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops, IntIntToLongFunction evaluator)
Definition Solver.java:3724
Constraint makeIsLessCstCt(IntExpr v, long c, IntVar b)
Definition Solver.java:1447
IntExpr makeElement(LongBinaryOperator values, IntVar index1, IntVar index2)
Definition Solver.java:1005
IntVar makeIsMemberVar(IntExpr expr, long[] values)
Definition Solver.java:1727
Constraint makeIsLessOrEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition Solver.java:1279
SearchLimit makeCustomLimit(BooleanSupplier limiter)
Definition Solver.java:2976
Constraint makeNullIntersect(IntVar[] first_vars, IntVar[] second_vars)
Definition Solver.java:1956
SearchMonitor makeSearchLog(int branch_period)
Definition Solver.java:2985
IntExpr makeElement(long[] values, IntVar index)
Definition Solver.java:966
ObjectiveMonitor makeGenericTabuSearch(boolean maximize, IntVar v, long step, IntVar[] tabu_vars, long forbid_tenure)
Definition Solver.java:2771
IntVar makeIsDifferentCstVar(IntExpr v1, IntExpr v2)
Definition Solver.java:1239
Constraint makeCount(IntVar[] vars, long value, long max_count)
Definition Solver.java:1740
Constraint makeMemberCt(IntExpr expr, int[] values)
Definition Solver.java:1680
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_long_const_t x_size, SWIGTYPE_p_absl__SpanT_long_const_t y_size)
Definition Solver.java:2147
Assignment makeAssignment(Assignment a)
Definition Solver.java:2530
ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor, boolean reset_penalties_on_new_best_solution)
Definition Solver.java:2807
Constraint makeLessOrEqual(IntExpr expr, int value)
Definition Solver.java:1327
IntExpr makeMin(IntExpr expr, int value)
Definition Solver.java:1062
static long swigRelease(Solver obj)
Definition Solver.java:89
Constraint makeSumGreaterOrEqual(IntVar[] vars, long cst)
Definition Solver.java:1508
Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, long cst)
Definition Solver.java:1528
LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables)
Definition Solver.java:3648
Constraint makeCircuit(IntVar[] nexts)
Definition Solver.java:2013
RegularLimit makeLimit(long time, long branches, long failures, long solutions)
Definition Solver.java:2921
Constraint makeGreaterOrEqual(IntExpr left, IntExpr right)
Definition Solver.java:1367
Constraint makeLess(IntExpr expr, int value)
Definition Solver.java:1495
Constraint makeCover(IntervalVar[] vars, IntervalVar target_var)
Definition Solver.java:2506
Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, long cst)
Definition Solver.java:1523
Constraint makeSortingConstraint(IntVar[] vars, IntVar[] sorted)
Definition Solver.java:1882
OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, long[] weights, long step)
Definition Solver.java:2701
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3)
Definition Solver.java:3104
IntExpr makeElement(IntVar[] vars, IntVar index)
Definition Solver.java:1013
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator)
Definition Solver.java:3297
static final int INT_VAR_DEFAULT
IntVarStrategy.
Definition Solver.java:4306
IntExpr makeProd(IntExpr expr, long value)
Definition Solver.java:918
LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables, int seed)
Definition Solver.java:3653
IntExpr makeDiv(IntExpr numerator, IntExpr denominator)
Definition Solver.java:934
Constraint makeEquality(IntervalVar var1, IntervalVar var2)
Definition Solver.java:2514
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2)
Definition Solver.java:3099
Constraint makeIndexOfFirstMinValueConstraint(IntVar index, IntVar[] vars)
Definition Solver.java:1945
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, int filter_enum)
Definition Solver.java:3945
IntVar[] makeBoolVarArray(int count, String name)
Definition Solver.java:155
IntExpr makeConvexPiecewiseExpr(IntExpr expr, long early_cost, long early_date, long late_date, long late_cost)
Definition Solver.java:1102
IntervalVar makeIntervalRelaxedMin(IntervalVar interval_var)
Definition Solver.java:2312
RegularLimit makeTimeLimit(SWIGTYPE_p_absl__Duration time)
Definition Solver.java:2839
LocalSearchOperator MultiArmedBanditConcatenateOperators(LocalSearchOperator[] ops, double memory_coefficient, double exploration_coefficient, boolean maximize)
Definition Solver.java:3757
IntervalVar makeFixedDurationStartSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition Solver.java:2255
Constraint makeScalProdGreaterOrEqual(IntVar[] vars, int[] coeffs, long cst)
Definition Solver.java:1548
Constraint makeNullIntersectExcept(IntVar[] first_vars, IntVar[] second_vars, long escape_value)
Definition Solver.java:1968
RegularLimit makeLimit(com.google.ortools.constraintsolver.RegularLimitParameters proto)
Definition Solver.java:2906
boolean solveAndCommit(DecisionBuilder db, SearchMonitor[] monitors)
Definition Solver.java:563
IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, String name)
Definition Solver.java:2209
SearchMonitor makeLubyRestart(int scale_factor)
Definition Solver.java:2822
OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, int[] weights, long step)
Definition Solver.java:2709
ObjectiveMonitor makeSimulatedAnnealing(boolean maximize, IntVar v, long step, long initial_temperature)
Definition Solver.java:2779
SearchMonitor makeAtSolutionCallback(Runnable callback)
Definition Solver.java:3065
static final int DELAYED_PRIORITY
DemonPriority.
Definition Solver.java:4723
RegularLimit makeSolutionsLimit(long solutions)
Definition Solver.java:2871
LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator evaluator, int op)
Definition Solver.java:3634
Constraint makeLess(IntExpr expr, long value)
Definition Solver.java:1487
Constraint makeIndexOfFirstMaxValueConstraint(IntVar index, IntVar[] vars)
Definition Solver.java:1936
SearchMonitor makeSearchLog(int branch_period, IntVar[] vars, Supplier< String > display_callback)
Definition Solver.java:3020
RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative)
Definition Solver.java:2880
Constraint makePathConnected(IntVar[] nexts, long[] sources, long[] sinks, IntVar[] status)
Definition Solver.java:2078
RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check)
Definition Solver.java:2916
Constraint makeCumulative(IntervalVar[] intervals, long[] demands, long capacity, String name)
Definition Solver.java:2418
IntervalVar makeFixedDurationEndSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition Solver.java:2288
IntVar makeIsLessVar(IntExpr left, IntExpr right)
Definition Solver.java:1463
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit, LocalSearchFilterManager filter_manager)
Definition Solver.java:3886
Constraint MakeIsLexicalLessOrEqualWithOffsetsCt(IntVar[] left, IntVar[] right, long[] offsets, IntVar boolvar)
Definition Solver.java:1916
IntExpr makeMin(IntExpr expr, long value)
Definition Solver.java:1054
Constraint makeGreaterOrEqual(IntExpr expr, int value)
Definition Solver.java:1383
static final int ENDS_AFTER_END
BinaryIntervalRelation.
Definition Solver.java:4742
Pack makePack(IntVar[] vars, int number_of_bins)
Definition Solver.java:2189
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_int_const_t x_size, SWIGTYPE_p_absl__SpanT_int_const_t y_size)
Definition Solver.java:2177
IntExpr makeSemiContinuousExpr(IntExpr expr, long fixed_charge, long step)
Definition Solver.java:1111
OptimizeVar makeMinimize(IntVar v, long step)
Definition Solver.java:2659
IntervalVar registerIntervalVar(IntervalVar var)
Definition Solver.java:4127
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3)
Definition Solver.java:3495
Decision MakeAssignVariableValueOrDoNothing(IntVar var, long value)
Definition Solver.java:3142
IntVar makeIntVar(long min, long max, String name)
Definition Solver.java:766
SearchMonitor makeExitSearchCallback(Runnable callback)
Definition Solver.java:3060
DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, int var_str, int val_str)
Definition Solver.java:3349
static final int NO_CHANGE
DecisionModification.
Definition Solver.java:4834
IntVar makeIsGreaterOrEqualCstVar(IntExpr var, long value)
Definition Solver.java:1343
boolean checkAssignment(Assignment solution)
Definition Solver.java:606
RegularLimit makeTimeLimit(long time_in_ms)
Definition Solver.java:2844
LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t get_neighbors)
Definition Solver.java:3619
Constraint makeBetweenCt(IntExpr expr, long l, long u)
Definition Solver.java:1642
DecisionBuilder makePhase(IntVar v0, IntVar v1, int var_str, int val_str)
Definition Solver.java:3344
IntervalVar makeFixedDurationStartSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition Solver.java:2266
DecisionBuilder makePhase(IntVar[] vars, int var_str, int val_str)
Definition Solver.java:3287
SolutionCollector makeFirstSolutionCollector()
Definition Solver.java:2547
void accept(ModelVisitor visitor)
Definition Solver.java:4061
Constraint makeInversePermutationConstraint(IntVar[] left, IntVar[] right)
Definition Solver.java:1927
Demon makeDelayedConstraintInitialPropagateCallback(Constraint ct)
Definition Solver.java:1626
boolean checkConstraint(Constraint ct)
Definition Solver.java:615
Constraint makeGreater(IntExpr expr, int value)
Definition Solver.java:1439
Decision makeRankLastInterval(SequenceVar sequence, int index)
Definition Solver.java:3396
void addLocalSearchMonitor(LocalSearchMonitor monitor)
Definition Solver.java:4210
Constraint makeNonEquality(IntExpr expr, int value)
Definition Solver.java:1271
Constraint makeIsGreaterCt(IntExpr left, IntExpr right, IntVar b)
Definition Solver.java:1415
RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions)
Definition Solver.java:2898
IntVar makeIsLessOrEqualVar(IntExpr left, IntExpr right)
Definition Solver.java:1295
boolean solveAndCommit(DecisionBuilder db)
Definition Solver.java:571
Constraint makeIntervalVarRelation(IntervalVar t, int r, long d)
Definition Solver.java:2345
Constraint makeDistribute(IntVar[] vars, int[] card_min, int[] card_max)
Definition Solver.java:1801
void addPropagationMonitor(PropagationMonitor monitor)
Definition Solver.java:4194
DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, LongUnaryOperator tie_breaker, int str)
Definition Solver.java:3422
Constraint makeDistribute(IntVar[] vars, int[] values, IntVar[] cards)
Definition Solver.java:1764
RegularLimit makeLimit(SWIGTYPE_p_absl__Duration time, long branches, long failures, long solutions, boolean smart_time_check)
Definition Solver.java:2889
Constraint makeDistribute(IntVar[] vars, long[] values, IntVar[] cards)
Definition Solver.java:1756
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit, LocalSearchFilterManager filter_manager)
Definition Solver.java:3913
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder)
Definition Solver.java:3868
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4)
Definition Solver.java:3504
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4)
Definition Solver.java:473
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2)
Definition Solver.java:3549
static final int INTERVAL_DEFAULT
IntervalStrategy.
Definition Solver.java:4485
IntExpr makePower(IntExpr expr, long n)
Definition Solver.java:958
Constraint makeIsEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition Solver.java:1167
IntVar makeIsLessCstVar(IntExpr var, long value)
Definition Solver.java:1455
DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, LocalSearchPhaseParameters parameters)
Definition Solver.java:3804
SearchMonitor makeEnterSearchCallback(Runnable callback)
Definition Solver.java:3055
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops, boolean restart)
Definition Solver.java:3719
IntVar makeIsEqualVar(IntExpr v1, IntExpr v2)
Definition Solver.java:1191
RegularLimit makeFailuresLimit(long failures)
Definition Solver.java:2862
Constraint makeGreater(IntExpr expr, long value)
Definition Solver.java:1431
IntervalVar makeFixedDurationIntervalVar(long start_min, long start_max, long duration, boolean optional, String name)
Definition Solver.java:2200
SolutionCollector makeAllSolutionCollector(Assignment assignment)
Definition Solver.java:2642
Constraint makeEquality(IntExpr expr, int value)
Definition Solver.java:1215
ObjectiveMonitor makeTabuSearch(boolean maximize, IntVar objective, long step, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor)
Definition Solver.java:2757
Constraint makeLess(IntExpr left, IntExpr right)
Definition Solver.java:1479
IntVar makeIsGreaterOrEqualVar(IntExpr left, IntExpr right)
Definition Solver.java:1351
SolutionCollector MakeNBestLexicographicValueSolutionCollector(int solution_count, SWIGTYPE_p_std__vectorT_bool_t maximize)
Definition Solver.java:2634
static final int LK
EvaluatorLocalSearchOperators.
Definition Solver.java:4670
void newSearch(DecisionBuilder db)
Definition Solver.java:500
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3, DecisionBuilder db4)
Definition Solver.java:3203
Constraint makeCumulative(IntervalVar[] intervals, int[] demands, long capacity, String name)
Definition Solver.java:2434
Constraint makeIsDifferentCstCt(IntExpr v1, IntExpr v2, IntVar b)
Definition Solver.java:1247
Constraint makeGreaterOrEqual(IntExpr expr, long value)
Definition Solver.java:1375
Constraint makeIsDifferentCstCt(IntExpr var, long value, IntVar boolvar)
Definition Solver.java:1223
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits)
Definition Solver.java:2033
Constraint makeEquality(IntExpr left, IntExpr right)
Definition Solver.java:1199
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongTernaryPredicate var_val1_val2_comparator)
Definition Solver.java:3306
Constraint makeMapDomain(IntVar var, IntVar[] actives)
Definition Solver.java:2088
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops)
Definition Solver.java:3714
static final int SENTINEL
MarkerType.
Definition Solver.java:4864
IntExpr makeDifference(IntExpr left, IntExpr right)
Definition Solver.java:886
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor[] monitors)
Definition Solver.java:3513
DecisionBuilder compose(DecisionBuilder[] dbs)
Definition Solver.java:3215
OptimizeVar MakeLexicographicOptimize(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] variables, long[] steps)
Definition Solver.java:2734
SearchMonitor makeSearchLog(int branch_period, IntVar var, Supplier< String > display_callback)
Definition Solver.java:3011
Constraint makeElementEquality(IntVar[] vars, IntVar index, long target)
Definition Solver.java:1588
IntExpr makeMax(IntExpr expr, long value)
Definition Solver.java:1086
Constraint makeLessOrEqual(IntExpr left, IntExpr right)
Definition Solver.java:1311
Constraint makeAllDifferent(IntVar[] vars)
Definition Solver.java:1841
IntExpr makeDiv(IntExpr expr, long value)
Definition Solver.java:926
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4)
Definition Solver.java:532
Constraint makeIsMemberCt(IntExpr expr, int[] values, IntVar boolvar)
Definition Solver.java:1722
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler, boolean assume_paths)
Definition Solver.java:2005
Decision makeRankFirstInterval(SequenceVar sequence, int index)
Definition Solver.java:3387
Constraint makeFalseConstraint(String explanation)
Definition Solver.java:1159
IntExpr makeSum(IntExpr left, IntExpr right)
Definition Solver.java:846
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1)
Definition Solver.java:3477
IntExpr makeMax(IntExpr expr, int value)
Definition Solver.java:1094
Constraint makeAllDifferent(IntVar[] vars, boolean stronger_propagation)
Definition Solver.java:1851
ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor, boolean reset_penalties_on_new_best_solution)
Definition Solver.java:2793
IntExpr makeSum(IntExpr expr, long value)
Definition Solver.java:854
DecisionBuilder makePhase(IntervalVar[] intervals, int str)
Definition Solver.java:3430
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3)
Definition Solver.java:3251
Decision makeScheduleOrExpedite(IntervalVar var, long est, SWIGTYPE_p_long marker)
Definition Solver.java:3378
Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, long capacity, String name)
Definition Solver.java:2480
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker)
Definition Solver.java:3316
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1)
Definition Solver.java:579
ImprovementSearchLimit MakeLexicographicImprovementLimit(IntVar[] objective_vars, SWIGTYPE_p_std__vectorT_bool_t maximize, double[] objective_scaling_factors, double[] objective_offsets, double improvement_rate_coefficient, int improvement_rate_solutions_distance)
Definition Solver.java:2967
boolean solve(DecisionBuilder db, SearchMonitor[] monitors)
Definition Solver.java:433
static com.google.ortools.constraintsolver.ConstraintSolverParameters defaultSolverParameters()
Definition Solver.java:329
ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor)
Definition Solver.java:2802
DecisionBuilder makeLocalSearchPhase(SequenceVar[] vars, DecisionBuilder first_solution, LocalSearchPhaseParameters parameters)
Definition Solver.java:3826
SearchMonitor makeSearchLog(int branch_period, IntVar var)
Definition Solver.java:2993
Constraint makeNotMemberCt(IntExpr expr, long[] starts, long[] ends)
Definition Solver.java:1701
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator)
Definition Solver.java:3311
Constraint makeIsEqualVar(IntExpr v1, IntExpr v2, IntVar b)
Definition Solver.java:1183
boolean solve(DecisionBuilder db)
Definition Solver.java:441
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, LongBinaryOperator transit_evaluator)
Definition Solver.java:2055
boolean solve(DecisionBuilder db, SearchMonitor m1)
Definition Solver.java:449
void SetUseFastLocalSearch(boolean use_fast_local_search)
Definition Solver.java:4081
static final int CHOOSE_STATIC_GLOBAL_BEST
EvaluatorStrategy.
Definition Solver.java:4457
Constraint makeLexicalLessOrEqual(IntVar[] left, IntVar[] right)
Definition Solver.java:1900
Constraint makeAllDifferentExcept(IntVar[] vars, long escape_value)
Definition Solver.java:1860
DecisionBuilder tryDecisions(DecisionBuilder[] dbs)
Definition Solver.java:3274
DecisionBuilder makeDefaultPhase(IntVar[] vars, DefaultPhaseParameters parameters)
Definition Solver.java:3331
IntExpr makeMin(IntExpr left, IntExpr right)
Definition Solver.java:1046
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit)
Definition Solver.java:3877
SolutionCollector makeNBestValueSolutionCollector(Assignment assignment, int solution_count, boolean maximize)
Definition Solver.java:2615
com.google.ortools.constraintsolver.RegularLimitParameters makeDefaultRegularLimitParameters()
Definition Solver.java:2929
OptimizeVar makeMaximize(IntVar v, long step)
Definition Solver.java:2667
Constraint makeLessOrEqual(IntExpr expr, long value)
Definition Solver.java:1319
DecisionBuilder makeConstraintAdder(Constraint ct)
Definition Solver.java:3457
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler)
Definition Solver.java:1984
Assignment RunUncheckedLocalSearch(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit)
Definition Solver.java:3852
Constraint makeNonEquality(IntExpr left, IntExpr right)
Definition Solver.java:1255
boolean hasName(PropagationBaseObject object)
Definition Solver.java:4095
IntVar makeIntVar(int[] values, String name)
Definition Solver.java:782
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] slacks, LongBinaryOperator transit_evaluator)
Definition Solver.java:2068
SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var)
Definition Solver.java:3029
Constraint makeElementEquality(long[] vals, IntVar index, IntVar target)
Definition Solver.java:1573
Constraint makeDistribute(IntVar[] vars, long[] values, long[] card_min, long[] card_max)
Definition Solver.java:1811
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition Solver.java:516
Constraint makeDistribute(IntVar[] vars, IntVar[] cards)
Definition Solver.java:1772
IntExpr makeDifference(long value, IntExpr expr)
Definition Solver.java:894
Solver(String name, com.google.ortools.constraintsolver.ConstraintSolverParameters parameters)
Definition Solver.java:302
DecisionBuilder makeLocalSearchPhase(Assignment assignment, LocalSearchPhaseParameters parameters)
Definition Solver.java:3799
Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, IntVar target)
Definition Solver.java:1533
IntVar makeIntVar(long min, long max)
Definition Solver.java:790
SearchMonitor makeSymmetryManager(SymmetryBreaker v1)
Definition Solver.java:3094
SearchMonitor makeConstantRestart(int frequency)
Definition Solver.java:2831
IntExpr makeElement(LongUnaryOperator values, IntVar index)
Definition Solver.java:984
LocalSearchOperator makeOperator(IntVar[] vars, LongTernaryOperator evaluator, int op)
Definition Solver.java:3629
IntExpr makeModulo(IntExpr x, IntExpr mod)
Definition Solver.java:1130
static final int NOT_SET
OptimizationDirection.
Definition Solver.java:4904
LocalSearchOperator randomConcatenateOperators(LocalSearchOperator[] ops)
Definition Solver.java:3733
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(IntVar objective, SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder)
Definition Solver.java:3895
Constraint makeAllowedAssignment(IntVar[] vars, IntTupleSet tuples)
Definition Solver.java:2099
Constraint makeIndexOfConstraint(IntVar[] vars, IntVar index, long target)
Definition Solver.java:1607
Assignment RunUncheckedLocalSearch(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit, SWIGTYPE_p_absl__flat_hash_setT_operations_research__IntVar_p_t touched)
Definition Solver.java:3841
Constraint makeGreater(IntExpr left, IntExpr right)
Definition Solver.java:1423
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, SWIGTYPE_p_absl__SpanT_long_const_t x_size, SWIGTYPE_p_absl__SpanT_long_const_t y_size)
Definition Solver.java:2172
Constraint makeIsGreaterOrEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition Solver.java:1335
ObjectiveMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor)
Definition Solver.java:2812
void set_optimization_direction(int direction)
Definition Solver.java:759
DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, IntVar v3, int var_str, int val_str)
Definition Solver.java:3354
LocalSearchOperator makeOperator(IntVar[] vars, int op)
Definition Solver.java:3614
IntExpr makeMonotonicElement(LongUnaryOperator values, boolean increasing, IntVar index)
Definition Solver.java:997
static final int GE
LocalSearchFilterBound.
Definition Solver.java:4701
Decision makeAssignVariableValueOrFail(IntVar var, long value)
Definition Solver.java:3137
Constraint makeMaxEquality(IntVar[] vars, IntVar max_var)
Definition Solver.java:1568
Constraint makeSumEquality(IntVar[] vars, long cst)
Definition Solver.java:1513
Constraint makeNotMemberCt(IntExpr expr, long[] values)
Definition Solver.java:1688
Decision makeAssignVariableValue(IntVar var, long val)
Definition Solver.java:3117
void keepAliveDecisionBuilder(DecisionBuilder db)
Definition Solver.java:200
Constraint MakeLexicalLessOrEqualWithOffsets(IntVar[] left, IntVar[] right, long[] offsets)
Definition Solver.java:1911
DecisionBuilder makeDefaultPhase(IntVar[] vars)
Definition Solver.java:3326
Constraint makeEquality(IntExpr expr, long value)
Definition Solver.java:1207
static final int OUTSIDE_SEARCH
SolverState.
Definition Solver.java:4877
LocalSearchOperator makeNeighborhoodLimit(LocalSearchOperator op, long limit)
Definition Solver.java:3769
Constraint makeDelayedPathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits)
Definition Solver.java:2042
Constraint makeScalProdLessOrEqual(IntVar[] vars, int[] coefficients, long cst)
Definition Solver.java:1558
IntVar[] makeIntVarArray(int count, long min, long max, String name)
Definition Solver.java:138
SolutionCollector MakeBestLexicographicValueSolutionCollector(Assignment assignment, SWIGTYPE_p_std__vectorT_bool_t maximize)
Definition Solver.java:2584
ObjectiveMonitor MakeLexicographicTabuSearch(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] objectives, long[] steps, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor)
Definition Solver.java:2762
SolutionCollector makeLastSolutionCollector(Assignment assignment)
Definition Solver.java:2555
Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, IntVar capacity, String name)
Definition Solver.java:2494
ObjectiveMonitor MakeLexicographicSimulatedAnnealing(SWIGTYPE_p_std__vectorT_bool_t maximize, IntVar[] vars, long[] steps, long[] initial_temperatures)
Definition Solver.java:2784
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4)
Definition Solver.java:3567
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2)
Definition Solver.java:3241
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3, DecisionBuilder db4)
Definition Solver.java:3262
DecisionBuilder makeRestoreAssignment(Assignment assignment)
Definition Solver.java:3589
Demon makeConstraintInitialPropagateCallback(Constraint ct)
Definition Solver.java:1616
Decision makeDecision(Consumer< Solver > apply, Consumer< Solver > refute)
Definition Solver.java:3167
LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op)
Definition Solver.java:3624
com.google.ortools.constraintsolver.ConstraintSolverParameters parameters()
Definition Solver.java:309
DisjunctiveConstraint makeDisjunctiveConstraint(IntervalVar[] intervals, String name)
Definition Solver.java:2392
Constraint makeTemporalDisjunction(IntervalVar t1, IntervalVar t2, IntVar alt)
Definition Solver.java:2374
Decision makeVariableLessOrEqualValue(IntVar var, long value)
Definition Solver.java:3122
IntVar[] makeIntVarArray(int count, long min, long max)
Definition Solver.java:130
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker)
Definition Solver.java:3321
IntVar makeIsBetweenVar(IntExpr v, long l, long u)
Definition Solver.java:1666
IntExpr makeScalProd(IntVar[] vars, int[] coefs)
Definition Solver.java:878
IntVar makeIntConst(long val, String name)
Definition Solver.java:830
Demon makeClosureDemon(Runnable closure)
Definition Solver.java:1634
OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, long[] weights, long step)
Definition Solver.java:2684
Constraint makeNonEquality(IntExpr expr, long value)
Definition Solver.java:1263
IntVar makeIsGreaterVar(IntExpr left, IntExpr right)
Definition Solver.java:1407
Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, long[] final_states)
Definition Solver.java:2113
SearchMonitor makeSearchLog(int branch_period, Supplier< String > display_callback)
Definition Solver.java:3002
Constraint makeIsGreaterCstCt(IntExpr v, long c, IntVar b)
Definition Solver.java:1391
LocalSearchOperator makeOperator(IntVar[] vars, int op, SWIGTYPE_p_std__functionT_std__vectorT_int_t_const_Rfint_intF_t get_neighbors)
Definition Solver.java:3606
static final int ENDS_AFTER
UnaryIntervalRelation.
Definition Solver.java:4787
IntervalVar[] makeFixedDurationIntervalVarArray(int count, long start_min, long start_max, long duration, boolean optional)
Definition Solver.java:164
OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, long[] weights, long step)
Definition Solver.java:2717
Constraint makeElementEquality(IntVar[] vars, IntVar index, IntVar target)
Definition Solver.java:1583
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition Solver.java:457
SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var, Supplier< String > display_callback)
Definition Solver.java:3038
RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative)
Definition Solver.java:2911
Constraint makeDistribute(IntVar[] vars, int[] values, int[] card_min, int[] card_max)
Definition Solver.java:1821
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition Solver.java:524
DecisionBuilder makeStoreAssignment(Assignment assignment)
Definition Solver.java:3598
IntVar makeIsGreaterCstVar(IntExpr var, long value)
Definition Solver.java:1399
void keepAliveDecisionBuilder(DecisionBuilder[] dbs)
Definition Solver.java:206
IntVar makeIsMemberVar(IntExpr expr, int[] values)
Definition Solver.java:1732
IntExpr makeIndexExpression(IntVar[] vars, long value)
Definition Solver.java:1022
IntExpr makeScalProd(IntVar[] vars, long[] coefs)
Definition Solver.java:870
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size)
Definition Solver.java:2142
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active)
Definition Solver.java:2000
DecisionBuilder MakeProfiledDecisionBuilderWrapper(DecisionBuilder db)
Definition Solver.java:4284
IntervalVar makeMirrorInterval(IntervalVar interval_var)
Definition Solver.java:2244
DecisionBuilder makeDecisionBuilderFromAssignment(Assignment assignment, DecisionBuilder db, IntVar[] vars)
Definition Solver.java:3444
OptimizeVar makeOptimize(boolean maximize, IntVar v, long step)
Definition Solver.java:2675