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 public final com.
google.protobuf.UnknownFieldSet
36 return this.unknownFields;
39 com.
google.protobuf.CodedInputStream input,
40 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
41 throws com.
google.protobuf.InvalidProtocolBufferException {
43 if (extensionRegistry ==
null) {
44 throw new java.lang.NullPointerException();
46 int mutable_bitField0_ = 0;
47 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
48 com.
google.protobuf.UnknownFieldSet.newBuilder();
52 int tag = input.readTag();
58 int rawValue = input.readEnum();
60 firstSolutionStrategy_ = rawValue;
65 useUnfilteredFirstSolutionStrategy_ = input.readBool();
70 if (localSearchOperators_ !=
null) {
71 subBuilder = localSearchOperators_.
toBuilder();
74 if (subBuilder !=
null) {
75 subBuilder.mergeFrom(localSearchOperators_);
76 localSearchOperators_ = subBuilder.buildPartial();
82 int rawValue = input.readEnum();
84 localSearchMetaheuristic_ = rawValue;
89 guidedLocalSearchLambdaCoefficient_ = input.readDouble();
94 useDepthFirstSearch_ = input.readBool();
99 optimizationStep_ = input.readDouble();
104 solutionLimit_ = input.readInt64();
108 com.
google.protobuf.Duration.Builder subBuilder =
null;
109 if (timeLimit_ !=
null) {
110 subBuilder = timeLimit_.toBuilder();
112 timeLimit_ = input.readMessage(
com.
google.protobuf.Duration.parser(), extensionRegistry);
113 if (subBuilder !=
null) {
114 subBuilder.mergeFrom(timeLimit_);
115 timeLimit_ = subBuilder.buildPartial();
121 com.
google.protobuf.Duration.Builder subBuilder =
null;
122 if (lnsTimeLimit_ !=
null) {
123 subBuilder = lnsTimeLimit_.toBuilder();
125 lnsTimeLimit_ = input.readMessage(
com.
google.protobuf.Duration.parser(), extensionRegistry);
126 if (subBuilder !=
null) {
127 subBuilder.mergeFrom(lnsTimeLimit_);
128 lnsTimeLimit_ = subBuilder.buildPartial();
135 useFullPropagation_ = input.readBool();
140 logSearch_ = input.readBool();
145 savingsNeighborsRatio_ = input.readDouble();
150 savingsAddReverseArcs_ = input.readBool();
155 cheapestInsertionFarthestSeedsRatio_ = input.readDouble();
160 numberOfSolutionsToCollect_ = input.readInt32();
165 savingsArcCoefficient_ = input.readDouble();
170 savingsParallelRoutes_ = input.readBool();
175 relocateExpensiveChainNumArcsToConsider_ = input.readInt32();
180 cheapestInsertionNeighborsRatio_ = input.readDouble();
185 logCostScalingFactor_ = input.readDouble();
190 savingsMaxMemoryUsageBytes_ = input.readDouble();
194 int rawValue = input.readEnum();
196 useCpSat_ = rawValue;
200 int rawValue = input.readEnum();
206 if (!parseUnknownField(
207 input, unknownFields, extensionRegistry, tag)) {
214 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
215 throw e.setUnfinishedMessage(
this);
216 }
catch (java.io.IOException e) {
217 throw new com.
google.protobuf.InvalidProtocolBufferException(
218 e).setUnfinishedMessage(
this);
220 this.unknownFields = unknownFields.build();
221 makeExtensionsImmutable();
224 public static final com.
google.protobuf.Descriptors.Descriptor
230 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
233 .ensureFieldAccessorsInitialized(
239 com.google.protobuf.MessageOrBuilder {
1036 com.google.protobuf.GeneratedMessageV3 implements
1039 private static final long serialVersionUID = 0L;
1046 useRelocatePair_ = 0;
1047 useLightRelocatePair_ = 0;
1048 useRelocateNeighbors_ = 0;
1049 useRelocateSubtrip_ = 0;
1051 useExchangePair_ = 0;
1052 useExchangeSubtrip_ = 0;
1054 useCrossExchange_ = 0;
1055 useRelocateExpensiveChain_ = 0;
1058 useLinKernighan_ = 0;
1061 useRelocateAndMakeActive_ = 0;
1062 useMakeInactive_ = 0;
1063 useMakeChainInactive_ = 0;
1065 useExtendedSwapActive_ = 0;
1066 useNodePairSwapActive_ = 0;
1068 useFullPathLns_ = 0;
1070 useInactiveLns_ = 0;
1074 public final com.
google.protobuf.UnknownFieldSet
1076 return this.unknownFields;
1079 com.
google.protobuf.CodedInputStream input,
1080 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
1081 throws com.
google.protobuf.InvalidProtocolBufferException {
1083 if (extensionRegistry ==
null) {
1084 throw new java.lang.NullPointerException();
1086 int mutable_bitField0_ = 0;
1087 com.
google.protobuf.UnknownFieldSet.Builder unknownFields =
1088 com.
google.protobuf.UnknownFieldSet.newBuilder();
1090 boolean done =
false;
1092 int tag = input.readTag();
1098 int rawValue = input.readEnum();
1100 useRelocate_ = rawValue;
1104 int rawValue = input.readEnum();
1106 useRelocatePair_ = rawValue;
1110 int rawValue = input.readEnum();
1112 useRelocateNeighbors_ = rawValue;
1116 int rawValue = input.readEnum();
1118 useExchange_ = rawValue;
1122 int rawValue = input.readEnum();
1124 useCross_ = rawValue;
1128 int rawValue = input.readEnum();
1130 useCrossExchange_ = rawValue;
1134 int rawValue = input.readEnum();
1136 useTwoOpt_ = rawValue;
1140 int rawValue = input.readEnum();
1142 useOrOpt_ = rawValue;
1146 int rawValue = input.readEnum();
1148 useLinKernighan_ = rawValue;
1152 int rawValue = input.readEnum();
1154 useTspOpt_ = rawValue;
1158 int rawValue = input.readEnum();
1160 useMakeActive_ = rawValue;
1164 int rawValue = input.readEnum();
1166 useMakeInactive_ = rawValue;
1170 int rawValue = input.readEnum();
1172 useMakeChainInactive_ = rawValue;
1176 int rawValue = input.readEnum();
1178 useSwapActive_ = rawValue;
1182 int rawValue = input.readEnum();
1184 useExtendedSwapActive_ = rawValue;
1188 int rawValue = input.readEnum();
1190 usePathLns_ = rawValue;
1194 int rawValue = input.readEnum();
1196 useFullPathLns_ = rawValue;
1200 int rawValue = input.readEnum();
1202 useTspLns_ = rawValue;
1206 int rawValue = input.readEnum();
1208 useInactiveLns_ = rawValue;
1212 int rawValue = input.readEnum();
1214 useNodePairSwapActive_ = rawValue;
1218 int rawValue = input.readEnum();
1220 useRelocateAndMakeActive_ = rawValue;
1224 int rawValue = input.readEnum();
1226 useExchangePair_ = rawValue;
1230 int rawValue = input.readEnum();
1232 useRelocateExpensiveChain_ = rawValue;
1236 int rawValue = input.readEnum();
1238 useLightRelocatePair_ = rawValue;
1242 int rawValue = input.readEnum();
1244 useRelocateSubtrip_ = rawValue;
1248 int rawValue = input.readEnum();
1250 useExchangeSubtrip_ = rawValue;
1254 if (!parseUnknownField(
1255 input, unknownFields, extensionRegistry, tag)) {
1262 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
1263 throw e.setUnfinishedMessage(
this);
1264 }
catch (java.io.IOException e) {
1265 throw new com.
google.protobuf.InvalidProtocolBufferException(
1266 e).setUnfinishedMessage(
this);
1268 this.unknownFields = unknownFields.build();
1269 makeExtensionsImmutable();
1272 public static final com.
google.protobuf.Descriptors.Descriptor
1278 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
1281 .ensureFieldAccessorsInitialized(
1286 private int useRelocate_;
1303 return useRelocate_;
1321 @SuppressWarnings(
"deprecation")
1327 private int useRelocatePair_;
1344 return useRelocatePair_;
1362 @SuppressWarnings(
"deprecation")
1368 private int useLightRelocatePair_;
1383 return useLightRelocatePair_;
1399 @SuppressWarnings(
"deprecation")
1405 private int useRelocateNeighbors_;
1435 return useRelocateNeighbors_;
1466 @SuppressWarnings(
"deprecation")
1472 private int useRelocateSubtrip_;
1492 return useRelocateSubtrip_;
1513 @SuppressWarnings(
"deprecation")
1519 private int useExchange_;
1534 return useExchange_;
1550 @SuppressWarnings(
"deprecation")
1556 private int useExchangePair_;
1571 return useExchangePair_;
1587 @SuppressWarnings(
"deprecation")
1593 private int useExchangeSubtrip_;
1603 return useExchangeSubtrip_;
1614 @SuppressWarnings(
"deprecation")
1620 private int useCross_;
1655 @SuppressWarnings(
"deprecation")
1661 private int useCrossExchange_;
1670 return useCrossExchange_;
1680 @SuppressWarnings(
"deprecation")
1686 private int useRelocateExpensiveChain_;
1704 return useRelocateExpensiveChain_;
1723 @SuppressWarnings(
"deprecation")
1729 private int useTwoOpt_;
1766 @SuppressWarnings(
"deprecation")
1772 private int useOrOpt_;
1811 @SuppressWarnings(
"deprecation")
1817 private int useLinKernighan_;
1829 return useLinKernighan_;
1842 @SuppressWarnings(
"deprecation")
1848 private int useTspOpt_;
1877 @SuppressWarnings(
"deprecation")
1883 private int useMakeActive_;
1898 return useMakeActive_;
1914 @SuppressWarnings(
"deprecation")
1920 private int useRelocateAndMakeActive_;
1938 return useRelocateAndMakeActive_;
1957 @SuppressWarnings(
"deprecation")
1963 private int useMakeInactive_;
1976 return useMakeInactive_;
1990 @SuppressWarnings(
"deprecation")
1996 private int useMakeChainInactive_;
2010 return useMakeChainInactive_;
2025 @SuppressWarnings(
"deprecation")
2031 private int useSwapActive_;
2044 return useSwapActive_;
2058 @SuppressWarnings(
"deprecation")
2064 private int useExtendedSwapActive_;
2082 return useExtendedSwapActive_;
2101 @SuppressWarnings(
"deprecation")
2107 private int useNodePairSwapActive_;
2126 return useNodePairSwapActive_;
2146 @SuppressWarnings(
"deprecation")
2152 private int usePathLns_;
2185 @SuppressWarnings(
"deprecation")
2191 private int useFullPathLns_;
2200 return useFullPathLns_;
2210 @SuppressWarnings(
"deprecation")
2216 private int useTspLns_;
2245 @SuppressWarnings(
"deprecation")
2251 private int useInactiveLns_;
2262 return useInactiveLns_;
2274 @SuppressWarnings(
"deprecation")
2279 private byte memoizedIsInitialized = -1;
2286 memoizedIsInitialized = 1;
2292 throws java.io.IOException {
2294 output.writeEnum(1, useRelocate_);
2297 output.writeEnum(2, useRelocatePair_);
2300 output.writeEnum(3, useRelocateNeighbors_);
2303 output.writeEnum(4, useExchange_);
2306 output.writeEnum(5, useCross_);
2309 output.writeEnum(6, useCrossExchange_);
2312 output.writeEnum(7, useTwoOpt_);
2315 output.writeEnum(8, useOrOpt_);
2318 output.writeEnum(9, useLinKernighan_);
2321 output.writeEnum(10, useTspOpt_);
2324 output.writeEnum(11, useMakeActive_);
2327 output.writeEnum(12, useMakeInactive_);
2330 output.writeEnum(13, useMakeChainInactive_);
2333 output.writeEnum(14, useSwapActive_);
2336 output.writeEnum(15, useExtendedSwapActive_);
2339 output.writeEnum(16, usePathLns_);
2342 output.writeEnum(17, useFullPathLns_);
2345 output.writeEnum(18, useTspLns_);
2348 output.writeEnum(19, useInactiveLns_);
2351 output.writeEnum(20, useNodePairSwapActive_);
2354 output.writeEnum(21, useRelocateAndMakeActive_);
2357 output.writeEnum(22, useExchangePair_);
2360 output.writeEnum(23, useRelocateExpensiveChain_);
2363 output.writeEnum(24, useLightRelocatePair_);
2366 output.writeEnum(25, useRelocateSubtrip_);
2369 output.writeEnum(26, useExchangeSubtrip_);
2371 unknownFields.writeTo(output);
2376 int size = memoizedSize;
2377 if (size != -1)
return size;
2381 size +=
com.
google.protobuf.CodedOutputStream
2382 .computeEnumSize(1, useRelocate_);
2385 size +=
com.
google.protobuf.CodedOutputStream
2386 .computeEnumSize(2, useRelocatePair_);
2389 size +=
com.
google.protobuf.CodedOutputStream
2390 .computeEnumSize(3, useRelocateNeighbors_);
2393 size +=
com.
google.protobuf.CodedOutputStream
2394 .computeEnumSize(4, useExchange_);
2397 size +=
com.
google.protobuf.CodedOutputStream
2398 .computeEnumSize(5, useCross_);
2401 size +=
com.
google.protobuf.CodedOutputStream
2402 .computeEnumSize(6, useCrossExchange_);
2405 size +=
com.
google.protobuf.CodedOutputStream
2406 .computeEnumSize(7, useTwoOpt_);
2409 size +=
com.
google.protobuf.CodedOutputStream
2410 .computeEnumSize(8, useOrOpt_);
2413 size +=
com.
google.protobuf.CodedOutputStream
2414 .computeEnumSize(9, useLinKernighan_);
2417 size +=
com.
google.protobuf.CodedOutputStream
2418 .computeEnumSize(10, useTspOpt_);
2421 size +=
com.
google.protobuf.CodedOutputStream
2422 .computeEnumSize(11, useMakeActive_);
2425 size +=
com.
google.protobuf.CodedOutputStream
2426 .computeEnumSize(12, useMakeInactive_);
2429 size +=
com.
google.protobuf.CodedOutputStream
2430 .computeEnumSize(13, useMakeChainInactive_);
2433 size +=
com.
google.protobuf.CodedOutputStream
2434 .computeEnumSize(14, useSwapActive_);
2437 size +=
com.
google.protobuf.CodedOutputStream
2438 .computeEnumSize(15, useExtendedSwapActive_);
2441 size +=
com.
google.protobuf.CodedOutputStream
2442 .computeEnumSize(16, usePathLns_);
2445 size +=
com.
google.protobuf.CodedOutputStream
2446 .computeEnumSize(17, useFullPathLns_);
2449 size +=
com.
google.protobuf.CodedOutputStream
2450 .computeEnumSize(18, useTspLns_);
2453 size +=
com.
google.protobuf.CodedOutputStream
2454 .computeEnumSize(19, useInactiveLns_);
2457 size +=
com.
google.protobuf.CodedOutputStream
2458 .computeEnumSize(20, useNodePairSwapActive_);
2461 size +=
com.
google.protobuf.CodedOutputStream
2462 .computeEnumSize(21, useRelocateAndMakeActive_);
2465 size +=
com.
google.protobuf.CodedOutputStream
2466 .computeEnumSize(22, useExchangePair_);
2469 size +=
com.
google.protobuf.CodedOutputStream
2470 .computeEnumSize(23, useRelocateExpensiveChain_);
2473 size +=
com.
google.protobuf.CodedOutputStream
2474 .computeEnumSize(24, useLightRelocatePair_);
2477 size +=
com.
google.protobuf.CodedOutputStream
2478 .computeEnumSize(25, useRelocateSubtrip_);
2481 size +=
com.
google.protobuf.CodedOutputStream
2482 .computeEnumSize(26, useExchangeSubtrip_);
2484 size += unknownFields.getSerializedSize();
2485 memoizedSize = size;
2490 public boolean equals(
final java.lang.Object obj) {
2495 return super.equals(obj);
2499 if (useRelocate_ != other.useRelocate_)
return false;
2500 if (useRelocatePair_ != other.useRelocatePair_)
return false;
2501 if (useLightRelocatePair_ != other.useLightRelocatePair_)
return false;
2502 if (useRelocateNeighbors_ != other.useRelocateNeighbors_)
return false;
2503 if (useRelocateSubtrip_ != other.useRelocateSubtrip_)
return false;
2504 if (useExchange_ != other.useExchange_)
return false;
2505 if (useExchangePair_ != other.useExchangePair_)
return false;
2506 if (useExchangeSubtrip_ != other.useExchangeSubtrip_)
return false;
2507 if (useCross_ != other.useCross_)
return false;
2508 if (useCrossExchange_ != other.useCrossExchange_)
return false;
2509 if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_)
return false;
2510 if (useTwoOpt_ != other.useTwoOpt_)
return false;
2511 if (useOrOpt_ != other.useOrOpt_)
return false;
2512 if (useLinKernighan_ != other.useLinKernighan_)
return false;
2513 if (useTspOpt_ != other.useTspOpt_)
return false;
2514 if (useMakeActive_ != other.useMakeActive_)
return false;
2515 if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_)
return false;
2516 if (useMakeInactive_ != other.useMakeInactive_)
return false;
2517 if (useMakeChainInactive_ != other.useMakeChainInactive_)
return false;
2518 if (useSwapActive_ != other.useSwapActive_)
return false;
2519 if (useExtendedSwapActive_ != other.useExtendedSwapActive_)
return false;
2520 if (useNodePairSwapActive_ != other.useNodePairSwapActive_)
return false;
2521 if (usePathLns_ != other.usePathLns_)
return false;
2522 if (useFullPathLns_ != other.useFullPathLns_)
return false;
2523 if (useTspLns_ != other.useTspLns_)
return false;
2524 if (useInactiveLns_ != other.useInactiveLns_)
return false;
2525 if (!unknownFields.equals(other.unknownFields))
return false;
2531 if (memoizedHashCode != 0) {
2532 return memoizedHashCode;
2537 hash = (53 * hash) + useRelocate_;
2539 hash = (53 * hash) + useRelocatePair_;
2541 hash = (53 * hash) + useLightRelocatePair_;
2543 hash = (53 * hash) + useRelocateNeighbors_;
2545 hash = (53 * hash) + useRelocateSubtrip_;
2547 hash = (53 * hash) + useExchange_;
2549 hash = (53 * hash) + useExchangePair_;
2551 hash = (53 * hash) + useExchangeSubtrip_;
2553 hash = (53 * hash) + useCross_;
2555 hash = (53 * hash) + useCrossExchange_;
2557 hash = (53 * hash) + useRelocateExpensiveChain_;
2559 hash = (53 * hash) + useTwoOpt_;
2561 hash = (53 * hash) + useOrOpt_;
2563 hash = (53 * hash) + useLinKernighan_;
2565 hash = (53 * hash) + useTspOpt_;
2567 hash = (53 * hash) + useMakeActive_;
2569 hash = (53 * hash) + useRelocateAndMakeActive_;
2571 hash = (53 * hash) + useMakeInactive_;
2573 hash = (53 * hash) + useMakeChainInactive_;
2575 hash = (53 * hash) + useSwapActive_;
2577 hash = (53 * hash) + useExtendedSwapActive_;
2579 hash = (53 * hash) + useNodePairSwapActive_;
2581 hash = (53 * hash) + usePathLns_;
2583 hash = (53 * hash) + useFullPathLns_;
2585 hash = (53 * hash) + useTspLns_;
2587 hash = (53 * hash) + useInactiveLns_;
2588 hash = (29 * hash) + unknownFields.hashCode();
2589 memoizedHashCode = hash;
2594 java.nio.ByteBuffer data)
2595 throws com.
google.protobuf.InvalidProtocolBufferException {
2596 return PARSER.parseFrom(data);
2599 java.nio.ByteBuffer data,
2600 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2601 throws com.
google.protobuf.InvalidProtocolBufferException {
2602 return PARSER.parseFrom(data, extensionRegistry);
2606 throws com.
google.protobuf.InvalidProtocolBufferException {
2607 return PARSER.parseFrom(data);
2611 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2612 throws com.
google.protobuf.InvalidProtocolBufferException {
2613 return PARSER.parseFrom(data, extensionRegistry);
2616 throws com.
google.protobuf.InvalidProtocolBufferException {
2617 return PARSER.parseFrom(data);
2621 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2622 throws com.
google.protobuf.InvalidProtocolBufferException {
2623 return PARSER.parseFrom(data, extensionRegistry);
2626 throws java.io.IOException {
2627 return com.
google.protobuf.GeneratedMessageV3
2628 .parseWithIOException(PARSER, input);
2631 java.io.InputStream input,
2632 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2633 throws java.io.IOException {
2634 return com.
google.protobuf.GeneratedMessageV3
2635 .parseWithIOException(PARSER, input, extensionRegistry);
2638 throws java.io.IOException {
2639 return com.
google.protobuf.GeneratedMessageV3
2640 .parseDelimitedWithIOException(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 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2650 com.
google.protobuf.CodedInputStream input)
2651 throws java.io.IOException {
2652 return com.
google.protobuf.GeneratedMessageV3
2653 .parseWithIOException(PARSER, input);
2656 com.
google.protobuf.CodedInputStream input,
2657 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2658 throws java.io.IOException {
2659 return com.
google.protobuf.GeneratedMessageV3
2660 .parseWithIOException(PARSER, input, extensionRegistry);
2673 return this == DEFAULT_INSTANCE
2679 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2692 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
2695 public static final com.
google.protobuf.Descriptors.Descriptor
2701 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
2704 .ensureFieldAccessorsInitialized(
2710 maybeForceBuilderInitialization();
2714 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2716 maybeForceBuilderInitialization();
2718 private void maybeForceBuilderInitialization() {
2719 if (
com.
google.protobuf.GeneratedMessageV3
2720 .alwaysUseFieldBuilders) {
2728 useRelocatePair_ = 0;
2730 useLightRelocatePair_ = 0;
2732 useRelocateNeighbors_ = 0;
2734 useRelocateSubtrip_ = 0;
2738 useExchangePair_ = 0;
2740 useExchangeSubtrip_ = 0;
2744 useCrossExchange_ = 0;
2746 useRelocateExpensiveChain_ = 0;
2752 useLinKernighan_ = 0;
2758 useRelocateAndMakeActive_ = 0;
2760 useMakeInactive_ = 0;
2762 useMakeChainInactive_ = 0;
2766 useExtendedSwapActive_ = 0;
2768 useNodePairSwapActive_ = 0;
2772 useFullPathLns_ = 0;
2776 useInactiveLns_ = 0;
2782 public com.
google.protobuf.Descriptors.Descriptor
2795 if (!result.isInitialized()) {
2796 throw newUninitializedMessageException(result);
2804 result.useRelocate_ = useRelocate_;
2805 result.useRelocatePair_ = useRelocatePair_;
2806 result.useLightRelocatePair_ = useLightRelocatePair_;
2807 result.useRelocateNeighbors_ = useRelocateNeighbors_;
2808 result.useRelocateSubtrip_ = useRelocateSubtrip_;
2809 result.useExchange_ = useExchange_;
2810 result.useExchangePair_ = useExchangePair_;
2811 result.useExchangeSubtrip_ = useExchangeSubtrip_;
2812 result.useCross_ = useCross_;
2813 result.useCrossExchange_ = useCrossExchange_;
2814 result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
2815 result.useTwoOpt_ = useTwoOpt_;
2816 result.useOrOpt_ = useOrOpt_;
2817 result.useLinKernighan_ = useLinKernighan_;
2818 result.useTspOpt_ = useTspOpt_;
2819 result.useMakeActive_ = useMakeActive_;
2820 result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
2821 result.useMakeInactive_ = useMakeInactive_;
2822 result.useMakeChainInactive_ = useMakeChainInactive_;
2823 result.useSwapActive_ = useSwapActive_;
2824 result.useExtendedSwapActive_ = useExtendedSwapActive_;
2825 result.useNodePairSwapActive_ = useNodePairSwapActive_;
2826 result.usePathLns_ = usePathLns_;
2827 result.useFullPathLns_ = useFullPathLns_;
2828 result.useTspLns_ = useTspLns_;
2829 result.useInactiveLns_ = useInactiveLns_;
2836 return super.
clone();
2840 com.
google.protobuf.Descriptors.FieldDescriptor field,
2841 java.lang.Object value) {
2842 return super.
setField(field, value);
2846 com.
google.protobuf.Descriptors.FieldDescriptor field) {
2851 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
2856 com.
google.protobuf.Descriptors.FieldDescriptor field,
2857 int index, java.lang.Object value) {
2862 com.
google.protobuf.Descriptors.FieldDescriptor field,
2863 java.lang.Object value) {
2871 super.mergeFrom(other);
2878 if (other.useRelocate_ != 0) {
2881 if (other.useRelocatePair_ != 0) {
2884 if (other.useLightRelocatePair_ != 0) {
2887 if (other.useRelocateNeighbors_ != 0) {
2890 if (other.useRelocateSubtrip_ != 0) {
2893 if (other.useExchange_ != 0) {
2896 if (other.useExchangePair_ != 0) {
2899 if (other.useExchangeSubtrip_ != 0) {
2902 if (other.useCross_ != 0) {
2905 if (other.useCrossExchange_ != 0) {
2908 if (other.useRelocateExpensiveChain_ != 0) {
2911 if (other.useTwoOpt_ != 0) {
2914 if (other.useOrOpt_ != 0) {
2917 if (other.useLinKernighan_ != 0) {
2920 if (other.useTspOpt_ != 0) {
2923 if (other.useMakeActive_ != 0) {
2926 if (other.useRelocateAndMakeActive_ != 0) {
2929 if (other.useMakeInactive_ != 0) {
2932 if (other.useMakeChainInactive_ != 0) {
2935 if (other.useSwapActive_ != 0) {
2938 if (other.useExtendedSwapActive_ != 0) {
2941 if (other.useNodePairSwapActive_ != 0) {
2944 if (other.usePathLns_ != 0) {
2947 if (other.useFullPathLns_ != 0) {
2950 if (other.useTspLns_ != 0) {
2953 if (other.useInactiveLns_ != 0) {
2968 com.
google.protobuf.CodedInputStream input,
2969 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
2970 throws java.io.IOException {
2973 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2974 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
2976 throw e.unwrapIOException();
2978 if (parsedMessage !=
null) {
2985 private int useRelocate_ = 0;
3002 return useRelocate_;
3020 useRelocate_ = value;
3040 @SuppressWarnings(
"deprecation")
3060 if (value ==
null) {
3061 throw new NullPointerException();
3064 useRelocate_ = value.getNumber();
3090 private int useRelocatePair_ = 0;
3107 return useRelocatePair_;
3125 useRelocatePair_ = value;
3145 @SuppressWarnings(
"deprecation")
3165 if (value ==
null) {
3166 throw new NullPointerException();
3169 useRelocatePair_ = value.getNumber();
3190 useRelocatePair_ = 0;
3195 private int useLightRelocatePair_ = 0;
3210 return useLightRelocatePair_;
3226 useLightRelocatePair_ = value;
3244 @SuppressWarnings(
"deprecation")
3262 if (value ==
null) {
3263 throw new NullPointerException();
3266 useLightRelocatePair_ = value.getNumber();
3285 useLightRelocatePair_ = 0;
3290 private int useRelocateNeighbors_ = 0;
3320 return useRelocateNeighbors_;
3351 useRelocateNeighbors_ = value;
3384 @SuppressWarnings(
"deprecation")
3417 if (value ==
null) {
3418 throw new NullPointerException();
3421 useRelocateNeighbors_ = value.getNumber();
3455 useRelocateNeighbors_ = 0;
3460 private int useRelocateSubtrip_ = 0;
3480 return useRelocateSubtrip_;
3501 useRelocateSubtrip_ = value;
3524 @SuppressWarnings(
"deprecation")
3547 if (value ==
null) {
3548 throw new NullPointerException();
3551 useRelocateSubtrip_ = value.getNumber();
3575 useRelocateSubtrip_ = 0;
3580 private int useExchange_ = 0;
3595 return useExchange_;
3611 useExchange_ = value;
3629 @SuppressWarnings(
"deprecation")
3647 if (value ==
null) {
3648 throw new NullPointerException();
3651 useExchange_ = value.getNumber();
3675 private int useExchangePair_ = 0;
3690 return useExchangePair_;
3706 useExchangePair_ = value;
3724 @SuppressWarnings(
"deprecation")
3742 if (value ==
null) {
3743 throw new NullPointerException();
3746 useExchangePair_ = value.getNumber();
3765 useExchangePair_ = 0;
3770 private int useExchangeSubtrip_ = 0;
3780 return useExchangeSubtrip_;
3791 useExchangeSubtrip_ = value;
3804 @SuppressWarnings(
"deprecation")
3817 if (value ==
null) {
3818 throw new NullPointerException();
3821 useExchangeSubtrip_ = value.getNumber();
3835 useExchangeSubtrip_ = 0;
3840 private int useCross_ = 0;
3895 @SuppressWarnings(
"deprecation")
3915 if (value ==
null) {
3916 throw new NullPointerException();
3919 useCross_ = value.getNumber();
3945 private int useCrossExchange_ = 0;
3954 return useCrossExchange_;
3964 useCrossExchange_ = value;
3976 @SuppressWarnings(
"deprecation")
3988 if (value ==
null) {
3989 throw new NullPointerException();
3992 useCrossExchange_ = value.getNumber();
4005 useCrossExchange_ = 0;
4010 private int useRelocateExpensiveChain_ = 0;
4028 return useRelocateExpensiveChain_;
4047 useRelocateExpensiveChain_ = value;
4068 @SuppressWarnings(
"deprecation")
4089 if (value ==
null) {
4090 throw new NullPointerException();
4093 useRelocateExpensiveChain_ = value.getNumber();
4115 useRelocateExpensiveChain_ = 0;
4120 private int useTwoOpt_ = 0;
4178 @SuppressWarnings(
"deprecation")
4199 if (value ==
null) {
4200 throw new NullPointerException();
4203 useTwoOpt_ = value.getNumber();
4230 private int useOrOpt_ = 0;
4291 @SuppressWarnings(
"deprecation")
4313 if (value ==
null) {
4314 throw new NullPointerException();
4317 useOrOpt_ = value.getNumber();
4345 private int useLinKernighan_ = 0;
4357 return useLinKernighan_;
4370 useLinKernighan_ = value;
4385 @SuppressWarnings(
"deprecation")
4400 if (value ==
null) {
4401 throw new NullPointerException();
4404 useLinKernighan_ = value.getNumber();
4420 useLinKernighan_ = 0;
4425 private int useTspOpt_ = 0;
4471 @SuppressWarnings(
"deprecation")
4488 if (value ==
null) {
4489 throw new NullPointerException();
4492 useTspOpt_ = value.getNumber();
4515 private int useMakeActive_ = 0;
4530 return useMakeActive_;
4546 useMakeActive_ = value;
4564 @SuppressWarnings(
"deprecation")
4582 if (value ==
null) {
4583 throw new NullPointerException();
4586 useMakeActive_ = value.getNumber();
4610 private int useRelocateAndMakeActive_ = 0;
4628 return useRelocateAndMakeActive_;
4647 useRelocateAndMakeActive_ = value;
4668 @SuppressWarnings(
"deprecation")
4689 if (value ==
null) {
4690 throw new NullPointerException();
4693 useRelocateAndMakeActive_ = value.getNumber();
4715 useRelocateAndMakeActive_ = 0;
4720 private int useMakeInactive_ = 0;
4733 return useMakeInactive_;
4747 useMakeInactive_ = value;
4763 @SuppressWarnings(
"deprecation")
4779 if (value ==
null) {
4780 throw new NullPointerException();
4783 useMakeInactive_ = value.getNumber();
4800 useMakeInactive_ = 0;
4805 private int useMakeChainInactive_ = 0;
4819 return useMakeChainInactive_;
4834 useMakeChainInactive_ = value;
4851 @SuppressWarnings(
"deprecation")
4868 if (value ==
null) {
4869 throw new NullPointerException();
4872 useMakeChainInactive_ = value.getNumber();
4890 useMakeChainInactive_ = 0;
4895 private int useSwapActive_ = 0;
4908 return useSwapActive_;
4922 useSwapActive_ = value;
4938 @SuppressWarnings(
"deprecation")
4954 if (value ==
null) {
4955 throw new NullPointerException();
4958 useSwapActive_ = value.getNumber();
4980 private int useExtendedSwapActive_ = 0;
4998 return useExtendedSwapActive_;
5017 useExtendedSwapActive_ = value;
5038 @SuppressWarnings(
"deprecation")
5059 if (value ==
null) {
5060 throw new NullPointerException();
5063 useExtendedSwapActive_ = value.getNumber();
5085 useExtendedSwapActive_ = 0;
5090 private int useNodePairSwapActive_ = 0;
5109 return useNodePairSwapActive_;
5129 useNodePairSwapActive_ = value;
5151 @SuppressWarnings(
"deprecation")
5173 if (value ==
null) {
5174 throw new NullPointerException();
5177 useNodePairSwapActive_ = value.getNumber();
5200 useNodePairSwapActive_ = 0;
5205 private int usePathLns_ = 0;
5238 usePathLns_ = value;
5257 @SuppressWarnings(
"deprecation")
5276 if (value ==
null) {
5277 throw new NullPointerException();
5280 usePathLns_ = value.getNumber();
5305 private int useFullPathLns_ = 0;
5314 return useFullPathLns_;
5324 useFullPathLns_ = value;
5336 @SuppressWarnings(
"deprecation")
5348 if (value ==
null) {
5349 throw new NullPointerException();
5352 useFullPathLns_ = value.getNumber();
5365 useFullPathLns_ = 0;
5370 private int useTspLns_ = 0;
5416 @SuppressWarnings(
"deprecation")
5433 if (value ==
null) {
5434 throw new NullPointerException();
5437 useTspLns_ = value.getNumber();
5460 private int useInactiveLns_ = 0;
5471 return useInactiveLns_;
5483 useInactiveLns_ = value;
5497 @SuppressWarnings(
"deprecation")
5511 if (value ==
null) {
5512 throw new NullPointerException();
5515 useInactiveLns_ = value.getNumber();
5530 useInactiveLns_ = 0;
5536 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5542 final com.
google.protobuf.UnknownFieldSet unknownFields) {
5557 return DEFAULT_INSTANCE;
5564 com.
google.protobuf.CodedInputStream input,
5565 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
5566 throws com.
google.protobuf.InvalidProtocolBufferException {
5582 return DEFAULT_INSTANCE;
5588 private int firstSolutionStrategy_;
5597 return firstSolutionStrategy_;
5607 @SuppressWarnings(
"deprecation")
5613 private boolean useUnfilteredFirstSolutionStrategy_;
5624 return useUnfilteredFirstSolutionStrategy_;
5628 private double savingsNeighborsRatio_;
5639 return savingsNeighborsRatio_;
5643 private double savingsMaxMemoryUsageBytes_;
5657 return savingsMaxMemoryUsageBytes_;
5661 private boolean savingsAddReverseArcs_;
5671 return savingsAddReverseArcs_;
5675 private double savingsArcCoefficient_;
5688 return savingsArcCoefficient_;
5692 private boolean savingsParallelRoutes_;
5701 return savingsParallelRoutes_;
5705 private double cheapestInsertionFarthestSeedsRatio_;
5716 return cheapestInsertionFarthestSeedsRatio_;
5720 private double cheapestInsertionNeighborsRatio_;
5732 return cheapestInsertionNeighborsRatio_;
5741 return localSearchOperators_ !=
null;
5757 private int relocateExpensiveChainNumArcsToConsider_;
5772 return relocateExpensiveChainNumArcsToConsider_;
5776 private int localSearchMetaheuristic_;
5785 return localSearchMetaheuristic_;
5795 @SuppressWarnings(
"deprecation")
5801 private double guidedLocalSearchLambdaCoefficient_;
5813 return guidedLocalSearchLambdaCoefficient_;
5817 private boolean useDepthFirstSearch_;
5828 return useDepthFirstSearch_;
5855 @SuppressWarnings(
"deprecation")
5861 private int useCpSat_;
5886 @SuppressWarnings(
"deprecation")
5892 private double optimizationStep_;
5903 return optimizationStep_;
5907 private int numberOfSolutionsToCollect_;
5917 return numberOfSolutionsToCollect_;
5921 private long solutionLimit_;
5932 return solutionLimit_;
5936 private com.
google.protobuf.Duration timeLimit_;
5945 return timeLimit_ !=
null;
5955 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
5969 private com.
google.protobuf.Duration lnsTimeLimit_;
5979 return lnsTimeLimit_ !=
null;
5990 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
6005 private boolean useFullPropagation_;
6022 return useFullPropagation_;
6026 private boolean logSearch_;
6050 private double logCostScalingFactor_;
6059 return logCostScalingFactor_;
6062 private byte memoizedIsInitialized = -1;
6069 memoizedIsInitialized = 1;
6075 throws java.io.IOException {
6077 output.writeEnum(1, firstSolutionStrategy_);
6079 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6080 output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
6082 if (localSearchOperators_ !=
null) {
6086 output.writeEnum(4, localSearchMetaheuristic_);
6088 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6089 output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
6091 if (useDepthFirstSearch_ !=
false) {
6092 output.writeBool(6, useDepthFirstSearch_);
6094 if (optimizationStep_ != 0D) {
6095 output.writeDouble(7, optimizationStep_);
6097 if (solutionLimit_ != 0L) {
6098 output.writeInt64(8, solutionLimit_);
6100 if (timeLimit_ !=
null) {
6103 if (lnsTimeLimit_ !=
null) {
6106 if (useFullPropagation_ !=
false) {
6107 output.writeBool(11, useFullPropagation_);
6109 if (logSearch_ !=
false) {
6110 output.writeBool(13, logSearch_);
6112 if (savingsNeighborsRatio_ != 0D) {
6113 output.writeDouble(14, savingsNeighborsRatio_);
6115 if (savingsAddReverseArcs_ !=
false) {
6116 output.writeBool(15, savingsAddReverseArcs_);
6118 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6119 output.writeDouble(16, cheapestInsertionFarthestSeedsRatio_);
6121 if (numberOfSolutionsToCollect_ != 0) {
6122 output.writeInt32(17, numberOfSolutionsToCollect_);
6124 if (savingsArcCoefficient_ != 0D) {
6125 output.writeDouble(18, savingsArcCoefficient_);
6127 if (savingsParallelRoutes_ !=
false) {
6128 output.writeBool(19, savingsParallelRoutes_);
6130 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6131 output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
6133 if (cheapestInsertionNeighborsRatio_ != 0D) {
6134 output.writeDouble(21, cheapestInsertionNeighborsRatio_);
6136 if (logCostScalingFactor_ != 0D) {
6137 output.writeDouble(22, logCostScalingFactor_);
6139 if (savingsMaxMemoryUsageBytes_ != 0D) {
6140 output.writeDouble(23, savingsMaxMemoryUsageBytes_);
6143 output.writeEnum(27, useCpSat_);
6146 output.writeEnum(28, useCp_);
6148 unknownFields.writeTo(output);
6153 int size = memoizedSize;
6154 if (size != -1)
return size;
6158 size +=
com.
google.protobuf.CodedOutputStream
6159 .computeEnumSize(1, firstSolutionStrategy_);
6161 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
6162 size +=
com.
google.protobuf.CodedOutputStream
6163 .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
6165 if (localSearchOperators_ !=
null) {
6166 size +=
com.
google.protobuf.CodedOutputStream
6170 size +=
com.
google.protobuf.CodedOutputStream
6171 .computeEnumSize(4, localSearchMetaheuristic_);
6173 if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6174 size +=
com.
google.protobuf.CodedOutputStream
6175 .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
6177 if (useDepthFirstSearch_ !=
false) {
6178 size +=
com.
google.protobuf.CodedOutputStream
6179 .computeBoolSize(6, useDepthFirstSearch_);
6181 if (optimizationStep_ != 0D) {
6182 size +=
com.
google.protobuf.CodedOutputStream
6183 .computeDoubleSize(7, optimizationStep_);
6185 if (solutionLimit_ != 0L) {
6186 size +=
com.
google.protobuf.CodedOutputStream
6187 .computeInt64Size(8, solutionLimit_);
6189 if (timeLimit_ !=
null) {
6190 size +=
com.
google.protobuf.CodedOutputStream
6193 if (lnsTimeLimit_ !=
null) {
6194 size +=
com.
google.protobuf.CodedOutputStream
6197 if (useFullPropagation_ !=
false) {
6198 size +=
com.
google.protobuf.CodedOutputStream
6199 .computeBoolSize(11, useFullPropagation_);
6201 if (logSearch_ !=
false) {
6202 size +=
com.
google.protobuf.CodedOutputStream
6203 .computeBoolSize(13, logSearch_);
6205 if (savingsNeighborsRatio_ != 0D) {
6206 size +=
com.
google.protobuf.CodedOutputStream
6207 .computeDoubleSize(14, savingsNeighborsRatio_);
6209 if (savingsAddReverseArcs_ !=
false) {
6210 size +=
com.
google.protobuf.CodedOutputStream
6211 .computeBoolSize(15, savingsAddReverseArcs_);
6213 if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6214 size +=
com.
google.protobuf.CodedOutputStream
6215 .computeDoubleSize(16, cheapestInsertionFarthestSeedsRatio_);
6217 if (numberOfSolutionsToCollect_ != 0) {
6218 size +=
com.
google.protobuf.CodedOutputStream
6219 .computeInt32Size(17, numberOfSolutionsToCollect_);
6221 if (savingsArcCoefficient_ != 0D) {
6222 size +=
com.
google.protobuf.CodedOutputStream
6223 .computeDoubleSize(18, savingsArcCoefficient_);
6225 if (savingsParallelRoutes_ !=
false) {
6226 size +=
com.
google.protobuf.CodedOutputStream
6227 .computeBoolSize(19, savingsParallelRoutes_);
6229 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6230 size +=
com.
google.protobuf.CodedOutputStream
6231 .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
6233 if (cheapestInsertionNeighborsRatio_ != 0D) {
6234 size +=
com.
google.protobuf.CodedOutputStream
6235 .computeDoubleSize(21, cheapestInsertionNeighborsRatio_);
6237 if (logCostScalingFactor_ != 0D) {
6238 size +=
com.
google.protobuf.CodedOutputStream
6239 .computeDoubleSize(22, logCostScalingFactor_);
6241 if (savingsMaxMemoryUsageBytes_ != 0D) {
6242 size +=
com.
google.protobuf.CodedOutputStream
6243 .computeDoubleSize(23, savingsMaxMemoryUsageBytes_);
6246 size +=
com.
google.protobuf.CodedOutputStream
6247 .computeEnumSize(27, useCpSat_);
6250 size +=
com.
google.protobuf.CodedOutputStream
6251 .computeEnumSize(28, useCp_);
6253 size += unknownFields.getSerializedSize();
6254 memoizedSize = size;
6259 public boolean equals(
final java.lang.Object obj) {
6264 return super.equals(obj);
6268 if (firstSolutionStrategy_ != other.firstSolutionStrategy_)
return false;
6270 != other.getUseUnfilteredFirstSolutionStrategy())
return false;
6272 != java.lang.Double.doubleToLongBits(
6273 other.getSavingsNeighborsRatio()))
return false;
6275 != java.lang.Double.doubleToLongBits(
6276 other.getSavingsMaxMemoryUsageBytes()))
return false;
6278 != other.getSavingsAddReverseArcs())
return false;
6280 != java.lang.Double.doubleToLongBits(
6281 other.getSavingsArcCoefficient()))
return false;
6283 != other.getSavingsParallelRoutes())
return false;
6285 != java.lang.Double.doubleToLongBits(
6286 other.getCheapestInsertionFarthestSeedsRatio()))
return false;
6288 != java.lang.Double.doubleToLongBits(
6289 other.getCheapestInsertionNeighborsRatio()))
return false;
6293 .
equals(other.getLocalSearchOperators()))
return false;
6296 != other.getRelocateExpensiveChainNumArcsToConsider())
return false;
6297 if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_)
return false;
6299 != java.lang.Double.doubleToLongBits(
6300 other.getGuidedLocalSearchLambdaCoefficient()))
return false;
6302 != other.getUseDepthFirstSearch())
return false;
6303 if (useCp_ != other.useCp_)
return false;
6304 if (useCpSat_ != other.useCpSat_)
return false;
6306 != java.lang.Double.doubleToLongBits(
6307 other.getOptimizationStep()))
return false;
6309 != other.getNumberOfSolutionsToCollect())
return false;
6311 != other.getSolutionLimit())
return false;
6312 if (
hasTimeLimit() != other.hasTimeLimit())
return false;
6315 .equals(other.getTimeLimit()))
return false;
6320 .equals(other.getLnsTimeLimit()))
return false;
6323 != other.getUseFullPropagation())
return false;
6325 != other.getLogSearch())
return false;
6327 != java.lang.Double.doubleToLongBits(
6328 other.getLogCostScalingFactor()))
return false;
6329 if (!unknownFields.equals(other.unknownFields))
return false;
6335 if (memoizedHashCode != 0) {
6336 return memoizedHashCode;
6341 hash = (53 * hash) + firstSolutionStrategy_;
6343 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6346 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6349 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6352 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6355 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6358 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6361 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6364 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6373 hash = (53 * hash) + localSearchMetaheuristic_;
6375 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6378 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6381 hash = (53 * hash) + useCp_;
6383 hash = (53 * hash) + useCpSat_;
6385 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6390 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6401 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6404 hash = (53 * hash) +
com.
google.protobuf.Internal.hashBoolean(
6407 hash = (53 * hash) +
com.
google.protobuf.Internal.hashLong(
6409 hash = (29 * hash) + unknownFields.hashCode();
6410 memoizedHashCode = hash;
6415 java.nio.ByteBuffer data)
6416 throws com.
google.protobuf.InvalidProtocolBufferException {
6417 return PARSER.parseFrom(data);
6420 java.nio.ByteBuffer data,
6421 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6422 throws com.
google.protobuf.InvalidProtocolBufferException {
6423 return PARSER.parseFrom(data, extensionRegistry);
6427 throws com.
google.protobuf.InvalidProtocolBufferException {
6428 return PARSER.parseFrom(data);
6432 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6433 throws com.
google.protobuf.InvalidProtocolBufferException {
6434 return PARSER.parseFrom(data, extensionRegistry);
6437 throws com.
google.protobuf.InvalidProtocolBufferException {
6438 return PARSER.parseFrom(data);
6442 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6443 throws com.
google.protobuf.InvalidProtocolBufferException {
6444 return PARSER.parseFrom(data, extensionRegistry);
6447 throws java.io.IOException {
6448 return com.
google.protobuf.GeneratedMessageV3
6449 .parseWithIOException(PARSER, input);
6452 java.io.InputStream input,
6453 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6454 throws java.io.IOException {
6455 return com.
google.protobuf.GeneratedMessageV3
6456 .parseWithIOException(PARSER, input, extensionRegistry);
6459 throws java.io.IOException {
6460 return com.
google.protobuf.GeneratedMessageV3
6461 .parseDelimitedWithIOException(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 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
6471 com.
google.protobuf.CodedInputStream input)
6472 throws java.io.IOException {
6473 return com.
google.protobuf.GeneratedMessageV3
6474 .parseWithIOException(PARSER, input);
6477 com.
google.protobuf.CodedInputStream input,
6478 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6479 throws java.io.IOException {
6480 return com.
google.protobuf.GeneratedMessageV3
6481 .parseWithIOException(PARSER, input, extensionRegistry);
6494 return this == DEFAULT_INSTANCE
6500 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6516 com.google.protobuf.GeneratedMessageV3.
Builder<Builder> implements
6519 public static final com.
google.protobuf.Descriptors.Descriptor
6525 protected com.
google.protobuf.GeneratedMessageV3.FieldAccessorTable
6528 .ensureFieldAccessorsInitialized(
6534 maybeForceBuilderInitialization();
6538 com.
google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6540 maybeForceBuilderInitialization();
6542 private void maybeForceBuilderInitialization() {
6543 if (
com.
google.protobuf.GeneratedMessageV3
6544 .alwaysUseFieldBuilders) {
6550 firstSolutionStrategy_ = 0;
6552 useUnfilteredFirstSolutionStrategy_ =
false;
6554 savingsNeighborsRatio_ = 0D;
6556 savingsMaxMemoryUsageBytes_ = 0D;
6558 savingsAddReverseArcs_ =
false;
6560 savingsArcCoefficient_ = 0D;
6562 savingsParallelRoutes_ =
false;
6564 cheapestInsertionFarthestSeedsRatio_ = 0D;
6566 cheapestInsertionNeighborsRatio_ = 0D;
6568 if (localSearchOperatorsBuilder_ ==
null) {
6569 localSearchOperators_ =
null;
6571 localSearchOperators_ =
null;
6572 localSearchOperatorsBuilder_ =
null;
6574 relocateExpensiveChainNumArcsToConsider_ = 0;
6576 localSearchMetaheuristic_ = 0;
6578 guidedLocalSearchLambdaCoefficient_ = 0D;
6580 useDepthFirstSearch_ =
false;
6586 optimizationStep_ = 0D;
6588 numberOfSolutionsToCollect_ = 0;
6590 solutionLimit_ = 0L;
6592 if (timeLimitBuilder_ ==
null) {
6596 timeLimitBuilder_ =
null;
6598 if (lnsTimeLimitBuilder_ ==
null) {
6599 lnsTimeLimit_ =
null;
6601 lnsTimeLimit_ =
null;
6602 lnsTimeLimitBuilder_ =
null;
6604 useFullPropagation_ =
false;
6608 logCostScalingFactor_ = 0D;
6614 public com.
google.protobuf.Descriptors.Descriptor
6627 if (!result.isInitialized()) {
6628 throw newUninitializedMessageException(result);
6636 result.firstSolutionStrategy_ = firstSolutionStrategy_;
6637 result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
6638 result.savingsNeighborsRatio_ = savingsNeighborsRatio_;
6639 result.savingsMaxMemoryUsageBytes_ = savingsMaxMemoryUsageBytes_;
6640 result.savingsAddReverseArcs_ = savingsAddReverseArcs_;
6641 result.savingsArcCoefficient_ = savingsArcCoefficient_;
6642 result.savingsParallelRoutes_ = savingsParallelRoutes_;
6643 result.cheapestInsertionFarthestSeedsRatio_ = cheapestInsertionFarthestSeedsRatio_;
6644 result.cheapestInsertionNeighborsRatio_ = cheapestInsertionNeighborsRatio_;
6645 if (localSearchOperatorsBuilder_ ==
null) {
6646 result.localSearchOperators_ = localSearchOperators_;
6648 result.localSearchOperators_ = localSearchOperatorsBuilder_.build();
6650 result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
6651 result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
6652 result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
6653 result.useDepthFirstSearch_ = useDepthFirstSearch_;
6654 result.useCp_ = useCp_;
6655 result.useCpSat_ = useCpSat_;
6656 result.optimizationStep_ = optimizationStep_;
6657 result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
6658 result.solutionLimit_ = solutionLimit_;
6659 if (timeLimitBuilder_ ==
null) {
6660 result.timeLimit_ = timeLimit_;
6662 result.timeLimit_ = timeLimitBuilder_.build();
6664 if (lnsTimeLimitBuilder_ ==
null) {
6665 result.lnsTimeLimit_ = lnsTimeLimit_;
6667 result.lnsTimeLimit_ = lnsTimeLimitBuilder_.build();
6669 result.useFullPropagation_ = useFullPropagation_;
6670 result.logSearch_ = logSearch_;
6671 result.logCostScalingFactor_ = logCostScalingFactor_;
6678 return super.
clone();
6682 com.
google.protobuf.Descriptors.FieldDescriptor field,
6683 java.lang.Object value) {
6684 return super.
setField(field, value);
6688 com.
google.protobuf.Descriptors.FieldDescriptor field) {
6693 com.
google.protobuf.Descriptors.OneofDescriptor oneof) {
6698 com.
google.protobuf.Descriptors.FieldDescriptor field,
6699 int index, java.lang.Object value) {
6704 com.
google.protobuf.Descriptors.FieldDescriptor field,
6705 java.lang.Object value) {
6713 super.mergeFrom(other);
6720 if (other.firstSolutionStrategy_ != 0) {
6723 if (other.getUseUnfilteredFirstSolutionStrategy() !=
false) {
6726 if (other.getSavingsNeighborsRatio() != 0D) {
6729 if (other.getSavingsMaxMemoryUsageBytes() != 0D) {
6732 if (other.getSavingsAddReverseArcs() !=
false) {
6735 if (other.getSavingsArcCoefficient() != 0D) {
6738 if (other.getSavingsParallelRoutes() !=
false) {
6741 if (other.getCheapestInsertionFarthestSeedsRatio() != 0D) {
6744 if (other.getCheapestInsertionNeighborsRatio() != 0D) {
6747 if (other.hasLocalSearchOperators()) {
6750 if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
6753 if (other.localSearchMetaheuristic_ != 0) {
6756 if (other.getGuidedLocalSearchLambdaCoefficient() != 0D) {
6759 if (other.getUseDepthFirstSearch() !=
false) {
6762 if (other.useCp_ != 0) {
6765 if (other.useCpSat_ != 0) {
6768 if (other.getOptimizationStep() != 0D) {
6771 if (other.getNumberOfSolutionsToCollect() != 0) {
6774 if (other.getSolutionLimit() != 0L) {
6777 if (other.hasTimeLimit()) {
6780 if (other.hasLnsTimeLimit()) {
6783 if (other.getUseFullPropagation() !=
false) {
6786 if (other.getLogSearch() !=
false) {
6789 if (other.getLogCostScalingFactor() != 0D) {
6804 com.
google.protobuf.CodedInputStream input,
6805 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
6806 throws java.io.IOException {
6809 parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
6810 }
catch (
com.
google.protobuf.InvalidProtocolBufferException e) {
6812 throw e.unwrapIOException();
6814 if (parsedMessage !=
null) {
6821 private int firstSolutionStrategy_ = 0;
6830 return firstSolutionStrategy_;
6840 firstSolutionStrategy_ = value;
6852 @SuppressWarnings(
"deprecation")
6864 if (value ==
null) {
6865 throw new NullPointerException();
6868 firstSolutionStrategy_ = value.getNumber();
6881 firstSolutionStrategy_ = 0;
6886 private boolean useUnfilteredFirstSolutionStrategy_ ;
6897 return useUnfilteredFirstSolutionStrategy_;
6910 useUnfilteredFirstSolutionStrategy_ = value;
6925 useUnfilteredFirstSolutionStrategy_ =
false;
6930 private double savingsNeighborsRatio_ ;
6941 return savingsNeighborsRatio_;
6954 savingsNeighborsRatio_ = value;
6969 savingsNeighborsRatio_ = 0D;
6974 private double savingsMaxMemoryUsageBytes_ ;
6988 return savingsMaxMemoryUsageBytes_;
7004 savingsMaxMemoryUsageBytes_ = value;
7022 savingsMaxMemoryUsageBytes_ = 0D;
7027 private boolean savingsAddReverseArcs_ ;
7037 return savingsAddReverseArcs_;
7049 savingsAddReverseArcs_ = value;
7063 savingsAddReverseArcs_ =
false;
7068 private double savingsArcCoefficient_ ;
7081 return savingsArcCoefficient_;
7096 savingsArcCoefficient_ = value;
7113 savingsArcCoefficient_ = 0D;
7118 private boolean savingsParallelRoutes_ ;
7127 return savingsParallelRoutes_;
7138 savingsParallelRoutes_ = value;
7151 savingsParallelRoutes_ =
false;
7156 private double cheapestInsertionFarthestSeedsRatio_ ;
7167 return cheapestInsertionFarthestSeedsRatio_;
7180 cheapestInsertionFarthestSeedsRatio_ = value;
7195 cheapestInsertionFarthestSeedsRatio_ = 0D;
7200 private double cheapestInsertionNeighborsRatio_ ;
7212 return cheapestInsertionNeighborsRatio_;
7226 cheapestInsertionNeighborsRatio_ = value;
7242 cheapestInsertionNeighborsRatio_ = 0D;
7248 private com.
google.protobuf.SingleFieldBuilderV3<
7254 return localSearchOperatorsBuilder_ !=
null || localSearchOperators_ !=
null;
7260 if (localSearchOperatorsBuilder_ ==
null) {
7263 return localSearchOperatorsBuilder_.getMessage();
7270 if (localSearchOperatorsBuilder_ ==
null) {
7271 if (value ==
null) {
7272 throw new NullPointerException();
7274 localSearchOperators_ = value;
7277 localSearchOperatorsBuilder_.setMessage(value);
7287 if (localSearchOperatorsBuilder_ ==
null) {
7288 localSearchOperators_ = builderForValue.build();
7291 localSearchOperatorsBuilder_.setMessage(builderForValue.build());
7300 if (localSearchOperatorsBuilder_ ==
null) {
7301 if (localSearchOperators_ !=
null) {
7302 localSearchOperators_ =
7305 localSearchOperators_ = value;
7309 localSearchOperatorsBuilder_.mergeFrom(value);
7318 if (localSearchOperatorsBuilder_ ==
null) {
7319 localSearchOperators_ =
null;
7322 localSearchOperators_ =
null;
7323 localSearchOperatorsBuilder_ =
null;
7334 return getLocalSearchOperatorsFieldBuilder().getBuilder();
7340 if (localSearchOperatorsBuilder_ !=
null) {
7341 return localSearchOperatorsBuilder_.getMessageOrBuilder();
7343 return localSearchOperators_ ==
null ?
7350 private com.
google.protobuf.SingleFieldBuilderV3<
7352 getLocalSearchOperatorsFieldBuilder() {
7353 if (localSearchOperatorsBuilder_ ==
null) {
7354 localSearchOperatorsBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
7357 getParentForChildren(),
7359 localSearchOperators_ =
null;
7361 return localSearchOperatorsBuilder_;
7364 private int relocateExpensiveChainNumArcsToConsider_ ;
7379 return relocateExpensiveChainNumArcsToConsider_;
7396 relocateExpensiveChainNumArcsToConsider_ = value;
7415 relocateExpensiveChainNumArcsToConsider_ = 0;
7420 private int localSearchMetaheuristic_ = 0;
7429 return localSearchMetaheuristic_;
7439 localSearchMetaheuristic_ = value;
7451 @SuppressWarnings(
"deprecation")
7463 if (value ==
null) {
7464 throw new NullPointerException();
7467 localSearchMetaheuristic_ = value.getNumber();
7480 localSearchMetaheuristic_ = 0;
7485 private double guidedLocalSearchLambdaCoefficient_ ;
7497 return guidedLocalSearchLambdaCoefficient_;
7511 guidedLocalSearchLambdaCoefficient_ = value;
7527 guidedLocalSearchLambdaCoefficient_ = 0D;
7532 private boolean useDepthFirstSearch_ ;
7543 return useDepthFirstSearch_;
7556 useDepthFirstSearch_ = value;
7571 useDepthFirstSearch_ =
false;
7576 private int useCp_ = 0;
7613 @SuppressWarnings(
"deprecation")
7627 if (value ==
null) {
7628 throw new NullPointerException();
7631 useCp_ = value.getNumber();
7651 private int useCpSat_ = 0;
7691 @SuppressWarnings(
"deprecation")
7706 if (value ==
null) {
7707 throw new NullPointerException();
7710 useCpSat_ = value.getNumber();
7731 private double optimizationStep_ ;
7742 return optimizationStep_;
7755 optimizationStep_ = value;
7770 optimizationStep_ = 0D;
7775 private int numberOfSolutionsToCollect_ ;
7785 return numberOfSolutionsToCollect_;
7797 numberOfSolutionsToCollect_ = value;
7811 numberOfSolutionsToCollect_ = 0;
7816 private long solutionLimit_ ;
7827 return solutionLimit_;
7840 solutionLimit_ = value;
7855 solutionLimit_ = 0L;
7860 private com.
google.protobuf.Duration timeLimit_;
7861 private com.
google.protobuf.SingleFieldBuilderV3<
7871 return timeLimitBuilder_ !=
null || timeLimit_ !=
null;
7881 if (timeLimitBuilder_ ==
null) {
7882 return timeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
7884 return timeLimitBuilder_.getMessage();
7895 if (timeLimitBuilder_ ==
null) {
7896 if (value ==
null) {
7897 throw new NullPointerException();
7902 timeLimitBuilder_.setMessage(value);
7915 com.
google.protobuf.Duration.Builder builderForValue) {
7916 if (timeLimitBuilder_ ==
null) {
7917 timeLimit_ = builderForValue.build();
7920 timeLimitBuilder_.setMessage(builderForValue.build());
7933 if (timeLimitBuilder_ ==
null) {
7934 if (timeLimit_ !=
null) {
7936 com.
google.protobuf.Duration.newBuilder(timeLimit_).mergeFrom(value).buildPartial();
7942 timeLimitBuilder_.mergeFrom(value);
7955 if (timeLimitBuilder_ ==
null) {
7960 timeLimitBuilder_ =
null;
7975 return getTimeLimitFieldBuilder().getBuilder();
7985 if (timeLimitBuilder_ !=
null) {
7986 return timeLimitBuilder_.getMessageOrBuilder();
7988 return timeLimit_ ==
null ?
7989 com.
google.protobuf.Duration.getDefaultInstance() : timeLimit_;
7999 private com.
google.protobuf.SingleFieldBuilderV3<
8001 getTimeLimitFieldBuilder() {
8002 if (timeLimitBuilder_ ==
null) {
8003 timeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8006 getParentForChildren(),
8010 return timeLimitBuilder_;
8013 private com.
google.protobuf.Duration lnsTimeLimit_;
8014 private com.
google.protobuf.SingleFieldBuilderV3<
8025 return lnsTimeLimitBuilder_ !=
null || lnsTimeLimit_ !=
null;
8036 if (lnsTimeLimitBuilder_ ==
null) {
8037 return lnsTimeLimit_ ==
null ?
com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8039 return lnsTimeLimitBuilder_.getMessage();
8051 if (lnsTimeLimitBuilder_ ==
null) {
8052 if (value ==
null) {
8053 throw new NullPointerException();
8055 lnsTimeLimit_ = value;
8058 lnsTimeLimitBuilder_.setMessage(value);
8072 com.
google.protobuf.Duration.Builder builderForValue) {
8073 if (lnsTimeLimitBuilder_ ==
null) {
8074 lnsTimeLimit_ = builderForValue.build();
8077 lnsTimeLimitBuilder_.setMessage(builderForValue.build());
8091 if (lnsTimeLimitBuilder_ ==
null) {
8092 if (lnsTimeLimit_ !=
null) {
8094 com.
google.protobuf.Duration.newBuilder(lnsTimeLimit_).mergeFrom(value).buildPartial();
8096 lnsTimeLimit_ = value;
8100 lnsTimeLimitBuilder_.mergeFrom(value);
8114 if (lnsTimeLimitBuilder_ ==
null) {
8115 lnsTimeLimit_ =
null;
8118 lnsTimeLimit_ =
null;
8119 lnsTimeLimitBuilder_ =
null;
8135 return getLnsTimeLimitFieldBuilder().getBuilder();
8146 if (lnsTimeLimitBuilder_ !=
null) {
8147 return lnsTimeLimitBuilder_.getMessageOrBuilder();
8149 return lnsTimeLimit_ ==
null ?
8150 com.
google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8161 private com.
google.protobuf.SingleFieldBuilderV3<
8163 getLnsTimeLimitFieldBuilder() {
8164 if (lnsTimeLimitBuilder_ ==
null) {
8165 lnsTimeLimitBuilder_ =
new com.
google.protobuf.SingleFieldBuilderV3<
8168 getParentForChildren(),
8170 lnsTimeLimit_ =
null;
8172 return lnsTimeLimitBuilder_;
8175 private boolean useFullPropagation_ ;
8192 return useFullPropagation_;
8211 useFullPropagation_ = value;
8232 useFullPropagation_ =
false;
8237 private boolean logSearch_ ;
8308 private double logCostScalingFactor_ ;
8317 return logCostScalingFactor_;
8328 logCostScalingFactor_ = value;
8341 logCostScalingFactor_ = 0D;
8347 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8353 final com.
google.protobuf.UnknownFieldSet unknownFields) {
8368 return DEFAULT_INSTANCE;
8375 com.
google.protobuf.CodedInputStream input,
8376 com.
google.protobuf.ExtensionRegistryLite extensionRegistry)
8377 throws com.
google.protobuf.InvalidProtocolBufferException {
8393 return DEFAULT_INSTANCE;