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();
212 if (!parseUnknownField(
213 input, unknownFields, extensionRegistry, tag)) {
220 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
221 throw e.setUnfinishedMessage(
this);
222 }
catch (java.io.IOException e) {
223 throw new com.
google.protobuf.InvalidProtocolBufferException(
224 e).setUnfinishedMessage(
this);
226 this.unknownFields = unknownFields.build();
227 makeExtensionsImmutable();
230 public static final com.
google.protobuf.Descriptors.Descriptor
236 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
239 .ensureFieldAccessorsInitialized(
245 com.google.protobuf.MessageOrBuilder {
1042 com.google.protobuf.GeneratedMessageV3 implements
1045 private static final long serialVersionUID = 0L;
1052 useRelocatePair_ = 0;
1053 useLightRelocatePair_ = 0;
1054 useRelocateNeighbors_ = 0;
1055 useRelocateSubtrip_ = 0;
1057 useExchangePair_ = 0;
1058 useExchangeSubtrip_ = 0;
1060 useCrossExchange_ = 0;
1061 useRelocateExpensiveChain_ = 0;
1064 useLinKernighan_ = 0;
1067 useRelocateAndMakeActive_ = 0;
1068 useMakeInactive_ = 0;
1069 useMakeChainInactive_ = 0;
1071 useExtendedSwapActive_ = 0;
1072 useNodePairSwapActive_ = 0;
1074 useFullPathLns_ = 0;
1076 useInactiveLns_ = 0;
1080 @SuppressWarnings({
"unused"})
1082 UnusedPrivateParameter unused) {
1087 public final com.
google.protobuf.UnknownFieldSet
1089 return this.unknownFields;
1092 com.
google.protobuf.CodedInputStream input,
1093 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
1094 throws com.
google.protobuf.InvalidProtocolBufferException {
1096 if (extensionRegistry ==
null) {
1097 throw new java.lang.NullPointerException();
1099 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
1100 com.
google.protobuf.UnknownFieldSet.newBuilder();
1102 boolean done =
false;
1104 int tag = input.readTag();
1110 int rawValue = input.readEnum();
1112 useRelocate_ = rawValue;
1116 int rawValue = input.readEnum();
1118 useRelocatePair_ = rawValue;
1122 int rawValue = input.readEnum();
1124 useRelocateNeighbors_ = rawValue;
1128 int rawValue = input.readEnum();
1130 useExchange_ = rawValue;
1134 int rawValue = input.readEnum();
1136 useCross_ = rawValue;
1140 int rawValue = input.readEnum();
1142 useCrossExchange_ = rawValue;
1146 int rawValue = input.readEnum();
1148 useTwoOpt_ = rawValue;
1152 int rawValue = input.readEnum();
1154 useOrOpt_ = rawValue;
1158 int rawValue = input.readEnum();
1160 useLinKernighan_ = rawValue;
1164 int rawValue = input.readEnum();
1166 useTspOpt_ = rawValue;
1170 int rawValue = input.readEnum();
1172 useMakeActive_ = rawValue;
1176 int rawValue = input.readEnum();
1178 useMakeInactive_ = rawValue;
1182 int rawValue = input.readEnum();
1184 useMakeChainInactive_ = rawValue;
1188 int rawValue = input.readEnum();
1190 useSwapActive_ = rawValue;
1194 int rawValue = input.readEnum();
1196 useExtendedSwapActive_ = rawValue;
1200 int rawValue = input.readEnum();
1202 usePathLns_ = rawValue;
1206 int rawValue = input.readEnum();
1208 useFullPathLns_ = rawValue;
1212 int rawValue = input.readEnum();
1214 useTspLns_ = rawValue;
1218 int rawValue = input.readEnum();
1220 useInactiveLns_ = rawValue;
1224 int rawValue = input.readEnum();
1226 useNodePairSwapActive_ = rawValue;
1230 int rawValue = input.readEnum();
1232 useRelocateAndMakeActive_ = rawValue;
1236 int rawValue = input.readEnum();
1238 useExchangePair_ = rawValue;
1242 int rawValue = input.readEnum();
1244 useRelocateExpensiveChain_ = rawValue;
1248 int rawValue = input.readEnum();
1250 useLightRelocatePair_ = rawValue;
1254 int rawValue = input.readEnum();
1256 useRelocateSubtrip_ = rawValue;
1260 int rawValue = input.readEnum();
1262 useExchangeSubtrip_ = rawValue;
1266 if (!parseUnknownField(
1267 input, unknownFields, extensionRegistry, tag)) {
1274 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
1275 throw e.setUnfinishedMessage(
this);
1276 }
catch (java.io.IOException e) {
1277 throw new com.
google.protobuf.InvalidProtocolBufferException(
1278 e).setUnfinishedMessage(
this);
1280 this.unknownFields = unknownFields.build();
1281 makeExtensionsImmutable();
1284 public static final com.
google.protobuf.Descriptors.Descriptor
1290 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
1293 .ensureFieldAccessorsInitialized(
1298 private int useRelocate_;
1315 return useRelocate_;
1333 @SuppressWarnings(
"deprecation")
1339 private int useRelocatePair_;
1356 return useRelocatePair_;
1374 @SuppressWarnings(
"deprecation")
1380 private int useLightRelocatePair_;
1395 return useLightRelocatePair_;
1411 @SuppressWarnings(
"deprecation")
1417 private int useRelocateNeighbors_;
1447 return useRelocateNeighbors_;
1478 @SuppressWarnings(
"deprecation")
1484 private int useRelocateSubtrip_;
1504 return useRelocateSubtrip_;
1525 @SuppressWarnings(
"deprecation")
1531 private int useExchange_;
1546 return useExchange_;
1562 @SuppressWarnings(
"deprecation")
1568 private int useExchangePair_;
1583 return useExchangePair_;
1599 @SuppressWarnings(
"deprecation")
1605 private int useExchangeSubtrip_;
1615 return useExchangeSubtrip_;
1626 @SuppressWarnings(
"deprecation")
1632 private int useCross_;
1667 @SuppressWarnings(
"deprecation")
1673 private int useCrossExchange_;
1682 return useCrossExchange_;
1692 @SuppressWarnings(
"deprecation")
1698 private int useRelocateExpensiveChain_;
1716 return useRelocateExpensiveChain_;
1735 @SuppressWarnings(
"deprecation")
1741 private int useTwoOpt_;
1778 @SuppressWarnings(
"deprecation")
1784 private int useOrOpt_;
1823 @SuppressWarnings(
"deprecation")
1829 private int useLinKernighan_;
1841 return useLinKernighan_;
1854 @SuppressWarnings(
"deprecation")
1860 private int useTspOpt_;
1889 @SuppressWarnings(
"deprecation")
1895 private int useMakeActive_;
1910 return useMakeActive_;
1926 @SuppressWarnings(
"deprecation")
1932 private int useRelocateAndMakeActive_;
1950 return useRelocateAndMakeActive_;
1969 @SuppressWarnings(
"deprecation")
1975 private int useMakeInactive_;
1988 return useMakeInactive_;
2002 @SuppressWarnings(
"deprecation")
2008 private int useMakeChainInactive_;
2022 return useMakeChainInactive_;
2037 @SuppressWarnings(
"deprecation")
2043 private int useSwapActive_;
2056 return useSwapActive_;
2070 @SuppressWarnings(
"deprecation")
2076 private int useExtendedSwapActive_;
2094 return useExtendedSwapActive_;
2113 @SuppressWarnings(
"deprecation")
2119 private int useNodePairSwapActive_;
2138 return useNodePairSwapActive_;
2158 @SuppressWarnings(
"deprecation")
2164 private int usePathLns_;
2197 @SuppressWarnings(
"deprecation")
2203 private int useFullPathLns_;
2212 return useFullPathLns_;
2222 @SuppressWarnings(
"deprecation")
2228 private int useTspLns_;
2257 @SuppressWarnings(
"deprecation")
2263 private int useInactiveLns_;
2274 return useInactiveLns_;
2286 @SuppressWarnings(
"deprecation")
2291 private byte memoizedIsInitialized = -1;
2298 memoizedIsInitialized = 1;
2304 throws java.io.IOException {
2306 output.writeEnum(1, useRelocate_);
2309 output.writeEnum(2, useRelocatePair_);
2312 output.writeEnum(3, useRelocateNeighbors_);
2315 output.writeEnum(4, useExchange_);
2318 output.writeEnum(5, useCross_);
2321 output.writeEnum(6, useCrossExchange_);
2324 output.writeEnum(7, useTwoOpt_);
2327 output.writeEnum(8, useOrOpt_);
2330 output.writeEnum(9, useLinKernighan_);
2333 output.writeEnum(10, useTspOpt_);
2336 output.writeEnum(11, useMakeActive_);
2339 output.writeEnum(12, useMakeInactive_);
2342 output.writeEnum(13, useMakeChainInactive_);
2345 output.writeEnum(14, useSwapActive_);
2348 output.writeEnum(15, useExtendedSwapActive_);
2351 output.writeEnum(16, usePathLns_);
2354 output.writeEnum(17, useFullPathLns_);
2357 output.writeEnum(18, useTspLns_);
2360 output.writeEnum(19, useInactiveLns_);
2363 output.writeEnum(20, useNodePairSwapActive_);
2366 output.writeEnum(21, useRelocateAndMakeActive_);
2369 output.writeEnum(22, useExchangePair_);
2372 output.writeEnum(23, useRelocateExpensiveChain_);
2375 output.writeEnum(24, useLightRelocatePair_);
2378 output.writeEnum(25, useRelocateSubtrip_);
2381 output.writeEnum(26, useExchangeSubtrip_);
2383 unknownFields.writeTo(output);
2388 int size = memoizedSize;
2389 if (size != -1)
return size;
2393 size +=
com.
google.protobuf.CodedOutputStream
2394 .computeEnumSize(1, useRelocate_);
2397 size +=
com.
google.protobuf.CodedOutputStream
2398 .computeEnumSize(2, useRelocatePair_);
2401 size +=
com.
google.protobuf.CodedOutputStream
2402 .computeEnumSize(3, useRelocateNeighbors_);
2405 size +=
com.
google.protobuf.CodedOutputStream
2406 .computeEnumSize(4, useExchange_);
2409 size +=
com.
google.protobuf.CodedOutputStream
2410 .computeEnumSize(5, useCross_);
2413 size +=
com.
google.protobuf.CodedOutputStream
2414 .computeEnumSize(6, useCrossExchange_);
2417 size +=
com.
google.protobuf.CodedOutputStream
2418 .computeEnumSize(7, useTwoOpt_);
2421 size +=
com.
google.protobuf.CodedOutputStream
2422 .computeEnumSize(8, useOrOpt_);
2425 size +=
com.
google.protobuf.CodedOutputStream
2426 .computeEnumSize(9, useLinKernighan_);
2429 size +=
com.
google.protobuf.CodedOutputStream
2430 .computeEnumSize(10, useTspOpt_);
2433 size +=
com.
google.protobuf.CodedOutputStream
2434 .computeEnumSize(11, useMakeActive_);
2437 size +=
com.
google.protobuf.CodedOutputStream
2438 .computeEnumSize(12, useMakeInactive_);
2441 size +=
com.
google.protobuf.CodedOutputStream
2442 .computeEnumSize(13, useMakeChainInactive_);
2445 size +=
com.
google.protobuf.CodedOutputStream
2446 .computeEnumSize(14, useSwapActive_);
2449 size +=
com.
google.protobuf.CodedOutputStream
2450 .computeEnumSize(15, useExtendedSwapActive_);
2453 size +=
com.
google.protobuf.CodedOutputStream
2454 .computeEnumSize(16, usePathLns_);
2457 size +=
com.
google.protobuf.CodedOutputStream
2458 .computeEnumSize(17, useFullPathLns_);
2461 size +=
com.
google.protobuf.CodedOutputStream
2462 .computeEnumSize(18, useTspLns_);
2465 size +=
com.
google.protobuf.CodedOutputStream
2466 .computeEnumSize(19, useInactiveLns_);
2469 size +=
com.
google.protobuf.CodedOutputStream
2470 .computeEnumSize(20, useNodePairSwapActive_);
2473 size +=
com.
google.protobuf.CodedOutputStream
2474 .computeEnumSize(21, useRelocateAndMakeActive_);
2477 size +=
com.
google.protobuf.CodedOutputStream
2478 .computeEnumSize(22, useExchangePair_);
2481 size +=
com.
google.protobuf.CodedOutputStream
2482 .computeEnumSize(23, useRelocateExpensiveChain_);
2485 size +=
com.
google.protobuf.CodedOutputStream
2486 .computeEnumSize(24, useLightRelocatePair_);
2489 size +=
com.
google.protobuf.CodedOutputStream
2490 .computeEnumSize(25, useRelocateSubtrip_);
2493 size +=
com.
google.protobuf.CodedOutputStream
2494 .computeEnumSize(26, useExchangeSubtrip_);
2496 size += unknownFields.getSerializedSize();
2497 memoizedSize = size;
2502 public boolean equals(
final java.lang.Object obj) {
2507 return super.equals(obj);
2511 if (useRelocate_ != other.useRelocate_)
return false;
2512 if (useRelocatePair_ != other.useRelocatePair_)
return false;
2513 if (useLightRelocatePair_ != other.useLightRelocatePair_)
return false;
2514 if (useRelocateNeighbors_ != other.useRelocateNeighbors_)
return false;
2515 if (useRelocateSubtrip_ != other.useRelocateSubtrip_)
return false;
2516 if (useExchange_ != other.useExchange_)
return false;
2517 if (useExchangePair_ != other.useExchangePair_)
return false;
2518 if (useExchangeSubtrip_ != other.useExchangeSubtrip_)
return false;
2519 if (useCross_ != other.useCross_)
return false;
2520 if (useCrossExchange_ != other.useCrossExchange_)
return false;
2521 if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_)
return false;
2522 if (useTwoOpt_ != other.useTwoOpt_)
return false;
2523 if (useOrOpt_ != other.useOrOpt_)
return false;
2524 if (useLinKernighan_ != other.useLinKernighan_)
return false;
2525 if (useTspOpt_ != other.useTspOpt_)
return false;
2526 if (useMakeActive_ != other.useMakeActive_)
return false;
2527 if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_)
return false;
2528 if (useMakeInactive_ != other.useMakeInactive_)
return false;
2529 if (useMakeChainInactive_ != other.useMakeChainInactive_)
return false;
2530 if (useSwapActive_ != other.useSwapActive_)
return false;
2531 if (useExtendedSwapActive_ != other.useExtendedSwapActive_)
return false;
2532 if (useNodePairSwapActive_ != other.useNodePairSwapActive_)
return false;
2533 if (usePathLns_ != other.usePathLns_)
return false;
2534 if (useFullPathLns_ != other.useFullPathLns_)
return false;
2535 if (useTspLns_ != other.useTspLns_)
return false;
2536 if (useInactiveLns_ != other.useInactiveLns_)
return false;
2537 if (!unknownFields.equals(other.unknownFields))
return false;
2543 if (memoizedHashCode != 0) {
2544 return memoizedHashCode;
2549 hash = (53 * hash) + useRelocate_;
2551 hash = (53 * hash) + useRelocatePair_;
2553 hash = (53 * hash) + useLightRelocatePair_;
2555 hash = (53 * hash) + useRelocateNeighbors_;
2557 hash = (53 * hash) + useRelocateSubtrip_;
2559 hash = (53 * hash) + useExchange_;
2561 hash = (53 * hash) + useExchangePair_;
2563 hash = (53 * hash) + useExchangeSubtrip_;
2565 hash = (53 * hash) + useCross_;
2567 hash = (53 * hash) + useCrossExchange_;
2569 hash = (53 * hash) + useRelocateExpensiveChain_;
2571 hash = (53 * hash) + useTwoOpt_;
2573 hash = (53 * hash) + useOrOpt_;
2575 hash = (53 * hash) + useLinKernighan_;
2577 hash = (53 * hash) + useTspOpt_;
2579 hash = (53 * hash) + useMakeActive_;
2581 hash = (53 * hash) + useRelocateAndMakeActive_;
2583 hash = (53 * hash) + useMakeInactive_;
2585 hash = (53 * hash) + useMakeChainInactive_;
2587 hash = (53 * hash) + useSwapActive_;
2589 hash = (53 * hash) + useExtendedSwapActive_;
2591 hash = (53 * hash) + useNodePairSwapActive_;
2593 hash = (53 * hash) + usePathLns_;
2595 hash = (53 * hash) + useFullPathLns_;
2597 hash = (53 * hash) + useTspLns_;
2599 hash = (53 * hash) + useInactiveLns_;
2600 hash = (29 * hash) + unknownFields.hashCode();
2601 memoizedHashCode = hash;
2606 java.nio.ByteBuffer data)
2607 throws com.
google.protobuf.InvalidProtocolBufferException {
2608 return PARSER.parseFrom(data);
2611 java.nio.ByteBuffer data,
2612 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2613 throws com.
google.protobuf.InvalidProtocolBufferException {
2614 return PARSER.parseFrom(data, extensionRegistry);
2618 throws com.
google.protobuf.InvalidProtocolBufferException {
2619 return PARSER.parseFrom(data);
2623 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2624 throws com.
google.protobuf.InvalidProtocolBufferException {
2625 return PARSER.parseFrom(data, extensionRegistry);
2628 throws com.
google.protobuf.InvalidProtocolBufferException {
2629 return PARSER.parseFrom(data);
2633 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2634 throws com.
google.protobuf.InvalidProtocolBufferException {
2635 return PARSER.parseFrom(data, extensionRegistry);
2638 throws java.io.IOException {
2639 return com.
google.protobuf.GeneratedMessageV3
2640 .parseWithIOException(PARSER, input);
2643 java.io.InputStream input,
2644 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2645 throws java.io.IOException {
2646 return com.
google.protobuf.GeneratedMessageV3
2647 .parseWithIOException(PARSER, input, extensionRegistry);
2650 throws java.io.IOException {
2651 return com.
google.protobuf.GeneratedMessageV3
2652 .parseDelimitedWithIOException(PARSER, input);
2655 java.io.InputStream input,
2656 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2657 throws java.io.IOException {
2658 return com.
google.protobuf.GeneratedMessageV3
2659 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2662 com.
google.protobuf.CodedInputStream input)
2663 throws java.io.IOException {
2664 return com.
google.protobuf.GeneratedMessageV3
2665 .parseWithIOException(PARSER, input);
2668 com.
google.protobuf.CodedInputStream input,
2669 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2670 throws java.io.IOException {
2671 return com.
google.protobuf.GeneratedMessageV3
2672 .parseWithIOException(PARSER, input, extensionRegistry);
2685 return this == DEFAULT_INSTANCE
2691 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2704 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
2707 public static final com.
google.protobuf.Descriptors.Descriptor
2713 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
2716 .ensureFieldAccessorsInitialized(
2722 maybeForceBuilderInitialization();
2726 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2728 maybeForceBuilderInitialization();
2730 private void maybeForceBuilderInitialization() {
2731 if (
com.
google.protobuf.GeneratedMessageV3
2732 .alwaysUseFieldBuilders) {
2740 useRelocatePair_ = 0;
2742 useLightRelocatePair_ = 0;
2744 useRelocateNeighbors_ = 0;
2746 useRelocateSubtrip_ = 0;
2750 useExchangePair_ = 0;
2752 useExchangeSubtrip_ = 0;
2756 useCrossExchange_ = 0;
2758 useRelocateExpensiveChain_ = 0;
2764 useLinKernighan_ = 0;
2770 useRelocateAndMakeActive_ = 0;
2772 useMakeInactive_ = 0;
2774 useMakeChainInactive_ = 0;
2778 useExtendedSwapActive_ = 0;
2780 useNodePairSwapActive_ = 0;
2784 useFullPathLns_ = 0;
2788 useInactiveLns_ = 0;
2794 public com.
google.protobuf.Descriptors.Descriptor
2807 if (!result.isInitialized()) {
2808 throw newUninitializedMessageException(result);
2816 result.useRelocate_ = useRelocate_;
2817 result.useRelocatePair_ = useRelocatePair_;
2818 result.useLightRelocatePair_ = useLightRelocatePair_;
2819 result.useRelocateNeighbors_ = useRelocateNeighbors_;
2820 result.useRelocateSubtrip_ = useRelocateSubtrip_;
2821 result.useExchange_ = useExchange_;
2822 result.useExchangePair_ = useExchangePair_;
2823 result.useExchangeSubtrip_ = useExchangeSubtrip_;
2824 result.useCross_ = useCross_;
2825 result.useCrossExchange_ = useCrossExchange_;
2826 result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
2827 result.useTwoOpt_ = useTwoOpt_;
2828 result.useOrOpt_ = useOrOpt_;
2829 result.useLinKernighan_ = useLinKernighan_;
2830 result.useTspOpt_ = useTspOpt_;
2831 result.useMakeActive_ = useMakeActive_;
2832 result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
2833 result.useMakeInactive_ = useMakeInactive_;
2834 result.useMakeChainInactive_ = useMakeChainInactive_;
2835 result.useSwapActive_ = useSwapActive_;
2836 result.useExtendedSwapActive_ = useExtendedSwapActive_;
2837 result.useNodePairSwapActive_ = useNodePairSwapActive_;
2838 result.usePathLns_ = usePathLns_;
2839 result.useFullPathLns_ = useFullPathLns_;
2840 result.useTspLns_ = useTspLns_;
2841 result.useInactiveLns_ = useInactiveLns_;
2848 return super.
clone();
2852 com.
google.protobuf.Descriptors.FieldDescriptor field,
2853 java.lang.Object value) {
2854 return super.
setField(field, value);
2858 com.
google.protobuf.Descriptors.FieldDescriptor field) {
2863 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
2868 com.
google.protobuf.Descriptors.FieldDescriptor field,
2869 int index, java.lang.Object value) {
2874 com.
google.protobuf.Descriptors.FieldDescriptor field,
2875 java.lang.Object value) {
2883 super.mergeFrom(other);
2890 if (other.useRelocate_ != 0) {
2893 if (other.useRelocatePair_ != 0) {
2896 if (other.useLightRelocatePair_ != 0) {
2899 if (other.useRelocateNeighbors_ != 0) {
2902 if (other.useRelocateSubtrip_ != 0) {
2905 if (other.useExchange_ != 0) {
2908 if (other.useExchangePair_ != 0) {
2911 if (other.useExchangeSubtrip_ != 0) {
2914 if (other.useCross_ != 0) {
2917 if (other.useCrossExchange_ != 0) {
2920 if (other.useRelocateExpensiveChain_ != 0) {
2923 if (other.useTwoOpt_ != 0) {
2926 if (other.useOrOpt_ != 0) {
2929 if (other.useLinKernighan_ != 0) {
2932 if (other.useTspOpt_ != 0) {
2935 if (other.useMakeActive_ != 0) {
2938 if (other.useRelocateAndMakeActive_ != 0) {
2941 if (other.useMakeInactive_ != 0) {
2944 if (other.useMakeChainInactive_ != 0) {
2947 if (other.useSwapActive_ != 0) {
2950 if (other.useExtendedSwapActive_ != 0) {
2953 if (other.useNodePairSwapActive_ != 0) {
2956 if (other.usePathLns_ != 0) {
2959 if (other.useFullPathLns_ != 0) {
2962 if (other.useTspLns_ != 0) {
2965 if (other.useInactiveLns_ != 0) {
2980 com.
google.protobuf.CodedInputStream input,
2981 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2982 throws java.io.IOException {
2985 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2986 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
2988 throw e.unwrapIOException();
2990 if (parsedMessage !=
null) {
2997 private int useRelocate_ = 0;
3014 return useRelocate_;
3032 useRelocate_ = value;
3052 @SuppressWarnings(
"deprecation")
3072 if (value ==
null) {
3073 throw new NullPointerException();
3076 useRelocate_ = value.getNumber();
3102 private int useRelocatePair_ = 0;
3119 return useRelocatePair_;
3137 useRelocatePair_ = value;
3157 @SuppressWarnings(
"deprecation")
3177 if (value ==
null) {
3178 throw new NullPointerException();
3181 useRelocatePair_ = value.getNumber();
3202 useRelocatePair_ = 0;
3207 private int useLightRelocatePair_ = 0;
3222 return useLightRelocatePair_;
3238 useLightRelocatePair_ = value;
3256 @SuppressWarnings(
"deprecation")
3274 if (value ==
null) {
3275 throw new NullPointerException();
3278 useLightRelocatePair_ = value.getNumber();
3297 useLightRelocatePair_ = 0;
3302 private int useRelocateNeighbors_ = 0;
3332 return useRelocateNeighbors_;
3363 useRelocateNeighbors_ = value;
3396 @SuppressWarnings(
"deprecation")
3429 if (value ==
null) {
3430 throw new NullPointerException();
3433 useRelocateNeighbors_ = value.getNumber();
3467 useRelocateNeighbors_ = 0;
3472 private int useRelocateSubtrip_ = 0;
3492 return useRelocateSubtrip_;
3513 useRelocateSubtrip_ = value;
3536 @SuppressWarnings(
"deprecation")
3559 if (value ==
null) {
3560 throw new NullPointerException();
3563 useRelocateSubtrip_ = value.getNumber();
3587 useRelocateSubtrip_ = 0;
3592 private int useExchange_ = 0;
3607 return useExchange_;
3623 useExchange_ = value;
3641 @SuppressWarnings(
"deprecation")
3659 if (value ==
null) {
3660 throw new NullPointerException();
3663 useExchange_ = value.getNumber();
3687 private int useExchangePair_ = 0;
3702 return useExchangePair_;
3718 useExchangePair_ = value;
3736 @SuppressWarnings(
"deprecation")
3754 if (value ==
null) {
3755 throw new NullPointerException();
3758 useExchangePair_ = value.getNumber();
3777 useExchangePair_ = 0;
3782 private int useExchangeSubtrip_ = 0;
3792 return useExchangeSubtrip_;
3803 useExchangeSubtrip_ = value;
3816 @SuppressWarnings(
"deprecation")
3829 if (value ==
null) {
3830 throw new NullPointerException();
3833 useExchangeSubtrip_ = value.getNumber();
3847 useExchangeSubtrip_ = 0;
3852 private int useCross_ = 0;
3907 @SuppressWarnings(
"deprecation")
3927 if (value ==
null) {
3928 throw new NullPointerException();
3931 useCross_ = value.getNumber();
3957 private int useCrossExchange_ = 0;
3966 return useCrossExchange_;
3976 useCrossExchange_ = value;
3988 @SuppressWarnings(
"deprecation")
4000 if (value ==
null) {
4001 throw new NullPointerException();
4004 useCrossExchange_ = value.getNumber();
4017 useCrossExchange_ = 0;
4022 private int useRelocateExpensiveChain_ = 0;
4040 return useRelocateExpensiveChain_;
4059 useRelocateExpensiveChain_ = value;
4080 @SuppressWarnings(
"deprecation")
4101 if (value ==
null) {
4102 throw new NullPointerException();
4105 useRelocateExpensiveChain_ = value.getNumber();
4127 useRelocateExpensiveChain_ = 0;
4132 private int useTwoOpt_ = 0;
4190 @SuppressWarnings(
"deprecation")
4211 if (value ==
null) {
4212 throw new NullPointerException();
4215 useTwoOpt_ = value.getNumber();
4242 private int useOrOpt_ = 0;
4303 @SuppressWarnings(
"deprecation")
4325 if (value ==
null) {
4326 throw new NullPointerException();
4329 useOrOpt_ = value.getNumber();
4357 private int useLinKernighan_ = 0;
4369 return useLinKernighan_;
4382 useLinKernighan_ = value;
4397 @SuppressWarnings(
"deprecation")
4412 if (value ==
null) {
4413 throw new NullPointerException();
4416 useLinKernighan_ = value.getNumber();
4432 useLinKernighan_ = 0;
4437 private int useTspOpt_ = 0;
4483 @SuppressWarnings(
"deprecation")
4500 if (value ==
null) {
4501 throw new NullPointerException();
4504 useTspOpt_ = value.getNumber();
4527 private int useMakeActive_ = 0;
4542 return useMakeActive_;
4558 useMakeActive_ = value;
4576 @SuppressWarnings(
"deprecation")
4594 if (value ==
null) {
4595 throw new NullPointerException();
4598 useMakeActive_ = value.getNumber();
4622 private int useRelocateAndMakeActive_ = 0;
4640 return useRelocateAndMakeActive_;
4659 useRelocateAndMakeActive_ = value;
4680 @SuppressWarnings(
"deprecation")
4701 if (value ==
null) {
4702 throw new NullPointerException();
4705 useRelocateAndMakeActive_ = value.getNumber();
4727 useRelocateAndMakeActive_ = 0;
4732 private int useMakeInactive_ = 0;
4745 return useMakeInactive_;
4759 useMakeInactive_ = value;
4775 @SuppressWarnings(
"deprecation")
4791 if (value ==
null) {
4792 throw new NullPointerException();
4795 useMakeInactive_ = value.getNumber();
4812 useMakeInactive_ = 0;
4817 private int useMakeChainInactive_ = 0;
4831 return useMakeChainInactive_;
4846 useMakeChainInactive_ = value;
4863 @SuppressWarnings(
"deprecation")
4880 if (value ==
null) {
4881 throw new NullPointerException();
4884 useMakeChainInactive_ = value.getNumber();
4902 useMakeChainInactive_ = 0;
4907 private int useSwapActive_ = 0;
4920 return useSwapActive_;
4934 useSwapActive_ = value;
4950 @SuppressWarnings(
"deprecation")
4966 if (value ==
null) {
4967 throw new NullPointerException();
4970 useSwapActive_ = value.getNumber();
4992 private int useExtendedSwapActive_ = 0;
5010 return useExtendedSwapActive_;
5029 useExtendedSwapActive_ = value;
5050 @SuppressWarnings(
"deprecation")
5071 if (value ==
null) {
5072 throw new NullPointerException();
5075 useExtendedSwapActive_ = value.getNumber();
5097 useExtendedSwapActive_ = 0;
5102 private int useNodePairSwapActive_ = 0;
5121 return useNodePairSwapActive_;
5141 useNodePairSwapActive_ = value;
5163 @SuppressWarnings(
"deprecation")
5185 if (value ==
null) {
5186 throw new NullPointerException();
5189 useNodePairSwapActive_ = value.getNumber();
5212 useNodePairSwapActive_ = 0;
5217 private int usePathLns_ = 0;
5250 usePathLns_ = value;
5269 @SuppressWarnings(
"deprecation")
5288 if (value ==
null) {
5289 throw new NullPointerException();
5292 usePathLns_ = value.getNumber();
5317 private int useFullPathLns_ = 0;
5326 return useFullPathLns_;
5336 useFullPathLns_ = value;
5348 @SuppressWarnings(
"deprecation")
5360 if (value ==
null) {
5361 throw new NullPointerException();
5364 useFullPathLns_ = value.getNumber();
5377 useFullPathLns_ = 0;
5382 private int useTspLns_ = 0;
5428 @SuppressWarnings(
"deprecation")
5445 if (value ==
null) {
5446 throw new NullPointerException();
5449 useTspLns_ = value.getNumber();
5472 private int useInactiveLns_ = 0;
5483 return useInactiveLns_;
5495 useInactiveLns_ = value;
5509 @SuppressWarnings(
"deprecation")
5523 if (value ==
null) {
5524 throw new NullPointerException();
5527 useInactiveLns_ = value.getNumber();
5542 useInactiveLns_ = 0;
5548 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5554 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5569 return DEFAULT_INSTANCE;
5576 com.
google.protobuf.CodedInputStream input,
5577 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
5578 throws com.
google.protobuf.InvalidProtocolBufferException {
5594 return DEFAULT_INSTANCE;
5600 private int firstSolutionStrategy_;
5609 return firstSolutionStrategy_;
5619 @SuppressWarnings(
"deprecation")
5625 private boolean useUnfilteredFirstSolutionStrategy_;
5636 return useUnfilteredFirstSolutionStrategy_;
5640 private double savingsNeighborsRatio_;
5651 return savingsNeighborsRatio_;
5655 private double savingsMaxMemoryUsageBytes_;
5669 return savingsMaxMemoryUsageBytes_;
5673 private boolean savingsAddReverseArcs_;
5683 return savingsAddReverseArcs_;
5687 private double savingsArcCoefficient_;
5700 return savingsArcCoefficient_;
5704 private boolean savingsParallelRoutes_;
5713 return savingsParallelRoutes_;
5717 private double cheapestInsertionFarthestSeedsRatio_;
5728 return cheapestInsertionFarthestSeedsRatio_;
5732 private double cheapestInsertionNeighborsRatio_;
5744 return cheapestInsertionNeighborsRatio_;
5753 return localSearchOperators_ !=
null;
5769 private int relocateExpensiveChainNumArcsToConsider_;
5784 return relocateExpensiveChainNumArcsToConsider_;
5788 private int localSearchMetaheuristic_;
5797 return localSearchMetaheuristic_;
5807 @SuppressWarnings(
"deprecation")
5813 private double guidedLocalSearchLambdaCoefficient_;
5825 return guidedLocalSearchLambdaCoefficient_;
5829 private boolean useDepthFirstSearch_;
5840 return useDepthFirstSearch_;
5867 @SuppressWarnings(
"deprecation")
5873 private int useCpSat_;
5898 @SuppressWarnings(
"deprecation")
5904 private double optimizationStep_;
5915 return optimizationStep_;
5919 private int numberOfSolutionsToCollect_;
5929 return numberOfSolutionsToCollect_;
5933 private long solutionLimit_;
5944 return solutionLimit_;
5948 private com.
google.protobuf.Duration timeLimit_;
5957 return timeLimit_ !=
null;
5967 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
5981 private com.
google.protobuf.Duration lnsTimeLimit_;
5991 return lnsTimeLimit_ !=
null;
6002 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
6017 private boolean useFullPropagation_;
6034 return useFullPropagation_;
6038 private boolean logSearch_;
6062 private double logCostScalingFactor_;
6071 return logCostScalingFactor_;
6074 private byte memoizedIsInitialized = -1;
6081 memoizedIsInitialized = 1;
6087 throws java.io.IOException {
6089 output.writeEnum(1, firstSolutionStrategy_);
6091 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6092 output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
6094 if (localSearchOperators_ !=
null) {
6098 output.writeEnum(4, localSearchMetaheuristic_);
6100 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6101 output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
6103 if (useDepthFirstSearch_ !=
false) {
6104 output.writeBool(6, useDepthFirstSearch_);
6106 if (optimizationStep_ != 0D) {
6107 output.writeDouble(7, optimizationStep_);
6109 if (solutionLimit_ != 0L) {
6110 output.writeInt64(8, solutionLimit_);
6112 if (timeLimit_ !=
null) {
6115 if (lnsTimeLimit_ !=
null) {
6118 if (useFullPropagation_ !=
false) {
6119 output.writeBool(11, useFullPropagation_);
6121 if (logSearch_ !=
false) {
6122 output.writeBool(13, logSearch_);
6124 if (savingsNeighborsRatio_ != 0D) {
6125 output.writeDouble(14, savingsNeighborsRatio_);
6127 if (savingsAddReverseArcs_ !=
false) {
6128 output.writeBool(15, savingsAddReverseArcs_);
6130 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6131 output.writeDouble(16, cheapestInsertionFarthestSeedsRatio_);
6133 if (numberOfSolutionsToCollect_ != 0) {
6134 output.writeInt32(17, numberOfSolutionsToCollect_);
6136 if (savingsArcCoefficient_ != 0D) {
6137 output.writeDouble(18, savingsArcCoefficient_);
6139 if (savingsParallelRoutes_ !=
false) {
6140 output.writeBool(19, savingsParallelRoutes_);
6142 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6143 output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
6145 if (cheapestInsertionNeighborsRatio_ != 0D) {
6146 output.writeDouble(21, cheapestInsertionNeighborsRatio_);
6148 if (logCostScalingFactor_ != 0D) {
6149 output.writeDouble(22, logCostScalingFactor_);
6151 if (savingsMaxMemoryUsageBytes_ != 0D) {
6152 output.writeDouble(23, savingsMaxMemoryUsageBytes_);
6155 output.writeEnum(27, useCpSat_);
6158 output.writeEnum(28, useCp_);
6160 unknownFields.writeTo(output);
6165 int size = memoizedSize;
6166 if (size != -1)
return size;
6170 size +=
com.
google.protobuf.CodedOutputStream
6171 .computeEnumSize(1, firstSolutionStrategy_);
6173 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6174 size +=
com.
google.protobuf.CodedOutputStream
6175 .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
6177 if (localSearchOperators_ !=
null) {
6178 size +=
com.
google.protobuf.CodedOutputStream
6182 size +=
com.
google.protobuf.CodedOutputStream
6183 .computeEnumSize(4, localSearchMetaheuristic_);
6185 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6186 size +=
com.
google.protobuf.CodedOutputStream
6187 .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
6189 if (useDepthFirstSearch_ !=
false) {
6190 size +=
com.
google.protobuf.CodedOutputStream
6191 .computeBoolSize(6, useDepthFirstSearch_);
6193 if (optimizationStep_ != 0D) {
6194 size +=
com.
google.protobuf.CodedOutputStream
6195 .computeDoubleSize(7, optimizationStep_);
6197 if (solutionLimit_ != 0L) {
6198 size +=
com.
google.protobuf.CodedOutputStream
6199 .computeInt64Size(8, solutionLimit_);
6201 if (timeLimit_ !=
null) {
6202 size +=
com.
google.protobuf.CodedOutputStream
6205 if (lnsTimeLimit_ !=
null) {
6206 size +=
com.
google.protobuf.CodedOutputStream
6209 if (useFullPropagation_ !=
false) {
6210 size +=
com.
google.protobuf.CodedOutputStream
6211 .computeBoolSize(11, useFullPropagation_);
6213 if (logSearch_ !=
false) {
6214 size +=
com.
google.protobuf.CodedOutputStream
6215 .computeBoolSize(13, logSearch_);
6217 if (savingsNeighborsRatio_ != 0D) {
6218 size +=
com.
google.protobuf.CodedOutputStream
6219 .computeDoubleSize(14, savingsNeighborsRatio_);
6221 if (savingsAddReverseArcs_ !=
false) {
6222 size +=
com.
google.protobuf.CodedOutputStream
6223 .computeBoolSize(15, savingsAddReverseArcs_);
6225 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6226 size +=
com.
google.protobuf.CodedOutputStream
6227 .computeDoubleSize(16, cheapestInsertionFarthestSeedsRatio_);
6229 if (numberOfSolutionsToCollect_ != 0) {
6230 size +=
com.
google.protobuf.CodedOutputStream
6231 .computeInt32Size(17, numberOfSolutionsToCollect_);
6233 if (savingsArcCoefficient_ != 0D) {
6234 size +=
com.
google.protobuf.CodedOutputStream
6235 .computeDoubleSize(18, savingsArcCoefficient_);
6237 if (savingsParallelRoutes_ !=
false) {
6238 size +=
com.
google.protobuf.CodedOutputStream
6239 .computeBoolSize(19, savingsParallelRoutes_);
6241 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6242 size +=
com.
google.protobuf.CodedOutputStream
6243 .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
6245 if (cheapestInsertionNeighborsRatio_ != 0D) {
6246 size +=
com.
google.protobuf.CodedOutputStream
6247 .computeDoubleSize(21, cheapestInsertionNeighborsRatio_);
6249 if (logCostScalingFactor_ != 0D) {
6250 size +=
com.
google.protobuf.CodedOutputStream
6251 .computeDoubleSize(22, logCostScalingFactor_);
6253 if (savingsMaxMemoryUsageBytes_ != 0D) {
6254 size +=
com.
google.protobuf.CodedOutputStream
6255 .computeDoubleSize(23, savingsMaxMemoryUsageBytes_);
6258 size +=
com.
google.protobuf.CodedOutputStream
6259 .computeEnumSize(27, useCpSat_);
6262 size +=
com.
google.protobuf.CodedOutputStream
6263 .computeEnumSize(28, useCp_);
6265 size += unknownFields.getSerializedSize();
6266 memoizedSize = size;
6271 public boolean equals(
final java.lang.Object obj) {
6276 return super.equals(obj);
6280 if (firstSolutionStrategy_ != other.firstSolutionStrategy_)
return false;
6282 != other.getUseUnfilteredFirstSolutionStrategy())
return false;
6284 != java.lang.Double.doubleToLongBits(
6285 other.getSavingsNeighborsRatio()))
return false;
6287 != java.lang.Double.doubleToLongBits(
6288 other.getSavingsMaxMemoryUsageBytes()))
return false;
6290 != other.getSavingsAddReverseArcs())
return false;
6292 != java.lang.Double.doubleToLongBits(
6293 other.getSavingsArcCoefficient()))
return false;
6295 != other.getSavingsParallelRoutes())
return false;
6297 != java.lang.Double.doubleToLongBits(
6298 other.getCheapestInsertionFarthestSeedsRatio()))
return false;
6300 != java.lang.Double.doubleToLongBits(
6301 other.getCheapestInsertionNeighborsRatio()))
return false;
6305 .
equals(other.getLocalSearchOperators()))
return false;
6308 != other.getRelocateExpensiveChainNumArcsToConsider())
return false;
6309 if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_)
return false;
6311 != java.lang.Double.doubleToLongBits(
6312 other.getGuidedLocalSearchLambdaCoefficient()))
return false;
6314 != other.getUseDepthFirstSearch())
return false;
6315 if (useCp_ != other.useCp_)
return false;
6316 if (useCpSat_ != other.useCpSat_)
return false;
6318 != java.lang.Double.doubleToLongBits(
6319 other.getOptimizationStep()))
return false;
6321 != other.getNumberOfSolutionsToCollect())
return false;
6323 != other.getSolutionLimit())
return false;
6324 if (
hasTimeLimit() != other.hasTimeLimit())
return false;
6327 .equals(other.getTimeLimit()))
return false;
6332 .equals(other.getLnsTimeLimit()))
return false;
6335 != other.getUseFullPropagation())
return false;
6337 != other.getLogSearch())
return false;
6339 != java.lang.Double.doubleToLongBits(
6340 other.getLogCostScalingFactor()))
return false;
6341 if (!unknownFields.equals(other.unknownFields))
return false;
6347 if (memoizedHashCode != 0) {
6348 return memoizedHashCode;
6353 hash = (53 * hash) + firstSolutionStrategy_;
6355 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6358 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6361 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6364 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6367 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6370 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6373 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6376 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6385 hash = (53 * hash) + localSearchMetaheuristic_;
6387 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6390 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6393 hash = (53 * hash) + useCp_;
6395 hash = (53 * hash) + useCpSat_;
6397 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6402 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6413 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6416 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6419 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6421 hash = (29 * hash) + unknownFields.hashCode();
6422 memoizedHashCode = hash;
6427 java.nio.ByteBuffer data)
6428 throws com.
google.protobuf.InvalidProtocolBufferException {
6429 return PARSER.parseFrom(data);
6432 java.nio.ByteBuffer data,
6433 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6434 throws com.
google.protobuf.InvalidProtocolBufferException {
6435 return PARSER.parseFrom(data, extensionRegistry);
6439 throws com.
google.protobuf.InvalidProtocolBufferException {
6440 return PARSER.parseFrom(data);
6444 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6445 throws com.
google.protobuf.InvalidProtocolBufferException {
6446 return PARSER.parseFrom(data, extensionRegistry);
6449 throws com.
google.protobuf.InvalidProtocolBufferException {
6450 return PARSER.parseFrom(data);
6454 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6455 throws com.
google.protobuf.InvalidProtocolBufferException {
6456 return PARSER.parseFrom(data, extensionRegistry);
6459 throws java.io.IOException {
6460 return com.
google.protobuf.GeneratedMessageV3
6461 .parseWithIOException(PARSER, input);
6464 java.io.InputStream input,
6465 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6466 throws java.io.IOException {
6467 return com.
google.protobuf.GeneratedMessageV3
6468 .parseWithIOException(PARSER, input, extensionRegistry);
6471 throws java.io.IOException {
6472 return com.
google.protobuf.GeneratedMessageV3
6473 .parseDelimitedWithIOException(PARSER, input);
6476 java.io.InputStream input,
6477 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6478 throws java.io.IOException {
6479 return com.
google.protobuf.GeneratedMessageV3
6480 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
6483 com.
google.protobuf.CodedInputStream input)
6484 throws java.io.IOException {
6485 return com.
google.protobuf.GeneratedMessageV3
6486 .parseWithIOException(PARSER, input);
6489 com.
google.protobuf.CodedInputStream input,
6490 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6491 throws java.io.IOException {
6492 return com.
google.protobuf.GeneratedMessageV3
6493 .parseWithIOException(PARSER, input, extensionRegistry);
6506 return this == DEFAULT_INSTANCE
6512 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6528 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
6531 public static final com.
google.protobuf.Descriptors.Descriptor
6537 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
6540 .ensureFieldAccessorsInitialized(
6546 maybeForceBuilderInitialization();
6550 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6552 maybeForceBuilderInitialization();
6554 private void maybeForceBuilderInitialization() {
6555 if (
com.
google.protobuf.GeneratedMessageV3
6556 .alwaysUseFieldBuilders) {
6562 firstSolutionStrategy_ = 0;
6564 useUnfilteredFirstSolutionStrategy_ =
false;
6566 savingsNeighborsRatio_ = 0D;
6568 savingsMaxMemoryUsageBytes_ = 0D;
6570 savingsAddReverseArcs_ =
false;
6572 savingsArcCoefficient_ = 0D;
6574 savingsParallelRoutes_ =
false;
6576 cheapestInsertionFarthestSeedsRatio_ = 0D;
6578 cheapestInsertionNeighborsRatio_ = 0D;
6580 if (localSearchOperatorsBuilder_ ==
null) {
6581 localSearchOperators_ =
null;
6583 localSearchOperators_ =
null;
6584 localSearchOperatorsBuilder_ =
null;
6586 relocateExpensiveChainNumArcsToConsider_ = 0;
6588 localSearchMetaheuristic_ = 0;
6590 guidedLocalSearchLambdaCoefficient_ = 0D;
6592 useDepthFirstSearch_ =
false;
6598 optimizationStep_ = 0D;
6600 numberOfSolutionsToCollect_ = 0;
6602 solutionLimit_ = 0L;
6604 if (timeLimitBuilder_ ==
null) {
6608 timeLimitBuilder_ =
null;
6610 if (lnsTimeLimitBuilder_ ==
null) {
6611 lnsTimeLimit_ =
null;
6613 lnsTimeLimit_ =
null;
6614 lnsTimeLimitBuilder_ =
null;
6616 useFullPropagation_ =
false;
6620 logCostScalingFactor_ = 0D;
6626 public com.
google.protobuf.Descriptors.Descriptor
6639 if (!result.isInitialized()) {
6640 throw newUninitializedMessageException(result);
6648 result.firstSolutionStrategy_ = firstSolutionStrategy_;
6649 result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
6650 result.savingsNeighborsRatio_ = savingsNeighborsRatio_;
6651 result.savingsMaxMemoryUsageBytes_ = savingsMaxMemoryUsageBytes_;
6652 result.savingsAddReverseArcs_ = savingsAddReverseArcs_;
6653 result.savingsArcCoefficient_ = savingsArcCoefficient_;
6654 result.savingsParallelRoutes_ = savingsParallelRoutes_;
6655 result.cheapestInsertionFarthestSeedsRatio_ = cheapestInsertionFarthestSeedsRatio_;
6656 result.cheapestInsertionNeighborsRatio_ = cheapestInsertionNeighborsRatio_;
6657 if (localSearchOperatorsBuilder_ ==
null) {
6658 result.localSearchOperators_ = localSearchOperators_;
6660 result.localSearchOperators_ = localSearchOperatorsBuilder_.build();
6662 result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
6663 result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
6664 result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
6665 result.useDepthFirstSearch_ = useDepthFirstSearch_;
6666 result.useCp_ = useCp_;
6667 result.useCpSat_ = useCpSat_;
6668 result.optimizationStep_ = optimizationStep_;
6669 result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
6670 result.solutionLimit_ = solutionLimit_;
6671 if (timeLimitBuilder_ ==
null) {
6672 result.timeLimit_ = timeLimit_;
6674 result.timeLimit_ = timeLimitBuilder_.build();
6676 if (lnsTimeLimitBuilder_ ==
null) {
6677 result.lnsTimeLimit_ = lnsTimeLimit_;
6679 result.lnsTimeLimit_ = lnsTimeLimitBuilder_.build();
6681 result.useFullPropagation_ = useFullPropagation_;
6682 result.logSearch_ = logSearch_;
6683 result.logCostScalingFactor_ = logCostScalingFactor_;
6690 return super.
clone();
6694 com.
google.protobuf.Descriptors.FieldDescriptor field,
6695 java.lang.Object value) {
6696 return super.
setField(field, value);
6700 com.
google.protobuf.Descriptors.FieldDescriptor field) {
6705 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
6710 com.
google.protobuf.Descriptors.FieldDescriptor field,
6711 int index, java.lang.Object value) {
6716 com.
google.protobuf.Descriptors.FieldDescriptor field,
6717 java.lang.Object value) {
6725 super.mergeFrom(other);
6732 if (other.firstSolutionStrategy_ != 0) {
6735 if (other.getUseUnfilteredFirstSolutionStrategy() !=
false) {
6738 if (other.getSavingsNeighborsRatio() != 0D) {
6741 if (other.getSavingsMaxMemoryUsageBytes() != 0D) {
6744 if (other.getSavingsAddReverseArcs() !=
false) {
6747 if (other.getSavingsArcCoefficient() != 0D) {
6750 if (other.getSavingsParallelRoutes() !=
false) {
6753 if (other.getCheapestInsertionFarthestSeedsRatio() != 0D) {
6756 if (other.getCheapestInsertionNeighborsRatio() != 0D) {
6759 if (other.hasLocalSearchOperators()) {
6762 if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
6765 if (other.localSearchMetaheuristic_ != 0) {
6768 if (other.getGuidedLocalSearchLambdaCoefficient() != 0D) {
6771 if (other.getUseDepthFirstSearch() !=
false) {
6774 if (other.useCp_ != 0) {
6777 if (other.useCpSat_ != 0) {
6780 if (other.getOptimizationStep() != 0D) {
6783 if (other.getNumberOfSolutionsToCollect() != 0) {
6786 if (other.getSolutionLimit() != 0L) {
6789 if (other.hasTimeLimit()) {
6792 if (other.hasLnsTimeLimit()) {
6795 if (other.getUseFullPropagation() !=
false) {
6798 if (other.getLogSearch() !=
false) {
6801 if (other.getLogCostScalingFactor() != 0D) {
6816 com.
google.protobuf.CodedInputStream input,
6817 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6818 throws java.io.IOException {
6821 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
6822 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
6824 throw e.unwrapIOException();
6826 if (parsedMessage !=
null) {
6833 private int firstSolutionStrategy_ = 0;
6842 return firstSolutionStrategy_;
6852 firstSolutionStrategy_ = value;
6864 @SuppressWarnings(
"deprecation")
6876 if (value ==
null) {
6877 throw new NullPointerException();
6880 firstSolutionStrategy_ = value.getNumber();
6893 firstSolutionStrategy_ = 0;
6898 private boolean useUnfilteredFirstSolutionStrategy_ ;
6909 return useUnfilteredFirstSolutionStrategy_;
6922 useUnfilteredFirstSolutionStrategy_ = value;
6937 useUnfilteredFirstSolutionStrategy_ =
false;
6942 private double savingsNeighborsRatio_ ;
6953 return savingsNeighborsRatio_;
6966 savingsNeighborsRatio_ = value;
6981 savingsNeighborsRatio_ = 0D;
6986 private double savingsMaxMemoryUsageBytes_ ;
7000 return savingsMaxMemoryUsageBytes_;
7016 savingsMaxMemoryUsageBytes_ = value;
7034 savingsMaxMemoryUsageBytes_ = 0D;
7039 private boolean savingsAddReverseArcs_ ;
7049 return savingsAddReverseArcs_;
7061 savingsAddReverseArcs_ = value;
7075 savingsAddReverseArcs_ =
false;
7080 private double savingsArcCoefficient_ ;
7093 return savingsArcCoefficient_;
7108 savingsArcCoefficient_ = value;
7125 savingsArcCoefficient_ = 0D;
7130 private boolean savingsParallelRoutes_ ;
7139 return savingsParallelRoutes_;
7150 savingsParallelRoutes_ = value;
7163 savingsParallelRoutes_ =
false;
7168 private double cheapestInsertionFarthestSeedsRatio_ ;
7179 return cheapestInsertionFarthestSeedsRatio_;
7192 cheapestInsertionFarthestSeedsRatio_ = value;
7207 cheapestInsertionFarthestSeedsRatio_ = 0D;
7212 private double cheapestInsertionNeighborsRatio_ ;
7224 return cheapestInsertionNeighborsRatio_;
7238 cheapestInsertionNeighborsRatio_ = value;
7254 cheapestInsertionNeighborsRatio_ = 0D;
7260 private com.
google.protobuf.SingleFieldBuilderV3<
7266 return localSearchOperatorsBuilder_ !=
null || localSearchOperators_ !=
null;
7272 if (localSearchOperatorsBuilder_ ==
null) {
7275 return localSearchOperatorsBuilder_.getMessage();
7282 if (localSearchOperatorsBuilder_ ==
null) {
7283 if (value ==
null) {
7284 throw new NullPointerException();
7286 localSearchOperators_ = value;
7289 localSearchOperatorsBuilder_.setMessage(value);
7299 if (localSearchOperatorsBuilder_ ==
null) {
7300 localSearchOperators_ = builderForValue.build();
7303 localSearchOperatorsBuilder_.setMessage(builderForValue.build());
7312 if (localSearchOperatorsBuilder_ ==
null) {
7313 if (localSearchOperators_ !=
null) {
7314 localSearchOperators_ =
7317 localSearchOperators_ = value;
7321 localSearchOperatorsBuilder_.mergeFrom(value);
7330 if (localSearchOperatorsBuilder_ ==
null) {
7331 localSearchOperators_ =
null;
7334 localSearchOperators_ =
null;
7335 localSearchOperatorsBuilder_ =
null;
7346 return getLocalSearchOperatorsFieldBuilder().getBuilder();
7352 if (localSearchOperatorsBuilder_ !=
null) {
7353 return localSearchOperatorsBuilder_.getMessageOrBuilder();
7355 return localSearchOperators_ ==
null ?
7362 private com.
google.protobuf.SingleFieldBuilderV3<
7364 getLocalSearchOperatorsFieldBuilder() {
7365 if (localSearchOperatorsBuilder_ ==
null) {
7366 localSearchOperatorsBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
7369 getParentForChildren(),
7371 localSearchOperators_ =
null;
7373 return localSearchOperatorsBuilder_;
7376 private int relocateExpensiveChainNumArcsToConsider_ ;
7391 return relocateExpensiveChainNumArcsToConsider_;
7408 relocateExpensiveChainNumArcsToConsider_ = value;
7427 relocateExpensiveChainNumArcsToConsider_ = 0;
7432 private int localSearchMetaheuristic_ = 0;
7441 return localSearchMetaheuristic_;
7451 localSearchMetaheuristic_ = value;
7463 @SuppressWarnings(
"deprecation")
7475 if (value ==
null) {
7476 throw new NullPointerException();
7479 localSearchMetaheuristic_ = value.getNumber();
7492 localSearchMetaheuristic_ = 0;
7497 private double guidedLocalSearchLambdaCoefficient_ ;
7509 return guidedLocalSearchLambdaCoefficient_;
7523 guidedLocalSearchLambdaCoefficient_ = value;
7539 guidedLocalSearchLambdaCoefficient_ = 0D;
7544 private boolean useDepthFirstSearch_ ;
7555 return useDepthFirstSearch_;
7568 useDepthFirstSearch_ = value;
7583 useDepthFirstSearch_ =
false;
7588 private int useCp_ = 0;
7625 @SuppressWarnings(
"deprecation")
7639 if (value ==
null) {
7640 throw new NullPointerException();
7643 useCp_ = value.getNumber();
7663 private int useCpSat_ = 0;
7703 @SuppressWarnings(
"deprecation")
7718 if (value ==
null) {
7719 throw new NullPointerException();
7722 useCpSat_ = value.getNumber();
7743 private double optimizationStep_ ;
7754 return optimizationStep_;
7767 optimizationStep_ = value;
7782 optimizationStep_ = 0D;
7787 private int numberOfSolutionsToCollect_ ;
7797 return numberOfSolutionsToCollect_;
7809 numberOfSolutionsToCollect_ = value;
7823 numberOfSolutionsToCollect_ = 0;
7828 private long solutionLimit_ ;
7839 return solutionLimit_;
7852 solutionLimit_ = value;
7867 solutionLimit_ = 0L;
7872 private com.
google.protobuf.Duration timeLimit_;
7873 private com.
google.protobuf.SingleFieldBuilderV3<
7883 return timeLimitBuilder_ !=
null || timeLimit_ !=
null;
7893 if (timeLimitBuilder_ ==
null) {
7894 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
7896 return timeLimitBuilder_.getMessage();
7907 if (timeLimitBuilder_ ==
null) {
7908 if (value ==
null) {
7909 throw new NullPointerException();
7914 timeLimitBuilder_.setMessage(value);
7927 com.
google.protobuf.Duration.Builder builderForValue) {
7928 if (timeLimitBuilder_ ==
null) {
7929 timeLimit_ = builderForValue.build();
7932 timeLimitBuilder_.setMessage(builderForValue.build());
7945 if (timeLimitBuilder_ ==
null) {
7946 if (timeLimit_ !=
null) {
7948 com.
google.protobuf.Duration.newBuilder(timeLimit_).mergeFrom(value).buildPartial();
7954 timeLimitBuilder_.mergeFrom(value);
7967 if (timeLimitBuilder_ ==
null) {
7972 timeLimitBuilder_ =
null;
7987 return getTimeLimitFieldBuilder().getBuilder();
7997 if (timeLimitBuilder_ !=
null) {
7998 return timeLimitBuilder_.getMessageOrBuilder();
8000 return timeLimit_ ==
null ?
8001 com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
8011 private com.
google.protobuf.SingleFieldBuilderV3<
8013 getTimeLimitFieldBuilder() {
8014 if (timeLimitBuilder_ ==
null) {
8015 timeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8018 getParentForChildren(),
8022 return timeLimitBuilder_;
8025 private com.
google.protobuf.Duration lnsTimeLimit_;
8026 private com.
google.protobuf.SingleFieldBuilderV3<
8037 return lnsTimeLimitBuilder_ !=
null || lnsTimeLimit_ !=
null;
8048 if (lnsTimeLimitBuilder_ ==
null) {
8049 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8051 return lnsTimeLimitBuilder_.getMessage();
8063 if (lnsTimeLimitBuilder_ ==
null) {
8064 if (value ==
null) {
8065 throw new NullPointerException();
8067 lnsTimeLimit_ = value;
8070 lnsTimeLimitBuilder_.setMessage(value);
8084 com.
google.protobuf.Duration.Builder builderForValue) {
8085 if (lnsTimeLimitBuilder_ ==
null) {
8086 lnsTimeLimit_ = builderForValue.build();
8089 lnsTimeLimitBuilder_.setMessage(builderForValue.build());
8103 if (lnsTimeLimitBuilder_ ==
null) {
8104 if (lnsTimeLimit_ !=
null) {
8106 com.
google.protobuf.Duration.newBuilder(lnsTimeLimit_).mergeFrom(value).buildPartial();
8108 lnsTimeLimit_ = value;
8112 lnsTimeLimitBuilder_.mergeFrom(value);
8126 if (lnsTimeLimitBuilder_ ==
null) {
8127 lnsTimeLimit_ =
null;
8130 lnsTimeLimit_ =
null;
8131 lnsTimeLimitBuilder_ =
null;
8147 return getLnsTimeLimitFieldBuilder().getBuilder();
8158 if (lnsTimeLimitBuilder_ !=
null) {
8159 return lnsTimeLimitBuilder_.getMessageOrBuilder();
8161 return lnsTimeLimit_ ==
null ?
8162 com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8173 private com.
google.protobuf.SingleFieldBuilderV3<
8175 getLnsTimeLimitFieldBuilder() {
8176 if (lnsTimeLimitBuilder_ ==
null) {
8177 lnsTimeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8180 getParentForChildren(),
8182 lnsTimeLimit_ =
null;
8184 return lnsTimeLimitBuilder_;
8187 private boolean useFullPropagation_ ;
8204 return useFullPropagation_;
8223 useFullPropagation_ = value;
8244 useFullPropagation_ =
false;
8249 private boolean logSearch_ ;
8320 private double logCostScalingFactor_ ;
8329 return logCostScalingFactor_;
8340 logCostScalingFactor_ = value;
8353 logCostScalingFactor_ = 0D;
8359 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8365 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8380 return DEFAULT_INSTANCE;
8387 com.
google.protobuf.CodedInputStream input,
8388 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
8389 throws com.
google.protobuf.InvalidProtocolBufferException {
8405 return DEFAULT_INSTANCE;