4 package com.google.ortools.sat;
16 com.google.protobuf.GeneratedMessageV3 implements
19 private static final long serialVersionUID = 0L;
25 preferredVariableOrder_ = 0;
27 usePhaseSaving_ =
true;
28 minimizationAlgorithm_ = 2;
29 binaryMinimizationAlgorithm_ = 1;
30 subsumptionDuringConflictAnalysis_ =
true;
31 clauseCleanupPeriod_ = 10000;
32 clauseCleanupTarget_ = 10000;
33 clauseCleanupProtection_ = 0;
34 clauseCleanupLbdBound_ = 5;
35 clauseCleanupOrdering_ = 0;
36 pbCleanupIncrement_ = 200;
37 pbCleanupRatio_ = 0.5D;
38 minimizeWithPropagationRestartPeriod_ = 10;
39 minimizeWithPropagationNumDecisions_ = 1000;
40 variableActivityDecay_ = 0.8D;
41 maxVariableActivityValue_ = 1e+100D;
42 glucoseMaxDecay_ = 0.95D;
43 glucoseDecayIncrement_ = 0.01D;
44 glucoseDecayIncrementPeriod_ = 5000;
45 clauseActivityDecay_ = 0.999D;
46 maxClauseActivityValue_ = 1e+20D;
47 restartAlgorithms_ = java.util.Collections.emptyList();
48 defaultRestartAlgorithms_ =
"LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART";
50 restartRunningWindowSize_ = 50;
51 restartDlAverageRatio_ = 1D;
52 restartLbdAverageRatio_ = 1D;
53 blockingRestartWindowSize_ = 5000;
54 blockingRestartMultiplier_ = 1.4D;
55 maxTimeInSeconds_ = Double.POSITIVE_INFINITY;
56 maxDeterministicTime_ = Double.POSITIVE_INFINITY;
57 maxNumberOfConflicts_ = 9223372036854775807L;
58 maxMemoryInMb_ = 10000L;
59 treatBinaryClausesSeparately_ =
true;
61 countAssumptionLevelsInLbd_ =
true;
62 presolveBveThreshold_ = 500;
63 presolveBveClauseWeight_ = 3;
64 presolveProbingDeterministicTimeLimit_ = 30D;
65 presolveBlockedClause_ =
true;
66 presolveUseBva_ =
true;
67 presolveBvaThreshold_ = 1;
68 useOptimizationHints_ =
true;
70 findMultipleCores_ =
true;
71 coverOptimization_ =
true;
72 maxSatAssumptionOrder_ = 0;
73 maxSatStratification_ = 1;
74 usePrecedencesInDisjunctiveConstraint_ =
true;
75 useDisjunctiveConstraintInCumulativeConstraint_ =
true;
76 linearizationLevel_ = 1;
77 booleanEncodingLevel_ = 1;
80 useMirRounding_ =
true;
81 maxIntegerRoundingScaling_ = 600;
82 addLpConstraintsLazily_ =
true;
83 maxInactiveCount_ = 1000L;
84 constraintRemovalBatchSize_ = 100L;
86 exploitIntegerLpSolution_ =
true;
87 exploitAllLpSolution_ =
true;
88 exploitObjective_ =
true;
89 pseudoCostReliabilityThreshold_ = 100L;
90 binarySearchNumConflicts_ = -1;
91 cpModelPresolve_ =
true;
92 cpModelProbingLevel_ = 2;
93 cpModelUseSatPresolve_ =
true;
94 instantiateAllVariables_ =
true;
95 autoDetectGreaterThanAtLeastOneOf_ =
true;
96 shareObjectiveBounds_ =
true;
97 shareLevelZeroBounds_ =
true;
99 useOptionalVariables_ =
true;
100 useExactLpReason_ =
true;
101 mipMaxBound_ = 10000000D;
103 mipWantedPrecision_ = 1e-06D;
104 mipMaxActivityExponent_ = 53;
105 mipCheckPrecision_ = 0.0001D;
109 public final com.
google.protobuf.UnknownFieldSet
111 return this.unknownFields;
114 com.
google.protobuf.CodedInputStream input,
115 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
116 throws com.
google.protobuf.InvalidProtocolBufferException {
118 if (extensionRegistry ==
null) {
119 throw new java.lang.NullPointerException();
121 int mutable_bitField0_ = 0;
122 int mutable_bitField1_ = 0;
123 int mutable_bitField2_ = 0;
124 int mutable_bitField3_ = 0;
125 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
126 com.
google.protobuf.UnknownFieldSet.newBuilder();
128 boolean done =
false;
130 int tag = input.readTag();
136 int rawValue = input.readEnum();
137 @SuppressWarnings(
"deprecation")
138 com.google.ortools.sat.SatParameters.VariableOrder value =
com.google.ortools.sat.SatParameters.VariableOrder.valueOf(rawValue);
140 unknownFields.mergeVarintField(1, rawValue);
142 bitField0_ |= 0x00000001;
143 preferredVariableOrder_ = rawValue;
148 int rawValue = input.readEnum();
149 @SuppressWarnings(
"deprecation")
150 com.google.ortools.sat.SatParameters.Polarity value =
com.google.ortools.sat.SatParameters.Polarity.valueOf(rawValue);
152 unknownFields.mergeVarintField(2, rawValue);
154 bitField0_ |= 0x00000002;
155 initialPolarity_ = rawValue;
160 int rawValue = input.readEnum();
161 @SuppressWarnings(
"deprecation")
162 com.google.ortools.sat.SatParameters.ConflictMinimizationAlgorithm value =
com.google.ortools.sat.SatParameters.ConflictMinimizationAlgorithm.valueOf(rawValue);
164 unknownFields.mergeVarintField(4, rawValue);
166 bitField0_ |= 0x00000100;
167 minimizationAlgorithm_ = rawValue;
172 bitField0_ |= 0x00000800;
173 clauseCleanupPeriod_ = input.readInt32();
177 bitField0_ |= 0x00001000;
178 clauseCleanupTarget_ = input.readInt32();
182 bitField0_ |= 0x00100000;
183 variableActivityDecay_ = input.readDouble();
187 bitField0_ |= 0x00200000;
188 maxVariableActivityValue_ = input.readDouble();
192 bitField0_ |= 0x02000000;
193 clauseActivityDecay_ = input.readDouble();
197 bitField0_ |= 0x04000000;
198 maxClauseActivityValue_ = input.readDouble();
202 bitField0_ |= 0x00400000;
203 glucoseMaxDecay_ = input.readDouble();
207 bitField0_ |= 0x00800000;
208 glucoseDecayIncrement_ = input.readDouble();
212 bitField0_ |= 0x01000000;
213 glucoseDecayIncrementPeriod_ = input.readInt32();
217 bitField0_ |= 0x10000000;
218 restartPeriod_ = input.readInt32();
222 bitField1_ |= 0x00000400;
223 randomSeed_ = input.readInt32();
227 bitField0_ |= 0x00000010;
228 randomBranchesRatio_ = input.readDouble();
232 bitField1_ |= 0x00000200;
233 treatBinaryClausesSeparately_ = input.readBool();
237 int rawValue = input.readEnum();
238 @SuppressWarnings(
"deprecation")
239 com.google.ortools.sat.SatParameters.BinaryMinizationAlgorithm value =
com.google.ortools.sat.SatParameters.BinaryMinizationAlgorithm.valueOf(rawValue);
241 unknownFields.mergeVarintField(34, rawValue);
243 bitField0_ |= 0x00000200;
244 binaryMinimizationAlgorithm_ = rawValue;
249 bitField1_ |= 0x00200000;
250 useOptimizationHints_ = input.readBool();
254 bitField1_ |= 0x00000020;
255 maxTimeInSeconds_ = input.readDouble();
259 bitField1_ |= 0x00000080;
260 maxNumberOfConflicts_ = input.readInt64();
264 bitField1_ |= 0x00000100;
265 maxMemoryInMb_ = input.readInt64();
269 bitField1_ |= 0x00000800;
270 logSearchProgress_ = input.readBool();
274 bitField1_ |= 0x00001000;
275 usePbResolution_ = input.readBool();
279 bitField0_ |= 0x00000004;
280 usePhaseSaving_ = input.readBool();
284 bitField0_ |= 0x00000008;
285 randomPolarityRatio_ = input.readDouble();
289 bitField0_ |= 0x00010000;
290 pbCleanupIncrement_ = input.readInt32();
294 bitField0_ |= 0x00020000;
295 pbCleanupRatio_ = input.readDouble();
299 bitField1_ |= 0x00002000;
300 minimizeReductionDuringPbResolution_ = input.readBool();
304 bitField1_ |= 0x00004000;
305 countAssumptionLevelsInLbd_ = input.readBool();
309 bitField1_ |= 0x00400000;
310 minimizeCore_ = input.readBool();
314 int rawValue = input.readEnum();
315 @SuppressWarnings(
"deprecation")
316 com.google.ortools.sat.SatParameters.MaxSatAssumptionOrder value =
com.google.ortools.sat.SatParameters.MaxSatAssumptionOrder.valueOf(rawValue);
318 unknownFields.mergeVarintField(51, rawValue);
320 bitField1_ |= 0x02000000;
321 maxSatAssumptionOrder_ = rawValue;
326 bitField1_ |= 0x04000000;
327 maxSatReverseAssumptionOrder_ = input.readBool();
331 int rawValue = input.readEnum();
332 @SuppressWarnings(
"deprecation")
333 com.google.ortools.sat.SatParameters.MaxSatStratificationAlgorithm value =
com.google.ortools.sat.SatParameters.MaxSatStratificationAlgorithm.valueOf(rawValue);
335 unknownFields.mergeVarintField(53, rawValue);
337 bitField1_ |= 0x08000000;
338 maxSatStratification_ = rawValue;
343 bitField1_ |= 0x00008000;
344 presolveBveThreshold_ = input.readInt32();
348 bitField1_ |= 0x00010000;
349 presolveBveClauseWeight_ = input.readInt32();
353 bitField0_ |= 0x00000400;
354 subsumptionDuringConflictAnalysis_ = input.readBool();
358 bitField1_ |= 0x00020000;
359 presolveProbingDeterministicTimeLimit_ = input.readDouble();
363 int rawValue = input.readEnum();
364 @SuppressWarnings(
"deprecation")
365 com.google.ortools.sat.SatParameters.ClauseProtection value =
com.google.ortools.sat.SatParameters.ClauseProtection.valueOf(rawValue);
367 unknownFields.mergeVarintField(58, rawValue);
369 bitField0_ |= 0x00002000;
370 clauseCleanupProtection_ = rawValue;
375 bitField0_ |= 0x00004000;
376 clauseCleanupLbdBound_ = input.readInt32();
380 int rawValue = input.readEnum();
381 @SuppressWarnings(
"deprecation")
382 com.google.ortools.sat.SatParameters.ClauseOrdering value =
com.google.ortools.sat.SatParameters.ClauseOrdering.valueOf(rawValue);
384 unknownFields.mergeVarintField(60, rawValue);
386 bitField0_ |= 0x00008000;
387 clauseCleanupOrdering_ = rawValue;
392 int rawValue = input.readEnum();
393 @SuppressWarnings(
"deprecation")
394 com.google.ortools.sat.SatParameters.RestartAlgorithm value =
com.google.ortools.sat.SatParameters.RestartAlgorithm.valueOf(rawValue);
396 unknownFields.mergeVarintField(61, rawValue);
398 if (!((mutable_bitField0_ & 0x08000000) != 0)) {
399 restartAlgorithms_ =
new java.util.ArrayList<java.lang.Integer>();
400 mutable_bitField0_ |= 0x08000000;
402 restartAlgorithms_.add(rawValue);
407 int length = input.readRawVarint32();
408 int oldLimit = input.pushLimit(length);
409 while(input.getBytesUntilLimit() > 0) {
410 int rawValue = input.readEnum();
411 @SuppressWarnings(
"deprecation")
412 com.google.ortools.sat.SatParameters.RestartAlgorithm value =
com.google.ortools.sat.SatParameters.RestartAlgorithm.valueOf(rawValue);
414 unknownFields.mergeVarintField(61, rawValue);
416 if (!((mutable_bitField0_ & 0x08000000) != 0)) {
417 restartAlgorithms_ =
new java.util.ArrayList<java.lang.Integer>();
418 mutable_bitField0_ |= 0x08000000;
420 restartAlgorithms_.add(rawValue);
423 input.popLimit(oldLimit);
427 bitField0_ |= 0x20000000;
428 restartRunningWindowSize_ = input.readInt32();
432 bitField0_ |= 0x40000000;
433 restartDlAverageRatio_ = input.readDouble();
437 bitField1_ |= 0x00000001;
438 useBlockingRestart_ = input.readBool();
442 bitField1_ |= 0x00000002;
443 blockingRestartWindowSize_ = input.readInt32();
447 bitField1_ |= 0x00000004;
448 blockingRestartMultiplier_ = input.readDouble();
452 bitField1_ |= 0x00000040;
453 maxDeterministicTime_ = input.readDouble();
457 bitField1_ |= 0x00000008;
458 numConflictsBeforeStrategyChanges_ = input.readInt32();
462 bitField1_ |= 0x00000010;
463 strategyChangeIncreaseRatio_ = input.readDouble();
467 com.
google.protobuf.ByteString bs = input.readBytes();
468 bitField0_ |= 0x08000000;
469 defaultRestartAlgorithms_ = bs;
473 bitField0_ |= 0x80000000;
474 restartLbdAverageRatio_ = input.readDouble();
478 bitField1_ |= 0x00080000;
479 presolveUseBva_ = input.readBool();
483 bitField1_ |= 0x00100000;
484 presolveBvaThreshold_ = input.readInt32();
488 bitField1_ |= 0x10000000;
489 usePrecedencesInDisjunctiveConstraint_ = input.readBool();
493 bitField0_ |= 0x00000020;
494 useErwaHeuristic_ = input.readBool();
498 bitField0_ |= 0x00000040;
499 initialVariablesActivity_ = input.readDouble();
503 bitField0_ |= 0x00000080;
504 alsoBumpVariablesInConflictReasons_ = input.readBool();
508 bitField1_ |= 0x20000000;
509 useOverloadCheckerInCumulativeConstraint_ = input.readBool();
513 bitField1_ |= 0x40000000;
514 useTimetableEdgeFindingInCumulativeConstraint_ = input.readBool();
518 bitField1_ |= 0x80000000;
519 useDisjunctiveConstraintInCumulativeConstraint_ = input.readBool();
523 int rawValue = input.readEnum();
524 @SuppressWarnings(
"deprecation")
525 com.google.ortools.sat.SatParameters.SearchBranching value =
com.google.ortools.sat.SatParameters.SearchBranching.valueOf(rawValue);
527 unknownFields.mergeVarintField(82, rawValue);
529 bitField2_ |= 0x00002000;
530 searchBranching_ = rawValue;
535 bitField2_ |= 0x00080000;
536 optimizeWithCore_ = input.readBool();
540 bitField1_ |= 0x00800000;
541 findMultipleCores_ = input.readBool();
545 bitField2_ |= 0x00200000;
546 optimizeWithMaxHs_ = input.readBool();
550 bitField2_ |= 0x00400000;
551 cpModelPresolve_ = input.readBool();
555 bitField2_ |= 0x02000000;
556 enumerateAllSolutions_ = input.readBool();
560 bitField1_ |= 0x00040000;
561 presolveBlockedClause_ = input.readBool();
565 bitField1_ |= 0x01000000;
566 coverOptimization_ = input.readBool();
570 bitField2_ |= 0x00000001;
571 linearizationLevel_ = input.readInt32();
575 bitField2_ |= 0x00000004;
576 maxNumCuts_ = input.readInt32();
580 bitField2_ |= 0x00000008;
581 onlyAddCutsAtLevelZero_ = input.readBool();
585 bitField2_ |= 0x01000000;
586 cpModelUseSatPresolve_ = input.readBool();
590 bitField2_ |= 0x00004000;
591 exploitIntegerLpSolution_ = input.readBool();
595 bitField2_ |= 0x10000000;
596 autoDetectGreaterThanAtLeastOneOf_ = input.readBool();
600 bitField0_ |= 0x00040000;
601 minimizeWithPropagationRestartPeriod_ = input.readInt32();
605 bitField0_ |= 0x00080000;
606 minimizeWithPropagationNumDecisions_ = input.readInt32();
610 bitField2_ |= 0x20000000;
611 stopAfterFirstSolution_ = input.readBool();
615 bitField2_ |= 0x00100000;
616 binarySearchNumConflicts_ = input.readInt32();
620 bitField2_ |= 0x40000000;
621 numSearchWorkers_ = input.readInt32();
625 bitField3_ |= 0x00000002;
626 useLns_ = input.readBool();
630 bitField3_ |= 0x00000004;
631 lnsNumThreads_ = input.readInt32();
635 bitField3_ |= 0x00000020;
636 randomizeSearch_ = input.readBool();
640 bitField3_ |= 0x00000040;
641 searchRandomizationTolerance_ = input.readInt64();
645 bitField3_ |= 0x00000008;
646 lnsFocusOnDecisionVariables_ = input.readBool();
650 bitField2_ |= 0x08000000;
651 instantiateAllVariables_ = input.readBool();
655 bitField2_ |= 0x00000002;
656 booleanEncodingLevel_ = input.readInt32();
660 bitField3_ |= 0x00000080;
661 useOptionalVariables_ = input.readBool();
665 bitField3_ |= 0x00000100;
666 useExactLpReason_ = input.readBool();
670 bitField2_ |= 0x00800000;
671 cpModelProbingLevel_ = input.readInt32();
675 bitField2_ |= 0x00000010;
676 addKnapsackCuts_ = input.readBool();
680 bitField2_ |= 0x00000200;
681 addLpConstraintsLazily_ = input.readBool();
685 bitField2_ |= 0x80000000;
686 shareObjectiveBounds_ = input.readBool();
690 bitField3_ |= 0x00000001;
691 shareLevelZeroBounds_ = input.readBool();
695 bitField2_ |= 0x00000400;
696 minOrthogonalityForLpConstraints_ = input.readDouble();
700 bitField2_ |= 0x00008000;
701 exploitAllLpSolution_ = input.readBool();
705 bitField2_ |= 0x00000020;
706 addCgCuts_ = input.readBool();
710 bitField2_ |= 0x00000080;
711 useMirRounding_ = input.readBool();
715 bitField2_ |= 0x00000100;
716 maxIntegerRoundingScaling_ = input.readInt32();
720 bitField2_ |= 0x00000040;
721 addMirCuts_ = input.readBool();
725 bitField2_ |= 0x00000800;
726 maxInactiveCount_ = input.readInt64();
730 bitField2_ |= 0x00001000;
731 constraintRemovalBatchSize_ = input.readInt64();
735 bitField2_ |= 0x00040000;
736 pseudoCostReliabilityThreshold_ = input.readInt64();
740 bitField3_ |= 0x00000400;
741 mipMaxBound_ = input.readDouble();
745 bitField3_ |= 0x00000800;
746 mipVarScaling_ = input.readDouble();
750 bitField3_ |= 0x00001000;
751 mipWantedPrecision_ = input.readDouble();
755 bitField3_ |= 0x00002000;
756 mipMaxActivityExponent_ = input.readInt32();
760 bitField3_ |= 0x00004000;
761 mipCheckPrecision_ = input.readDouble();
765 bitField3_ |= 0x00000010;
766 useRinsLns_ = input.readBool();
770 bitField2_ |= 0x00010000;
771 exploitBestSolution_ = input.readBool();
775 bitField2_ |= 0x00020000;
776 exploitObjective_ = input.readBool();
780 bitField2_ |= 0x04000000;
781 fillTightenedDomainsInResponse_ = input.readBool();
785 bitField3_ |= 0x00000200;
786 useCombinedNoOverlap_ = input.readBool();
790 if (!parseUnknownField(
791 input, unknownFields, extensionRegistry, tag)) {
798 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
799 throw e.setUnfinishedMessage(
this);
800 }
catch (java.io.IOException e) {
801 throw new com.
google.protobuf.InvalidProtocolBufferException(
802 e).setUnfinishedMessage(
this);
804 if (((mutable_bitField0_ & 0x08000000) != 0)) {
805 restartAlgorithms_ = java.util.Collections.unmodifiableList(restartAlgorithms_);
807 this.unknownFields = unknownFields.build();
808 makeExtensionsImmutable();
811 public static final com.
google.protobuf.Descriptors.Descriptor
817 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
820 .ensureFieldAccessorsInitialized(
833 implements
com.
google.protobuf.ProtocolMessageEnum {
859 public static final int IN_ORDER_VALUE = 0;
863 public static final int IN_REVERSE_ORDER_VALUE = 1;
867 public static final int IN_RANDOM_ORDER_VALUE = 2;
877 @java.lang.Deprecated
879 return forNumber(value);
884 case 0:
return IN_ORDER;
885 case 1:
return IN_REVERSE_ORDER;
886 case 2:
return IN_RANDOM_ORDER;
887 default:
return null;
893 return internalValueMap;
895 private static final com.
google.protobuf.Internal.EnumLiteMap<
903 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
907 public final com.
google.protobuf.Descriptors.EnumDescriptor
911 public static final com.
google.protobuf.Descriptors.EnumDescriptor
919 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
921 throw new java.lang.IllegalArgumentException(
922 "EnumValueDescriptor is not for this type.");
924 return VALUES[desc.getIndex()];
927 private final int value;
948 implements
com.
google.protobuf.ProtocolMessageEnum {
985 public static final int POLARITY_TRUE_VALUE = 0;
989 public static final int POLARITY_FALSE_VALUE = 1;
993 public static final int POLARITY_RANDOM_VALUE = 2;
1004 public static final int POLARITY_WEIGHTED_SIGN_VALUE = 3;
1012 public static final int POLARITY_REVERSE_WEIGHTED_SIGN_VALUE = 4;
1022 @java.lang.Deprecated
1024 return forNumber(value);
1029 case 0:
return POLARITY_TRUE;
1030 case 1:
return POLARITY_FALSE;
1031 case 2:
return POLARITY_RANDOM;
1032 case 3:
return POLARITY_WEIGHTED_SIGN;
1033 case 4:
return POLARITY_REVERSE_WEIGHTED_SIGN;
1034 default:
return null;
1040 return internalValueMap;
1042 private static final com.
google.protobuf.Internal.EnumLiteMap<
1045 public Polarity findValueByNumber(
int number) {
1050 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1054 public final com.
google.protobuf.Descriptors.EnumDescriptor
1058 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1063 private static final Polarity[] VALUES = values();
1066 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1068 throw new java.lang.IllegalArgumentException(
1069 "EnumValueDescriptor is not for this type.");
1071 return VALUES[desc.getIndex()];
1074 private final int value;
1091 implements
com.
google.protobuf.ProtocolMessageEnum {
1113 public static final int NONE_VALUE = 0;
1117 public static final int SIMPLE_VALUE = 1;
1121 public static final int RECURSIVE_VALUE = 2;
1125 public static final int EXPERIMENTAL_VALUE = 3;
1135 @java.lang.Deprecated
1137 return forNumber(value);
1142 case 0:
return NONE;
1143 case 1:
return SIMPLE;
1144 case 2:
return RECURSIVE;
1145 case 3:
return EXPERIMENTAL;
1146 default:
return null;
1152 return internalValueMap;
1154 private static final com.
google.protobuf.Internal.EnumLiteMap<
1162 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1166 public final com.
google.protobuf.Descriptors.EnumDescriptor
1170 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1178 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1180 throw new java.lang.IllegalArgumentException(
1181 "EnumValueDescriptor is not for this type.");
1183 return VALUES[desc.getIndex()];
1186 private final int value;
1204 implements
com.
google.protobuf.ProtocolMessageEnum {
1230 public static final int NO_BINARY_MINIMIZATION_VALUE = 0;
1234 public static final int BINARY_MINIMIZATION_FIRST_VALUE = 1;
1238 public static final int BINARY_MINIMIZATION_FIRST_WITH_TRANSITIVE_REDUCTION_VALUE = 4;
1242 public static final int BINARY_MINIMIZATION_WITH_REACHABILITY_VALUE = 2;
1246 public static final int EXPERIMENTAL_BINARY_MINIMIZATION_VALUE = 3;
1256 @java.lang.Deprecated
1258 return forNumber(value);
1263 case 0:
return NO_BINARY_MINIMIZATION;
1264 case 1:
return BINARY_MINIMIZATION_FIRST;
1265 case 4:
return BINARY_MINIMIZATION_FIRST_WITH_TRANSITIVE_REDUCTION;
1266 case 2:
return BINARY_MINIMIZATION_WITH_REACHABILITY;
1267 case 3:
return EXPERIMENTAL_BINARY_MINIMIZATION;
1268 default:
return null;
1274 return internalValueMap;
1276 private static final com.
google.protobuf.Internal.EnumLiteMap<
1284 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1288 public final com.
google.protobuf.Descriptors.EnumDescriptor
1292 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1300 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1302 throw new java.lang.IllegalArgumentException(
1303 "EnumValueDescriptor is not for this type.");
1305 return VALUES[desc.getIndex()];
1308 private final int value;
1327 implements
com.
google.protobuf.ProtocolMessageEnum {
1361 public static final int PROTECTION_NONE_VALUE = 0;
1369 public static final int PROTECTION_ALWAYS_VALUE = 1;
1377 public static final int PROTECTION_LBD_VALUE = 2;
1387 @java.lang.Deprecated
1389 return forNumber(value);
1394 case 0:
return PROTECTION_NONE;
1395 case 1:
return PROTECTION_ALWAYS;
1396 case 2:
return PROTECTION_LBD;
1397 default:
return null;
1403 return internalValueMap;
1405 private static final com.
google.protobuf.Internal.EnumLiteMap<
1413 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1417 public final com.
google.protobuf.Descriptors.EnumDescriptor
1421 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1429 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1431 throw new java.lang.IllegalArgumentException(
1432 "EnumValueDescriptor is not for this type.");
1434 return VALUES[desc.getIndex()];
1437 private final int value;
1455 implements
com.
google.protobuf.ProtocolMessageEnum {
1481 public static final int CLAUSE_ACTIVITY_VALUE = 0;
1489 public static final int CLAUSE_LBD_VALUE = 1;
1499 @java.lang.Deprecated
1501 return forNumber(value);
1506 case 0:
return CLAUSE_ACTIVITY;
1507 case 1:
return CLAUSE_LBD;
1508 default:
return null;
1514 return internalValueMap;
1516 private static final com.
google.protobuf.Internal.EnumLiteMap<
1524 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1528 public final com.
google.protobuf.Descriptors.EnumDescriptor
1532 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1540 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1542 throw new java.lang.IllegalArgumentException(
1543 "EnumValueDescriptor is not for this type.");
1545 return VALUES[desc.getIndex()];
1548 private final int value;
1569 implements
com.
google.protobuf.ProtocolMessageEnum {
1611 public static final int NO_RESTART_VALUE = 0;
1619 public static final int LUBY_RESTART_VALUE = 1;
1627 public static final int DL_MOVING_AVERAGE_RESTART_VALUE = 2;
1635 public static final int LBD_MOVING_AVERAGE_RESTART_VALUE = 3;
1643 public static final int FIXED_RESTART_VALUE = 4;
1653 @java.lang.Deprecated
1655 return forNumber(value);
1660 case 0:
return NO_RESTART;
1661 case 1:
return LUBY_RESTART;
1662 case 2:
return DL_MOVING_AVERAGE_RESTART;
1663 case 3:
return LBD_MOVING_AVERAGE_RESTART;
1664 case 4:
return FIXED_RESTART;
1665 default:
return null;
1671 return internalValueMap;
1673 private static final com.
google.protobuf.Internal.EnumLiteMap<
1681 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1685 public final com.
google.protobuf.Descriptors.EnumDescriptor
1689 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1697 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1699 throw new java.lang.IllegalArgumentException(
1700 "EnumValueDescriptor is not for this type.");
1702 return VALUES[desc.getIndex()];
1705 private final int value;
1722 implements
com.
google.protobuf.ProtocolMessageEnum {
1740 public static final int DEFAULT_ASSUMPTION_ORDER_VALUE = 0;
1744 public static final int ORDER_ASSUMPTION_BY_DEPTH_VALUE = 1;
1748 public static final int ORDER_ASSUMPTION_BY_WEIGHT_VALUE = 2;
1758 @java.lang.Deprecated
1760 return forNumber(value);
1765 case 0:
return DEFAULT_ASSUMPTION_ORDER;
1766 case 1:
return ORDER_ASSUMPTION_BY_DEPTH;
1767 case 2:
return ORDER_ASSUMPTION_BY_WEIGHT;
1768 default:
return null;
1774 return internalValueMap;
1776 private static final com.
google.protobuf.Internal.EnumLiteMap<
1784 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1788 public final com.
google.protobuf.Descriptors.EnumDescriptor
1792 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1800 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1802 throw new java.lang.IllegalArgumentException(
1803 "EnumValueDescriptor is not for this type.");
1805 return VALUES[desc.getIndex()];
1808 private final int value;
1825 implements
com.
google.protobuf.ProtocolMessageEnum {
1863 public static final int STRATIFICATION_NONE_VALUE = 0;
1872 public static final int STRATIFICATION_DESCENT_VALUE = 1;
1883 public static final int STRATIFICATION_ASCENT_VALUE = 2;
1893 @java.lang.Deprecated
1895 return forNumber(value);
1900 case 0:
return STRATIFICATION_NONE;
1901 case 1:
return STRATIFICATION_DESCENT;
1902 case 2:
return STRATIFICATION_ASCENT;
1903 default:
return null;
1909 return internalValueMap;
1911 private static final com.
google.protobuf.Internal.EnumLiteMap<
1919 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
1923 public final com.
google.protobuf.Descriptors.EnumDescriptor
1927 public static final com.
google.protobuf.Descriptors.EnumDescriptor
1935 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
1937 throw new java.lang.IllegalArgumentException(
1938 "EnumValueDescriptor is not for this type.");
1940 return VALUES[desc.getIndex()];
1943 private final int value;
1960 implements
com.
google.protobuf.ProtocolMessageEnum {
2027 public static final int AUTOMATIC_SEARCH_VALUE = 0;
2040 public static final int FIXED_SEARCH_VALUE = 1;
2048 public static final int PORTFOLIO_SEARCH_VALUE = 2;
2056 public static final int LP_SEARCH_VALUE = 3;
2064 public static final int PSEUDO_COST_SEARCH_VALUE = 4;
2074 public static final int PORTFOLIO_WITH_QUICK_RESTART_SEARCH_VALUE = 5;
2084 @java.lang.Deprecated
2086 return forNumber(value);
2091 case 0:
return AUTOMATIC_SEARCH;
2092 case 1:
return FIXED_SEARCH;
2093 case 2:
return PORTFOLIO_SEARCH;
2094 case 3:
return LP_SEARCH;
2095 case 4:
return PSEUDO_COST_SEARCH;
2096 case 5:
return PORTFOLIO_WITH_QUICK_RESTART_SEARCH;
2097 default:
return null;
2103 return internalValueMap;
2105 private static final com.
google.protobuf.Internal.EnumLiteMap<
2113 public final com.
google.protobuf.Descriptors.EnumValueDescriptor
2117 public final com.
google.protobuf.Descriptors.EnumDescriptor
2121 public static final com.
google.protobuf.Descriptors.EnumDescriptor
2129 com.
google.protobuf.Descriptors.EnumValueDescriptor desc) {
2131 throw new java.lang.IllegalArgumentException(
2132 "EnumValueDescriptor is not for this type.");
2134 return VALUES[desc.getIndex()];
2137 private final int value;
2146 private int bitField0_;
2147 private int bitField1_;
2148 private int bitField2_;
2149 private int bitField3_;
2151 private int preferredVariableOrder_;
2156 return ((bitField0_ & 0x00000001) != 0);
2162 @SuppressWarnings(
"deprecation")
2168 private int initialPolarity_;
2173 return ((bitField0_ & 0x00000002) != 0);
2179 @SuppressWarnings(
"deprecation")
2185 private boolean usePhaseSaving_;
2200 return ((bitField0_ & 0x00000004) != 0);
2216 return usePhaseSaving_;
2220 private double randomPolarityRatio_;
2233 return ((bitField0_ & 0x00000008) != 0);
2247 return randomPolarityRatio_;
2251 private double randomBranchesRatio_;
2262 return ((bitField0_ & 0x00000010) != 0);
2274 return randomBranchesRatio_;
2278 private boolean useErwaHeuristic_;
2289 return ((bitField0_ & 0x00000020) != 0);
2301 return useErwaHeuristic_;
2305 private double initialVariablesActivity_;
2319 return ((bitField0_ & 0x00000040) != 0);
2334 return initialVariablesActivity_;
2338 private boolean alsoBumpVariablesInConflictReasons_;
2350 return ((bitField0_ & 0x00000080) != 0);
2363 return alsoBumpVariablesInConflictReasons_;
2367 private int minimizationAlgorithm_;
2372 return ((bitField0_ & 0x00000100) != 0);
2378 @SuppressWarnings(
"deprecation")
2384 private int binaryMinimizationAlgorithm_;
2389 return ((bitField0_ & 0x00000200) != 0);
2395 @SuppressWarnings(
"deprecation")
2401 private boolean subsumptionDuringConflictAnalysis_;
2413 return ((bitField0_ & 0x00000400) != 0);
2426 return subsumptionDuringConflictAnalysis_;
2430 private int clauseCleanupPeriod_;
2439 return ((bitField0_ & 0x00000800) != 0);
2449 return clauseCleanupPeriod_;
2453 private int clauseCleanupTarget_;
2463 return ((bitField0_ & 0x00001000) != 0);
2474 return clauseCleanupTarget_;
2478 private int clauseCleanupProtection_;
2483 return ((bitField0_ & 0x00002000) != 0);
2489 @SuppressWarnings(
"deprecation")
2495 private int clauseCleanupLbdBound_;
2505 return ((bitField0_ & 0x00004000) != 0);
2516 return clauseCleanupLbdBound_;
2520 private int clauseCleanupOrdering_;
2525 return ((bitField0_ & 0x00008000) != 0);
2531 @SuppressWarnings(
"deprecation")
2537 private int pbCleanupIncrement_;
2546 return ((bitField0_ & 0x00010000) != 0);
2556 return pbCleanupIncrement_;
2560 private double pbCleanupRatio_;
2565 return ((bitField0_ & 0x00020000) != 0);
2571 return pbCleanupRatio_;
2575 private int minimizeWithPropagationRestartPeriod_;
2594 return ((bitField0_ & 0x00040000) != 0);
2614 return minimizeWithPropagationRestartPeriod_;
2618 private int minimizeWithPropagationNumDecisions_;
2623 return ((bitField0_ & 0x00080000) != 0);
2629 return minimizeWithPropagationNumDecisions_;
2633 private double variableActivityDecay_;
2648 return ((bitField0_ & 0x00100000) != 0);
2664 return variableActivityDecay_;
2668 private double maxVariableActivityValue_;
2673 return ((bitField0_ & 0x00200000) != 0);
2679 return maxVariableActivityValue_;
2683 private double glucoseMaxDecay_;
2695 return ((bitField0_ & 0x00400000) != 0);
2708 return glucoseMaxDecay_;
2712 private double glucoseDecayIncrement_;
2717 return ((bitField0_ & 0x00800000) != 0);
2723 return glucoseDecayIncrement_;
2727 private int glucoseDecayIncrementPeriod_;
2732 return ((bitField0_ & 0x01000000) != 0);
2738 return glucoseDecayIncrementPeriod_;
2742 private double clauseActivityDecay_;
2751 return ((bitField0_ & 0x02000000) != 0);
2761 return clauseActivityDecay_;
2765 private double maxClauseActivityValue_;
2770 return ((bitField0_ & 0x04000000) != 0);
2776 return maxClauseActivityValue_;
2780 private java.util.List<java.lang.Integer> restartAlgorithms_;
2781 private static final com.
google.protobuf.Internal.ListAdapter.Converter<
2783 new com.
google.protobuf.Internal.ListAdapter.Converter<
2786 @SuppressWarnings(
"deprecation")
2806 return new com.
google.protobuf.Internal.ListAdapter<
2824 return restartAlgorithms_.size();
2841 return restartAlgorithms_converter_.convert(restartAlgorithms_.get(index));
2845 private volatile java.lang.Object defaultRestartAlgorithms_;
2850 return ((bitField0_ & 0x08000000) != 0);
2856 java.lang.Object ref = defaultRestartAlgorithms_;
2857 if (ref instanceof java.lang.String) {
2858 return (java.lang.String) ref;
2862 java.lang.String s = bs.toStringUtf8();
2863 if (bs.isValidUtf8()) {
2864 defaultRestartAlgorithms_ = s;
2874 java.lang.Object ref = defaultRestartAlgorithms_;
2875 if (ref instanceof java.lang.String) {
2877 com.
google.protobuf.ByteString.copyFromUtf8(
2878 (java.lang.String) ref);
2879 defaultRestartAlgorithms_ = b;
2882 return (
com.
google.protobuf.ByteString) ref;
2887 private int restartPeriod_;
2897 return ((bitField0_ & 0x10000000) != 0);
2908 return restartPeriod_;
2912 private int restartRunningWindowSize_;
2921 return ((bitField0_ & 0x20000000) != 0);
2931 return restartRunningWindowSize_;
2935 private double restartDlAverageRatio_;
2945 return ((bitField0_ & 0x40000000) != 0);
2956 return restartDlAverageRatio_;
2960 private double restartLbdAverageRatio_;
2965 return ((bitField0_ & 0x80000000) != 0);
2971 return restartLbdAverageRatio_;
2975 private boolean useBlockingRestart_;
2986 return ((bitField1_ & 0x00000001) != 0);
2998 return useBlockingRestart_;
3002 private int blockingRestartWindowSize_;
3007 return ((bitField1_ & 0x00000002) != 0);
3013 return blockingRestartWindowSize_;
3017 private double blockingRestartMultiplier_;
3022 return ((bitField1_ & 0x00000004) != 0);
3028 return blockingRestartMultiplier_;
3032 private int numConflictsBeforeStrategyChanges_;
3043 return ((bitField1_ & 0x00000008) != 0);
3055 return numConflictsBeforeStrategyChanges_;
3059 private double strategyChangeIncreaseRatio_;
3069 return ((bitField1_ & 0x00000010) != 0);
3080 return strategyChangeIncreaseRatio_;
3084 private double maxTimeInSeconds_;
3095 return ((bitField1_ & 0x00000020) != 0);
3107 return maxTimeInSeconds_;
3111 private double maxDeterministicTime_;
3124 return ((bitField1_ & 0x00000040) != 0);
3138 return maxDeterministicTime_;
3142 private long maxNumberOfConflicts_;
3151 return ((bitField1_ & 0x00000080) != 0);
3161 return maxNumberOfConflicts_;
3165 private long maxMemoryInMb_;
3177 return ((bitField1_ & 0x00000100) != 0);
3190 return maxMemoryInMb_;
3194 private boolean treatBinaryClausesSeparately_;
3205 return ((bitField1_ & 0x00000200) != 0);
3217 return treatBinaryClausesSeparately_;
3221 private int randomSeed_;
3235 return ((bitField1_ & 0x00000400) != 0);
3254 private boolean logSearchProgress_;
3263 return ((bitField1_ & 0x00000800) != 0);
3273 return logSearchProgress_;
3277 private boolean usePbResolution_;
3289 return ((bitField1_ & 0x00001000) != 0);
3302 return usePbResolution_;
3306 private boolean minimizeReductionDuringPbResolution_;
3318 return ((bitField1_ & 0x00002000) != 0);
3331 return minimizeReductionDuringPbResolution_;
3335 private boolean countAssumptionLevelsInLbd_;
3351 return ((bitField1_ & 0x00004000) != 0);
3368 return countAssumptionLevelsInLbd_;
3372 private int presolveBveThreshold_;
3383 return ((bitField1_ & 0x00008000) != 0);
3395 return presolveBveThreshold_;
3399 private int presolveBveClauseWeight_;
3409 return ((bitField1_ & 0x00010000) != 0);
3420 return presolveBveClauseWeight_;
3424 private double presolveProbingDeterministicTimeLimit_;
3434 return ((bitField1_ & 0x00020000) != 0);
3445 return presolveProbingDeterministicTimeLimit_;
3449 private boolean presolveBlockedClause_;
3459 return ((bitField1_ & 0x00040000) != 0);
3470 return presolveBlockedClause_;
3474 private boolean presolveUseBva_;
3483 return ((bitField1_ & 0x00080000) != 0);
3493 return presolveUseBva_;
3497 private int presolveBvaThreshold_;
3509 return ((bitField1_ & 0x00100000) != 0);
3522 return presolveBvaThreshold_;
3526 private boolean useOptimizationHints_;
3538 return ((bitField1_ & 0x00200000) != 0);
3551 return useOptimizationHints_;
3555 private boolean minimizeCore_;
3564 return ((bitField1_ & 0x00400000) != 0);
3574 return minimizeCore_;
3578 private boolean findMultipleCores_;
3588 return ((bitField1_ & 0x00800000) != 0);
3599 return findMultipleCores_;
3603 private boolean coverOptimization_;
3613 return ((bitField1_ & 0x01000000) != 0);
3624 return coverOptimization_;
3628 private int maxSatAssumptionOrder_;
3633 return ((bitField1_ & 0x02000000) != 0);
3639 @SuppressWarnings(
"deprecation")
3645 private boolean maxSatReverseAssumptionOrder_;
3655 return ((bitField1_ & 0x04000000) != 0);
3666 return maxSatReverseAssumptionOrder_;
3670 private int maxSatStratification_;
3675 return ((bitField1_ & 0x08000000) != 0);
3681 @SuppressWarnings(
"deprecation")
3687 private boolean usePrecedencesInDisjunctiveConstraint_;
3703 return ((bitField1_ & 0x10000000) != 0);
3720 return usePrecedencesInDisjunctiveConstraint_;
3724 private boolean useOverloadCheckerInCumulativeConstraint_;
3738 return ((bitField1_ & 0x20000000) != 0);
3753 return useOverloadCheckerInCumulativeConstraint_;
3757 private boolean useTimetableEdgeFindingInCumulativeConstraint_;
3771 return ((bitField1_ & 0x40000000) != 0);
3786 return useTimetableEdgeFindingInCumulativeConstraint_;
3790 private boolean useDisjunctiveConstraintInCumulativeConstraint_;
3806 return ((bitField1_ & 0x80000000) != 0);
3823 return useDisjunctiveConstraintInCumulativeConstraint_;
3827 private int linearizationLevel_;
3839 return ((bitField2_ & 0x00000001) != 0);
3852 return linearizationLevel_;
3856 private int booleanEncodingLevel_;
3866 return ((bitField2_ & 0x00000002) != 0);
3877 return booleanEncodingLevel_;
3881 private int maxNumCuts_;
3891 return ((bitField2_ & 0x00000004) != 0);
3906 private boolean onlyAddCutsAtLevelZero_;
3916 return ((bitField2_ & 0x00000008) != 0);
3927 return onlyAddCutsAtLevelZero_;
3931 private boolean addKnapsackCuts_;
3942 return ((bitField2_ & 0x00000010) != 0);
3954 return addKnapsackCuts_;
3958 private boolean addCgCuts_;
3968 return ((bitField2_ & 0x00000020) != 0);
3983 private boolean addMirCuts_;
3993 return ((bitField2_ & 0x00000040) != 0);
4008 private boolean useMirRounding_;
4019 return ((bitField2_ & 0x00000080) != 0);
4031 return useMirRounding_;
4035 private int maxIntegerRoundingScaling_;
4048 return ((bitField2_ & 0x00000100) != 0);
4062 return maxIntegerRoundingScaling_;
4066 private boolean addLpConstraintsLazily_;
4078 return ((bitField2_ & 0x00000200) != 0);
4091 return addLpConstraintsLazily_;
4095 private double minOrthogonalityForLpConstraints_;
4108 return ((bitField2_ & 0x00000400) != 0);
4122 return minOrthogonalityForLpConstraints_;
4126 private long maxInactiveCount_;
4136 return ((bitField2_ & 0x00000800) != 0);
4147 return maxInactiveCount_;
4151 private long constraintRemovalBatchSize_;
4161 return ((bitField2_ & 0x00001000) != 0);
4172 return constraintRemovalBatchSize_;
4176 private int searchBranching_;
4181 return ((bitField2_ & 0x00002000) != 0);
4187 @SuppressWarnings(
"deprecation")
4193 private boolean exploitIntegerLpSolution_;
4205 return ((bitField2_ & 0x00004000) != 0);
4218 return exploitIntegerLpSolution_;
4222 private boolean exploitAllLpSolution_;
4233 return ((bitField2_ & 0x00008000) != 0);
4245 return exploitAllLpSolution_;
4249 private boolean exploitBestSolution_;
4258 return ((bitField2_ & 0x00010000) != 0);
4268 return exploitBestSolution_;
4272 private boolean exploitObjective_;
4282 return ((bitField2_ & 0x00020000) != 0);
4293 return exploitObjective_;
4297 private long pseudoCostReliabilityThreshold_;
4307 return ((bitField2_ & 0x00040000) != 0);
4318 return pseudoCostReliabilityThreshold_;
4322 private boolean optimizeWithCore_;
4334 return ((bitField2_ & 0x00080000) != 0);
4347 return optimizeWithCore_;
4351 private int binarySearchNumConflicts_;
4363 return ((bitField2_ & 0x00100000) != 0);
4376 return binarySearchNumConflicts_;
4380 private boolean optimizeWithMaxHs_;
4394 return ((bitField2_ & 0x00200000) != 0);
4409 return optimizeWithMaxHs_;
4413 private boolean cpModelPresolve_;
4422 return ((bitField2_ & 0x00400000) != 0);
4432 return cpModelPresolve_;
4436 private int cpModelProbingLevel_;
4445 return ((bitField2_ & 0x00800000) != 0);
4455 return cpModelProbingLevel_;
4459 private boolean cpModelUseSatPresolve_;
4468 return ((bitField2_ & 0x01000000) != 0);
4478 return cpModelUseSatPresolve_;
4482 private boolean enumerateAllSolutions_;
4496 return ((bitField2_ & 0x02000000) != 0);
4511 return enumerateAllSolutions_;
4515 private boolean fillTightenedDomainsInResponse_;
4528 return ((bitField2_ & 0x04000000) != 0);
4542 return fillTightenedDomainsInResponse_;
4546 private boolean instantiateAllVariables_;
4556 return ((bitField2_ & 0x08000000) != 0);
4567 return instantiateAllVariables_;
4571 private boolean autoDetectGreaterThanAtLeastOneOf_;
4583 return ((bitField2_ & 0x10000000) != 0);
4596 return autoDetectGreaterThanAtLeastOneOf_;
4600 private boolean stopAfterFirstSolution_;
4609 return ((bitField2_ & 0x20000000) != 0);
4619 return stopAfterFirstSolution_;
4623 private int numSearchWorkers_;
4635 return ((bitField2_ & 0x40000000) != 0);
4648 return numSearchWorkers_;
4652 private boolean shareObjectiveBounds_;
4661 return ((bitField2_ & 0x80000000) != 0);
4671 return shareObjectiveBounds_;
4675 private boolean shareLevelZeroBounds_;
4684 return ((bitField3_ & 0x00000001) != 0);
4694 return shareLevelZeroBounds_;
4698 private boolean useLns_;
4707 return ((bitField3_ & 0x00000002) != 0);
4721 private int lnsNumThreads_;
4726 return ((bitField3_ & 0x00000004) != 0);
4732 return lnsNumThreads_;
4736 private boolean lnsFocusOnDecisionVariables_;
4741 return ((bitField3_ & 0x00000008) != 0);
4747 return lnsFocusOnDecisionVariables_;
4751 private boolean useRinsLns_;
4760 return ((bitField3_ & 0x00000010) != 0);
4774 private boolean randomizeSearch_;
4783 return ((bitField3_ & 0x00000020) != 0);
4793 return randomizeSearch_;
4797 private long searchRandomizationTolerance_;
4812 return ((bitField3_ & 0x00000040) != 0);
4828 return searchRandomizationTolerance_;
4832 private boolean useOptionalVariables_;
4843 return ((bitField3_ & 0x00000080) != 0);
4855 return useOptionalVariables_;
4859 private boolean useExactLpReason_;
4871 return ((bitField3_ & 0x00000100) != 0);
4884 return useExactLpReason_;
4888 private boolean useCombinedNoOverlap_;
4899 return ((bitField3_ & 0x00000200) != 0);
4911 return useCombinedNoOverlap_;
4915 private double mipMaxBound_;
4926 return ((bitField3_ & 0x00000400) != 0);
4938 return mipMaxBound_;
4942 private double mipVarScaling_;
4953 return ((bitField3_ & 0x00000800) != 0);
4965 return mipVarScaling_;
4969 private double mipWantedPrecision_;
4986 return ((bitField3_ & 0x00001000) != 0);
5004 return mipWantedPrecision_;
5008 private int mipMaxActivityExponent_;
5023 return ((bitField3_ & 0x00002000) != 0);
5039 return mipMaxActivityExponent_;
5043 private double mipCheckPrecision_;
5055 return ((bitField3_ & 0x00004000) != 0);
5068 return mipCheckPrecision_;
5071 private byte memoizedIsInitialized = -1;
5078 memoizedIsInitialized = 1;
5084 throws java.io.IOException {
5085 if (((bitField0_ & 0x00000001) != 0)) {
5086 output.writeEnum(1, preferredVariableOrder_);
5088 if (((bitField0_ & 0x00000002) != 0)) {
5089 output.writeEnum(2, initialPolarity_);
5091 if (((bitField0_ & 0x00000100) != 0)) {
5092 output.writeEnum(4, minimizationAlgorithm_);
5094 if (((bitField0_ & 0x00000800) != 0)) {
5095 output.writeInt32(11, clauseCleanupPeriod_);
5097 if (((bitField0_ & 0x00001000) != 0)) {
5098 output.writeInt32(13, clauseCleanupTarget_);
5100 if (((bitField0_ & 0x00100000) != 0)) {
5101 output.writeDouble(15, variableActivityDecay_);
5103 if (((bitField0_ & 0x00200000) != 0)) {
5104 output.writeDouble(16, maxVariableActivityValue_);
5106 if (((bitField0_ & 0x02000000) != 0)) {
5107 output.writeDouble(17, clauseActivityDecay_);
5109 if (((bitField0_ & 0x04000000) != 0)) {
5110 output.writeDouble(18, maxClauseActivityValue_);
5112 if (((bitField0_ & 0x00400000) != 0)) {
5113 output.writeDouble(22, glucoseMaxDecay_);
5115 if (((bitField0_ & 0x00800000) != 0)) {
5116 output.writeDouble(23, glucoseDecayIncrement_);
5118 if (((bitField0_ & 0x01000000) != 0)) {
5119 output.writeInt32(24, glucoseDecayIncrementPeriod_);
5121 if (((bitField0_ & 0x10000000) != 0)) {
5122 output.writeInt32(30, restartPeriod_);
5124 if (((bitField1_ & 0x00000400) != 0)) {
5125 output.writeInt32(31, randomSeed_);
5127 if (((bitField0_ & 0x00000010) != 0)) {
5128 output.writeDouble(32, randomBranchesRatio_);
5130 if (((bitField1_ & 0x00000200) != 0)) {
5131 output.writeBool(33, treatBinaryClausesSeparately_);
5133 if (((bitField0_ & 0x00000200) != 0)) {
5134 output.writeEnum(34, binaryMinimizationAlgorithm_);
5136 if (((bitField1_ & 0x00200000) != 0)) {
5137 output.writeBool(35, useOptimizationHints_);
5139 if (((bitField1_ & 0x00000020) != 0)) {
5140 output.writeDouble(36, maxTimeInSeconds_);
5142 if (((bitField1_ & 0x00000080) != 0)) {
5143 output.writeInt64(37, maxNumberOfConflicts_);
5145 if (((bitField1_ & 0x00000100) != 0)) {
5146 output.writeInt64(40, maxMemoryInMb_);
5148 if (((bitField1_ & 0x00000800) != 0)) {
5149 output.writeBool(41, logSearchProgress_);
5151 if (((bitField1_ & 0x00001000) != 0)) {
5152 output.writeBool(43, usePbResolution_);
5154 if (((bitField0_ & 0x00000004) != 0)) {
5155 output.writeBool(44, usePhaseSaving_);
5157 if (((bitField0_ & 0x00000008) != 0)) {
5158 output.writeDouble(45, randomPolarityRatio_);
5160 if (((bitField0_ & 0x00010000) != 0)) {
5161 output.writeInt32(46, pbCleanupIncrement_);
5163 if (((bitField0_ & 0x00020000) != 0)) {
5164 output.writeDouble(47, pbCleanupRatio_);
5166 if (((bitField1_ & 0x00002000) != 0)) {
5167 output.writeBool(48, minimizeReductionDuringPbResolution_);
5169 if (((bitField1_ & 0x00004000) != 0)) {
5170 output.writeBool(49, countAssumptionLevelsInLbd_);
5172 if (((bitField1_ & 0x00400000) != 0)) {
5173 output.writeBool(50, minimizeCore_);
5175 if (((bitField1_ & 0x02000000) != 0)) {
5176 output.writeEnum(51, maxSatAssumptionOrder_);
5178 if (((bitField1_ & 0x04000000) != 0)) {
5179 output.writeBool(52, maxSatReverseAssumptionOrder_);
5181 if (((bitField1_ & 0x08000000) != 0)) {
5182 output.writeEnum(53, maxSatStratification_);
5184 if (((bitField1_ & 0x00008000) != 0)) {
5185 output.writeInt32(54, presolveBveThreshold_);
5187 if (((bitField1_ & 0x00010000) != 0)) {
5188 output.writeInt32(55, presolveBveClauseWeight_);
5190 if (((bitField0_ & 0x00000400) != 0)) {
5191 output.writeBool(56, subsumptionDuringConflictAnalysis_);
5193 if (((bitField1_ & 0x00020000) != 0)) {
5194 output.writeDouble(57, presolveProbingDeterministicTimeLimit_);
5196 if (((bitField0_ & 0x00002000) != 0)) {
5197 output.writeEnum(58, clauseCleanupProtection_);
5199 if (((bitField0_ & 0x00004000) != 0)) {
5200 output.writeInt32(59, clauseCleanupLbdBound_);
5202 if (((bitField0_ & 0x00008000) != 0)) {
5203 output.writeEnum(60, clauseCleanupOrdering_);
5205 for (
int i = 0; i < restartAlgorithms_.size(); i++) {
5206 output.writeEnum(61, restartAlgorithms_.get(i));
5208 if (((bitField0_ & 0x20000000) != 0)) {
5209 output.writeInt32(62, restartRunningWindowSize_);
5211 if (((bitField0_ & 0x40000000) != 0)) {
5212 output.writeDouble(63, restartDlAverageRatio_);
5214 if (((bitField1_ & 0x00000001) != 0)) {
5215 output.writeBool(64, useBlockingRestart_);
5217 if (((bitField1_ & 0x00000002) != 0)) {
5218 output.writeInt32(65, blockingRestartWindowSize_);
5220 if (((bitField1_ & 0x00000004) != 0)) {
5221 output.writeDouble(66, blockingRestartMultiplier_);
5223 if (((bitField1_ & 0x00000040) != 0)) {
5224 output.writeDouble(67, maxDeterministicTime_);
5226 if (((bitField1_ & 0x00000008) != 0)) {
5227 output.writeInt32(68, numConflictsBeforeStrategyChanges_);
5229 if (((bitField1_ & 0x00000010) != 0)) {
5230 output.writeDouble(69, strategyChangeIncreaseRatio_);
5232 if (((bitField0_ & 0x08000000) != 0)) {
5233 com.
google.protobuf.GeneratedMessageV3.writeString(output, 70, defaultRestartAlgorithms_);
5235 if (((bitField0_ & 0x80000000) != 0)) {
5236 output.writeDouble(71, restartLbdAverageRatio_);
5238 if (((bitField1_ & 0x00080000) != 0)) {
5239 output.writeBool(72, presolveUseBva_);
5241 if (((bitField1_ & 0x00100000) != 0)) {
5242 output.writeInt32(73, presolveBvaThreshold_);
5244 if (((bitField1_ & 0x10000000) != 0)) {
5245 output.writeBool(74, usePrecedencesInDisjunctiveConstraint_);
5247 if (((bitField0_ & 0x00000020) != 0)) {
5248 output.writeBool(75, useErwaHeuristic_);
5250 if (((bitField0_ & 0x00000040) != 0)) {
5251 output.writeDouble(76, initialVariablesActivity_);
5253 if (((bitField0_ & 0x00000080) != 0)) {
5254 output.writeBool(77, alsoBumpVariablesInConflictReasons_);
5256 if (((bitField1_ & 0x20000000) != 0)) {
5257 output.writeBool(78, useOverloadCheckerInCumulativeConstraint_);
5259 if (((bitField1_ & 0x40000000) != 0)) {
5260 output.writeBool(79, useTimetableEdgeFindingInCumulativeConstraint_);
5262 if (((bitField1_ & 0x80000000) != 0)) {
5263 output.writeBool(80, useDisjunctiveConstraintInCumulativeConstraint_);
5265 if (((bitField2_ & 0x00002000) != 0)) {
5266 output.writeEnum(82, searchBranching_);
5268 if (((bitField2_ & 0x00080000) != 0)) {
5269 output.writeBool(83, optimizeWithCore_);
5271 if (((bitField1_ & 0x00800000) != 0)) {
5272 output.writeBool(84, findMultipleCores_);
5274 if (((bitField2_ & 0x00200000) != 0)) {
5275 output.writeBool(85, optimizeWithMaxHs_);
5277 if (((bitField2_ & 0x00400000) != 0)) {
5278 output.writeBool(86, cpModelPresolve_);
5280 if (((bitField2_ & 0x02000000) != 0)) {
5281 output.writeBool(87, enumerateAllSolutions_);
5283 if (((bitField1_ & 0x00040000) != 0)) {
5284 output.writeBool(88, presolveBlockedClause_);
5286 if (((bitField1_ & 0x01000000) != 0)) {
5287 output.writeBool(89, coverOptimization_);
5289 if (((bitField2_ & 0x00000001) != 0)) {
5290 output.writeInt32(90, linearizationLevel_);
5292 if (((bitField2_ & 0x00000004) != 0)) {
5293 output.writeInt32(91, maxNumCuts_);
5295 if (((bitField2_ & 0x00000008) != 0)) {
5296 output.writeBool(92, onlyAddCutsAtLevelZero_);
5298 if (((bitField2_ & 0x01000000) != 0)) {
5299 output.writeBool(93, cpModelUseSatPresolve_);
5301 if (((bitField2_ & 0x00004000) != 0)) {
5302 output.writeBool(94, exploitIntegerLpSolution_);
5304 if (((bitField2_ & 0x10000000) != 0)) {
5305 output.writeBool(95, autoDetectGreaterThanAtLeastOneOf_);
5307 if (((bitField0_ & 0x00040000) != 0)) {
5308 output.writeInt32(96, minimizeWithPropagationRestartPeriod_);
5310 if (((bitField0_ & 0x00080000) != 0)) {
5311 output.writeInt32(97, minimizeWithPropagationNumDecisions_);
5313 if (((bitField2_ & 0x20000000) != 0)) {
5314 output.writeBool(98, stopAfterFirstSolution_);
5316 if (((bitField2_ & 0x00100000) != 0)) {
5317 output.writeInt32(99, binarySearchNumConflicts_);
5319 if (((bitField2_ & 0x40000000) != 0)) {
5320 output.writeInt32(100, numSearchWorkers_);
5322 if (((bitField3_ & 0x00000002) != 0)) {
5323 output.writeBool(101, useLns_);
5325 if (((bitField3_ & 0x00000004) != 0)) {
5326 output.writeInt32(102, lnsNumThreads_);
5328 if (((bitField3_ & 0x00000020) != 0)) {
5329 output.writeBool(103, randomizeSearch_);
5331 if (((bitField3_ & 0x00000040) != 0)) {
5332 output.writeInt64(104, searchRandomizationTolerance_);
5334 if (((bitField3_ & 0x00000008) != 0)) {
5335 output.writeBool(105, lnsFocusOnDecisionVariables_);
5337 if (((bitField2_ & 0x08000000) != 0)) {
5338 output.writeBool(106, instantiateAllVariables_);
5340 if (((bitField2_ & 0x00000002) != 0)) {
5341 output.writeInt32(107, booleanEncodingLevel_);
5343 if (((bitField3_ & 0x00000080) != 0)) {
5344 output.writeBool(108, useOptionalVariables_);
5346 if (((bitField3_ & 0x00000100) != 0)) {
5347 output.writeBool(109, useExactLpReason_);
5349 if (((bitField2_ & 0x00800000) != 0)) {
5350 output.writeInt32(110, cpModelProbingLevel_);
5352 if (((bitField2_ & 0x00000010) != 0)) {
5353 output.writeBool(111, addKnapsackCuts_);
5355 if (((bitField2_ & 0x00000200) != 0)) {
5356 output.writeBool(112, addLpConstraintsLazily_);
5358 if (((bitField2_ & 0x80000000) != 0)) {
5359 output.writeBool(113, shareObjectiveBounds_);
5361 if (((bitField3_ & 0x00000001) != 0)) {
5362 output.writeBool(114, shareLevelZeroBounds_);
5364 if (((bitField2_ & 0x00000400) != 0)) {
5365 output.writeDouble(115, minOrthogonalityForLpConstraints_);
5367 if (((bitField2_ & 0x00008000) != 0)) {
5368 output.writeBool(116, exploitAllLpSolution_);
5370 if (((bitField2_ & 0x00000020) != 0)) {
5371 output.writeBool(117, addCgCuts_);
5373 if (((bitField2_ & 0x00000080) != 0)) {
5374 output.writeBool(118, useMirRounding_);
5376 if (((bitField2_ & 0x00000100) != 0)) {
5377 output.writeInt32(119, maxIntegerRoundingScaling_);
5379 if (((bitField2_ & 0x00000040) != 0)) {
5380 output.writeBool(120, addMirCuts_);
5382 if (((bitField2_ & 0x00000800) != 0)) {
5383 output.writeInt64(121, maxInactiveCount_);
5385 if (((bitField2_ & 0x00001000) != 0)) {
5386 output.writeInt64(122, constraintRemovalBatchSize_);
5388 if (((bitField2_ & 0x00040000) != 0)) {
5389 output.writeInt64(123, pseudoCostReliabilityThreshold_);
5391 if (((bitField3_ & 0x00000400) != 0)) {
5392 output.writeDouble(124, mipMaxBound_);
5394 if (((bitField3_ & 0x00000800) != 0)) {
5395 output.writeDouble(125, mipVarScaling_);
5397 if (((bitField3_ & 0x00001000) != 0)) {
5398 output.writeDouble(126, mipWantedPrecision_);
5400 if (((bitField3_ & 0x00002000) != 0)) {
5401 output.writeInt32(127, mipMaxActivityExponent_);
5403 if (((bitField3_ & 0x00004000) != 0)) {
5404 output.writeDouble(128, mipCheckPrecision_);
5406 if (((bitField3_ & 0x00000010) != 0)) {
5407 output.writeBool(129, useRinsLns_);
5409 if (((bitField2_ & 0x00010000) != 0)) {
5410 output.writeBool(130, exploitBestSolution_);
5412 if (((bitField2_ & 0x00020000) != 0)) {
5413 output.writeBool(131, exploitObjective_);
5415 if (((bitField2_ & 0x04000000) != 0)) {
5416 output.writeBool(132, fillTightenedDomainsInResponse_);
5418 if (((bitField3_ & 0x00000200) != 0)) {
5419 output.writeBool(133, useCombinedNoOverlap_);
5421 unknownFields.writeTo(output);
5426 int size = memoizedSize;
5427 if (size != -1)
return size;
5430 if (((bitField0_ & 0x00000001) != 0)) {
5431 size +=
com.
google.protobuf.CodedOutputStream
5432 .computeEnumSize(1, preferredVariableOrder_);
5434 if (((bitField0_ & 0x00000002) != 0)) {
5435 size +=
com.
google.protobuf.CodedOutputStream
5436 .computeEnumSize(2, initialPolarity_);
5438 if (((bitField0_ & 0x00000100) != 0)) {
5439 size +=
com.
google.protobuf.CodedOutputStream
5440 .computeEnumSize(4, minimizationAlgorithm_);
5442 if (((bitField0_ & 0x00000800) != 0)) {
5443 size +=
com.
google.protobuf.CodedOutputStream
5444 .computeInt32Size(11, clauseCleanupPeriod_);
5446 if (((bitField0_ & 0x00001000) != 0)) {
5447 size +=
com.
google.protobuf.CodedOutputStream
5448 .computeInt32Size(13, clauseCleanupTarget_);
5450 if (((bitField0_ & 0x00100000) != 0)) {
5451 size +=
com.
google.protobuf.CodedOutputStream
5452 .computeDoubleSize(15, variableActivityDecay_);
5454 if (((bitField0_ & 0x00200000) != 0)) {
5455 size +=
com.
google.protobuf.CodedOutputStream
5456 .computeDoubleSize(16, maxVariableActivityValue_);
5458 if (((bitField0_ & 0x02000000) != 0)) {
5459 size +=
com.
google.protobuf.CodedOutputStream
5460 .computeDoubleSize(17, clauseActivityDecay_);
5462 if (((bitField0_ & 0x04000000) != 0)) {
5463 size +=
com.
google.protobuf.CodedOutputStream
5464 .computeDoubleSize(18, maxClauseActivityValue_);
5466 if (((bitField0_ & 0x00400000) != 0)) {
5467 size +=
com.
google.protobuf.CodedOutputStream
5468 .computeDoubleSize(22, glucoseMaxDecay_);
5470 if (((bitField0_ & 0x00800000) != 0)) {
5471 size +=
com.
google.protobuf.CodedOutputStream
5472 .computeDoubleSize(23, glucoseDecayIncrement_);
5474 if (((bitField0_ & 0x01000000) != 0)) {
5475 size +=
com.
google.protobuf.CodedOutputStream
5476 .computeInt32Size(24, glucoseDecayIncrementPeriod_);
5478 if (((bitField0_ & 0x10000000) != 0)) {
5479 size +=
com.
google.protobuf.CodedOutputStream
5480 .computeInt32Size(30, restartPeriod_);
5482 if (((bitField1_ & 0x00000400) != 0)) {
5483 size +=
com.
google.protobuf.CodedOutputStream
5484 .computeInt32Size(31, randomSeed_);
5486 if (((bitField0_ & 0x00000010) != 0)) {
5487 size +=
com.
google.protobuf.CodedOutputStream
5488 .computeDoubleSize(32, randomBranchesRatio_);
5490 if (((bitField1_ & 0x00000200) != 0)) {
5491 size +=
com.
google.protobuf.CodedOutputStream
5492 .computeBoolSize(33, treatBinaryClausesSeparately_);
5494 if (((bitField0_ & 0x00000200) != 0)) {
5495 size +=
com.
google.protobuf.CodedOutputStream
5496 .computeEnumSize(34, binaryMinimizationAlgorithm_);
5498 if (((bitField1_ & 0x00200000) != 0)) {
5499 size +=
com.
google.protobuf.CodedOutputStream
5500 .computeBoolSize(35, useOptimizationHints_);
5502 if (((bitField1_ & 0x00000020) != 0)) {
5503 size +=
com.
google.protobuf.CodedOutputStream
5504 .computeDoubleSize(36, maxTimeInSeconds_);
5506 if (((bitField1_ & 0x00000080) != 0)) {
5507 size +=
com.
google.protobuf.CodedOutputStream
5508 .computeInt64Size(37, maxNumberOfConflicts_);
5510 if (((bitField1_ & 0x00000100) != 0)) {
5511 size +=
com.
google.protobuf.CodedOutputStream
5512 .computeInt64Size(40, maxMemoryInMb_);
5514 if (((bitField1_ & 0x00000800) != 0)) {
5515 size +=
com.
google.protobuf.CodedOutputStream
5516 .computeBoolSize(41, logSearchProgress_);
5518 if (((bitField1_ & 0x00001000) != 0)) {
5519 size +=
com.
google.protobuf.CodedOutputStream
5520 .computeBoolSize(43, usePbResolution_);
5522 if (((bitField0_ & 0x00000004) != 0)) {
5523 size +=
com.
google.protobuf.CodedOutputStream
5524 .computeBoolSize(44, usePhaseSaving_);
5526 if (((bitField0_ & 0x00000008) != 0)) {
5527 size +=
com.
google.protobuf.CodedOutputStream
5528 .computeDoubleSize(45, randomPolarityRatio_);
5530 if (((bitField0_ & 0x00010000) != 0)) {
5531 size +=
com.
google.protobuf.CodedOutputStream
5532 .computeInt32Size(46, pbCleanupIncrement_);
5534 if (((bitField0_ & 0x00020000) != 0)) {
5535 size +=
com.
google.protobuf.CodedOutputStream
5536 .computeDoubleSize(47, pbCleanupRatio_);
5538 if (((bitField1_ & 0x00002000) != 0)) {
5539 size +=
com.
google.protobuf.CodedOutputStream
5540 .computeBoolSize(48, minimizeReductionDuringPbResolution_);
5542 if (((bitField1_ & 0x00004000) != 0)) {
5543 size +=
com.
google.protobuf.CodedOutputStream
5544 .computeBoolSize(49, countAssumptionLevelsInLbd_);
5546 if (((bitField1_ & 0x00400000) != 0)) {
5547 size +=
com.
google.protobuf.CodedOutputStream
5548 .computeBoolSize(50, minimizeCore_);
5550 if (((bitField1_ & 0x02000000) != 0)) {
5551 size +=
com.
google.protobuf.CodedOutputStream
5552 .computeEnumSize(51, maxSatAssumptionOrder_);
5554 if (((bitField1_ & 0x04000000) != 0)) {
5555 size +=
com.
google.protobuf.CodedOutputStream
5556 .computeBoolSize(52, maxSatReverseAssumptionOrder_);
5558 if (((bitField1_ & 0x08000000) != 0)) {
5559 size +=
com.
google.protobuf.CodedOutputStream
5560 .computeEnumSize(53, maxSatStratification_);
5562 if (((bitField1_ & 0x00008000) != 0)) {
5563 size +=
com.
google.protobuf.CodedOutputStream
5564 .computeInt32Size(54, presolveBveThreshold_);
5566 if (((bitField1_ & 0x00010000) != 0)) {
5567 size +=
com.
google.protobuf.CodedOutputStream
5568 .computeInt32Size(55, presolveBveClauseWeight_);
5570 if (((bitField0_ & 0x00000400) != 0)) {
5571 size +=
com.
google.protobuf.CodedOutputStream
5572 .computeBoolSize(56, subsumptionDuringConflictAnalysis_);
5574 if (((bitField1_ & 0x00020000) != 0)) {
5575 size +=
com.
google.protobuf.CodedOutputStream
5576 .computeDoubleSize(57, presolveProbingDeterministicTimeLimit_);
5578 if (((bitField0_ & 0x00002000) != 0)) {
5579 size +=
com.
google.protobuf.CodedOutputStream
5580 .computeEnumSize(58, clauseCleanupProtection_);
5582 if (((bitField0_ & 0x00004000) != 0)) {
5583 size +=
com.
google.protobuf.CodedOutputStream
5584 .computeInt32Size(59, clauseCleanupLbdBound_);
5586 if (((bitField0_ & 0x00008000) != 0)) {
5587 size +=
com.
google.protobuf.CodedOutputStream
5588 .computeEnumSize(60, clauseCleanupOrdering_);
5592 for (
int i = 0; i < restartAlgorithms_.size(); i++) {
5593 dataSize +=
com.
google.protobuf.CodedOutputStream
5594 .computeEnumSizeNoTag(restartAlgorithms_.get(i));
5597 size += 2 * restartAlgorithms_.size();
5599 if (((bitField0_ & 0x20000000) != 0)) {
5600 size +=
com.
google.protobuf.CodedOutputStream
5601 .computeInt32Size(62, restartRunningWindowSize_);
5603 if (((bitField0_ & 0x40000000) != 0)) {
5604 size +=
com.
google.protobuf.CodedOutputStream
5605 .computeDoubleSize(63, restartDlAverageRatio_);
5607 if (((bitField1_ & 0x00000001) != 0)) {
5608 size +=
com.
google.protobuf.CodedOutputStream
5609 .computeBoolSize(64, useBlockingRestart_);
5611 if (((bitField1_ & 0x00000002) != 0)) {
5612 size +=
com.
google.protobuf.CodedOutputStream
5613 .computeInt32Size(65, blockingRestartWindowSize_);
5615 if (((bitField1_ & 0x00000004) != 0)) {
5616 size +=
com.
google.protobuf.CodedOutputStream
5617 .computeDoubleSize(66, blockingRestartMultiplier_);
5619 if (((bitField1_ & 0x00000040) != 0)) {
5620 size +=
com.
google.protobuf.CodedOutputStream
5621 .computeDoubleSize(67, maxDeterministicTime_);
5623 if (((bitField1_ & 0x00000008) != 0)) {
5624 size +=
com.
google.protobuf.CodedOutputStream
5625 .computeInt32Size(68, numConflictsBeforeStrategyChanges_);
5627 if (((bitField1_ & 0x00000010) != 0)) {
5628 size +=
com.
google.protobuf.CodedOutputStream
5629 .computeDoubleSize(69, strategyChangeIncreaseRatio_);
5631 if (((bitField0_ & 0x08000000) != 0)) {
5632 size +=
com.
google.protobuf.GeneratedMessageV3.computeStringSize(70, defaultRestartAlgorithms_);
5634 if (((bitField0_ & 0x80000000) != 0)) {
5635 size +=
com.
google.protobuf.CodedOutputStream
5636 .computeDoubleSize(71, restartLbdAverageRatio_);
5638 if (((bitField1_ & 0x00080000) != 0)) {
5639 size +=
com.
google.protobuf.CodedOutputStream
5640 .computeBoolSize(72, presolveUseBva_);
5642 if (((bitField1_ & 0x00100000) != 0)) {
5643 size +=
com.
google.protobuf.CodedOutputStream
5644 .computeInt32Size(73, presolveBvaThreshold_);
5646 if (((bitField1_ & 0x10000000) != 0)) {
5647 size +=
com.
google.protobuf.CodedOutputStream
5648 .computeBoolSize(74, usePrecedencesInDisjunctiveConstraint_);
5650 if (((bitField0_ & 0x00000020) != 0)) {
5651 size +=
com.
google.protobuf.CodedOutputStream
5652 .computeBoolSize(75, useErwaHeuristic_);
5654 if (((bitField0_ & 0x00000040) != 0)) {
5655 size +=
com.
google.protobuf.CodedOutputStream
5656 .computeDoubleSize(76, initialVariablesActivity_);
5658 if (((bitField0_ & 0x00000080) != 0)) {
5659 size +=
com.
google.protobuf.CodedOutputStream
5660 .computeBoolSize(77, alsoBumpVariablesInConflictReasons_);
5662 if (((bitField1_ & 0x20000000) != 0)) {
5663 size +=
com.
google.protobuf.CodedOutputStream
5664 .computeBoolSize(78, useOverloadCheckerInCumulativeConstraint_);
5666 if (((bitField1_ & 0x40000000) != 0)) {
5667 size +=
com.
google.protobuf.CodedOutputStream
5668 .computeBoolSize(79, useTimetableEdgeFindingInCumulativeConstraint_);
5670 if (((bitField1_ & 0x80000000) != 0)) {
5671 size +=
com.
google.protobuf.CodedOutputStream
5672 .computeBoolSize(80, useDisjunctiveConstraintInCumulativeConstraint_);
5674 if (((bitField2_ & 0x00002000) != 0)) {
5675 size +=
com.
google.protobuf.CodedOutputStream
5676 .computeEnumSize(82, searchBranching_);
5678 if (((bitField2_ & 0x00080000) != 0)) {
5679 size +=
com.
google.protobuf.CodedOutputStream
5680 .computeBoolSize(83, optimizeWithCore_);
5682 if (((bitField1_ & 0x00800000) != 0)) {
5683 size +=
com.
google.protobuf.CodedOutputStream
5684 .computeBoolSize(84, findMultipleCores_);
5686 if (((bitField2_ & 0x00200000) != 0)) {
5687 size +=
com.
google.protobuf.CodedOutputStream
5688 .computeBoolSize(85, optimizeWithMaxHs_);
5690 if (((bitField2_ & 0x00400000) != 0)) {
5691 size +=
com.
google.protobuf.CodedOutputStream
5692 .computeBoolSize(86, cpModelPresolve_);
5694 if (((bitField2_ & 0x02000000) != 0)) {
5695 size +=
com.
google.protobuf.CodedOutputStream
5696 .computeBoolSize(87, enumerateAllSolutions_);
5698 if (((bitField1_ & 0x00040000) != 0)) {
5699 size +=
com.
google.protobuf.CodedOutputStream
5700 .computeBoolSize(88, presolveBlockedClause_);
5702 if (((bitField1_ & 0x01000000) != 0)) {
5703 size +=
com.
google.protobuf.CodedOutputStream
5704 .computeBoolSize(89, coverOptimization_);
5706 if (((bitField2_ & 0x00000001) != 0)) {
5707 size +=
com.
google.protobuf.CodedOutputStream
5708 .computeInt32Size(90, linearizationLevel_);
5710 if (((bitField2_ & 0x00000004) != 0)) {
5711 size +=
com.
google.protobuf.CodedOutputStream
5712 .computeInt32Size(91, maxNumCuts_);
5714 if (((bitField2_ & 0x00000008) != 0)) {
5715 size +=
com.
google.protobuf.CodedOutputStream
5716 .computeBoolSize(92, onlyAddCutsAtLevelZero_);
5718 if (((bitField2_ & 0x01000000) != 0)) {
5719 size +=
com.
google.protobuf.CodedOutputStream
5720 .computeBoolSize(93, cpModelUseSatPresolve_);
5722 if (((bitField2_ & 0x00004000) != 0)) {
5723 size +=
com.
google.protobuf.CodedOutputStream
5724 .computeBoolSize(94, exploitIntegerLpSolution_);
5726 if (((bitField2_ & 0x10000000) != 0)) {
5727 size +=
com.
google.protobuf.CodedOutputStream
5728 .computeBoolSize(95, autoDetectGreaterThanAtLeastOneOf_);
5730 if (((bitField0_ & 0x00040000) != 0)) {
5731 size +=
com.
google.protobuf.CodedOutputStream
5732 .computeInt32Size(96, minimizeWithPropagationRestartPeriod_);
5734 if (((bitField0_ & 0x00080000) != 0)) {
5735 size +=
com.
google.protobuf.CodedOutputStream
5736 .computeInt32Size(97, minimizeWithPropagationNumDecisions_);
5738 if (((bitField2_ & 0x20000000) != 0)) {
5739 size +=
com.
google.protobuf.CodedOutputStream
5740 .computeBoolSize(98, stopAfterFirstSolution_);
5742 if (((bitField2_ & 0x00100000) != 0)) {
5743 size +=
com.
google.protobuf.CodedOutputStream
5744 .computeInt32Size(99, binarySearchNumConflicts_);
5746 if (((bitField2_ & 0x40000000) != 0)) {
5747 size +=
com.
google.protobuf.CodedOutputStream
5748 .computeInt32Size(100, numSearchWorkers_);
5750 if (((bitField3_ & 0x00000002) != 0)) {
5751 size +=
com.
google.protobuf.CodedOutputStream
5752 .computeBoolSize(101, useLns_);
5754 if (((bitField3_ & 0x00000004) != 0)) {
5755 size +=
com.
google.protobuf.CodedOutputStream
5756 .computeInt32Size(102, lnsNumThreads_);
5758 if (((bitField3_ & 0x00000020) != 0)) {
5759 size +=
com.
google.protobuf.CodedOutputStream
5760 .computeBoolSize(103, randomizeSearch_);
5762 if (((bitField3_ & 0x00000040) != 0)) {
5763 size +=
com.
google.protobuf.CodedOutputStream
5764 .computeInt64Size(104, searchRandomizationTolerance_);
5766 if (((bitField3_ & 0x00000008) != 0)) {
5767 size +=
com.
google.protobuf.CodedOutputStream
5768 .computeBoolSize(105, lnsFocusOnDecisionVariables_);
5770 if (((bitField2_ & 0x08000000) != 0)) {
5771 size +=
com.
google.protobuf.CodedOutputStream
5772 .computeBoolSize(106, instantiateAllVariables_);
5774 if (((bitField2_ & 0x00000002) != 0)) {
5775 size +=
com.
google.protobuf.CodedOutputStream
5776 .computeInt32Size(107, booleanEncodingLevel_);
5778 if (((bitField3_ & 0x00000080) != 0)) {
5779 size +=
com.
google.protobuf.CodedOutputStream
5780 .computeBoolSize(108, useOptionalVariables_);
5782 if (((bitField3_ & 0x00000100) != 0)) {
5783 size +=
com.
google.protobuf.CodedOutputStream
5784 .computeBoolSize(109, useExactLpReason_);
5786 if (((bitField2_ & 0x00800000) != 0)) {
5787 size +=
com.
google.protobuf.CodedOutputStream
5788 .computeInt32Size(110, cpModelProbingLevel_);
5790 if (((bitField2_ & 0x00000010) != 0)) {
5791 size +=
com.
google.protobuf.CodedOutputStream
5792 .computeBoolSize(111, addKnapsackCuts_);
5794 if (((bitField2_ & 0x00000200) != 0)) {
5795 size +=
com.
google.protobuf.CodedOutputStream
5796 .computeBoolSize(112, addLpConstraintsLazily_);
5798 if (((bitField2_ & 0x80000000) != 0)) {
5799 size +=
com.
google.protobuf.CodedOutputStream
5800 .computeBoolSize(113, shareObjectiveBounds_);
5802 if (((bitField3_ & 0x00000001) != 0)) {
5803 size +=
com.
google.protobuf.CodedOutputStream
5804 .computeBoolSize(114, shareLevelZeroBounds_);
5806 if (((bitField2_ & 0x00000400) != 0)) {
5807 size +=
com.
google.protobuf.CodedOutputStream
5808 .computeDoubleSize(115, minOrthogonalityForLpConstraints_);
5810 if (((bitField2_ & 0x00008000) != 0)) {
5811 size +=
com.
google.protobuf.CodedOutputStream
5812 .computeBoolSize(116, exploitAllLpSolution_);
5814 if (((bitField2_ & 0x00000020) != 0)) {
5815 size +=
com.
google.protobuf.CodedOutputStream
5816 .computeBoolSize(117, addCgCuts_);
5818 if (((bitField2_ & 0x00000080) != 0)) {
5819 size +=
com.
google.protobuf.CodedOutputStream
5820 .computeBoolSize(118, useMirRounding_);
5822 if (((bitField2_ & 0x00000100) != 0)) {
5823 size +=
com.
google.protobuf.CodedOutputStream
5824 .computeInt32Size(119, maxIntegerRoundingScaling_);
5826 if (((bitField2_ & 0x00000040) != 0)) {
5827 size +=
com.
google.protobuf.CodedOutputStream
5828 .computeBoolSize(120, addMirCuts_);
5830 if (((bitField2_ & 0x00000800) != 0)) {
5831 size +=
com.
google.protobuf.CodedOutputStream
5832 .computeInt64Size(121, maxInactiveCount_);
5834 if (((bitField2_ & 0x00001000) != 0)) {
5835 size +=
com.
google.protobuf.CodedOutputStream
5836 .computeInt64Size(122, constraintRemovalBatchSize_);
5838 if (((bitField2_ & 0x00040000) != 0)) {
5839 size +=
com.
google.protobuf.CodedOutputStream
5840 .computeInt64Size(123, pseudoCostReliabilityThreshold_);
5842 if (((bitField3_ & 0x00000400) != 0)) {
5843 size +=
com.
google.protobuf.CodedOutputStream
5844 .computeDoubleSize(124, mipMaxBound_);
5846 if (((bitField3_ & 0x00000800) != 0)) {
5847 size +=
com.
google.protobuf.CodedOutputStream
5848 .computeDoubleSize(125, mipVarScaling_);
5850 if (((bitField3_ & 0x00001000) != 0)) {
5851 size +=
com.
google.protobuf.CodedOutputStream
5852 .computeDoubleSize(126, mipWantedPrecision_);
5854 if (((bitField3_ & 0x00002000) != 0)) {
5855 size +=
com.
google.protobuf.CodedOutputStream
5856 .computeInt32Size(127, mipMaxActivityExponent_);
5858 if (((bitField3_ & 0x00004000) != 0)) {
5859 size +=
com.
google.protobuf.CodedOutputStream
5860 .computeDoubleSize(128, mipCheckPrecision_);
5862 if (((bitField3_ & 0x00000010) != 0)) {
5863 size +=
com.
google.protobuf.CodedOutputStream
5864 .computeBoolSize(129, useRinsLns_);
5866 if (((bitField2_ & 0x00010000) != 0)) {
5867 size +=
com.
google.protobuf.CodedOutputStream
5868 .computeBoolSize(130, exploitBestSolution_);
5870 if (((bitField2_ & 0x00020000) != 0)) {
5871 size +=
com.
google.protobuf.CodedOutputStream
5872 .computeBoolSize(131, exploitObjective_);
5874 if (((bitField2_ & 0x04000000) != 0)) {
5875 size +=
com.
google.protobuf.CodedOutputStream
5876 .computeBoolSize(132, fillTightenedDomainsInResponse_);
5878 if (((bitField3_ & 0x00000200) != 0)) {
5879 size +=
com.
google.protobuf.CodedOutputStream
5880 .computeBoolSize(133, useCombinedNoOverlap_);
5882 size += unknownFields.getSerializedSize();
5883 memoizedSize = size;
5888 public boolean equals(
final java.lang.Object obj) {
5893 return super.equals(obj);
5899 if (preferredVariableOrder_ != other.preferredVariableOrder_)
return false;
5903 if (initialPolarity_ != other.initialPolarity_)
return false;
5908 != other.getUsePhaseSaving())
return false;
5913 != java.lang.Double.doubleToLongBits(
5914 other.getRandomPolarityRatio()))
return false;
5919 != java.lang.Double.doubleToLongBits(
5920 other.getRandomBranchesRatio()))
return false;
5925 != other.getUseErwaHeuristic())
return false;
5930 != java.lang.Double.doubleToLongBits(
5931 other.getInitialVariablesActivity()))
return false;
5936 != other.getAlsoBumpVariablesInConflictReasons())
return false;
5940 if (minimizationAlgorithm_ != other.minimizationAlgorithm_)
return false;
5944 if (binaryMinimizationAlgorithm_ != other.binaryMinimizationAlgorithm_)
return false;
5949 != other.getSubsumptionDuringConflictAnalysis())
return false;
5954 != other.getClauseCleanupPeriod())
return false;
5959 != other.getClauseCleanupTarget())
return false;
5963 if (clauseCleanupProtection_ != other.clauseCleanupProtection_)
return false;
5968 != other.getClauseCleanupLbdBound())
return false;
5972 if (clauseCleanupOrdering_ != other.clauseCleanupOrdering_)
return false;
5977 != other.getPbCleanupIncrement())
return false;
5982 != java.lang.Double.doubleToLongBits(
5983 other.getPbCleanupRatio()))
return false;
5988 != other.getMinimizeWithPropagationRestartPeriod())
return false;
5993 != other.getMinimizeWithPropagationNumDecisions())
return false;
5998 != java.lang.Double.doubleToLongBits(
5999 other.getVariableActivityDecay()))
return false;
6004 != java.lang.Double.doubleToLongBits(
6005 other.getMaxVariableActivityValue()))
return false;
6010 != java.lang.Double.doubleToLongBits(
6011 other.getGlucoseMaxDecay()))
return false;
6016 != java.lang.Double.doubleToLongBits(
6017 other.getGlucoseDecayIncrement()))
return false;
6022 != other.getGlucoseDecayIncrementPeriod())
return false;
6027 != java.lang.Double.doubleToLongBits(
6028 other.getClauseActivityDecay()))
return false;
6033 != java.lang.Double.doubleToLongBits(
6034 other.getMaxClauseActivityValue()))
return false;
6036 if (!restartAlgorithms_.equals(other.restartAlgorithms_))
return false;
6040 .equals(other.getDefaultRestartAlgorithms()))
return false;
6045 != other.getRestartPeriod())
return false;
6050 != other.getRestartRunningWindowSize())
return false;
6055 != java.lang.Double.doubleToLongBits(
6056 other.getRestartDlAverageRatio()))
return false;
6061 != java.lang.Double.doubleToLongBits(
6062 other.getRestartLbdAverageRatio()))
return false;
6067 != other.getUseBlockingRestart())
return false;
6072 != other.getBlockingRestartWindowSize())
return false;
6077 != java.lang.Double.doubleToLongBits(
6078 other.getBlockingRestartMultiplier()))
return false;
6083 != other.getNumConflictsBeforeStrategyChanges())
return false;
6088 != java.lang.Double.doubleToLongBits(
6089 other.getStrategyChangeIncreaseRatio()))
return false;
6094 != java.lang.Double.doubleToLongBits(
6095 other.getMaxTimeInSeconds()))
return false;
6100 != java.lang.Double.doubleToLongBits(
6101 other.getMaxDeterministicTime()))
return false;
6106 != other.getMaxNumberOfConflicts())
return false;
6111 != other.getMaxMemoryInMb())
return false;
6116 != other.getTreatBinaryClausesSeparately())
return false;
6121 != other.getRandomSeed())
return false;
6126 != other.getLogSearchProgress())
return false;
6131 != other.getUsePbResolution())
return false;
6136 != other.getMinimizeReductionDuringPbResolution())
return false;
6141 != other.getCountAssumptionLevelsInLbd())
return false;
6146 != other.getPresolveBveThreshold())
return false;
6151 != other.getPresolveBveClauseWeight())
return false;
6156 != java.lang.Double.doubleToLongBits(
6157 other.getPresolveProbingDeterministicTimeLimit()))
return false;
6162 != other.getPresolveBlockedClause())
return false;
6167 != other.getPresolveUseBva())
return false;
6172 != other.getPresolveBvaThreshold())
return false;
6177 != other.getUseOptimizationHints())
return false;
6182 != other.getMinimizeCore())
return false;
6187 != other.getFindMultipleCores())
return false;
6192 != other.getCoverOptimization())
return false;
6196 if (maxSatAssumptionOrder_ != other.maxSatAssumptionOrder_)
return false;
6201 != other.getMaxSatReverseAssumptionOrder())
return false;
6205 if (maxSatStratification_ != other.maxSatStratification_)
return false;
6210 != other.getUsePrecedencesInDisjunctiveConstraint())
return false;
6215 != other.getUseOverloadCheckerInCumulativeConstraint())
return false;
6220 != other.getUseTimetableEdgeFindingInCumulativeConstraint())
return false;
6225 != other.getUseDisjunctiveConstraintInCumulativeConstraint())
return false;
6230 != other.getLinearizationLevel())
return false;
6235 != other.getBooleanEncodingLevel())
return false;
6240 != other.getMaxNumCuts())
return false;
6245 != other.getOnlyAddCutsAtLevelZero())
return false;
6250 != other.getAddKnapsackCuts())
return false;
6252 if (
hasAddCgCuts() != other.hasAddCgCuts())
return false;
6255 != other.getAddCgCuts())
return false;
6260 != other.getAddMirCuts())
return false;
6265 != other.getUseMirRounding())
return false;
6270 != other.getMaxIntegerRoundingScaling())
return false;
6275 != other.getAddLpConstraintsLazily())
return false;
6280 != java.lang.Double.doubleToLongBits(
6281 other.getMinOrthogonalityForLpConstraints()))
return false;
6286 != other.getMaxInactiveCount())
return false;
6291 != other.getConstraintRemovalBatchSize())
return false;
6295 if (searchBranching_ != other.searchBranching_)
return false;
6300 != other.getExploitIntegerLpSolution())
return false;
6305 != other.getExploitAllLpSolution())
return false;
6310 != other.getExploitBestSolution())
return false;
6315 != other.getExploitObjective())
return false;
6320 != other.getPseudoCostReliabilityThreshold())
return false;
6325 != other.getOptimizeWithCore())
return false;
6330 != other.getBinarySearchNumConflicts())
return false;
6335 != other.getOptimizeWithMaxHs())
return false;
6340 != other.getCpModelPresolve())
return false;
6345 != other.getCpModelProbingLevel())
return false;
6350 != other.getCpModelUseSatPresolve())
return false;
6355 != other.getEnumerateAllSolutions())
return false;
6360 != other.getFillTightenedDomainsInResponse())
return false;
6365 != other.getInstantiateAllVariables())
return false;
6370 != other.getAutoDetectGreaterThanAtLeastOneOf())
return false;
6375 != other.getStopAfterFirstSolution())
return false;
6380 != other.getNumSearchWorkers())
return false;
6385 != other.getShareObjectiveBounds())
return false;
6390 != other.getShareLevelZeroBounds())
return false;
6392 if (
hasUseLns() != other.hasUseLns())
return false;
6395 != other.getUseLns())
return false;
6400 != other.getLnsNumThreads())
return false;
6405 != other.getLnsFocusOnDecisionVariables())
return false;
6410 != other.getUseRinsLns())
return false;
6415 != other.getRandomizeSearch())
return false;
6420 != other.getSearchRandomizationTolerance())
return false;
6425 != other.getUseOptionalVariables())
return false;
6430 != other.getUseExactLpReason())
return false;
6435 != other.getUseCombinedNoOverlap())
return false;
6440 != java.lang.Double.doubleToLongBits(
6441 other.getMipMaxBound()))
return false;
6446 != java.lang.Double.doubleToLongBits(
6447 other.getMipVarScaling()))
return false;
6452 != java.lang.Double.doubleToLongBits(
6453 other.getMipWantedPrecision()))
return false;
6458 != other.getMipMaxActivityExponent())
return false;
6463 != java.lang.Double.doubleToLongBits(
6464 other.getMipCheckPrecision()))
return false;
6466 if (!unknownFields.equals(other.unknownFields))
return false;
6472 if (memoizedHashCode != 0) {
6473 return memoizedHashCode;
6479 hash = (53 * hash) + preferredVariableOrder_;
6483 hash = (53 * hash) + initialPolarity_;
6487 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6492 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6497 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6502 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6507 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6512 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6517 hash = (53 * hash) + minimizationAlgorithm_;
6521 hash = (53 * hash) + binaryMinimizationAlgorithm_;
6525 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6538 hash = (53 * hash) + clauseCleanupProtection_;
6546 hash = (53 * hash) + clauseCleanupOrdering_;
6554 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6567 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6572 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6577 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6582 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6591 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6596 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6601 hash = (53 * hash) + restartAlgorithms_.hashCode();
6617 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6622 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6627 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6636 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6645 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6650 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6655 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6660 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6665 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6670 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6679 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6684 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6689 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6694 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6707 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6712 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6717 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6726 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6731 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6736 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6741 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6746 hash = (53 * hash) + maxSatAssumptionOrder_;
6750 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6755 hash = (53 * hash) + maxSatStratification_;
6759 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6764 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6769 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6774 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6791 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6796 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6801 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6806 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6811 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6820 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6825 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6830 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6835 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6840 hash = (53 * hash) + searchBranching_;
6844 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6849 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6854 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6859 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6864 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6869 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6878 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6883 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6892 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6897 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6902 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6907 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6912 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6917 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6926 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6931 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6936 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6945 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6950 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6955 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6960 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6965 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6970 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6975 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6980 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6985 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6990 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6999 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
7002 hash = (29 * hash) + unknownFields.hashCode();
7003 memoizedHashCode = hash;
7008 java.nio.ByteBuffer data)
7009 throws com.
google.protobuf.InvalidProtocolBufferException {
7010 return PARSER.parseFrom(data);
7013 java.nio.ByteBuffer data,
7014 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7015 throws com.
google.protobuf.InvalidProtocolBufferException {
7016 return PARSER.parseFrom(data, extensionRegistry);
7020 throws com.
google.protobuf.InvalidProtocolBufferException {
7021 return PARSER.parseFrom(data);
7025 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7026 throws com.
google.protobuf.InvalidProtocolBufferException {
7027 return PARSER.parseFrom(data, extensionRegistry);
7030 throws com.
google.protobuf.InvalidProtocolBufferException {
7031 return PARSER.parseFrom(data);
7035 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7036 throws com.
google.protobuf.InvalidProtocolBufferException {
7037 return PARSER.parseFrom(data, extensionRegistry);
7040 throws java.io.IOException {
7041 return com.
google.protobuf.GeneratedMessageV3
7042 .parseWithIOException(
PARSER, input);
7045 java.io.InputStream input,
7046 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7047 throws java.io.IOException {
7048 return com.
google.protobuf.GeneratedMessageV3
7049 .parseWithIOException(
PARSER, input, extensionRegistry);
7052 throws java.io.IOException {
7053 return com.
google.protobuf.GeneratedMessageV3
7054 .parseDelimitedWithIOException(
PARSER, input);
7057 java.io.InputStream input,
7058 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7059 throws java.io.IOException {
7060 return com.
google.protobuf.GeneratedMessageV3
7061 .parseDelimitedWithIOException(
PARSER, input, extensionRegistry);
7064 com.
google.protobuf.CodedInputStream input)
7065 throws java.io.IOException {
7066 return com.
google.protobuf.GeneratedMessageV3
7067 .parseWithIOException(
PARSER, input);
7070 com.
google.protobuf.CodedInputStream input,
7071 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
7072 throws java.io.IOException {
7073 return com.
google.protobuf.GeneratedMessageV3
7074 .parseWithIOException(
PARSER, input, extensionRegistry);
7087 return this == DEFAULT_INSTANCE
7093 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
7107 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
7110 public static final com.
google.protobuf.Descriptors.Descriptor
7116 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
7119 .ensureFieldAccessorsInitialized(
7125 maybeForceBuilderInitialization();
7129 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
7131 maybeForceBuilderInitialization();
7133 private void maybeForceBuilderInitialization() {
7134 if (
com.
google.protobuf.GeneratedMessageV3
7135 .alwaysUseFieldBuilders) {
7141 preferredVariableOrder_ = 0;
7142 bitField0_ = (bitField0_ & ~0x00000001);
7143 initialPolarity_ = 1;
7144 bitField0_ = (bitField0_ & ~0x00000002);
7145 usePhaseSaving_ =
true;
7146 bitField0_ = (bitField0_ & ~0x00000004);
7147 randomPolarityRatio_ = 0D;
7148 bitField0_ = (bitField0_ & ~0x00000008);
7149 randomBranchesRatio_ = 0D;
7150 bitField0_ = (bitField0_ & ~0x00000010);
7151 useErwaHeuristic_ =
false;
7152 bitField0_ = (bitField0_ & ~0x00000020);
7153 initialVariablesActivity_ = 0D;
7154 bitField0_ = (bitField0_ & ~0x00000040);
7155 alsoBumpVariablesInConflictReasons_ =
false;
7156 bitField0_ = (bitField0_ & ~0x00000080);
7157 minimizationAlgorithm_ = 2;
7158 bitField0_ = (bitField0_ & ~0x00000100);
7159 binaryMinimizationAlgorithm_ = 1;
7160 bitField0_ = (bitField0_ & ~0x00000200);
7161 subsumptionDuringConflictAnalysis_ =
true;
7162 bitField0_ = (bitField0_ & ~0x00000400);
7163 clauseCleanupPeriod_ = 10000;
7164 bitField0_ = (bitField0_ & ~0x00000800);
7165 clauseCleanupTarget_ = 10000;
7166 bitField0_ = (bitField0_ & ~0x00001000);
7167 clauseCleanupProtection_ = 0;
7168 bitField0_ = (bitField0_ & ~0x00002000);
7169 clauseCleanupLbdBound_ = 5;
7170 bitField0_ = (bitField0_ & ~0x00004000);
7171 clauseCleanupOrdering_ = 0;
7172 bitField0_ = (bitField0_ & ~0x00008000);
7173 pbCleanupIncrement_ = 200;
7174 bitField0_ = (bitField0_ & ~0x00010000);
7175 pbCleanupRatio_ = 0.5D;
7176 bitField0_ = (bitField0_ & ~0x00020000);
7177 minimizeWithPropagationRestartPeriod_ = 10;
7178 bitField0_ = (bitField0_ & ~0x00040000);
7179 minimizeWithPropagationNumDecisions_ = 1000;
7180 bitField0_ = (bitField0_ & ~0x00080000);
7181 variableActivityDecay_ = 0.8D;
7182 bitField0_ = (bitField0_ & ~0x00100000);
7183 maxVariableActivityValue_ = 1e+100D;
7184 bitField0_ = (bitField0_ & ~0x00200000);
7185 glucoseMaxDecay_ = 0.95D;
7186 bitField0_ = (bitField0_ & ~0x00400000);
7187 glucoseDecayIncrement_ = 0.01D;
7188 bitField0_ = (bitField0_ & ~0x00800000);
7189 glucoseDecayIncrementPeriod_ = 5000;
7190 bitField0_ = (bitField0_ & ~0x01000000);
7191 clauseActivityDecay_ = 0.999D;
7192 bitField0_ = (bitField0_ & ~0x02000000);
7193 maxClauseActivityValue_ = 1e+20D;
7194 bitField0_ = (bitField0_ & ~0x04000000);
7195 restartAlgorithms_ = java.util.Collections.emptyList();
7196 bitField0_ = (bitField0_ & ~0x08000000);
7197 defaultRestartAlgorithms_ =
"LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART";
7198 bitField0_ = (bitField0_ & ~0x10000000);
7199 restartPeriod_ = 50;
7200 bitField0_ = (bitField0_ & ~0x20000000);
7201 restartRunningWindowSize_ = 50;
7202 bitField0_ = (bitField0_ & ~0x40000000);
7203 restartDlAverageRatio_ = 1D;
7204 bitField0_ = (bitField0_ & ~0x80000000);
7205 restartLbdAverageRatio_ = 1D;
7206 bitField1_ = (bitField1_ & ~0x00000001);
7207 useBlockingRestart_ =
false;
7208 bitField1_ = (bitField1_ & ~0x00000002);
7209 blockingRestartWindowSize_ = 5000;
7210 bitField1_ = (bitField1_ & ~0x00000004);
7211 blockingRestartMultiplier_ = 1.4D;
7212 bitField1_ = (bitField1_ & ~0x00000008);
7213 numConflictsBeforeStrategyChanges_ = 0;
7214 bitField1_ = (bitField1_ & ~0x00000010);
7215 strategyChangeIncreaseRatio_ = 0D;
7216 bitField1_ = (bitField1_ & ~0x00000020);
7217 maxTimeInSeconds_ = Double.POSITIVE_INFINITY;
7218 bitField1_ = (bitField1_ & ~0x00000040);
7219 maxDeterministicTime_ = Double.POSITIVE_INFINITY;
7220 bitField1_ = (bitField1_ & ~0x00000080);
7221 maxNumberOfConflicts_ = 9223372036854775807L;
7222 bitField1_ = (bitField1_ & ~0x00000100);
7223 maxMemoryInMb_ = 10000L;
7224 bitField1_ = (bitField1_ & ~0x00000200);
7225 treatBinaryClausesSeparately_ =
true;
7226 bitField1_ = (bitField1_ & ~0x00000400);
7228 bitField1_ = (bitField1_ & ~0x00000800);
7229 logSearchProgress_ =
false;
7230 bitField1_ = (bitField1_ & ~0x00001000);
7231 usePbResolution_ =
false;
7232 bitField1_ = (bitField1_ & ~0x00002000);
7233 minimizeReductionDuringPbResolution_ =
false;
7234 bitField1_ = (bitField1_ & ~0x00004000);
7235 countAssumptionLevelsInLbd_ =
true;
7236 bitField1_ = (bitField1_ & ~0x00008000);
7237 presolveBveThreshold_ = 500;
7238 bitField1_ = (bitField1_ & ~0x00010000);
7239 presolveBveClauseWeight_ = 3;
7240 bitField1_ = (bitField1_ & ~0x00020000);
7241 presolveProbingDeterministicTimeLimit_ = 30D;
7242 bitField1_ = (bitField1_ & ~0x00040000);
7243 presolveBlockedClause_ =
true;
7244 bitField1_ = (bitField1_ & ~0x00080000);
7245 presolveUseBva_ =
true;
7246 bitField1_ = (bitField1_ & ~0x00100000);
7247 presolveBvaThreshold_ = 1;
7248 bitField1_ = (bitField1_ & ~0x00200000);
7249 useOptimizationHints_ =
true;
7250 bitField1_ = (bitField1_ & ~0x00400000);
7251 minimizeCore_ =
true;
7252 bitField1_ = (bitField1_ & ~0x00800000);
7253 findMultipleCores_ =
true;
7254 bitField1_ = (bitField1_ & ~0x01000000);
7255 coverOptimization_ =
true;
7256 bitField1_ = (bitField1_ & ~0x02000000);
7257 maxSatAssumptionOrder_ = 0;
7258 bitField1_ = (bitField1_ & ~0x04000000);
7259 maxSatReverseAssumptionOrder_ =
false;
7260 bitField1_ = (bitField1_ & ~0x08000000);
7261 maxSatStratification_ = 1;
7262 bitField1_ = (bitField1_ & ~0x10000000);
7263 usePrecedencesInDisjunctiveConstraint_ =
true;
7264 bitField1_ = (bitField1_ & ~0x20000000);
7265 useOverloadCheckerInCumulativeConstraint_ =
false;
7266 bitField1_ = (bitField1_ & ~0x40000000);
7267 useTimetableEdgeFindingInCumulativeConstraint_ =
false;
7268 bitField1_ = (bitField1_ & ~0x80000000);
7269 useDisjunctiveConstraintInCumulativeConstraint_ =
true;
7270 bitField2_ = (bitField2_ & ~0x00000001);
7271 linearizationLevel_ = 1;
7272 bitField2_ = (bitField2_ & ~0x00000002);
7273 booleanEncodingLevel_ = 1;
7274 bitField2_ = (bitField2_ & ~0x00000004);
7276 bitField2_ = (bitField2_ & ~0x00000008);
7277 onlyAddCutsAtLevelZero_ =
false;
7278 bitField2_ = (bitField2_ & ~0x00000010);
7279 addKnapsackCuts_ =
false;
7280 bitField2_ = (bitField2_ & ~0x00000020);
7282 bitField2_ = (bitField2_ & ~0x00000040);
7284 bitField2_ = (bitField2_ & ~0x00000080);
7285 useMirRounding_ =
true;
7286 bitField2_ = (bitField2_ & ~0x00000100);
7287 maxIntegerRoundingScaling_ = 600;
7288 bitField2_ = (bitField2_ & ~0x00000200);
7289 addLpConstraintsLazily_ =
true;
7290 bitField2_ = (bitField2_ & ~0x00000400);
7291 minOrthogonalityForLpConstraints_ = 0D;
7292 bitField2_ = (bitField2_ & ~0x00000800);
7293 maxInactiveCount_ = 1000L;
7294 bitField2_ = (bitField2_ & ~0x00001000);
7295 constraintRemovalBatchSize_ = 100L;
7296 bitField2_ = (bitField2_ & ~0x00002000);
7297 searchBranching_ = 0;
7298 bitField2_ = (bitField2_ & ~0x00004000);
7299 exploitIntegerLpSolution_ =
true;
7300 bitField2_ = (bitField2_ & ~0x00008000);
7301 exploitAllLpSolution_ =
true;
7302 bitField2_ = (bitField2_ & ~0x00010000);
7303 exploitBestSolution_ =
false;
7304 bitField2_ = (bitField2_ & ~0x00020000);
7305 exploitObjective_ =
true;
7306 bitField2_ = (bitField2_ & ~0x00040000);
7307 pseudoCostReliabilityThreshold_ = 100L;
7308 bitField2_ = (bitField2_ & ~0x00080000);
7309 optimizeWithCore_ =
false;
7310 bitField2_ = (bitField2_ & ~0x00100000);
7311 binarySearchNumConflicts_ = -1;
7312 bitField2_ = (bitField2_ & ~0x00200000);
7313 optimizeWithMaxHs_ =
false;
7314 bitField2_ = (bitField2_ & ~0x00400000);
7315 cpModelPresolve_ =
true;
7316 bitField2_ = (bitField2_ & ~0x00800000);
7317 cpModelProbingLevel_ = 2;
7318 bitField2_ = (bitField2_ & ~0x01000000);
7319 cpModelUseSatPresolve_ =
true;
7320 bitField2_ = (bitField2_ & ~0x02000000);
7321 enumerateAllSolutions_ =
false;
7322 bitField2_ = (bitField2_ & ~0x04000000);
7323 fillTightenedDomainsInResponse_ =
false;
7324 bitField2_ = (bitField2_ & ~0x08000000);
7325 instantiateAllVariables_ =
true;
7326 bitField2_ = (bitField2_ & ~0x10000000);
7327 autoDetectGreaterThanAtLeastOneOf_ =
true;
7328 bitField2_ = (bitField2_ & ~0x20000000);
7329 stopAfterFirstSolution_ =
false;
7330 bitField2_ = (bitField2_ & ~0x40000000);
7331 numSearchWorkers_ = 0;
7332 bitField2_ = (bitField2_ & ~0x80000000);
7333 shareObjectiveBounds_ =
true;
7334 bitField3_ = (bitField3_ & ~0x00000001);
7335 shareLevelZeroBounds_ =
true;
7336 bitField3_ = (bitField3_ & ~0x00000002);
7338 bitField3_ = (bitField3_ & ~0x00000004);
7340 bitField3_ = (bitField3_ & ~0x00000008);
7341 lnsFocusOnDecisionVariables_ =
false;
7342 bitField3_ = (bitField3_ & ~0x00000010);
7343 useRinsLns_ =
false;
7344 bitField3_ = (bitField3_ & ~0x00000020);
7345 randomizeSearch_ =
false;
7346 bitField3_ = (bitField3_ & ~0x00000040);
7347 searchRandomizationTolerance_ = 0L;
7348 bitField3_ = (bitField3_ & ~0x00000080);
7349 useOptionalVariables_ =
true;
7350 bitField3_ = (bitField3_ & ~0x00000100);
7351 useExactLpReason_ =
true;
7352 bitField3_ = (bitField3_ & ~0x00000200);
7353 useCombinedNoOverlap_ =
false;
7354 bitField3_ = (bitField3_ & ~0x00000400);
7355 mipMaxBound_ = 10000000D;
7356 bitField3_ = (bitField3_ & ~0x00000800);
7357 mipVarScaling_ = 1D;
7358 bitField3_ = (bitField3_ & ~0x00001000);
7359 mipWantedPrecision_ = 1e-06D;
7360 bitField3_ = (bitField3_ & ~0x00002000);
7361 mipMaxActivityExponent_ = 53;
7362 bitField3_ = (bitField3_ & ~0x00004000);
7363 mipCheckPrecision_ = 0.0001D;
7364 bitField3_ = (bitField3_ & ~0x00008000);
7369 public com.
google.protobuf.Descriptors.Descriptor
7382 if (!result.isInitialized()) {
7383 throw newUninitializedMessageException(result);
7391 int from_bitField0_ = bitField0_;
7392 int from_bitField1_ = bitField1_;
7393 int from_bitField2_ = bitField2_;
7394 int from_bitField3_ = bitField3_;
7395 int to_bitField0_ = 0;
7396 int to_bitField1_ = 0;
7397 int to_bitField2_ = 0;
7398 int to_bitField3_ = 0;
7399 if (((from_bitField0_ & 0x00000001) != 0)) {
7400 to_bitField0_ |= 0x00000001;
7402 result.preferredVariableOrder_ = preferredVariableOrder_;
7403 if (((from_bitField0_ & 0x00000002) != 0)) {
7404 to_bitField0_ |= 0x00000002;
7406 result.initialPolarity_ = initialPolarity_;
7407 if (((from_bitField0_ & 0x00000004) != 0)) {
7408 to_bitField0_ |= 0x00000004;
7410 result.usePhaseSaving_ = usePhaseSaving_;
7411 if (((from_bitField0_ & 0x00000008) != 0)) {
7412 result.randomPolarityRatio_ = randomPolarityRatio_;
7413 to_bitField0_ |= 0x00000008;
7415 if (((from_bitField0_ & 0x00000010) != 0)) {
7416 result.randomBranchesRatio_ = randomBranchesRatio_;
7417 to_bitField0_ |= 0x00000010;
7419 if (((from_bitField0_ & 0x00000020) != 0)) {
7420 result.useErwaHeuristic_ = useErwaHeuristic_;
7421 to_bitField0_ |= 0x00000020;
7423 if (((from_bitField0_ & 0x00000040) != 0)) {
7424 result.initialVariablesActivity_ = initialVariablesActivity_;
7425 to_bitField0_ |= 0x00000040;
7427 if (((from_bitField0_ & 0x00000080) != 0)) {
7428 result.alsoBumpVariablesInConflictReasons_ = alsoBumpVariablesInConflictReasons_;
7429 to_bitField0_ |= 0x00000080;
7431 if (((from_bitField0_ & 0x00000100) != 0)) {
7432 to_bitField0_ |= 0x00000100;
7434 result.minimizationAlgorithm_ = minimizationAlgorithm_;
7435 if (((from_bitField0_ & 0x00000200) != 0)) {
7436 to_bitField0_ |= 0x00000200;
7438 result.binaryMinimizationAlgorithm_ = binaryMinimizationAlgorithm_;
7439 if (((from_bitField0_ & 0x00000400) != 0)) {
7440 to_bitField0_ |= 0x00000400;
7442 result.subsumptionDuringConflictAnalysis_ = subsumptionDuringConflictAnalysis_;
7443 if (((from_bitField0_ & 0x00000800) != 0)) {
7444 to_bitField0_ |= 0x00000800;
7446 result.clauseCleanupPeriod_ = clauseCleanupPeriod_;
7447 if (((from_bitField0_ & 0x00001000) != 0)) {
7448 to_bitField0_ |= 0x00001000;
7450 result.clauseCleanupTarget_ = clauseCleanupTarget_;
7451 if (((from_bitField0_ & 0x00002000) != 0)) {
7452 to_bitField0_ |= 0x00002000;
7454 result.clauseCleanupProtection_ = clauseCleanupProtection_;
7455 if (((from_bitField0_ & 0x00004000) != 0)) {
7456 to_bitField0_ |= 0x00004000;
7458 result.clauseCleanupLbdBound_ = clauseCleanupLbdBound_;
7459 if (((from_bitField0_ & 0x00008000) != 0)) {
7460 to_bitField0_ |= 0x00008000;
7462 result.clauseCleanupOrdering_ = clauseCleanupOrdering_;
7463 if (((from_bitField0_ & 0x00010000) != 0)) {
7464 to_bitField0_ |= 0x00010000;
7466 result.pbCleanupIncrement_ = pbCleanupIncrement_;
7467 if (((from_bitField0_ & 0x00020000) != 0)) {
7468 to_bitField0_ |= 0x00020000;
7470 result.pbCleanupRatio_ = pbCleanupRatio_;
7471 if (((from_bitField0_ & 0x00040000) != 0)) {
7472 to_bitField0_ |= 0x00040000;
7474 result.minimizeWithPropagationRestartPeriod_ = minimizeWithPropagationRestartPeriod_;
7475 if (((from_bitField0_ & 0x00080000) != 0)) {
7476 to_bitField0_ |= 0x00080000;
7478 result.minimizeWithPropagationNumDecisions_ = minimizeWithPropagationNumDecisions_;
7479 if (((from_bitField0_ & 0x00100000) != 0)) {
7480 to_bitField0_ |= 0x00100000;
7482 result.variableActivityDecay_ = variableActivityDecay_;
7483 if (((from_bitField0_ & 0x00200000) != 0)) {
7484 to_bitField0_ |= 0x00200000;
7486 result.maxVariableActivityValue_ = maxVariableActivityValue_;
7487 if (((from_bitField0_ & 0x00400000) != 0)) {
7488 to_bitField0_ |= 0x00400000;
7490 result.glucoseMaxDecay_ = glucoseMaxDecay_;
7491 if (((from_bitField0_ & 0x00800000) != 0)) {
7492 to_bitField0_ |= 0x00800000;
7494 result.glucoseDecayIncrement_ = glucoseDecayIncrement_;
7495 if (((from_bitField0_ & 0x01000000) != 0)) {
7496 to_bitField0_ |= 0x01000000;
7498 result.glucoseDecayIncrementPeriod_ = glucoseDecayIncrementPeriod_;
7499 if (((from_bitField0_ & 0x02000000) != 0)) {
7500 to_bitField0_ |= 0x02000000;
7502 result.clauseActivityDecay_ = clauseActivityDecay_;
7503 if (((from_bitField0_ & 0x04000000) != 0)) {
7504 to_bitField0_ |= 0x04000000;
7506 result.maxClauseActivityValue_ = maxClauseActivityValue_;
7507 if (((bitField0_ & 0x08000000) != 0)) {
7508 restartAlgorithms_ = java.util.Collections.unmodifiableList(restartAlgorithms_);
7509 bitField0_ = (bitField0_ & ~0x08000000);
7511 result.restartAlgorithms_ = restartAlgorithms_;
7512 if (((from_bitField0_ & 0x10000000) != 0)) {
7513 to_bitField0_ |= 0x08000000;
7515 result.defaultRestartAlgorithms_ = defaultRestartAlgorithms_;
7516 if (((from_bitField0_ & 0x20000000) != 0)) {
7517 to_bitField0_ |= 0x10000000;
7519 result.restartPeriod_ = restartPeriod_;
7520 if (((from_bitField0_ & 0x40000000) != 0)) {
7521 to_bitField0_ |= 0x20000000;
7523 result.restartRunningWindowSize_ = restartRunningWindowSize_;
7524 if (((from_bitField0_ & 0x80000000) != 0)) {
7525 to_bitField0_ |= 0x40000000;
7527 result.restartDlAverageRatio_ = restartDlAverageRatio_;
7528 if (((from_bitField1_ & 0x00000001) != 0)) {
7529 to_bitField0_ |= 0x80000000;
7531 result.restartLbdAverageRatio_ = restartLbdAverageRatio_;
7532 if (((from_bitField1_ & 0x00000002) != 0)) {
7533 result.useBlockingRestart_ = useBlockingRestart_;
7534 to_bitField1_ |= 0x00000001;
7536 if (((from_bitField1_ & 0x00000004) != 0)) {
7537 to_bitField1_ |= 0x00000002;
7539 result.blockingRestartWindowSize_ = blockingRestartWindowSize_;
7540 if (((from_bitField1_ & 0x00000008) != 0)) {
7541 to_bitField1_ |= 0x00000004;
7543 result.blockingRestartMultiplier_ = blockingRestartMultiplier_;
7544 if (((from_bitField1_ & 0x00000010) != 0)) {
7545 result.numConflictsBeforeStrategyChanges_ = numConflictsBeforeStrategyChanges_;
7546 to_bitField1_ |= 0x00000008;
7548 if (((from_bitField1_ & 0x00000020) != 0)) {
7549 result.strategyChangeIncreaseRatio_ = strategyChangeIncreaseRatio_;
7550 to_bitField1_ |= 0x00000010;
7552 if (((from_bitField1_ & 0x00000040) != 0)) {
7553 to_bitField1_ |= 0x00000020;
7555 result.maxTimeInSeconds_ = maxTimeInSeconds_;
7556 if (((from_bitField1_ & 0x00000080) != 0)) {
7557 to_bitField1_ |= 0x00000040;
7559 result.maxDeterministicTime_ = maxDeterministicTime_;
7560 if (((from_bitField1_ & 0x00000100) != 0)) {
7561 to_bitField1_ |= 0x00000080;
7563 result.maxNumberOfConflicts_ = maxNumberOfConflicts_;
7564 if (((from_bitField1_ & 0x00000200) != 0)) {
7565 to_bitField1_ |= 0x00000100;
7567 result.maxMemoryInMb_ = maxMemoryInMb_;
7568 if (((from_bitField1_ & 0x00000400) != 0)) {
7569 to_bitField1_ |= 0x00000200;
7571 result.treatBinaryClausesSeparately_ = treatBinaryClausesSeparately_;
7572 if (((from_bitField1_ & 0x00000800) != 0)) {
7573 to_bitField1_ |= 0x00000400;
7575 result.randomSeed_ = randomSeed_;
7576 if (((from_bitField1_ & 0x00001000) != 0)) {
7577 result.logSearchProgress_ = logSearchProgress_;
7578 to_bitField1_ |= 0x00000800;
7580 if (((from_bitField1_ & 0x00002000) != 0)) {
7581 result.usePbResolution_ = usePbResolution_;
7582 to_bitField1_ |= 0x00001000;
7584 if (((from_bitField1_ & 0x00004000) != 0)) {
7585 result.minimizeReductionDuringPbResolution_ = minimizeReductionDuringPbResolution_;
7586 to_bitField1_ |= 0x00002000;
7588 if (((from_bitField1_ & 0x00008000) != 0)) {
7589 to_bitField1_ |= 0x00004000;
7591 result.countAssumptionLevelsInLbd_ = countAssumptionLevelsInLbd_;
7592 if (((from_bitField1_ & 0x00010000) != 0)) {
7593 to_bitField1_ |= 0x00008000;
7595 result.presolveBveThreshold_ = presolveBveThreshold_;
7596 if (((from_bitField1_ & 0x00020000) != 0)) {
7597 to_bitField1_ |= 0x00010000;
7599 result.presolveBveClauseWeight_ = presolveBveClauseWeight_;
7600 if (((from_bitField1_ & 0x00040000) != 0)) {
7601 to_bitField1_ |= 0x00020000;
7603 result.presolveProbingDeterministicTimeLimit_ = presolveProbingDeterministicTimeLimit_;
7604 if (((from_bitField1_ & 0x00080000) != 0)) {
7605 to_bitField1_ |= 0x00040000;
7607 result.presolveBlockedClause_ = presolveBlockedClause_;
7608 if (((from_bitField1_ & 0x00100000) != 0)) {
7609 to_bitField1_ |= 0x00080000;
7611 result.presolveUseBva_ = presolveUseBva_;
7612 if (((from_bitField1_ & 0x00200000) != 0)) {
7613 to_bitField1_ |= 0x00100000;
7615 result.presolveBvaThreshold_ = presolveBvaThreshold_;
7616 if (((from_bitField1_ & 0x00400000) != 0)) {
7617 to_bitField1_ |= 0x00200000;
7619 result.useOptimizationHints_ = useOptimizationHints_;
7620 if (((from_bitField1_ & 0x00800000) != 0)) {
7621 to_bitField1_ |= 0x00400000;
7623 result.minimizeCore_ = minimizeCore_;
7624 if (((from_bitField1_ & 0x01000000) != 0)) {
7625 to_bitField1_ |= 0x00800000;
7627 result.findMultipleCores_ = findMultipleCores_;
7628 if (((from_bitField1_ & 0x02000000) != 0)) {
7629 to_bitField1_ |= 0x01000000;
7631 result.coverOptimization_ = coverOptimization_;
7632 if (((from_bitField1_ & 0x04000000) != 0)) {
7633 to_bitField1_ |= 0x02000000;
7635 result.maxSatAssumptionOrder_ = maxSatAssumptionOrder_;
7636 if (((from_bitField1_ & 0x08000000) != 0)) {
7637 result.maxSatReverseAssumptionOrder_ = maxSatReverseAssumptionOrder_;
7638 to_bitField1_ |= 0x04000000;
7640 if (((from_bitField1_ & 0x10000000) != 0)) {
7641 to_bitField1_ |= 0x08000000;
7643 result.maxSatStratification_ = maxSatStratification_;
7644 if (((from_bitField1_ & 0x20000000) != 0)) {
7645 to_bitField1_ |= 0x10000000;
7647 result.usePrecedencesInDisjunctiveConstraint_ = usePrecedencesInDisjunctiveConstraint_;
7648 if (((from_bitField1_ & 0x40000000) != 0)) {
7649 result.useOverloadCheckerInCumulativeConstraint_ = useOverloadCheckerInCumulativeConstraint_;
7650 to_bitField1_ |= 0x20000000;
7652 if (((from_bitField1_ & 0x80000000) != 0)) {
7653 result.useTimetableEdgeFindingInCumulativeConstraint_ = useTimetableEdgeFindingInCumulativeConstraint_;
7654 to_bitField1_ |= 0x40000000;
7656 if (((from_bitField2_ & 0x00000001) != 0)) {
7657 to_bitField1_ |= 0x80000000;
7659 result.useDisjunctiveConstraintInCumulativeConstraint_ = useDisjunctiveConstraintInCumulativeConstraint_;
7660 if (((from_bitField2_ & 0x00000002) != 0)) {
7661 to_bitField2_ |= 0x00000001;
7663 result.linearizationLevel_ = linearizationLevel_;
7664 if (((from_bitField2_ & 0x00000004) != 0)) {
7665 to_bitField2_ |= 0x00000002;
7667 result.booleanEncodingLevel_ = booleanEncodingLevel_;
7668 if (((from_bitField2_ & 0x00000008) != 0)) {
7669 to_bitField2_ |= 0x00000004;
7671 result.maxNumCuts_ = maxNumCuts_;
7672 if (((from_bitField2_ & 0x00000010) != 0)) {
7673 result.onlyAddCutsAtLevelZero_ = onlyAddCutsAtLevelZero_;
7674 to_bitField2_ |= 0x00000008;
7676 if (((from_bitField2_ & 0x00000020) != 0)) {
7677 result.addKnapsackCuts_ = addKnapsackCuts_;
7678 to_bitField2_ |= 0x00000010;
7680 if (((from_bitField2_ & 0x00000040) != 0)) {
7681 result.addCgCuts_ = addCgCuts_;
7682 to_bitField2_ |= 0x00000020;
7684 if (((from_bitField2_ & 0x00000080) != 0)) {
7685 to_bitField2_ |= 0x00000040;
7687 result.addMirCuts_ = addMirCuts_;
7688 if (((from_bitField2_ & 0x00000100) != 0)) {
7689 to_bitField2_ |= 0x00000080;
7691 result.useMirRounding_ = useMirRounding_;
7692 if (((from_bitField2_ & 0x00000200) != 0)) {
7693 to_bitField2_ |= 0x00000100;
7695 result.maxIntegerRoundingScaling_ = maxIntegerRoundingScaling_;
7696 if (((from_bitField2_ & 0x00000400) != 0)) {
7697 to_bitField2_ |= 0x00000200;
7699 result.addLpConstraintsLazily_ = addLpConstraintsLazily_;
7700 if (((from_bitField2_ & 0x00000800) != 0)) {
7701 result.minOrthogonalityForLpConstraints_ = minOrthogonalityForLpConstraints_;
7702 to_bitField2_ |= 0x00000400;
7704 if (((from_bitField2_ & 0x00001000) != 0)) {
7705 to_bitField2_ |= 0x00000800;
7707 result.maxInactiveCount_ = maxInactiveCount_;
7708 if (((from_bitField2_ & 0x00002000) != 0)) {
7709 to_bitField2_ |= 0x00001000;
7711 result.constraintRemovalBatchSize_ = constraintRemovalBatchSize_;
7712 if (((from_bitField2_ & 0x00004000) != 0)) {
7713 to_bitField2_ |= 0x00002000;
7715 result.searchBranching_ = searchBranching_;
7716 if (((from_bitField2_ & 0x00008000) != 0)) {
7717 to_bitField2_ |= 0x00004000;
7719 result.exploitIntegerLpSolution_ = exploitIntegerLpSolution_;
7720 if (((from_bitField2_ & 0x00010000) != 0)) {
7721 to_bitField2_ |= 0x00008000;
7723 result.exploitAllLpSolution_ = exploitAllLpSolution_;
7724 if (((from_bitField2_ & 0x00020000) != 0)) {
7725 result.exploitBestSolution_ = exploitBestSolution_;
7726 to_bitField2_ |= 0x00010000;
7728 if (((from_bitField2_ & 0x00040000) != 0)) {
7729 to_bitField2_ |= 0x00020000;
7731 result.exploitObjective_ = exploitObjective_;
7732 if (((from_bitField2_ & 0x00080000) != 0)) {
7733 to_bitField2_ |= 0x00040000;
7735 result.pseudoCostReliabilityThreshold_ = pseudoCostReliabilityThreshold_;
7736 if (((from_bitField2_ & 0x00100000) != 0)) {
7737 result.optimizeWithCore_ = optimizeWithCore_;
7738 to_bitField2_ |= 0x00080000;
7740 if (((from_bitField2_ & 0x00200000) != 0)) {
7741 to_bitField2_ |= 0x00100000;
7743 result.binarySearchNumConflicts_ = binarySearchNumConflicts_;
7744 if (((from_bitField2_ & 0x00400000) != 0)) {
7745 result.optimizeWithMaxHs_ = optimizeWithMaxHs_;
7746 to_bitField2_ |= 0x00200000;
7748 if (((from_bitField2_ & 0x00800000) != 0)) {
7749 to_bitField2_ |= 0x00400000;
7751 result.cpModelPresolve_ = cpModelPresolve_;
7752 if (((from_bitField2_ & 0x01000000) != 0)) {
7753 to_bitField2_ |= 0x00800000;
7755 result.cpModelProbingLevel_ = cpModelProbingLevel_;
7756 if (((from_bitField2_ & 0x02000000) != 0)) {
7757 to_bitField2_ |= 0x01000000;
7759 result.cpModelUseSatPresolve_ = cpModelUseSatPresolve_;
7760 if (((from_bitField2_ & 0x04000000) != 0)) {
7761 result.enumerateAllSolutions_ = enumerateAllSolutions_;
7762 to_bitField2_ |= 0x02000000;
7764 if (((from_bitField2_ & 0x08000000) != 0)) {
7765 result.fillTightenedDomainsInResponse_ = fillTightenedDomainsInResponse_;
7766 to_bitField2_ |= 0x04000000;
7768 if (((from_bitField2_ & 0x10000000) != 0)) {
7769 to_bitField2_ |= 0x08000000;
7771 result.instantiateAllVariables_ = instantiateAllVariables_;
7772 if (((from_bitField2_ & 0x20000000) != 0)) {
7773 to_bitField2_ |= 0x10000000;
7775 result.autoDetectGreaterThanAtLeastOneOf_ = autoDetectGreaterThanAtLeastOneOf_;
7776 if (((from_bitField2_ & 0x40000000) != 0)) {
7777 result.stopAfterFirstSolution_ = stopAfterFirstSolution_;
7778 to_bitField2_ |= 0x20000000;
7780 if (((from_bitField2_ & 0x80000000) != 0)) {
7781 result.numSearchWorkers_ = numSearchWorkers_;
7782 to_bitField2_ |= 0x40000000;
7784 if (((from_bitField3_ & 0x00000001) != 0)) {
7785 to_bitField2_ |= 0x80000000;
7787 result.shareObjectiveBounds_ = shareObjectiveBounds_;
7788 if (((from_bitField3_ & 0x00000002) != 0)) {
7789 to_bitField3_ |= 0x00000001;
7791 result.shareLevelZeroBounds_ = shareLevelZeroBounds_;
7792 if (((from_bitField3_ & 0x00000004) != 0)) {
7793 result.useLns_ = useLns_;
7794 to_bitField3_ |= 0x00000002;
7796 if (((from_bitField3_ & 0x00000008) != 0)) {
7797 to_bitField3_ |= 0x00000004;
7799 result.lnsNumThreads_ = lnsNumThreads_;
7800 if (((from_bitField3_ & 0x00000010) != 0)) {
7801 result.lnsFocusOnDecisionVariables_ = lnsFocusOnDecisionVariables_;
7802 to_bitField3_ |= 0x00000008;
7804 if (((from_bitField3_ & 0x00000020) != 0)) {
7805 result.useRinsLns_ = useRinsLns_;
7806 to_bitField3_ |= 0x00000010;
7808 if (((from_bitField3_ & 0x00000040) != 0)) {
7809 result.randomizeSearch_ = randomizeSearch_;
7810 to_bitField3_ |= 0x00000020;
7812 if (((from_bitField3_ & 0x00000080) != 0)) {
7813 result.searchRandomizationTolerance_ = searchRandomizationTolerance_;
7814 to_bitField3_ |= 0x00000040;
7816 if (((from_bitField3_ & 0x00000100) != 0)) {
7817 to_bitField3_ |= 0x00000080;
7819 result.useOptionalVariables_ = useOptionalVariables_;
7820 if (((from_bitField3_ & 0x00000200) != 0)) {
7821 to_bitField3_ |= 0x00000100;
7823 result.useExactLpReason_ = useExactLpReason_;
7824 if (((from_bitField3_ & 0x00000400) != 0)) {
7825 result.useCombinedNoOverlap_ = useCombinedNoOverlap_;
7826 to_bitField3_ |= 0x00000200;
7828 if (((from_bitField3_ & 0x00000800) != 0)) {
7829 to_bitField3_ |= 0x00000400;
7831 result.mipMaxBound_ = mipMaxBound_;
7832 if (((from_bitField3_ & 0x00001000) != 0)) {
7833 to_bitField3_ |= 0x00000800;
7835 result.mipVarScaling_ = mipVarScaling_;
7836 if (((from_bitField3_ & 0x00002000) != 0)) {
7837 to_bitField3_ |= 0x00001000;
7839 result.mipWantedPrecision_ = mipWantedPrecision_;
7840 if (((from_bitField3_ & 0x00004000) != 0)) {
7841 to_bitField3_ |= 0x00002000;
7843 result.mipMaxActivityExponent_ = mipMaxActivityExponent_;
7844 if (((from_bitField3_ & 0x00008000) != 0)) {
7845 to_bitField3_ |= 0x00004000;
7847 result.mipCheckPrecision_ = mipCheckPrecision_;
7848 result.bitField0_ = to_bitField0_;
7849 result.bitField1_ = to_bitField1_;
7850 result.bitField2_ = to_bitField2_;
7851 result.bitField3_ = to_bitField3_;
7858 return super.
clone();
7862 com.
google.protobuf.Descriptors.FieldDescriptor field,
7863 java.lang.Object value) {
7864 return super.
setField(field, value);
7868 com.
google.protobuf.Descriptors.FieldDescriptor field) {
7873 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
7878 com.
google.protobuf.Descriptors.FieldDescriptor field,
7879 int index, java.lang.Object value) {
7884 com.
google.protobuf.Descriptors.FieldDescriptor field,
7885 java.lang.Object value) {
7893 super.mergeFrom(other);
7900 if (other.hasPreferredVariableOrder()) {
7903 if (other.hasInitialPolarity()) {
7906 if (other.hasUsePhaseSaving()) {
7909 if (other.hasRandomPolarityRatio()) {
7912 if (other.hasRandomBranchesRatio()) {
7915 if (other.hasUseErwaHeuristic()) {
7918 if (other.hasInitialVariablesActivity()) {
7921 if (other.hasAlsoBumpVariablesInConflictReasons()) {
7924 if (other.hasMinimizationAlgorithm()) {
7927 if (other.hasBinaryMinimizationAlgorithm()) {
7930 if (other.hasSubsumptionDuringConflictAnalysis()) {
7933 if (other.hasClauseCleanupPeriod()) {
7936 if (other.hasClauseCleanupTarget()) {
7939 if (other.hasClauseCleanupProtection()) {
7942 if (other.hasClauseCleanupLbdBound()) {
7945 if (other.hasClauseCleanupOrdering()) {
7948 if (other.hasPbCleanupIncrement()) {
7951 if (other.hasPbCleanupRatio()) {
7954 if (other.hasMinimizeWithPropagationRestartPeriod()) {
7957 if (other.hasMinimizeWithPropagationNumDecisions()) {
7960 if (other.hasVariableActivityDecay()) {
7963 if (other.hasMaxVariableActivityValue()) {
7966 if (other.hasGlucoseMaxDecay()) {
7969 if (other.hasGlucoseDecayIncrement()) {
7972 if (other.hasGlucoseDecayIncrementPeriod()) {
7975 if (other.hasClauseActivityDecay()) {
7978 if (other.hasMaxClauseActivityValue()) {
7981 if (!other.restartAlgorithms_.isEmpty()) {
7982 if (restartAlgorithms_.isEmpty()) {
7983 restartAlgorithms_ = other.restartAlgorithms_;
7984 bitField0_ = (bitField0_ & ~0x08000000);
7986 ensureRestartAlgorithmsIsMutable();
7987 restartAlgorithms_.addAll(other.restartAlgorithms_);
7991 if (other.hasDefaultRestartAlgorithms()) {
7992 bitField0_ |= 0x10000000;
7993 defaultRestartAlgorithms_ = other.defaultRestartAlgorithms_;
7996 if (other.hasRestartPeriod()) {
7999 if (other.hasRestartRunningWindowSize()) {
8002 if (other.hasRestartDlAverageRatio()) {
8005 if (other.hasRestartLbdAverageRatio()) {
8008 if (other.hasUseBlockingRestart()) {
8011 if (other.hasBlockingRestartWindowSize()) {
8014 if (other.hasBlockingRestartMultiplier()) {
8017 if (other.hasNumConflictsBeforeStrategyChanges()) {
8020 if (other.hasStrategyChangeIncreaseRatio()) {
8023 if (other.hasMaxTimeInSeconds()) {
8026 if (other.hasMaxDeterministicTime()) {
8029 if (other.hasMaxNumberOfConflicts()) {
8032 if (other.hasMaxMemoryInMb()) {
8035 if (other.hasTreatBinaryClausesSeparately()) {
8038 if (other.hasRandomSeed()) {
8041 if (other.hasLogSearchProgress()) {
8044 if (other.hasUsePbResolution()) {
8047 if (other.hasMinimizeReductionDuringPbResolution()) {
8050 if (other.hasCountAssumptionLevelsInLbd()) {
8053 if (other.hasPresolveBveThreshold()) {
8056 if (other.hasPresolveBveClauseWeight()) {
8059 if (other.hasPresolveProbingDeterministicTimeLimit()) {
8062 if (other.hasPresolveBlockedClause()) {
8065 if (other.hasPresolveUseBva()) {
8068 if (other.hasPresolveBvaThreshold()) {
8071 if (other.hasUseOptimizationHints()) {
8074 if (other.hasMinimizeCore()) {
8077 if (other.hasFindMultipleCores()) {
8080 if (other.hasCoverOptimization()) {
8083 if (other.hasMaxSatAssumptionOrder()) {
8086 if (other.hasMaxSatReverseAssumptionOrder()) {
8089 if (other.hasMaxSatStratification()) {
8092 if (other.hasUsePrecedencesInDisjunctiveConstraint()) {
8095 if (other.hasUseOverloadCheckerInCumulativeConstraint()) {
8098 if (other.hasUseTimetableEdgeFindingInCumulativeConstraint()) {
8101 if (other.hasUseDisjunctiveConstraintInCumulativeConstraint()) {
8104 if (other.hasLinearizationLevel()) {
8107 if (other.hasBooleanEncodingLevel()) {
8110 if (other.hasMaxNumCuts()) {
8113 if (other.hasOnlyAddCutsAtLevelZero()) {
8116 if (other.hasAddKnapsackCuts()) {
8119 if (other.hasAddCgCuts()) {
8122 if (other.hasAddMirCuts()) {
8125 if (other.hasUseMirRounding()) {
8128 if (other.hasMaxIntegerRoundingScaling()) {
8131 if (other.hasAddLpConstraintsLazily()) {
8134 if (other.hasMinOrthogonalityForLpConstraints()) {
8137 if (other.hasMaxInactiveCount()) {
8140 if (other.hasConstraintRemovalBatchSize()) {
8143 if (other.hasSearchBranching()) {
8146 if (other.hasExploitIntegerLpSolution()) {
8149 if (other.hasExploitAllLpSolution()) {
8152 if (other.hasExploitBestSolution()) {
8155 if (other.hasExploitObjective()) {
8158 if (other.hasPseudoCostReliabilityThreshold()) {
8161 if (other.hasOptimizeWithCore()) {
8164 if (other.hasBinarySearchNumConflicts()) {
8167 if (other.hasOptimizeWithMaxHs()) {
8170 if (other.hasCpModelPresolve()) {
8173 if (other.hasCpModelProbingLevel()) {
8176 if (other.hasCpModelUseSatPresolve()) {
8179 if (other.hasEnumerateAllSolutions()) {
8182 if (other.hasFillTightenedDomainsInResponse()) {
8185 if (other.hasInstantiateAllVariables()) {
8188 if (other.hasAutoDetectGreaterThanAtLeastOneOf()) {
8191 if (other.hasStopAfterFirstSolution()) {
8194 if (other.hasNumSearchWorkers()) {
8197 if (other.hasShareObjectiveBounds()) {
8200 if (other.hasShareLevelZeroBounds()) {
8203 if (other.hasUseLns()) {
8206 if (other.hasLnsNumThreads()) {
8209 if (other.hasLnsFocusOnDecisionVariables()) {
8212 if (other.hasUseRinsLns()) {
8215 if (other.hasRandomizeSearch()) {
8218 if (other.hasSearchRandomizationTolerance()) {
8221 if (other.hasUseOptionalVariables()) {
8224 if (other.hasUseExactLpReason()) {
8227 if (other.hasUseCombinedNoOverlap()) {
8230 if (other.hasMipMaxBound()) {
8233 if (other.hasMipVarScaling()) {
8236 if (other.hasMipWantedPrecision()) {
8239 if (other.hasMipMaxActivityExponent()) {
8242 if (other.hasMipCheckPrecision()) {
8257 com.
google.protobuf.CodedInputStream input,
8258 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
8259 throws java.io.IOException {
8262 parsedMessage =
PARSER.parsePartialFrom(input, extensionRegistry);
8263 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
8265 throw e.unwrapIOException();
8267 if (parsedMessage !=
null) {
8273 private int bitField0_;
8274 private int bitField1_;
8275 private int bitField2_;
8276 private int bitField3_;
8278 private int preferredVariableOrder_ = 0;
8283 return ((bitField0_ & 0x00000001) != 0);
8289 @SuppressWarnings(
"deprecation")
8297 if (value ==
null) {
8298 throw new NullPointerException();
8300 bitField0_ |= 0x00000001;
8301 preferredVariableOrder_ = value.getNumber();
8309 bitField0_ = (bitField0_ & ~0x00000001);
8310 preferredVariableOrder_ = 0;
8315 private int initialPolarity_ = 1;
8320 return ((bitField0_ & 0x00000002) != 0);
8326 @SuppressWarnings(
"deprecation")
8334 if (value ==
null) {
8335 throw new NullPointerException();
8337 bitField0_ |= 0x00000002;
8338 initialPolarity_ = value.getNumber();
8346 bitField0_ = (bitField0_ & ~0x00000002);
8347 initialPolarity_ = 1;
8352 private boolean usePhaseSaving_ =
true;
8367 return ((bitField0_ & 0x00000004) != 0);
8383 return usePhaseSaving_;
8399 bitField0_ |= 0x00000004;
8400 usePhaseSaving_ = value;
8418 bitField0_ = (bitField0_ & ~0x00000004);
8419 usePhaseSaving_ =
true;
8424 private double randomPolarityRatio_ ;
8437 return ((bitField0_ & 0x00000008) != 0);
8451 return randomPolarityRatio_;
8465 bitField0_ |= 0x00000008;
8466 randomPolarityRatio_ = value;
8482 bitField0_ = (bitField0_ & ~0x00000008);
8483 randomPolarityRatio_ = 0D;
8488 private double randomBranchesRatio_ ;
8499 return ((bitField0_ & 0x00000010) != 0);
8511 return randomBranchesRatio_;
8523 bitField0_ |= 0x00000010;
8524 randomBranchesRatio_ = value;
8538 bitField0_ = (bitField0_ & ~0x00000010);
8539 randomBranchesRatio_ = 0D;
8544 private boolean useErwaHeuristic_ ;
8555 return ((bitField0_ & 0x00000020) != 0);
8567 return useErwaHeuristic_;
8579 bitField0_ |= 0x00000020;
8580 useErwaHeuristic_ = value;
8594 bitField0_ = (bitField0_ & ~0x00000020);
8595 useErwaHeuristic_ =
false;
8600 private double initialVariablesActivity_ ;
8614 return ((bitField0_ & 0x00000040) != 0);
8629 return initialVariablesActivity_;
8644 bitField0_ |= 0x00000040;
8645 initialVariablesActivity_ = value;
8662 bitField0_ = (bitField0_ & ~0x00000040);
8663 initialVariablesActivity_ = 0D;
8668 private boolean alsoBumpVariablesInConflictReasons_ ;
8680 return ((bitField0_ & 0x00000080) != 0);
8693 return alsoBumpVariablesInConflictReasons_;
8706 bitField0_ |= 0x00000080;
8707 alsoBumpVariablesInConflictReasons_ = value;
8722 bitField0_ = (bitField0_ & ~0x00000080);
8723 alsoBumpVariablesInConflictReasons_ =
false;
8728 private int minimizationAlgorithm_ = 2;
8733 return ((bitField0_ & 0x00000100) != 0);
8739 @SuppressWarnings(
"deprecation")
8747 if (value ==
null) {
8748 throw new NullPointerException();
8750 bitField0_ |= 0x00000100;
8751 minimizationAlgorithm_ = value.getNumber();
8759 bitField0_ = (bitField0_ & ~0x00000100);
8760 minimizationAlgorithm_ = 2;
8765 private int binaryMinimizationAlgorithm_ = 1;
8770 return ((bitField0_ & 0x00000200) != 0);
8776 @SuppressWarnings(
"deprecation")
8784 if (value ==
null) {
8785 throw new NullPointerException();
8787 bitField0_ |= 0x00000200;
8788 binaryMinimizationAlgorithm_ = value.getNumber();
8796 bitField0_ = (bitField0_ & ~0x00000200);
8797 binaryMinimizationAlgorithm_ = 1;
8802 private boolean subsumptionDuringConflictAnalysis_ =
true;
8814 return ((bitField0_ & 0x00000400) != 0);
8827 return subsumptionDuringConflictAnalysis_;
8840 bitField0_ |= 0x00000400;
8841 subsumptionDuringConflictAnalysis_ = value;
8856 bitField0_ = (bitField0_ & ~0x00000400);
8857 subsumptionDuringConflictAnalysis_ =
true;
8862 private int clauseCleanupPeriod_ = 10000;
8871 return ((bitField0_ & 0x00000800) != 0);
8881 return clauseCleanupPeriod_;
8891 bitField0_ |= 0x00000800;
8892 clauseCleanupPeriod_ = value;
8904 bitField0_ = (bitField0_ & ~0x00000800);
8905 clauseCleanupPeriod_ = 10000;
8910 private int clauseCleanupTarget_ = 10000;
8920 return ((bitField0_ & 0x00001000) != 0);
8931 return clauseCleanupTarget_;
8942 bitField0_ |= 0x00001000;
8943 clauseCleanupTarget_ = value;
8956 bitField0_ = (bitField0_ & ~0x00001000);
8957 clauseCleanupTarget_ = 10000;
8962 private int clauseCleanupProtection_ = 0;
8967 return ((bitField0_ & 0x00002000) != 0);
8973 @SuppressWarnings(
"deprecation")
8981 if (value ==
null) {
8982 throw new NullPointerException();
8984 bitField0_ |= 0x00002000;
8985 clauseCleanupProtection_ = value.getNumber();
8993 bitField0_ = (bitField0_ & ~0x00002000);
8994 clauseCleanupProtection_ = 0;
8999 private int clauseCleanupLbdBound_ = 5;
9009 return ((bitField0_ & 0x00004000) != 0);
9020 return clauseCleanupLbdBound_;
9031 bitField0_ |= 0x00004000;
9032 clauseCleanupLbdBound_ = value;
9045 bitField0_ = (bitField0_ & ~0x00004000);
9046 clauseCleanupLbdBound_ = 5;
9051 private int clauseCleanupOrdering_ = 0;
9056 return ((bitField0_ & 0x00008000) != 0);
9062 @SuppressWarnings(
"deprecation")
9070 if (value ==
null) {
9071 throw new NullPointerException();
9073 bitField0_ |= 0x00008000;
9074 clauseCleanupOrdering_ = value.getNumber();
9082 bitField0_ = (bitField0_ & ~0x00008000);
9083 clauseCleanupOrdering_ = 0;
9088 private int pbCleanupIncrement_ = 200;
9097 return ((bitField0_ & 0x00010000) != 0);
9107 return pbCleanupIncrement_;
9117 bitField0_ |= 0x00010000;
9118 pbCleanupIncrement_ = value;
9130 bitField0_ = (bitField0_ & ~0x00010000);
9131 pbCleanupIncrement_ = 200;
9136 private double pbCleanupRatio_ = 0.5D;
9141 return ((bitField0_ & 0x00020000) != 0);
9147 return pbCleanupRatio_;
9153 bitField0_ |= 0x00020000;
9154 pbCleanupRatio_ = value;
9162 bitField0_ = (bitField0_ & ~0x00020000);
9163 pbCleanupRatio_ = 0.5D;
9168 private int minimizeWithPropagationRestartPeriod_ = 10;
9187 return ((bitField0_ & 0x00040000) != 0);
9207 return minimizeWithPropagationRestartPeriod_;
9227 bitField0_ |= 0x00040000;
9228 minimizeWithPropagationRestartPeriod_ = value;
9250 bitField0_ = (bitField0_ & ~0x00040000);
9251 minimizeWithPropagationRestartPeriod_ = 10;
9256 private int minimizeWithPropagationNumDecisions_ = 1000;
9261 return ((bitField0_ & 0x00080000) != 0);
9267 return minimizeWithPropagationNumDecisions_;
9273 bitField0_ |= 0x00080000;
9274 minimizeWithPropagationNumDecisions_ = value;
9282 bitField0_ = (bitField0_ & ~0x00080000);
9283 minimizeWithPropagationNumDecisions_ = 1000;
9288 private double variableActivityDecay_ = 0.8D;
9303 return ((bitField0_ & 0x00100000) != 0);
9319 return variableActivityDecay_;
9335 bitField0_ |= 0x00100000;
9336 variableActivityDecay_ = value;
9354 bitField0_ = (bitField0_ & ~0x00100000);
9355 variableActivityDecay_ = 0.8D;
9360 private double maxVariableActivityValue_ = 1e+100D;
9365 return ((bitField0_ & 0x00200000) != 0);
9371 return maxVariableActivityValue_;
9377 bitField0_ |= 0x00200000;
9378 maxVariableActivityValue_ = value;
9386 bitField0_ = (bitField0_ & ~0x00200000);
9387 maxVariableActivityValue_ = 1e+100D;
9392 private double glucoseMaxDecay_ = 0.95D;
9404 return ((bitField0_ & 0x00400000) != 0);
9417 return glucoseMaxDecay_;
9430 bitField0_ |= 0x00400000;
9431 glucoseMaxDecay_ = value;
9446 bitField0_ = (bitField0_ & ~0x00400000);
9447 glucoseMaxDecay_ = 0.95D;
9452 private double glucoseDecayIncrement_ = 0.01D;
9457 return ((bitField0_ & 0x00800000) != 0);
9463 return glucoseDecayIncrement_;
9469 bitField0_ |= 0x00800000;
9470 glucoseDecayIncrement_ = value;
9478 bitField0_ = (bitField0_ & ~0x00800000);
9479 glucoseDecayIncrement_ = 0.01D;
9484 private int glucoseDecayIncrementPeriod_ = 5000;
9489 return ((bitField0_ & 0x01000000) != 0);
9495 return glucoseDecayIncrementPeriod_;
9501 bitField0_ |= 0x01000000;
9502 glucoseDecayIncrementPeriod_ = value;
9510 bitField0_ = (bitField0_ & ~0x01000000);
9511 glucoseDecayIncrementPeriod_ = 5000;
9516 private double clauseActivityDecay_ = 0.999D;
9525 return ((bitField0_ & 0x02000000) != 0);
9535 return clauseActivityDecay_;
9545 bitField0_ |= 0x02000000;
9546 clauseActivityDecay_ = value;
9558 bitField0_ = (bitField0_ & ~0x02000000);
9559 clauseActivityDecay_ = 0.999D;
9564 private double maxClauseActivityValue_ = 1e+20D;
9569 return ((bitField0_ & 0x04000000) != 0);
9575 return maxClauseActivityValue_;
9581 bitField0_ |= 0x04000000;
9582 maxClauseActivityValue_ = value;
9590 bitField0_ = (bitField0_ & ~0x04000000);
9591 maxClauseActivityValue_ = 1e+20D;
9596 private java.util.List<java.lang.Integer> restartAlgorithms_ =
9597 java.util.Collections.emptyList();
9598 private void ensureRestartAlgorithmsIsMutable() {
9599 if (!((bitField0_ & 0x08000000) != 0)) {
9600 restartAlgorithms_ =
new java.util.ArrayList<java.lang.Integer>(restartAlgorithms_);
9601 bitField0_ |= 0x08000000;
9619 return new com.
google.protobuf.Internal.ListAdapter<
9637 return restartAlgorithms_.size();
9654 return restartAlgorithms_converter_.convert(restartAlgorithms_.get(index));
9672 if (value ==
null) {
9673 throw new NullPointerException();
9675 ensureRestartAlgorithmsIsMutable();
9676 restartAlgorithms_.set(index, value.getNumber());
9695 if (value ==
null) {
9696 throw new NullPointerException();
9698 ensureRestartAlgorithmsIsMutable();
9699 restartAlgorithms_.add(value.getNumber());
9719 ensureRestartAlgorithmsIsMutable();
9721 restartAlgorithms_.add(value.getNumber());
9741 restartAlgorithms_ = java.util.Collections.emptyList();
9742 bitField0_ = (bitField0_ & ~0x08000000);
9747 private java.lang.Object defaultRestartAlgorithms_ =
"LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART";
9752 return ((bitField0_ & 0x10000000) != 0);
9758 java.lang.Object ref = defaultRestartAlgorithms_;
9759 if (!(ref instanceof java.lang.String)) {
9762 java.lang.String s = bs.toStringUtf8();
9763 if (bs.isValidUtf8()) {
9764 defaultRestartAlgorithms_ = s;
9768 return (java.lang.String) ref;
9776 java.lang.Object ref = defaultRestartAlgorithms_;
9777 if (ref instanceof String) {
9779 com.
google.protobuf.ByteString.copyFromUtf8(
9780 (java.lang.String) ref);
9781 defaultRestartAlgorithms_ = b;
9784 return (
com.
google.protobuf.ByteString) ref;
9791 java.lang.String value) {
9792 if (value ==
null) {
9793 throw new NullPointerException();
9795 bitField0_ |= 0x10000000;
9796 defaultRestartAlgorithms_ = value;
9804 bitField0_ = (bitField0_ & ~0x10000000);
9814 if (value ==
null) {
9815 throw new NullPointerException();
9817 bitField0_ |= 0x10000000;
9818 defaultRestartAlgorithms_ = value;
9823 private int restartPeriod_ = 50;
9833 return ((bitField0_ & 0x20000000) != 0);
9844 return restartPeriod_;
9855 bitField0_ |= 0x20000000;
9856 restartPeriod_ = value;
9869 bitField0_ = (bitField0_ & ~0x20000000);
9870 restartPeriod_ = 50;
9875 private int restartRunningWindowSize_ = 50;
9884 return ((bitField0_ & 0x40000000) != 0);
9894 return restartRunningWindowSize_;
9904 bitField0_ |= 0x40000000;
9905 restartRunningWindowSize_ = value;
9917 bitField0_ = (bitField0_ & ~0x40000000);
9918 restartRunningWindowSize_ = 50;
9923 private double restartDlAverageRatio_ = 1D;
9933 return ((bitField0_ & 0x80000000) != 0);
9944 return restartDlAverageRatio_;
9955 bitField0_ |= 0x80000000;
9956 restartDlAverageRatio_ = value;
9969 bitField0_ = (bitField0_ & ~0x80000000);
9970 restartDlAverageRatio_ = 1D;
9975 private double restartLbdAverageRatio_ = 1D;
9980 return ((bitField1_ & 0x00000001) != 0);
9986 return restartLbdAverageRatio_;
9992 bitField1_ |= 0x00000001;
9993 restartLbdAverageRatio_ = value;
10001 bitField1_ = (bitField1_ & ~0x00000001);
10002 restartLbdAverageRatio_ = 1D;
10007 private boolean useBlockingRestart_ ;
10018 return ((bitField1_ & 0x00000002) != 0);
10030 return useBlockingRestart_;
10042 bitField1_ |= 0x00000002;
10043 useBlockingRestart_ = value;
10057 bitField1_ = (bitField1_ & ~0x00000002);
10058 useBlockingRestart_ =
false;
10063 private int blockingRestartWindowSize_ = 5000;
10068 return ((bitField1_ & 0x00000004) != 0);
10074 return blockingRestartWindowSize_;
10080 bitField1_ |= 0x00000004;
10081 blockingRestartWindowSize_ = value;
10089 bitField1_ = (bitField1_ & ~0x00000004);
10090 blockingRestartWindowSize_ = 5000;
10095 private double blockingRestartMultiplier_ = 1.4D;
10100 return ((bitField1_ & 0x00000008) != 0);
10106 return blockingRestartMultiplier_;
10112 bitField1_ |= 0x00000008;
10113 blockingRestartMultiplier_ = value;
10121 bitField1_ = (bitField1_ & ~0x00000008);
10122 blockingRestartMultiplier_ = 1.4D;
10127 private int numConflictsBeforeStrategyChanges_ ;
10138 return ((bitField1_ & 0x00000010) != 0);
10150 return numConflictsBeforeStrategyChanges_;
10162 bitField1_ |= 0x00000010;
10163 numConflictsBeforeStrategyChanges_ = value;
10177 bitField1_ = (bitField1_ & ~0x00000010);
10178 numConflictsBeforeStrategyChanges_ = 0;
10183 private double strategyChangeIncreaseRatio_ ;
10193 return ((bitField1_ & 0x00000020) != 0);
10204 return strategyChangeIncreaseRatio_;
10215 bitField1_ |= 0x00000020;
10216 strategyChangeIncreaseRatio_ = value;
10229 bitField1_ = (bitField1_ & ~0x00000020);
10230 strategyChangeIncreaseRatio_ = 0D;
10235 private double maxTimeInSeconds_ = Double.POSITIVE_INFINITY;
10246 return ((bitField1_ & 0x00000040) != 0);
10258 return maxTimeInSeconds_;
10270 bitField1_ |= 0x00000040;
10271 maxTimeInSeconds_ = value;
10285 bitField1_ = (bitField1_ & ~0x00000040);
10286 maxTimeInSeconds_ = Double.POSITIVE_INFINITY;
10291 private double maxDeterministicTime_ = Double.POSITIVE_INFINITY;
10304 return ((bitField1_ & 0x00000080) != 0);
10318 return maxDeterministicTime_;
10332 bitField1_ |= 0x00000080;
10333 maxDeterministicTime_ = value;
10349 bitField1_ = (bitField1_ & ~0x00000080);
10350 maxDeterministicTime_ = Double.POSITIVE_INFINITY;
10355 private long maxNumberOfConflicts_ = 9223372036854775807L;
10364 return ((bitField1_ & 0x00000100) != 0);
10374 return maxNumberOfConflicts_;
10384 bitField1_ |= 0x00000100;
10385 maxNumberOfConflicts_ = value;
10397 bitField1_ = (bitField1_ & ~0x00000100);
10398 maxNumberOfConflicts_ = 9223372036854775807L;
10403 private long maxMemoryInMb_ = 10000L;
10415 return ((bitField1_ & 0x00000200) != 0);
10428 return maxMemoryInMb_;
10441 bitField1_ |= 0x00000200;
10442 maxMemoryInMb_ = value;
10457 bitField1_ = (bitField1_ & ~0x00000200);
10458 maxMemoryInMb_ = 10000L;
10463 private boolean treatBinaryClausesSeparately_ =
true;
10474 return ((bitField1_ & 0x00000400) != 0);
10486 return treatBinaryClausesSeparately_;
10498 bitField1_ |= 0x00000400;
10499 treatBinaryClausesSeparately_ = value;
10513 bitField1_ = (bitField1_ & ~0x00000400);
10514 treatBinaryClausesSeparately_ =
true;
10519 private int randomSeed_ = 1;
10533 return ((bitField1_ & 0x00000800) != 0);
10548 return randomSeed_;
10563 bitField1_ |= 0x00000800;
10564 randomSeed_ = value;
10581 bitField1_ = (bitField1_ & ~0x00000800);
10587 private boolean logSearchProgress_ ;
10596 return ((bitField1_ & 0x00001000) != 0);
10606 return logSearchProgress_;
10616 bitField1_ |= 0x00001000;
10617 logSearchProgress_ = value;
10629 bitField1_ = (bitField1_ & ~0x00001000);
10630 logSearchProgress_ =
false;
10635 private boolean usePbResolution_ ;
10647 return ((bitField1_ & 0x00002000) != 0);
10660 return usePbResolution_;
10673 bitField1_ |= 0x00002000;
10674 usePbResolution_ = value;
10689 bitField1_ = (bitField1_ & ~0x00002000);
10690 usePbResolution_ =
false;
10695 private boolean minimizeReductionDuringPbResolution_ ;
10707 return ((bitField1_ & 0x00004000) != 0);
10720 return minimizeReductionDuringPbResolution_;
10733 bitField1_ |= 0x00004000;
10734 minimizeReductionDuringPbResolution_ = value;
10749 bitField1_ = (bitField1_ & ~0x00004000);
10750 minimizeReductionDuringPbResolution_ =
false;
10755 private boolean countAssumptionLevelsInLbd_ =
true;
10771 return ((bitField1_ & 0x00008000) != 0);
10788 return countAssumptionLevelsInLbd_;
10805 bitField1_ |= 0x00008000;
10806 countAssumptionLevelsInLbd_ = value;
10825 bitField1_ = (bitField1_ & ~0x00008000);
10826 countAssumptionLevelsInLbd_ =
true;
10831 private int presolveBveThreshold_ = 500;
10842 return ((bitField1_ & 0x00010000) != 0);
10854 return presolveBveThreshold_;
10866 bitField1_ |= 0x00010000;
10867 presolveBveThreshold_ = value;
10881 bitField1_ = (bitField1_ & ~0x00010000);
10882 presolveBveThreshold_ = 500;
10887 private int presolveBveClauseWeight_ = 3;
10897 return ((bitField1_ & 0x00020000) != 0);
10908 return presolveBveClauseWeight_;
10919 bitField1_ |= 0x00020000;
10920 presolveBveClauseWeight_ = value;
10933 bitField1_ = (bitField1_ & ~0x00020000);
10934 presolveBveClauseWeight_ = 3;
10939 private double presolveProbingDeterministicTimeLimit_ = 30D;
10949 return ((bitField1_ & 0x00040000) != 0);
10960 return presolveProbingDeterministicTimeLimit_;
10971 bitField1_ |= 0x00040000;
10972 presolveProbingDeterministicTimeLimit_ = value;
10985 bitField1_ = (bitField1_ & ~0x00040000);
10986 presolveProbingDeterministicTimeLimit_ = 30D;
10991 private boolean presolveBlockedClause_ =
true;
11001 return ((bitField1_ & 0x00080000) != 0);
11012 return presolveBlockedClause_;
11023 bitField1_ |= 0x00080000;
11024 presolveBlockedClause_ = value;
11037 bitField1_ = (bitField1_ & ~0x00080000);
11038 presolveBlockedClause_ =
true;
11043 private boolean presolveUseBva_ =
true;
11052 return ((bitField1_ & 0x00100000) != 0);
11062 return presolveUseBva_;
11072 bitField1_ |= 0x00100000;
11073 presolveUseBva_ = value;
11085 bitField1_ = (bitField1_ & ~0x00100000);
11086 presolveUseBva_ =
true;
11091 private int presolveBvaThreshold_ = 1;
11103 return ((bitField1_ & 0x00200000) != 0);
11116 return presolveBvaThreshold_;
11129 bitField1_ |= 0x00200000;
11130 presolveBvaThreshold_ = value;
11145 bitField1_ = (bitField1_ & ~0x00200000);
11146 presolveBvaThreshold_ = 1;
11151 private boolean useOptimizationHints_ =
true;
11163 return ((bitField1_ & 0x00400000) != 0);
11176 return useOptimizationHints_;
11189 bitField1_ |= 0x00400000;
11190 useOptimizationHints_ = value;
11205 bitField1_ = (bitField1_ & ~0x00400000);
11206 useOptimizationHints_ =
true;
11211 private boolean minimizeCore_ =
true;
11220 return ((bitField1_ & 0x00800000) != 0);
11230 return minimizeCore_;
11240 bitField1_ |= 0x00800000;
11241 minimizeCore_ = value;
11253 bitField1_ = (bitField1_ & ~0x00800000);
11254 minimizeCore_ =
true;
11259 private boolean findMultipleCores_ =
true;
11269 return ((bitField1_ & 0x01000000) != 0);
11280 return findMultipleCores_;
11291 bitField1_ |= 0x01000000;
11292 findMultipleCores_ = value;
11305 bitField1_ = (bitField1_ & ~0x01000000);
11306 findMultipleCores_ =
true;
11311 private boolean coverOptimization_ =
true;
11321 return ((bitField1_ & 0x02000000) != 0);
11332 return coverOptimization_;
11343 bitField1_ |= 0x02000000;
11344 coverOptimization_ = value;
11357 bitField1_ = (bitField1_ & ~0x02000000);
11358 coverOptimization_ =
true;
11363 private int maxSatAssumptionOrder_ = 0;
11368 return ((bitField1_ & 0x04000000) != 0);
11374 @SuppressWarnings(
"deprecation")
11382 if (value ==
null) {
11383 throw new NullPointerException();
11385 bitField1_ |= 0x04000000;
11386 maxSatAssumptionOrder_ = value.getNumber();
11394 bitField1_ = (bitField1_ & ~0x04000000);
11395 maxSatAssumptionOrder_ = 0;
11400 private boolean maxSatReverseAssumptionOrder_ ;
11410 return ((bitField1_ & 0x08000000) != 0);
11421 return maxSatReverseAssumptionOrder_;
11432 bitField1_ |= 0x08000000;
11433 maxSatReverseAssumptionOrder_ = value;
11446 bitField1_ = (bitField1_ & ~0x08000000);
11447 maxSatReverseAssumptionOrder_ =
false;
11452 private int maxSatStratification_ = 1;
11457 return ((bitField1_ & 0x10000000) != 0);
11463 @SuppressWarnings(
"deprecation")
11471 if (value ==
null) {
11472 throw new NullPointerException();
11474 bitField1_ |= 0x10000000;
11475 maxSatStratification_ = value.getNumber();
11483 bitField1_ = (bitField1_ & ~0x10000000);
11484 maxSatStratification_ = 1;
11489 private boolean usePrecedencesInDisjunctiveConstraint_ =
true;
11505 return ((bitField1_ & 0x20000000) != 0);
11522 return usePrecedencesInDisjunctiveConstraint_;
11539 bitField1_ |= 0x20000000;
11540 usePrecedencesInDisjunctiveConstraint_ = value;
11559 bitField1_ = (bitField1_ & ~0x20000000);
11560 usePrecedencesInDisjunctiveConstraint_ =
true;
11565 private boolean useOverloadCheckerInCumulativeConstraint_ ;
11579 return ((bitField1_ & 0x40000000) != 0);
11594 return useOverloadCheckerInCumulativeConstraint_;
11609 bitField1_ |= 0x40000000;
11610 useOverloadCheckerInCumulativeConstraint_ = value;
11627 bitField1_ = (bitField1_ & ~0x40000000);
11628 useOverloadCheckerInCumulativeConstraint_ =
false;
11633 private boolean useTimetableEdgeFindingInCumulativeConstraint_ ;
11647 return ((bitField1_ & 0x80000000) != 0);
11662 return useTimetableEdgeFindingInCumulativeConstraint_;
11677 bitField1_ |= 0x80000000;
11678 useTimetableEdgeFindingInCumulativeConstraint_ = value;
11695 bitField1_ = (bitField1_ & ~0x80000000);
11696 useTimetableEdgeFindingInCumulativeConstraint_ =
false;
11701 private boolean useDisjunctiveConstraintInCumulativeConstraint_ =
true;
11717 return ((bitField2_ & 0x00000001) != 0);
11734 return useDisjunctiveConstraintInCumulativeConstraint_;
11751 bitField2_ |= 0x00000001;
11752 useDisjunctiveConstraintInCumulativeConstraint_ = value;
11771 bitField2_ = (bitField2_ & ~0x00000001);
11772 useDisjunctiveConstraintInCumulativeConstraint_ =
true;
11777 private int linearizationLevel_ = 1;
11789 return ((bitField2_ & 0x00000002) != 0);
11802 return linearizationLevel_;
11815 bitField2_ |= 0x00000002;
11816 linearizationLevel_ = value;
11831 bitField2_ = (bitField2_ & ~0x00000002);
11832 linearizationLevel_ = 1;
11837 private int booleanEncodingLevel_ = 1;
11847 return ((bitField2_ & 0x00000004) != 0);
11858 return booleanEncodingLevel_;
11869 bitField2_ |= 0x00000004;
11870 booleanEncodingLevel_ = value;
11883 bitField2_ = (bitField2_ & ~0x00000004);
11884 booleanEncodingLevel_ = 1;
11889 private int maxNumCuts_ = 1000;
11899 return ((bitField2_ & 0x00000008) != 0);
11910 return maxNumCuts_;
11921 bitField2_ |= 0x00000008;
11922 maxNumCuts_ = value;
11935 bitField2_ = (bitField2_ & ~0x00000008);
11936 maxNumCuts_ = 1000;
11941 private boolean onlyAddCutsAtLevelZero_ ;
11951 return ((bitField2_ & 0x00000010) != 0);
11962 return onlyAddCutsAtLevelZero_;
11973 bitField2_ |= 0x00000010;
11974 onlyAddCutsAtLevelZero_ = value;
11987 bitField2_ = (bitField2_ & ~0x00000010);
11988 onlyAddCutsAtLevelZero_ =
false;
11993 private boolean addKnapsackCuts_ ;
12004 return ((bitField2_ & 0x00000020) != 0);
12016 return addKnapsackCuts_;
12028 bitField2_ |= 0x00000020;
12029 addKnapsackCuts_ = value;
12043 bitField2_ = (bitField2_ & ~0x00000020);
12044 addKnapsackCuts_ =
false;
12049 private boolean addCgCuts_ ;
12059 return ((bitField2_ & 0x00000040) != 0);
12081 bitField2_ |= 0x00000040;
12082 addCgCuts_ = value;
12095 bitField2_ = (bitField2_ & ~0x00000040);
12096 addCgCuts_ =
false;
12101 private boolean addMirCuts_ =
true;
12111 return ((bitField2_ & 0x00000080) != 0);
12122 return addMirCuts_;
12133 bitField2_ |= 0x00000080;
12134 addMirCuts_ = value;
12147 bitField2_ = (bitField2_ & ~0x00000080);
12148 addMirCuts_ =
true;
12153 private boolean useMirRounding_ =
true;
12164 return ((bitField2_ & 0x00000100) != 0);
12176 return useMirRounding_;
12188 bitField2_ |= 0x00000100;
12189 useMirRounding_ = value;
12203 bitField2_ = (bitField2_ & ~0x00000100);
12204 useMirRounding_ =
true;
12209 private int maxIntegerRoundingScaling_ = 600;
12222 return ((bitField2_ & 0x00000200) != 0);
12236 return maxIntegerRoundingScaling_;
12250 bitField2_ |= 0x00000200;
12251 maxIntegerRoundingScaling_ = value;
12267 bitField2_ = (bitField2_ & ~0x00000200);
12268 maxIntegerRoundingScaling_ = 600;
12273 private boolean addLpConstraintsLazily_ =
true;
12285 return ((bitField2_ & 0x00000400) != 0);
12298 return addLpConstraintsLazily_;
12311 bitField2_ |= 0x00000400;
12312 addLpConstraintsLazily_ = value;
12327 bitField2_ = (bitField2_ & ~0x00000400);
12328 addLpConstraintsLazily_ =
true;
12333 private double minOrthogonalityForLpConstraints_ ;
12346 return ((bitField2_ & 0x00000800) != 0);
12360 return minOrthogonalityForLpConstraints_;
12374 bitField2_ |= 0x00000800;
12375 minOrthogonalityForLpConstraints_ = value;
12391 bitField2_ = (bitField2_ & ~0x00000800);
12392 minOrthogonalityForLpConstraints_ = 0D;
12397 private long maxInactiveCount_ = 1000L;
12407 return ((bitField2_ & 0x00001000) != 0);
12418 return maxInactiveCount_;
12429 bitField2_ |= 0x00001000;
12430 maxInactiveCount_ = value;
12443 bitField2_ = (bitField2_ & ~0x00001000);
12444 maxInactiveCount_ = 1000L;
12449 private long constraintRemovalBatchSize_ = 100L;
12459 return ((bitField2_ & 0x00002000) != 0);
12470 return constraintRemovalBatchSize_;
12481 bitField2_ |= 0x00002000;
12482 constraintRemovalBatchSize_ = value;
12495 bitField2_ = (bitField2_ & ~0x00002000);
12496 constraintRemovalBatchSize_ = 100L;
12501 private int searchBranching_ = 0;
12506 return ((bitField2_ & 0x00004000) != 0);
12512 @SuppressWarnings(
"deprecation")
12520 if (value ==
null) {
12521 throw new NullPointerException();
12523 bitField2_ |= 0x00004000;
12524 searchBranching_ = value.getNumber();
12532 bitField2_ = (bitField2_ & ~0x00004000);
12533 searchBranching_ = 0;
12538 private boolean exploitIntegerLpSolution_ =
true;
12550 return ((bitField2_ & 0x00008000) != 0);
12563 return exploitIntegerLpSolution_;
12576 bitField2_ |= 0x00008000;
12577 exploitIntegerLpSolution_ = value;
12592 bitField2_ = (bitField2_ & ~0x00008000);
12593 exploitIntegerLpSolution_ =
true;
12598 private boolean exploitAllLpSolution_ =
true;
12609 return ((bitField2_ & 0x00010000) != 0);
12621 return exploitAllLpSolution_;
12633 bitField2_ |= 0x00010000;
12634 exploitAllLpSolution_ = value;
12648 bitField2_ = (bitField2_ & ~0x00010000);
12649 exploitAllLpSolution_ =
true;
12654 private boolean exploitBestSolution_ ;
12663 return ((bitField2_ & 0x00020000) != 0);
12673 return exploitBestSolution_;
12683 bitField2_ |= 0x00020000;
12684 exploitBestSolution_ = value;
12696 bitField2_ = (bitField2_ & ~0x00020000);
12697 exploitBestSolution_ =
false;
12702 private boolean exploitObjective_ =
true;
12712 return ((bitField2_ & 0x00040000) != 0);
12723 return exploitObjective_;
12734 bitField2_ |= 0x00040000;
12735 exploitObjective_ = value;
12748 bitField2_ = (bitField2_ & ~0x00040000);
12749 exploitObjective_ =
true;
12754 private long pseudoCostReliabilityThreshold_ = 100L;
12764 return ((bitField2_ & 0x00080000) != 0);
12775 return pseudoCostReliabilityThreshold_;
12786 bitField2_ |= 0x00080000;
12787 pseudoCostReliabilityThreshold_ = value;
12800 bitField2_ = (bitField2_ & ~0x00080000);
12801 pseudoCostReliabilityThreshold_ = 100L;
12806 private boolean optimizeWithCore_ ;
12818 return ((bitField2_ & 0x00100000) != 0);
12831 return optimizeWithCore_;
12844 bitField2_ |= 0x00100000;
12845 optimizeWithCore_ = value;
12860 bitField2_ = (bitField2_ & ~0x00100000);
12861 optimizeWithCore_ =
false;
12866 private int binarySearchNumConflicts_ = -1;
12878 return ((bitField2_ & 0x00200000) != 0);
12891 return binarySearchNumConflicts_;
12904 bitField2_ |= 0x00200000;
12905 binarySearchNumConflicts_ = value;
12920 bitField2_ = (bitField2_ & ~0x00200000);
12921 binarySearchNumConflicts_ = -1;
12926 private boolean optimizeWithMaxHs_ ;
12940 return ((bitField2_ & 0x00400000) != 0);
12955 return optimizeWithMaxHs_;
12970 bitField2_ |= 0x00400000;
12971 optimizeWithMaxHs_ = value;
12988 bitField2_ = (bitField2_ & ~0x00400000);
12989 optimizeWithMaxHs_ =
false;
12994 private boolean cpModelPresolve_ =
true;
13003 return ((bitField2_ & 0x00800000) != 0);
13013 return cpModelPresolve_;
13023 bitField2_ |= 0x00800000;
13024 cpModelPresolve_ = value;
13036 bitField2_ = (bitField2_ & ~0x00800000);
13037 cpModelPresolve_ =
true;
13042 private int cpModelProbingLevel_ = 2;
13051 return ((bitField2_ & 0x01000000) != 0);
13061 return cpModelProbingLevel_;
13071 bitField2_ |= 0x01000000;
13072 cpModelProbingLevel_ = value;
13084 bitField2_ = (bitField2_ & ~0x01000000);
13085 cpModelProbingLevel_ = 2;
13090 private boolean cpModelUseSatPresolve_ =
true;
13099 return ((bitField2_ & 0x02000000) != 0);
13109 return cpModelUseSatPresolve_;
13119 bitField2_ |= 0x02000000;
13120 cpModelUseSatPresolve_ = value;
13132 bitField2_ = (bitField2_ & ~0x02000000);
13133 cpModelUseSatPresolve_ =
true;
13138 private boolean enumerateAllSolutions_ ;
13152 return ((bitField2_ & 0x04000000) != 0);
13167 return enumerateAllSolutions_;
13182 bitField2_ |= 0x04000000;
13183 enumerateAllSolutions_ = value;
13200 bitField2_ = (bitField2_ & ~0x04000000);
13201 enumerateAllSolutions_ =
false;
13206 private boolean fillTightenedDomainsInResponse_ ;
13219 return ((bitField2_ & 0x08000000) != 0);
13233 return fillTightenedDomainsInResponse_;
13247 bitField2_ |= 0x08000000;
13248 fillTightenedDomainsInResponse_ = value;
13264 bitField2_ = (bitField2_ & ~0x08000000);
13265 fillTightenedDomainsInResponse_ =
false;
13270 private boolean instantiateAllVariables_ =
true;
13280 return ((bitField2_ & 0x10000000) != 0);
13291 return instantiateAllVariables_;
13302 bitField2_ |= 0x10000000;
13303 instantiateAllVariables_ = value;
13316 bitField2_ = (bitField2_ & ~0x10000000);
13317 instantiateAllVariables_ =
true;
13322 private boolean autoDetectGreaterThanAtLeastOneOf_ =
true;
13334 return ((bitField2_ & 0x20000000) != 0);
13347 return autoDetectGreaterThanAtLeastOneOf_;
13360 bitField2_ |= 0x20000000;
13361 autoDetectGreaterThanAtLeastOneOf_ = value;
13376 bitField2_ = (bitField2_ & ~0x20000000);
13377 autoDetectGreaterThanAtLeastOneOf_ =
true;
13382 private boolean stopAfterFirstSolution_ ;
13391 return ((bitField2_ & 0x40000000) != 0);
13401 return stopAfterFirstSolution_;
13411 bitField2_ |= 0x40000000;
13412 stopAfterFirstSolution_ = value;
13424 bitField2_ = (bitField2_ & ~0x40000000);
13425 stopAfterFirstSolution_ =
false;
13430 private int numSearchWorkers_ ;
13442 return ((bitField2_ & 0x80000000) != 0);
13455 return numSearchWorkers_;
13468 bitField2_ |= 0x80000000;
13469 numSearchWorkers_ = value;
13484 bitField2_ = (bitField2_ & ~0x80000000);
13485 numSearchWorkers_ = 0;
13490 private boolean shareObjectiveBounds_ =
true;
13499 return ((bitField3_ & 0x00000001) != 0);
13509 return shareObjectiveBounds_;
13519 bitField3_ |= 0x00000001;
13520 shareObjectiveBounds_ = value;
13532 bitField3_ = (bitField3_ & ~0x00000001);
13533 shareObjectiveBounds_ =
true;
13538 private boolean shareLevelZeroBounds_ =
true;
13547 return ((bitField3_ & 0x00000002) != 0);
13557 return shareLevelZeroBounds_;
13567 bitField3_ |= 0x00000002;
13568 shareLevelZeroBounds_ = value;
13580 bitField3_ = (bitField3_ & ~0x00000002);
13581 shareLevelZeroBounds_ =
true;
13586 private boolean useLns_ ;
13595 return ((bitField3_ & 0x00000004) != 0);
13615 bitField3_ |= 0x00000004;
13628 bitField3_ = (bitField3_ & ~0x00000004);
13634 private int lnsNumThreads_ = 1;
13639 return ((bitField3_ & 0x00000008) != 0);
13645 return lnsNumThreads_;
13651 bitField3_ |= 0x00000008;
13652 lnsNumThreads_ = value;
13660 bitField3_ = (bitField3_ & ~0x00000008);
13661 lnsNumThreads_ = 1;
13666 private boolean lnsFocusOnDecisionVariables_ ;
13671 return ((bitField3_ & 0x00000010) != 0);
13677 return lnsFocusOnDecisionVariables_;
13683 bitField3_ |= 0x00000010;
13684 lnsFocusOnDecisionVariables_ = value;
13692 bitField3_ = (bitField3_ & ~0x00000010);
13693 lnsFocusOnDecisionVariables_ =
false;
13698 private boolean useRinsLns_ ;
13707 return ((bitField3_ & 0x00000020) != 0);
13717 return useRinsLns_;
13727 bitField3_ |= 0x00000020;
13728 useRinsLns_ = value;
13740 bitField3_ = (bitField3_ & ~0x00000020);
13741 useRinsLns_ =
false;
13746 private boolean randomizeSearch_ ;
13755 return ((bitField3_ & 0x00000040) != 0);
13765 return randomizeSearch_;
13775 bitField3_ |= 0x00000040;
13776 randomizeSearch_ = value;
13788 bitField3_ = (bitField3_ & ~0x00000040);
13789 randomizeSearch_ =
false;
13794 private long searchRandomizationTolerance_ ;
13809 return ((bitField3_ & 0x00000080) != 0);
13825 return searchRandomizationTolerance_;
13841 bitField3_ |= 0x00000080;
13842 searchRandomizationTolerance_ = value;
13860 bitField3_ = (bitField3_ & ~0x00000080);
13861 searchRandomizationTolerance_ = 0L;
13866 private boolean useOptionalVariables_ =
true;
13877 return ((bitField3_ & 0x00000100) != 0);
13889 return useOptionalVariables_;
13901 bitField3_ |= 0x00000100;
13902 useOptionalVariables_ = value;
13916 bitField3_ = (bitField3_ & ~0x00000100);
13917 useOptionalVariables_ =
true;
13922 private boolean useExactLpReason_ =
true;
13934 return ((bitField3_ & 0x00000200) != 0);
13947 return useExactLpReason_;
13960 bitField3_ |= 0x00000200;
13961 useExactLpReason_ = value;
13976 bitField3_ = (bitField3_ & ~0x00000200);
13977 useExactLpReason_ =
true;
13982 private boolean useCombinedNoOverlap_ ;
13993 return ((bitField3_ & 0x00000400) != 0);
14005 return useCombinedNoOverlap_;
14017 bitField3_ |= 0x00000400;
14018 useCombinedNoOverlap_ = value;
14032 bitField3_ = (bitField3_ & ~0x00000400);
14033 useCombinedNoOverlap_ =
false;
14038 private double mipMaxBound_ = 10000000D;
14049 return ((bitField3_ & 0x00000800) != 0);
14061 return mipMaxBound_;
14073 bitField3_ |= 0x00000800;
14074 mipMaxBound_ = value;
14088 bitField3_ = (bitField3_ & ~0x00000800);
14089 mipMaxBound_ = 10000000D;
14094 private double mipVarScaling_ = 1D;
14105 return ((bitField3_ & 0x00001000) != 0);
14117 return mipVarScaling_;
14129 bitField3_ |= 0x00001000;
14130 mipVarScaling_ = value;
14144 bitField3_ = (bitField3_ & ~0x00001000);
14145 mipVarScaling_ = 1D;
14150 private double mipWantedPrecision_ = 1e-06D;
14167 return ((bitField3_ & 0x00002000) != 0);
14185 return mipWantedPrecision_;
14203 bitField3_ |= 0x00002000;
14204 mipWantedPrecision_ = value;
14224 bitField3_ = (bitField3_ & ~0x00002000);
14225 mipWantedPrecision_ = 1e-06D;
14230 private int mipMaxActivityExponent_ = 53;
14245 return ((bitField3_ & 0x00004000) != 0);
14261 return mipMaxActivityExponent_;
14277 bitField3_ |= 0x00004000;
14278 mipMaxActivityExponent_ = value;
14296 bitField3_ = (bitField3_ & ~0x00004000);
14297 mipMaxActivityExponent_ = 53;
14302 private double mipCheckPrecision_ = 0.0001D;
14314 return ((bitField3_ & 0x00008000) != 0);
14327 return mipCheckPrecision_;
14340 bitField3_ |= 0x00008000;
14341 mipCheckPrecision_ = value;
14356 bitField3_ = (bitField3_ & ~0x00008000);
14357 mipCheckPrecision_ = 0.0001D;
14361 @java.lang.Override
14363 final com.
google.protobuf.UnknownFieldSet unknownFields) {
14367 @java.lang.Override
14369 final com.
google.protobuf.UnknownFieldSet unknownFields) {
14384 return DEFAULT_INSTANCE;
14389 @java.lang.Override
14391 com.
google.protobuf.CodedInputStream input,
14392 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
14393 throws com.
google.protobuf.InvalidProtocolBufferException {
14402 @java.lang.Override
14407 @java.lang.Override
14409 return DEFAULT_INSTANCE;