4 package com.google.ortools.constraintsolver;
18 com.google.protobuf.GeneratedMessageV3 implements
21 private static final long serialVersionUID = 0L;
27 firstSolutionStrategy_ = 0;
28 localSearchMetaheuristic_ = 0;
34 @SuppressWarnings({
"unused"})
36 UnusedPrivateParameter unused) {
41 public final com.
google.protobuf.UnknownFieldSet
43 return this.unknownFields;
46 com.
google.protobuf.CodedInputStream input,
47 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
48 throws com.
google.protobuf.InvalidProtocolBufferException {
50 if (extensionRegistry ==
null) {
51 throw new java.lang.NullPointerException();
53 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
54 com.
google.protobuf.UnknownFieldSet.newBuilder();
58 int tag = input.readTag();
64 int rawValue = input.readEnum();
66 firstSolutionStrategy_ = rawValue;
71 useUnfilteredFirstSolutionStrategy_ = input.readBool();
76 if (localSearchOperators_ !=
null) {
77 subBuilder = localSearchOperators_.
toBuilder();
80 if (subBuilder !=
null) {
81 subBuilder.mergeFrom(localSearchOperators_);
82 localSearchOperators_ = subBuilder.buildPartial();
88 int rawValue = input.readEnum();
90 localSearchMetaheuristic_ = rawValue;
95 guidedLocalSearchLambdaCoefficient_ = input.readDouble();
100 useDepthFirstSearch_ = input.readBool();
105 optimizationStep_ = input.readDouble();
110 solutionLimit_ = input.readInt64();
114 com.
google.protobuf.Duration.Builder subBuilder =
null;
115 if (timeLimit_ !=
null) {
116 subBuilder = timeLimit_.toBuilder();
118 timeLimit_ = input.readMessage(
com.
google.protobuf.Duration.parser(), extensionRegistry);
119 if (subBuilder !=
null) {
120 subBuilder.mergeFrom(timeLimit_);
121 timeLimit_ = subBuilder.buildPartial();
127 com.
google.protobuf.Duration.Builder subBuilder =
null;
128 if (lnsTimeLimit_ !=
null) {
129 subBuilder = lnsTimeLimit_.toBuilder();
131 lnsTimeLimit_ = input.readMessage(
com.
google.protobuf.Duration.parser(), extensionRegistry);
132 if (subBuilder !=
null) {
133 subBuilder.mergeFrom(lnsTimeLimit_);
134 lnsTimeLimit_ = subBuilder.buildPartial();
141 useFullPropagation_ = input.readBool();
146 logSearch_ = input.readBool();
151 savingsNeighborsRatio_ = input.readDouble();
156 savingsAddReverseArcs_ = input.readBool();
161 cheapestInsertionFarthestSeedsRatio_ = input.readDouble();
166 numberOfSolutionsToCollect_ = input.readInt32();
171 savingsArcCoefficient_ = input.readDouble();
176 savingsParallelRoutes_ = input.readBool();
181 relocateExpensiveChainNumArcsToConsider_ = input.readInt32();
186 cheapestInsertionNeighborsRatio_ = input.readDouble();
191 logCostScalingFactor_ = input.readDouble();
196 savingsMaxMemoryUsageBytes_ = input.readDouble();
200 int rawValue = input.readEnum();
202 useCpSat_ = rawValue;
206 int rawValue = input.readEnum();
213 logCostOffset_ = input.readDouble();
217 if (!parseUnknownField(
218 input, unknownFields, extensionRegistry, tag)) {
225 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
226 throw e.setUnfinishedMessage(
this);
227 }
catch (java.io.IOException e) {
228 throw new com.
google.protobuf.InvalidProtocolBufferException(
229 e).setUnfinishedMessage(
this);
231 this.unknownFields = unknownFields.build();
232 makeExtensionsImmutable();
235 public static final com.
google.protobuf.Descriptors.Descriptor
241 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
244 .ensureFieldAccessorsInitialized(
250 com.google.protobuf.MessageOrBuilder {
1047 com.google.protobuf.GeneratedMessageV3 implements
1050 private static final long serialVersionUID = 0L;
1057 useRelocatePair_ = 0;
1058 useLightRelocatePair_ = 0;
1059 useRelocateNeighbors_ = 0;
1060 useRelocateSubtrip_ = 0;
1062 useExchangePair_ = 0;
1063 useExchangeSubtrip_ = 0;
1065 useCrossExchange_ = 0;
1066 useRelocateExpensiveChain_ = 0;
1069 useLinKernighan_ = 0;
1072 useRelocateAndMakeActive_ = 0;
1073 useMakeInactive_ = 0;
1074 useMakeChainInactive_ = 0;
1076 useExtendedSwapActive_ = 0;
1077 useNodePairSwapActive_ = 0;
1079 useFullPathLns_ = 0;
1081 useInactiveLns_ = 0;
1085 @SuppressWarnings({
"unused"})
1087 UnusedPrivateParameter unused) {
1092 public final com.
google.protobuf.UnknownFieldSet
1094 return this.unknownFields;
1097 com.
google.protobuf.CodedInputStream input,
1098 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
1099 throws com.
google.protobuf.InvalidProtocolBufferException {
1101 if (extensionRegistry ==
null) {
1102 throw new java.lang.NullPointerException();
1104 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
1105 com.
google.protobuf.UnknownFieldSet.newBuilder();
1107 boolean done =
false;
1109 int tag = input.readTag();
1115 int rawValue = input.readEnum();
1117 useRelocate_ = rawValue;
1121 int rawValue = input.readEnum();
1123 useRelocatePair_ = rawValue;
1127 int rawValue = input.readEnum();
1129 useRelocateNeighbors_ = rawValue;
1133 int rawValue = input.readEnum();
1135 useExchange_ = rawValue;
1139 int rawValue = input.readEnum();
1141 useCross_ = rawValue;
1145 int rawValue = input.readEnum();
1147 useCrossExchange_ = rawValue;
1151 int rawValue = input.readEnum();
1153 useTwoOpt_ = rawValue;
1157 int rawValue = input.readEnum();
1159 useOrOpt_ = rawValue;
1163 int rawValue = input.readEnum();
1165 useLinKernighan_ = rawValue;
1169 int rawValue = input.readEnum();
1171 useTspOpt_ = rawValue;
1175 int rawValue = input.readEnum();
1177 useMakeActive_ = rawValue;
1181 int rawValue = input.readEnum();
1183 useMakeInactive_ = rawValue;
1187 int rawValue = input.readEnum();
1189 useMakeChainInactive_ = rawValue;
1193 int rawValue = input.readEnum();
1195 useSwapActive_ = rawValue;
1199 int rawValue = input.readEnum();
1201 useExtendedSwapActive_ = rawValue;
1205 int rawValue = input.readEnum();
1207 usePathLns_ = rawValue;
1211 int rawValue = input.readEnum();
1213 useFullPathLns_ = rawValue;
1217 int rawValue = input.readEnum();
1219 useTspLns_ = rawValue;
1223 int rawValue = input.readEnum();
1225 useInactiveLns_ = rawValue;
1229 int rawValue = input.readEnum();
1231 useNodePairSwapActive_ = rawValue;
1235 int rawValue = input.readEnum();
1237 useRelocateAndMakeActive_ = rawValue;
1241 int rawValue = input.readEnum();
1243 useExchangePair_ = rawValue;
1247 int rawValue = input.readEnum();
1249 useRelocateExpensiveChain_ = rawValue;
1253 int rawValue = input.readEnum();
1255 useLightRelocatePair_ = rawValue;
1259 int rawValue = input.readEnum();
1261 useRelocateSubtrip_ = rawValue;
1265 int rawValue = input.readEnum();
1267 useExchangeSubtrip_ = rawValue;
1271 if (!parseUnknownField(
1272 input, unknownFields, extensionRegistry, tag)) {
1279 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
1280 throw e.setUnfinishedMessage(
this);
1281 }
catch (java.io.IOException e) {
1282 throw new com.
google.protobuf.InvalidProtocolBufferException(
1283 e).setUnfinishedMessage(
this);
1285 this.unknownFields = unknownFields.build();
1286 makeExtensionsImmutable();
1289 public static final com.
google.protobuf.Descriptors.Descriptor
1295 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
1298 .ensureFieldAccessorsInitialized(
1303 private int useRelocate_;
1320 return useRelocate_;
1338 @SuppressWarnings(
"deprecation")
1344 private int useRelocatePair_;
1361 return useRelocatePair_;
1379 @SuppressWarnings(
"deprecation")
1385 private int useLightRelocatePair_;
1400 return useLightRelocatePair_;
1416 @SuppressWarnings(
"deprecation")
1422 private int useRelocateNeighbors_;
1452 return useRelocateNeighbors_;
1483 @SuppressWarnings(
"deprecation")
1489 private int useRelocateSubtrip_;
1509 return useRelocateSubtrip_;
1530 @SuppressWarnings(
"deprecation")
1536 private int useExchange_;
1551 return useExchange_;
1567 @SuppressWarnings(
"deprecation")
1573 private int useExchangePair_;
1588 return useExchangePair_;
1604 @SuppressWarnings(
"deprecation")
1610 private int useExchangeSubtrip_;
1620 return useExchangeSubtrip_;
1631 @SuppressWarnings(
"deprecation")
1637 private int useCross_;
1672 @SuppressWarnings(
"deprecation")
1678 private int useCrossExchange_;
1687 return useCrossExchange_;
1697 @SuppressWarnings(
"deprecation")
1703 private int useRelocateExpensiveChain_;
1721 return useRelocateExpensiveChain_;
1740 @SuppressWarnings(
"deprecation")
1746 private int useTwoOpt_;
1783 @SuppressWarnings(
"deprecation")
1789 private int useOrOpt_;
1828 @SuppressWarnings(
"deprecation")
1834 private int useLinKernighan_;
1846 return useLinKernighan_;
1859 @SuppressWarnings(
"deprecation")
1865 private int useTspOpt_;
1894 @SuppressWarnings(
"deprecation")
1900 private int useMakeActive_;
1915 return useMakeActive_;
1931 @SuppressWarnings(
"deprecation")
1937 private int useRelocateAndMakeActive_;
1955 return useRelocateAndMakeActive_;
1974 @SuppressWarnings(
"deprecation")
1980 private int useMakeInactive_;
1993 return useMakeInactive_;
2007 @SuppressWarnings(
"deprecation")
2013 private int useMakeChainInactive_;
2027 return useMakeChainInactive_;
2042 @SuppressWarnings(
"deprecation")
2048 private int useSwapActive_;
2061 return useSwapActive_;
2075 @SuppressWarnings(
"deprecation")
2081 private int useExtendedSwapActive_;
2099 return useExtendedSwapActive_;
2118 @SuppressWarnings(
"deprecation")
2124 private int useNodePairSwapActive_;
2143 return useNodePairSwapActive_;
2163 @SuppressWarnings(
"deprecation")
2169 private int usePathLns_;
2202 @SuppressWarnings(
"deprecation")
2208 private int useFullPathLns_;
2217 return useFullPathLns_;
2227 @SuppressWarnings(
"deprecation")
2233 private int useTspLns_;
2262 @SuppressWarnings(
"deprecation")
2268 private int useInactiveLns_;
2279 return useInactiveLns_;
2291 @SuppressWarnings(
"deprecation")
2296 private byte memoizedIsInitialized = -1;
2303 memoizedIsInitialized = 1;
2309 throws java.io.IOException {
2311 output.writeEnum(1, useRelocate_);
2314 output.writeEnum(2, useRelocatePair_);
2317 output.writeEnum(3, useRelocateNeighbors_);
2320 output.writeEnum(4, useExchange_);
2323 output.writeEnum(5, useCross_);
2326 output.writeEnum(6, useCrossExchange_);
2329 output.writeEnum(7, useTwoOpt_);
2332 output.writeEnum(8, useOrOpt_);
2335 output.writeEnum(9, useLinKernighan_);
2338 output.writeEnum(10, useTspOpt_);
2341 output.writeEnum(11, useMakeActive_);
2344 output.writeEnum(12, useMakeInactive_);
2347 output.writeEnum(13, useMakeChainInactive_);
2350 output.writeEnum(14, useSwapActive_);
2353 output.writeEnum(15, useExtendedSwapActive_);
2356 output.writeEnum(16, usePathLns_);
2359 output.writeEnum(17, useFullPathLns_);
2362 output.writeEnum(18, useTspLns_);
2365 output.writeEnum(19, useInactiveLns_);
2368 output.writeEnum(20, useNodePairSwapActive_);
2371 output.writeEnum(21, useRelocateAndMakeActive_);
2374 output.writeEnum(22, useExchangePair_);
2377 output.writeEnum(23, useRelocateExpensiveChain_);
2380 output.writeEnum(24, useLightRelocatePair_);
2383 output.writeEnum(25, useRelocateSubtrip_);
2386 output.writeEnum(26, useExchangeSubtrip_);
2388 unknownFields.writeTo(output);
2393 int size = memoizedSize;
2394 if (size != -1)
return size;
2398 size +=
com.
google.protobuf.CodedOutputStream
2399 .computeEnumSize(1, useRelocate_);
2402 size +=
com.
google.protobuf.CodedOutputStream
2403 .computeEnumSize(2, useRelocatePair_);
2406 size +=
com.
google.protobuf.CodedOutputStream
2407 .computeEnumSize(3, useRelocateNeighbors_);
2410 size +=
com.
google.protobuf.CodedOutputStream
2411 .computeEnumSize(4, useExchange_);
2414 size +=
com.
google.protobuf.CodedOutputStream
2415 .computeEnumSize(5, useCross_);
2418 size +=
com.
google.protobuf.CodedOutputStream
2419 .computeEnumSize(6, useCrossExchange_);
2422 size +=
com.
google.protobuf.CodedOutputStream
2423 .computeEnumSize(7, useTwoOpt_);
2426 size +=
com.
google.protobuf.CodedOutputStream
2427 .computeEnumSize(8, useOrOpt_);
2430 size +=
com.
google.protobuf.CodedOutputStream
2431 .computeEnumSize(9, useLinKernighan_);
2434 size +=
com.
google.protobuf.CodedOutputStream
2435 .computeEnumSize(10, useTspOpt_);
2438 size +=
com.
google.protobuf.CodedOutputStream
2439 .computeEnumSize(11, useMakeActive_);
2442 size +=
com.
google.protobuf.CodedOutputStream
2443 .computeEnumSize(12, useMakeInactive_);
2446 size +=
com.
google.protobuf.CodedOutputStream
2447 .computeEnumSize(13, useMakeChainInactive_);
2450 size +=
com.
google.protobuf.CodedOutputStream
2451 .computeEnumSize(14, useSwapActive_);
2454 size +=
com.
google.protobuf.CodedOutputStream
2455 .computeEnumSize(15, useExtendedSwapActive_);
2458 size +=
com.
google.protobuf.CodedOutputStream
2459 .computeEnumSize(16, usePathLns_);
2462 size +=
com.
google.protobuf.CodedOutputStream
2463 .computeEnumSize(17, useFullPathLns_);
2466 size +=
com.
google.protobuf.CodedOutputStream
2467 .computeEnumSize(18, useTspLns_);
2470 size +=
com.
google.protobuf.CodedOutputStream
2471 .computeEnumSize(19, useInactiveLns_);
2474 size +=
com.
google.protobuf.CodedOutputStream
2475 .computeEnumSize(20, useNodePairSwapActive_);
2478 size +=
com.
google.protobuf.CodedOutputStream
2479 .computeEnumSize(21, useRelocateAndMakeActive_);
2482 size +=
com.
google.protobuf.CodedOutputStream
2483 .computeEnumSize(22, useExchangePair_);
2486 size +=
com.
google.protobuf.CodedOutputStream
2487 .computeEnumSize(23, useRelocateExpensiveChain_);
2490 size +=
com.
google.protobuf.CodedOutputStream
2491 .computeEnumSize(24, useLightRelocatePair_);
2494 size +=
com.
google.protobuf.CodedOutputStream
2495 .computeEnumSize(25, useRelocateSubtrip_);
2498 size +=
com.
google.protobuf.CodedOutputStream
2499 .computeEnumSize(26, useExchangeSubtrip_);
2501 size += unknownFields.getSerializedSize();
2502 memoizedSize = size;
2507 public boolean equals(
final java.lang.Object obj) {
2512 return super.equals(obj);
2516 if (useRelocate_ != other.useRelocate_)
return false;
2517 if (useRelocatePair_ != other.useRelocatePair_)
return false;
2518 if (useLightRelocatePair_ != other.useLightRelocatePair_)
return false;
2519 if (useRelocateNeighbors_ != other.useRelocateNeighbors_)
return false;
2520 if (useRelocateSubtrip_ != other.useRelocateSubtrip_)
return false;
2521 if (useExchange_ != other.useExchange_)
return false;
2522 if (useExchangePair_ != other.useExchangePair_)
return false;
2523 if (useExchangeSubtrip_ != other.useExchangeSubtrip_)
return false;
2524 if (useCross_ != other.useCross_)
return false;
2525 if (useCrossExchange_ != other.useCrossExchange_)
return false;
2526 if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_)
return false;
2527 if (useTwoOpt_ != other.useTwoOpt_)
return false;
2528 if (useOrOpt_ != other.useOrOpt_)
return false;
2529 if (useLinKernighan_ != other.useLinKernighan_)
return false;
2530 if (useTspOpt_ != other.useTspOpt_)
return false;
2531 if (useMakeActive_ != other.useMakeActive_)
return false;
2532 if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_)
return false;
2533 if (useMakeInactive_ != other.useMakeInactive_)
return false;
2534 if (useMakeChainInactive_ != other.useMakeChainInactive_)
return false;
2535 if (useSwapActive_ != other.useSwapActive_)
return false;
2536 if (useExtendedSwapActive_ != other.useExtendedSwapActive_)
return false;
2537 if (useNodePairSwapActive_ != other.useNodePairSwapActive_)
return false;
2538 if (usePathLns_ != other.usePathLns_)
return false;
2539 if (useFullPathLns_ != other.useFullPathLns_)
return false;
2540 if (useTspLns_ != other.useTspLns_)
return false;
2541 if (useInactiveLns_ != other.useInactiveLns_)
return false;
2542 if (!unknownFields.equals(other.unknownFields))
return false;
2548 if (memoizedHashCode != 0) {
2549 return memoizedHashCode;
2554 hash = (53 * hash) + useRelocate_;
2556 hash = (53 * hash) + useRelocatePair_;
2558 hash = (53 * hash) + useLightRelocatePair_;
2560 hash = (53 * hash) + useRelocateNeighbors_;
2562 hash = (53 * hash) + useRelocateSubtrip_;
2564 hash = (53 * hash) + useExchange_;
2566 hash = (53 * hash) + useExchangePair_;
2568 hash = (53 * hash) + useExchangeSubtrip_;
2570 hash = (53 * hash) + useCross_;
2572 hash = (53 * hash) + useCrossExchange_;
2574 hash = (53 * hash) + useRelocateExpensiveChain_;
2576 hash = (53 * hash) + useTwoOpt_;
2578 hash = (53 * hash) + useOrOpt_;
2580 hash = (53 * hash) + useLinKernighan_;
2582 hash = (53 * hash) + useTspOpt_;
2584 hash = (53 * hash) + useMakeActive_;
2586 hash = (53 * hash) + useRelocateAndMakeActive_;
2588 hash = (53 * hash) + useMakeInactive_;
2590 hash = (53 * hash) + useMakeChainInactive_;
2592 hash = (53 * hash) + useSwapActive_;
2594 hash = (53 * hash) + useExtendedSwapActive_;
2596 hash = (53 * hash) + useNodePairSwapActive_;
2598 hash = (53 * hash) + usePathLns_;
2600 hash = (53 * hash) + useFullPathLns_;
2602 hash = (53 * hash) + useTspLns_;
2604 hash = (53 * hash) + useInactiveLns_;
2605 hash = (29 * hash) + unknownFields.hashCode();
2606 memoizedHashCode = hash;
2611 java.nio.ByteBuffer data)
2612 throws com.
google.protobuf.InvalidProtocolBufferException {
2613 return PARSER.parseFrom(data);
2616 java.nio.ByteBuffer data,
2617 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2618 throws com.
google.protobuf.InvalidProtocolBufferException {
2619 return PARSER.parseFrom(data, extensionRegistry);
2623 throws com.
google.protobuf.InvalidProtocolBufferException {
2624 return PARSER.parseFrom(data);
2628 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2629 throws com.
google.protobuf.InvalidProtocolBufferException {
2630 return PARSER.parseFrom(data, extensionRegistry);
2633 throws com.
google.protobuf.InvalidProtocolBufferException {
2634 return PARSER.parseFrom(data);
2638 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2639 throws com.
google.protobuf.InvalidProtocolBufferException {
2640 return PARSER.parseFrom(data, extensionRegistry);
2643 throws java.io.IOException {
2644 return com.
google.protobuf.GeneratedMessageV3
2645 .parseWithIOException(PARSER, input);
2648 java.io.InputStream input,
2649 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2650 throws java.io.IOException {
2651 return com.
google.protobuf.GeneratedMessageV3
2652 .parseWithIOException(PARSER, input, extensionRegistry);
2655 throws java.io.IOException {
2656 return com.
google.protobuf.GeneratedMessageV3
2657 .parseDelimitedWithIOException(PARSER, input);
2660 java.io.InputStream input,
2661 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2662 throws java.io.IOException {
2663 return com.
google.protobuf.GeneratedMessageV3
2664 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2667 com.
google.protobuf.CodedInputStream input)
2668 throws java.io.IOException {
2669 return com.
google.protobuf.GeneratedMessageV3
2670 .parseWithIOException(PARSER, input);
2673 com.
google.protobuf.CodedInputStream input,
2674 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2675 throws java.io.IOException {
2676 return com.
google.protobuf.GeneratedMessageV3
2677 .parseWithIOException(PARSER, input, extensionRegistry);
2690 return this == DEFAULT_INSTANCE
2696 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2709 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
2712 public static final com.
google.protobuf.Descriptors.Descriptor
2718 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
2721 .ensureFieldAccessorsInitialized(
2727 maybeForceBuilderInitialization();
2731 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2733 maybeForceBuilderInitialization();
2735 private void maybeForceBuilderInitialization() {
2736 if (
com.
google.protobuf.GeneratedMessageV3
2737 .alwaysUseFieldBuilders) {
2745 useRelocatePair_ = 0;
2747 useLightRelocatePair_ = 0;
2749 useRelocateNeighbors_ = 0;
2751 useRelocateSubtrip_ = 0;
2755 useExchangePair_ = 0;
2757 useExchangeSubtrip_ = 0;
2761 useCrossExchange_ = 0;
2763 useRelocateExpensiveChain_ = 0;
2769 useLinKernighan_ = 0;
2775 useRelocateAndMakeActive_ = 0;
2777 useMakeInactive_ = 0;
2779 useMakeChainInactive_ = 0;
2783 useExtendedSwapActive_ = 0;
2785 useNodePairSwapActive_ = 0;
2789 useFullPathLns_ = 0;
2793 useInactiveLns_ = 0;
2799 public com.
google.protobuf.Descriptors.Descriptor
2812 if (!result.isInitialized()) {
2813 throw newUninitializedMessageException(result);
2821 result.useRelocate_ = useRelocate_;
2822 result.useRelocatePair_ = useRelocatePair_;
2823 result.useLightRelocatePair_ = useLightRelocatePair_;
2824 result.useRelocateNeighbors_ = useRelocateNeighbors_;
2825 result.useRelocateSubtrip_ = useRelocateSubtrip_;
2826 result.useExchange_ = useExchange_;
2827 result.useExchangePair_ = useExchangePair_;
2828 result.useExchangeSubtrip_ = useExchangeSubtrip_;
2829 result.useCross_ = useCross_;
2830 result.useCrossExchange_ = useCrossExchange_;
2831 result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
2832 result.useTwoOpt_ = useTwoOpt_;
2833 result.useOrOpt_ = useOrOpt_;
2834 result.useLinKernighan_ = useLinKernighan_;
2835 result.useTspOpt_ = useTspOpt_;
2836 result.useMakeActive_ = useMakeActive_;
2837 result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
2838 result.useMakeInactive_ = useMakeInactive_;
2839 result.useMakeChainInactive_ = useMakeChainInactive_;
2840 result.useSwapActive_ = useSwapActive_;
2841 result.useExtendedSwapActive_ = useExtendedSwapActive_;
2842 result.useNodePairSwapActive_ = useNodePairSwapActive_;
2843 result.usePathLns_ = usePathLns_;
2844 result.useFullPathLns_ = useFullPathLns_;
2845 result.useTspLns_ = useTspLns_;
2846 result.useInactiveLns_ = useInactiveLns_;
2853 return super.
clone();
2857 com.
google.protobuf.Descriptors.FieldDescriptor field,
2858 java.lang.Object value) {
2859 return super.
setField(field, value);
2863 com.
google.protobuf.Descriptors.FieldDescriptor field) {
2868 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
2873 com.
google.protobuf.Descriptors.FieldDescriptor field,
2874 int index, java.lang.Object value) {
2879 com.
google.protobuf.Descriptors.FieldDescriptor field,
2880 java.lang.Object value) {
2888 super.mergeFrom(other);
2895 if (other.useRelocate_ != 0) {
2898 if (other.useRelocatePair_ != 0) {
2901 if (other.useLightRelocatePair_ != 0) {
2904 if (other.useRelocateNeighbors_ != 0) {
2907 if (other.useRelocateSubtrip_ != 0) {
2910 if (other.useExchange_ != 0) {
2913 if (other.useExchangePair_ != 0) {
2916 if (other.useExchangeSubtrip_ != 0) {
2919 if (other.useCross_ != 0) {
2922 if (other.useCrossExchange_ != 0) {
2925 if (other.useRelocateExpensiveChain_ != 0) {
2928 if (other.useTwoOpt_ != 0) {
2931 if (other.useOrOpt_ != 0) {
2934 if (other.useLinKernighan_ != 0) {
2937 if (other.useTspOpt_ != 0) {
2940 if (other.useMakeActive_ != 0) {
2943 if (other.useRelocateAndMakeActive_ != 0) {
2946 if (other.useMakeInactive_ != 0) {
2949 if (other.useMakeChainInactive_ != 0) {
2952 if (other.useSwapActive_ != 0) {
2955 if (other.useExtendedSwapActive_ != 0) {
2958 if (other.useNodePairSwapActive_ != 0) {
2961 if (other.usePathLns_ != 0) {
2964 if (other.useFullPathLns_ != 0) {
2967 if (other.useTspLns_ != 0) {
2970 if (other.useInactiveLns_ != 0) {
2985 com.
google.protobuf.CodedInputStream input,
2986 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2987 throws java.io.IOException {
2990 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2991 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
2993 throw e.unwrapIOException();
2995 if (parsedMessage !=
null) {
3002 private int useRelocate_ = 0;
3019 return useRelocate_;
3037 useRelocate_ = value;
3057 @SuppressWarnings(
"deprecation")
3077 if (value ==
null) {
3078 throw new NullPointerException();
3081 useRelocate_ = value.getNumber();
3107 private int useRelocatePair_ = 0;
3124 return useRelocatePair_;
3142 useRelocatePair_ = value;
3162 @SuppressWarnings(
"deprecation")
3182 if (value ==
null) {
3183 throw new NullPointerException();
3186 useRelocatePair_ = value.getNumber();
3207 useRelocatePair_ = 0;
3212 private int useLightRelocatePair_ = 0;
3227 return useLightRelocatePair_;
3243 useLightRelocatePair_ = value;
3261 @SuppressWarnings(
"deprecation")
3279 if (value ==
null) {
3280 throw new NullPointerException();
3283 useLightRelocatePair_ = value.getNumber();
3302 useLightRelocatePair_ = 0;
3307 private int useRelocateNeighbors_ = 0;
3337 return useRelocateNeighbors_;
3368 useRelocateNeighbors_ = value;
3401 @SuppressWarnings(
"deprecation")
3434 if (value ==
null) {
3435 throw new NullPointerException();
3438 useRelocateNeighbors_ = value.getNumber();
3472 useRelocateNeighbors_ = 0;
3477 private int useRelocateSubtrip_ = 0;
3497 return useRelocateSubtrip_;
3518 useRelocateSubtrip_ = value;
3541 @SuppressWarnings(
"deprecation")
3564 if (value ==
null) {
3565 throw new NullPointerException();
3568 useRelocateSubtrip_ = value.getNumber();
3592 useRelocateSubtrip_ = 0;
3597 private int useExchange_ = 0;
3612 return useExchange_;
3628 useExchange_ = value;
3646 @SuppressWarnings(
"deprecation")
3664 if (value ==
null) {
3665 throw new NullPointerException();
3668 useExchange_ = value.getNumber();
3692 private int useExchangePair_ = 0;
3707 return useExchangePair_;
3723 useExchangePair_ = value;
3741 @SuppressWarnings(
"deprecation")
3759 if (value ==
null) {
3760 throw new NullPointerException();
3763 useExchangePair_ = value.getNumber();
3782 useExchangePair_ = 0;
3787 private int useExchangeSubtrip_ = 0;
3797 return useExchangeSubtrip_;
3808 useExchangeSubtrip_ = value;
3821 @SuppressWarnings(
"deprecation")
3834 if (value ==
null) {
3835 throw new NullPointerException();
3838 useExchangeSubtrip_ = value.getNumber();
3852 useExchangeSubtrip_ = 0;
3857 private int useCross_ = 0;
3912 @SuppressWarnings(
"deprecation")
3932 if (value ==
null) {
3933 throw new NullPointerException();
3936 useCross_ = value.getNumber();
3962 private int useCrossExchange_ = 0;
3971 return useCrossExchange_;
3981 useCrossExchange_ = value;
3993 @SuppressWarnings(
"deprecation")
4005 if (value ==
null) {
4006 throw new NullPointerException();
4009 useCrossExchange_ = value.getNumber();
4022 useCrossExchange_ = 0;
4027 private int useRelocateExpensiveChain_ = 0;
4045 return useRelocateExpensiveChain_;
4064 useRelocateExpensiveChain_ = value;
4085 @SuppressWarnings(
"deprecation")
4106 if (value ==
null) {
4107 throw new NullPointerException();
4110 useRelocateExpensiveChain_ = value.getNumber();
4132 useRelocateExpensiveChain_ = 0;
4137 private int useTwoOpt_ = 0;
4195 @SuppressWarnings(
"deprecation")
4216 if (value ==
null) {
4217 throw new NullPointerException();
4220 useTwoOpt_ = value.getNumber();
4247 private int useOrOpt_ = 0;
4308 @SuppressWarnings(
"deprecation")
4330 if (value ==
null) {
4331 throw new NullPointerException();
4334 useOrOpt_ = value.getNumber();
4362 private int useLinKernighan_ = 0;
4374 return useLinKernighan_;
4387 useLinKernighan_ = value;
4402 @SuppressWarnings(
"deprecation")
4417 if (value ==
null) {
4418 throw new NullPointerException();
4421 useLinKernighan_ = value.getNumber();
4437 useLinKernighan_ = 0;
4442 private int useTspOpt_ = 0;
4488 @SuppressWarnings(
"deprecation")
4505 if (value ==
null) {
4506 throw new NullPointerException();
4509 useTspOpt_ = value.getNumber();
4532 private int useMakeActive_ = 0;
4547 return useMakeActive_;
4563 useMakeActive_ = value;
4581 @SuppressWarnings(
"deprecation")
4599 if (value ==
null) {
4600 throw new NullPointerException();
4603 useMakeActive_ = value.getNumber();
4627 private int useRelocateAndMakeActive_ = 0;
4645 return useRelocateAndMakeActive_;
4664 useRelocateAndMakeActive_ = value;
4685 @SuppressWarnings(
"deprecation")
4706 if (value ==
null) {
4707 throw new NullPointerException();
4710 useRelocateAndMakeActive_ = value.getNumber();
4732 useRelocateAndMakeActive_ = 0;
4737 private int useMakeInactive_ = 0;
4750 return useMakeInactive_;
4764 useMakeInactive_ = value;
4780 @SuppressWarnings(
"deprecation")
4796 if (value ==
null) {
4797 throw new NullPointerException();
4800 useMakeInactive_ = value.getNumber();
4817 useMakeInactive_ = 0;
4822 private int useMakeChainInactive_ = 0;
4836 return useMakeChainInactive_;
4851 useMakeChainInactive_ = value;
4868 @SuppressWarnings(
"deprecation")
4885 if (value ==
null) {
4886 throw new NullPointerException();
4889 useMakeChainInactive_ = value.getNumber();
4907 useMakeChainInactive_ = 0;
4912 private int useSwapActive_ = 0;
4925 return useSwapActive_;
4939 useSwapActive_ = value;
4955 @SuppressWarnings(
"deprecation")
4971 if (value ==
null) {
4972 throw new NullPointerException();
4975 useSwapActive_ = value.getNumber();
4997 private int useExtendedSwapActive_ = 0;
5015 return useExtendedSwapActive_;
5034 useExtendedSwapActive_ = value;
5055 @SuppressWarnings(
"deprecation")
5076 if (value ==
null) {
5077 throw new NullPointerException();
5080 useExtendedSwapActive_ = value.getNumber();
5102 useExtendedSwapActive_ = 0;
5107 private int useNodePairSwapActive_ = 0;
5126 return useNodePairSwapActive_;
5146 useNodePairSwapActive_ = value;
5168 @SuppressWarnings(
"deprecation")
5190 if (value ==
null) {
5191 throw new NullPointerException();
5194 useNodePairSwapActive_ = value.getNumber();
5217 useNodePairSwapActive_ = 0;
5222 private int usePathLns_ = 0;
5255 usePathLns_ = value;
5274 @SuppressWarnings(
"deprecation")
5293 if (value ==
null) {
5294 throw new NullPointerException();
5297 usePathLns_ = value.getNumber();
5322 private int useFullPathLns_ = 0;
5331 return useFullPathLns_;
5341 useFullPathLns_ = value;
5353 @SuppressWarnings(
"deprecation")
5365 if (value ==
null) {
5366 throw new NullPointerException();
5369 useFullPathLns_ = value.getNumber();
5382 useFullPathLns_ = 0;
5387 private int useTspLns_ = 0;
5433 @SuppressWarnings(
"deprecation")
5450 if (value ==
null) {
5451 throw new NullPointerException();
5454 useTspLns_ = value.getNumber();
5477 private int useInactiveLns_ = 0;
5488 return useInactiveLns_;
5500 useInactiveLns_ = value;
5514 @SuppressWarnings(
"deprecation")
5528 if (value ==
null) {
5529 throw new NullPointerException();
5532 useInactiveLns_ = value.getNumber();
5547 useInactiveLns_ = 0;
5553 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5559 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5574 return DEFAULT_INSTANCE;
5581 com.
google.protobuf.CodedInputStream input,
5582 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
5583 throws com.
google.protobuf.InvalidProtocolBufferException {
5599 return DEFAULT_INSTANCE;
5605 private int firstSolutionStrategy_;
5614 return firstSolutionStrategy_;
5624 @SuppressWarnings(
"deprecation")
5630 private boolean useUnfilteredFirstSolutionStrategy_;
5641 return useUnfilteredFirstSolutionStrategy_;
5645 private double savingsNeighborsRatio_;
5656 return savingsNeighborsRatio_;
5660 private double savingsMaxMemoryUsageBytes_;
5674 return savingsMaxMemoryUsageBytes_;
5678 private boolean savingsAddReverseArcs_;
5688 return savingsAddReverseArcs_;
5692 private double savingsArcCoefficient_;
5705 return savingsArcCoefficient_;
5709 private boolean savingsParallelRoutes_;
5718 return savingsParallelRoutes_;
5722 private double cheapestInsertionFarthestSeedsRatio_;
5733 return cheapestInsertionFarthestSeedsRatio_;
5737 private double cheapestInsertionNeighborsRatio_;
5749 return cheapestInsertionNeighborsRatio_;
5758 return localSearchOperators_ !=
null;
5774 private int relocateExpensiveChainNumArcsToConsider_;
5789 return relocateExpensiveChainNumArcsToConsider_;
5793 private int localSearchMetaheuristic_;
5802 return localSearchMetaheuristic_;
5812 @SuppressWarnings(
"deprecation")
5818 private double guidedLocalSearchLambdaCoefficient_;
5830 return guidedLocalSearchLambdaCoefficient_;
5834 private boolean useDepthFirstSearch_;
5845 return useDepthFirstSearch_;
5872 @SuppressWarnings(
"deprecation")
5878 private int useCpSat_;
5903 @SuppressWarnings(
"deprecation")
5909 private double optimizationStep_;
5920 return optimizationStep_;
5924 private int numberOfSolutionsToCollect_;
5934 return numberOfSolutionsToCollect_;
5938 private long solutionLimit_;
5949 return solutionLimit_;
5953 private com.
google.protobuf.Duration timeLimit_;
5962 return timeLimit_ !=
null;
5972 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
5986 private com.
google.protobuf.Duration lnsTimeLimit_;
5996 return lnsTimeLimit_ !=
null;
6007 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
6022 private boolean useFullPropagation_;
6039 return useFullPropagation_;
6043 private boolean logSearch_;
6067 private double logCostScalingFactor_;
6077 return logCostScalingFactor_;
6081 private double logCostOffset_;
6086 return logCostOffset_;
6089 private byte memoizedIsInitialized = -1;
6096 memoizedIsInitialized = 1;
6102 throws java.io.IOException {
6104 output.writeEnum(1, firstSolutionStrategy_);
6106 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6107 output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
6109 if (localSearchOperators_ !=
null) {
6113 output.writeEnum(4, localSearchMetaheuristic_);
6115 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6116 output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
6118 if (useDepthFirstSearch_ !=
false) {
6119 output.writeBool(6, useDepthFirstSearch_);
6121 if (optimizationStep_ != 0D) {
6122 output.writeDouble(7, optimizationStep_);
6124 if (solutionLimit_ != 0L) {
6125 output.writeInt64(8, solutionLimit_);
6127 if (timeLimit_ !=
null) {
6130 if (lnsTimeLimit_ !=
null) {
6133 if (useFullPropagation_ !=
false) {
6134 output.writeBool(11, useFullPropagation_);
6136 if (logSearch_ !=
false) {
6137 output.writeBool(13, logSearch_);
6139 if (savingsNeighborsRatio_ != 0D) {
6140 output.writeDouble(14, savingsNeighborsRatio_);
6142 if (savingsAddReverseArcs_ !=
false) {
6143 output.writeBool(15, savingsAddReverseArcs_);
6145 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6146 output.writeDouble(16, cheapestInsertionFarthestSeedsRatio_);
6148 if (numberOfSolutionsToCollect_ != 0) {
6149 output.writeInt32(17, numberOfSolutionsToCollect_);
6151 if (savingsArcCoefficient_ != 0D) {
6152 output.writeDouble(18, savingsArcCoefficient_);
6154 if (savingsParallelRoutes_ !=
false) {
6155 output.writeBool(19, savingsParallelRoutes_);
6157 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6158 output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
6160 if (cheapestInsertionNeighborsRatio_ != 0D) {
6161 output.writeDouble(21, cheapestInsertionNeighborsRatio_);
6163 if (logCostScalingFactor_ != 0D) {
6164 output.writeDouble(22, logCostScalingFactor_);
6166 if (savingsMaxMemoryUsageBytes_ != 0D) {
6167 output.writeDouble(23, savingsMaxMemoryUsageBytes_);
6170 output.writeEnum(27, useCpSat_);
6173 output.writeEnum(28, useCp_);
6175 if (logCostOffset_ != 0D) {
6176 output.writeDouble(29, logCostOffset_);
6178 unknownFields.writeTo(output);
6183 int size = memoizedSize;
6184 if (size != -1)
return size;
6188 size +=
com.
google.protobuf.CodedOutputStream
6189 .computeEnumSize(1, firstSolutionStrategy_);
6191 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6192 size +=
com.
google.protobuf.CodedOutputStream
6193 .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
6195 if (localSearchOperators_ !=
null) {
6196 size +=
com.
google.protobuf.CodedOutputStream
6200 size +=
com.
google.protobuf.CodedOutputStream
6201 .computeEnumSize(4, localSearchMetaheuristic_);
6203 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6204 size +=
com.
google.protobuf.CodedOutputStream
6205 .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
6207 if (useDepthFirstSearch_ !=
false) {
6208 size +=
com.
google.protobuf.CodedOutputStream
6209 .computeBoolSize(6, useDepthFirstSearch_);
6211 if (optimizationStep_ != 0D) {
6212 size +=
com.
google.protobuf.CodedOutputStream
6213 .computeDoubleSize(7, optimizationStep_);
6215 if (solutionLimit_ != 0L) {
6216 size +=
com.
google.protobuf.CodedOutputStream
6217 .computeInt64Size(8, solutionLimit_);
6219 if (timeLimit_ !=
null) {
6220 size +=
com.
google.protobuf.CodedOutputStream
6223 if (lnsTimeLimit_ !=
null) {
6224 size +=
com.
google.protobuf.CodedOutputStream
6227 if (useFullPropagation_ !=
false) {
6228 size +=
com.
google.protobuf.CodedOutputStream
6229 .computeBoolSize(11, useFullPropagation_);
6231 if (logSearch_ !=
false) {
6232 size +=
com.
google.protobuf.CodedOutputStream
6233 .computeBoolSize(13, logSearch_);
6235 if (savingsNeighborsRatio_ != 0D) {
6236 size +=
com.
google.protobuf.CodedOutputStream
6237 .computeDoubleSize(14, savingsNeighborsRatio_);
6239 if (savingsAddReverseArcs_ !=
false) {
6240 size +=
com.
google.protobuf.CodedOutputStream
6241 .computeBoolSize(15, savingsAddReverseArcs_);
6243 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6244 size +=
com.
google.protobuf.CodedOutputStream
6245 .computeDoubleSize(16, cheapestInsertionFarthestSeedsRatio_);
6247 if (numberOfSolutionsToCollect_ != 0) {
6248 size +=
com.
google.protobuf.CodedOutputStream
6249 .computeInt32Size(17, numberOfSolutionsToCollect_);
6251 if (savingsArcCoefficient_ != 0D) {
6252 size +=
com.
google.protobuf.CodedOutputStream
6253 .computeDoubleSize(18, savingsArcCoefficient_);
6255 if (savingsParallelRoutes_ !=
false) {
6256 size +=
com.
google.protobuf.CodedOutputStream
6257 .computeBoolSize(19, savingsParallelRoutes_);
6259 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6260 size +=
com.
google.protobuf.CodedOutputStream
6261 .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
6263 if (cheapestInsertionNeighborsRatio_ != 0D) {
6264 size +=
com.
google.protobuf.CodedOutputStream
6265 .computeDoubleSize(21, cheapestInsertionNeighborsRatio_);
6267 if (logCostScalingFactor_ != 0D) {
6268 size +=
com.
google.protobuf.CodedOutputStream
6269 .computeDoubleSize(22, logCostScalingFactor_);
6271 if (savingsMaxMemoryUsageBytes_ != 0D) {
6272 size +=
com.
google.protobuf.CodedOutputStream
6273 .computeDoubleSize(23, savingsMaxMemoryUsageBytes_);
6276 size +=
com.
google.protobuf.CodedOutputStream
6277 .computeEnumSize(27, useCpSat_);
6280 size +=
com.
google.protobuf.CodedOutputStream
6281 .computeEnumSize(28, useCp_);
6283 if (logCostOffset_ != 0D) {
6284 size +=
com.
google.protobuf.CodedOutputStream
6285 .computeDoubleSize(29, logCostOffset_);
6287 size += unknownFields.getSerializedSize();
6288 memoizedSize = size;
6293 public boolean equals(
final java.lang.Object obj) {
6298 return super.equals(obj);
6302 if (firstSolutionStrategy_ != other.firstSolutionStrategy_)
return false;
6304 != other.getUseUnfilteredFirstSolutionStrategy())
return false;
6306 != java.lang.Double.doubleToLongBits(
6307 other.getSavingsNeighborsRatio()))
return false;
6309 != java.lang.Double.doubleToLongBits(
6310 other.getSavingsMaxMemoryUsageBytes()))
return false;
6312 != other.getSavingsAddReverseArcs())
return false;
6314 != java.lang.Double.doubleToLongBits(
6315 other.getSavingsArcCoefficient()))
return false;
6317 != other.getSavingsParallelRoutes())
return false;
6319 != java.lang.Double.doubleToLongBits(
6320 other.getCheapestInsertionFarthestSeedsRatio()))
return false;
6322 != java.lang.Double.doubleToLongBits(
6323 other.getCheapestInsertionNeighborsRatio()))
return false;
6327 .
equals(other.getLocalSearchOperators()))
return false;
6330 != other.getRelocateExpensiveChainNumArcsToConsider())
return false;
6331 if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_)
return false;
6333 != java.lang.Double.doubleToLongBits(
6334 other.getGuidedLocalSearchLambdaCoefficient()))
return false;
6336 != other.getUseDepthFirstSearch())
return false;
6337 if (useCp_ != other.useCp_)
return false;
6338 if (useCpSat_ != other.useCpSat_)
return false;
6340 != java.lang.Double.doubleToLongBits(
6341 other.getOptimizationStep()))
return false;
6343 != other.getNumberOfSolutionsToCollect())
return false;
6345 != other.getSolutionLimit())
return false;
6346 if (
hasTimeLimit() != other.hasTimeLimit())
return false;
6349 .equals(other.getTimeLimit()))
return false;
6354 .equals(other.getLnsTimeLimit()))
return false;
6357 != other.getUseFullPropagation())
return false;
6359 != other.getLogSearch())
return false;
6361 != java.lang.Double.doubleToLongBits(
6362 other.getLogCostScalingFactor()))
return false;
6364 != java.lang.Double.doubleToLongBits(
6365 other.getLogCostOffset()))
return false;
6366 if (!unknownFields.equals(other.unknownFields))
return false;
6372 if (memoizedHashCode != 0) {
6373 return memoizedHashCode;
6378 hash = (53 * hash) + firstSolutionStrategy_;
6380 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6383 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6386 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6389 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6392 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6395 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6398 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6401 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6410 hash = (53 * hash) + localSearchMetaheuristic_;
6412 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6415 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6418 hash = (53 * hash) + useCp_;
6420 hash = (53 * hash) + useCpSat_;
6422 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6427 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6438 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6441 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6444 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6447 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6449 hash = (29 * hash) + unknownFields.hashCode();
6450 memoizedHashCode = hash;
6455 java.nio.ByteBuffer data)
6456 throws com.
google.protobuf.InvalidProtocolBufferException {
6457 return PARSER.parseFrom(data);
6460 java.nio.ByteBuffer data,
6461 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6462 throws com.
google.protobuf.InvalidProtocolBufferException {
6463 return PARSER.parseFrom(data, extensionRegistry);
6467 throws com.
google.protobuf.InvalidProtocolBufferException {
6468 return PARSER.parseFrom(data);
6472 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6473 throws com.
google.protobuf.InvalidProtocolBufferException {
6474 return PARSER.parseFrom(data, extensionRegistry);
6477 throws com.
google.protobuf.InvalidProtocolBufferException {
6478 return PARSER.parseFrom(data);
6482 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6483 throws com.
google.protobuf.InvalidProtocolBufferException {
6484 return PARSER.parseFrom(data, extensionRegistry);
6487 throws java.io.IOException {
6488 return com.
google.protobuf.GeneratedMessageV3
6489 .parseWithIOException(PARSER, input);
6492 java.io.InputStream input,
6493 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6494 throws java.io.IOException {
6495 return com.
google.protobuf.GeneratedMessageV3
6496 .parseWithIOException(PARSER, input, extensionRegistry);
6499 throws java.io.IOException {
6500 return com.
google.protobuf.GeneratedMessageV3
6501 .parseDelimitedWithIOException(PARSER, input);
6504 java.io.InputStream input,
6505 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6506 throws java.io.IOException {
6507 return com.
google.protobuf.GeneratedMessageV3
6508 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
6511 com.
google.protobuf.CodedInputStream input)
6512 throws java.io.IOException {
6513 return com.
google.protobuf.GeneratedMessageV3
6514 .parseWithIOException(PARSER, input);
6517 com.
google.protobuf.CodedInputStream input,
6518 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6519 throws java.io.IOException {
6520 return com.
google.protobuf.GeneratedMessageV3
6521 .parseWithIOException(PARSER, input, extensionRegistry);
6534 return this == DEFAULT_INSTANCE
6540 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6556 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
6559 public static final com.
google.protobuf.Descriptors.Descriptor
6565 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
6568 .ensureFieldAccessorsInitialized(
6574 maybeForceBuilderInitialization();
6578 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6580 maybeForceBuilderInitialization();
6582 private void maybeForceBuilderInitialization() {
6583 if (
com.
google.protobuf.GeneratedMessageV3
6584 .alwaysUseFieldBuilders) {
6590 firstSolutionStrategy_ = 0;
6592 useUnfilteredFirstSolutionStrategy_ =
false;
6594 savingsNeighborsRatio_ = 0D;
6596 savingsMaxMemoryUsageBytes_ = 0D;
6598 savingsAddReverseArcs_ =
false;
6600 savingsArcCoefficient_ = 0D;
6602 savingsParallelRoutes_ =
false;
6604 cheapestInsertionFarthestSeedsRatio_ = 0D;
6606 cheapestInsertionNeighborsRatio_ = 0D;
6608 if (localSearchOperatorsBuilder_ ==
null) {
6609 localSearchOperators_ =
null;
6611 localSearchOperators_ =
null;
6612 localSearchOperatorsBuilder_ =
null;
6614 relocateExpensiveChainNumArcsToConsider_ = 0;
6616 localSearchMetaheuristic_ = 0;
6618 guidedLocalSearchLambdaCoefficient_ = 0D;
6620 useDepthFirstSearch_ =
false;
6626 optimizationStep_ = 0D;
6628 numberOfSolutionsToCollect_ = 0;
6630 solutionLimit_ = 0L;
6632 if (timeLimitBuilder_ ==
null) {
6636 timeLimitBuilder_ =
null;
6638 if (lnsTimeLimitBuilder_ ==
null) {
6639 lnsTimeLimit_ =
null;
6641 lnsTimeLimit_ =
null;
6642 lnsTimeLimitBuilder_ =
null;
6644 useFullPropagation_ =
false;
6648 logCostScalingFactor_ = 0D;
6650 logCostOffset_ = 0D;
6656 public com.
google.protobuf.Descriptors.Descriptor
6669 if (!result.isInitialized()) {
6670 throw newUninitializedMessageException(result);
6678 result.firstSolutionStrategy_ = firstSolutionStrategy_;
6679 result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
6680 result.savingsNeighborsRatio_ = savingsNeighborsRatio_;
6681 result.savingsMaxMemoryUsageBytes_ = savingsMaxMemoryUsageBytes_;
6682 result.savingsAddReverseArcs_ = savingsAddReverseArcs_;
6683 result.savingsArcCoefficient_ = savingsArcCoefficient_;
6684 result.savingsParallelRoutes_ = savingsParallelRoutes_;
6685 result.cheapestInsertionFarthestSeedsRatio_ = cheapestInsertionFarthestSeedsRatio_;
6686 result.cheapestInsertionNeighborsRatio_ = cheapestInsertionNeighborsRatio_;
6687 if (localSearchOperatorsBuilder_ ==
null) {
6688 result.localSearchOperators_ = localSearchOperators_;
6690 result.localSearchOperators_ = localSearchOperatorsBuilder_.build();
6692 result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
6693 result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
6694 result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
6695 result.useDepthFirstSearch_ = useDepthFirstSearch_;
6696 result.useCp_ = useCp_;
6697 result.useCpSat_ = useCpSat_;
6698 result.optimizationStep_ = optimizationStep_;
6699 result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
6700 result.solutionLimit_ = solutionLimit_;
6701 if (timeLimitBuilder_ ==
null) {
6702 result.timeLimit_ = timeLimit_;
6704 result.timeLimit_ = timeLimitBuilder_.build();
6706 if (lnsTimeLimitBuilder_ ==
null) {
6707 result.lnsTimeLimit_ = lnsTimeLimit_;
6709 result.lnsTimeLimit_ = lnsTimeLimitBuilder_.build();
6711 result.useFullPropagation_ = useFullPropagation_;
6712 result.logSearch_ = logSearch_;
6713 result.logCostScalingFactor_ = logCostScalingFactor_;
6714 result.logCostOffset_ = logCostOffset_;
6721 return super.
clone();
6725 com.
google.protobuf.Descriptors.FieldDescriptor field,
6726 java.lang.Object value) {
6727 return super.
setField(field, value);
6731 com.
google.protobuf.Descriptors.FieldDescriptor field) {
6736 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
6741 com.
google.protobuf.Descriptors.FieldDescriptor field,
6742 int index, java.lang.Object value) {
6747 com.
google.protobuf.Descriptors.FieldDescriptor field,
6748 java.lang.Object value) {
6756 super.mergeFrom(other);
6763 if (other.firstSolutionStrategy_ != 0) {
6766 if (other.getUseUnfilteredFirstSolutionStrategy() !=
false) {
6769 if (other.getSavingsNeighborsRatio() != 0D) {
6772 if (other.getSavingsMaxMemoryUsageBytes() != 0D) {
6775 if (other.getSavingsAddReverseArcs() !=
false) {
6778 if (other.getSavingsArcCoefficient() != 0D) {
6781 if (other.getSavingsParallelRoutes() !=
false) {
6784 if (other.getCheapestInsertionFarthestSeedsRatio() != 0D) {
6787 if (other.getCheapestInsertionNeighborsRatio() != 0D) {
6790 if (other.hasLocalSearchOperators()) {
6793 if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
6796 if (other.localSearchMetaheuristic_ != 0) {
6799 if (other.getGuidedLocalSearchLambdaCoefficient() != 0D) {
6802 if (other.getUseDepthFirstSearch() !=
false) {
6805 if (other.useCp_ != 0) {
6808 if (other.useCpSat_ != 0) {
6811 if (other.getOptimizationStep() != 0D) {
6814 if (other.getNumberOfSolutionsToCollect() != 0) {
6817 if (other.getSolutionLimit() != 0L) {
6820 if (other.hasTimeLimit()) {
6823 if (other.hasLnsTimeLimit()) {
6826 if (other.getUseFullPropagation() !=
false) {
6829 if (other.getLogSearch() !=
false) {
6832 if (other.getLogCostScalingFactor() != 0D) {
6835 if (other.getLogCostOffset() != 0D) {
6850 com.
google.protobuf.CodedInputStream input,
6851 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6852 throws java.io.IOException {
6855 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
6856 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
6858 throw e.unwrapIOException();
6860 if (parsedMessage !=
null) {
6867 private int firstSolutionStrategy_ = 0;
6876 return firstSolutionStrategy_;
6886 firstSolutionStrategy_ = value;
6898 @SuppressWarnings(
"deprecation")
6910 if (value ==
null) {
6911 throw new NullPointerException();
6914 firstSolutionStrategy_ = value.getNumber();
6927 firstSolutionStrategy_ = 0;
6932 private boolean useUnfilteredFirstSolutionStrategy_ ;
6943 return useUnfilteredFirstSolutionStrategy_;
6956 useUnfilteredFirstSolutionStrategy_ = value;
6971 useUnfilteredFirstSolutionStrategy_ =
false;
6976 private double savingsNeighborsRatio_ ;
6987 return savingsNeighborsRatio_;
7000 savingsNeighborsRatio_ = value;
7015 savingsNeighborsRatio_ = 0D;
7020 private double savingsMaxMemoryUsageBytes_ ;
7034 return savingsMaxMemoryUsageBytes_;
7050 savingsMaxMemoryUsageBytes_ = value;
7068 savingsMaxMemoryUsageBytes_ = 0D;
7073 private boolean savingsAddReverseArcs_ ;
7083 return savingsAddReverseArcs_;
7095 savingsAddReverseArcs_ = value;
7109 savingsAddReverseArcs_ =
false;
7114 private double savingsArcCoefficient_ ;
7127 return savingsArcCoefficient_;
7142 savingsArcCoefficient_ = value;
7159 savingsArcCoefficient_ = 0D;
7164 private boolean savingsParallelRoutes_ ;
7173 return savingsParallelRoutes_;
7184 savingsParallelRoutes_ = value;
7197 savingsParallelRoutes_ =
false;
7202 private double cheapestInsertionFarthestSeedsRatio_ ;
7213 return cheapestInsertionFarthestSeedsRatio_;
7226 cheapestInsertionFarthestSeedsRatio_ = value;
7241 cheapestInsertionFarthestSeedsRatio_ = 0D;
7246 private double cheapestInsertionNeighborsRatio_ ;
7258 return cheapestInsertionNeighborsRatio_;
7272 cheapestInsertionNeighborsRatio_ = value;
7288 cheapestInsertionNeighborsRatio_ = 0D;
7294 private com.
google.protobuf.SingleFieldBuilderV3<
7300 return localSearchOperatorsBuilder_ !=
null || localSearchOperators_ !=
null;
7306 if (localSearchOperatorsBuilder_ ==
null) {
7309 return localSearchOperatorsBuilder_.getMessage();
7316 if (localSearchOperatorsBuilder_ ==
null) {
7317 if (value ==
null) {
7318 throw new NullPointerException();
7320 localSearchOperators_ = value;
7323 localSearchOperatorsBuilder_.setMessage(value);
7333 if (localSearchOperatorsBuilder_ ==
null) {
7334 localSearchOperators_ = builderForValue.build();
7337 localSearchOperatorsBuilder_.setMessage(builderForValue.build());
7346 if (localSearchOperatorsBuilder_ ==
null) {
7347 if (localSearchOperators_ !=
null) {
7348 localSearchOperators_ =
7351 localSearchOperators_ = value;
7355 localSearchOperatorsBuilder_.mergeFrom(value);
7364 if (localSearchOperatorsBuilder_ ==
null) {
7365 localSearchOperators_ =
null;
7368 localSearchOperators_ =
null;
7369 localSearchOperatorsBuilder_ =
null;
7380 return getLocalSearchOperatorsFieldBuilder().getBuilder();
7386 if (localSearchOperatorsBuilder_ !=
null) {
7387 return localSearchOperatorsBuilder_.getMessageOrBuilder();
7389 return localSearchOperators_ ==
null ?
7396 private com.
google.protobuf.SingleFieldBuilderV3<
7398 getLocalSearchOperatorsFieldBuilder() {
7399 if (localSearchOperatorsBuilder_ ==
null) {
7400 localSearchOperatorsBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
7403 getParentForChildren(),
7405 localSearchOperators_ =
null;
7407 return localSearchOperatorsBuilder_;
7410 private int relocateExpensiveChainNumArcsToConsider_ ;
7425 return relocateExpensiveChainNumArcsToConsider_;
7442 relocateExpensiveChainNumArcsToConsider_ = value;
7461 relocateExpensiveChainNumArcsToConsider_ = 0;
7466 private int localSearchMetaheuristic_ = 0;
7475 return localSearchMetaheuristic_;
7485 localSearchMetaheuristic_ = value;
7497 @SuppressWarnings(
"deprecation")
7509 if (value ==
null) {
7510 throw new NullPointerException();
7513 localSearchMetaheuristic_ = value.getNumber();
7526 localSearchMetaheuristic_ = 0;
7531 private double guidedLocalSearchLambdaCoefficient_ ;
7543 return guidedLocalSearchLambdaCoefficient_;
7557 guidedLocalSearchLambdaCoefficient_ = value;
7573 guidedLocalSearchLambdaCoefficient_ = 0D;
7578 private boolean useDepthFirstSearch_ ;
7589 return useDepthFirstSearch_;
7602 useDepthFirstSearch_ = value;
7617 useDepthFirstSearch_ =
false;
7622 private int useCp_ = 0;
7659 @SuppressWarnings(
"deprecation")
7673 if (value ==
null) {
7674 throw new NullPointerException();
7677 useCp_ = value.getNumber();
7697 private int useCpSat_ = 0;
7737 @SuppressWarnings(
"deprecation")
7752 if (value ==
null) {
7753 throw new NullPointerException();
7756 useCpSat_ = value.getNumber();
7777 private double optimizationStep_ ;
7788 return optimizationStep_;
7801 optimizationStep_ = value;
7816 optimizationStep_ = 0D;
7821 private int numberOfSolutionsToCollect_ ;
7831 return numberOfSolutionsToCollect_;
7843 numberOfSolutionsToCollect_ = value;
7857 numberOfSolutionsToCollect_ = 0;
7862 private long solutionLimit_ ;
7873 return solutionLimit_;
7886 solutionLimit_ = value;
7901 solutionLimit_ = 0L;
7906 private com.
google.protobuf.Duration timeLimit_;
7907 private com.
google.protobuf.SingleFieldBuilderV3<
7917 return timeLimitBuilder_ !=
null || timeLimit_ !=
null;
7927 if (timeLimitBuilder_ ==
null) {
7928 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
7930 return timeLimitBuilder_.getMessage();
7941 if (timeLimitBuilder_ ==
null) {
7942 if (value ==
null) {
7943 throw new NullPointerException();
7948 timeLimitBuilder_.setMessage(value);
7961 com.
google.protobuf.Duration.Builder builderForValue) {
7962 if (timeLimitBuilder_ ==
null) {
7963 timeLimit_ = builderForValue.build();
7966 timeLimitBuilder_.setMessage(builderForValue.build());
7979 if (timeLimitBuilder_ ==
null) {
7980 if (timeLimit_ !=
null) {
7982 com.
google.protobuf.Duration.newBuilder(timeLimit_).mergeFrom(value).buildPartial();
7988 timeLimitBuilder_.mergeFrom(value);
8001 if (timeLimitBuilder_ ==
null) {
8006 timeLimitBuilder_ =
null;
8021 return getTimeLimitFieldBuilder().getBuilder();
8031 if (timeLimitBuilder_ !=
null) {
8032 return timeLimitBuilder_.getMessageOrBuilder();
8034 return timeLimit_ ==
null ?
8035 com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
8045 private com.
google.protobuf.SingleFieldBuilderV3<
8047 getTimeLimitFieldBuilder() {
8048 if (timeLimitBuilder_ ==
null) {
8049 timeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8052 getParentForChildren(),
8056 return timeLimitBuilder_;
8059 private com.
google.protobuf.Duration lnsTimeLimit_;
8060 private com.
google.protobuf.SingleFieldBuilderV3<
8071 return lnsTimeLimitBuilder_ !=
null || lnsTimeLimit_ !=
null;
8082 if (lnsTimeLimitBuilder_ ==
null) {
8083 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8085 return lnsTimeLimitBuilder_.getMessage();
8097 if (lnsTimeLimitBuilder_ ==
null) {
8098 if (value ==
null) {
8099 throw new NullPointerException();
8101 lnsTimeLimit_ = value;
8104 lnsTimeLimitBuilder_.setMessage(value);
8118 com.
google.protobuf.Duration.Builder builderForValue) {
8119 if (lnsTimeLimitBuilder_ ==
null) {
8120 lnsTimeLimit_ = builderForValue.build();
8123 lnsTimeLimitBuilder_.setMessage(builderForValue.build());
8137 if (lnsTimeLimitBuilder_ ==
null) {
8138 if (lnsTimeLimit_ !=
null) {
8140 com.
google.protobuf.Duration.newBuilder(lnsTimeLimit_).mergeFrom(value).buildPartial();
8142 lnsTimeLimit_ = value;
8146 lnsTimeLimitBuilder_.mergeFrom(value);
8160 if (lnsTimeLimitBuilder_ ==
null) {
8161 lnsTimeLimit_ =
null;
8164 lnsTimeLimit_ =
null;
8165 lnsTimeLimitBuilder_ =
null;
8181 return getLnsTimeLimitFieldBuilder().getBuilder();
8192 if (lnsTimeLimitBuilder_ !=
null) {
8193 return lnsTimeLimitBuilder_.getMessageOrBuilder();
8195 return lnsTimeLimit_ ==
null ?
8196 com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8207 private com.
google.protobuf.SingleFieldBuilderV3<
8209 getLnsTimeLimitFieldBuilder() {
8210 if (lnsTimeLimitBuilder_ ==
null) {
8211 lnsTimeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8214 getParentForChildren(),
8216 lnsTimeLimit_ =
null;
8218 return lnsTimeLimitBuilder_;
8221 private boolean useFullPropagation_ ;
8238 return useFullPropagation_;
8257 useFullPropagation_ = value;
8278 useFullPropagation_ =
false;
8283 private boolean logSearch_ ;
8354 private double logCostScalingFactor_ ;
8364 return logCostScalingFactor_;
8376 logCostScalingFactor_ = value;
8390 logCostScalingFactor_ = 0D;
8395 private double logCostOffset_ ;
8400 return logCostOffset_;
8407 logCostOffset_ = value;
8416 logCostOffset_ = 0D;
8422 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8428 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8443 return DEFAULT_INSTANCE;
8450 com.
google.protobuf.CodedInputStream input,
8451 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
8452 throws com.
google.protobuf.InvalidProtocolBufferException {
8468 return DEFAULT_INSTANCE;