6package com.google.ortools.constraintsolver;
21@com.google.protobuf.Generated
22public final class RoutingSearchParameters
extends
23 com.google.protobuf.GeneratedMessage implements
26private static final long serialVersionUID = 0L;
28 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
29 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
34 "RoutingSearchParameters");
37 private RoutingSearchParameters(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
40 private RoutingSearchParameters() {
41 firstSolutionStrategy_ = 0;
42 localSearchMetaheuristic_ = 0;
43 localSearchMetaheuristics_ = emptyIntList();
46 useGeneralizedCpSat_ = 0;
47 continuousSchedulingSolver_ = 0;
48 mixedIntegerSchedulingSolver_ = 0;
52 public static final com.google.protobuf.Descriptors.Descriptor
54 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
58 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
60 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
61 .ensureFieldAccessorsInitialized(
62 com.google.ortools.constraintsolver.RoutingSearchParameters.class, com.google.ortools.constraintsolver.RoutingSearchParameters.Builder.class);
73 public enum SchedulingSolver
74 implements com.google.protobuf.ProtocolMessageEnum {
91 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
92 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
115 throw new java.lang.IllegalArgumentException(
116 "Can't get the number of an unknown enum value.");
126 @java.lang.Deprecated
127 public static SchedulingSolver
valueOf(
int value) {
140 default:
return null;
146 return internalValueMap;
148 private static final com.google.protobuf.Internal.EnumLiteMap<
156 public final com.google.protobuf.Descriptors.EnumValueDescriptor
159 throw new java.lang.IllegalStateException(
160 "Can't get the descriptor of an unrecognized enum value.");
164 public final com.google.protobuf.Descriptors.EnumDescriptor
168 public static com.google.protobuf.Descriptors.EnumDescriptor
170 return com.google.ortools.constraintsolver.RoutingSearchParameters.getDescriptor().getEnumTypes().get(0);
176 com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
178 throw new java.lang.IllegalArgumentException(
179 "EnumValueDescriptor is not for this type.");
181 if (desc.getIndex() == -1) {
184 return VALUES[desc.getIndex()];
187 private final int value;
198 com.google.protobuf.MessageOrBuilder {
1394 public static final class LocalSearchNeighborhoodOperators
extends
1395 com.google.protobuf.GeneratedMessage implements
1398 private static final long serialVersionUID = 0L;
1400 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
1401 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
1406 "LocalSearchNeighborhoodOperators");
1409 private LocalSearchNeighborhoodOperators(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
1412 private LocalSearchNeighborhoodOperators() {
1414 useRelocatePair_ = 0;
1415 useLightRelocatePair_ = 0;
1416 useRelocateNeighbors_ = 0;
1417 useRelocateSubtrip_ = 0;
1419 useExchangePair_ = 0;
1420 useExchangeSubtrip_ = 0;
1422 useCrossExchange_ = 0;
1423 useRelocateExpensiveChain_ = 0;
1426 useLinKernighan_ = 0;
1429 useRelocateAndMakeActive_ = 0;
1430 useExchangeAndMakeActive_ = 0;
1431 useExchangePathStartEndsAndMakeActive_ = 0;
1432 useMakeInactive_ = 0;
1433 useMakeChainInactive_ = 0;
1435 useSwapActiveChain_ = 0;
1436 useExtendedSwapActive_ = 0;
1437 useShortestPathSwapActive_ = 0;
1438 useShortestPathTwoOpt_ = 0;
1439 useNodePairSwapActive_ = 0;
1441 useFullPathLns_ = 0;
1443 useInactiveLns_ = 0;
1444 useGlobalCheapestInsertionPathLns_ = 0;
1445 useLocalCheapestInsertionPathLns_ = 0;
1446 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = 0;
1447 useGlobalCheapestInsertionExpensiveChainLns_ = 0;
1448 useLocalCheapestInsertionExpensiveChainLns_ = 0;
1449 useGlobalCheapestInsertionCloseNodesLns_ = 0;
1450 useLocalCheapestInsertionCloseNodesLns_ = 0;
1451 useGlobalCheapestInsertionVisitTypesLns_ = 0;
1452 useLocalCheapestInsertionVisitTypesLns_ = 0;
1455 public static final com.google.protobuf.Descriptors.Descriptor
1457 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
1461 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
1463 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
1464 .ensureFieldAccessorsInitialized(
1465 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.class, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder.class);
1469 private int useRelocate_ = 0;
1487 return useRelocate_;
1511 private int useRelocatePair_ = 0;
1529 return useRelocatePair_;
1553 private int useLightRelocatePair_ = 0;
1569 return useLightRelocatePair_;
1591 private int useRelocateNeighbors_ = 0;
1622 return useRelocateNeighbors_;
1659 private int useRelocateSubtrip_ = 0;
1682 return useRelocateSubtrip_;
1711 private int useExchange_ = 0;
1727 return useExchange_;
1749 private int useExchangePair_ = 0;
1765 return useExchangePair_;
1787 private int useExchangeSubtrip_ = 0;
1798 return useExchangeSubtrip_;
1815 private int useCross_ = 0;
1857 private int useCrossExchange_ = 0;
1867 return useCrossExchange_;
1883 private int useRelocateExpensiveChain_ = 0;
1902 return useRelocateExpensiveChain_;
1927 private int useTwoOpt_ = 0;
1971 private int useOrOpt_ = 0;
2017 private int useLinKernighan_ = 0;
2030 return useLinKernighan_;
2049 private int useTspOpt_ = 0;
2085 private int useMakeActive_ = 0;
2101 return useMakeActive_;
2123 private int useRelocateAndMakeActive_ = 0;
2142 return useRelocateAndMakeActive_;
2167 private int useExchangeAndMakeActive_ = 0;
2182 return useExchangeAndMakeActive_;
2203 private int useExchangePathStartEndsAndMakeActive_ = 0;
2221 return useExchangePathStartEndsAndMakeActive_;
2245 private int useMakeInactive_ = 0;
2259 return useMakeInactive_;
2279 private int useMakeChainInactive_ = 0;
2294 return useMakeChainInactive_;
2315 private int useSwapActive_ = 0;
2329 return useSwapActive_;
2349 private int useSwapActiveChain_ = 0;
2364 return useSwapActiveChain_;
2385 private int useExtendedSwapActive_ = 0;
2404 return useExtendedSwapActive_;
2429 private int useShortestPathSwapActive_ = 0;
2444 return useShortestPathSwapActive_;
2465 private int useShortestPathTwoOpt_ = 0;
2476 return useShortestPathTwoOpt_;
2493 private int useNodePairSwapActive_ = 0;
2513 return useNodePairSwapActive_;
2539 private int usePathLns_ = 0;
2579 private int useFullPathLns_ = 0;
2589 return useFullPathLns_;
2605 private int useTspLns_ = 0;
2641 private int useInactiveLns_ = 0;
2653 return useInactiveLns_;
2671 private int useGlobalCheapestInsertionPathLns_ = 0;
2683 return useGlobalCheapestInsertionPathLns_;
2701 private int useLocalCheapestInsertionPathLns_ = 0;
2711 return useLocalCheapestInsertionPathLns_;
2727 private int useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = 0;
2739 return useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
2757 private int useGlobalCheapestInsertionExpensiveChainLns_ = 0;
2770 return useGlobalCheapestInsertionExpensiveChainLns_;
2789 private int useLocalCheapestInsertionExpensiveChainLns_ = 0;
2800 return useLocalCheapestInsertionExpensiveChainLns_;
2817 private int useGlobalCheapestInsertionCloseNodesLns_ = 0;
2830 return useGlobalCheapestInsertionCloseNodesLns_;
2849 private int useLocalCheapestInsertionCloseNodesLns_ = 0;
2860 return useLocalCheapestInsertionCloseNodesLns_;
2877 private int useGlobalCheapestInsertionVisitTypesLns_ = 0;
2889 return useGlobalCheapestInsertionVisitTypesLns_;
2907 private int useLocalCheapestInsertionVisitTypesLns_ = 0;
2918 return useLocalCheapestInsertionVisitTypesLns_;
2934 private byte memoizedIsInitialized = -1;
2941 memoizedIsInitialized = 1;
2946 public void writeTo(com.google.protobuf.CodedOutputStream output)
2947 throws java.io.IOException {
2948 if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2949 output.writeEnum(1, useRelocate_);
2951 if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2952 output.writeEnum(2, useRelocatePair_);
2954 if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2955 output.writeEnum(3, useRelocateNeighbors_);
2957 if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2958 output.writeEnum(4, useExchange_);
2960 if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2961 output.writeEnum(5, useCross_);
2963 if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2964 output.writeEnum(6, useCrossExchange_);
2966 if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2967 output.writeEnum(7, useTwoOpt_);
2969 if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2970 output.writeEnum(8, useOrOpt_);
2972 if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2973 output.writeEnum(9, useLinKernighan_);
2975 if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2976 output.writeEnum(10, useTspOpt_);
2978 if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2979 output.writeEnum(11, useMakeActive_);
2981 if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2982 output.writeEnum(12, useMakeInactive_);
2984 if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2985 output.writeEnum(13, useMakeChainInactive_);
2987 if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2988 output.writeEnum(14, useSwapActive_);
2990 if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2991 output.writeEnum(15, useExtendedSwapActive_);
2993 if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2994 output.writeEnum(16, usePathLns_);
2996 if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2997 output.writeEnum(17, useFullPathLns_);
2999 if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3000 output.writeEnum(18, useTspLns_);
3002 if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3003 output.writeEnum(19, useInactiveLns_);
3005 if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3006 output.writeEnum(20, useNodePairSwapActive_);
3008 if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3009 output.writeEnum(21, useRelocateAndMakeActive_);
3011 if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3012 output.writeEnum(22, useExchangePair_);
3014 if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3015 output.writeEnum(23, useRelocateExpensiveChain_);
3017 if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3018 output.writeEnum(24, useLightRelocatePair_);
3020 if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3021 output.writeEnum(25, useRelocateSubtrip_);
3023 if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3024 output.writeEnum(26, useExchangeSubtrip_);
3026 if (useGlobalCheapestInsertionPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3027 output.writeEnum(27, useGlobalCheapestInsertionPathLns_);
3029 if (useLocalCheapestInsertionPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3030 output.writeEnum(28, useLocalCheapestInsertionPathLns_);
3032 if (useGlobalCheapestInsertionExpensiveChainLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3033 output.writeEnum(29, useGlobalCheapestInsertionExpensiveChainLns_);
3035 if (useLocalCheapestInsertionExpensiveChainLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3036 output.writeEnum(30, useLocalCheapestInsertionExpensiveChainLns_);
3038 if (useGlobalCheapestInsertionCloseNodesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3039 output.writeEnum(31, useGlobalCheapestInsertionCloseNodesLns_);
3041 if (useLocalCheapestInsertionCloseNodesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3042 output.writeEnum(32, useLocalCheapestInsertionCloseNodesLns_);
3044 if (useRelocatePathGlobalCheapestInsertionInsertUnperformed_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3045 output.writeEnum(33, useRelocatePathGlobalCheapestInsertionInsertUnperformed_);
3047 if (useShortestPathSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3048 output.writeEnum(34, useShortestPathSwapActive_);
3050 if (useSwapActiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3051 output.writeEnum(35, useSwapActiveChain_);
3053 if (useShortestPathTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3054 output.writeEnum(36, useShortestPathTwoOpt_);
3056 if (useExchangeAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3057 output.writeEnum(37, useExchangeAndMakeActive_);
3059 if (useExchangePathStartEndsAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3060 output.writeEnum(38, useExchangePathStartEndsAndMakeActive_);
3062 if (useGlobalCheapestInsertionVisitTypesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3063 output.writeEnum(39, useGlobalCheapestInsertionVisitTypesLns_);
3065 if (useLocalCheapestInsertionVisitTypesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3066 output.writeEnum(40, useLocalCheapestInsertionVisitTypesLns_);
3068 getUnknownFields().writeTo(output);
3073 int size = memoizedSize;
3074 if (size != -1)
return size;
3077 if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3078 size += com.google.protobuf.CodedOutputStream
3079 .computeEnumSize(1, useRelocate_);
3081 if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3082 size += com.google.protobuf.CodedOutputStream
3083 .computeEnumSize(2, useRelocatePair_);
3085 if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3086 size += com.google.protobuf.CodedOutputStream
3087 .computeEnumSize(3, useRelocateNeighbors_);
3089 if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3090 size += com.google.protobuf.CodedOutputStream
3091 .computeEnumSize(4, useExchange_);
3093 if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3094 size += com.google.protobuf.CodedOutputStream
3095 .computeEnumSize(5, useCross_);
3097 if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3098 size += com.google.protobuf.CodedOutputStream
3099 .computeEnumSize(6, useCrossExchange_);
3101 if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3102 size += com.google.protobuf.CodedOutputStream
3103 .computeEnumSize(7, useTwoOpt_);
3105 if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3106 size += com.google.protobuf.CodedOutputStream
3107 .computeEnumSize(8, useOrOpt_);
3109 if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3110 size += com.google.protobuf.CodedOutputStream
3111 .computeEnumSize(9, useLinKernighan_);
3113 if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3114 size += com.google.protobuf.CodedOutputStream
3115 .computeEnumSize(10, useTspOpt_);
3117 if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3118 size += com.google.protobuf.CodedOutputStream
3119 .computeEnumSize(11, useMakeActive_);
3121 if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3122 size += com.google.protobuf.CodedOutputStream
3123 .computeEnumSize(12, useMakeInactive_);
3125 if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3126 size += com.google.protobuf.CodedOutputStream
3127 .computeEnumSize(13, useMakeChainInactive_);
3129 if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3130 size += com.google.protobuf.CodedOutputStream
3131 .computeEnumSize(14, useSwapActive_);
3133 if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3134 size += com.google.protobuf.CodedOutputStream
3135 .computeEnumSize(15, useExtendedSwapActive_);
3137 if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3138 size += com.google.protobuf.CodedOutputStream
3139 .computeEnumSize(16, usePathLns_);
3141 if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3142 size += com.google.protobuf.CodedOutputStream
3143 .computeEnumSize(17, useFullPathLns_);
3145 if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3146 size += com.google.protobuf.CodedOutputStream
3147 .computeEnumSize(18, useTspLns_);
3149 if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3150 size += com.google.protobuf.CodedOutputStream
3151 .computeEnumSize(19, useInactiveLns_);
3153 if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3154 size += com.google.protobuf.CodedOutputStream
3155 .computeEnumSize(20, useNodePairSwapActive_);
3157 if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3158 size += com.google.protobuf.CodedOutputStream
3159 .computeEnumSize(21, useRelocateAndMakeActive_);
3161 if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3162 size += com.google.protobuf.CodedOutputStream
3163 .computeEnumSize(22, useExchangePair_);
3165 if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3166 size += com.google.protobuf.CodedOutputStream
3167 .computeEnumSize(23, useRelocateExpensiveChain_);
3169 if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3170 size += com.google.protobuf.CodedOutputStream
3171 .computeEnumSize(24, useLightRelocatePair_);
3173 if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3174 size += com.google.protobuf.CodedOutputStream
3175 .computeEnumSize(25, useRelocateSubtrip_);
3177 if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3178 size += com.google.protobuf.CodedOutputStream
3179 .computeEnumSize(26, useExchangeSubtrip_);
3181 if (useGlobalCheapestInsertionPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3182 size += com.google.protobuf.CodedOutputStream
3183 .computeEnumSize(27, useGlobalCheapestInsertionPathLns_);
3185 if (useLocalCheapestInsertionPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3186 size += com.google.protobuf.CodedOutputStream
3187 .computeEnumSize(28, useLocalCheapestInsertionPathLns_);
3189 if (useGlobalCheapestInsertionExpensiveChainLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3190 size += com.google.protobuf.CodedOutputStream
3191 .computeEnumSize(29, useGlobalCheapestInsertionExpensiveChainLns_);
3193 if (useLocalCheapestInsertionExpensiveChainLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3194 size += com.google.protobuf.CodedOutputStream
3195 .computeEnumSize(30, useLocalCheapestInsertionExpensiveChainLns_);
3197 if (useGlobalCheapestInsertionCloseNodesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3198 size += com.google.protobuf.CodedOutputStream
3199 .computeEnumSize(31, useGlobalCheapestInsertionCloseNodesLns_);
3201 if (useLocalCheapestInsertionCloseNodesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3202 size += com.google.protobuf.CodedOutputStream
3203 .computeEnumSize(32, useLocalCheapestInsertionCloseNodesLns_);
3205 if (useRelocatePathGlobalCheapestInsertionInsertUnperformed_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3206 size += com.google.protobuf.CodedOutputStream
3207 .computeEnumSize(33, useRelocatePathGlobalCheapestInsertionInsertUnperformed_);
3209 if (useShortestPathSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3210 size += com.google.protobuf.CodedOutputStream
3211 .computeEnumSize(34, useShortestPathSwapActive_);
3213 if (useSwapActiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3214 size += com.google.protobuf.CodedOutputStream
3215 .computeEnumSize(35, useSwapActiveChain_);
3217 if (useShortestPathTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3218 size += com.google.protobuf.CodedOutputStream
3219 .computeEnumSize(36, useShortestPathTwoOpt_);
3221 if (useExchangeAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3222 size += com.google.protobuf.CodedOutputStream
3223 .computeEnumSize(37, useExchangeAndMakeActive_);
3225 if (useExchangePathStartEndsAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3226 size += com.google.protobuf.CodedOutputStream
3227 .computeEnumSize(38, useExchangePathStartEndsAndMakeActive_);
3229 if (useGlobalCheapestInsertionVisitTypesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3230 size += com.google.protobuf.CodedOutputStream
3231 .computeEnumSize(39, useGlobalCheapestInsertionVisitTypesLns_);
3233 if (useLocalCheapestInsertionVisitTypesLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
3234 size += com.google.protobuf.CodedOutputStream
3235 .computeEnumSize(40, useLocalCheapestInsertionVisitTypesLns_);
3237 size += getUnknownFields().getSerializedSize();
3238 memoizedSize = size;
3243 public boolean equals(
final java.lang.Object obj) {
3247 if (!(obj instanceof com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators)) {
3248 return super.equals(obj);
3252 if (useRelocate_ != other.useRelocate_)
return false;
3253 if (useRelocatePair_ != other.useRelocatePair_)
return false;
3254 if (useLightRelocatePair_ != other.useLightRelocatePair_)
return false;
3255 if (useRelocateNeighbors_ != other.useRelocateNeighbors_)
return false;
3256 if (useRelocateSubtrip_ != other.useRelocateSubtrip_)
return false;
3257 if (useExchange_ != other.useExchange_)
return false;
3258 if (useExchangePair_ != other.useExchangePair_)
return false;
3259 if (useExchangeSubtrip_ != other.useExchangeSubtrip_)
return false;
3260 if (useCross_ != other.useCross_)
return false;
3261 if (useCrossExchange_ != other.useCrossExchange_)
return false;
3262 if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_)
return false;
3263 if (useTwoOpt_ != other.useTwoOpt_)
return false;
3264 if (useOrOpt_ != other.useOrOpt_)
return false;
3265 if (useLinKernighan_ != other.useLinKernighan_)
return false;
3266 if (useTspOpt_ != other.useTspOpt_)
return false;
3267 if (useMakeActive_ != other.useMakeActive_)
return false;
3268 if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_)
return false;
3269 if (useExchangeAndMakeActive_ != other.useExchangeAndMakeActive_)
return false;
3270 if (useExchangePathStartEndsAndMakeActive_ != other.useExchangePathStartEndsAndMakeActive_)
return false;
3271 if (useMakeInactive_ != other.useMakeInactive_)
return false;
3272 if (useMakeChainInactive_ != other.useMakeChainInactive_)
return false;
3273 if (useSwapActive_ != other.useSwapActive_)
return false;
3274 if (useSwapActiveChain_ != other.useSwapActiveChain_)
return false;
3275 if (useExtendedSwapActive_ != other.useExtendedSwapActive_)
return false;
3276 if (useShortestPathSwapActive_ != other.useShortestPathSwapActive_)
return false;
3277 if (useShortestPathTwoOpt_ != other.useShortestPathTwoOpt_)
return false;
3278 if (useNodePairSwapActive_ != other.useNodePairSwapActive_)
return false;
3279 if (usePathLns_ != other.usePathLns_)
return false;
3280 if (useFullPathLns_ != other.useFullPathLns_)
return false;
3281 if (useTspLns_ != other.useTspLns_)
return false;
3282 if (useInactiveLns_ != other.useInactiveLns_)
return false;
3283 if (useGlobalCheapestInsertionPathLns_ != other.useGlobalCheapestInsertionPathLns_)
return false;
3284 if (useLocalCheapestInsertionPathLns_ != other.useLocalCheapestInsertionPathLns_)
return false;
3285 if (useRelocatePathGlobalCheapestInsertionInsertUnperformed_ != other.useRelocatePathGlobalCheapestInsertionInsertUnperformed_)
return false;
3286 if (useGlobalCheapestInsertionExpensiveChainLns_ != other.useGlobalCheapestInsertionExpensiveChainLns_)
return false;
3287 if (useLocalCheapestInsertionExpensiveChainLns_ != other.useLocalCheapestInsertionExpensiveChainLns_)
return false;
3288 if (useGlobalCheapestInsertionCloseNodesLns_ != other.useGlobalCheapestInsertionCloseNodesLns_)
return false;
3289 if (useLocalCheapestInsertionCloseNodesLns_ != other.useLocalCheapestInsertionCloseNodesLns_)
return false;
3290 if (useGlobalCheapestInsertionVisitTypesLns_ != other.useGlobalCheapestInsertionVisitTypesLns_)
return false;
3291 if (useLocalCheapestInsertionVisitTypesLns_ != other.useLocalCheapestInsertionVisitTypesLns_)
return false;
3292 if (!getUnknownFields().
equals(other.getUnknownFields()))
return false;
3298 if (memoizedHashCode != 0) {
3299 return memoizedHashCode;
3304 hash = (53 * hash) + useRelocate_;
3306 hash = (53 * hash) + useRelocatePair_;
3308 hash = (53 * hash) + useLightRelocatePair_;
3310 hash = (53 * hash) + useRelocateNeighbors_;
3312 hash = (53 * hash) + useRelocateSubtrip_;
3314 hash = (53 * hash) + useExchange_;
3316 hash = (53 * hash) + useExchangePair_;
3318 hash = (53 * hash) + useExchangeSubtrip_;
3320 hash = (53 * hash) + useCross_;
3322 hash = (53 * hash) + useCrossExchange_;
3324 hash = (53 * hash) + useRelocateExpensiveChain_;
3326 hash = (53 * hash) + useTwoOpt_;
3328 hash = (53 * hash) + useOrOpt_;
3330 hash = (53 * hash) + useLinKernighan_;
3332 hash = (53 * hash) + useTspOpt_;
3334 hash = (53 * hash) + useMakeActive_;
3336 hash = (53 * hash) + useRelocateAndMakeActive_;
3338 hash = (53 * hash) + useExchangeAndMakeActive_;
3340 hash = (53 * hash) + useExchangePathStartEndsAndMakeActive_;
3342 hash = (53 * hash) + useMakeInactive_;
3344 hash = (53 * hash) + useMakeChainInactive_;
3346 hash = (53 * hash) + useSwapActive_;
3348 hash = (53 * hash) + useSwapActiveChain_;
3350 hash = (53 * hash) + useExtendedSwapActive_;
3352 hash = (53 * hash) + useShortestPathSwapActive_;
3354 hash = (53 * hash) + useShortestPathTwoOpt_;
3356 hash = (53 * hash) + useNodePairSwapActive_;
3358 hash = (53 * hash) + usePathLns_;
3360 hash = (53 * hash) + useFullPathLns_;
3362 hash = (53 * hash) + useTspLns_;
3364 hash = (53 * hash) + useInactiveLns_;
3366 hash = (53 * hash) + useGlobalCheapestInsertionPathLns_;
3368 hash = (53 * hash) + useLocalCheapestInsertionPathLns_;
3370 hash = (53 * hash) + useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
3372 hash = (53 * hash) + useGlobalCheapestInsertionExpensiveChainLns_;
3374 hash = (53 * hash) + useLocalCheapestInsertionExpensiveChainLns_;
3376 hash = (53 * hash) + useGlobalCheapestInsertionCloseNodesLns_;
3378 hash = (53 * hash) + useLocalCheapestInsertionCloseNodesLns_;
3380 hash = (53 * hash) + useGlobalCheapestInsertionVisitTypesLns_;
3382 hash = (53 * hash) + useLocalCheapestInsertionVisitTypesLns_;
3383 hash = (29 * hash) + getUnknownFields().hashCode();
3384 memoizedHashCode = hash;
3389 java.nio.ByteBuffer data)
3390 throws com.google.protobuf.InvalidProtocolBufferException {
3391 return PARSER.parseFrom(data);
3394 java.nio.ByteBuffer data,
3395 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3396 throws com.google.protobuf.InvalidProtocolBufferException {
3397 return PARSER.parseFrom(data, extensionRegistry);
3400 com.google.protobuf.ByteString data)
3401 throws com.google.protobuf.InvalidProtocolBufferException {
3402 return PARSER.parseFrom(data);
3405 com.google.protobuf.ByteString data,
3406 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3407 throws com.google.protobuf.InvalidProtocolBufferException {
3408 return PARSER.parseFrom(data, extensionRegistry);
3411 throws com.google.protobuf.InvalidProtocolBufferException {
3412 return PARSER.parseFrom(data);
3416 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3417 throws com.google.protobuf.InvalidProtocolBufferException {
3418 return PARSER.parseFrom(data, extensionRegistry);
3421 throws java.io.IOException {
3422 return com.google.protobuf.GeneratedMessage
3423 .parseWithIOException(PARSER, input);
3426 java.io.InputStream input,
3427 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3428 throws java.io.IOException {
3429 return com.google.protobuf.GeneratedMessage
3430 .parseWithIOException(PARSER, input, extensionRegistry);
3434 throws java.io.IOException {
3435 return com.google.protobuf.GeneratedMessage
3436 .parseDelimitedWithIOException(PARSER, input);
3440 java.io.InputStream input,
3441 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3442 throws java.io.IOException {
3443 return com.google.protobuf.GeneratedMessage
3444 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
3447 com.google.protobuf.CodedInputStream input)
3448 throws java.io.IOException {
3449 return com.google.protobuf.GeneratedMessage
3450 .parseWithIOException(PARSER, input);
3453 com.google.protobuf.CodedInputStream input,
3454 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3455 throws java.io.IOException {
3456 return com.google.protobuf.GeneratedMessage
3457 .parseWithIOException(PARSER, input, extensionRegistry);
3463 return DEFAULT_INSTANCE.toBuilder();
3465 public static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators prototype) {
3466 return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
3470 return this == DEFAULT_INSTANCE
3476 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
3488 public static final class Builder
extends
3489 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
3492 public static final com.google.protobuf.Descriptors.Descriptor
3494 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
3498 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
3500 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
3501 .ensureFieldAccessorsInitialized(
3502 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.class, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder.class);
3511 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
3521 useRelocatePair_ = 0;
3522 useLightRelocatePair_ = 0;
3523 useRelocateNeighbors_ = 0;
3524 useRelocateSubtrip_ = 0;
3526 useExchangePair_ = 0;
3527 useExchangeSubtrip_ = 0;
3529 useCrossExchange_ = 0;
3530 useRelocateExpensiveChain_ = 0;
3533 useLinKernighan_ = 0;
3536 useRelocateAndMakeActive_ = 0;
3537 useExchangeAndMakeActive_ = 0;
3538 useExchangePathStartEndsAndMakeActive_ = 0;
3539 useMakeInactive_ = 0;
3540 useMakeChainInactive_ = 0;
3542 useSwapActiveChain_ = 0;
3543 useExtendedSwapActive_ = 0;
3544 useShortestPathSwapActive_ = 0;
3545 useShortestPathTwoOpt_ = 0;
3546 useNodePairSwapActive_ = 0;
3548 useFullPathLns_ = 0;
3550 useInactiveLns_ = 0;
3551 useGlobalCheapestInsertionPathLns_ = 0;
3552 useLocalCheapestInsertionPathLns_ = 0;
3553 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = 0;
3554 useGlobalCheapestInsertionExpensiveChainLns_ = 0;
3555 useLocalCheapestInsertionExpensiveChainLns_ = 0;
3556 useGlobalCheapestInsertionCloseNodesLns_ = 0;
3557 useLocalCheapestInsertionCloseNodesLns_ = 0;
3558 useGlobalCheapestInsertionVisitTypesLns_ = 0;
3559 useLocalCheapestInsertionVisitTypesLns_ = 0;
3564 public com.google.protobuf.Descriptors.Descriptor
3566 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
3571 return com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance();
3578 throw newUninitializedMessageException(result);
3586 if (bitField0_ != 0) { buildPartial0(result); }
3587 if (bitField1_ != 0) { buildPartial1(result); }
3592 private void buildPartial0(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators result) {
3593 int from_bitField0_ = bitField0_;
3594 if (((from_bitField0_ & 0x00000001) != 0)) {
3595 result.useRelocate_ = useRelocate_;
3597 if (((from_bitField0_ & 0x00000002) != 0)) {
3598 result.useRelocatePair_ = useRelocatePair_;
3600 if (((from_bitField0_ & 0x00000004) != 0)) {
3601 result.useLightRelocatePair_ = useLightRelocatePair_;
3603 if (((from_bitField0_ & 0x00000008) != 0)) {
3604 result.useRelocateNeighbors_ = useRelocateNeighbors_;
3606 if (((from_bitField0_ & 0x00000010) != 0)) {
3607 result.useRelocateSubtrip_ = useRelocateSubtrip_;
3609 if (((from_bitField0_ & 0x00000020) != 0)) {
3610 result.useExchange_ = useExchange_;
3612 if (((from_bitField0_ & 0x00000040) != 0)) {
3613 result.useExchangePair_ = useExchangePair_;
3615 if (((from_bitField0_ & 0x00000080) != 0)) {
3616 result.useExchangeSubtrip_ = useExchangeSubtrip_;
3618 if (((from_bitField0_ & 0x00000100) != 0)) {
3619 result.useCross_ = useCross_;
3621 if (((from_bitField0_ & 0x00000200) != 0)) {
3622 result.useCrossExchange_ = useCrossExchange_;
3624 if (((from_bitField0_ & 0x00000400) != 0)) {
3625 result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
3627 if (((from_bitField0_ & 0x00000800) != 0)) {
3628 result.useTwoOpt_ = useTwoOpt_;
3630 if (((from_bitField0_ & 0x00001000) != 0)) {
3631 result.useOrOpt_ = useOrOpt_;
3633 if (((from_bitField0_ & 0x00002000) != 0)) {
3634 result.useLinKernighan_ = useLinKernighan_;
3636 if (((from_bitField0_ & 0x00004000) != 0)) {
3637 result.useTspOpt_ = useTspOpt_;
3639 if (((from_bitField0_ & 0x00008000) != 0)) {
3640 result.useMakeActive_ = useMakeActive_;
3642 if (((from_bitField0_ & 0x00010000) != 0)) {
3643 result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
3645 if (((from_bitField0_ & 0x00020000) != 0)) {
3646 result.useExchangeAndMakeActive_ = useExchangeAndMakeActive_;
3648 if (((from_bitField0_ & 0x00040000) != 0)) {
3649 result.useExchangePathStartEndsAndMakeActive_ = useExchangePathStartEndsAndMakeActive_;
3651 if (((from_bitField0_ & 0x00080000) != 0)) {
3652 result.useMakeInactive_ = useMakeInactive_;
3654 if (((from_bitField0_ & 0x00100000) != 0)) {
3655 result.useMakeChainInactive_ = useMakeChainInactive_;
3657 if (((from_bitField0_ & 0x00200000) != 0)) {
3658 result.useSwapActive_ = useSwapActive_;
3660 if (((from_bitField0_ & 0x00400000) != 0)) {
3661 result.useSwapActiveChain_ = useSwapActiveChain_;
3663 if (((from_bitField0_ & 0x00800000) != 0)) {
3664 result.useExtendedSwapActive_ = useExtendedSwapActive_;
3666 if (((from_bitField0_ & 0x01000000) != 0)) {
3667 result.useShortestPathSwapActive_ = useShortestPathSwapActive_;
3669 if (((from_bitField0_ & 0x02000000) != 0)) {
3670 result.useShortestPathTwoOpt_ = useShortestPathTwoOpt_;
3672 if (((from_bitField0_ & 0x04000000) != 0)) {
3673 result.useNodePairSwapActive_ = useNodePairSwapActive_;
3675 if (((from_bitField0_ & 0x08000000) != 0)) {
3676 result.usePathLns_ = usePathLns_;
3678 if (((from_bitField0_ & 0x10000000) != 0)) {
3679 result.useFullPathLns_ = useFullPathLns_;
3681 if (((from_bitField0_ & 0x20000000) != 0)) {
3682 result.useTspLns_ = useTspLns_;
3684 if (((from_bitField0_ & 0x40000000) != 0)) {
3685 result.useInactiveLns_ = useInactiveLns_;
3687 if (((from_bitField0_ & 0x80000000) != 0)) {
3688 result.useGlobalCheapestInsertionPathLns_ = useGlobalCheapestInsertionPathLns_;
3692 private void buildPartial1(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators result) {
3693 int from_bitField1_ = bitField1_;
3694 if (((from_bitField1_ & 0x00000001) != 0)) {
3695 result.useLocalCheapestInsertionPathLns_ = useLocalCheapestInsertionPathLns_;
3697 if (((from_bitField1_ & 0x00000002) != 0)) {
3698 result.useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
3700 if (((from_bitField1_ & 0x00000004) != 0)) {
3701 result.useGlobalCheapestInsertionExpensiveChainLns_ = useGlobalCheapestInsertionExpensiveChainLns_;
3703 if (((from_bitField1_ & 0x00000008) != 0)) {
3704 result.useLocalCheapestInsertionExpensiveChainLns_ = useLocalCheapestInsertionExpensiveChainLns_;
3706 if (((from_bitField1_ & 0x00000010) != 0)) {
3707 result.useGlobalCheapestInsertionCloseNodesLns_ = useGlobalCheapestInsertionCloseNodesLns_;
3709 if (((from_bitField1_ & 0x00000020) != 0)) {
3710 result.useLocalCheapestInsertionCloseNodesLns_ = useLocalCheapestInsertionCloseNodesLns_;
3712 if (((from_bitField1_ & 0x00000040) != 0)) {
3713 result.useGlobalCheapestInsertionVisitTypesLns_ = useGlobalCheapestInsertionVisitTypesLns_;
3715 if (((from_bitField1_ & 0x00000080) != 0)) {
3716 result.useLocalCheapestInsertionVisitTypesLns_ = useLocalCheapestInsertionVisitTypesLns_;
3721 public Builder
mergeFrom(com.google.protobuf.Message other) {
3722 if (other instanceof com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators) {
3723 return mergeFrom((com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators)other);
3725 super.mergeFrom(other);
3730 public Builder
mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators other) {
3731 if (other == com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance())
return this;
3732 if (other.useRelocate_ != 0) {
3735 if (other.useRelocatePair_ != 0) {
3738 if (other.useLightRelocatePair_ != 0) {
3741 if (other.useRelocateNeighbors_ != 0) {
3744 if (other.useRelocateSubtrip_ != 0) {
3747 if (other.useExchange_ != 0) {
3750 if (other.useExchangePair_ != 0) {
3753 if (other.useExchangeSubtrip_ != 0) {
3756 if (other.useCross_ != 0) {
3759 if (other.useCrossExchange_ != 0) {
3762 if (other.useRelocateExpensiveChain_ != 0) {
3765 if (other.useTwoOpt_ != 0) {
3768 if (other.useOrOpt_ != 0) {
3771 if (other.useLinKernighan_ != 0) {
3774 if (other.useTspOpt_ != 0) {
3777 if (other.useMakeActive_ != 0) {
3780 if (other.useRelocateAndMakeActive_ != 0) {
3783 if (other.useExchangeAndMakeActive_ != 0) {
3786 if (other.useExchangePathStartEndsAndMakeActive_ != 0) {
3789 if (other.useMakeInactive_ != 0) {
3792 if (other.useMakeChainInactive_ != 0) {
3795 if (other.useSwapActive_ != 0) {
3798 if (other.useSwapActiveChain_ != 0) {
3801 if (other.useExtendedSwapActive_ != 0) {
3804 if (other.useShortestPathSwapActive_ != 0) {
3807 if (other.useShortestPathTwoOpt_ != 0) {
3810 if (other.useNodePairSwapActive_ != 0) {
3813 if (other.usePathLns_ != 0) {
3816 if (other.useFullPathLns_ != 0) {
3819 if (other.useTspLns_ != 0) {
3822 if (other.useInactiveLns_ != 0) {
3825 if (other.useGlobalCheapestInsertionPathLns_ != 0) {
3828 if (other.useLocalCheapestInsertionPathLns_ != 0) {
3831 if (other.useRelocatePathGlobalCheapestInsertionInsertUnperformed_ != 0) {
3834 if (other.useGlobalCheapestInsertionExpensiveChainLns_ != 0) {
3837 if (other.useLocalCheapestInsertionExpensiveChainLns_ != 0) {
3840 if (other.useGlobalCheapestInsertionCloseNodesLns_ != 0) {
3843 if (other.useLocalCheapestInsertionCloseNodesLns_ != 0) {
3846 if (other.useGlobalCheapestInsertionVisitTypesLns_ != 0) {
3849 if (other.useLocalCheapestInsertionVisitTypesLns_ != 0) {
3852 this.mergeUnknownFields(other.getUnknownFields());
3864 com.google.protobuf.CodedInputStream input,
3865 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3866 throws java.io.IOException {
3867 if (extensionRegistry ==
null) {
3868 throw new java.lang.NullPointerException();
3871 boolean done =
false;
3873 int tag = input.readTag();
3879 useRelocate_ = input.readEnum();
3880 bitField0_ |= 0x00000001;
3884 useRelocatePair_ = input.readEnum();
3885 bitField0_ |= 0x00000002;
3889 useRelocateNeighbors_ = input.readEnum();
3890 bitField0_ |= 0x00000008;
3894 useExchange_ = input.readEnum();
3895 bitField0_ |= 0x00000020;
3899 useCross_ = input.readEnum();
3900 bitField0_ |= 0x00000100;
3904 useCrossExchange_ = input.readEnum();
3905 bitField0_ |= 0x00000200;
3909 useTwoOpt_ = input.readEnum();
3910 bitField0_ |= 0x00000800;
3914 useOrOpt_ = input.readEnum();
3915 bitField0_ |= 0x00001000;
3919 useLinKernighan_ = input.readEnum();
3920 bitField0_ |= 0x00002000;
3924 useTspOpt_ = input.readEnum();
3925 bitField0_ |= 0x00004000;
3929 useMakeActive_ = input.readEnum();
3930 bitField0_ |= 0x00008000;
3934 useMakeInactive_ = input.readEnum();
3935 bitField0_ |= 0x00080000;
3939 useMakeChainInactive_ = input.readEnum();
3940 bitField0_ |= 0x00100000;
3944 useSwapActive_ = input.readEnum();
3945 bitField0_ |= 0x00200000;
3949 useExtendedSwapActive_ = input.readEnum();
3950 bitField0_ |= 0x00800000;
3954 usePathLns_ = input.readEnum();
3955 bitField0_ |= 0x08000000;
3959 useFullPathLns_ = input.readEnum();
3960 bitField0_ |= 0x10000000;
3964 useTspLns_ = input.readEnum();
3965 bitField0_ |= 0x20000000;
3969 useInactiveLns_ = input.readEnum();
3970 bitField0_ |= 0x40000000;
3974 useNodePairSwapActive_ = input.readEnum();
3975 bitField0_ |= 0x04000000;
3979 useRelocateAndMakeActive_ = input.readEnum();
3980 bitField0_ |= 0x00010000;
3984 useExchangePair_ = input.readEnum();
3985 bitField0_ |= 0x00000040;
3989 useRelocateExpensiveChain_ = input.readEnum();
3990 bitField0_ |= 0x00000400;
3994 useLightRelocatePair_ = input.readEnum();
3995 bitField0_ |= 0x00000004;
3999 useRelocateSubtrip_ = input.readEnum();
4000 bitField0_ |= 0x00000010;
4004 useExchangeSubtrip_ = input.readEnum();
4005 bitField0_ |= 0x00000080;
4009 useGlobalCheapestInsertionPathLns_ = input.readEnum();
4010 bitField0_ |= 0x80000000;
4014 useLocalCheapestInsertionPathLns_ = input.readEnum();
4015 bitField1_ |= 0x00000001;
4019 useGlobalCheapestInsertionExpensiveChainLns_ = input.readEnum();
4020 bitField1_ |= 0x00000004;
4024 useLocalCheapestInsertionExpensiveChainLns_ = input.readEnum();
4025 bitField1_ |= 0x00000008;
4029 useGlobalCheapestInsertionCloseNodesLns_ = input.readEnum();
4030 bitField1_ |= 0x00000010;
4034 useLocalCheapestInsertionCloseNodesLns_ = input.readEnum();
4035 bitField1_ |= 0x00000020;
4039 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = input.readEnum();
4040 bitField1_ |= 0x00000002;
4044 useShortestPathSwapActive_ = input.readEnum();
4045 bitField0_ |= 0x01000000;
4049 useSwapActiveChain_ = input.readEnum();
4050 bitField0_ |= 0x00400000;
4054 useShortestPathTwoOpt_ = input.readEnum();
4055 bitField0_ |= 0x02000000;
4059 useExchangeAndMakeActive_ = input.readEnum();
4060 bitField0_ |= 0x00020000;
4064 useExchangePathStartEndsAndMakeActive_ = input.readEnum();
4065 bitField0_ |= 0x00040000;
4069 useGlobalCheapestInsertionVisitTypesLns_ = input.readEnum();
4070 bitField1_ |= 0x00000040;
4074 useLocalCheapestInsertionVisitTypesLns_ = input.readEnum();
4075 bitField1_ |= 0x00000080;
4079 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
4086 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
4087 throw e.unwrapIOException();
4093 private int bitField0_;
4094 private int bitField1_;
4096 private int useRelocate_ = 0;
4114 return useRelocate_;
4134 useRelocate_ = value;
4135 bitField0_ |= 0x00000001;
4178 if (value ==
null) {
throw new NullPointerException(); }
4179 bitField0_ |= 0x00000001;
4180 useRelocate_ = value.getNumber();
4201 bitField0_ = (bitField0_ & ~0x00000001);
4207 private int useRelocatePair_ = 0;
4225 return useRelocatePair_;
4245 useRelocatePair_ = value;
4246 bitField0_ |= 0x00000002;
4289 if (value ==
null) {
throw new NullPointerException(); }
4290 bitField0_ |= 0x00000002;
4291 useRelocatePair_ = value.getNumber();
4312 bitField0_ = (bitField0_ & ~0x00000002);
4313 useRelocatePair_ = 0;
4318 private int useLightRelocatePair_ = 0;
4334 return useLightRelocatePair_;
4352 useLightRelocatePair_ = value;
4353 bitField0_ |= 0x00000004;
4392 if (value ==
null) {
throw new NullPointerException(); }
4393 bitField0_ |= 0x00000004;
4394 useLightRelocatePair_ = value.getNumber();
4413 bitField0_ = (bitField0_ & ~0x00000004);
4414 useLightRelocatePair_ = 0;
4419 private int useRelocateNeighbors_ = 0;
4450 return useRelocateNeighbors_;
4483 useRelocateNeighbors_ = value;
4484 bitField0_ |= 0x00000008;
4553 if (value ==
null) {
throw new NullPointerException(); }
4554 bitField0_ |= 0x00000008;
4555 useRelocateNeighbors_ = value.getNumber();
4589 bitField0_ = (bitField0_ & ~0x00000008);
4590 useRelocateNeighbors_ = 0;
4595 private int useRelocateSubtrip_ = 0;
4618 return useRelocateSubtrip_;
4643 useRelocateSubtrip_ = value;
4644 bitField0_ |= 0x00000010;
4697 if (value ==
null) {
throw new NullPointerException(); }
4698 bitField0_ |= 0x00000010;
4699 useRelocateSubtrip_ = value.getNumber();
4725 bitField0_ = (bitField0_ & ~0x00000010);
4726 useRelocateSubtrip_ = 0;
4731 private int useExchange_ = 0;
4747 return useExchange_;
4765 useExchange_ = value;
4766 bitField0_ |= 0x00000020;
4805 if (value ==
null) {
throw new NullPointerException(); }
4806 bitField0_ |= 0x00000020;
4807 useExchange_ = value.getNumber();
4826 bitField0_ = (bitField0_ & ~0x00000020);
4832 private int useExchangePair_ = 0;
4848 return useExchangePair_;
4866 useExchangePair_ = value;
4867 bitField0_ |= 0x00000040;
4906 if (value ==
null) {
throw new NullPointerException(); }
4907 bitField0_ |= 0x00000040;
4908 useExchangePair_ = value.getNumber();
4927 bitField0_ = (bitField0_ & ~0x00000040);
4928 useExchangePair_ = 0;
4933 private int useExchangeSubtrip_ = 0;
4944 return useExchangeSubtrip_;
4957 useExchangeSubtrip_ = value;
4958 bitField0_ |= 0x00000080;
4987 if (value ==
null) {
throw new NullPointerException(); }
4988 bitField0_ |= 0x00000080;
4989 useExchangeSubtrip_ = value.getNumber();
5003 bitField0_ = (bitField0_ & ~0x00000080);
5004 useExchangeSubtrip_ = 0;
5009 private int useCross_ = 0;
5048 bitField0_ |= 0x00000100;
5090 public Builder
setUseCross(com.google.ortools.util.OptionalBoolean value) {
5091 if (value ==
null) {
throw new NullPointerException(); }
5092 bitField0_ |= 0x00000100;
5093 useCross_ = value.getNumber();
5114 bitField0_ = (bitField0_ & ~0x00000100);
5120 private int useCrossExchange_ = 0;
5130 return useCrossExchange_;
5142 useCrossExchange_ = value;
5143 bitField0_ |= 0x00000200;
5170 if (value ==
null) {
throw new NullPointerException(); }
5171 bitField0_ |= 0x00000200;
5172 useCrossExchange_ = value.getNumber();
5185 bitField0_ = (bitField0_ & ~0x00000200);
5186 useCrossExchange_ = 0;
5191 private int useRelocateExpensiveChain_ = 0;
5210 return useRelocateExpensiveChain_;
5231 useRelocateExpensiveChain_ = value;
5232 bitField0_ |= 0x00000400;
5277 if (value ==
null) {
throw new NullPointerException(); }
5278 bitField0_ |= 0x00000400;
5279 useRelocateExpensiveChain_ = value.getNumber();
5301 bitField0_ = (bitField0_ & ~0x00000400);
5302 useRelocateExpensiveChain_ = 0;
5307 private int useTwoOpt_ = 0;
5348 bitField0_ |= 0x00000800;
5392 public Builder
setUseTwoOpt(com.google.ortools.util.OptionalBoolean value) {
5393 if (value ==
null) {
throw new NullPointerException(); }
5394 bitField0_ |= 0x00000800;
5395 useTwoOpt_ = value.getNumber();
5417 bitField0_ = (bitField0_ & ~0x00000800);
5423 private int useOrOpt_ = 0;
5466 bitField0_ |= 0x00001000;
5512 public Builder
setUseOrOpt(com.google.ortools.util.OptionalBoolean value) {
5513 if (value ==
null) {
throw new NullPointerException(); }
5514 bitField0_ |= 0x00001000;
5515 useOrOpt_ = value.getNumber();
5538 bitField0_ = (bitField0_ & ~0x00001000);
5544 private int useLinKernighan_ = 0;
5557 return useLinKernighan_;
5572 useLinKernighan_ = value;
5573 bitField0_ |= 0x00002000;
5606 if (value ==
null) {
throw new NullPointerException(); }
5607 bitField0_ |= 0x00002000;
5608 useLinKernighan_ = value.getNumber();
5624 bitField0_ = (bitField0_ & ~0x00002000);
5625 useLinKernighan_ = 0;
5630 private int useTspOpt_ = 0;
5663 bitField0_ |= 0x00004000;
5699 public Builder
setUseTspOpt(com.google.ortools.util.OptionalBoolean value) {
5700 if (value ==
null) {
throw new NullPointerException(); }
5701 bitField0_ |= 0x00004000;
5702 useTspOpt_ = value.getNumber();
5720 bitField0_ = (bitField0_ & ~0x00004000);
5726 private int useMakeActive_ = 0;
5742 return useMakeActive_;
5760 useMakeActive_ = value;
5761 bitField0_ |= 0x00008000;
5800 if (value ==
null) {
throw new NullPointerException(); }
5801 bitField0_ |= 0x00008000;
5802 useMakeActive_ = value.getNumber();
5821 bitField0_ = (bitField0_ & ~0x00008000);
5827 private int useRelocateAndMakeActive_ = 0;
5846 return useRelocateAndMakeActive_;
5867 useRelocateAndMakeActive_ = value;
5868 bitField0_ |= 0x00010000;
5913 if (value ==
null) {
throw new NullPointerException(); }
5914 bitField0_ |= 0x00010000;
5915 useRelocateAndMakeActive_ = value.getNumber();
5937 bitField0_ = (bitField0_ & ~0x00010000);
5938 useRelocateAndMakeActive_ = 0;
5943 private int useExchangeAndMakeActive_ = 0;
5958 return useExchangeAndMakeActive_;
5975 useExchangeAndMakeActive_ = value;
5976 bitField0_ |= 0x00020000;
6013 if (value ==
null) {
throw new NullPointerException(); }
6014 bitField0_ |= 0x00020000;
6015 useExchangeAndMakeActive_ = value.getNumber();
6033 bitField0_ = (bitField0_ & ~0x00020000);
6034 useExchangeAndMakeActive_ = 0;
6039 private int useExchangePathStartEndsAndMakeActive_ = 0;
6057 return useExchangePathStartEndsAndMakeActive_;
6077 useExchangePathStartEndsAndMakeActive_ = value;
6078 bitField0_ |= 0x00040000;
6121 if (value ==
null) {
throw new NullPointerException(); }
6122 bitField0_ |= 0x00040000;
6123 useExchangePathStartEndsAndMakeActive_ = value.getNumber();
6144 bitField0_ = (bitField0_ & ~0x00040000);
6145 useExchangePathStartEndsAndMakeActive_ = 0;
6150 private int useMakeInactive_ = 0;
6164 return useMakeInactive_;
6180 useMakeInactive_ = value;
6181 bitField0_ |= 0x00080000;
6216 if (value ==
null) {
throw new NullPointerException(); }
6217 bitField0_ |= 0x00080000;
6218 useMakeInactive_ = value.getNumber();
6235 bitField0_ = (bitField0_ & ~0x00080000);
6236 useMakeInactive_ = 0;
6241 private int useMakeChainInactive_ = 0;
6256 return useMakeChainInactive_;
6273 useMakeChainInactive_ = value;
6274 bitField0_ |= 0x00100000;
6311 if (value ==
null) {
throw new NullPointerException(); }
6312 bitField0_ |= 0x00100000;
6313 useMakeChainInactive_ = value.getNumber();
6331 bitField0_ = (bitField0_ & ~0x00100000);
6332 useMakeChainInactive_ = 0;
6337 private int useSwapActive_ = 0;
6351 return useSwapActive_;
6367 useSwapActive_ = value;
6368 bitField0_ |= 0x00200000;
6403 if (value ==
null) {
throw new NullPointerException(); }
6404 bitField0_ |= 0x00200000;
6405 useSwapActive_ = value.getNumber();
6422 bitField0_ = (bitField0_ & ~0x00200000);
6428 private int useSwapActiveChain_ = 0;
6443 return useSwapActiveChain_;
6460 useSwapActiveChain_ = value;
6461 bitField0_ |= 0x00400000;
6498 if (value ==
null) {
throw new NullPointerException(); }
6499 bitField0_ |= 0x00400000;
6500 useSwapActiveChain_ = value.getNumber();
6518 bitField0_ = (bitField0_ & ~0x00400000);
6519 useSwapActiveChain_ = 0;
6524 private int useExtendedSwapActive_ = 0;
6543 return useExtendedSwapActive_;
6564 useExtendedSwapActive_ = value;
6565 bitField0_ |= 0x00800000;
6610 if (value ==
null) {
throw new NullPointerException(); }
6611 bitField0_ |= 0x00800000;
6612 useExtendedSwapActive_ = value.getNumber();
6634 bitField0_ = (bitField0_ & ~0x00800000);
6635 useExtendedSwapActive_ = 0;
6640 private int useShortestPathSwapActive_ = 0;
6655 return useShortestPathSwapActive_;
6672 useShortestPathSwapActive_ = value;
6673 bitField0_ |= 0x01000000;
6710 if (value ==
null) {
throw new NullPointerException(); }
6711 bitField0_ |= 0x01000000;
6712 useShortestPathSwapActive_ = value.getNumber();
6730 bitField0_ = (bitField0_ & ~0x01000000);
6731 useShortestPathSwapActive_ = 0;
6736 private int useShortestPathTwoOpt_ = 0;
6747 return useShortestPathTwoOpt_;
6760 useShortestPathTwoOpt_ = value;
6761 bitField0_ |= 0x02000000;
6790 if (value ==
null) {
throw new NullPointerException(); }
6791 bitField0_ |= 0x02000000;
6792 useShortestPathTwoOpt_ = value.getNumber();
6806 bitField0_ = (bitField0_ & ~0x02000000);
6807 useShortestPathTwoOpt_ = 0;
6812 private int useNodePairSwapActive_ = 0;
6832 return useNodePairSwapActive_;
6854 useNodePairSwapActive_ = value;
6855 bitField0_ |= 0x04000000;
6902 if (value ==
null) {
throw new NullPointerException(); }
6903 bitField0_ |= 0x04000000;
6904 useNodePairSwapActive_ = value.getNumber();
6927 bitField0_ = (bitField0_ & ~0x04000000);
6928 useNodePairSwapActive_ = 0;
6933 private int usePathLns_ = 0;
6969 usePathLns_ = value;
6970 bitField0_ |= 0x08000000;
7011 if (value ==
null) {
throw new NullPointerException(); }
7012 bitField0_ |= 0x08000000;
7013 usePathLns_ = value.getNumber();
7033 bitField0_ = (bitField0_ & ~0x08000000);
7039 private int useFullPathLns_ = 0;
7049 return useFullPathLns_;
7061 useFullPathLns_ = value;
7062 bitField0_ |= 0x10000000;
7089 if (value ==
null) {
throw new NullPointerException(); }
7090 bitField0_ |= 0x10000000;
7091 useFullPathLns_ = value.getNumber();
7104 bitField0_ = (bitField0_ & ~0x10000000);
7105 useFullPathLns_ = 0;
7110 private int useTspLns_ = 0;
7143 bitField0_ |= 0x20000000;
7179 public Builder
setUseTspLns(com.google.ortools.util.OptionalBoolean value) {
7180 if (value ==
null) {
throw new NullPointerException(); }
7181 bitField0_ |= 0x20000000;
7182 useTspLns_ = value.getNumber();
7200 bitField0_ = (bitField0_ & ~0x20000000);
7206 private int useInactiveLns_ = 0;
7218 return useInactiveLns_;
7232 useInactiveLns_ = value;
7233 bitField0_ |= 0x40000000;
7264 if (value ==
null) {
throw new NullPointerException(); }
7265 bitField0_ |= 0x40000000;
7266 useInactiveLns_ = value.getNumber();
7281 bitField0_ = (bitField0_ & ~0x40000000);
7282 useInactiveLns_ = 0;
7287 private int useGlobalCheapestInsertionPathLns_ = 0;
7299 return useGlobalCheapestInsertionPathLns_;
7313 useGlobalCheapestInsertionPathLns_ = value;
7314 bitField0_ |= 0x80000000;
7345 if (value ==
null) {
throw new NullPointerException(); }
7346 bitField0_ |= 0x80000000;
7347 useGlobalCheapestInsertionPathLns_ = value.getNumber();
7362 bitField0_ = (bitField0_ & ~0x80000000);
7363 useGlobalCheapestInsertionPathLns_ = 0;
7368 private int useLocalCheapestInsertionPathLns_ = 0;
7378 return useLocalCheapestInsertionPathLns_;
7390 useLocalCheapestInsertionPathLns_ = value;
7391 bitField1_ |= 0x00000001;
7418 if (value ==
null) {
throw new NullPointerException(); }
7419 bitField1_ |= 0x00000001;
7420 useLocalCheapestInsertionPathLns_ = value.getNumber();
7433 bitField1_ = (bitField1_ & ~0x00000001);
7434 useLocalCheapestInsertionPathLns_ = 0;
7439 private int useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = 0;
7451 return useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
7465 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = value;
7466 bitField1_ |= 0x00000002;
7497 if (value ==
null) {
throw new NullPointerException(); }
7498 bitField1_ |= 0x00000002;
7499 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = value.getNumber();
7514 bitField1_ = (bitField1_ & ~0x00000002);
7515 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = 0;
7520 private int useGlobalCheapestInsertionExpensiveChainLns_ = 0;
7533 return useGlobalCheapestInsertionExpensiveChainLns_;
7548 useGlobalCheapestInsertionExpensiveChainLns_ = value;
7549 bitField1_ |= 0x00000004;
7582 if (value ==
null) {
throw new NullPointerException(); }
7583 bitField1_ |= 0x00000004;
7584 useGlobalCheapestInsertionExpensiveChainLns_ = value.getNumber();
7600 bitField1_ = (bitField1_ & ~0x00000004);
7601 useGlobalCheapestInsertionExpensiveChainLns_ = 0;
7606 private int useLocalCheapestInsertionExpensiveChainLns_ = 0;
7617 return useLocalCheapestInsertionExpensiveChainLns_;
7630 useLocalCheapestInsertionExpensiveChainLns_ = value;
7631 bitField1_ |= 0x00000008;
7660 if (value ==
null) {
throw new NullPointerException(); }
7661 bitField1_ |= 0x00000008;
7662 useLocalCheapestInsertionExpensiveChainLns_ = value.getNumber();
7676 bitField1_ = (bitField1_ & ~0x00000008);
7677 useLocalCheapestInsertionExpensiveChainLns_ = 0;
7682 private int useGlobalCheapestInsertionCloseNodesLns_ = 0;
7695 return useGlobalCheapestInsertionCloseNodesLns_;
7710 useGlobalCheapestInsertionCloseNodesLns_ = value;
7711 bitField1_ |= 0x00000010;
7744 if (value ==
null) {
throw new NullPointerException(); }
7745 bitField1_ |= 0x00000010;
7746 useGlobalCheapestInsertionCloseNodesLns_ = value.getNumber();
7762 bitField1_ = (bitField1_ & ~0x00000010);
7763 useGlobalCheapestInsertionCloseNodesLns_ = 0;
7768 private int useLocalCheapestInsertionCloseNodesLns_ = 0;
7779 return useLocalCheapestInsertionCloseNodesLns_;
7792 useLocalCheapestInsertionCloseNodesLns_ = value;
7793 bitField1_ |= 0x00000020;
7822 if (value ==
null) {
throw new NullPointerException(); }
7823 bitField1_ |= 0x00000020;
7824 useLocalCheapestInsertionCloseNodesLns_ = value.getNumber();
7838 bitField1_ = (bitField1_ & ~0x00000020);
7839 useLocalCheapestInsertionCloseNodesLns_ = 0;
7844 private int useGlobalCheapestInsertionVisitTypesLns_ = 0;
7856 return useGlobalCheapestInsertionVisitTypesLns_;
7870 useGlobalCheapestInsertionVisitTypesLns_ = value;
7871 bitField1_ |= 0x00000040;
7902 if (value ==
null) {
throw new NullPointerException(); }
7903 bitField1_ |= 0x00000040;
7904 useGlobalCheapestInsertionVisitTypesLns_ = value.getNumber();
7919 bitField1_ = (bitField1_ & ~0x00000040);
7920 useGlobalCheapestInsertionVisitTypesLns_ = 0;
7925 private int useLocalCheapestInsertionVisitTypesLns_ = 0;
7936 return useLocalCheapestInsertionVisitTypesLns_;
7949 useLocalCheapestInsertionVisitTypesLns_ = value;
7950 bitField1_ |= 0x00000080;
7979 if (value ==
null) {
throw new NullPointerException(); }
7980 bitField1_ |= 0x00000080;
7981 useLocalCheapestInsertionVisitTypesLns_ = value.getNumber();
7995 bitField1_ = (bitField1_ & ~0x00000080);
7996 useLocalCheapestInsertionVisitTypesLns_ = 0;
8007 DEFAULT_INSTANCE =
new com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators();
8011 return DEFAULT_INSTANCE;
8018 com.google.protobuf.CodedInputStream input,
8019 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8020 throws com.google.protobuf.InvalidProtocolBufferException {
8023 builder.
mergeFrom(input, extensionRegistry);
8024 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
8026 }
catch (com.google.protobuf.UninitializedMessageException e) {
8027 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.
buildPartial());
8028 }
catch (java.io.IOException e) {
8029 throw new com.google.protobuf.InvalidProtocolBufferException(e)
8036 public static com.google.protobuf.Parser<LocalSearchNeighborhoodOperators>
parser() {
8047 return DEFAULT_INSTANCE;
8054 com.google.protobuf.MessageOrBuilder {
8089 public static final class ImprovementSearchLimitParameters
extends
8090 com.google.protobuf.GeneratedMessage implements
8093 private static final long serialVersionUID = 0L;
8095 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
8096 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
8101 "ImprovementSearchLimitParameters");
8104 private ImprovementSearchLimitParameters(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
8107 private ImprovementSearchLimitParameters() {
8110 public static final com.google.protobuf.Descriptors.Descriptor
8112 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_ImprovementSearchLimitParameters_descriptor;
8116 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
8118 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_ImprovementSearchLimitParameters_fieldAccessorTable
8119 .ensureFieldAccessorsInitialized(
8120 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.class, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder.class);
8124 private double improvementRateCoefficient_ = 0D;
8137 return improvementRateCoefficient_;
8141 private int improvementRateSolutionsDistance_ = 0;
8156 return improvementRateSolutionsDistance_;
8159 private byte memoizedIsInitialized = -1;
8166 memoizedIsInitialized = 1;
8171 public void writeTo(com.google.protobuf.CodedOutputStream output)
8172 throws java.io.IOException {
8173 if (java.lang.Double.doubleToRawLongBits(improvementRateCoefficient_) != 0) {
8174 output.writeDouble(38, improvementRateCoefficient_);
8176 if (improvementRateSolutionsDistance_ != 0) {
8177 output.writeInt32(39, improvementRateSolutionsDistance_);
8179 getUnknownFields().writeTo(output);
8184 int size = memoizedSize;
8185 if (size != -1)
return size;
8188 if (java.lang.Double.doubleToRawLongBits(improvementRateCoefficient_) != 0) {
8189 size += com.google.protobuf.CodedOutputStream
8190 .computeDoubleSize(38, improvementRateCoefficient_);
8192 if (improvementRateSolutionsDistance_ != 0) {
8193 size += com.google.protobuf.CodedOutputStream
8194 .computeInt32Size(39, improvementRateSolutionsDistance_);
8196 size += getUnknownFields().getSerializedSize();
8197 memoizedSize = size;
8202 public boolean equals(
final java.lang.Object obj) {
8206 if (!(obj instanceof com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters)) {
8207 return super.equals(obj);
8212 != java.lang.Double.doubleToLongBits(
8216 if (!getUnknownFields().
equals(other.getUnknownFields()))
return false;
8222 if (memoizedHashCode != 0) {
8223 return memoizedHashCode;
8228 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
8232 hash = (29 * hash) + getUnknownFields().hashCode();
8233 memoizedHashCode = hash;
8238 java.nio.ByteBuffer data)
8239 throws com.google.protobuf.InvalidProtocolBufferException {
8240 return PARSER.parseFrom(data);
8243 java.nio.ByteBuffer data,
8244 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8245 throws com.google.protobuf.InvalidProtocolBufferException {
8246 return PARSER.parseFrom(data, extensionRegistry);
8249 com.google.protobuf.ByteString data)
8250 throws com.google.protobuf.InvalidProtocolBufferException {
8251 return PARSER.parseFrom(data);
8254 com.google.protobuf.ByteString data,
8255 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8256 throws com.google.protobuf.InvalidProtocolBufferException {
8257 return PARSER.parseFrom(data, extensionRegistry);
8260 throws com.google.protobuf.InvalidProtocolBufferException {
8261 return PARSER.parseFrom(data);
8265 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8266 throws com.google.protobuf.InvalidProtocolBufferException {
8267 return PARSER.parseFrom(data, extensionRegistry);
8270 throws java.io.IOException {
8271 return com.google.protobuf.GeneratedMessage
8272 .parseWithIOException(PARSER, input);
8275 java.io.InputStream input,
8276 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8277 throws java.io.IOException {
8278 return com.google.protobuf.GeneratedMessage
8279 .parseWithIOException(PARSER, input, extensionRegistry);
8283 throws java.io.IOException {
8284 return com.google.protobuf.GeneratedMessage
8285 .parseDelimitedWithIOException(PARSER, input);
8289 java.io.InputStream input,
8290 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8291 throws java.io.IOException {
8292 return com.google.protobuf.GeneratedMessage
8293 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
8296 com.google.protobuf.CodedInputStream input)
8297 throws java.io.IOException {
8298 return com.google.protobuf.GeneratedMessage
8299 .parseWithIOException(PARSER, input);
8302 com.google.protobuf.CodedInputStream input,
8303 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8304 throws java.io.IOException {
8305 return com.google.protobuf.GeneratedMessage
8306 .parseWithIOException(PARSER, input, extensionRegistry);
8312 return DEFAULT_INSTANCE.toBuilder();
8314 public static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters prototype) {
8315 return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
8319 return this == DEFAULT_INSTANCE
8325 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
8336 public static final class Builder
extends
8337 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
8340 public static final com.google.protobuf.Descriptors.Descriptor
8342 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_ImprovementSearchLimitParameters_descriptor;
8346 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
8348 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_ImprovementSearchLimitParameters_fieldAccessorTable
8349 .ensureFieldAccessorsInitialized(
8350 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.class, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder.class);
8359 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
8367 improvementRateCoefficient_ = 0D;
8368 improvementRateSolutionsDistance_ = 0;
8373 public com.google.protobuf.Descriptors.Descriptor
8375 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_ImprovementSearchLimitParameters_descriptor;
8380 return com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance();
8387 throw newUninitializedMessageException(result);
8395 if (bitField0_ != 0) { buildPartial0(result); }
8400 private void buildPartial0(com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters result) {
8401 int from_bitField0_ = bitField0_;
8402 if (((from_bitField0_ & 0x00000001) != 0)) {
8403 result.improvementRateCoefficient_ = improvementRateCoefficient_;
8405 if (((from_bitField0_ & 0x00000002) != 0)) {
8406 result.improvementRateSolutionsDistance_ = improvementRateSolutionsDistance_;
8411 public Builder
mergeFrom(com.google.protobuf.Message other) {
8412 if (other instanceof com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters) {
8413 return mergeFrom((com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters)other);
8415 super.mergeFrom(other);
8420 public Builder
mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters other) {
8421 if (other == com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance())
return this;
8422 if (java.lang.Double.doubleToRawLongBits(other.getImprovementRateCoefficient()) != 0) {
8425 if (other.getImprovementRateSolutionsDistance() != 0) {
8428 this.mergeUnknownFields(other.getUnknownFields());
8440 com.google.protobuf.CodedInputStream input,
8441 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8442 throws java.io.IOException {
8443 if (extensionRegistry ==
null) {
8444 throw new java.lang.NullPointerException();
8447 boolean done =
false;
8449 int tag = input.readTag();
8455 improvementRateCoefficient_ = input.readDouble();
8456 bitField0_ |= 0x00000001;
8460 improvementRateSolutionsDistance_ = input.readInt32();
8461 bitField0_ |= 0x00000002;
8465 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
8472 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
8473 throw e.unwrapIOException();
8479 private int bitField0_;
8481 private double improvementRateCoefficient_ ;
8494 return improvementRateCoefficient_;
8509 improvementRateCoefficient_ = value;
8510 bitField0_ |= 0x00000001;
8525 bitField0_ = (bitField0_ & ~0x00000001);
8526 improvementRateCoefficient_ = 0D;
8531 private int improvementRateSolutionsDistance_ ;
8546 return improvementRateSolutionsDistance_;
8563 improvementRateSolutionsDistance_ = value;
8564 bitField0_ |= 0x00000002;
8581 bitField0_ = (bitField0_ & ~0x00000002);
8582 improvementRateSolutionsDistance_ = 0;
8593 DEFAULT_INSTANCE =
new com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters();
8597 return DEFAULT_INSTANCE;
8604 com.google.protobuf.CodedInputStream input,
8605 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8606 throws com.google.protobuf.InvalidProtocolBufferException {
8609 builder.
mergeFrom(input, extensionRegistry);
8610 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
8612 }
catch (com.google.protobuf.UninitializedMessageException e) {
8613 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.
buildPartial());
8614 }
catch (java.io.IOException e) {
8615 throw new com.google.protobuf.InvalidProtocolBufferException(e)
8622 public static com.google.protobuf.Parser<ImprovementSearchLimitParameters>
parser() {
8633 return DEFAULT_INSTANCE;
8638 private int bitField0_;
8640 private int firstSolutionStrategy_ = 0;
8650 return firstSolutionStrategy_;
8666 private boolean useUnfilteredFirstSolutionStrategy_ =
false;
8680 return useUnfilteredFirstSolutionStrategy_;
8695 return ((bitField0_ & 0x00000001) != 0);
8707 return savingsParameters_ ==
null ? com.google.ortools.constraintsolver.SavingsParameters.getDefaultInstance() : savingsParameters_;
8718 return savingsParameters_ ==
null ? com.google.ortools.constraintsolver.SavingsParameters.getDefaultInstance() : savingsParameters_;
8734 return ((bitField0_ & 0x00000002) != 0);
8747 return globalCheapestInsertionFirstSolutionParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionFirstSolutionParameters_;
8759 return globalCheapestInsertionFirstSolutionParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionFirstSolutionParameters_;
8777 return ((bitField0_ & 0x00000004) != 0);
8792 return globalCheapestInsertionLsOperatorParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionLsOperatorParameters_;
8806 return globalCheapestInsertionLsOperatorParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionLsOperatorParameters_;
8821 return ((bitField0_ & 0x00000008) != 0);
8833 return localCheapestInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestInsertionParameters_;
8844 return localCheapestInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestInsertionParameters_;
8859 return ((bitField0_ & 0x00000010) != 0);
8871 return localCheapestCostInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestCostInsertionParameters_;
8882 return localCheapestCostInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestCostInsertionParameters_;
8886 private boolean christofidesUseMinimumMatching_ =
false;
8898 return christofidesUseMinimumMatching_;
8902 private int firstSolutionOptimizationPeriod_ = 0;
8919 return firstSolutionOptimizationPeriod_;
8930 return ((bitField0_ & 0x00000020) != 0);
8938 return localSearchOperators_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
8945 return localSearchOperators_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
8949 private double lsOperatorNeighborsRatio_ = 0D;
8964 return lsOperatorNeighborsRatio_;
8968 private int lsOperatorMinNeighbors_ = 0;
8975 return lsOperatorMinNeighbors_;
8979 private boolean useMultiArmedBanditConcatenateOperators_ =
false;
8992 return useMultiArmedBanditConcatenateOperators_;
8996 private double multiArmedBanditCompoundOperatorMemoryCoefficient_ = 0D;
9010 return multiArmedBanditCompoundOperatorMemoryCoefficient_;
9014 private double multiArmedBanditCompoundOperatorExplorationCoefficient_ = 0D;
9027 return multiArmedBanditCompoundOperatorExplorationCoefficient_;
9031 private int maxSwapActiveChainSize_ = 0;
9042 return maxSwapActiveChainSize_;
9046 private int relocateExpensiveChainNumArcsToConsider_ = 0;
9063 return relocateExpensiveChainNumArcsToConsider_;
9067 private int heuristicExpensiveChainLnsNumArcsToConsider_ = 0;
9079 return heuristicExpensiveChainLnsNumArcsToConsider_;
9083 private int heuristicCloseNodesLnsNumNodes_ = 0;
9095 return heuristicCloseNodesLnsNumNodes_;
9099 private int localSearchMetaheuristic_ = 0;
9109 return localSearchMetaheuristic_;
9125 @SuppressWarnings(
"serial")
9126 private com.google.protobuf.Internal.IntList localSearchMetaheuristics_ =
9128 private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
9130 new com.google.protobuf.Internal.IntListAdapter.IntConverter<
9150 return new com.google.protobuf.Internal.IntListAdapter<
9151 com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value>(localSearchMetaheuristics_, localSearchMetaheuristics_converter_);
9166 return localSearchMetaheuristics_.size();
9182 return localSearchMetaheuristics_converter_.convert(localSearchMetaheuristics_.getInt(index));
9196 public java.util.List<java.lang.Integer>
9198 return localSearchMetaheuristics_;
9214 return localSearchMetaheuristics_.getInt(index);
9216 private int localSearchMetaheuristicsMemoizedSerializedSize;
9219 private int numMaxLocalOptimaBeforeMetaheuristicSwitch_ = 0;
9226 return numMaxLocalOptimaBeforeMetaheuristicSwitch_;
9230 private double guidedLocalSearchLambdaCoefficient_ = 0D;
9244 return guidedLocalSearchLambdaCoefficient_;
9248 private boolean guidedLocalSearchResetPenaltiesOnNewBestSolution_ =
false;
9260 return guidedLocalSearchResetPenaltiesOnNewBestSolution_;
9264 private boolean guidedLocalSearchPenalizeWithVehicleClasses_ =
false;
9277 return guidedLocalSearchPenalizeWithVehicleClasses_;
9281 private boolean useGuidedLocalSearchPenaltiesInLocalSearchOperators_ =
false;
9293 return useGuidedLocalSearchPenaltiesInLocalSearchOperators_;
9297 private boolean useDepthFirstSearch_ =
false;
9311 return useDepthFirstSearch_;
9315 private int useCp_ = 0;
9345 private int useCpSat_ = 0;
9377 private int useGeneralizedCpSat_ = 0;
9390 return useGeneralizedCpSat_;
9421 return ((bitField0_ & 0x00000040) != 0);
9434 return satParameters_ ==
null ? com.google.ortools.sat.SatParameters.getDefaultInstance() : satParameters_;
9446 return satParameters_ ==
null ? com.google.ortools.sat.SatParameters.getDefaultInstance() : satParameters_;
9450 private boolean reportIntermediateCpSatSolutions_ =
false;
9462 return reportIntermediateCpSatSolutions_;
9466 private int fallbackToCpSatSizeThreshold_ = 0;
9478 return fallbackToCpSatSizeThreshold_;
9482 private int continuousSchedulingSolver_ = 0;
9488 return continuousSchedulingSolver_;
9500 private int mixedIntegerSchedulingSolver_ = 0;
9506 return mixedIntegerSchedulingSolver_;
9518 private boolean disableSchedulingBewareThisMayDegradePerformance_ =
false;
9530 return ((bitField0_ & 0x00000080) != 0);
9543 return disableSchedulingBewareThisMayDegradePerformance_;
9547 private double optimizationStep_ = 0D;
9560 return optimizationStep_;
9564 private int numberOfSolutionsToCollect_ = 0;
9576 return numberOfSolutionsToCollect_;
9580 private long solutionLimit_ = 0L;
9593 return solutionLimit_;
9597 private com.google.protobuf.Duration timeLimit_;
9608 return ((bitField0_ & 0x00000100) != 0);
9620 return timeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
9631 return timeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
9635 private com.google.protobuf.Duration lnsTimeLimit_;
9647 return ((bitField0_ & 0x00000200) != 0);
9660 return lnsTimeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
9672 return lnsTimeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
9676 private double secondaryLsTimeLimitRatio_ = 0D;
9692 return secondaryLsTimeLimitRatio_;
9708 return ((bitField0_ & 0x00000400) != 0);
9721 return improvementLimitParameters_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance() : improvementLimitParameters_;
9733 return improvementLimitParameters_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance() : improvementLimitParameters_;
9737 private boolean useFullPropagation_ =
false;
9757 return useFullPropagation_;
9761 private boolean logSearch_ =
false;
9788 private double logCostScalingFactor_ = 0D;
9800 return logCostScalingFactor_;
9804 private double logCostOffset_ = 0D;
9811 return logCostOffset_;
9815 @SuppressWarnings(
"serial")
9816 private volatile java.lang.Object logTag_ =
"";
9828 java.lang.Object ref = logTag_;
9829 if (ref instanceof java.lang.String) {
9830 return (java.lang.String) ref;
9832 com.google.protobuf.ByteString bs =
9833 (com.google.protobuf.ByteString) ref;
9834 java.lang.String s = bs.toStringUtf8();
9849 public com.google.protobuf.ByteString
9851 java.lang.Object ref = logTag_;
9852 if (ref instanceof java.lang.String) {
9853 com.google.protobuf.ByteString b =
9854 com.google.protobuf.ByteString.copyFromUtf8(
9855 (java.lang.String) ref);
9859 return (com.google.protobuf.ByteString) ref;
9864 private boolean useIteratedLocalSearch_ =
false;
9876 return useIteratedLocalSearch_;
9891 return ((bitField0_ & 0x00000800) != 0);
9903 return iteratedLocalSearchParameters_ ==
null ? com.google.ortools.constraintsolver.IteratedLocalSearchParameters.getDefaultInstance() : iteratedLocalSearchParameters_;
9914 return iteratedLocalSearchParameters_ ==
null ? com.google.ortools.constraintsolver.IteratedLocalSearchParameters.getDefaultInstance() : iteratedLocalSearchParameters_;
9917 private byte memoizedIsInitialized = -1;
9924 memoizedIsInitialized = 1;
9929 public void writeTo(com.google.protobuf.CodedOutputStream output)
9930 throws java.io.IOException {
9932 if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
9933 output.writeEnum(1, firstSolutionStrategy_);
9935 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
9936 output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
9938 if (((bitField0_ & 0x00000020) != 0)) {
9941 if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
9942 output.writeEnum(4, localSearchMetaheuristic_);
9944 if (java.lang.Double.doubleToRawLongBits(guidedLocalSearchLambdaCoefficient_) != 0) {
9945 output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
9947 if (useDepthFirstSearch_ !=
false) {
9948 output.writeBool(6, useDepthFirstSearch_);
9950 if (java.lang.Double.doubleToRawLongBits(optimizationStep_) != 0) {
9951 output.writeDouble(7, optimizationStep_);
9953 if (solutionLimit_ != 0L) {
9954 output.writeInt64(8, solutionLimit_);
9956 if (((bitField0_ & 0x00000100) != 0)) {
9959 if (((bitField0_ & 0x00000200) != 0)) {
9962 if (useFullPropagation_ !=
false) {
9963 output.writeBool(11, useFullPropagation_);
9965 if (logSearch_ !=
false) {
9966 output.writeBool(13, logSearch_);
9968 if (numberOfSolutionsToCollect_ != 0) {
9969 output.writeInt32(17, numberOfSolutionsToCollect_);
9971 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
9972 output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
9974 if (java.lang.Double.doubleToRawLongBits(logCostScalingFactor_) != 0) {
9975 output.writeDouble(22, logCostScalingFactor_);
9977 if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
9978 output.writeEnum(27, useCpSat_);
9980 if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
9981 output.writeEnum(28, useCp_);
9983 if (java.lang.Double.doubleToRawLongBits(logCostOffset_) != 0) {
9984 output.writeDouble(29, logCostOffset_);
9986 if (christofidesUseMinimumMatching_ !=
false) {
9987 output.writeBool(30, christofidesUseMinimumMatching_);
9989 if (heuristicExpensiveChainLnsNumArcsToConsider_ != 0) {
9990 output.writeInt32(32, heuristicExpensiveChainLnsNumArcsToConsider_);
9992 if (continuousSchedulingSolver_ != com.google.ortools.constraintsolver.RoutingSearchParameters.SchedulingSolver.SCHEDULING_UNSET.getNumber()) {
9993 output.writeEnum(33, continuousSchedulingSolver_);
9995 if (mixedIntegerSchedulingSolver_ != com.google.ortools.constraintsolver.RoutingSearchParameters.SchedulingSolver.SCHEDULING_UNSET.getNumber()) {
9996 output.writeEnum(34, mixedIntegerSchedulingSolver_);
9998 if (heuristicCloseNodesLnsNumNodes_ != 0) {
9999 output.writeInt32(35, heuristicCloseNodesLnsNumNodes_);
10001 if (!com.google.protobuf.GeneratedMessage.isStringEmpty(logTag_)) {
10002 com.google.protobuf.GeneratedMessage.writeString(output, 36, logTag_);
10004 if (((bitField0_ & 0x00000400) != 0)) {
10007 if (useMultiArmedBanditConcatenateOperators_ !=
false) {
10008 output.writeBool(41, useMultiArmedBanditConcatenateOperators_);
10010 if (java.lang.Double.doubleToRawLongBits(multiArmedBanditCompoundOperatorMemoryCoefficient_) != 0) {
10011 output.writeDouble(42, multiArmedBanditCompoundOperatorMemoryCoefficient_);
10013 if (java.lang.Double.doubleToRawLongBits(multiArmedBanditCompoundOperatorExplorationCoefficient_) != 0) {
10014 output.writeDouble(43, multiArmedBanditCompoundOperatorExplorationCoefficient_);
10016 if (useGeneralizedCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
10017 output.writeEnum(47, useGeneralizedCpSat_);
10019 if (((bitField0_ & 0x00000040) != 0)) {
10022 if (((bitField0_ & 0x00000080) != 0)) {
10023 output.writeBool(50, disableSchedulingBewareThisMayDegradePerformance_);
10025 if (guidedLocalSearchResetPenaltiesOnNewBestSolution_ !=
false) {
10026 output.writeBool(51, guidedLocalSearchResetPenaltiesOnNewBestSolution_);
10028 if (fallbackToCpSatSizeThreshold_ != 0) {
10029 output.writeInt32(52, fallbackToCpSatSizeThreshold_);
10031 if (java.lang.Double.doubleToRawLongBits(lsOperatorNeighborsRatio_) != 0) {
10032 output.writeDouble(53, lsOperatorNeighborsRatio_);
10034 if (lsOperatorMinNeighbors_ != 0) {
10035 output.writeInt32(54, lsOperatorMinNeighbors_);
10037 if (reportIntermediateCpSatSolutions_ !=
false) {
10038 output.writeBool(56, reportIntermediateCpSatSolutions_);
10040 if (java.lang.Double.doubleToRawLongBits(secondaryLsTimeLimitRatio_) != 0) {
10041 output.writeDouble(57, secondaryLsTimeLimitRatio_);
10043 if (useIteratedLocalSearch_ !=
false) {
10044 output.writeBool(58, useIteratedLocalSearch_);
10046 if (firstSolutionOptimizationPeriod_ != 0) {
10047 output.writeInt32(59, firstSolutionOptimizationPeriod_);
10049 if (((bitField0_ & 0x00000800) != 0)) {
10052 if (guidedLocalSearchPenalizeWithVehicleClasses_ !=
false) {
10053 output.writeBool(61, guidedLocalSearchPenalizeWithVehicleClasses_);
10055 if (useGuidedLocalSearchPenaltiesInLocalSearchOperators_ !=
false) {
10056 output.writeBool(62, useGuidedLocalSearchPenaltiesInLocalSearchOperators_);
10059 output.writeUInt32NoTag(506);
10060 output.writeUInt32NoTag(localSearchMetaheuristicsMemoizedSerializedSize);
10062 for (
int i = 0; i < localSearchMetaheuristics_.size(); i++) {
10063 output.writeEnumNoTag(localSearchMetaheuristics_.getInt(i));
10065 if (numMaxLocalOptimaBeforeMetaheuristicSwitch_ != 0) {
10066 output.writeInt32(64, numMaxLocalOptimaBeforeMetaheuristicSwitch_);
10068 if (maxSwapActiveChainSize_ != 0) {
10069 output.writeInt32(66, maxSwapActiveChainSize_);
10071 if (((bitField0_ & 0x00000008) != 0)) {
10074 if (((bitField0_ & 0x00000010) != 0)) {
10077 if (((bitField0_ & 0x00000001) != 0)) {
10080 if (((bitField0_ & 0x00000002) != 0)) {
10083 if (((bitField0_ & 0x00000004) != 0)) {
10086 getUnknownFields().writeTo(output);
10089 @java.lang.Override
10091 int size = memoizedSize;
10092 if (size != -1)
return size;
10095 if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
10096 size += com.google.protobuf.CodedOutputStream
10097 .computeEnumSize(1, firstSolutionStrategy_);
10099 if (useUnfilteredFirstSolutionStrategy_ !=
false) {
10100 size += com.google.protobuf.CodedOutputStream
10101 .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
10103 if (((bitField0_ & 0x00000020) != 0)) {
10104 size += com.google.protobuf.CodedOutputStream
10107 if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
10108 size += com.google.protobuf.CodedOutputStream
10109 .computeEnumSize(4, localSearchMetaheuristic_);
10111 if (java.lang.Double.doubleToRawLongBits(guidedLocalSearchLambdaCoefficient_) != 0) {
10112 size += com.google.protobuf.CodedOutputStream
10113 .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
10115 if (useDepthFirstSearch_ !=
false) {
10116 size += com.google.protobuf.CodedOutputStream
10117 .computeBoolSize(6, useDepthFirstSearch_);
10119 if (java.lang.Double.doubleToRawLongBits(optimizationStep_) != 0) {
10120 size += com.google.protobuf.CodedOutputStream
10121 .computeDoubleSize(7, optimizationStep_);
10123 if (solutionLimit_ != 0L) {
10124 size += com.google.protobuf.CodedOutputStream
10125 .computeInt64Size(8, solutionLimit_);
10127 if (((bitField0_ & 0x00000100) != 0)) {
10128 size += com.google.protobuf.CodedOutputStream
10131 if (((bitField0_ & 0x00000200) != 0)) {
10132 size += com.google.protobuf.CodedOutputStream
10135 if (useFullPropagation_ !=
false) {
10136 size += com.google.protobuf.CodedOutputStream
10137 .computeBoolSize(11, useFullPropagation_);
10139 if (logSearch_ !=
false) {
10140 size += com.google.protobuf.CodedOutputStream
10141 .computeBoolSize(13, logSearch_);
10143 if (numberOfSolutionsToCollect_ != 0) {
10144 size += com.google.protobuf.CodedOutputStream
10145 .computeInt32Size(17, numberOfSolutionsToCollect_);
10147 if (relocateExpensiveChainNumArcsToConsider_ != 0) {
10148 size += com.google.protobuf.CodedOutputStream
10149 .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
10151 if (java.lang.Double.doubleToRawLongBits(logCostScalingFactor_) != 0) {
10152 size += com.google.protobuf.CodedOutputStream
10153 .computeDoubleSize(22, logCostScalingFactor_);
10155 if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
10156 size += com.google.protobuf.CodedOutputStream
10157 .computeEnumSize(27, useCpSat_);
10159 if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
10160 size += com.google.protobuf.CodedOutputStream
10161 .computeEnumSize(28, useCp_);
10163 if (java.lang.Double.doubleToRawLongBits(logCostOffset_) != 0) {
10164 size += com.google.protobuf.CodedOutputStream
10165 .computeDoubleSize(29, logCostOffset_);
10167 if (christofidesUseMinimumMatching_ !=
false) {
10168 size += com.google.protobuf.CodedOutputStream
10169 .computeBoolSize(30, christofidesUseMinimumMatching_);
10171 if (heuristicExpensiveChainLnsNumArcsToConsider_ != 0) {
10172 size += com.google.protobuf.CodedOutputStream
10173 .computeInt32Size(32, heuristicExpensiveChainLnsNumArcsToConsider_);
10175 if (continuousSchedulingSolver_ != com.google.ortools.constraintsolver.RoutingSearchParameters.SchedulingSolver.SCHEDULING_UNSET.getNumber()) {
10176 size += com.google.protobuf.CodedOutputStream
10177 .computeEnumSize(33, continuousSchedulingSolver_);
10179 if (mixedIntegerSchedulingSolver_ != com.google.ortools.constraintsolver.RoutingSearchParameters.SchedulingSolver.SCHEDULING_UNSET.getNumber()) {
10180 size += com.google.protobuf.CodedOutputStream
10181 .computeEnumSize(34, mixedIntegerSchedulingSolver_);
10183 if (heuristicCloseNodesLnsNumNodes_ != 0) {
10184 size += com.google.protobuf.CodedOutputStream
10185 .computeInt32Size(35, heuristicCloseNodesLnsNumNodes_);
10187 if (!com.google.protobuf.GeneratedMessage.isStringEmpty(logTag_)) {
10188 size += com.google.protobuf.GeneratedMessage.computeStringSize(36, logTag_);
10190 if (((bitField0_ & 0x00000400) != 0)) {
10191 size += com.google.protobuf.CodedOutputStream
10194 if (useMultiArmedBanditConcatenateOperators_ !=
false) {
10195 size += com.google.protobuf.CodedOutputStream
10196 .computeBoolSize(41, useMultiArmedBanditConcatenateOperators_);
10198 if (java.lang.Double.doubleToRawLongBits(multiArmedBanditCompoundOperatorMemoryCoefficient_) != 0) {
10199 size += com.google.protobuf.CodedOutputStream
10200 .computeDoubleSize(42, multiArmedBanditCompoundOperatorMemoryCoefficient_);
10202 if (java.lang.Double.doubleToRawLongBits(multiArmedBanditCompoundOperatorExplorationCoefficient_) != 0) {
10203 size += com.google.protobuf.CodedOutputStream
10204 .computeDoubleSize(43, multiArmedBanditCompoundOperatorExplorationCoefficient_);
10206 if (useGeneralizedCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
10207 size += com.google.protobuf.CodedOutputStream
10208 .computeEnumSize(47, useGeneralizedCpSat_);
10210 if (((bitField0_ & 0x00000040) != 0)) {
10211 size += com.google.protobuf.CodedOutputStream
10214 if (((bitField0_ & 0x00000080) != 0)) {
10215 size += com.google.protobuf.CodedOutputStream
10216 .computeBoolSize(50, disableSchedulingBewareThisMayDegradePerformance_);
10218 if (guidedLocalSearchResetPenaltiesOnNewBestSolution_ !=
false) {
10219 size += com.google.protobuf.CodedOutputStream
10220 .computeBoolSize(51, guidedLocalSearchResetPenaltiesOnNewBestSolution_);
10222 if (fallbackToCpSatSizeThreshold_ != 0) {
10223 size += com.google.protobuf.CodedOutputStream
10224 .computeInt32Size(52, fallbackToCpSatSizeThreshold_);
10226 if (java.lang.Double.doubleToRawLongBits(lsOperatorNeighborsRatio_) != 0) {
10227 size += com.google.protobuf.CodedOutputStream
10228 .computeDoubleSize(53, lsOperatorNeighborsRatio_);
10230 if (lsOperatorMinNeighbors_ != 0) {
10231 size += com.google.protobuf.CodedOutputStream
10232 .computeInt32Size(54, lsOperatorMinNeighbors_);
10234 if (reportIntermediateCpSatSolutions_ !=
false) {
10235 size += com.google.protobuf.CodedOutputStream
10236 .computeBoolSize(56, reportIntermediateCpSatSolutions_);
10238 if (java.lang.Double.doubleToRawLongBits(secondaryLsTimeLimitRatio_) != 0) {
10239 size += com.google.protobuf.CodedOutputStream
10240 .computeDoubleSize(57, secondaryLsTimeLimitRatio_);
10242 if (useIteratedLocalSearch_ !=
false) {
10243 size += com.google.protobuf.CodedOutputStream
10244 .computeBoolSize(58, useIteratedLocalSearch_);
10246 if (firstSolutionOptimizationPeriod_ != 0) {
10247 size += com.google.protobuf.CodedOutputStream
10248 .computeInt32Size(59, firstSolutionOptimizationPeriod_);
10250 if (((bitField0_ & 0x00000800) != 0)) {
10251 size += com.google.protobuf.CodedOutputStream
10254 if (guidedLocalSearchPenalizeWithVehicleClasses_ !=
false) {
10255 size += com.google.protobuf.CodedOutputStream
10256 .computeBoolSize(61, guidedLocalSearchPenalizeWithVehicleClasses_);
10258 if (useGuidedLocalSearchPenaltiesInLocalSearchOperators_ !=
false) {
10259 size += com.google.protobuf.CodedOutputStream
10260 .computeBoolSize(62, useGuidedLocalSearchPenaltiesInLocalSearchOperators_);
10264 for (
int i = 0; i < localSearchMetaheuristics_.size(); i++) {
10265 dataSize += com.google.protobuf.CodedOutputStream
10266 .computeEnumSizeNoTag(localSearchMetaheuristics_.getInt(i));
10270 size += com.google.protobuf.CodedOutputStream
10271 .computeUInt32SizeNoTag(dataSize);
10272 }localSearchMetaheuristicsMemoizedSerializedSize = dataSize;
10274 if (numMaxLocalOptimaBeforeMetaheuristicSwitch_ != 0) {
10275 size += com.google.protobuf.CodedOutputStream
10276 .computeInt32Size(64, numMaxLocalOptimaBeforeMetaheuristicSwitch_);
10278 if (maxSwapActiveChainSize_ != 0) {
10279 size += com.google.protobuf.CodedOutputStream
10280 .computeInt32Size(66, maxSwapActiveChainSize_);
10282 if (((bitField0_ & 0x00000008) != 0)) {
10283 size += com.google.protobuf.CodedOutputStream
10286 if (((bitField0_ & 0x00000010) != 0)) {
10287 size += com.google.protobuf.CodedOutputStream
10290 if (((bitField0_ & 0x00000001) != 0)) {
10291 size += com.google.protobuf.CodedOutputStream
10294 if (((bitField0_ & 0x00000002) != 0)) {
10295 size += com.google.protobuf.CodedOutputStream
10298 if (((bitField0_ & 0x00000004) != 0)) {
10299 size += com.google.protobuf.CodedOutputStream
10302 size += getUnknownFields().getSerializedSize();
10303 memoizedSize = size;
10307 @java.lang.Override
10308 public boolean equals(
final java.lang.Object obj) {
10312 if (!(obj instanceof com.google.ortools.constraintsolver.RoutingSearchParameters)) {
10313 return super.equals(obj);
10317 if (firstSolutionStrategy_ != other.firstSolutionStrategy_)
return false;
10355 != java.lang.Double.doubleToLongBits(
10362 != java.lang.Double.doubleToLongBits(
10365 != java.lang.Double.doubleToLongBits(
10375 if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_)
return false;
10376 if (!localSearchMetaheuristics_.equals(other.localSearchMetaheuristics_))
return false;
10380 != java.lang.Double.doubleToLongBits(
10390 if (useCp_ != other.useCp_)
return false;
10391 if (useCpSat_ != other.useCpSat_)
return false;
10392 if (useGeneralizedCpSat_ != other.useGeneralizedCpSat_)
return false;
10402 if (continuousSchedulingSolver_ != other.continuousSchedulingSolver_)
return false;
10403 if (mixedIntegerSchedulingSolver_ != other.mixedIntegerSchedulingSolver_)
return false;
10410 != java.lang.Double.doubleToLongBits(
10427 != java.lang.Double.doubleToLongBits(
10439 != java.lang.Double.doubleToLongBits(
10442 != java.lang.Double.doubleToLongBits(
10453 if (!getUnknownFields().
equals(other.getUnknownFields()))
return false;
10457 @java.lang.Override
10459 if (memoizedHashCode != 0) {
10460 return memoizedHashCode;
10465 hash = (53 * hash) + firstSolutionStrategy_;
10467 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10490 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10499 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10504 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10507 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10510 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10521 hash = (53 * hash) + localSearchMetaheuristic_;
10524 hash = (53 * hash) + localSearchMetaheuristics_.hashCode();
10529 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10532 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10535 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10538 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10541 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10544 hash = (53 * hash) + useCp_;
10546 hash = (53 * hash) + useCpSat_;
10548 hash = (53 * hash) + useGeneralizedCpSat_;
10554 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10559 hash = (53 * hash) + continuousSchedulingSolver_;
10561 hash = (53 * hash) + mixedIntegerSchedulingSolver_;
10564 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10568 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10573 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10584 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10591 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10594 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10597 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10600 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
10603 hash = (53 * hash) +
getLogTag().hashCode();
10605 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
10611 hash = (29 * hash) + getUnknownFields().hashCode();
10612 memoizedHashCode = hash;
10617 java.nio.ByteBuffer data)
10618 throws com.google.protobuf.InvalidProtocolBufferException {
10619 return PARSER.parseFrom(data);
10622 java.nio.ByteBuffer data,
10623 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10624 throws com.google.protobuf.InvalidProtocolBufferException {
10625 return PARSER.parseFrom(data, extensionRegistry);
10628 com.google.protobuf.ByteString data)
10629 throws com.google.protobuf.InvalidProtocolBufferException {
10630 return PARSER.parseFrom(data);
10633 com.google.protobuf.ByteString data,
10634 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10635 throws com.google.protobuf.InvalidProtocolBufferException {
10636 return PARSER.parseFrom(data, extensionRegistry);
10639 throws com.google.protobuf.InvalidProtocolBufferException {
10640 return PARSER.parseFrom(data);
10644 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10645 throws com.google.protobuf.InvalidProtocolBufferException {
10646 return PARSER.parseFrom(data, extensionRegistry);
10649 throws java.io.IOException {
10650 return com.google.protobuf.GeneratedMessage
10651 .parseWithIOException(PARSER, input);
10654 java.io.InputStream input,
10655 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10656 throws java.io.IOException {
10657 return com.google.protobuf.GeneratedMessage
10658 .parseWithIOException(PARSER, input, extensionRegistry);
10662 throws java.io.IOException {
10663 return com.google.protobuf.GeneratedMessage
10664 .parseDelimitedWithIOException(PARSER, input);
10668 java.io.InputStream input,
10669 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10670 throws java.io.IOException {
10671 return com.google.protobuf.GeneratedMessage
10672 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
10675 com.google.protobuf.CodedInputStream input)
10676 throws java.io.IOException {
10677 return com.google.protobuf.GeneratedMessage
10678 .parseWithIOException(PARSER, input);
10681 com.google.protobuf.CodedInputStream input,
10682 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
10683 throws java.io.IOException {
10684 return com.google.protobuf.GeneratedMessage
10685 .parseWithIOException(PARSER, input, extensionRegistry);
10688 @java.lang.Override
10691 return DEFAULT_INSTANCE.toBuilder();
10693 public static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters prototype) {
10694 return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
10696 @java.lang.Override
10698 return this == DEFAULT_INSTANCE
10702 @java.lang.Override
10704 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
10721 public static final class Builder
extends
10722 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
10725 public static final com.google.protobuf.Descriptors.Descriptor
10727 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
10730 @java.lang.Override
10731 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
10733 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
10734 .ensureFieldAccessorsInitialized(
10735 com.google.ortools.constraintsolver.RoutingSearchParameters.class, com.google.ortools.constraintsolver.RoutingSearchParameters.Builder.class);
10740 maybeForceBuilderInitialization();
10744 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
10746 maybeForceBuilderInitialization();
10748 private void maybeForceBuilderInitialization() {
10749 if (com.google.protobuf.GeneratedMessage
10750 .alwaysUseFieldBuilders) {
10751 internalGetSavingsParametersFieldBuilder();
10752 internalGetGlobalCheapestInsertionFirstSolutionParametersFieldBuilder();
10753 internalGetGlobalCheapestInsertionLsOperatorParametersFieldBuilder();
10754 internalGetLocalCheapestInsertionParametersFieldBuilder();
10755 internalGetLocalCheapestCostInsertionParametersFieldBuilder();
10756 internalGetLocalSearchOperatorsFieldBuilder();
10757 internalGetSatParametersFieldBuilder();
10758 internalGetTimeLimitFieldBuilder();
10759 internalGetLnsTimeLimitFieldBuilder();
10760 internalGetImprovementLimitParametersFieldBuilder();
10761 internalGetIteratedLocalSearchParametersFieldBuilder();
10764 @java.lang.Override
10769 firstSolutionStrategy_ = 0;
10770 useUnfilteredFirstSolutionStrategy_ =
false;
10771 savingsParameters_ =
null;
10772 if (savingsParametersBuilder_ !=
null) {
10773 savingsParametersBuilder_.dispose();
10774 savingsParametersBuilder_ =
null;
10776 globalCheapestInsertionFirstSolutionParameters_ =
null;
10777 if (globalCheapestInsertionFirstSolutionParametersBuilder_ !=
null) {
10778 globalCheapestInsertionFirstSolutionParametersBuilder_.dispose();
10779 globalCheapestInsertionFirstSolutionParametersBuilder_ =
null;
10781 globalCheapestInsertionLsOperatorParameters_ =
null;
10782 if (globalCheapestInsertionLsOperatorParametersBuilder_ !=
null) {
10783 globalCheapestInsertionLsOperatorParametersBuilder_.dispose();
10784 globalCheapestInsertionLsOperatorParametersBuilder_ =
null;
10786 localCheapestInsertionParameters_ =
null;
10787 if (localCheapestInsertionParametersBuilder_ !=
null) {
10788 localCheapestInsertionParametersBuilder_.dispose();
10789 localCheapestInsertionParametersBuilder_ =
null;
10791 localCheapestCostInsertionParameters_ =
null;
10792 if (localCheapestCostInsertionParametersBuilder_ !=
null) {
10793 localCheapestCostInsertionParametersBuilder_.dispose();
10794 localCheapestCostInsertionParametersBuilder_ =
null;
10796 christofidesUseMinimumMatching_ =
false;
10797 firstSolutionOptimizationPeriod_ = 0;
10798 localSearchOperators_ =
null;
10799 if (localSearchOperatorsBuilder_ !=
null) {
10800 localSearchOperatorsBuilder_.dispose();
10801 localSearchOperatorsBuilder_ =
null;
10803 lsOperatorNeighborsRatio_ = 0D;
10804 lsOperatorMinNeighbors_ = 0;
10805 useMultiArmedBanditConcatenateOperators_ =
false;
10806 multiArmedBanditCompoundOperatorMemoryCoefficient_ = 0D;
10807 multiArmedBanditCompoundOperatorExplorationCoefficient_ = 0D;
10808 maxSwapActiveChainSize_ = 0;
10809 relocateExpensiveChainNumArcsToConsider_ = 0;
10810 heuristicExpensiveChainLnsNumArcsToConsider_ = 0;
10811 heuristicCloseNodesLnsNumNodes_ = 0;
10812 localSearchMetaheuristic_ = 0;
10813 localSearchMetaheuristics_ = emptyIntList();
10814 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = 0;
10815 guidedLocalSearchLambdaCoefficient_ = 0D;
10816 guidedLocalSearchResetPenaltiesOnNewBestSolution_ =
false;
10817 guidedLocalSearchPenalizeWithVehicleClasses_ =
false;
10818 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ =
false;
10819 useDepthFirstSearch_ =
false;
10822 useGeneralizedCpSat_ = 0;
10823 satParameters_ =
null;
10824 if (satParametersBuilder_ !=
null) {
10825 satParametersBuilder_.dispose();
10826 satParametersBuilder_ =
null;
10828 reportIntermediateCpSatSolutions_ =
false;
10829 fallbackToCpSatSizeThreshold_ = 0;
10830 continuousSchedulingSolver_ = 0;
10831 mixedIntegerSchedulingSolver_ = 0;
10832 disableSchedulingBewareThisMayDegradePerformance_ =
false;
10833 optimizationStep_ = 0D;
10834 numberOfSolutionsToCollect_ = 0;
10835 solutionLimit_ = 0L;
10837 if (timeLimitBuilder_ !=
null) {
10838 timeLimitBuilder_.dispose();
10839 timeLimitBuilder_ =
null;
10841 lnsTimeLimit_ =
null;
10842 if (lnsTimeLimitBuilder_ !=
null) {
10843 lnsTimeLimitBuilder_.dispose();
10844 lnsTimeLimitBuilder_ =
null;
10846 secondaryLsTimeLimitRatio_ = 0D;
10847 improvementLimitParameters_ =
null;
10848 if (improvementLimitParametersBuilder_ !=
null) {
10849 improvementLimitParametersBuilder_.dispose();
10850 improvementLimitParametersBuilder_ =
null;
10852 useFullPropagation_ =
false;
10853 logSearch_ =
false;
10854 logCostScalingFactor_ = 0D;
10855 logCostOffset_ = 0D;
10857 useIteratedLocalSearch_ =
false;
10858 iteratedLocalSearchParameters_ =
null;
10859 if (iteratedLocalSearchParametersBuilder_ !=
null) {
10860 iteratedLocalSearchParametersBuilder_.dispose();
10861 iteratedLocalSearchParametersBuilder_ =
null;
10866 @java.lang.Override
10867 public com.google.protobuf.Descriptors.Descriptor
10869 return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
10872 @java.lang.Override
10874 return com.google.ortools.constraintsolver.RoutingSearchParameters.getDefaultInstance();
10877 @java.lang.Override
10881 throw newUninitializedMessageException(result);
10886 @java.lang.Override
10889 if (bitField0_ != 0) { buildPartial0(result); }
10890 if (bitField1_ != 0) { buildPartial1(result); }
10895 private void buildPartial0(com.google.ortools.constraintsolver.RoutingSearchParameters result) {
10896 int from_bitField0_ = bitField0_;
10897 if (((from_bitField0_ & 0x00000001) != 0)) {
10898 result.firstSolutionStrategy_ = firstSolutionStrategy_;
10900 if (((from_bitField0_ & 0x00000002) != 0)) {
10901 result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
10903 int to_bitField0_ = 0;
10904 if (((from_bitField0_ & 0x00000004) != 0)) {
10905 result.savingsParameters_ = savingsParametersBuilder_ ==
null
10906 ? savingsParameters_
10907 : savingsParametersBuilder_.build();
10908 to_bitField0_ |= 0x00000001;
10910 if (((from_bitField0_ & 0x00000008) != 0)) {
10911 result.globalCheapestInsertionFirstSolutionParameters_ = globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null
10912 ? globalCheapestInsertionFirstSolutionParameters_
10913 : globalCheapestInsertionFirstSolutionParametersBuilder_.build();
10914 to_bitField0_ |= 0x00000002;
10916 if (((from_bitField0_ & 0x00000010) != 0)) {
10917 result.globalCheapestInsertionLsOperatorParameters_ = globalCheapestInsertionLsOperatorParametersBuilder_ ==
null
10918 ? globalCheapestInsertionLsOperatorParameters_
10919 : globalCheapestInsertionLsOperatorParametersBuilder_.build();
10920 to_bitField0_ |= 0x00000004;
10922 if (((from_bitField0_ & 0x00000020) != 0)) {
10923 result.localCheapestInsertionParameters_ = localCheapestInsertionParametersBuilder_ ==
null
10924 ? localCheapestInsertionParameters_
10925 : localCheapestInsertionParametersBuilder_.build();
10926 to_bitField0_ |= 0x00000008;
10928 if (((from_bitField0_ & 0x00000040) != 0)) {
10929 result.localCheapestCostInsertionParameters_ = localCheapestCostInsertionParametersBuilder_ ==
null
10930 ? localCheapestCostInsertionParameters_
10931 : localCheapestCostInsertionParametersBuilder_.build();
10932 to_bitField0_ |= 0x00000010;
10934 if (((from_bitField0_ & 0x00000080) != 0)) {
10935 result.christofidesUseMinimumMatching_ = christofidesUseMinimumMatching_;
10937 if (((from_bitField0_ & 0x00000100) != 0)) {
10938 result.firstSolutionOptimizationPeriod_ = firstSolutionOptimizationPeriod_;
10940 if (((from_bitField0_ & 0x00000200) != 0)) {
10941 result.localSearchOperators_ = localSearchOperatorsBuilder_ ==
null
10942 ? localSearchOperators_
10943 : localSearchOperatorsBuilder_.build();
10944 to_bitField0_ |= 0x00000020;
10946 if (((from_bitField0_ & 0x00000400) != 0)) {
10947 result.lsOperatorNeighborsRatio_ = lsOperatorNeighborsRatio_;
10949 if (((from_bitField0_ & 0x00000800) != 0)) {
10950 result.lsOperatorMinNeighbors_ = lsOperatorMinNeighbors_;
10952 if (((from_bitField0_ & 0x00001000) != 0)) {
10953 result.useMultiArmedBanditConcatenateOperators_ = useMultiArmedBanditConcatenateOperators_;
10955 if (((from_bitField0_ & 0x00002000) != 0)) {
10956 result.multiArmedBanditCompoundOperatorMemoryCoefficient_ = multiArmedBanditCompoundOperatorMemoryCoefficient_;
10958 if (((from_bitField0_ & 0x00004000) != 0)) {
10959 result.multiArmedBanditCompoundOperatorExplorationCoefficient_ = multiArmedBanditCompoundOperatorExplorationCoefficient_;
10961 if (((from_bitField0_ & 0x00008000) != 0)) {
10962 result.maxSwapActiveChainSize_ = maxSwapActiveChainSize_;
10964 if (((from_bitField0_ & 0x00010000) != 0)) {
10965 result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
10967 if (((from_bitField0_ & 0x00020000) != 0)) {
10968 result.heuristicExpensiveChainLnsNumArcsToConsider_ = heuristicExpensiveChainLnsNumArcsToConsider_;
10970 if (((from_bitField0_ & 0x00040000) != 0)) {
10971 result.heuristicCloseNodesLnsNumNodes_ = heuristicCloseNodesLnsNumNodes_;
10973 if (((from_bitField0_ & 0x00080000) != 0)) {
10974 result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
10976 if (((from_bitField0_ & 0x00100000) != 0)) {
10977 localSearchMetaheuristics_.makeImmutable();
10978 result.localSearchMetaheuristics_ = localSearchMetaheuristics_;
10980 if (((from_bitField0_ & 0x00200000) != 0)) {
10981 result.numMaxLocalOptimaBeforeMetaheuristicSwitch_ = numMaxLocalOptimaBeforeMetaheuristicSwitch_;
10983 if (((from_bitField0_ & 0x00400000) != 0)) {
10984 result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
10986 if (((from_bitField0_ & 0x00800000) != 0)) {
10987 result.guidedLocalSearchResetPenaltiesOnNewBestSolution_ = guidedLocalSearchResetPenaltiesOnNewBestSolution_;
10989 if (((from_bitField0_ & 0x01000000) != 0)) {
10990 result.guidedLocalSearchPenalizeWithVehicleClasses_ = guidedLocalSearchPenalizeWithVehicleClasses_;
10992 if (((from_bitField0_ & 0x02000000) != 0)) {
10993 result.useGuidedLocalSearchPenaltiesInLocalSearchOperators_ = useGuidedLocalSearchPenaltiesInLocalSearchOperators_;
10995 if (((from_bitField0_ & 0x04000000) != 0)) {
10996 result.useDepthFirstSearch_ = useDepthFirstSearch_;
10998 if (((from_bitField0_ & 0x08000000) != 0)) {
10999 result.useCp_ = useCp_;
11001 if (((from_bitField0_ & 0x10000000) != 0)) {
11002 result.useCpSat_ = useCpSat_;
11004 if (((from_bitField0_ & 0x20000000) != 0)) {
11005 result.useGeneralizedCpSat_ = useGeneralizedCpSat_;
11007 if (((from_bitField0_ & 0x40000000) != 0)) {
11008 result.satParameters_ = satParametersBuilder_ ==
null
11010 : satParametersBuilder_.build();
11011 to_bitField0_ |= 0x00000040;
11013 if (((from_bitField0_ & 0x80000000) != 0)) {
11014 result.reportIntermediateCpSatSolutions_ = reportIntermediateCpSatSolutions_;
11016 result.bitField0_ |= to_bitField0_;
11019 private void buildPartial1(com.google.ortools.constraintsolver.RoutingSearchParameters result) {
11020 int from_bitField1_ = bitField1_;
11021 if (((from_bitField1_ & 0x00000001) != 0)) {
11022 result.fallbackToCpSatSizeThreshold_ = fallbackToCpSatSizeThreshold_;
11024 if (((from_bitField1_ & 0x00000002) != 0)) {
11025 result.continuousSchedulingSolver_ = continuousSchedulingSolver_;
11027 if (((from_bitField1_ & 0x00000004) != 0)) {
11028 result.mixedIntegerSchedulingSolver_ = mixedIntegerSchedulingSolver_;
11030 int to_bitField0_ = 0;
11031 if (((from_bitField1_ & 0x00000008) != 0)) {
11032 result.disableSchedulingBewareThisMayDegradePerformance_ = disableSchedulingBewareThisMayDegradePerformance_;
11033 to_bitField0_ |= 0x00000080;
11035 if (((from_bitField1_ & 0x00000010) != 0)) {
11036 result.optimizationStep_ = optimizationStep_;
11038 if (((from_bitField1_ & 0x00000020) != 0)) {
11039 result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
11041 if (((from_bitField1_ & 0x00000040) != 0)) {
11042 result.solutionLimit_ = solutionLimit_;
11044 if (((from_bitField1_ & 0x00000080) != 0)) {
11045 result.timeLimit_ = timeLimitBuilder_ ==
null
11047 : timeLimitBuilder_.build();
11048 to_bitField0_ |= 0x00000100;
11050 if (((from_bitField1_ & 0x00000100) != 0)) {
11051 result.lnsTimeLimit_ = lnsTimeLimitBuilder_ ==
null
11053 : lnsTimeLimitBuilder_.build();
11054 to_bitField0_ |= 0x00000200;
11056 if (((from_bitField1_ & 0x00000200) != 0)) {
11057 result.secondaryLsTimeLimitRatio_ = secondaryLsTimeLimitRatio_;
11059 if (((from_bitField1_ & 0x00000400) != 0)) {
11060 result.improvementLimitParameters_ = improvementLimitParametersBuilder_ ==
null
11061 ? improvementLimitParameters_
11062 : improvementLimitParametersBuilder_.build();
11063 to_bitField0_ |= 0x00000400;
11065 if (((from_bitField1_ & 0x00000800) != 0)) {
11066 result.useFullPropagation_ = useFullPropagation_;
11068 if (((from_bitField1_ & 0x00001000) != 0)) {
11069 result.logSearch_ = logSearch_;
11071 if (((from_bitField1_ & 0x00002000) != 0)) {
11072 result.logCostScalingFactor_ = logCostScalingFactor_;
11074 if (((from_bitField1_ & 0x00004000) != 0)) {
11075 result.logCostOffset_ = logCostOffset_;
11077 if (((from_bitField1_ & 0x00008000) != 0)) {
11078 result.logTag_ = logTag_;
11080 if (((from_bitField1_ & 0x00010000) != 0)) {
11081 result.useIteratedLocalSearch_ = useIteratedLocalSearch_;
11083 if (((from_bitField1_ & 0x00020000) != 0)) {
11084 result.iteratedLocalSearchParameters_ = iteratedLocalSearchParametersBuilder_ ==
null
11085 ? iteratedLocalSearchParameters_
11086 : iteratedLocalSearchParametersBuilder_.build();
11087 to_bitField0_ |= 0x00000800;
11089 result.bitField0_ |= to_bitField0_;
11092 @java.lang.Override
11094 if (other instanceof com.google.ortools.constraintsolver.RoutingSearchParameters) {
11095 return mergeFrom((com.google.ortools.constraintsolver.RoutingSearchParameters)other);
11097 super.mergeFrom(other);
11102 public Builder
mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters other) {
11103 if (other == com.google.ortools.constraintsolver.RoutingSearchParameters.getDefaultInstance())
return this;
11104 if (other.firstSolutionStrategy_ != 0) {
11107 if (other.getUseUnfilteredFirstSolutionStrategy() !=
false) {
11110 if (other.hasSavingsParameters()) {
11113 if (other.hasGlobalCheapestInsertionFirstSolutionParameters()) {
11116 if (other.hasGlobalCheapestInsertionLsOperatorParameters()) {
11119 if (other.hasLocalCheapestInsertionParameters()) {
11122 if (other.hasLocalCheapestCostInsertionParameters()) {
11125 if (other.getChristofidesUseMinimumMatching() !=
false) {
11128 if (other.getFirstSolutionOptimizationPeriod() != 0) {
11131 if (other.hasLocalSearchOperators()) {
11134 if (java.lang.Double.doubleToRawLongBits(other.getLsOperatorNeighborsRatio()) != 0) {
11137 if (other.getLsOperatorMinNeighbors() != 0) {
11140 if (other.getUseMultiArmedBanditConcatenateOperators() !=
false) {
11143 if (java.lang.Double.doubleToRawLongBits(other.getMultiArmedBanditCompoundOperatorMemoryCoefficient()) != 0) {
11146 if (java.lang.Double.doubleToRawLongBits(other.getMultiArmedBanditCompoundOperatorExplorationCoefficient()) != 0) {
11149 if (other.getMaxSwapActiveChainSize() != 0) {
11152 if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
11155 if (other.getHeuristicExpensiveChainLnsNumArcsToConsider() != 0) {
11158 if (other.getHeuristicCloseNodesLnsNumNodes() != 0) {
11161 if (other.localSearchMetaheuristic_ != 0) {
11164 if (!other.localSearchMetaheuristics_.isEmpty()) {
11165 if (localSearchMetaheuristics_.isEmpty()) {
11166 localSearchMetaheuristics_ = other.localSearchMetaheuristics_;
11167 localSearchMetaheuristics_.makeImmutable();
11168 bitField0_ |= 0x00100000;
11170 ensureLocalSearchMetaheuristicsIsMutable();
11171 localSearchMetaheuristics_.addAll(other.localSearchMetaheuristics_);
11175 if (other.getNumMaxLocalOptimaBeforeMetaheuristicSwitch() != 0) {
11178 if (java.lang.Double.doubleToRawLongBits(other.getGuidedLocalSearchLambdaCoefficient()) != 0) {
11181 if (other.getGuidedLocalSearchResetPenaltiesOnNewBestSolution() !=
false) {
11184 if (other.getGuidedLocalSearchPenalizeWithVehicleClasses() !=
false) {
11187 if (other.getUseGuidedLocalSearchPenaltiesInLocalSearchOperators() !=
false) {
11190 if (other.getUseDepthFirstSearch() !=
false) {
11193 if (other.useCp_ != 0) {
11196 if (other.useCpSat_ != 0) {
11199 if (other.useGeneralizedCpSat_ != 0) {
11202 if (other.hasSatParameters()) {
11205 if (other.getReportIntermediateCpSatSolutions() !=
false) {
11208 if (other.getFallbackToCpSatSizeThreshold() != 0) {
11211 if (other.continuousSchedulingSolver_ != 0) {
11214 if (other.mixedIntegerSchedulingSolver_ != 0) {
11217 if (other.hasDisableSchedulingBewareThisMayDegradePerformance()) {
11220 if (java.lang.Double.doubleToRawLongBits(other.getOptimizationStep()) != 0) {
11223 if (other.getNumberOfSolutionsToCollect() != 0) {
11226 if (other.getSolutionLimit() != 0L) {
11229 if (other.hasTimeLimit()) {
11232 if (other.hasLnsTimeLimit()) {
11235 if (java.lang.Double.doubleToRawLongBits(other.getSecondaryLsTimeLimitRatio()) != 0) {
11238 if (other.hasImprovementLimitParameters()) {
11241 if (other.getUseFullPropagation() !=
false) {
11244 if (other.getLogSearch() !=
false) {
11247 if (java.lang.Double.doubleToRawLongBits(other.getLogCostScalingFactor()) != 0) {
11250 if (java.lang.Double.doubleToRawLongBits(other.getLogCostOffset()) != 0) {
11253 if (!other.getLogTag().isEmpty()) {
11254 logTag_ = other.logTag_;
11255 bitField1_ |= 0x00008000;
11258 if (other.getUseIteratedLocalSearch() !=
false) {
11261 if (other.hasIteratedLocalSearchParameters()) {
11264 this.mergeUnknownFields(other.getUnknownFields());
11269 @java.lang.Override
11274 @java.lang.Override
11276 com.google.protobuf.CodedInputStream input,
11277 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
11278 throws java.io.IOException {
11279 if (extensionRegistry ==
null) {
11280 throw new java.lang.NullPointerException();
11283 boolean done =
false;
11285 int tag = input.readTag();
11291 firstSolutionStrategy_ = input.readEnum();
11292 bitField0_ |= 0x00000001;
11296 useUnfilteredFirstSolutionStrategy_ = input.readBool();
11297 bitField0_ |= 0x00000002;
11302 internalGetLocalSearchOperatorsFieldBuilder().getBuilder(),
11303 extensionRegistry);
11304 bitField0_ |= 0x00000200;
11308 localSearchMetaheuristic_ = input.readEnum();
11309 bitField0_ |= 0x00080000;
11313 guidedLocalSearchLambdaCoefficient_ = input.readDouble();
11314 bitField0_ |= 0x00400000;
11318 useDepthFirstSearch_ = input.readBool();
11319 bitField0_ |= 0x04000000;
11323 optimizationStep_ = input.readDouble();
11324 bitField1_ |= 0x00000010;
11328 solutionLimit_ = input.readInt64();
11329 bitField1_ |= 0x00000040;
11334 internalGetTimeLimitFieldBuilder().getBuilder(),
11335 extensionRegistry);
11336 bitField1_ |= 0x00000080;
11341 internalGetLnsTimeLimitFieldBuilder().getBuilder(),
11342 extensionRegistry);
11343 bitField1_ |= 0x00000100;
11347 useFullPropagation_ = input.readBool();
11348 bitField1_ |= 0x00000800;
11352 logSearch_ = input.readBool();
11353 bitField1_ |= 0x00001000;
11357 numberOfSolutionsToCollect_ = input.readInt32();
11358 bitField1_ |= 0x00000020;
11362 relocateExpensiveChainNumArcsToConsider_ = input.readInt32();
11363 bitField0_ |= 0x00010000;
11367 logCostScalingFactor_ = input.readDouble();
11368 bitField1_ |= 0x00002000;
11372 useCpSat_ = input.readEnum();
11373 bitField0_ |= 0x10000000;
11377 useCp_ = input.readEnum();
11378 bitField0_ |= 0x08000000;
11382 logCostOffset_ = input.readDouble();
11383 bitField1_ |= 0x00004000;
11387 christofidesUseMinimumMatching_ = input.readBool();
11388 bitField0_ |= 0x00000080;
11392 heuristicExpensiveChainLnsNumArcsToConsider_ = input.readInt32();
11393 bitField0_ |= 0x00020000;
11397 continuousSchedulingSolver_ = input.readEnum();
11398 bitField1_ |= 0x00000002;
11402 mixedIntegerSchedulingSolver_ = input.readEnum();
11403 bitField1_ |= 0x00000004;
11407 heuristicCloseNodesLnsNumNodes_ = input.readInt32();
11408 bitField0_ |= 0x00040000;
11412 logTag_ = input.readStringRequireUtf8();
11413 bitField1_ |= 0x00008000;
11418 internalGetImprovementLimitParametersFieldBuilder().getBuilder(),
11419 extensionRegistry);
11420 bitField1_ |= 0x00000400;
11424 useMultiArmedBanditConcatenateOperators_ = input.readBool();
11425 bitField0_ |= 0x00001000;
11429 multiArmedBanditCompoundOperatorMemoryCoefficient_ = input.readDouble();
11430 bitField0_ |= 0x00002000;
11434 multiArmedBanditCompoundOperatorExplorationCoefficient_ = input.readDouble();
11435 bitField0_ |= 0x00004000;
11439 useGeneralizedCpSat_ = input.readEnum();
11440 bitField0_ |= 0x20000000;
11445 internalGetSatParametersFieldBuilder().getBuilder(),
11446 extensionRegistry);
11447 bitField0_ |= 0x40000000;
11451 disableSchedulingBewareThisMayDegradePerformance_ = input.readBool();
11452 bitField1_ |= 0x00000008;
11456 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = input.readBool();
11457 bitField0_ |= 0x00800000;
11461 fallbackToCpSatSizeThreshold_ = input.readInt32();
11462 bitField1_ |= 0x00000001;
11466 lsOperatorNeighborsRatio_ = input.readDouble();
11467 bitField0_ |= 0x00000400;
11471 lsOperatorMinNeighbors_ = input.readInt32();
11472 bitField0_ |= 0x00000800;
11476 reportIntermediateCpSatSolutions_ = input.readBool();
11477 bitField0_ |= 0x80000000;
11481 secondaryLsTimeLimitRatio_ = input.readDouble();
11482 bitField1_ |= 0x00000200;
11486 useIteratedLocalSearch_ = input.readBool();
11487 bitField1_ |= 0x00010000;
11491 firstSolutionOptimizationPeriod_ = input.readInt32();
11492 bitField0_ |= 0x00000100;
11497 internalGetIteratedLocalSearchParametersFieldBuilder().getBuilder(),
11498 extensionRegistry);
11499 bitField1_ |= 0x00020000;
11503 guidedLocalSearchPenalizeWithVehicleClasses_ = input.readBool();
11504 bitField0_ |= 0x01000000;
11508 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ = input.readBool();
11509 bitField0_ |= 0x02000000;
11513 int tmpRaw = input.readEnum();
11514 ensureLocalSearchMetaheuristicsIsMutable();
11515 localSearchMetaheuristics_.addInt(tmpRaw);
11519 int length = input.readRawVarint32();
11520 int limit = input.pushLimit(length);
11521 ensureLocalSearchMetaheuristicsIsMutable();
11522 while (input.getBytesUntilLimit() > 0) {
11523 localSearchMetaheuristics_.addInt(input.readEnum());
11525 input.popLimit(limit);
11529 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = input.readInt32();
11530 bitField0_ |= 0x00200000;
11534 maxSwapActiveChainSize_ = input.readInt32();
11535 bitField0_ |= 0x00008000;
11540 internalGetLocalCheapestInsertionParametersFieldBuilder().getBuilder(),
11541 extensionRegistry);
11542 bitField0_ |= 0x00000020;
11547 internalGetLocalCheapestCostInsertionParametersFieldBuilder().getBuilder(),
11548 extensionRegistry);
11549 bitField0_ |= 0x00000040;
11554 internalGetSavingsParametersFieldBuilder().getBuilder(),
11555 extensionRegistry);
11556 bitField0_ |= 0x00000004;
11561 internalGetGlobalCheapestInsertionFirstSolutionParametersFieldBuilder().getBuilder(),
11562 extensionRegistry);
11563 bitField0_ |= 0x00000008;
11568 internalGetGlobalCheapestInsertionLsOperatorParametersFieldBuilder().getBuilder(),
11569 extensionRegistry);
11570 bitField0_ |= 0x00000010;
11574 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
11581 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
11582 throw e.unwrapIOException();
11588 private int bitField0_;
11589 private int bitField1_;
11591 private int firstSolutionStrategy_ = 0;
11601 return firstSolutionStrategy_;
11613 firstSolutionStrategy_ = value;
11614 bitField0_ |= 0x00000001;
11626 @java.lang.Override
11641 if (value ==
null) {
throw new NullPointerException(); }
11642 bitField0_ |= 0x00000001;
11643 firstSolutionStrategy_ = value.getNumber();
11656 bitField0_ = (bitField0_ & ~0x00000001);
11657 firstSolutionStrategy_ = 0;
11662 private boolean useUnfilteredFirstSolutionStrategy_ ;
11674 @java.lang.Override
11676 return useUnfilteredFirstSolutionStrategy_;
11692 useUnfilteredFirstSolutionStrategy_ = value;
11693 bitField0_ |= 0x00000002;
11709 bitField0_ = (bitField0_ & ~0x00000002);
11710 useUnfilteredFirstSolutionStrategy_ =
false;
11716 private com.google.protobuf.SingleFieldBuilder<
11717 com.google.ortools.constraintsolver.SavingsParameters, com.google.ortools.constraintsolver.SavingsParameters.Builder, com.google.ortools.constraintsolver.SavingsParametersOrBuilder> savingsParametersBuilder_;
11727 return ((bitField0_ & 0x00000004) != 0);
11738 if (savingsParametersBuilder_ ==
null) {
11739 return savingsParameters_ ==
null ? com.google.ortools.constraintsolver.SavingsParameters.getDefaultInstance() : savingsParameters_;
11741 return savingsParametersBuilder_.getMessage();
11752 if (savingsParametersBuilder_ ==
null) {
11753 if (value ==
null) {
11754 throw new NullPointerException();
11756 savingsParameters_ = value;
11758 savingsParametersBuilder_.setMessage(value);
11760 bitField0_ |= 0x00000004;
11772 com.google.ortools.constraintsolver.SavingsParameters.Builder builderForValue) {
11773 if (savingsParametersBuilder_ ==
null) {
11774 savingsParameters_ = builderForValue.build();
11776 savingsParametersBuilder_.setMessage(builderForValue.build());
11778 bitField0_ |= 0x00000004;
11790 if (savingsParametersBuilder_ ==
null) {
11791 if (((bitField0_ & 0x00000004) != 0) &&
11792 savingsParameters_ !=
null &&
11793 savingsParameters_ != com.google.ortools.constraintsolver.SavingsParameters.getDefaultInstance()) {
11796 savingsParameters_ = value;
11799 savingsParametersBuilder_.mergeFrom(value);
11801 if (savingsParameters_ !=
null) {
11802 bitField0_ |= 0x00000004;
11815 bitField0_ = (bitField0_ & ~0x00000004);
11816 savingsParameters_ =
null;
11817 if (savingsParametersBuilder_ !=
null) {
11818 savingsParametersBuilder_.dispose();
11819 savingsParametersBuilder_ =
null;
11832 bitField0_ |= 0x00000004;
11834 return internalGetSavingsParametersFieldBuilder().getBuilder();
11844 if (savingsParametersBuilder_ !=
null) {
11845 return savingsParametersBuilder_.getMessageOrBuilder();
11847 return savingsParameters_ ==
null ?
11848 com.google.ortools.constraintsolver.SavingsParameters.getDefaultInstance() : savingsParameters_;
11858 private com.google.protobuf.SingleFieldBuilder<
11859 com.google.ortools.constraintsolver.SavingsParameters, com.google.ortools.constraintsolver.SavingsParameters.Builder, com.google.ortools.constraintsolver.SavingsParametersOrBuilder>
11860 internalGetSavingsParametersFieldBuilder() {
11861 if (savingsParametersBuilder_ ==
null) {
11862 savingsParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
11863 com.google.ortools.constraintsolver.SavingsParameters, com.google.ortools.constraintsolver.SavingsParameters.Builder, com.google.ortools.constraintsolver.SavingsParametersOrBuilder>(
11865 getParentForChildren(),
11867 savingsParameters_ =
null;
11869 return savingsParametersBuilder_;
11873 private com.google.protobuf.SingleFieldBuilder<
11874 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder> globalCheapestInsertionFirstSolutionParametersBuilder_;
11885 return ((bitField0_ & 0x00000008) != 0);
11897 if (globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null) {
11898 return globalCheapestInsertionFirstSolutionParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionFirstSolutionParameters_;
11900 return globalCheapestInsertionFirstSolutionParametersBuilder_.getMessage();
11912 if (globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null) {
11913 if (value ==
null) {
11914 throw new NullPointerException();
11916 globalCheapestInsertionFirstSolutionParameters_ = value;
11918 globalCheapestInsertionFirstSolutionParametersBuilder_.setMessage(value);
11920 bitField0_ |= 0x00000008;
11933 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder builderForValue) {
11934 if (globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null) {
11935 globalCheapestInsertionFirstSolutionParameters_ = builderForValue.build();
11937 globalCheapestInsertionFirstSolutionParametersBuilder_.setMessage(builderForValue.build());
11939 bitField0_ |= 0x00000008;
11952 if (globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null) {
11953 if (((bitField0_ & 0x00000008) != 0) &&
11954 globalCheapestInsertionFirstSolutionParameters_ !=
null &&
11955 globalCheapestInsertionFirstSolutionParameters_ != com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance()) {
11958 globalCheapestInsertionFirstSolutionParameters_ = value;
11961 globalCheapestInsertionFirstSolutionParametersBuilder_.mergeFrom(value);
11963 if (globalCheapestInsertionFirstSolutionParameters_ !=
null) {
11964 bitField0_ |= 0x00000008;
11978 bitField0_ = (bitField0_ & ~0x00000008);
11979 globalCheapestInsertionFirstSolutionParameters_ =
null;
11980 if (globalCheapestInsertionFirstSolutionParametersBuilder_ !=
null) {
11981 globalCheapestInsertionFirstSolutionParametersBuilder_.dispose();
11982 globalCheapestInsertionFirstSolutionParametersBuilder_ =
null;
11996 bitField0_ |= 0x00000008;
11998 return internalGetGlobalCheapestInsertionFirstSolutionParametersFieldBuilder().getBuilder();
12009 if (globalCheapestInsertionFirstSolutionParametersBuilder_ !=
null) {
12010 return globalCheapestInsertionFirstSolutionParametersBuilder_.getMessageOrBuilder();
12012 return globalCheapestInsertionFirstSolutionParameters_ ==
null ?
12013 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionFirstSolutionParameters_;
12024 private com.google.protobuf.SingleFieldBuilder<
12025 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder>
12026 internalGetGlobalCheapestInsertionFirstSolutionParametersFieldBuilder() {
12027 if (globalCheapestInsertionFirstSolutionParametersBuilder_ ==
null) {
12028 globalCheapestInsertionFirstSolutionParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
12029 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder>(
12031 getParentForChildren(),
12033 globalCheapestInsertionFirstSolutionParameters_ =
null;
12035 return globalCheapestInsertionFirstSolutionParametersBuilder_;
12039 private com.google.protobuf.SingleFieldBuilder<
12040 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder> globalCheapestInsertionLsOperatorParametersBuilder_;
12053 return ((bitField0_ & 0x00000010) != 0);
12067 if (globalCheapestInsertionLsOperatorParametersBuilder_ ==
null) {
12068 return globalCheapestInsertionLsOperatorParameters_ ==
null ? com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionLsOperatorParameters_;
12070 return globalCheapestInsertionLsOperatorParametersBuilder_.getMessage();
12084 if (globalCheapestInsertionLsOperatorParametersBuilder_ ==
null) {
12085 if (value ==
null) {
12086 throw new NullPointerException();
12088 globalCheapestInsertionLsOperatorParameters_ = value;
12090 globalCheapestInsertionLsOperatorParametersBuilder_.setMessage(value);
12092 bitField0_ |= 0x00000010;
12107 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder builderForValue) {
12108 if (globalCheapestInsertionLsOperatorParametersBuilder_ ==
null) {
12109 globalCheapestInsertionLsOperatorParameters_ = builderForValue.build();
12111 globalCheapestInsertionLsOperatorParametersBuilder_.setMessage(builderForValue.build());
12113 bitField0_ |= 0x00000010;
12128 if (globalCheapestInsertionLsOperatorParametersBuilder_ ==
null) {
12129 if (((bitField0_ & 0x00000010) != 0) &&
12130 globalCheapestInsertionLsOperatorParameters_ !=
null &&
12131 globalCheapestInsertionLsOperatorParameters_ != com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance()) {
12134 globalCheapestInsertionLsOperatorParameters_ = value;
12137 globalCheapestInsertionLsOperatorParametersBuilder_.mergeFrom(value);
12139 if (globalCheapestInsertionLsOperatorParameters_ !=
null) {
12140 bitField0_ |= 0x00000010;
12156 bitField0_ = (bitField0_ & ~0x00000010);
12157 globalCheapestInsertionLsOperatorParameters_ =
null;
12158 if (globalCheapestInsertionLsOperatorParametersBuilder_ !=
null) {
12159 globalCheapestInsertionLsOperatorParametersBuilder_.dispose();
12160 globalCheapestInsertionLsOperatorParametersBuilder_ =
null;
12176 bitField0_ |= 0x00000010;
12178 return internalGetGlobalCheapestInsertionLsOperatorParametersFieldBuilder().getBuilder();
12191 if (globalCheapestInsertionLsOperatorParametersBuilder_ !=
null) {
12192 return globalCheapestInsertionLsOperatorParametersBuilder_.getMessageOrBuilder();
12194 return globalCheapestInsertionLsOperatorParameters_ ==
null ?
12195 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.getDefaultInstance() : globalCheapestInsertionLsOperatorParameters_;
12208 private com.google.protobuf.SingleFieldBuilder<
12209 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder>
12210 internalGetGlobalCheapestInsertionLsOperatorParametersFieldBuilder() {
12211 if (globalCheapestInsertionLsOperatorParametersBuilder_ ==
null) {
12212 globalCheapestInsertionLsOperatorParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
12213 com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters, com.google.ortools.constraintsolver.GlobalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.GlobalCheapestInsertionParametersOrBuilder>(
12215 getParentForChildren(),
12217 globalCheapestInsertionLsOperatorParameters_ =
null;
12219 return globalCheapestInsertionLsOperatorParametersBuilder_;
12223 private com.google.protobuf.SingleFieldBuilder<
12224 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder> localCheapestInsertionParametersBuilder_;
12234 return ((bitField0_ & 0x00000020) != 0);
12245 if (localCheapestInsertionParametersBuilder_ ==
null) {
12246 return localCheapestInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestInsertionParameters_;
12248 return localCheapestInsertionParametersBuilder_.getMessage();
12259 if (localCheapestInsertionParametersBuilder_ ==
null) {
12260 if (value ==
null) {
12261 throw new NullPointerException();
12263 localCheapestInsertionParameters_ = value;
12265 localCheapestInsertionParametersBuilder_.setMessage(value);
12267 bitField0_ |= 0x00000020;
12279 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder builderForValue) {
12280 if (localCheapestInsertionParametersBuilder_ ==
null) {
12281 localCheapestInsertionParameters_ = builderForValue.build();
12283 localCheapestInsertionParametersBuilder_.setMessage(builderForValue.build());
12285 bitField0_ |= 0x00000020;
12297 if (localCheapestInsertionParametersBuilder_ ==
null) {
12298 if (((bitField0_ & 0x00000020) != 0) &&
12299 localCheapestInsertionParameters_ !=
null &&
12300 localCheapestInsertionParameters_ != com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance()) {
12303 localCheapestInsertionParameters_ = value;
12306 localCheapestInsertionParametersBuilder_.mergeFrom(value);
12308 if (localCheapestInsertionParameters_ !=
null) {
12309 bitField0_ |= 0x00000020;
12322 bitField0_ = (bitField0_ & ~0x00000020);
12323 localCheapestInsertionParameters_ =
null;
12324 if (localCheapestInsertionParametersBuilder_ !=
null) {
12325 localCheapestInsertionParametersBuilder_.dispose();
12326 localCheapestInsertionParametersBuilder_ =
null;
12339 bitField0_ |= 0x00000020;
12341 return internalGetLocalCheapestInsertionParametersFieldBuilder().getBuilder();
12351 if (localCheapestInsertionParametersBuilder_ !=
null) {
12352 return localCheapestInsertionParametersBuilder_.getMessageOrBuilder();
12354 return localCheapestInsertionParameters_ ==
null ?
12355 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestInsertionParameters_;
12365 private com.google.protobuf.SingleFieldBuilder<
12366 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder>
12367 internalGetLocalCheapestInsertionParametersFieldBuilder() {
12368 if (localCheapestInsertionParametersBuilder_ ==
null) {
12369 localCheapestInsertionParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
12370 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder>(
12372 getParentForChildren(),
12374 localCheapestInsertionParameters_ =
null;
12376 return localCheapestInsertionParametersBuilder_;
12380 private com.google.protobuf.SingleFieldBuilder<
12381 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder> localCheapestCostInsertionParametersBuilder_;
12391 return ((bitField0_ & 0x00000040) != 0);
12402 if (localCheapestCostInsertionParametersBuilder_ ==
null) {
12403 return localCheapestCostInsertionParameters_ ==
null ? com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestCostInsertionParameters_;
12405 return localCheapestCostInsertionParametersBuilder_.getMessage();
12416 if (localCheapestCostInsertionParametersBuilder_ ==
null) {
12417 if (value ==
null) {
12418 throw new NullPointerException();
12420 localCheapestCostInsertionParameters_ = value;
12422 localCheapestCostInsertionParametersBuilder_.setMessage(value);
12424 bitField0_ |= 0x00000040;
12436 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder builderForValue) {
12437 if (localCheapestCostInsertionParametersBuilder_ ==
null) {
12438 localCheapestCostInsertionParameters_ = builderForValue.build();
12440 localCheapestCostInsertionParametersBuilder_.setMessage(builderForValue.build());
12442 bitField0_ |= 0x00000040;
12454 if (localCheapestCostInsertionParametersBuilder_ ==
null) {
12455 if (((bitField0_ & 0x00000040) != 0) &&
12456 localCheapestCostInsertionParameters_ !=
null &&
12457 localCheapestCostInsertionParameters_ != com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance()) {
12460 localCheapestCostInsertionParameters_ = value;
12463 localCheapestCostInsertionParametersBuilder_.mergeFrom(value);
12465 if (localCheapestCostInsertionParameters_ !=
null) {
12466 bitField0_ |= 0x00000040;
12479 bitField0_ = (bitField0_ & ~0x00000040);
12480 localCheapestCostInsertionParameters_ =
null;
12481 if (localCheapestCostInsertionParametersBuilder_ !=
null) {
12482 localCheapestCostInsertionParametersBuilder_.dispose();
12483 localCheapestCostInsertionParametersBuilder_ =
null;
12496 bitField0_ |= 0x00000040;
12498 return internalGetLocalCheapestCostInsertionParametersFieldBuilder().getBuilder();
12508 if (localCheapestCostInsertionParametersBuilder_ !=
null) {
12509 return localCheapestCostInsertionParametersBuilder_.getMessageOrBuilder();
12511 return localCheapestCostInsertionParameters_ ==
null ?
12512 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.getDefaultInstance() : localCheapestCostInsertionParameters_;
12522 private com.google.protobuf.SingleFieldBuilder<
12523 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder>
12524 internalGetLocalCheapestCostInsertionParametersFieldBuilder() {
12525 if (localCheapestCostInsertionParametersBuilder_ ==
null) {
12526 localCheapestCostInsertionParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
12527 com.google.ortools.constraintsolver.LocalCheapestInsertionParameters, com.google.ortools.constraintsolver.LocalCheapestInsertionParameters.Builder, com.google.ortools.constraintsolver.LocalCheapestInsertionParametersOrBuilder>(
12529 getParentForChildren(),
12531 localCheapestCostInsertionParameters_ =
null;
12533 return localCheapestCostInsertionParametersBuilder_;
12536 private boolean christofidesUseMinimumMatching_ ;
12546 @java.lang.Override
12548 return christofidesUseMinimumMatching_;
12562 christofidesUseMinimumMatching_ = value;
12563 bitField0_ |= 0x00000080;
12577 bitField0_ = (bitField0_ & ~0x00000080);
12578 christofidesUseMinimumMatching_ =
false;
12583 private int firstSolutionOptimizationPeriod_ ;
12598 @java.lang.Override
12600 return firstSolutionOptimizationPeriod_;
12619 firstSolutionOptimizationPeriod_ = value;
12620 bitField0_ |= 0x00000100;
12639 bitField0_ = (bitField0_ & ~0x00000100);
12640 firstSolutionOptimizationPeriod_ = 0;
12646 private com.google.protobuf.SingleFieldBuilder<
12647 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder> localSearchOperatorsBuilder_;
12653 return ((bitField0_ & 0x00000200) != 0);
12660 if (localSearchOperatorsBuilder_ ==
null) {
12661 return localSearchOperators_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
12663 return localSearchOperatorsBuilder_.getMessage();
12669 public Builder
setLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators value) {
12670 if (localSearchOperatorsBuilder_ ==
null) {
12671 if (value ==
null) {
12672 throw new NullPointerException();
12674 localSearchOperators_ = value;
12676 localSearchOperatorsBuilder_.setMessage(value);
12678 bitField0_ |= 0x00000200;
12686 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder builderForValue) {
12687 if (localSearchOperatorsBuilder_ ==
null) {
12688 localSearchOperators_ = builderForValue.build();
12690 localSearchOperatorsBuilder_.setMessage(builderForValue.build());
12692 bitField0_ |= 0x00000200;
12700 if (localSearchOperatorsBuilder_ ==
null) {
12701 if (((bitField0_ & 0x00000200) != 0) &&
12702 localSearchOperators_ !=
null &&
12703 localSearchOperators_ != com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance()) {
12706 localSearchOperators_ = value;
12709 localSearchOperatorsBuilder_.mergeFrom(value);
12711 if (localSearchOperators_ !=
null) {
12712 bitField0_ |= 0x00000200;
12721 bitField0_ = (bitField0_ & ~0x00000200);
12722 localSearchOperators_ =
null;
12723 if (localSearchOperatorsBuilder_ !=
null) {
12724 localSearchOperatorsBuilder_.dispose();
12725 localSearchOperatorsBuilder_ =
null;
12734 bitField0_ |= 0x00000200;
12736 return internalGetLocalSearchOperatorsFieldBuilder().getBuilder();
12742 if (localSearchOperatorsBuilder_ !=
null) {
12743 return localSearchOperatorsBuilder_.getMessageOrBuilder();
12745 return localSearchOperators_ ==
null ?
12746 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
12752 private com.google.protobuf.SingleFieldBuilder<
12753 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder>
12754 internalGetLocalSearchOperatorsFieldBuilder() {
12755 if (localSearchOperatorsBuilder_ ==
null) {
12756 localSearchOperatorsBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
12757 com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder>(
12759 getParentForChildren(),
12761 localSearchOperators_ =
null;
12763 return localSearchOperatorsBuilder_;
12766 private double lsOperatorNeighborsRatio_ ;
12779 @java.lang.Override
12781 return lsOperatorNeighborsRatio_;
12798 lsOperatorNeighborsRatio_ = value;
12799 bitField0_ |= 0x00000400;
12816 bitField0_ = (bitField0_ & ~0x00000400);
12817 lsOperatorNeighborsRatio_ = 0D;
12822 private int lsOperatorMinNeighbors_ ;
12827 @java.lang.Override
12829 return lsOperatorMinNeighbors_;
12838 lsOperatorMinNeighbors_ = value;
12839 bitField0_ |= 0x00000800;
12848 bitField0_ = (bitField0_ & ~0x00000800);
12849 lsOperatorMinNeighbors_ = 0;
12854 private boolean useMultiArmedBanditConcatenateOperators_ ;
12865 @java.lang.Override
12867 return useMultiArmedBanditConcatenateOperators_;
12882 useMultiArmedBanditConcatenateOperators_ = value;
12883 bitField0_ |= 0x00001000;
12898 bitField0_ = (bitField0_ & ~0x00001000);
12899 useMultiArmedBanditConcatenateOperators_ =
false;
12904 private double multiArmedBanditCompoundOperatorMemoryCoefficient_ ;
12916 @java.lang.Override
12918 return multiArmedBanditCompoundOperatorMemoryCoefficient_;
12934 multiArmedBanditCompoundOperatorMemoryCoefficient_ = value;
12935 bitField0_ |= 0x00002000;
12951 bitField0_ = (bitField0_ & ~0x00002000);
12952 multiArmedBanditCompoundOperatorMemoryCoefficient_ = 0D;
12957 private double multiArmedBanditCompoundOperatorExplorationCoefficient_ ;
12968 @java.lang.Override
12970 return multiArmedBanditCompoundOperatorExplorationCoefficient_;
12985 multiArmedBanditCompoundOperatorExplorationCoefficient_ = value;
12986 bitField0_ |= 0x00004000;
13001 bitField0_ = (bitField0_ & ~0x00004000);
13002 multiArmedBanditCompoundOperatorExplorationCoefficient_ = 0D;
13007 private int maxSwapActiveChainSize_ ;
13016 @java.lang.Override
13018 return maxSwapActiveChainSize_;
13031 maxSwapActiveChainSize_ = value;
13032 bitField0_ |= 0x00008000;
13045 bitField0_ = (bitField0_ & ~0x00008000);
13046 maxSwapActiveChainSize_ = 0;
13051 private int relocateExpensiveChainNumArcsToConsider_ ;
13066 @java.lang.Override
13068 return relocateExpensiveChainNumArcsToConsider_;
13087 relocateExpensiveChainNumArcsToConsider_ = value;
13088 bitField0_ |= 0x00010000;
13107 bitField0_ = (bitField0_ & ~0x00010000);
13108 relocateExpensiveChainNumArcsToConsider_ = 0;
13113 private int heuristicExpensiveChainLnsNumArcsToConsider_ ;
13123 @java.lang.Override
13125 return heuristicExpensiveChainLnsNumArcsToConsider_;
13139 heuristicExpensiveChainLnsNumArcsToConsider_ = value;
13140 bitField0_ |= 0x00020000;
13154 bitField0_ = (bitField0_ & ~0x00020000);
13155 heuristicExpensiveChainLnsNumArcsToConsider_ = 0;
13160 private int heuristicCloseNodesLnsNumNodes_ ;
13170 @java.lang.Override
13172 return heuristicCloseNodesLnsNumNodes_;
13186 heuristicCloseNodesLnsNumNodes_ = value;
13187 bitField0_ |= 0x00040000;
13201 bitField0_ = (bitField0_ & ~0x00040000);
13202 heuristicCloseNodesLnsNumNodes_ = 0;
13207 private int localSearchMetaheuristic_ = 0;
13217 return localSearchMetaheuristic_;
13229 localSearchMetaheuristic_ = value;
13230 bitField0_ |= 0x00080000;
13242 @java.lang.Override
13257 if (value ==
null) {
throw new NullPointerException(); }
13258 bitField0_ |= 0x00080000;
13259 localSearchMetaheuristic_ = value.getNumber();
13272 bitField0_ = (bitField0_ & ~0x00080000);
13273 localSearchMetaheuristic_ = 0;
13278 private com.google.protobuf.Internal.IntList localSearchMetaheuristics_ = emptyIntList();
13279 private void ensureLocalSearchMetaheuristicsIsMutable() {
13280 if (!localSearchMetaheuristics_.isModifiable()) {
13281 localSearchMetaheuristics_ = makeMutableCopy(localSearchMetaheuristics_);
13283 bitField0_ |= 0x00100000;
13297 return new com.google.protobuf.Internal.IntListAdapter<
13298 com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value>(localSearchMetaheuristics_, localSearchMetaheuristics_converter_);
13312 return localSearchMetaheuristics_.size();
13327 return localSearchMetaheuristics_converter_.convert(localSearchMetaheuristics_.getInt(index));
13343 int index, com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value value) {
13344 if (value ==
null) {
throw new NullPointerException(); }
13345 ensureLocalSearchMetaheuristicsIsMutable();
13346 localSearchMetaheuristics_.setInt(index, value.getNumber());
13363 if (value ==
null) {
throw new NullPointerException(); }
13364 ensureLocalSearchMetaheuristicsIsMutable();
13365 localSearchMetaheuristics_.addInt(value.getNumber());
13382 java.lang.Iterable<? extends com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value> values) {
13383 ensureLocalSearchMetaheuristicsIsMutable();
13384 for (com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value value : values) {
13385 localSearchMetaheuristics_.addInt(value.getNumber());
13402 localSearchMetaheuristics_ = emptyIntList();
13403 bitField0_ = (bitField0_ & ~0x00100000);
13418 public java.util.List<java.lang.Integer>
13420 localSearchMetaheuristics_.makeImmutable();
13421 return localSearchMetaheuristics_;
13436 return localSearchMetaheuristics_.getInt(index);
13452 int index,
int value) {
13453 ensureLocalSearchMetaheuristicsIsMutable();
13454 localSearchMetaheuristics_.setInt(index, value);
13471 ensureLocalSearchMetaheuristicsIsMutable();
13472 localSearchMetaheuristics_.addInt(value);
13489 java.lang.Iterable<java.lang.Integer> values) {
13490 ensureLocalSearchMetaheuristicsIsMutable();
13491 for (
int value : values) {
13492 localSearchMetaheuristics_.addInt(value);
13498 private int numMaxLocalOptimaBeforeMetaheuristicSwitch_ ;
13503 @java.lang.Override
13505 return numMaxLocalOptimaBeforeMetaheuristicSwitch_;
13514 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = value;
13515 bitField0_ |= 0x00200000;
13524 bitField0_ = (bitField0_ & ~0x00200000);
13525 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = 0;
13530 private double guidedLocalSearchLambdaCoefficient_ ;
13542 @java.lang.Override
13544 return guidedLocalSearchLambdaCoefficient_;
13560 guidedLocalSearchLambdaCoefficient_ = value;
13561 bitField0_ |= 0x00400000;
13577 bitField0_ = (bitField0_ & ~0x00400000);
13578 guidedLocalSearchLambdaCoefficient_ = 0D;
13583 private boolean guidedLocalSearchResetPenaltiesOnNewBestSolution_ ;
13593 @java.lang.Override
13595 return guidedLocalSearchResetPenaltiesOnNewBestSolution_;
13609 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = value;
13610 bitField0_ |= 0x00800000;
13624 bitField0_ = (bitField0_ & ~0x00800000);
13625 guidedLocalSearchResetPenaltiesOnNewBestSolution_ =
false;
13630 private boolean guidedLocalSearchPenalizeWithVehicleClasses_ ;
13641 @java.lang.Override
13643 return guidedLocalSearchPenalizeWithVehicleClasses_;
13658 guidedLocalSearchPenalizeWithVehicleClasses_ = value;
13659 bitField0_ |= 0x01000000;
13674 bitField0_ = (bitField0_ & ~0x01000000);
13675 guidedLocalSearchPenalizeWithVehicleClasses_ =
false;
13680 private boolean useGuidedLocalSearchPenaltiesInLocalSearchOperators_ ;
13690 @java.lang.Override
13692 return useGuidedLocalSearchPenaltiesInLocalSearchOperators_;
13706 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ = value;
13707 bitField0_ |= 0x02000000;
13721 bitField0_ = (bitField0_ & ~0x02000000);
13722 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ =
false;
13727 private boolean useDepthFirstSearch_ ;
13739 @java.lang.Override
13741 return useDepthFirstSearch_;
13757 useDepthFirstSearch_ = value;
13758 bitField0_ |= 0x04000000;
13774 bitField0_ = (bitField0_ & ~0x04000000);
13775 useDepthFirstSearch_ =
false;
13780 private int useCp_ = 0;
13807 bitField0_ |= 0x08000000;
13821 @java.lang.Override
13837 public Builder
setUseCp(com.google.ortools.util.OptionalBoolean value) {
13838 if (value ==
null) {
throw new NullPointerException(); }
13839 bitField0_ |= 0x08000000;
13840 useCp_ = value.getNumber();
13855 bitField0_ = (bitField0_ & ~0x08000000);
13861 private int useCpSat_ = 0;
13890 bitField0_ |= 0x10000000;
13905 @java.lang.Override
13922 public Builder
setUseCpSat(com.google.ortools.util.OptionalBoolean value) {
13923 if (value ==
null) {
throw new NullPointerException(); }
13924 bitField0_ |= 0x10000000;
13925 useCpSat_ = value.getNumber();
13941 bitField0_ = (bitField0_ & ~0x10000000);
13947 private int useGeneralizedCpSat_ = 0;
13960 return useGeneralizedCpSat_;
13975 useGeneralizedCpSat_ = value;
13976 bitField0_ |= 0x20000000;
13991 @java.lang.Override
14009 if (value ==
null) {
throw new NullPointerException(); }
14010 bitField0_ |= 0x20000000;
14011 useGeneralizedCpSat_ = value.getNumber();
14027 bitField0_ = (bitField0_ & ~0x20000000);
14028 useGeneralizedCpSat_ = 0;
14034 private com.google.protobuf.SingleFieldBuilder<
14035 com.google.ortools.sat.SatParameters, com.google.ortools.sat.SatParameters.Builder, com.google.ortools.sat.SatParametersOrBuilder> satParametersBuilder_;
14046 return ((bitField0_ & 0x40000000) != 0);
14058 if (satParametersBuilder_ ==
null) {
14059 return satParameters_ ==
null ? com.google.ortools.sat.SatParameters.getDefaultInstance() : satParameters_;
14061 return satParametersBuilder_.getMessage();
14073 if (satParametersBuilder_ ==
null) {
14074 if (value ==
null) {
14075 throw new NullPointerException();
14077 satParameters_ = value;
14079 satParametersBuilder_.setMessage(value);
14081 bitField0_ |= 0x40000000;
14094 com.google.ortools.sat.SatParameters.Builder builderForValue) {
14095 if (satParametersBuilder_ ==
null) {
14096 satParameters_ = builderForValue.build();
14098 satParametersBuilder_.setMessage(builderForValue.build());
14100 bitField0_ |= 0x40000000;
14113 if (satParametersBuilder_ ==
null) {
14114 if (((bitField0_ & 0x40000000) != 0) &&
14115 satParameters_ !=
null &&
14116 satParameters_ != com.google.ortools.sat.SatParameters.getDefaultInstance()) {
14119 satParameters_ = value;
14122 satParametersBuilder_.mergeFrom(value);
14124 if (satParameters_ !=
null) {
14125 bitField0_ |= 0x40000000;
14139 bitField0_ = (bitField0_ & ~0x40000000);
14140 satParameters_ =
null;
14141 if (satParametersBuilder_ !=
null) {
14142 satParametersBuilder_.dispose();
14143 satParametersBuilder_ =
null;
14157 bitField0_ |= 0x40000000;
14159 return internalGetSatParametersFieldBuilder().getBuilder();
14170 if (satParametersBuilder_ !=
null) {
14171 return satParametersBuilder_.getMessageOrBuilder();
14173 return satParameters_ ==
null ?
14174 com.google.ortools.sat.SatParameters.getDefaultInstance() : satParameters_;
14185 private com.google.protobuf.SingleFieldBuilder<
14186 com.google.ortools.sat.SatParameters, com.google.ortools.sat.SatParameters.Builder, com.google.ortools.sat.SatParametersOrBuilder>
14187 internalGetSatParametersFieldBuilder() {
14188 if (satParametersBuilder_ ==
null) {
14189 satParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
14190 com.google.ortools.sat.SatParameters, com.google.ortools.sat.SatParameters.Builder, com.google.ortools.sat.SatParametersOrBuilder>(
14192 getParentForChildren(),
14194 satParameters_ =
null;
14196 return satParametersBuilder_;
14199 private boolean reportIntermediateCpSatSolutions_ ;
14209 @java.lang.Override
14211 return reportIntermediateCpSatSolutions_;
14225 reportIntermediateCpSatSolutions_ = value;
14226 bitField0_ |= 0x80000000;
14240 bitField0_ = (bitField0_ & ~0x80000000);
14241 reportIntermediateCpSatSolutions_ =
false;
14246 private int fallbackToCpSatSizeThreshold_ ;
14256 @java.lang.Override
14258 return fallbackToCpSatSizeThreshold_;
14272 fallbackToCpSatSizeThreshold_ = value;
14273 bitField1_ |= 0x00000001;
14287 bitField1_ = (bitField1_ & ~0x00000001);
14288 fallbackToCpSatSizeThreshold_ = 0;
14293 private int continuousSchedulingSolver_ = 0;
14299 return continuousSchedulingSolver_;
14307 continuousSchedulingSolver_ = value;
14308 bitField1_ |= 0x00000002;
14316 @java.lang.Override
14327 if (value ==
null) {
throw new NullPointerException(); }
14328 bitField1_ |= 0x00000002;
14329 continuousSchedulingSolver_ = value.getNumber();
14338 bitField1_ = (bitField1_ & ~0x00000002);
14339 continuousSchedulingSolver_ = 0;
14344 private int mixedIntegerSchedulingSolver_ = 0;
14350 return mixedIntegerSchedulingSolver_;
14358 mixedIntegerSchedulingSolver_ = value;
14359 bitField1_ |= 0x00000004;
14367 @java.lang.Override
14378 if (value ==
null) {
throw new NullPointerException(); }
14379 bitField1_ |= 0x00000004;
14380 mixedIntegerSchedulingSolver_ = value.getNumber();
14389 bitField1_ = (bitField1_ & ~0x00000004);
14390 mixedIntegerSchedulingSolver_ = 0;
14395 private boolean disableSchedulingBewareThisMayDegradePerformance_ ;
14405 @java.lang.Override
14407 return ((bitField1_ & 0x00000008) != 0);
14418 @java.lang.Override
14420 return disableSchedulingBewareThisMayDegradePerformance_;
14434 disableSchedulingBewareThisMayDegradePerformance_ = value;
14435 bitField1_ |= 0x00000008;
14449 bitField1_ = (bitField1_ & ~0x00000008);
14450 disableSchedulingBewareThisMayDegradePerformance_ =
false;
14455 private double optimizationStep_ ;
14466 @java.lang.Override
14468 return optimizationStep_;
14483 optimizationStep_ = value;
14484 bitField1_ |= 0x00000010;
14499 bitField1_ = (bitField1_ & ~0x00000010);
14500 optimizationStep_ = 0D;
14505 private int numberOfSolutionsToCollect_ ;
14515 @java.lang.Override
14517 return numberOfSolutionsToCollect_;
14531 numberOfSolutionsToCollect_ = value;
14532 bitField1_ |= 0x00000020;
14546 bitField1_ = (bitField1_ & ~0x00000020);
14547 numberOfSolutionsToCollect_ = 0;
14552 private long solutionLimit_ ;
14563 @java.lang.Override
14565 return solutionLimit_;
14580 solutionLimit_ = value;
14581 bitField1_ |= 0x00000040;
14596 bitField1_ = (bitField1_ & ~0x00000040);
14597 solutionLimit_ = 0L;
14602 private com.google.protobuf.Duration timeLimit_;
14603 private com.google.protobuf.SingleFieldBuilder<
14604 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> timeLimitBuilder_;
14614 return ((bitField1_ & 0x00000080) != 0);
14625 if (timeLimitBuilder_ ==
null) {
14626 return timeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
14628 return timeLimitBuilder_.getMessage();
14639 if (timeLimitBuilder_ ==
null) {
14640 if (value ==
null) {
14641 throw new NullPointerException();
14643 timeLimit_ = value;
14645 timeLimitBuilder_.setMessage(value);
14647 bitField1_ |= 0x00000080;
14659 com.google.protobuf.Duration.Builder builderForValue) {
14660 if (timeLimitBuilder_ ==
null) {
14661 timeLimit_ = builderForValue.build();
14663 timeLimitBuilder_.setMessage(builderForValue.build());
14665 bitField1_ |= 0x00000080;
14677 if (timeLimitBuilder_ ==
null) {
14678 if (((bitField1_ & 0x00000080) != 0) &&
14679 timeLimit_ !=
null &&
14680 timeLimit_ != com.google.protobuf.Duration.getDefaultInstance()) {
14683 timeLimit_ = value;
14686 timeLimitBuilder_.mergeFrom(value);
14688 if (timeLimit_ !=
null) {
14689 bitField1_ |= 0x00000080;
14702 bitField1_ = (bitField1_ & ~0x00000080);
14704 if (timeLimitBuilder_ !=
null) {
14705 timeLimitBuilder_.dispose();
14706 timeLimitBuilder_ =
null;
14719 bitField1_ |= 0x00000080;
14721 return internalGetTimeLimitFieldBuilder().getBuilder();
14731 if (timeLimitBuilder_ !=
null) {
14732 return timeLimitBuilder_.getMessageOrBuilder();
14734 return timeLimit_ ==
null ?
14735 com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
14745 private com.google.protobuf.SingleFieldBuilder<
14746 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
14747 internalGetTimeLimitFieldBuilder() {
14748 if (timeLimitBuilder_ ==
null) {
14749 timeLimitBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
14750 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
14752 getParentForChildren(),
14756 return timeLimitBuilder_;
14759 private com.google.protobuf.Duration lnsTimeLimit_;
14760 private com.google.protobuf.SingleFieldBuilder<
14761 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> lnsTimeLimitBuilder_;
14772 return ((bitField1_ & 0x00000100) != 0);
14784 if (lnsTimeLimitBuilder_ ==
null) {
14785 return lnsTimeLimit_ ==
null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
14787 return lnsTimeLimitBuilder_.getMessage();
14799 if (lnsTimeLimitBuilder_ ==
null) {
14800 if (value ==
null) {
14801 throw new NullPointerException();
14803 lnsTimeLimit_ = value;
14805 lnsTimeLimitBuilder_.setMessage(value);
14807 bitField1_ |= 0x00000100;
14820 com.google.protobuf.Duration.Builder builderForValue) {
14821 if (lnsTimeLimitBuilder_ ==
null) {
14822 lnsTimeLimit_ = builderForValue.build();
14824 lnsTimeLimitBuilder_.setMessage(builderForValue.build());
14826 bitField1_ |= 0x00000100;
14839 if (lnsTimeLimitBuilder_ ==
null) {
14840 if (((bitField1_ & 0x00000100) != 0) &&
14841 lnsTimeLimit_ !=
null &&
14842 lnsTimeLimit_ != com.google.protobuf.Duration.getDefaultInstance()) {
14845 lnsTimeLimit_ = value;
14848 lnsTimeLimitBuilder_.mergeFrom(value);
14850 if (lnsTimeLimit_ !=
null) {
14851 bitField1_ |= 0x00000100;
14865 bitField1_ = (bitField1_ & ~0x00000100);
14866 lnsTimeLimit_ =
null;
14867 if (lnsTimeLimitBuilder_ !=
null) {
14868 lnsTimeLimitBuilder_.dispose();
14869 lnsTimeLimitBuilder_ =
null;
14883 bitField1_ |= 0x00000100;
14885 return internalGetLnsTimeLimitFieldBuilder().getBuilder();
14896 if (lnsTimeLimitBuilder_ !=
null) {
14897 return lnsTimeLimitBuilder_.getMessageOrBuilder();
14899 return lnsTimeLimit_ ==
null ?
14900 com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
14911 private com.google.protobuf.SingleFieldBuilder<
14912 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
14913 internalGetLnsTimeLimitFieldBuilder() {
14914 if (lnsTimeLimitBuilder_ ==
null) {
14915 lnsTimeLimitBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
14916 com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
14918 getParentForChildren(),
14920 lnsTimeLimit_ =
null;
14922 return lnsTimeLimitBuilder_;
14925 private double secondaryLsTimeLimitRatio_ ;
14939 @java.lang.Override
14941 return secondaryLsTimeLimitRatio_;
14959 secondaryLsTimeLimitRatio_ = value;
14960 bitField1_ |= 0x00000200;
14978 bitField1_ = (bitField1_ & ~0x00000200);
14979 secondaryLsTimeLimitRatio_ = 0D;
14985 private com.google.protobuf.SingleFieldBuilder<
14986 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParametersOrBuilder> improvementLimitParametersBuilder_;
14997 return ((bitField1_ & 0x00000400) != 0);
15009 if (improvementLimitParametersBuilder_ ==
null) {
15010 return improvementLimitParameters_ ==
null ? com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance() : improvementLimitParameters_;
15012 return improvementLimitParametersBuilder_.getMessage();
15024 if (improvementLimitParametersBuilder_ ==
null) {
15025 if (value ==
null) {
15026 throw new NullPointerException();
15028 improvementLimitParameters_ = value;
15030 improvementLimitParametersBuilder_.setMessage(value);
15032 bitField1_ |= 0x00000400;
15045 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder builderForValue) {
15046 if (improvementLimitParametersBuilder_ ==
null) {
15047 improvementLimitParameters_ = builderForValue.build();
15049 improvementLimitParametersBuilder_.setMessage(builderForValue.build());
15051 bitField1_ |= 0x00000400;
15064 if (improvementLimitParametersBuilder_ ==
null) {
15065 if (((bitField1_ & 0x00000400) != 0) &&
15066 improvementLimitParameters_ !=
null &&
15067 improvementLimitParameters_ != com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance()) {
15070 improvementLimitParameters_ = value;
15073 improvementLimitParametersBuilder_.mergeFrom(value);
15075 if (improvementLimitParameters_ !=
null) {
15076 bitField1_ |= 0x00000400;
15090 bitField1_ = (bitField1_ & ~0x00000400);
15091 improvementLimitParameters_ =
null;
15092 if (improvementLimitParametersBuilder_ !=
null) {
15093 improvementLimitParametersBuilder_.dispose();
15094 improvementLimitParametersBuilder_ =
null;
15108 bitField1_ |= 0x00000400;
15110 return internalGetImprovementLimitParametersFieldBuilder().getBuilder();
15121 if (improvementLimitParametersBuilder_ !=
null) {
15122 return improvementLimitParametersBuilder_.getMessageOrBuilder();
15124 return improvementLimitParameters_ ==
null ?
15125 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.getDefaultInstance() : improvementLimitParameters_;
15136 private com.google.protobuf.SingleFieldBuilder<
15137 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParametersOrBuilder>
15138 internalGetImprovementLimitParametersFieldBuilder() {
15139 if (improvementLimitParametersBuilder_ ==
null) {
15140 improvementLimitParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
15141 com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParameters.Builder, com.google.ortools.constraintsolver.RoutingSearchParameters.ImprovementSearchLimitParametersOrBuilder>(
15143 getParentForChildren(),
15145 improvementLimitParameters_ =
null;
15147 return improvementLimitParametersBuilder_;
15150 private boolean useFullPropagation_ ;
15168 @java.lang.Override
15170 return useFullPropagation_;
15192 useFullPropagation_ = value;
15193 bitField1_ |= 0x00000800;
15215 bitField1_ = (bitField1_ & ~0x00000800);
15216 useFullPropagation_ =
false;
15221 private boolean logSearch_ ;
15242 @java.lang.Override
15269 logSearch_ = value;
15270 bitField1_ |= 0x00001000;
15295 bitField1_ = (bitField1_ & ~0x00001000);
15296 logSearch_ =
false;
15301 private double logCostScalingFactor_ ;
15311 @java.lang.Override
15313 return logCostScalingFactor_;
15327 logCostScalingFactor_ = value;
15328 bitField1_ |= 0x00002000;
15342 bitField1_ = (bitField1_ & ~0x00002000);
15343 logCostScalingFactor_ = 0D;
15348 private double logCostOffset_ ;
15353 @java.lang.Override
15355 return logCostOffset_;
15364 logCostOffset_ = value;
15365 bitField1_ |= 0x00004000;
15374 bitField1_ = (bitField1_ & ~0x00004000);
15375 logCostOffset_ = 0D;
15380 private java.lang.Object logTag_ =
"";
15391 java.lang.Object ref = logTag_;
15392 if (!(ref instanceof java.lang.String)) {
15393 com.google.protobuf.ByteString bs =
15394 (com.google.protobuf.ByteString) ref;
15395 java.lang.String s = bs.toStringUtf8();
15399 return (java.lang.String) ref;
15411 public com.google.protobuf.ByteString
15413 java.lang.Object ref = logTag_;
15414 if (ref instanceof String) {
15415 com.google.protobuf.ByteString b =
15416 com.google.protobuf.ByteString.copyFromUtf8(
15417 (java.lang.String) ref);
15421 return (com.google.protobuf.ByteString) ref;
15435 java.lang.String value) {
15436 if (value ==
null) {
throw new NullPointerException(); }
15438 bitField1_ |= 0x00008000;
15453 bitField1_ = (bitField1_ & ~0x00008000);
15468 com.google.protobuf.ByteString value) {
15469 if (value ==
null) {
throw new NullPointerException(); }
15470 checkByteStringIsUtf8(value);
15472 bitField1_ |= 0x00008000;
15477 private boolean useIteratedLocalSearch_ ;
15487 @java.lang.Override
15489 return useIteratedLocalSearch_;
15503 useIteratedLocalSearch_ = value;
15504 bitField1_ |= 0x00010000;
15518 bitField1_ = (bitField1_ & ~0x00010000);
15519 useIteratedLocalSearch_ =
false;
15525 private com.google.protobuf.SingleFieldBuilder<
15526 com.google.ortools.constraintsolver.IteratedLocalSearchParameters, com.google.ortools.constraintsolver.IteratedLocalSearchParameters.Builder, com.google.ortools.constraintsolver.IteratedLocalSearchParametersOrBuilder> iteratedLocalSearchParametersBuilder_;
15536 return ((bitField1_ & 0x00020000) != 0);
15547 if (iteratedLocalSearchParametersBuilder_ ==
null) {
15548 return iteratedLocalSearchParameters_ ==
null ? com.google.ortools.constraintsolver.IteratedLocalSearchParameters.getDefaultInstance() : iteratedLocalSearchParameters_;
15550 return iteratedLocalSearchParametersBuilder_.getMessage();
15561 if (iteratedLocalSearchParametersBuilder_ ==
null) {
15562 if (value ==
null) {
15563 throw new NullPointerException();
15565 iteratedLocalSearchParameters_ = value;
15567 iteratedLocalSearchParametersBuilder_.setMessage(value);
15569 bitField1_ |= 0x00020000;
15581 com.google.ortools.constraintsolver.IteratedLocalSearchParameters.Builder builderForValue) {
15582 if (iteratedLocalSearchParametersBuilder_ ==
null) {
15583 iteratedLocalSearchParameters_ = builderForValue.build();
15585 iteratedLocalSearchParametersBuilder_.setMessage(builderForValue.build());
15587 bitField1_ |= 0x00020000;
15599 if (iteratedLocalSearchParametersBuilder_ ==
null) {
15600 if (((bitField1_ & 0x00020000) != 0) &&
15601 iteratedLocalSearchParameters_ !=
null &&
15602 iteratedLocalSearchParameters_ != com.google.ortools.constraintsolver.IteratedLocalSearchParameters.getDefaultInstance()) {
15605 iteratedLocalSearchParameters_ = value;
15608 iteratedLocalSearchParametersBuilder_.mergeFrom(value);
15610 if (iteratedLocalSearchParameters_ !=
null) {
15611 bitField1_ |= 0x00020000;
15624 bitField1_ = (bitField1_ & ~0x00020000);
15625 iteratedLocalSearchParameters_ =
null;
15626 if (iteratedLocalSearchParametersBuilder_ !=
null) {
15627 iteratedLocalSearchParametersBuilder_.dispose();
15628 iteratedLocalSearchParametersBuilder_ =
null;
15641 bitField1_ |= 0x00020000;
15643 return internalGetIteratedLocalSearchParametersFieldBuilder().getBuilder();
15653 if (iteratedLocalSearchParametersBuilder_ !=
null) {
15654 return iteratedLocalSearchParametersBuilder_.getMessageOrBuilder();
15656 return iteratedLocalSearchParameters_ ==
null ?
15657 com.google.ortools.constraintsolver.IteratedLocalSearchParameters.getDefaultInstance() : iteratedLocalSearchParameters_;
15667 private com.google.protobuf.SingleFieldBuilder<
15668 com.google.ortools.constraintsolver.IteratedLocalSearchParameters, com.google.ortools.constraintsolver.IteratedLocalSearchParameters.Builder, com.google.ortools.constraintsolver.IteratedLocalSearchParametersOrBuilder>
15669 internalGetIteratedLocalSearchParametersFieldBuilder() {
15670 if (iteratedLocalSearchParametersBuilder_ ==
null) {
15671 iteratedLocalSearchParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
15672 com.google.ortools.constraintsolver.IteratedLocalSearchParameters, com.google.ortools.constraintsolver.IteratedLocalSearchParameters.Builder, com.google.ortools.constraintsolver.IteratedLocalSearchParametersOrBuilder>(
15674 getParentForChildren(),
15676 iteratedLocalSearchParameters_ =
null;
15678 return iteratedLocalSearchParametersBuilder_;
15687 DEFAULT_INSTANCE =
new com.google.ortools.constraintsolver.RoutingSearchParameters();
15691 return DEFAULT_INSTANCE;
15696 @java.lang.Override
15698 com.google.protobuf.CodedInputStream input,
15699 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
15700 throws com.google.protobuf.InvalidProtocolBufferException {
15703 builder.mergeFrom(input, extensionRegistry);
15704 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
15705 throw e.setUnfinishedMessage(builder.buildPartial());
15706 }
catch (com.google.protobuf.UninitializedMessageException e) {
15707 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
15708 }
catch (java.io.IOException e) {
15709 throw new com.google.protobuf.InvalidProtocolBufferException(e)
15710 .setUnfinishedMessage(builder.buildPartial());
15712 return builder.buildPartial();
15716 public static com.google.protobuf.Parser<RoutingSearchParameters>
parser() {
15720 @java.lang.Override
15725 @java.lang.Override
15727 return DEFAULT_INSTANCE;