Java Reference

Java Reference

RoutingSearchParameters.java
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/constraint_solver/routing_parameters.proto
3 
4 package com.google.ortools.constraintsolver;
5 
17 public final class RoutingSearchParameters extends
18  com.google.protobuf.GeneratedMessageV3 implements
19  // @@protoc_insertion_point(message_implements:operations_research.RoutingSearchParameters)
21 private static final long serialVersionUID = 0L;
22  // Use RoutingSearchParameters.newBuilder() to construct.
23  private RoutingSearchParameters(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
24  super(builder);
25  }
26  private RoutingSearchParameters() {
27  firstSolutionStrategy_ = 0;
28  localSearchMetaheuristic_ = 0;
29  useCp_ = 0;
30  useCpSat_ = 0;
31  }
32 
33  @java.lang.Override
34  @SuppressWarnings({"unused"})
35  protected java.lang.Object newInstance(
36  UnusedPrivateParameter unused) {
37  return new RoutingSearchParameters();
38  }
39 
40  @java.lang.Override
41  public final com.google.protobuf.UnknownFieldSet
43  return this.unknownFields;
44  }
46  com.google.protobuf.CodedInputStream input,
47  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
48  throws com.google.protobuf.InvalidProtocolBufferException {
49  this();
50  if (extensionRegistry == null) {
51  throw new java.lang.NullPointerException();
52  }
53  com.google.protobuf.UnknownFieldSet.Builder unknownFields =
54  com.google.protobuf.UnknownFieldSet.newBuilder();
55  try {
56  boolean done = false;
57  while (!done) {
58  int tag = input.readTag();
59  switch (tag) {
60  case 0:
61  done = true;
62  break;
63  case 8: {
64  int rawValue = input.readEnum();
65 
66  firstSolutionStrategy_ = rawValue;
67  break;
68  }
69  case 16: {
70 
71  useUnfilteredFirstSolutionStrategy_ = input.readBool();
72  break;
73  }
74  case 26: {
76  if (localSearchOperators_ != null) {
77  subBuilder = localSearchOperators_.toBuilder();
78  }
79  localSearchOperators_ = input.readMessage(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.parser(), extensionRegistry);
80  if (subBuilder != null) {
81  subBuilder.mergeFrom(localSearchOperators_);
82  localSearchOperators_ = subBuilder.buildPartial();
83  }
84 
85  break;
86  }
87  case 32: {
88  int rawValue = input.readEnum();
89 
90  localSearchMetaheuristic_ = rawValue;
91  break;
92  }
93  case 41: {
94 
95  guidedLocalSearchLambdaCoefficient_ = input.readDouble();
96  break;
97  }
98  case 48: {
99 
100  useDepthFirstSearch_ = input.readBool();
101  break;
102  }
103  case 57: {
104 
105  optimizationStep_ = input.readDouble();
106  break;
107  }
108  case 64: {
109 
110  solutionLimit_ = input.readInt64();
111  break;
112  }
113  case 74: {
114  com.google.protobuf.Duration.Builder subBuilder = null;
115  if (timeLimit_ != null) {
116  subBuilder = timeLimit_.toBuilder();
117  }
118  timeLimit_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry);
119  if (subBuilder != null) {
120  subBuilder.mergeFrom(timeLimit_);
121  timeLimit_ = subBuilder.buildPartial();
122  }
123 
124  break;
125  }
126  case 82: {
127  com.google.protobuf.Duration.Builder subBuilder = null;
128  if (lnsTimeLimit_ != null) {
129  subBuilder = lnsTimeLimit_.toBuilder();
130  }
131  lnsTimeLimit_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry);
132  if (subBuilder != null) {
133  subBuilder.mergeFrom(lnsTimeLimit_);
134  lnsTimeLimit_ = subBuilder.buildPartial();
135  }
136 
137  break;
138  }
139  case 88: {
140 
141  useFullPropagation_ = input.readBool();
142  break;
143  }
144  case 104: {
145 
146  logSearch_ = input.readBool();
147  break;
148  }
149  case 113: {
150 
151  savingsNeighborsRatio_ = input.readDouble();
152  break;
153  }
154  case 120: {
155 
156  savingsAddReverseArcs_ = input.readBool();
157  break;
158  }
159  case 129: {
160 
161  cheapestInsertionFarthestSeedsRatio_ = input.readDouble();
162  break;
163  }
164  case 136: {
165 
166  numberOfSolutionsToCollect_ = input.readInt32();
167  break;
168  }
169  case 145: {
170 
171  savingsArcCoefficient_ = input.readDouble();
172  break;
173  }
174  case 152: {
175 
176  savingsParallelRoutes_ = input.readBool();
177  break;
178  }
179  case 160: {
180 
181  relocateExpensiveChainNumArcsToConsider_ = input.readInt32();
182  break;
183  }
184  case 169: {
185 
186  cheapestInsertionNeighborsRatio_ = input.readDouble();
187  break;
188  }
189  case 177: {
190 
191  logCostScalingFactor_ = input.readDouble();
192  break;
193  }
194  case 185: {
195 
196  savingsMaxMemoryUsageBytes_ = input.readDouble();
197  break;
198  }
199  case 216: {
200  int rawValue = input.readEnum();
201 
202  useCpSat_ = rawValue;
203  break;
204  }
205  case 224: {
206  int rawValue = input.readEnum();
207 
208  useCp_ = rawValue;
209  break;
210  }
211  case 233: {
212 
213  logCostOffset_ = input.readDouble();
214  break;
215  }
216  case 240: {
217 
218  christofidesUseMinimumMatching_ = input.readBool();
219  break;
220  }
221  default: {
222  if (!parseUnknownField(
223  input, unknownFields, extensionRegistry, tag)) {
224  done = true;
225  }
226  break;
227  }
228  }
229  }
230  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
231  throw e.setUnfinishedMessage(this);
232  } catch (java.io.IOException e) {
233  throw new com.google.protobuf.InvalidProtocolBufferException(
234  e).setUnfinishedMessage(this);
235  } finally {
236  this.unknownFields = unknownFields.build();
237  makeExtensionsImmutable();
238  }
239  }
240  public static final com.google.protobuf.Descriptors.Descriptor
242  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
243  }
244 
245  @java.lang.Override
246  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
248  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
249  .ensureFieldAccessorsInitialized(
251  }
252 
254  // @@protoc_insertion_point(interface_extends:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
255  com.google.protobuf.MessageOrBuilder {
256 
273  int getUseRelocateValue();
291 
326 
357 
418 
459 
474  int getUseExchangeValue();
490 
521 
542 
559  int getUseCrossValue();
577 
596 
633 
651  int getUseTwoOptValue();
670 
689  int getUseOrOptValue();
709 
734 
748  int getUseTspOptValue();
763 
778  int getUseMakeActiveValue();
794 
831 
858 
887 
900  int getUseSwapActiveValue();
914 
951 
990 
1006  int getUsePathLnsValue();
1023 
1032  int getUseFullPathLnsValue();
1042 
1056  int getUseTspLnsValue();
1071 
1082  int getUseInactiveLnsValue();
1094  }
1103  public static final class LocalSearchNeighborhoodOperators extends
1104  com.google.protobuf.GeneratedMessageV3 implements
1105  // @@protoc_insertion_point(message_implements:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
1107  private static final long serialVersionUID = 0L;
1108  // Use LocalSearchNeighborhoodOperators.newBuilder() to construct.
1109  private LocalSearchNeighborhoodOperators(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
1110  super(builder);
1111  }
1113  useRelocate_ = 0;
1114  useRelocatePair_ = 0;
1115  useLightRelocatePair_ = 0;
1116  useRelocateNeighbors_ = 0;
1117  useRelocateSubtrip_ = 0;
1118  useExchange_ = 0;
1119  useExchangePair_ = 0;
1120  useExchangeSubtrip_ = 0;
1121  useCross_ = 0;
1122  useCrossExchange_ = 0;
1123  useRelocateExpensiveChain_ = 0;
1124  useTwoOpt_ = 0;
1125  useOrOpt_ = 0;
1126  useLinKernighan_ = 0;
1127  useTspOpt_ = 0;
1128  useMakeActive_ = 0;
1129  useRelocateAndMakeActive_ = 0;
1130  useMakeInactive_ = 0;
1131  useMakeChainInactive_ = 0;
1132  useSwapActive_ = 0;
1133  useExtendedSwapActive_ = 0;
1134  useNodePairSwapActive_ = 0;
1135  usePathLns_ = 0;
1136  useFullPathLns_ = 0;
1137  useTspLns_ = 0;
1138  useInactiveLns_ = 0;
1139  }
1140 
1141  @java.lang.Override
1142  @SuppressWarnings({"unused"})
1143  protected java.lang.Object newInstance(
1144  UnusedPrivateParameter unused) {
1145  return new LocalSearchNeighborhoodOperators();
1146  }
1147 
1148  @java.lang.Override
1149  public final com.google.protobuf.UnknownFieldSet
1151  return this.unknownFields;
1152  }
1154  com.google.protobuf.CodedInputStream input,
1155  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1156  throws com.google.protobuf.InvalidProtocolBufferException {
1157  this();
1158  if (extensionRegistry == null) {
1159  throw new java.lang.NullPointerException();
1160  }
1161  com.google.protobuf.UnknownFieldSet.Builder unknownFields =
1162  com.google.protobuf.UnknownFieldSet.newBuilder();
1163  try {
1164  boolean done = false;
1165  while (!done) {
1166  int tag = input.readTag();
1167  switch (tag) {
1168  case 0:
1169  done = true;
1170  break;
1171  case 8: {
1172  int rawValue = input.readEnum();
1173 
1174  useRelocate_ = rawValue;
1175  break;
1176  }
1177  case 16: {
1178  int rawValue = input.readEnum();
1179 
1180  useRelocatePair_ = rawValue;
1181  break;
1182  }
1183  case 24: {
1184  int rawValue = input.readEnum();
1185 
1186  useRelocateNeighbors_ = rawValue;
1187  break;
1188  }
1189  case 32: {
1190  int rawValue = input.readEnum();
1191 
1192  useExchange_ = rawValue;
1193  break;
1194  }
1195  case 40: {
1196  int rawValue = input.readEnum();
1197 
1198  useCross_ = rawValue;
1199  break;
1200  }
1201  case 48: {
1202  int rawValue = input.readEnum();
1203 
1204  useCrossExchange_ = rawValue;
1205  break;
1206  }
1207  case 56: {
1208  int rawValue = input.readEnum();
1209 
1210  useTwoOpt_ = rawValue;
1211  break;
1212  }
1213  case 64: {
1214  int rawValue = input.readEnum();
1215 
1216  useOrOpt_ = rawValue;
1217  break;
1218  }
1219  case 72: {
1220  int rawValue = input.readEnum();
1221 
1222  useLinKernighan_ = rawValue;
1223  break;
1224  }
1225  case 80: {
1226  int rawValue = input.readEnum();
1227 
1228  useTspOpt_ = rawValue;
1229  break;
1230  }
1231  case 88: {
1232  int rawValue = input.readEnum();
1233 
1234  useMakeActive_ = rawValue;
1235  break;
1236  }
1237  case 96: {
1238  int rawValue = input.readEnum();
1239 
1240  useMakeInactive_ = rawValue;
1241  break;
1242  }
1243  case 104: {
1244  int rawValue = input.readEnum();
1245 
1246  useMakeChainInactive_ = rawValue;
1247  break;
1248  }
1249  case 112: {
1250  int rawValue = input.readEnum();
1251 
1252  useSwapActive_ = rawValue;
1253  break;
1254  }
1255  case 120: {
1256  int rawValue = input.readEnum();
1257 
1258  useExtendedSwapActive_ = rawValue;
1259  break;
1260  }
1261  case 128: {
1262  int rawValue = input.readEnum();
1263 
1264  usePathLns_ = rawValue;
1265  break;
1266  }
1267  case 136: {
1268  int rawValue = input.readEnum();
1269 
1270  useFullPathLns_ = rawValue;
1271  break;
1272  }
1273  case 144: {
1274  int rawValue = input.readEnum();
1275 
1276  useTspLns_ = rawValue;
1277  break;
1278  }
1279  case 152: {
1280  int rawValue = input.readEnum();
1281 
1282  useInactiveLns_ = rawValue;
1283  break;
1284  }
1285  case 160: {
1286  int rawValue = input.readEnum();
1287 
1288  useNodePairSwapActive_ = rawValue;
1289  break;
1290  }
1291  case 168: {
1292  int rawValue = input.readEnum();
1293 
1294  useRelocateAndMakeActive_ = rawValue;
1295  break;
1296  }
1297  case 176: {
1298  int rawValue = input.readEnum();
1299 
1300  useExchangePair_ = rawValue;
1301  break;
1302  }
1303  case 184: {
1304  int rawValue = input.readEnum();
1305 
1306  useRelocateExpensiveChain_ = rawValue;
1307  break;
1308  }
1309  case 192: {
1310  int rawValue = input.readEnum();
1311 
1312  useLightRelocatePair_ = rawValue;
1313  break;
1314  }
1315  case 200: {
1316  int rawValue = input.readEnum();
1317 
1318  useRelocateSubtrip_ = rawValue;
1319  break;
1320  }
1321  case 208: {
1322  int rawValue = input.readEnum();
1323 
1324  useExchangeSubtrip_ = rawValue;
1325  break;
1326  }
1327  default: {
1328  if (!parseUnknownField(
1329  input, unknownFields, extensionRegistry, tag)) {
1330  done = true;
1331  }
1332  break;
1333  }
1334  }
1335  }
1336  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1337  throw e.setUnfinishedMessage(this);
1338  } catch (java.io.IOException e) {
1339  throw new com.google.protobuf.InvalidProtocolBufferException(
1340  e).setUnfinishedMessage(this);
1341  } finally {
1342  this.unknownFields = unknownFields.build();
1343  makeExtensionsImmutable();
1344  }
1345  }
1346  public static final com.google.protobuf.Descriptors.Descriptor
1348  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
1349  }
1350 
1351  @java.lang.Override
1352  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
1354  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
1355  .ensureFieldAccessorsInitialized(
1357  }
1358 
1359  public static final int USE_RELOCATE_FIELD_NUMBER = 1;
1360  private int useRelocate_;
1377  public int getUseRelocateValue() {
1378  return useRelocate_;
1379  }
1397  @SuppressWarnings("deprecation")
1399  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1400  }
1401 
1402  public static final int USE_RELOCATE_PAIR_FIELD_NUMBER = 2;
1403  private int useRelocatePair_;
1421  return useRelocatePair_;
1422  }
1440  @SuppressWarnings("deprecation")
1442  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1443  }
1444 
1445  public static final int USE_LIGHT_RELOCATE_PAIR_FIELD_NUMBER = 24;
1446  private int useLightRelocatePair_;
1462  return useLightRelocatePair_;
1463  }
1479  @SuppressWarnings("deprecation")
1481  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1482  }
1483 
1484  public static final int USE_RELOCATE_NEIGHBORS_FIELD_NUMBER = 3;
1485  private int useRelocateNeighbors_;
1516  return useRelocateNeighbors_;
1517  }
1548  @SuppressWarnings("deprecation")
1550  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1551  }
1552 
1553  public static final int USE_RELOCATE_SUBTRIP_FIELD_NUMBER = 25;
1554  private int useRelocateSubtrip_;
1575  return useRelocateSubtrip_;
1576  }
1597  @SuppressWarnings("deprecation")
1599  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1600  }
1601 
1602  public static final int USE_EXCHANGE_FIELD_NUMBER = 4;
1603  private int useExchange_;
1618  public int getUseExchangeValue() {
1619  return useExchange_;
1620  }
1636  @SuppressWarnings("deprecation")
1638  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1639  }
1640 
1641  public static final int USE_EXCHANGE_PAIR_FIELD_NUMBER = 22;
1642  private int useExchangePair_;
1658  return useExchangePair_;
1659  }
1675  @SuppressWarnings("deprecation")
1677  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1678  }
1679 
1680  public static final int USE_EXCHANGE_SUBTRIP_FIELD_NUMBER = 26;
1681  private int useExchangeSubtrip_;
1692  return useExchangeSubtrip_;
1693  }
1704  @SuppressWarnings("deprecation")
1706  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1707  }
1708 
1709  public static final int USE_CROSS_FIELD_NUMBER = 5;
1710  private int useCross_;
1727  public int getUseCrossValue() {
1728  return useCross_;
1729  }
1747  @SuppressWarnings("deprecation")
1749  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1750  }
1751 
1752  public static final int USE_CROSS_EXCHANGE_FIELD_NUMBER = 6;
1753  private int useCrossExchange_;
1763  return useCrossExchange_;
1764  }
1774  @SuppressWarnings("deprecation")
1776  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1777  }
1778 
1779  public static final int USE_RELOCATE_EXPENSIVE_CHAIN_FIELD_NUMBER = 23;
1780  private int useRelocateExpensiveChain_;
1799  return useRelocateExpensiveChain_;
1800  }
1819  @SuppressWarnings("deprecation")
1820  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateExpensiveChain_);
1821  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1822  }
1823 
1824  public static final int USE_TWO_OPT_FIELD_NUMBER = 7;
1825  private int useTwoOpt_;
1843  public int getUseTwoOptValue() {
1844  return useTwoOpt_;
1845  }
1864  @SuppressWarnings("deprecation")
1866  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1867  }
1868 
1869  public static final int USE_OR_OPT_FIELD_NUMBER = 8;
1870  private int useOrOpt_;
1889  public int getUseOrOptValue() {
1890  return useOrOpt_;
1891  }
1911  @SuppressWarnings("deprecation")
1913  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1914  }
1915 
1916  public static final int USE_LIN_KERNIGHAN_FIELD_NUMBER = 9;
1917  private int useLinKernighan_;
1930  return useLinKernighan_;
1931  }
1944  @SuppressWarnings("deprecation")
1946  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1947  }
1948 
1949  public static final int USE_TSP_OPT_FIELD_NUMBER = 10;
1950  private int useTspOpt_;
1964  public int getUseTspOptValue() {
1965  return useTspOpt_;
1966  }
1981  @SuppressWarnings("deprecation")
1983  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1984  }
1985 
1986  public static final int USE_MAKE_ACTIVE_FIELD_NUMBER = 11;
1987  private int useMakeActive_;
2002  public int getUseMakeActiveValue() {
2003  return useMakeActive_;
2004  }
2020  @SuppressWarnings("deprecation")
2022  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2023  }
2024 
2025  public static final int USE_RELOCATE_AND_MAKE_ACTIVE_FIELD_NUMBER = 21;
2026  private int useRelocateAndMakeActive_;
2045  return useRelocateAndMakeActive_;
2046  }
2065  @SuppressWarnings("deprecation")
2066  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateAndMakeActive_);
2067  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2068  }
2069 
2070  public static final int USE_MAKE_INACTIVE_FIELD_NUMBER = 12;
2071  private int useMakeInactive_;
2085  return useMakeInactive_;
2086  }
2100  @SuppressWarnings("deprecation")
2102  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2103  }
2104 
2105  public static final int USE_MAKE_CHAIN_INACTIVE_FIELD_NUMBER = 13;
2106  private int useMakeChainInactive_;
2121  return useMakeChainInactive_;
2122  }
2137  @SuppressWarnings("deprecation")
2139  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2140  }
2141 
2142  public static final int USE_SWAP_ACTIVE_FIELD_NUMBER = 14;
2143  private int useSwapActive_;
2156  public int getUseSwapActiveValue() {
2157  return useSwapActive_;
2158  }
2172  @SuppressWarnings("deprecation")
2174  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2175  }
2176 
2177  public static final int USE_EXTENDED_SWAP_ACTIVE_FIELD_NUMBER = 15;
2178  private int useExtendedSwapActive_;
2197  return useExtendedSwapActive_;
2198  }
2217  @SuppressWarnings("deprecation")
2218  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useExtendedSwapActive_);
2219  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2220  }
2221 
2222  public static final int USE_NODE_PAIR_SWAP_ACTIVE_FIELD_NUMBER = 20;
2223  private int useNodePairSwapActive_;
2243  return useNodePairSwapActive_;
2244  }
2264  @SuppressWarnings("deprecation")
2265  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useNodePairSwapActive_);
2266  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2267  }
2268 
2269  public static final int USE_PATH_LNS_FIELD_NUMBER = 16;
2270  private int usePathLns_;
2286  public int getUsePathLnsValue() {
2287  return usePathLns_;
2288  }
2305  @SuppressWarnings("deprecation")
2307  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2308  }
2309 
2310  public static final int USE_FULL_PATH_LNS_FIELD_NUMBER = 17;
2311  private int useFullPathLns_;
2320  public int getUseFullPathLnsValue() {
2321  return useFullPathLns_;
2322  }
2332  @SuppressWarnings("deprecation")
2334  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2335  }
2336 
2337  public static final int USE_TSP_LNS_FIELD_NUMBER = 18;
2338  private int useTspLns_;
2352  public int getUseTspLnsValue() {
2353  return useTspLns_;
2354  }
2369  @SuppressWarnings("deprecation")
2371  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2372  }
2373 
2374  public static final int USE_INACTIVE_LNS_FIELD_NUMBER = 19;
2375  private int useInactiveLns_;
2386  public int getUseInactiveLnsValue() {
2387  return useInactiveLns_;
2388  }
2400  @SuppressWarnings("deprecation")
2402  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2403  }
2404 
2405  private byte memoizedIsInitialized = -1;
2406  @java.lang.Override
2407  public final boolean isInitialized() {
2408  byte isInitialized = memoizedIsInitialized;
2409  if (isInitialized == 1) return true;
2410  if (isInitialized == 0) return false;
2411 
2412  memoizedIsInitialized = 1;
2413  return true;
2414  }
2415 
2416  @java.lang.Override
2417  public void writeTo(com.google.protobuf.CodedOutputStream output)
2418  throws java.io.IOException {
2419  if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2420  output.writeEnum(1, useRelocate_);
2421  }
2422  if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2423  output.writeEnum(2, useRelocatePair_);
2424  }
2425  if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2426  output.writeEnum(3, useRelocateNeighbors_);
2427  }
2428  if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2429  output.writeEnum(4, useExchange_);
2430  }
2431  if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2432  output.writeEnum(5, useCross_);
2433  }
2434  if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2435  output.writeEnum(6, useCrossExchange_);
2436  }
2437  if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2438  output.writeEnum(7, useTwoOpt_);
2439  }
2440  if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2441  output.writeEnum(8, useOrOpt_);
2442  }
2443  if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2444  output.writeEnum(9, useLinKernighan_);
2445  }
2446  if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2447  output.writeEnum(10, useTspOpt_);
2448  }
2449  if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2450  output.writeEnum(11, useMakeActive_);
2451  }
2452  if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2453  output.writeEnum(12, useMakeInactive_);
2454  }
2455  if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2456  output.writeEnum(13, useMakeChainInactive_);
2457  }
2458  if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2459  output.writeEnum(14, useSwapActive_);
2460  }
2461  if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2462  output.writeEnum(15, useExtendedSwapActive_);
2463  }
2464  if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2465  output.writeEnum(16, usePathLns_);
2466  }
2467  if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2468  output.writeEnum(17, useFullPathLns_);
2469  }
2470  if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2471  output.writeEnum(18, useTspLns_);
2472  }
2473  if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2474  output.writeEnum(19, useInactiveLns_);
2475  }
2476  if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2477  output.writeEnum(20, useNodePairSwapActive_);
2478  }
2479  if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2480  output.writeEnum(21, useRelocateAndMakeActive_);
2481  }
2482  if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2483  output.writeEnum(22, useExchangePair_);
2484  }
2485  if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2486  output.writeEnum(23, useRelocateExpensiveChain_);
2487  }
2488  if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2489  output.writeEnum(24, useLightRelocatePair_);
2490  }
2491  if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2492  output.writeEnum(25, useRelocateSubtrip_);
2493  }
2494  if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2495  output.writeEnum(26, useExchangeSubtrip_);
2496  }
2497  unknownFields.writeTo(output);
2498  }
2499 
2500  @java.lang.Override
2501  public int getSerializedSize() {
2502  int size = memoizedSize;
2503  if (size != -1) return size;
2504 
2505  size = 0;
2506  if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2507  size += com.google.protobuf.CodedOutputStream
2508  .computeEnumSize(1, useRelocate_);
2509  }
2510  if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2511  size += com.google.protobuf.CodedOutputStream
2512  .computeEnumSize(2, useRelocatePair_);
2513  }
2514  if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2515  size += com.google.protobuf.CodedOutputStream
2516  .computeEnumSize(3, useRelocateNeighbors_);
2517  }
2518  if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2519  size += com.google.protobuf.CodedOutputStream
2520  .computeEnumSize(4, useExchange_);
2521  }
2522  if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2523  size += com.google.protobuf.CodedOutputStream
2524  .computeEnumSize(5, useCross_);
2525  }
2526  if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2527  size += com.google.protobuf.CodedOutputStream
2528  .computeEnumSize(6, useCrossExchange_);
2529  }
2530  if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2531  size += com.google.protobuf.CodedOutputStream
2532  .computeEnumSize(7, useTwoOpt_);
2533  }
2534  if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2535  size += com.google.protobuf.CodedOutputStream
2536  .computeEnumSize(8, useOrOpt_);
2537  }
2538  if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2539  size += com.google.protobuf.CodedOutputStream
2540  .computeEnumSize(9, useLinKernighan_);
2541  }
2542  if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2543  size += com.google.protobuf.CodedOutputStream
2544  .computeEnumSize(10, useTspOpt_);
2545  }
2546  if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2547  size += com.google.protobuf.CodedOutputStream
2548  .computeEnumSize(11, useMakeActive_);
2549  }
2550  if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2551  size += com.google.protobuf.CodedOutputStream
2552  .computeEnumSize(12, useMakeInactive_);
2553  }
2554  if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2555  size += com.google.protobuf.CodedOutputStream
2556  .computeEnumSize(13, useMakeChainInactive_);
2557  }
2558  if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2559  size += com.google.protobuf.CodedOutputStream
2560  .computeEnumSize(14, useSwapActive_);
2561  }
2562  if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2563  size += com.google.protobuf.CodedOutputStream
2564  .computeEnumSize(15, useExtendedSwapActive_);
2565  }
2566  if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2567  size += com.google.protobuf.CodedOutputStream
2568  .computeEnumSize(16, usePathLns_);
2569  }
2570  if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2571  size += com.google.protobuf.CodedOutputStream
2572  .computeEnumSize(17, useFullPathLns_);
2573  }
2574  if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2575  size += com.google.protobuf.CodedOutputStream
2576  .computeEnumSize(18, useTspLns_);
2577  }
2578  if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2579  size += com.google.protobuf.CodedOutputStream
2580  .computeEnumSize(19, useInactiveLns_);
2581  }
2582  if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2583  size += com.google.protobuf.CodedOutputStream
2584  .computeEnumSize(20, useNodePairSwapActive_);
2585  }
2586  if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2587  size += com.google.protobuf.CodedOutputStream
2588  .computeEnumSize(21, useRelocateAndMakeActive_);
2589  }
2590  if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2591  size += com.google.protobuf.CodedOutputStream
2592  .computeEnumSize(22, useExchangePair_);
2593  }
2594  if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2595  size += com.google.protobuf.CodedOutputStream
2596  .computeEnumSize(23, useRelocateExpensiveChain_);
2597  }
2598  if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2599  size += com.google.protobuf.CodedOutputStream
2600  .computeEnumSize(24, useLightRelocatePair_);
2601  }
2602  if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2603  size += com.google.protobuf.CodedOutputStream
2604  .computeEnumSize(25, useRelocateSubtrip_);
2605  }
2606  if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2607  size += com.google.protobuf.CodedOutputStream
2608  .computeEnumSize(26, useExchangeSubtrip_);
2609  }
2610  size += unknownFields.getSerializedSize();
2611  memoizedSize = size;
2612  return size;
2613  }
2614 
2615  @java.lang.Override
2616  public boolean equals(final java.lang.Object obj) {
2617  if (obj == this) {
2618  return true;
2619  }
2621  return super.equals(obj);
2622  }
2624 
2625  if (useRelocate_ != other.useRelocate_) return false;
2626  if (useRelocatePair_ != other.useRelocatePair_) return false;
2627  if (useLightRelocatePair_ != other.useLightRelocatePair_) return false;
2628  if (useRelocateNeighbors_ != other.useRelocateNeighbors_) return false;
2629  if (useRelocateSubtrip_ != other.useRelocateSubtrip_) return false;
2630  if (useExchange_ != other.useExchange_) return false;
2631  if (useExchangePair_ != other.useExchangePair_) return false;
2632  if (useExchangeSubtrip_ != other.useExchangeSubtrip_) return false;
2633  if (useCross_ != other.useCross_) return false;
2634  if (useCrossExchange_ != other.useCrossExchange_) return false;
2635  if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_) return false;
2636  if (useTwoOpt_ != other.useTwoOpt_) return false;
2637  if (useOrOpt_ != other.useOrOpt_) return false;
2638  if (useLinKernighan_ != other.useLinKernighan_) return false;
2639  if (useTspOpt_ != other.useTspOpt_) return false;
2640  if (useMakeActive_ != other.useMakeActive_) return false;
2641  if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_) return false;
2642  if (useMakeInactive_ != other.useMakeInactive_) return false;
2643  if (useMakeChainInactive_ != other.useMakeChainInactive_) return false;
2644  if (useSwapActive_ != other.useSwapActive_) return false;
2645  if (useExtendedSwapActive_ != other.useExtendedSwapActive_) return false;
2646  if (useNodePairSwapActive_ != other.useNodePairSwapActive_) return false;
2647  if (usePathLns_ != other.usePathLns_) return false;
2648  if (useFullPathLns_ != other.useFullPathLns_) return false;
2649  if (useTspLns_ != other.useTspLns_) return false;
2650  if (useInactiveLns_ != other.useInactiveLns_) return false;
2651  if (!unknownFields.equals(other.unknownFields)) return false;
2652  return true;
2653  }
2654 
2655  @java.lang.Override
2656  public int hashCode() {
2657  if (memoizedHashCode != 0) {
2658  return memoizedHashCode;
2659  }
2660  int hash = 41;
2661  hash = (19 * hash) + getDescriptor().hashCode();
2662  hash = (37 * hash) + USE_RELOCATE_FIELD_NUMBER;
2663  hash = (53 * hash) + useRelocate_;
2664  hash = (37 * hash) + USE_RELOCATE_PAIR_FIELD_NUMBER;
2665  hash = (53 * hash) + useRelocatePair_;
2666  hash = (37 * hash) + USE_LIGHT_RELOCATE_PAIR_FIELD_NUMBER;
2667  hash = (53 * hash) + useLightRelocatePair_;
2668  hash = (37 * hash) + USE_RELOCATE_NEIGHBORS_FIELD_NUMBER;
2669  hash = (53 * hash) + useRelocateNeighbors_;
2670  hash = (37 * hash) + USE_RELOCATE_SUBTRIP_FIELD_NUMBER;
2671  hash = (53 * hash) + useRelocateSubtrip_;
2672  hash = (37 * hash) + USE_EXCHANGE_FIELD_NUMBER;
2673  hash = (53 * hash) + useExchange_;
2674  hash = (37 * hash) + USE_EXCHANGE_PAIR_FIELD_NUMBER;
2675  hash = (53 * hash) + useExchangePair_;
2676  hash = (37 * hash) + USE_EXCHANGE_SUBTRIP_FIELD_NUMBER;
2677  hash = (53 * hash) + useExchangeSubtrip_;
2678  hash = (37 * hash) + USE_CROSS_FIELD_NUMBER;
2679  hash = (53 * hash) + useCross_;
2680  hash = (37 * hash) + USE_CROSS_EXCHANGE_FIELD_NUMBER;
2681  hash = (53 * hash) + useCrossExchange_;
2682  hash = (37 * hash) + USE_RELOCATE_EXPENSIVE_CHAIN_FIELD_NUMBER;
2683  hash = (53 * hash) + useRelocateExpensiveChain_;
2684  hash = (37 * hash) + USE_TWO_OPT_FIELD_NUMBER;
2685  hash = (53 * hash) + useTwoOpt_;
2686  hash = (37 * hash) + USE_OR_OPT_FIELD_NUMBER;
2687  hash = (53 * hash) + useOrOpt_;
2688  hash = (37 * hash) + USE_LIN_KERNIGHAN_FIELD_NUMBER;
2689  hash = (53 * hash) + useLinKernighan_;
2690  hash = (37 * hash) + USE_TSP_OPT_FIELD_NUMBER;
2691  hash = (53 * hash) + useTspOpt_;
2692  hash = (37 * hash) + USE_MAKE_ACTIVE_FIELD_NUMBER;
2693  hash = (53 * hash) + useMakeActive_;
2694  hash = (37 * hash) + USE_RELOCATE_AND_MAKE_ACTIVE_FIELD_NUMBER;
2695  hash = (53 * hash) + useRelocateAndMakeActive_;
2696  hash = (37 * hash) + USE_MAKE_INACTIVE_FIELD_NUMBER;
2697  hash = (53 * hash) + useMakeInactive_;
2698  hash = (37 * hash) + USE_MAKE_CHAIN_INACTIVE_FIELD_NUMBER;
2699  hash = (53 * hash) + useMakeChainInactive_;
2700  hash = (37 * hash) + USE_SWAP_ACTIVE_FIELD_NUMBER;
2701  hash = (53 * hash) + useSwapActive_;
2702  hash = (37 * hash) + USE_EXTENDED_SWAP_ACTIVE_FIELD_NUMBER;
2703  hash = (53 * hash) + useExtendedSwapActive_;
2704  hash = (37 * hash) + USE_NODE_PAIR_SWAP_ACTIVE_FIELD_NUMBER;
2705  hash = (53 * hash) + useNodePairSwapActive_;
2706  hash = (37 * hash) + USE_PATH_LNS_FIELD_NUMBER;
2707  hash = (53 * hash) + usePathLns_;
2708  hash = (37 * hash) + USE_FULL_PATH_LNS_FIELD_NUMBER;
2709  hash = (53 * hash) + useFullPathLns_;
2710  hash = (37 * hash) + USE_TSP_LNS_FIELD_NUMBER;
2711  hash = (53 * hash) + useTspLns_;
2712  hash = (37 * hash) + USE_INACTIVE_LNS_FIELD_NUMBER;
2713  hash = (53 * hash) + useInactiveLns_;
2714  hash = (29 * hash) + unknownFields.hashCode();
2715  memoizedHashCode = hash;
2716  return hash;
2717  }
2718 
2720  java.nio.ByteBuffer data)
2721  throws com.google.protobuf.InvalidProtocolBufferException {
2722  return PARSER.parseFrom(data);
2723  }
2725  java.nio.ByteBuffer data,
2726  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2727  throws com.google.protobuf.InvalidProtocolBufferException {
2728  return PARSER.parseFrom(data, extensionRegistry);
2729  }
2731  com.google.protobuf.ByteString data)
2732  throws com.google.protobuf.InvalidProtocolBufferException {
2733  return PARSER.parseFrom(data);
2734  }
2736  com.google.protobuf.ByteString data,
2737  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2738  throws com.google.protobuf.InvalidProtocolBufferException {
2739  return PARSER.parseFrom(data, extensionRegistry);
2740  }
2742  throws com.google.protobuf.InvalidProtocolBufferException {
2743  return PARSER.parseFrom(data);
2744  }
2746  byte[] data,
2747  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2748  throws com.google.protobuf.InvalidProtocolBufferException {
2749  return PARSER.parseFrom(data, extensionRegistry);
2750  }
2752  throws java.io.IOException {
2753  return com.google.protobuf.GeneratedMessageV3
2754  .parseWithIOException(PARSER, input);
2755  }
2757  java.io.InputStream input,
2758  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2759  throws java.io.IOException {
2760  return com.google.protobuf.GeneratedMessageV3
2761  .parseWithIOException(PARSER, input, extensionRegistry);
2762  }
2764  throws java.io.IOException {
2765  return com.google.protobuf.GeneratedMessageV3
2766  .parseDelimitedWithIOException(PARSER, input);
2767  }
2769  java.io.InputStream input,
2770  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2771  throws java.io.IOException {
2772  return com.google.protobuf.GeneratedMessageV3
2773  .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2774  }
2776  com.google.protobuf.CodedInputStream input)
2777  throws java.io.IOException {
2778  return com.google.protobuf.GeneratedMessageV3
2779  .parseWithIOException(PARSER, input);
2780  }
2782  com.google.protobuf.CodedInputStream input,
2783  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2784  throws java.io.IOException {
2785  return com.google.protobuf.GeneratedMessageV3
2786  .parseWithIOException(PARSER, input, extensionRegistry);
2787  }
2788 
2789  @java.lang.Override
2790  public Builder newBuilderForType() { return newBuilder(); }
2791  public static Builder newBuilder() {
2792  return DEFAULT_INSTANCE.toBuilder();
2793  }
2795  return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2796  }
2797  @java.lang.Override
2798  public Builder toBuilder() {
2799  return this == DEFAULT_INSTANCE
2800  ? new Builder() : new Builder().mergeFrom(this);
2801  }
2802 
2803  @java.lang.Override
2805  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2806  Builder builder = new Builder(parent);
2807  return builder;
2808  }
2817  public static final class Builder extends
2818  com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
2819  // @@protoc_insertion_point(builder_implements:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
2821  public static final com.google.protobuf.Descriptors.Descriptor
2823  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
2824  }
2825 
2826  @java.lang.Override
2827  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
2829  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
2830  .ensureFieldAccessorsInitialized(
2832  }
2833 
2834  // Construct using com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.newBuilder()
2835  private Builder() {
2836  maybeForceBuilderInitialization();
2837  }
2838 
2839  private Builder(
2840  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2841  super(parent);
2842  maybeForceBuilderInitialization();
2843  }
2844  private void maybeForceBuilderInitialization() {
2845  if (com.google.protobuf.GeneratedMessageV3
2846  .alwaysUseFieldBuilders) {
2847  }
2848  }
2849  @java.lang.Override
2850  public Builder clear() {
2851  super.clear();
2852  useRelocate_ = 0;
2853 
2854  useRelocatePair_ = 0;
2855 
2856  useLightRelocatePair_ = 0;
2857 
2858  useRelocateNeighbors_ = 0;
2859 
2860  useRelocateSubtrip_ = 0;
2861 
2862  useExchange_ = 0;
2863 
2864  useExchangePair_ = 0;
2865 
2866  useExchangeSubtrip_ = 0;
2867 
2868  useCross_ = 0;
2869 
2870  useCrossExchange_ = 0;
2871 
2872  useRelocateExpensiveChain_ = 0;
2873 
2874  useTwoOpt_ = 0;
2875 
2876  useOrOpt_ = 0;
2877 
2878  useLinKernighan_ = 0;
2879 
2880  useTspOpt_ = 0;
2881 
2882  useMakeActive_ = 0;
2883 
2884  useRelocateAndMakeActive_ = 0;
2885 
2886  useMakeInactive_ = 0;
2887 
2888  useMakeChainInactive_ = 0;
2889 
2890  useSwapActive_ = 0;
2891 
2892  useExtendedSwapActive_ = 0;
2893 
2894  useNodePairSwapActive_ = 0;
2895 
2896  usePathLns_ = 0;
2897 
2898  useFullPathLns_ = 0;
2899 
2900  useTspLns_ = 0;
2901 
2902  useInactiveLns_ = 0;
2903 
2904  return this;
2905  }
2906 
2907  @java.lang.Override
2908  public com.google.protobuf.Descriptors.Descriptor
2910  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
2911  }
2912 
2913  @java.lang.Override
2916  }
2917 
2918  @java.lang.Override
2921  if (!result.isInitialized()) {
2922  throw newUninitializedMessageException(result);
2923  }
2924  return result;
2925  }
2926 
2927  @java.lang.Override
2930  result.useRelocate_ = useRelocate_;
2931  result.useRelocatePair_ = useRelocatePair_;
2932  result.useLightRelocatePair_ = useLightRelocatePair_;
2933  result.useRelocateNeighbors_ = useRelocateNeighbors_;
2934  result.useRelocateSubtrip_ = useRelocateSubtrip_;
2935  result.useExchange_ = useExchange_;
2936  result.useExchangePair_ = useExchangePair_;
2937  result.useExchangeSubtrip_ = useExchangeSubtrip_;
2938  result.useCross_ = useCross_;
2939  result.useCrossExchange_ = useCrossExchange_;
2940  result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
2941  result.useTwoOpt_ = useTwoOpt_;
2942  result.useOrOpt_ = useOrOpt_;
2943  result.useLinKernighan_ = useLinKernighan_;
2944  result.useTspOpt_ = useTspOpt_;
2945  result.useMakeActive_ = useMakeActive_;
2946  result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
2947  result.useMakeInactive_ = useMakeInactive_;
2948  result.useMakeChainInactive_ = useMakeChainInactive_;
2949  result.useSwapActive_ = useSwapActive_;
2950  result.useExtendedSwapActive_ = useExtendedSwapActive_;
2951  result.useNodePairSwapActive_ = useNodePairSwapActive_;
2952  result.usePathLns_ = usePathLns_;
2953  result.useFullPathLns_ = useFullPathLns_;
2954  result.useTspLns_ = useTspLns_;
2955  result.useInactiveLns_ = useInactiveLns_;
2956  onBuilt();
2957  return result;
2958  }
2959 
2960  @java.lang.Override
2961  public Builder clone() {
2962  return super.clone();
2963  }
2964  @java.lang.Override
2966  com.google.protobuf.Descriptors.FieldDescriptor field,
2967  java.lang.Object value) {
2968  return super.setField(field, value);
2969  }
2970  @java.lang.Override
2972  com.google.protobuf.Descriptors.FieldDescriptor field) {
2973  return super.clearField(field);
2974  }
2975  @java.lang.Override
2977  com.google.protobuf.Descriptors.OneofDescriptor oneof) {
2978  return super.clearOneof(oneof);
2979  }
2980  @java.lang.Override
2982  com.google.protobuf.Descriptors.FieldDescriptor field,
2983  int index, java.lang.Object value) {
2984  return super.setRepeatedField(field, index, value);
2985  }
2986  @java.lang.Override
2988  com.google.protobuf.Descriptors.FieldDescriptor field,
2989  java.lang.Object value) {
2990  return super.addRepeatedField(field, value);
2991  }
2992  @java.lang.Override
2993  public Builder mergeFrom(com.google.protobuf.Message other) {
2996  } else {
2997  super.mergeFrom(other);
2998  return this;
2999  }
3000  }
3001 
3004  if (other.useRelocate_ != 0) {
3005  setUseRelocateValue(other.getUseRelocateValue());
3006  }
3007  if (other.useRelocatePair_ != 0) {
3008  setUseRelocatePairValue(other.getUseRelocatePairValue());
3009  }
3010  if (other.useLightRelocatePair_ != 0) {
3011  setUseLightRelocatePairValue(other.getUseLightRelocatePairValue());
3012  }
3013  if (other.useRelocateNeighbors_ != 0) {
3014  setUseRelocateNeighborsValue(other.getUseRelocateNeighborsValue());
3015  }
3016  if (other.useRelocateSubtrip_ != 0) {
3017  setUseRelocateSubtripValue(other.getUseRelocateSubtripValue());
3018  }
3019  if (other.useExchange_ != 0) {
3020  setUseExchangeValue(other.getUseExchangeValue());
3021  }
3022  if (other.useExchangePair_ != 0) {
3023  setUseExchangePairValue(other.getUseExchangePairValue());
3024  }
3025  if (other.useExchangeSubtrip_ != 0) {
3026  setUseExchangeSubtripValue(other.getUseExchangeSubtripValue());
3027  }
3028  if (other.useCross_ != 0) {
3029  setUseCrossValue(other.getUseCrossValue());
3030  }
3031  if (other.useCrossExchange_ != 0) {
3032  setUseCrossExchangeValue(other.getUseCrossExchangeValue());
3033  }
3034  if (other.useRelocateExpensiveChain_ != 0) {
3035  setUseRelocateExpensiveChainValue(other.getUseRelocateExpensiveChainValue());
3036  }
3037  if (other.useTwoOpt_ != 0) {
3038  setUseTwoOptValue(other.getUseTwoOptValue());
3039  }
3040  if (other.useOrOpt_ != 0) {
3041  setUseOrOptValue(other.getUseOrOptValue());
3042  }
3043  if (other.useLinKernighan_ != 0) {
3044  setUseLinKernighanValue(other.getUseLinKernighanValue());
3045  }
3046  if (other.useTspOpt_ != 0) {
3047  setUseTspOptValue(other.getUseTspOptValue());
3048  }
3049  if (other.useMakeActive_ != 0) {
3050  setUseMakeActiveValue(other.getUseMakeActiveValue());
3051  }
3052  if (other.useRelocateAndMakeActive_ != 0) {
3053  setUseRelocateAndMakeActiveValue(other.getUseRelocateAndMakeActiveValue());
3054  }
3055  if (other.useMakeInactive_ != 0) {
3056  setUseMakeInactiveValue(other.getUseMakeInactiveValue());
3057  }
3058  if (other.useMakeChainInactive_ != 0) {
3059  setUseMakeChainInactiveValue(other.getUseMakeChainInactiveValue());
3060  }
3061  if (other.useSwapActive_ != 0) {
3062  setUseSwapActiveValue(other.getUseSwapActiveValue());
3063  }
3064  if (other.useExtendedSwapActive_ != 0) {
3065  setUseExtendedSwapActiveValue(other.getUseExtendedSwapActiveValue());
3066  }
3067  if (other.useNodePairSwapActive_ != 0) {
3068  setUseNodePairSwapActiveValue(other.getUseNodePairSwapActiveValue());
3069  }
3070  if (other.usePathLns_ != 0) {
3071  setUsePathLnsValue(other.getUsePathLnsValue());
3072  }
3073  if (other.useFullPathLns_ != 0) {
3074  setUseFullPathLnsValue(other.getUseFullPathLnsValue());
3075  }
3076  if (other.useTspLns_ != 0) {
3077  setUseTspLnsValue(other.getUseTspLnsValue());
3078  }
3079  if (other.useInactiveLns_ != 0) {
3080  setUseInactiveLnsValue(other.getUseInactiveLnsValue());
3081  }
3082  this.mergeUnknownFields(other.unknownFields);
3083  onChanged();
3084  return this;
3085  }
3086 
3087  @java.lang.Override
3088  public final boolean isInitialized() {
3089  return true;
3090  }
3091 
3092  @java.lang.Override
3094  com.google.protobuf.CodedInputStream input,
3095  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3096  throws java.io.IOException {
3098  try {
3099  parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
3100  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3102  throw e.unwrapIOException();
3103  } finally {
3104  if (parsedMessage != null) {
3105  mergeFrom(parsedMessage);
3106  }
3107  }
3108  return this;
3109  }
3110 
3111  private int useRelocate_ = 0;
3128  public int getUseRelocateValue() {
3129  return useRelocate_;
3130  }
3148  public Builder setUseRelocateValue(int value) {
3149  useRelocate_ = value;
3150  onChanged();
3151  return this;
3152  }
3170  @SuppressWarnings("deprecation")
3172  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3173  }
3192  if (value == null) {
3193  throw new NullPointerException();
3194  }
3195 
3196  useRelocate_ = value.getNumber();
3197  onChanged();
3198  return this;
3199  }
3217 
3218  useRelocate_ = 0;
3219  onChanged();
3220  return this;
3221  }
3222 
3223  private int useRelocatePair_ = 0;
3241  return useRelocatePair_;
3242  }
3260  public Builder setUseRelocatePairValue(int value) {
3261  useRelocatePair_ = value;
3262  onChanged();
3263  return this;
3264  }
3282  @SuppressWarnings("deprecation")
3284  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3285  }
3304  if (value == null) {
3305  throw new NullPointerException();
3306  }
3307 
3308  useRelocatePair_ = value.getNumber();
3309  onChanged();
3310  return this;
3311  }
3329 
3330  useRelocatePair_ = 0;
3331  onChanged();
3332  return this;
3333  }
3334 
3335  private int useLightRelocatePair_ = 0;
3351  return useLightRelocatePair_;
3352  }
3369  useLightRelocatePair_ = value;
3370  onChanged();
3371  return this;
3372  }
3388  @SuppressWarnings("deprecation")
3390  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3391  }
3408  if (value == null) {
3409  throw new NullPointerException();
3410  }
3411 
3412  useLightRelocatePair_ = value.getNumber();
3413  onChanged();
3414  return this;
3415  }
3431 
3432  useLightRelocatePair_ = 0;
3433  onChanged();
3434  return this;
3435  }
3436 
3437  private int useRelocateNeighbors_ = 0;
3468  return useRelocateNeighbors_;
3469  }
3501  useRelocateNeighbors_ = value;
3502  onChanged();
3503  return this;
3504  }
3535  @SuppressWarnings("deprecation")
3537  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3538  }
3570  if (value == null) {
3571  throw new NullPointerException();
3572  }
3573 
3574  useRelocateNeighbors_ = value.getNumber();
3575  onChanged();
3576  return this;
3577  }
3608 
3609  useRelocateNeighbors_ = 0;
3610  onChanged();
3611  return this;
3612  }
3613 
3614  private int useRelocateSubtrip_ = 0;
3635  return useRelocateSubtrip_;
3636  }
3658  useRelocateSubtrip_ = value;
3659  onChanged();
3660  return this;
3661  }
3682  @SuppressWarnings("deprecation")
3684  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3685  }
3707  if (value == null) {
3708  throw new NullPointerException();
3709  }
3710 
3711  useRelocateSubtrip_ = value.getNumber();
3712  onChanged();
3713  return this;
3714  }
3735 
3736  useRelocateSubtrip_ = 0;
3737  onChanged();
3738  return this;
3739  }
3740 
3741  private int useExchange_ = 0;
3756  public int getUseExchangeValue() {
3757  return useExchange_;
3758  }
3774  public Builder setUseExchangeValue(int value) {
3775  useExchange_ = value;
3776  onChanged();
3777  return this;
3778  }
3794  @SuppressWarnings("deprecation")
3796  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3797  }
3814  if (value == null) {
3815  throw new NullPointerException();
3816  }
3817 
3818  useExchange_ = value.getNumber();
3819  onChanged();
3820  return this;
3821  }
3837 
3838  useExchange_ = 0;
3839  onChanged();
3840  return this;
3841  }
3842 
3843  private int useExchangePair_ = 0;
3859  return useExchangePair_;
3860  }
3876  public Builder setUseExchangePairValue(int value) {
3877  useExchangePair_ = value;
3878  onChanged();
3879  return this;
3880  }
3896  @SuppressWarnings("deprecation")
3898  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3899  }
3916  if (value == null) {
3917  throw new NullPointerException();
3918  }
3919 
3920  useExchangePair_ = value.getNumber();
3921  onChanged();
3922  return this;
3923  }
3939 
3940  useExchangePair_ = 0;
3941  onChanged();
3942  return this;
3943  }
3944 
3945  private int useExchangeSubtrip_ = 0;
3956  return useExchangeSubtrip_;
3957  }
3969  useExchangeSubtrip_ = value;
3970  onChanged();
3971  return this;
3972  }
3983  @SuppressWarnings("deprecation")
3985  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3986  }
3998  if (value == null) {
3999  throw new NullPointerException();
4000  }
4001 
4002  useExchangeSubtrip_ = value.getNumber();
4003  onChanged();
4004  return this;
4005  }
4016 
4017  useExchangeSubtrip_ = 0;
4018  onChanged();
4019  return this;
4020  }
4021 
4022  private int useCross_ = 0;
4039  public int getUseCrossValue() {
4040  return useCross_;
4041  }
4059  public Builder setUseCrossValue(int value) {
4060  useCross_ = value;
4061  onChanged();
4062  return this;
4063  }
4081  @SuppressWarnings("deprecation")
4083  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4084  }
4103  if (value == null) {
4104  throw new NullPointerException();
4105  }
4106 
4107  useCross_ = value.getNumber();
4108  onChanged();
4109  return this;
4110  }
4128 
4129  useCross_ = 0;
4130  onChanged();
4131  return this;
4132  }
4133 
4134  private int useCrossExchange_ = 0;
4144  return useCrossExchange_;
4145  }
4155  public Builder setUseCrossExchangeValue(int value) {
4156  useCrossExchange_ = value;
4157  onChanged();
4158  return this;
4159  }
4169  @SuppressWarnings("deprecation")
4171  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4172  }
4183  if (value == null) {
4184  throw new NullPointerException();
4185  }
4186 
4187  useCrossExchange_ = value.getNumber();
4188  onChanged();
4189  return this;
4190  }
4200 
4201  useCrossExchange_ = 0;
4202  onChanged();
4203  return this;
4204  }
4205 
4206  private int useRelocateExpensiveChain_ = 0;
4225  return useRelocateExpensiveChain_;
4226  }
4246  useRelocateExpensiveChain_ = value;
4247  onChanged();
4248  return this;
4249  }
4268  @SuppressWarnings("deprecation")
4269  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateExpensiveChain_);
4270  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4271  }
4291  if (value == null) {
4292  throw new NullPointerException();
4293  }
4294 
4295  useRelocateExpensiveChain_ = value.getNumber();
4296  onChanged();
4297  return this;
4298  }
4317 
4318  useRelocateExpensiveChain_ = 0;
4319  onChanged();
4320  return this;
4321  }
4322 
4323  private int useTwoOpt_ = 0;
4341  public int getUseTwoOptValue() {
4342  return useTwoOpt_;
4343  }
4362  public Builder setUseTwoOptValue(int value) {
4363  useTwoOpt_ = value;
4364  onChanged();
4365  return this;
4366  }
4385  @SuppressWarnings("deprecation")
4387  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4388  }
4408  if (value == null) {
4409  throw new NullPointerException();
4410  }
4411 
4412  useTwoOpt_ = value.getNumber();
4413  onChanged();
4414  return this;
4415  }
4434 
4435  useTwoOpt_ = 0;
4436  onChanged();
4437  return this;
4438  }
4439 
4440  private int useOrOpt_ = 0;
4459  public int getUseOrOptValue() {
4460  return useOrOpt_;
4461  }
4481  public Builder setUseOrOptValue(int value) {
4482  useOrOpt_ = value;
4483  onChanged();
4484  return this;
4485  }
4505  @SuppressWarnings("deprecation")
4507  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4508  }
4529  if (value == null) {
4530  throw new NullPointerException();
4531  }
4532 
4533  useOrOpt_ = value.getNumber();
4534  onChanged();
4535  return this;
4536  }
4556 
4557  useOrOpt_ = 0;
4558  onChanged();
4559  return this;
4560  }
4561 
4562  private int useLinKernighan_ = 0;
4575  return useLinKernighan_;
4576  }
4589  public Builder setUseLinKernighanValue(int value) {
4590  useLinKernighan_ = value;
4591  onChanged();
4592  return this;
4593  }
4606  @SuppressWarnings("deprecation")
4608  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4609  }
4623  if (value == null) {
4624  throw new NullPointerException();
4625  }
4626 
4627  useLinKernighan_ = value.getNumber();
4628  onChanged();
4629  return this;
4630  }
4643 
4644  useLinKernighan_ = 0;
4645  onChanged();
4646  return this;
4647  }
4648 
4649  private int useTspOpt_ = 0;
4663  public int getUseTspOptValue() {
4664  return useTspOpt_;
4665  }
4680  public Builder setUseTspOptValue(int value) {
4681  useTspOpt_ = value;
4682  onChanged();
4683  return this;
4684  }
4699  @SuppressWarnings("deprecation")
4701  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4702  }
4718  if (value == null) {
4719  throw new NullPointerException();
4720  }
4721 
4722  useTspOpt_ = value.getNumber();
4723  onChanged();
4724  return this;
4725  }
4740 
4741  useTspOpt_ = 0;
4742  onChanged();
4743  return this;
4744  }
4745 
4746  private int useMakeActive_ = 0;
4761  public int getUseMakeActiveValue() {
4762  return useMakeActive_;
4763  }
4779  public Builder setUseMakeActiveValue(int value) {
4780  useMakeActive_ = value;
4781  onChanged();
4782  return this;
4783  }
4799  @SuppressWarnings("deprecation")
4801  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4802  }
4819  if (value == null) {
4820  throw new NullPointerException();
4821  }
4822 
4823  useMakeActive_ = value.getNumber();
4824  onChanged();
4825  return this;
4826  }
4842 
4843  useMakeActive_ = 0;
4844  onChanged();
4845  return this;
4846  }
4847 
4848  private int useRelocateAndMakeActive_ = 0;
4867  return useRelocateAndMakeActive_;
4868  }
4888  useRelocateAndMakeActive_ = value;
4889  onChanged();
4890  return this;
4891  }
4910  @SuppressWarnings("deprecation")
4911  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateAndMakeActive_);
4912  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4913  }
4933  if (value == null) {
4934  throw new NullPointerException();
4935  }
4936 
4937  useRelocateAndMakeActive_ = value.getNumber();
4938  onChanged();
4939  return this;
4940  }
4959 
4960  useRelocateAndMakeActive_ = 0;
4961  onChanged();
4962  return this;
4963  }
4964 
4965  private int useMakeInactive_ = 0;
4979  return useMakeInactive_;
4980  }
4994  public Builder setUseMakeInactiveValue(int value) {
4995  useMakeInactive_ = value;
4996  onChanged();
4997  return this;
4998  }
5012  @SuppressWarnings("deprecation")
5014  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5015  }
5030  if (value == null) {
5031  throw new NullPointerException();
5032  }
5033 
5034  useMakeInactive_ = value.getNumber();
5035  onChanged();
5036  return this;
5037  }
5051 
5052  useMakeInactive_ = 0;
5053  onChanged();
5054  return this;
5055  }
5056 
5057  private int useMakeChainInactive_ = 0;
5072  return useMakeChainInactive_;
5073  }
5089  useMakeChainInactive_ = value;
5090  onChanged();
5091  return this;
5092  }
5107  @SuppressWarnings("deprecation")
5109  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5110  }
5126  if (value == null) {
5127  throw new NullPointerException();
5128  }
5129 
5130  useMakeChainInactive_ = value.getNumber();
5131  onChanged();
5132  return this;
5133  }
5148 
5149  useMakeChainInactive_ = 0;
5150  onChanged();
5151  return this;
5152  }
5153 
5154  private int useSwapActive_ = 0;
5167  public int getUseSwapActiveValue() {
5168  return useSwapActive_;
5169  }
5183  public Builder setUseSwapActiveValue(int value) {
5184  useSwapActive_ = value;
5185  onChanged();
5186  return this;
5187  }
5201  @SuppressWarnings("deprecation")
5203  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5204  }
5219  if (value == null) {
5220  throw new NullPointerException();
5221  }
5222 
5223  useSwapActive_ = value.getNumber();
5224  onChanged();
5225  return this;
5226  }
5240 
5241  useSwapActive_ = 0;
5242  onChanged();
5243  return this;
5244  }
5245 
5246  private int useExtendedSwapActive_ = 0;
5265  return useExtendedSwapActive_;
5266  }
5286  useExtendedSwapActive_ = value;
5287  onChanged();
5288  return this;
5289  }
5308  @SuppressWarnings("deprecation")
5309  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useExtendedSwapActive_);
5310  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5311  }
5331  if (value == null) {
5332  throw new NullPointerException();
5333  }
5334 
5335  useExtendedSwapActive_ = value.getNumber();
5336  onChanged();
5337  return this;
5338  }
5357 
5358  useExtendedSwapActive_ = 0;
5359  onChanged();
5360  return this;
5361  }
5362 
5363  private int useNodePairSwapActive_ = 0;
5383  return useNodePairSwapActive_;
5384  }
5405  useNodePairSwapActive_ = value;
5406  onChanged();
5407  return this;
5408  }
5428  @SuppressWarnings("deprecation")
5429  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useNodePairSwapActive_);
5430  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5431  }
5452  if (value == null) {
5453  throw new NullPointerException();
5454  }
5455 
5456  useNodePairSwapActive_ = value.getNumber();
5457  onChanged();
5458  return this;
5459  }
5479 
5480  useNodePairSwapActive_ = 0;
5481  onChanged();
5482  return this;
5483  }
5484 
5485  private int usePathLns_ = 0;
5501  public int getUsePathLnsValue() {
5502  return usePathLns_;
5503  }
5520  public Builder setUsePathLnsValue(int value) {
5521  usePathLns_ = value;
5522  onChanged();
5523  return this;
5524  }
5541  @SuppressWarnings("deprecation")
5543  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5544  }
5562  if (value == null) {
5563  throw new NullPointerException();
5564  }
5565 
5566  usePathLns_ = value.getNumber();
5567  onChanged();
5568  return this;
5569  }
5586 
5587  usePathLns_ = 0;
5588  onChanged();
5589  return this;
5590  }
5591 
5592  private int useFullPathLns_ = 0;
5601  public int getUseFullPathLnsValue() {
5602  return useFullPathLns_;
5603  }
5613  public Builder setUseFullPathLnsValue(int value) {
5614  useFullPathLns_ = value;
5615  onChanged();
5616  return this;
5617  }
5627  @SuppressWarnings("deprecation")
5629  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5630  }
5641  if (value == null) {
5642  throw new NullPointerException();
5643  }
5644 
5645  useFullPathLns_ = value.getNumber();
5646  onChanged();
5647  return this;
5648  }
5658 
5659  useFullPathLns_ = 0;
5660  onChanged();
5661  return this;
5662  }
5663 
5664  private int useTspLns_ = 0;
5678  public int getUseTspLnsValue() {
5679  return useTspLns_;
5680  }
5695  public Builder setUseTspLnsValue(int value) {
5696  useTspLns_ = value;
5697  onChanged();
5698  return this;
5699  }
5714  @SuppressWarnings("deprecation")
5716  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5717  }
5733  if (value == null) {
5734  throw new NullPointerException();
5735  }
5736 
5737  useTspLns_ = value.getNumber();
5738  onChanged();
5739  return this;
5740  }
5755 
5756  useTspLns_ = 0;
5757  onChanged();
5758  return this;
5759  }
5760 
5761  private int useInactiveLns_ = 0;
5772  public int getUseInactiveLnsValue() {
5773  return useInactiveLns_;
5774  }
5786  public Builder setUseInactiveLnsValue(int value) {
5787  useInactiveLns_ = value;
5788  onChanged();
5789  return this;
5790  }
5802  @SuppressWarnings("deprecation")
5804  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5805  }
5818  if (value == null) {
5819  throw new NullPointerException();
5820  }
5821 
5822  useInactiveLns_ = value.getNumber();
5823  onChanged();
5824  return this;
5825  }
5837 
5838  useInactiveLns_ = 0;
5839  onChanged();
5840  return this;
5841  }
5842  @java.lang.Override
5844  final com.google.protobuf.UnknownFieldSet unknownFields) {
5845  return super.setUnknownFields(unknownFields);
5846  }
5847 
5848  @java.lang.Override
5850  final com.google.protobuf.UnknownFieldSet unknownFields) {
5851  return super.mergeUnknownFields(unknownFields);
5852  }
5853 
5854 
5855  // @@protoc_insertion_point(builder_scope:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
5856  }
5857 
5858  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
5860  static {
5862  }
5863 
5865  return DEFAULT_INSTANCE;
5866  }
5867 
5868  private static final com.google.protobuf.Parser<LocalSearchNeighborhoodOperators>
5869  PARSER = new com.google.protobuf.AbstractParser<LocalSearchNeighborhoodOperators>() {
5870  @java.lang.Override
5871  public LocalSearchNeighborhoodOperators parsePartialFrom(
5872  com.google.protobuf.CodedInputStream input,
5873  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5874  throws com.google.protobuf.InvalidProtocolBufferException {
5875  return new LocalSearchNeighborhoodOperators(input, extensionRegistry);
5876  }
5877  };
5878 
5879  public static com.google.protobuf.Parser<LocalSearchNeighborhoodOperators> parser() {
5880  return PARSER;
5881  }
5882 
5883  @java.lang.Override
5885  return PARSER;
5886  }
5887 
5888  @java.lang.Override
5890  return DEFAULT_INSTANCE;
5891  }
5892 
5893  }
5894 
5895  public static final int FIRST_SOLUTION_STRATEGY_FIELD_NUMBER = 1;
5896  private int firstSolutionStrategy_;
5906  return firstSolutionStrategy_;
5907  }
5917  @SuppressWarnings("deprecation")
5919  return result == null ? com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNRECOGNIZED : result;
5920  }
5921 
5923  private boolean useUnfilteredFirstSolutionStrategy_;
5935  return useUnfilteredFirstSolutionStrategy_;
5936  }
5937 
5938  public static final int SAVINGS_NEIGHBORS_RATIO_FIELD_NUMBER = 14;
5939  private double savingsNeighborsRatio_;
5950  public double getSavingsNeighborsRatio() {
5951  return savingsNeighborsRatio_;
5952  }
5953 
5954  public static final int SAVINGS_MAX_MEMORY_USAGE_BYTES_FIELD_NUMBER = 23;
5955  private double savingsMaxMemoryUsageBytes_;
5970  return savingsMaxMemoryUsageBytes_;
5971  }
5972 
5973  public static final int SAVINGS_ADD_REVERSE_ARCS_FIELD_NUMBER = 15;
5974  private boolean savingsAddReverseArcs_;
5984  public boolean getSavingsAddReverseArcs() {
5985  return savingsAddReverseArcs_;
5986  }
5987 
5988  public static final int SAVINGS_ARC_COEFFICIENT_FIELD_NUMBER = 18;
5989  private double savingsArcCoefficient_;
6002  public double getSavingsArcCoefficient() {
6003  return savingsArcCoefficient_;
6004  }
6005 
6006  public static final int SAVINGS_PARALLEL_ROUTES_FIELD_NUMBER = 19;
6007  private boolean savingsParallelRoutes_;
6016  public boolean getSavingsParallelRoutes() {
6017  return savingsParallelRoutes_;
6018  }
6019 
6021  private double cheapestInsertionFarthestSeedsRatio_;
6033  return cheapestInsertionFarthestSeedsRatio_;
6034  }
6035 
6037  private double cheapestInsertionNeighborsRatio_;
6050  return cheapestInsertionNeighborsRatio_;
6051  }
6052 
6054  private boolean christofidesUseMinimumMatching_;
6065  return christofidesUseMinimumMatching_;
6066  }
6067 
6068  public static final int LOCAL_SEARCH_OPERATORS_FIELD_NUMBER = 3;
6074  public boolean hasLocalSearchOperators() {
6075  return localSearchOperators_ != null;
6076  }
6082  return localSearchOperators_ == null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
6083  }
6088  return getLocalSearchOperators();
6089  }
6090 
6092  private int relocateExpensiveChainNumArcsToConsider_;
6108  return relocateExpensiveChainNumArcsToConsider_;
6109  }
6110 
6111  public static final int LOCAL_SEARCH_METAHEURISTIC_FIELD_NUMBER = 4;
6112  private int localSearchMetaheuristic_;
6122  return localSearchMetaheuristic_;
6123  }
6133  @SuppressWarnings("deprecation")
6136  }
6137 
6139  private double guidedLocalSearchLambdaCoefficient_;
6152  return guidedLocalSearchLambdaCoefficient_;
6153  }
6154 
6155  public static final int USE_DEPTH_FIRST_SEARCH_FIELD_NUMBER = 6;
6156  private boolean useDepthFirstSearch_;
6167  public boolean getUseDepthFirstSearch() {
6168  return useDepthFirstSearch_;
6169  }
6170 
6171  public static final int USE_CP_FIELD_NUMBER = 28;
6172  private int useCp_;
6183  public int getUseCpValue() {
6184  return useCp_;
6185  }
6197  @SuppressWarnings("deprecation")
6199  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
6200  }
6201 
6202  public static final int USE_CP_SAT_FIELD_NUMBER = 27;
6203  private int useCpSat_;
6215  public int getUseCpSatValue() {
6216  return useCpSat_;
6217  }
6230  @SuppressWarnings("deprecation")
6232  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
6233  }
6234 
6235  public static final int OPTIMIZATION_STEP_FIELD_NUMBER = 7;
6236  private double optimizationStep_;
6247  public double getOptimizationStep() {
6248  return optimizationStep_;
6249  }
6250 
6251  public static final int NUMBER_OF_SOLUTIONS_TO_COLLECT_FIELD_NUMBER = 17;
6252  private int numberOfSolutionsToCollect_;
6263  return numberOfSolutionsToCollect_;
6264  }
6265 
6266  public static final int SOLUTION_LIMIT_FIELD_NUMBER = 8;
6267  private long solutionLimit_;
6278  public long getSolutionLimit() {
6279  return solutionLimit_;
6280  }
6281 
6282  public static final int TIME_LIMIT_FIELD_NUMBER = 9;
6283  private com.google.protobuf.Duration timeLimit_;
6292  public boolean hasTimeLimit() {
6293  return timeLimit_ != null;
6294  }
6303  public com.google.protobuf.Duration getTimeLimit() {
6304  return timeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
6305  }
6313  public com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder() {
6314  return getTimeLimit();
6315  }
6316 
6317  public static final int LNS_TIME_LIMIT_FIELD_NUMBER = 10;
6318  private com.google.protobuf.Duration lnsTimeLimit_;
6328  public boolean hasLnsTimeLimit() {
6329  return lnsTimeLimit_ != null;
6330  }
6340  public com.google.protobuf.Duration getLnsTimeLimit() {
6341  return lnsTimeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
6342  }
6351  public com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder() {
6352  return getLnsTimeLimit();
6353  }
6354 
6355  public static final int USE_FULL_PROPAGATION_FIELD_NUMBER = 11;
6356  private boolean useFullPropagation_;
6373  public boolean getUseFullPropagation() {
6374  return useFullPropagation_;
6375  }
6376 
6377  public static final int LOG_SEARCH_FIELD_NUMBER = 13;
6378  private boolean logSearch_;
6398  public boolean getLogSearch() {
6399  return logSearch_;
6400  }
6401 
6402  public static final int LOG_COST_SCALING_FACTOR_FIELD_NUMBER = 22;
6403  private double logCostScalingFactor_;
6413  public double getLogCostScalingFactor() {
6414  return logCostScalingFactor_;
6415  }
6416 
6417  public static final int LOG_COST_OFFSET_FIELD_NUMBER = 29;
6418  private double logCostOffset_;
6423  public double getLogCostOffset() {
6424  return logCostOffset_;
6425  }
6426 
6427  private byte memoizedIsInitialized = -1;
6428  @java.lang.Override
6429  public final boolean isInitialized() {
6430  byte isInitialized = memoizedIsInitialized;
6431  if (isInitialized == 1) return true;
6432  if (isInitialized == 0) return false;
6433 
6434  memoizedIsInitialized = 1;
6435  return true;
6436  }
6437 
6438  @java.lang.Override
6439  public void writeTo(com.google.protobuf.CodedOutputStream output)
6440  throws java.io.IOException {
6441  if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
6442  output.writeEnum(1, firstSolutionStrategy_);
6443  }
6444  if (useUnfilteredFirstSolutionStrategy_ != false) {
6445  output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
6446  }
6447  if (localSearchOperators_ != null) {
6448  output.writeMessage(3, getLocalSearchOperators());
6449  }
6450  if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
6451  output.writeEnum(4, localSearchMetaheuristic_);
6452  }
6453  if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6454  output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
6455  }
6456  if (useDepthFirstSearch_ != false) {
6457  output.writeBool(6, useDepthFirstSearch_);
6458  }
6459  if (optimizationStep_ != 0D) {
6460  output.writeDouble(7, optimizationStep_);
6461  }
6462  if (solutionLimit_ != 0L) {
6463  output.writeInt64(8, solutionLimit_);
6464  }
6465  if (timeLimit_ != null) {
6466  output.writeMessage(9, getTimeLimit());
6467  }
6468  if (lnsTimeLimit_ != null) {
6469  output.writeMessage(10, getLnsTimeLimit());
6470  }
6471  if (useFullPropagation_ != false) {
6472  output.writeBool(11, useFullPropagation_);
6473  }
6474  if (logSearch_ != false) {
6475  output.writeBool(13, logSearch_);
6476  }
6477  if (savingsNeighborsRatio_ != 0D) {
6478  output.writeDouble(14, savingsNeighborsRatio_);
6479  }
6480  if (savingsAddReverseArcs_ != false) {
6481  output.writeBool(15, savingsAddReverseArcs_);
6482  }
6483  if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6484  output.writeDouble(16, cheapestInsertionFarthestSeedsRatio_);
6485  }
6486  if (numberOfSolutionsToCollect_ != 0) {
6487  output.writeInt32(17, numberOfSolutionsToCollect_);
6488  }
6489  if (savingsArcCoefficient_ != 0D) {
6490  output.writeDouble(18, savingsArcCoefficient_);
6491  }
6492  if (savingsParallelRoutes_ != false) {
6493  output.writeBool(19, savingsParallelRoutes_);
6494  }
6495  if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6496  output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
6497  }
6498  if (cheapestInsertionNeighborsRatio_ != 0D) {
6499  output.writeDouble(21, cheapestInsertionNeighborsRatio_);
6500  }
6501  if (logCostScalingFactor_ != 0D) {
6502  output.writeDouble(22, logCostScalingFactor_);
6503  }
6504  if (savingsMaxMemoryUsageBytes_ != 0D) {
6505  output.writeDouble(23, savingsMaxMemoryUsageBytes_);
6506  }
6507  if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6508  output.writeEnum(27, useCpSat_);
6509  }
6510  if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6511  output.writeEnum(28, useCp_);
6512  }
6513  if (logCostOffset_ != 0D) {
6514  output.writeDouble(29, logCostOffset_);
6515  }
6516  if (christofidesUseMinimumMatching_ != false) {
6517  output.writeBool(30, christofidesUseMinimumMatching_);
6518  }
6519  unknownFields.writeTo(output);
6520  }
6521 
6522  @java.lang.Override
6523  public int getSerializedSize() {
6524  int size = memoizedSize;
6525  if (size != -1) return size;
6526 
6527  size = 0;
6528  if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
6529  size += com.google.protobuf.CodedOutputStream
6530  .computeEnumSize(1, firstSolutionStrategy_);
6531  }
6532  if (useUnfilteredFirstSolutionStrategy_ != false) {
6533  size += com.google.protobuf.CodedOutputStream
6534  .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
6535  }
6536  if (localSearchOperators_ != null) {
6537  size += com.google.protobuf.CodedOutputStream
6538  .computeMessageSize(3, getLocalSearchOperators());
6539  }
6540  if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
6541  size += com.google.protobuf.CodedOutputStream
6542  .computeEnumSize(4, localSearchMetaheuristic_);
6543  }
6544  if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6545  size += com.google.protobuf.CodedOutputStream
6546  .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
6547  }
6548  if (useDepthFirstSearch_ != false) {
6549  size += com.google.protobuf.CodedOutputStream
6550  .computeBoolSize(6, useDepthFirstSearch_);
6551  }
6552  if (optimizationStep_ != 0D) {
6553  size += com.google.protobuf.CodedOutputStream
6554  .computeDoubleSize(7, optimizationStep_);
6555  }
6556  if (solutionLimit_ != 0L) {
6557  size += com.google.protobuf.CodedOutputStream
6558  .computeInt64Size(8, solutionLimit_);
6559  }
6560  if (timeLimit_ != null) {
6561  size += com.google.protobuf.CodedOutputStream
6562  .computeMessageSize(9, getTimeLimit());
6563  }
6564  if (lnsTimeLimit_ != null) {
6565  size += com.google.protobuf.CodedOutputStream
6566  .computeMessageSize(10, getLnsTimeLimit());
6567  }
6568  if (useFullPropagation_ != false) {
6569  size += com.google.protobuf.CodedOutputStream
6570  .computeBoolSize(11, useFullPropagation_);
6571  }
6572  if (logSearch_ != false) {
6573  size += com.google.protobuf.CodedOutputStream
6574  .computeBoolSize(13, logSearch_);
6575  }
6576  if (savingsNeighborsRatio_ != 0D) {
6577  size += com.google.protobuf.CodedOutputStream
6578  .computeDoubleSize(14, savingsNeighborsRatio_);
6579  }
6580  if (savingsAddReverseArcs_ != false) {
6581  size += com.google.protobuf.CodedOutputStream
6582  .computeBoolSize(15, savingsAddReverseArcs_);
6583  }
6584  if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6585  size += com.google.protobuf.CodedOutputStream
6586  .computeDoubleSize(16, cheapestInsertionFarthestSeedsRatio_);
6587  }
6588  if (numberOfSolutionsToCollect_ != 0) {
6589  size += com.google.protobuf.CodedOutputStream
6590  .computeInt32Size(17, numberOfSolutionsToCollect_);
6591  }
6592  if (savingsArcCoefficient_ != 0D) {
6593  size += com.google.protobuf.CodedOutputStream
6594  .computeDoubleSize(18, savingsArcCoefficient_);
6595  }
6596  if (savingsParallelRoutes_ != false) {
6597  size += com.google.protobuf.CodedOutputStream
6598  .computeBoolSize(19, savingsParallelRoutes_);
6599  }
6600  if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6601  size += com.google.protobuf.CodedOutputStream
6602  .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
6603  }
6604  if (cheapestInsertionNeighborsRatio_ != 0D) {
6605  size += com.google.protobuf.CodedOutputStream
6606  .computeDoubleSize(21, cheapestInsertionNeighborsRatio_);
6607  }
6608  if (logCostScalingFactor_ != 0D) {
6609  size += com.google.protobuf.CodedOutputStream
6610  .computeDoubleSize(22, logCostScalingFactor_);
6611  }
6612  if (savingsMaxMemoryUsageBytes_ != 0D) {
6613  size += com.google.protobuf.CodedOutputStream
6614  .computeDoubleSize(23, savingsMaxMemoryUsageBytes_);
6615  }
6616  if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6617  size += com.google.protobuf.CodedOutputStream
6618  .computeEnumSize(27, useCpSat_);
6619  }
6620  if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6621  size += com.google.protobuf.CodedOutputStream
6622  .computeEnumSize(28, useCp_);
6623  }
6624  if (logCostOffset_ != 0D) {
6625  size += com.google.protobuf.CodedOutputStream
6626  .computeDoubleSize(29, logCostOffset_);
6627  }
6628  if (christofidesUseMinimumMatching_ != false) {
6629  size += com.google.protobuf.CodedOutputStream
6630  .computeBoolSize(30, christofidesUseMinimumMatching_);
6631  }
6632  size += unknownFields.getSerializedSize();
6633  memoizedSize = size;
6634  return size;
6635  }
6636 
6637  @java.lang.Override
6638  public boolean equals(final java.lang.Object obj) {
6639  if (obj == this) {
6640  return true;
6641  }
6642  if (!(obj instanceof com.google.ortools.constraintsolver.RoutingSearchParameters)) {
6643  return super.equals(obj);
6644  }
6646 
6647  if (firstSolutionStrategy_ != other.firstSolutionStrategy_) return false;
6649  != other.getUseUnfilteredFirstSolutionStrategy()) return false;
6650  if (java.lang.Double.doubleToLongBits(getSavingsNeighborsRatio())
6651  != java.lang.Double.doubleToLongBits(
6652  other.getSavingsNeighborsRatio())) return false;
6653  if (java.lang.Double.doubleToLongBits(getSavingsMaxMemoryUsageBytes())
6654  != java.lang.Double.doubleToLongBits(
6655  other.getSavingsMaxMemoryUsageBytes())) return false;
6657  != other.getSavingsAddReverseArcs()) return false;
6658  if (java.lang.Double.doubleToLongBits(getSavingsArcCoefficient())
6659  != java.lang.Double.doubleToLongBits(
6660  other.getSavingsArcCoefficient())) return false;
6662  != other.getSavingsParallelRoutes()) return false;
6663  if (java.lang.Double.doubleToLongBits(getCheapestInsertionFarthestSeedsRatio())
6664  != java.lang.Double.doubleToLongBits(
6665  other.getCheapestInsertionFarthestSeedsRatio())) return false;
6666  if (java.lang.Double.doubleToLongBits(getCheapestInsertionNeighborsRatio())
6667  != java.lang.Double.doubleToLongBits(
6668  other.getCheapestInsertionNeighborsRatio())) return false;
6670  != other.getChristofidesUseMinimumMatching()) return false;
6671  if (hasLocalSearchOperators() != other.hasLocalSearchOperators()) return false;
6672  if (hasLocalSearchOperators()) {
6674  .equals(other.getLocalSearchOperators())) return false;
6675  }
6677  != other.getRelocateExpensiveChainNumArcsToConsider()) return false;
6678  if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_) return false;
6679  if (java.lang.Double.doubleToLongBits(getGuidedLocalSearchLambdaCoefficient())
6680  != java.lang.Double.doubleToLongBits(
6681  other.getGuidedLocalSearchLambdaCoefficient())) return false;
6683  != other.getUseDepthFirstSearch()) return false;
6684  if (useCp_ != other.useCp_) return false;
6685  if (useCpSat_ != other.useCpSat_) return false;
6686  if (java.lang.Double.doubleToLongBits(getOptimizationStep())
6687  != java.lang.Double.doubleToLongBits(
6688  other.getOptimizationStep())) return false;
6690  != other.getNumberOfSolutionsToCollect()) return false;
6691  if (getSolutionLimit()
6692  != other.getSolutionLimit()) return false;
6693  if (hasTimeLimit() != other.hasTimeLimit()) return false;
6694  if (hasTimeLimit()) {
6695  if (!getTimeLimit()
6696  .equals(other.getTimeLimit())) return false;
6697  }
6698  if (hasLnsTimeLimit() != other.hasLnsTimeLimit()) return false;
6699  if (hasLnsTimeLimit()) {
6700  if (!getLnsTimeLimit()
6701  .equals(other.getLnsTimeLimit())) return false;
6702  }
6703  if (getUseFullPropagation()
6704  != other.getUseFullPropagation()) return false;
6705  if (getLogSearch()
6706  != other.getLogSearch()) return false;
6707  if (java.lang.Double.doubleToLongBits(getLogCostScalingFactor())
6708  != java.lang.Double.doubleToLongBits(
6709  other.getLogCostScalingFactor())) return false;
6710  if (java.lang.Double.doubleToLongBits(getLogCostOffset())
6711  != java.lang.Double.doubleToLongBits(
6712  other.getLogCostOffset())) return false;
6713  if (!unknownFields.equals(other.unknownFields)) return false;
6714  return true;
6715  }
6716 
6717  @java.lang.Override
6718  public int hashCode() {
6719  if (memoizedHashCode != 0) {
6720  return memoizedHashCode;
6721  }
6722  int hash = 41;
6723  hash = (19 * hash) + getDescriptor().hashCode();
6724  hash = (37 * hash) + FIRST_SOLUTION_STRATEGY_FIELD_NUMBER;
6725  hash = (53 * hash) + firstSolutionStrategy_;
6727  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6729  hash = (37 * hash) + SAVINGS_NEIGHBORS_RATIO_FIELD_NUMBER;
6730  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6731  java.lang.Double.doubleToLongBits(getSavingsNeighborsRatio()));
6732  hash = (37 * hash) + SAVINGS_MAX_MEMORY_USAGE_BYTES_FIELD_NUMBER;
6733  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6734  java.lang.Double.doubleToLongBits(getSavingsMaxMemoryUsageBytes()));
6735  hash = (37 * hash) + SAVINGS_ADD_REVERSE_ARCS_FIELD_NUMBER;
6736  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6738  hash = (37 * hash) + SAVINGS_ARC_COEFFICIENT_FIELD_NUMBER;
6739  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6740  java.lang.Double.doubleToLongBits(getSavingsArcCoefficient()));
6741  hash = (37 * hash) + SAVINGS_PARALLEL_ROUTES_FIELD_NUMBER;
6742  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6745  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6746  java.lang.Double.doubleToLongBits(getCheapestInsertionFarthestSeedsRatio()));
6748  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6749  java.lang.Double.doubleToLongBits(getCheapestInsertionNeighborsRatio()));
6751  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6753  if (hasLocalSearchOperators()) {
6754  hash = (37 * hash) + LOCAL_SEARCH_OPERATORS_FIELD_NUMBER;
6755  hash = (53 * hash) + getLocalSearchOperators().hashCode();
6756  }
6758  hash = (53 * hash) + getRelocateExpensiveChainNumArcsToConsider();
6759  hash = (37 * hash) + LOCAL_SEARCH_METAHEURISTIC_FIELD_NUMBER;
6760  hash = (53 * hash) + localSearchMetaheuristic_;
6762  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6763  java.lang.Double.doubleToLongBits(getGuidedLocalSearchLambdaCoefficient()));
6764  hash = (37 * hash) + USE_DEPTH_FIRST_SEARCH_FIELD_NUMBER;
6765  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6767  hash = (37 * hash) + USE_CP_FIELD_NUMBER;
6768  hash = (53 * hash) + useCp_;
6769  hash = (37 * hash) + USE_CP_SAT_FIELD_NUMBER;
6770  hash = (53 * hash) + useCpSat_;
6771  hash = (37 * hash) + OPTIMIZATION_STEP_FIELD_NUMBER;
6772  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6773  java.lang.Double.doubleToLongBits(getOptimizationStep()));
6774  hash = (37 * hash) + NUMBER_OF_SOLUTIONS_TO_COLLECT_FIELD_NUMBER;
6775  hash = (53 * hash) + getNumberOfSolutionsToCollect();
6776  hash = (37 * hash) + SOLUTION_LIMIT_FIELD_NUMBER;
6777  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6778  getSolutionLimit());
6779  if (hasTimeLimit()) {
6780  hash = (37 * hash) + TIME_LIMIT_FIELD_NUMBER;
6781  hash = (53 * hash) + getTimeLimit().hashCode();
6782  }
6783  if (hasLnsTimeLimit()) {
6784  hash = (37 * hash) + LNS_TIME_LIMIT_FIELD_NUMBER;
6785  hash = (53 * hash) + getLnsTimeLimit().hashCode();
6786  }
6787  hash = (37 * hash) + USE_FULL_PROPAGATION_FIELD_NUMBER;
6788  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6790  hash = (37 * hash) + LOG_SEARCH_FIELD_NUMBER;
6791  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6792  getLogSearch());
6793  hash = (37 * hash) + LOG_COST_SCALING_FACTOR_FIELD_NUMBER;
6794  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6795  java.lang.Double.doubleToLongBits(getLogCostScalingFactor()));
6796  hash = (37 * hash) + LOG_COST_OFFSET_FIELD_NUMBER;
6797  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6798  java.lang.Double.doubleToLongBits(getLogCostOffset()));
6799  hash = (29 * hash) + unknownFields.hashCode();
6800  memoizedHashCode = hash;
6801  return hash;
6802  }
6803 
6805  java.nio.ByteBuffer data)
6806  throws com.google.protobuf.InvalidProtocolBufferException {
6807  return PARSER.parseFrom(data);
6808  }
6810  java.nio.ByteBuffer data,
6811  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6812  throws com.google.protobuf.InvalidProtocolBufferException {
6813  return PARSER.parseFrom(data, extensionRegistry);
6814  }
6816  com.google.protobuf.ByteString data)
6817  throws com.google.protobuf.InvalidProtocolBufferException {
6818  return PARSER.parseFrom(data);
6819  }
6821  com.google.protobuf.ByteString data,
6822  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6823  throws com.google.protobuf.InvalidProtocolBufferException {
6824  return PARSER.parseFrom(data, extensionRegistry);
6825  }
6827  throws com.google.protobuf.InvalidProtocolBufferException {
6828  return PARSER.parseFrom(data);
6829  }
6831  byte[] data,
6832  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6833  throws com.google.protobuf.InvalidProtocolBufferException {
6834  return PARSER.parseFrom(data, extensionRegistry);
6835  }
6836  public static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input)
6837  throws java.io.IOException {
6838  return com.google.protobuf.GeneratedMessageV3
6839  .parseWithIOException(PARSER, input);
6840  }
6842  java.io.InputStream input,
6843  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6844  throws java.io.IOException {
6845  return com.google.protobuf.GeneratedMessageV3
6846  .parseWithIOException(PARSER, input, extensionRegistry);
6847  }
6849  throws java.io.IOException {
6850  return com.google.protobuf.GeneratedMessageV3
6851  .parseDelimitedWithIOException(PARSER, input);
6852  }
6854  java.io.InputStream input,
6855  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6856  throws java.io.IOException {
6857  return com.google.protobuf.GeneratedMessageV3
6858  .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
6859  }
6861  com.google.protobuf.CodedInputStream input)
6862  throws java.io.IOException {
6863  return com.google.protobuf.GeneratedMessageV3
6864  .parseWithIOException(PARSER, input);
6865  }
6867  com.google.protobuf.CodedInputStream input,
6868  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6869  throws java.io.IOException {
6870  return com.google.protobuf.GeneratedMessageV3
6871  .parseWithIOException(PARSER, input, extensionRegistry);
6872  }
6873 
6874  @java.lang.Override
6875  public Builder newBuilderForType() { return newBuilder(); }
6876  public static Builder newBuilder() {
6877  return DEFAULT_INSTANCE.toBuilder();
6878  }
6880  return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
6881  }
6882  @java.lang.Override
6883  public Builder toBuilder() {
6884  return this == DEFAULT_INSTANCE
6885  ? new Builder() : new Builder().mergeFrom(this);
6886  }
6887 
6888  @java.lang.Override
6890  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6891  Builder builder = new Builder(parent);
6892  return builder;
6893  }
6905  public static final class Builder extends
6906  com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
6907  // @@protoc_insertion_point(builder_implements:operations_research.RoutingSearchParameters)
6908  com.google.ortools.constraintsolver.RoutingSearchParametersOrBuilder {
6909  public static final com.google.protobuf.Descriptors.Descriptor
6911  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
6912  }
6913 
6914  @java.lang.Override
6915  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
6917  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
6918  .ensureFieldAccessorsInitialized(
6920  }
6921 
6922  // Construct using com.google.ortools.constraintsolver.RoutingSearchParameters.newBuilder()
6923  private Builder() {
6924  maybeForceBuilderInitialization();
6925  }
6926 
6927  private Builder(
6928  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6929  super(parent);
6930  maybeForceBuilderInitialization();
6931  }
6932  private void maybeForceBuilderInitialization() {
6933  if (com.google.protobuf.GeneratedMessageV3
6934  .alwaysUseFieldBuilders) {
6935  }
6936  }
6937  @java.lang.Override
6938  public Builder clear() {
6939  super.clear();
6940  firstSolutionStrategy_ = 0;
6941 
6942  useUnfilteredFirstSolutionStrategy_ = false;
6943 
6944  savingsNeighborsRatio_ = 0D;
6945 
6946  savingsMaxMemoryUsageBytes_ = 0D;
6947 
6948  savingsAddReverseArcs_ = false;
6949 
6950  savingsArcCoefficient_ = 0D;
6951 
6952  savingsParallelRoutes_ = false;
6953 
6954  cheapestInsertionFarthestSeedsRatio_ = 0D;
6955 
6956  cheapestInsertionNeighborsRatio_ = 0D;
6957 
6958  christofidesUseMinimumMatching_ = false;
6959 
6960  if (localSearchOperatorsBuilder_ == null) {
6961  localSearchOperators_ = null;
6962  } else {
6963  localSearchOperators_ = null;
6964  localSearchOperatorsBuilder_ = null;
6965  }
6966  relocateExpensiveChainNumArcsToConsider_ = 0;
6967 
6968  localSearchMetaheuristic_ = 0;
6969 
6970  guidedLocalSearchLambdaCoefficient_ = 0D;
6971 
6972  useDepthFirstSearch_ = false;
6973 
6974  useCp_ = 0;
6975 
6976  useCpSat_ = 0;
6977 
6978  optimizationStep_ = 0D;
6979 
6980  numberOfSolutionsToCollect_ = 0;
6981 
6982  solutionLimit_ = 0L;
6983 
6984  if (timeLimitBuilder_ == null) {
6985  timeLimit_ = null;
6986  } else {
6987  timeLimit_ = null;
6988  timeLimitBuilder_ = null;
6989  }
6990  if (lnsTimeLimitBuilder_ == null) {
6991  lnsTimeLimit_ = null;
6992  } else {
6993  lnsTimeLimit_ = null;
6994  lnsTimeLimitBuilder_ = null;
6995  }
6996  useFullPropagation_ = false;
6997 
6998  logSearch_ = false;
6999 
7000  logCostScalingFactor_ = 0D;
7001 
7002  logCostOffset_ = 0D;
7003 
7004  return this;
7005  }
7006 
7007  @java.lang.Override
7008  public com.google.protobuf.Descriptors.Descriptor
7010  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
7011  }
7012 
7013  @java.lang.Override
7016  }
7017 
7018  @java.lang.Override
7021  if (!result.isInitialized()) {
7022  throw newUninitializedMessageException(result);
7023  }
7024  return result;
7025  }
7026 
7027  @java.lang.Override
7030  result.firstSolutionStrategy_ = firstSolutionStrategy_;
7031  result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
7032  result.savingsNeighborsRatio_ = savingsNeighborsRatio_;
7033  result.savingsMaxMemoryUsageBytes_ = savingsMaxMemoryUsageBytes_;
7034  result.savingsAddReverseArcs_ = savingsAddReverseArcs_;
7035  result.savingsArcCoefficient_ = savingsArcCoefficient_;
7036  result.savingsParallelRoutes_ = savingsParallelRoutes_;
7037  result.cheapestInsertionFarthestSeedsRatio_ = cheapestInsertionFarthestSeedsRatio_;
7038  result.cheapestInsertionNeighborsRatio_ = cheapestInsertionNeighborsRatio_;
7039  result.christofidesUseMinimumMatching_ = christofidesUseMinimumMatching_;
7040  if (localSearchOperatorsBuilder_ == null) {
7041  result.localSearchOperators_ = localSearchOperators_;
7042  } else {
7043  result.localSearchOperators_ = localSearchOperatorsBuilder_.build();
7044  }
7045  result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
7046  result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
7047  result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
7048  result.useDepthFirstSearch_ = useDepthFirstSearch_;
7049  result.useCp_ = useCp_;
7050  result.useCpSat_ = useCpSat_;
7051  result.optimizationStep_ = optimizationStep_;
7052  result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
7053  result.solutionLimit_ = solutionLimit_;
7054  if (timeLimitBuilder_ == null) {
7055  result.timeLimit_ = timeLimit_;
7056  } else {
7057  result.timeLimit_ = timeLimitBuilder_.build();
7058  }
7059  if (lnsTimeLimitBuilder_ == null) {
7060  result.lnsTimeLimit_ = lnsTimeLimit_;
7061  } else {
7062  result.lnsTimeLimit_ = lnsTimeLimitBuilder_.build();
7063  }
7064  result.useFullPropagation_ = useFullPropagation_;
7065  result.logSearch_ = logSearch_;
7066  result.logCostScalingFactor_ = logCostScalingFactor_;
7067  result.logCostOffset_ = logCostOffset_;
7068  onBuilt();
7069  return result;
7070  }
7071 
7072  @java.lang.Override
7073  public Builder clone() {
7074  return super.clone();
7075  }
7076  @java.lang.Override
7078  com.google.protobuf.Descriptors.FieldDescriptor field,
7079  java.lang.Object value) {
7080  return super.setField(field, value);
7081  }
7082  @java.lang.Override
7084  com.google.protobuf.Descriptors.FieldDescriptor field) {
7085  return super.clearField(field);
7086  }
7087  @java.lang.Override
7089  com.google.protobuf.Descriptors.OneofDescriptor oneof) {
7090  return super.clearOneof(oneof);
7091  }
7092  @java.lang.Override
7094  com.google.protobuf.Descriptors.FieldDescriptor field,
7095  int index, java.lang.Object value) {
7096  return super.setRepeatedField(field, index, value);
7097  }
7098  @java.lang.Override
7100  com.google.protobuf.Descriptors.FieldDescriptor field,
7101  java.lang.Object value) {
7102  return super.addRepeatedField(field, value);
7103  }
7104  @java.lang.Override
7105  public Builder mergeFrom(com.google.protobuf.Message other) {
7108  } else {
7109  super.mergeFrom(other);
7110  return this;
7111  }
7112  }
7113 
7116  if (other.firstSolutionStrategy_ != 0) {
7117  setFirstSolutionStrategyValue(other.getFirstSolutionStrategyValue());
7118  }
7119  if (other.getUseUnfilteredFirstSolutionStrategy() != false) {
7120  setUseUnfilteredFirstSolutionStrategy(other.getUseUnfilteredFirstSolutionStrategy());
7121  }
7122  if (other.getSavingsNeighborsRatio() != 0D) {
7123  setSavingsNeighborsRatio(other.getSavingsNeighborsRatio());
7124  }
7125  if (other.getSavingsMaxMemoryUsageBytes() != 0D) {
7126  setSavingsMaxMemoryUsageBytes(other.getSavingsMaxMemoryUsageBytes());
7127  }
7128  if (other.getSavingsAddReverseArcs() != false) {
7129  setSavingsAddReverseArcs(other.getSavingsAddReverseArcs());
7130  }
7131  if (other.getSavingsArcCoefficient() != 0D) {
7132  setSavingsArcCoefficient(other.getSavingsArcCoefficient());
7133  }
7134  if (other.getSavingsParallelRoutes() != false) {
7135  setSavingsParallelRoutes(other.getSavingsParallelRoutes());
7136  }
7137  if (other.getCheapestInsertionFarthestSeedsRatio() != 0D) {
7138  setCheapestInsertionFarthestSeedsRatio(other.getCheapestInsertionFarthestSeedsRatio());
7139  }
7140  if (other.getCheapestInsertionNeighborsRatio() != 0D) {
7141  setCheapestInsertionNeighborsRatio(other.getCheapestInsertionNeighborsRatio());
7142  }
7143  if (other.getChristofidesUseMinimumMatching() != false) {
7144  setChristofidesUseMinimumMatching(other.getChristofidesUseMinimumMatching());
7145  }
7146  if (other.hasLocalSearchOperators()) {
7147  mergeLocalSearchOperators(other.getLocalSearchOperators());
7148  }
7149  if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
7150  setRelocateExpensiveChainNumArcsToConsider(other.getRelocateExpensiveChainNumArcsToConsider());
7151  }
7152  if (other.localSearchMetaheuristic_ != 0) {
7153  setLocalSearchMetaheuristicValue(other.getLocalSearchMetaheuristicValue());
7154  }
7155  if (other.getGuidedLocalSearchLambdaCoefficient() != 0D) {
7156  setGuidedLocalSearchLambdaCoefficient(other.getGuidedLocalSearchLambdaCoefficient());
7157  }
7158  if (other.getUseDepthFirstSearch() != false) {
7159  setUseDepthFirstSearch(other.getUseDepthFirstSearch());
7160  }
7161  if (other.useCp_ != 0) {
7162  setUseCpValue(other.getUseCpValue());
7163  }
7164  if (other.useCpSat_ != 0) {
7165  setUseCpSatValue(other.getUseCpSatValue());
7166  }
7167  if (other.getOptimizationStep() != 0D) {
7168  setOptimizationStep(other.getOptimizationStep());
7169  }
7170  if (other.getNumberOfSolutionsToCollect() != 0) {
7171  setNumberOfSolutionsToCollect(other.getNumberOfSolutionsToCollect());
7172  }
7173  if (other.getSolutionLimit() != 0L) {
7174  setSolutionLimit(other.getSolutionLimit());
7175  }
7176  if (other.hasTimeLimit()) {
7177  mergeTimeLimit(other.getTimeLimit());
7178  }
7179  if (other.hasLnsTimeLimit()) {
7180  mergeLnsTimeLimit(other.getLnsTimeLimit());
7181  }
7182  if (other.getUseFullPropagation() != false) {
7183  setUseFullPropagation(other.getUseFullPropagation());
7184  }
7185  if (other.getLogSearch() != false) {
7186  setLogSearch(other.getLogSearch());
7187  }
7188  if (other.getLogCostScalingFactor() != 0D) {
7189  setLogCostScalingFactor(other.getLogCostScalingFactor());
7190  }
7191  if (other.getLogCostOffset() != 0D) {
7192  setLogCostOffset(other.getLogCostOffset());
7193  }
7194  this.mergeUnknownFields(other.unknownFields);
7195  onChanged();
7196  return this;
7197  }
7198 
7199  @java.lang.Override
7200  public final boolean isInitialized() {
7201  return true;
7202  }
7203 
7204  @java.lang.Override
7206  com.google.protobuf.CodedInputStream input,
7207  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7208  throws java.io.IOException {
7210  try {
7211  parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
7212  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
7213  parsedMessage = (com.google.ortools.constraintsolver.RoutingSearchParameters) e.getUnfinishedMessage();
7214  throw e.unwrapIOException();
7215  } finally {
7216  if (parsedMessage != null) {
7217  mergeFrom(parsedMessage);
7218  }
7219  }
7220  return this;
7221  }
7222 
7223  private int firstSolutionStrategy_ = 0;
7233  return firstSolutionStrategy_;
7234  }
7245  firstSolutionStrategy_ = value;
7246  onChanged();
7247  return this;
7248  }
7258  @SuppressWarnings("deprecation")
7260  return result == null ? com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNRECOGNIZED : result;
7261  }
7272  if (value == null) {
7273  throw new NullPointerException();
7274  }
7275 
7276  firstSolutionStrategy_ = value.getNumber();
7277  onChanged();
7278  return this;
7279  }
7289 
7290  firstSolutionStrategy_ = 0;
7291  onChanged();
7292  return this;
7293  }
7294 
7295  private boolean useUnfilteredFirstSolutionStrategy_ ;
7307  return useUnfilteredFirstSolutionStrategy_;
7308  }
7321 
7322  useUnfilteredFirstSolutionStrategy_ = value;
7323  onChanged();
7324  return this;
7325  }
7337 
7338  useUnfilteredFirstSolutionStrategy_ = false;
7339  onChanged();
7340  return this;
7341  }
7342 
7343  private double savingsNeighborsRatio_ ;
7354  public double getSavingsNeighborsRatio() {
7355  return savingsNeighborsRatio_;
7356  }
7368  public Builder setSavingsNeighborsRatio(double value) {
7369 
7370  savingsNeighborsRatio_ = value;
7371  onChanged();
7372  return this;
7373  }
7385 
7386  savingsNeighborsRatio_ = 0D;
7387  onChanged();
7388  return this;
7389  }
7390 
7391  private double savingsMaxMemoryUsageBytes_ ;
7406  return savingsMaxMemoryUsageBytes_;
7407  }
7423 
7424  savingsMaxMemoryUsageBytes_ = value;
7425  onChanged();
7426  return this;
7427  }
7442 
7443  savingsMaxMemoryUsageBytes_ = 0D;
7444  onChanged();
7445  return this;
7446  }
7447 
7448  private boolean savingsAddReverseArcs_ ;
7458  public boolean getSavingsAddReverseArcs() {
7459  return savingsAddReverseArcs_;
7460  }
7471  public Builder setSavingsAddReverseArcs(boolean value) {
7472 
7473  savingsAddReverseArcs_ = value;
7474  onChanged();
7475  return this;
7476  }
7487 
7488  savingsAddReverseArcs_ = false;
7489  onChanged();
7490  return this;
7491  }
7492 
7493  private double savingsArcCoefficient_ ;
7506  public double getSavingsArcCoefficient() {
7507  return savingsArcCoefficient_;
7508  }
7522  public Builder setSavingsArcCoefficient(double value) {
7523 
7524  savingsArcCoefficient_ = value;
7525  onChanged();
7526  return this;
7527  }
7541 
7542  savingsArcCoefficient_ = 0D;
7543  onChanged();
7544  return this;
7545  }
7546 
7547  private boolean savingsParallelRoutes_ ;
7556  public boolean getSavingsParallelRoutes() {
7557  return savingsParallelRoutes_;
7558  }
7568  public Builder setSavingsParallelRoutes(boolean value) {
7569 
7570  savingsParallelRoutes_ = value;
7571  onChanged();
7572  return this;
7573  }
7583 
7584  savingsParallelRoutes_ = false;
7585  onChanged();
7586  return this;
7587  }
7588 
7589  private double cheapestInsertionFarthestSeedsRatio_ ;
7601  return cheapestInsertionFarthestSeedsRatio_;
7602  }
7615 
7616  cheapestInsertionFarthestSeedsRatio_ = value;
7617  onChanged();
7618  return this;
7619  }
7631 
7632  cheapestInsertionFarthestSeedsRatio_ = 0D;
7633  onChanged();
7634  return this;
7635  }
7636 
7637  private double cheapestInsertionNeighborsRatio_ ;
7650  return cheapestInsertionNeighborsRatio_;
7651  }
7665 
7666  cheapestInsertionNeighborsRatio_ = value;
7667  onChanged();
7668  return this;
7669  }
7682 
7683  cheapestInsertionNeighborsRatio_ = 0D;
7684  onChanged();
7685  return this;
7686  }
7687 
7688  private boolean christofidesUseMinimumMatching_ ;
7699  return christofidesUseMinimumMatching_;
7700  }
7712 
7713  christofidesUseMinimumMatching_ = value;
7714  onChanged();
7715  return this;
7716  }
7727 
7728  christofidesUseMinimumMatching_ = false;
7729  onChanged();
7730  return this;
7731  }
7732 
7734  private com.google.protobuf.SingleFieldBuilderV3<
7740  public boolean hasLocalSearchOperators() {
7741  return localSearchOperatorsBuilder_ != null || localSearchOperators_ != null;
7742  }
7748  if (localSearchOperatorsBuilder_ == null) {
7749  return localSearchOperators_ == null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
7750  } else {
7751  return localSearchOperatorsBuilder_.getMessage();
7752  }
7753  }
7758  if (localSearchOperatorsBuilder_ == null) {
7759  if (value == null) {
7760  throw new NullPointerException();
7761  }
7762  localSearchOperators_ = value;
7763  onChanged();
7764  } else {
7765  localSearchOperatorsBuilder_.setMessage(value);
7766  }
7767 
7768  return this;
7769  }
7775  if (localSearchOperatorsBuilder_ == null) {
7776  localSearchOperators_ = builderForValue.build();
7777  onChanged();
7778  } else {
7779  localSearchOperatorsBuilder_.setMessage(builderForValue.build());
7780  }
7781 
7782  return this;
7783  }
7788  if (localSearchOperatorsBuilder_ == null) {
7789  if (localSearchOperators_ != null) {
7790  localSearchOperators_ =
7792  } else {
7793  localSearchOperators_ = value;
7794  }
7795  onChanged();
7796  } else {
7797  localSearchOperatorsBuilder_.mergeFrom(value);
7798  }
7799 
7800  return this;
7801  }
7806  if (localSearchOperatorsBuilder_ == null) {
7807  localSearchOperators_ = null;
7808  onChanged();
7809  } else {
7810  localSearchOperators_ = null;
7811  localSearchOperatorsBuilder_ = null;
7812  }
7813 
7814  return this;
7815  }
7820 
7821  onChanged();
7822  return getLocalSearchOperatorsFieldBuilder().getBuilder();
7823  }
7828  if (localSearchOperatorsBuilder_ != null) {
7829  return localSearchOperatorsBuilder_.getMessageOrBuilder();
7830  } else {
7831  return localSearchOperators_ == null ?
7833  }
7834  }
7838  private com.google.protobuf.SingleFieldBuilderV3<
7840  getLocalSearchOperatorsFieldBuilder() {
7841  if (localSearchOperatorsBuilder_ == null) {
7842  localSearchOperatorsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
7845  getParentForChildren(),
7846  isClean());
7847  localSearchOperators_ = null;
7848  }
7849  return localSearchOperatorsBuilder_;
7850  }
7851 
7852  private int relocateExpensiveChainNumArcsToConsider_ ;
7868  return relocateExpensiveChainNumArcsToConsider_;
7869  }
7886 
7887  relocateExpensiveChainNumArcsToConsider_ = value;
7888  onChanged();
7889  return this;
7890  }
7906 
7907  relocateExpensiveChainNumArcsToConsider_ = 0;
7908  onChanged();
7909  return this;
7910  }
7911 
7912  private int localSearchMetaheuristic_ = 0;
7922  return localSearchMetaheuristic_;
7923  }
7934  localSearchMetaheuristic_ = value;
7935  onChanged();
7936  return this;
7937  }
7947  @SuppressWarnings("deprecation")
7950  }
7961  if (value == null) {
7962  throw new NullPointerException();
7963  }
7964 
7965  localSearchMetaheuristic_ = value.getNumber();
7966  onChanged();
7967  return this;
7968  }
7978 
7979  localSearchMetaheuristic_ = 0;
7980  onChanged();
7981  return this;
7982  }
7983 
7984  private double guidedLocalSearchLambdaCoefficient_ ;
7997  return guidedLocalSearchLambdaCoefficient_;
7998  }
8012 
8013  guidedLocalSearchLambdaCoefficient_ = value;
8014  onChanged();
8015  return this;
8016  }
8029 
8030  guidedLocalSearchLambdaCoefficient_ = 0D;
8031  onChanged();
8032  return this;
8033  }
8034 
8035  private boolean useDepthFirstSearch_ ;
8046  public boolean getUseDepthFirstSearch() {
8047  return useDepthFirstSearch_;
8048  }
8060  public Builder setUseDepthFirstSearch(boolean value) {
8061 
8062  useDepthFirstSearch_ = value;
8063  onChanged();
8064  return this;
8065  }
8077 
8078  useDepthFirstSearch_ = false;
8079  onChanged();
8080  return this;
8081  }
8082 
8083  private int useCp_ = 0;
8094  public int getUseCpValue() {
8095  return useCp_;
8096  }
8108  public Builder setUseCpValue(int value) {
8109  useCp_ = value;
8110  onChanged();
8111  return this;
8112  }
8124  @SuppressWarnings("deprecation")
8126  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
8127  }
8140  if (value == null) {
8141  throw new NullPointerException();
8142  }
8143 
8144  useCp_ = value.getNumber();
8145  onChanged();
8146  return this;
8147  }
8158  public Builder clearUseCp() {
8159 
8160  useCp_ = 0;
8161  onChanged();
8162  return this;
8163  }
8164 
8165  private int useCpSat_ = 0;
8177  public int getUseCpSatValue() {
8178  return useCpSat_;
8179  }
8192  public Builder setUseCpSatValue(int value) {
8193  useCpSat_ = value;
8194  onChanged();
8195  return this;
8196  }
8209  @SuppressWarnings("deprecation")
8211  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
8212  }
8226  if (value == null) {
8227  throw new NullPointerException();
8228  }
8229 
8230  useCpSat_ = value.getNumber();
8231  onChanged();
8232  return this;
8233  }
8246 
8247  useCpSat_ = 0;
8248  onChanged();
8249  return this;
8250  }
8251 
8252  private double optimizationStep_ ;
8263  public double getOptimizationStep() {
8264  return optimizationStep_;
8265  }
8277  public Builder setOptimizationStep(double value) {
8278 
8279  optimizationStep_ = value;
8280  onChanged();
8281  return this;
8282  }
8294 
8295  optimizationStep_ = 0D;
8296  onChanged();
8297  return this;
8298  }
8299 
8300  private int numberOfSolutionsToCollect_ ;
8311  return numberOfSolutionsToCollect_;
8312  }
8324 
8325  numberOfSolutionsToCollect_ = value;
8326  onChanged();
8327  return this;
8328  }
8339 
8340  numberOfSolutionsToCollect_ = 0;
8341  onChanged();
8342  return this;
8343  }
8344 
8345  private long solutionLimit_ ;
8356  public long getSolutionLimit() {
8357  return solutionLimit_;
8358  }
8370  public Builder setSolutionLimit(long value) {
8371 
8372  solutionLimit_ = value;
8373  onChanged();
8374  return this;
8375  }
8387 
8388  solutionLimit_ = 0L;
8389  onChanged();
8390  return this;
8391  }
8392 
8393  private com.google.protobuf.Duration timeLimit_;
8394  private com.google.protobuf.SingleFieldBuilderV3<
8395  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> timeLimitBuilder_;
8404  public boolean hasTimeLimit() {
8405  return timeLimitBuilder_ != null || timeLimit_ != null;
8406  }
8415  public com.google.protobuf.Duration getTimeLimit() {
8416  if (timeLimitBuilder_ == null) {
8417  return timeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
8418  } else {
8419  return timeLimitBuilder_.getMessage();
8420  }
8421  }
8429  public Builder setTimeLimit(com.google.protobuf.Duration value) {
8430  if (timeLimitBuilder_ == null) {
8431  if (value == null) {
8432  throw new NullPointerException();
8433  }
8434  timeLimit_ = value;
8435  onChanged();
8436  } else {
8437  timeLimitBuilder_.setMessage(value);
8438  }
8439 
8440  return this;
8441  }
8450  com.google.protobuf.Duration.Builder builderForValue) {
8451  if (timeLimitBuilder_ == null) {
8452  timeLimit_ = builderForValue.build();
8453  onChanged();
8454  } else {
8455  timeLimitBuilder_.setMessage(builderForValue.build());
8456  }
8457 
8458  return this;
8459  }
8467  public Builder mergeTimeLimit(com.google.protobuf.Duration value) {
8468  if (timeLimitBuilder_ == null) {
8469  if (timeLimit_ != null) {
8470  timeLimit_ =
8471  com.google.protobuf.Duration.newBuilder(timeLimit_).mergeFrom(value).buildPartial();
8472  } else {
8473  timeLimit_ = value;
8474  }
8475  onChanged();
8476  } else {
8477  timeLimitBuilder_.mergeFrom(value);
8478  }
8479 
8480  return this;
8481  }
8490  if (timeLimitBuilder_ == null) {
8491  timeLimit_ = null;
8492  onChanged();
8493  } else {
8494  timeLimit_ = null;
8495  timeLimitBuilder_ = null;
8496  }
8497 
8498  return this;
8499  }
8507  public com.google.protobuf.Duration.Builder getTimeLimitBuilder() {
8508 
8509  onChanged();
8510  return getTimeLimitFieldBuilder().getBuilder();
8511  }
8519  public com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder() {
8520  if (timeLimitBuilder_ != null) {
8521  return timeLimitBuilder_.getMessageOrBuilder();
8522  } else {
8523  return timeLimit_ == null ?
8524  com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
8525  }
8526  }
8534  private com.google.protobuf.SingleFieldBuilderV3<
8535  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
8536  getTimeLimitFieldBuilder() {
8537  if (timeLimitBuilder_ == null) {
8538  timeLimitBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
8539  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
8540  getTimeLimit(),
8541  getParentForChildren(),
8542  isClean());
8543  timeLimit_ = null;
8544  }
8545  return timeLimitBuilder_;
8546  }
8547 
8548  private com.google.protobuf.Duration lnsTimeLimit_;
8549  private com.google.protobuf.SingleFieldBuilderV3<
8550  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> lnsTimeLimitBuilder_;
8560  public boolean hasLnsTimeLimit() {
8561  return lnsTimeLimitBuilder_ != null || lnsTimeLimit_ != null;
8562  }
8572  public com.google.protobuf.Duration getLnsTimeLimit() {
8573  if (lnsTimeLimitBuilder_ == null) {
8574  return lnsTimeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8575  } else {
8576  return lnsTimeLimitBuilder_.getMessage();
8577  }
8578  }
8587  public Builder setLnsTimeLimit(com.google.protobuf.Duration value) {
8588  if (lnsTimeLimitBuilder_ == null) {
8589  if (value == null) {
8590  throw new NullPointerException();
8591  }
8592  lnsTimeLimit_ = value;
8593  onChanged();
8594  } else {
8595  lnsTimeLimitBuilder_.setMessage(value);
8596  }
8597 
8598  return this;
8599  }
8609  com.google.protobuf.Duration.Builder builderForValue) {
8610  if (lnsTimeLimitBuilder_ == null) {
8611  lnsTimeLimit_ = builderForValue.build();
8612  onChanged();
8613  } else {
8614  lnsTimeLimitBuilder_.setMessage(builderForValue.build());
8615  }
8616 
8617  return this;
8618  }
8627  public Builder mergeLnsTimeLimit(com.google.protobuf.Duration value) {
8628  if (lnsTimeLimitBuilder_ == null) {
8629  if (lnsTimeLimit_ != null) {
8630  lnsTimeLimit_ =
8631  com.google.protobuf.Duration.newBuilder(lnsTimeLimit_).mergeFrom(value).buildPartial();
8632  } else {
8633  lnsTimeLimit_ = value;
8634  }
8635  onChanged();
8636  } else {
8637  lnsTimeLimitBuilder_.mergeFrom(value);
8638  }
8639 
8640  return this;
8641  }
8651  if (lnsTimeLimitBuilder_ == null) {
8652  lnsTimeLimit_ = null;
8653  onChanged();
8654  } else {
8655  lnsTimeLimit_ = null;
8656  lnsTimeLimitBuilder_ = null;
8657  }
8658 
8659  return this;
8660  }
8669  public com.google.protobuf.Duration.Builder getLnsTimeLimitBuilder() {
8670 
8671  onChanged();
8672  return getLnsTimeLimitFieldBuilder().getBuilder();
8673  }
8682  public com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder() {
8683  if (lnsTimeLimitBuilder_ != null) {
8684  return lnsTimeLimitBuilder_.getMessageOrBuilder();
8685  } else {
8686  return lnsTimeLimit_ == null ?
8687  com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8688  }
8689  }
8698  private com.google.protobuf.SingleFieldBuilderV3<
8699  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
8700  getLnsTimeLimitFieldBuilder() {
8701  if (lnsTimeLimitBuilder_ == null) {
8702  lnsTimeLimitBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
8703  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
8704  getLnsTimeLimit(),
8705  getParentForChildren(),
8706  isClean());
8707  lnsTimeLimit_ = null;
8708  }
8709  return lnsTimeLimitBuilder_;
8710  }
8711 
8712  private boolean useFullPropagation_ ;
8729  public boolean getUseFullPropagation() {
8730  return useFullPropagation_;
8731  }
8749  public Builder setUseFullPropagation(boolean value) {
8750 
8751  useFullPropagation_ = value;
8752  onChanged();
8753  return this;
8754  }
8772 
8773  useFullPropagation_ = false;
8774  onChanged();
8775  return this;
8776  }
8777 
8778  private boolean logSearch_ ;
8798  public boolean getLogSearch() {
8799  return logSearch_;
8800  }
8821  public Builder setLogSearch(boolean value) {
8822 
8823  logSearch_ = value;
8824  onChanged();
8825  return this;
8826  }
8847 
8848  logSearch_ = false;
8849  onChanged();
8850  return this;
8851  }
8852 
8853  private double logCostScalingFactor_ ;
8863  public double getLogCostScalingFactor() {
8864  return logCostScalingFactor_;
8865  }
8876  public Builder setLogCostScalingFactor(double value) {
8877 
8878  logCostScalingFactor_ = value;
8879  onChanged();
8880  return this;
8881  }
8892 
8893  logCostScalingFactor_ = 0D;
8894  onChanged();
8895  return this;
8896  }
8897 
8898  private double logCostOffset_ ;
8903  public double getLogCostOffset() {
8904  return logCostOffset_;
8905  }
8911  public Builder setLogCostOffset(double value) {
8912 
8913  logCostOffset_ = value;
8914  onChanged();
8915  return this;
8916  }
8922 
8923  logCostOffset_ = 0D;
8924  onChanged();
8925  return this;
8926  }
8927  @java.lang.Override
8929  final com.google.protobuf.UnknownFieldSet unknownFields) {
8930  return super.setUnknownFields(unknownFields);
8931  }
8932 
8933  @java.lang.Override
8935  final com.google.protobuf.UnknownFieldSet unknownFields) {
8936  return super.mergeUnknownFields(unknownFields);
8937  }
8938 
8939 
8940  // @@protoc_insertion_point(builder_scope:operations_research.RoutingSearchParameters)
8941  }
8942 
8943  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters)
8944  private static final com.google.ortools.constraintsolver.RoutingSearchParameters DEFAULT_INSTANCE;
8945  static {
8946  DEFAULT_INSTANCE = new com.google.ortools.constraintsolver.RoutingSearchParameters();
8947  }
8948 
8950  return DEFAULT_INSTANCE;
8951  }
8952 
8953  private static final com.google.protobuf.Parser<RoutingSearchParameters>
8954  PARSER = new com.google.protobuf.AbstractParser<RoutingSearchParameters>() {
8955  @java.lang.Override
8956  public RoutingSearchParameters parsePartialFrom(
8957  com.google.protobuf.CodedInputStream input,
8958  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8959  throws com.google.protobuf.InvalidProtocolBufferException {
8960  return new RoutingSearchParameters(input, extensionRegistry);
8961  }
8962  };
8963 
8964  public static com.google.protobuf.Parser<RoutingSearchParameters> parser() {
8965  return PARSER;
8966  }
8967 
8968  @java.lang.Override
8970  return PARSER;
8971  }
8972 
8973  @java.lang.Override
8975  return DEFAULT_INSTANCE;
8976  }
8977 
8978 }
8979 
int getUseInactiveLnsValue()
int getUseCpValue()
int getUseMakeActiveValue()
Builder setCheapestInsertionNeighborsRatio(double value)
.lang.Override void writeTo(com.google.protobuf.CodedOutputStream output)
int getUseRelocateExpensiveChainValue()
Builder setLogCostOffset(double value)
double log_cost_offset = 29;
Builder clearUseTwoOpt()
boolean hasTimeLimit()
int getUseLinKernighanValue()
int getLocalSearchMetaheuristicValue()
com.google.ortools.util.OptionalBoolean getUseTspLns()
com.google.ortools.util.OptionalBoolean getUseExchange()
.lang.Override Builder mergeFrom(com.google.protobuf.Message other)
com.google.ortools.util.OptionalBoolean getUseRelocate()
com.google.ortools.util.OptionalBoolean getUseMakeActive()
com.google.ortools.util.OptionalBoolean getUseCpSat()
int getUseCrossExchangeValue()
Builder clearLogCostOffset()
double log_cost_offset = 29;
com.google.ortools.util.OptionalBoolean getUseMakeChainInactive()
static final int USE_FULL_PROPAGATION_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseOrOpt()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseDelimitedFrom(java.io.InputStream input)
com.google.ortools.util.OptionalBoolean getUseTspOpt()
com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
Builder clearUseInactiveLns()
Builder setUseRelocatePairValue(int value)
com.google.protobuf.Duration.Builder getTimeLimitBuilder()
com.google.ortools.util.OptionalBoolean getUseTspLns()
com.google.ortools.util.OptionalBoolean getUseNodePairSwapActive()
static final int LOCAL_SEARCH_METAHEURISTIC_FIELD_NUMBER
.lang.Override void writeTo(com.google.protobuf.CodedOutputStream output)
com.google.ortools.util.OptionalBoolean getUseLightRelocatePair()
com.google.ortools.util.OptionalBoolean getUseCross()
Builder clearRelocateExpensiveChainNumArcsToConsider()
.lang.Override Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
int getUseRelocateValue()
double getCheapestInsertionFarthestSeedsRatio()
com.google.ortools.util.OptionalBoolean getUseExchangePair()
int getUseTwoOptValue()
Builder setUseMakeChainInactive(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.util.OptionalBoolean getUseTwoOpt()
static final int USE_MAKE_CHAIN_INACTIVE_FIELD_NUMBER
Builder setUseOrOpt(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.util.OptionalBoolean getUseNodePairSwapActive()
int getNumberOfSolutionsToCollect()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.protobuf.Duration getTimeLimit()
int getUseExchangePairValue()
Builder setSolutionLimit(long value)
int getUseMakeInactiveValue()
Builder setUseExchangeSubtrip(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.util.OptionalBoolean getUseRelocateAndMakeActive()
int getUseExchangePairValue()
Builder clearUseCross()
com.google.ortools.util.OptionalBoolean getUseRelocateAndMakeActive()
static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators prototype)
boolean hasLnsTimeLimit()
int getRelocateExpensiveChainNumArcsToConsider()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters build()
int getUseRelocateValue()
double getSavingsArcCoefficient()
Builder setLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder builderForValue)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
com.google.ortools.util.OptionalBoolean getUseRelocateSubtrip()
.lang.Override final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder()
com.google.ortools.util.OptionalBoolean getUseExchangePair()
static final int LOG_COST_SCALING_FACTOR_FIELD_NUMBER
static final int SOLUTION_LIMIT_FIELD_NUMBER
Builder setOptimizationStep(double value)
int getUseExtendedSwapActiveValue()
Builder clearUseRelocateSubtrip()
com.google.ortools.util.OptionalBoolean getUseInactiveLns()
long getSolutionLimit()
com.google.protobuf.Duration getTimeLimit()
static final int USE_TSP_OPT_FIELD_NUMBER
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
int getUseLinKernighanValue()
int getUseMakeChainInactiveValue()
Builder setLocalSearchMetaheuristicValue(int value)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input)
.lang.Override int getSerializedSize()
int getUseMakeInactiveValue()
Builder setUseTspLns(com.google.ortools.util.OptionalBoolean value)
.lang.Override Builder newBuilderForType()
static final int USE_LIGHT_RELOCATE_PAIR_FIELD_NUMBER
boolean getChristofidesUseMinimumMatching()
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Builder clearGuidedLocalSearchLambdaCoefficient()
Builder setUseMakeInactiveValue(int value)
com.google.ortools.util.OptionalBoolean getUseSwapActive()
Builder setUseMakeChainInactiveValue(int value)
Builder clearUseExtendedSwapActive()
boolean getUseDepthFirstSearch()
com.google.ortools.constraintsolver.FirstSolutionStrategy.Value getFirstSolutionStrategy()
int getUseCrossValue()
Builder clearSavingsNeighborsRatio()
boolean getSavingsAddReverseArcs()
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder getLocalSearchOperatorsBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override final com.google.protobuf.UnknownFieldSet getUnknownFields()
static final int LOG_COST_OFFSET_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseCrossExchange()
.lang.Override com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
double getGuidedLocalSearchLambdaCoefficient()
Builder setUsePathLnsValue(int value)
com.google.ortools.util.OptionalBoolean getUseNodePairSwapActive()
com.google.ortools.util.OptionalBoolean getUseMakeActive()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.CodedInputStream input)
Builder setUseRelocateExpensiveChain(com.google.ortools.util.OptionalBoolean value)
.lang.Override final boolean isInitialized()
int getUseExchangeValue()
double getOptimizationStep()
com.google.ortools.util.OptionalBoolean getUsePathLns()
Builder setUseInactiveLns(com.google.ortools.util.OptionalBoolean value)
Builder setLocalSearchMetaheuristic(com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value value)
.lang.Override final com.google.protobuf.UnknownFieldSet getUnknownFields()
Builder setUseRelocateSubtripValue(int value)
int getUseInactiveLnsValue()
com.google.ortools.util.OptionalBoolean getUseExchange()
Builder setUseInactiveLnsValue(int value)
Builder setRelocateExpensiveChainNumArcsToConsider(int value)
Builder setUseMakeActive(com.google.ortools.util.OptionalBoolean value)
int getUseLightRelocatePairValue()
int getUseRelocateSubtripValue()
static final int LOCAL_SEARCH_OPERATORS_FIELD_NUMBER
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getUsePathLnsValue()
com.google.ortools.util.OptionalBoolean getUseCpSat()
Builder setSavingsAddReverseArcs(boolean value)
.lang.Override com.google.protobuf.Parser< RoutingSearchParameters > getParserForType()
static final int USE_SWAP_ACTIVE_FIELD_NUMBER
Builder clearUseOrOpt()
double getSavingsNeighborsRatio()
Builder clearUseExchangePair()
static final int USE_EXTENDED_SWAP_ACTIVE_FIELD_NUMBER
.lang.Override java.lang.Object newInstance(UnusedPrivateParameter unused)
.lang.Override Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
static final int USE_INACTIVE_LNS_FIELD_NUMBER
Builder setSavingsArcCoefficient(double value)
Builder setUseRelocateValue(int value)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators buildPartial()
static final int OPTIMIZATION_STEP_FIELD_NUMBER
Builder clearUseRelocateExpensiveChain()
com.google.ortools.util.OptionalBoolean getUseLightRelocatePair()
.lang.Override com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
.lang.Override Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.nio.ByteBuffer data)
Builder clearUseLightRelocatePair()
int getUseTspOptValue()
com.google.protobuf.Duration.Builder getLnsTimeLimitBuilder()
static Builder newBuilder()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final int USE_LIN_KERNIGHAN_FIELD_NUMBER
.lang.Override final Builder mergeUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
int getUseLightRelocatePairValue()
Builder clearUseMakeActive()
static Builder newBuilder()
int getUseNodePairSwapActiveValue()
int getUseExtendedSwapActiveValue()
Builder setUseLinKernighan(com.google.ortools.util.OptionalBoolean value)
.lang.Override final boolean isInitialized()
com.google.ortools.util.OptionalBoolean getUseCp()
Builder setChristofidesUseMinimumMatching(boolean value)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
boolean getUseFullPropagation()
com.google.ortools.util.OptionalBoolean getUseTspOpt()
com.google.ortools.util.OptionalBoolean getUseLinKernighan()
.lang.Override java.lang.Object newInstance(UnusedPrivateParameter unused)
double getLogCostOffset()
double log_cost_offset = 29;
Builder mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters other)
int getUseCrossValue()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.ByteString data)
.lang.Override int hashCode()
static final int TIME_LIMIT_FIELD_NUMBER
Builder clearLnsTimeLimit()
com.google.ortools.util.OptionalBoolean getUseExtendedSwapActive()
Builder clearUseCpSat()
Builder clearChristofidesUseMinimumMatching()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstanceForType()
Builder setUseCross(com.google.ortools.util.OptionalBoolean value)
boolean getUseDepthFirstSearch()
com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder()
.lang.Override int hashCode()
boolean getSavingsAddReverseArcs()
int getUseExchangeValue()
int getUseExtendedSwapActiveValue()
Builder clearOptimizationStep()
com.google.ortools.util.OptionalBoolean getUseCp()
Builder clearUseNodePairSwapActive()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators build()
com.google.ortools.util.OptionalBoolean getUseTwoOpt()
Builder clearUseRelocateNeighbors()
com.google.ortools.util.OptionalBoolean getUseCross()
Builder clearLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
static com.google.ortools.constraintsolver.RoutingSearchParameters parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getUseExchangeSubtripValue()
int getUseMakeActiveValue()
static com.google.protobuf.Parser< RoutingSearchParameters > parser()
Builder setUseRelocateAndMakeActive(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
int getUseTwoOptValue()
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
Builder setUsePathLns(com.google.ortools.util.OptionalBoolean value)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
com.google.ortools.util.OptionalBoolean getUseOrOpt()
Builder clearUseFullPropagation()
double getCheapestInsertionFarthestSeedsRatio()
Builder setUseTspOpt(com.google.ortools.util.OptionalBoolean value)
int getUseRelocateNeighborsValue()
com.google.ortools.util.OptionalBoolean getUseExchangePair()
.lang.Override Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
static final int NUMBER_OF_SOLUTIONS_TO_COLLECT_FIELD_NUMBER
static final int RELOCATE_EXPENSIVE_CHAIN_NUM_ARCS_TO_CONSIDER_FIELD_NUMBER
static final int FIRST_SOLUTION_STRATEGY_FIELD_NUMBER
Builder setSavingsMaxMemoryUsageBytes(double value)
int getUseFullPathLnsValue()
com.google.ortools.util.OptionalBoolean getUseRelocate()
int getUseCpSatValue()
Builder setLnsTimeLimit(com.google.protobuf.Duration.Builder builderForValue)
com.google.ortools.util.OptionalBoolean getUseRelocateExpensiveChain()
.lang.Override Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
int getUseTspLnsValue()
com.google.ortools.util.OptionalBoolean getUseSwapActive()
Builder clearTimeLimit()
static final int SAVINGS_PARALLEL_ROUTES_FIELD_NUMBER
double getSavingsNeighborsRatio()
Builder setUseLightRelocatePairValue(int value)
int getUseRelocateSubtripValue()
int getUseInactiveLnsValue()
int getUsePathLnsValue()
BOOL_UNSPECIFIED
BOOL_UNSPECIFIED = 0;
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final int USE_FULL_PATH_LNS_FIELD_NUMBER
Builder clearCheapestInsertionNeighborsRatio()
static final int USE_EXCHANGE_SUBTRIP_FIELD_NUMBER
com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.CodedInputStream input)
Builder setUseLightRelocatePair(com.google.ortools.util.OptionalBoolean value)
boolean hasLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
com.google.ortools.util.OptionalBoolean getUseRelocatePair()
.lang.Override com.google.protobuf.Parser< LocalSearchNeighborhoodOperators > getParserForType()
.lang.Deprecated static OptionalBoolean valueOf(int value)
Builder setLogSearch(boolean value)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseDelimitedFrom(java.io.InputStream input)
Builder setUseDepthFirstSearch(boolean value)
Builder setUseSwapActive(com.google.ortools.util.OptionalBoolean value)
static final int CHEAPEST_INSERTION_FARTHEST_SEEDS_RATIO_FIELD_NUMBER
Builder clearSavingsParallelRoutes()
com.google.ortools.util.OptionalBoolean getUseLinKernighan()
Builder setUseFullPathLns(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.util.OptionalBoolean getUseRelocateNeighbors()
.lang.Override Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getRelocateExpensiveChainNumArcsToConsider()
Builder setUseCpSat(com.google.ortools.util.OptionalBoolean value)
Builder clearFirstSolutionStrategy()
com.google.ortools.util.OptionalBoolean getUseTspLns()
Builder clearUseRelocate()
double getLogCostScalingFactor()
static com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstance()
com.google.ortools.util.OptionalBoolean getUseTwoOpt()
int getFirstSolutionStrategyValue()
com.google.ortools.util.OptionalBoolean getUseRelocateSubtrip()
Builder setUseExchange(com.google.ortools.util.OptionalBoolean value)
Protobuf enum.
int getUseRelocatePairValue()
int getUseRelocateAndMakeActiveValue()
Builder setUseNodePairSwapActive(com.google.ortools.util.OptionalBoolean value)
.lang.Override final Builder mergeUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
int getUseRelocatePairValue()
Builder setUseCrossExchange(com.google.ortools.util.OptionalBoolean value)
Protobuf enum.
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
com.google.ortools.util.OptionalBoolean getUseExtendedSwapActive()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
Builder setSavingsNeighborsRatio(double value)
boolean getLogSearch()
static final int SAVINGS_ARC_COEFFICIENT_FIELD_NUMBER
int getLocalSearchMetaheuristicValue()
int getUseCrossExchangeValue()
int getUseRelocateNeighborsValue()
Builder clearSavingsArcCoefficient()
Builder clearUseExchangeSubtrip()
static final int GUIDED_LOCAL_SEARCH_LAMBDA_COEFFICIENT_FIELD_NUMBER
int getUseExchangePairValue()
int getUseLinKernighanValue()
static final int CHEAPEST_INSERTION_NEIGHBORS_RATIO_FIELD_NUMBER
UNRECOGNIZED
com.google.ortools.util.OptionalBoolean getUseOrOpt()
int getNumberOfSolutionsToCollect()
static final int USE_TSP_LNS_FIELD_NUMBER
boolean getChristofidesUseMinimumMatching()
static final int USE_RELOCATE_EXPENSIVE_CHAIN_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseFullPathLns()
Builder setUseRelocateExpensiveChainValue(int value)
int getUseFullPathLnsValue()
static final int USE_OR_OPT_FIELD_NUMBER
boolean getSavingsParallelRoutes()
com.google.ortools.util.OptionalBoolean getUseMakeActive()
Builder setUseExchangePair(com.google.ortools.util.OptionalBoolean value)
int getUseLightRelocatePairValue()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.io.InputStream input)
UNSET
com.google.ortools.util.OptionalBoolean getUseCross()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getUseMakeInactiveValue()
int getUseExchangeSubtripValue()
Builder setSavingsParallelRoutes(boolean value)
com.google.ortools.util.OptionalBoolean getUseFullPathLns()
Builder setTimeLimit(com.google.protobuf.Duration value)
int getUseMakeChainInactiveValue()
int getUseTspOptValue()
static final int USE_CP_SAT_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseRelocateAndMakeActive()
static final int SAVINGS_NEIGHBORS_RATIO_FIELD_NUMBER
int getUseMakeChainInactiveValue()
static final int USE_RELOCATE_SUBTRIP_FIELD_NUMBER
int getUseSwapActiveValue()
com.google.ortools.util.OptionalBoolean getUseRelocateExpensiveChain()
com.google.ortools.util.OptionalBoolean getUseMakeChainInactive()
Builder setUseMakeActiveValue(int value)
int getUseRelocateSubtripValue()
int getUseRelocateNeighborsValue()
int getUseNodePairSwapActiveValue()
static final int USE_CP_FIELD_NUMBER
Builder setUseFullPropagation(boolean value)
Builder clearUseRelocateAndMakeActive()
double getSavingsArcCoefficient()
int getUseCpValue()
int getUseRelocateExpensiveChainValue()
Builder clearLogSearch()
com.google.ortools.util.OptionalBoolean getUseExtendedSwapActive()
int getUseCrossValue()
Builder clearUseRelocatePair()
Builder clearUseExchange()
boolean getUseFullPropagation()
com.google.ortools.util.OptionalBoolean getUseRelocateExpensiveChain()
Builder setUseCpSatValue(int value)
.lang.Override Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
Builder clearLogCostScalingFactor()
boolean getUseUnfilteredFirstSolutionStrategy()
static final int USE_EXCHANGE_PAIR_FIELD_NUMBER
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
.lang.Override Builder clone()
Builder clearUseTspLns()
static final int SAVINGS_ADD_REVERSE_ARCS_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseCrossExchange()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getUseOrOptValue()
.lang.Override boolean equals(final java.lang.Object obj)
boolean getUseUnfilteredFirstSolutionStrategy()
Builder setUseRelocateNeighbors(com.google.ortools.util.OptionalBoolean value)
Builder mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators other)
static final int USE_CROSS_FIELD_NUMBER
.lang.Override int getSerializedSize()
static final int USE_RELOCATE_NEIGHBORS_FIELD_NUMBER
int getUseRelocateExpensiveChainValue()
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
.lang.Override Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
int getUsePathLnsValue()
com.google.protobuf.Duration getLnsTimeLimit()
.lang.Override Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
.lang.Override final boolean isInitialized()
long getSolutionLimit()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.nio.ByteBuffer data)
double getSavingsMaxMemoryUsageBytes()
.lang.Override boolean equals(final java.lang.Object obj)
Builder clearUseMakeInactive()
Builder setUseTwoOpt(com.google.ortools.util.OptionalBoolean value)
.lang.Override Builder toBuilder()
.lang.Override Builder newBuilderForType()
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
static final int USE_NODE_PAIR_SWAP_ACTIVE_FIELD_NUMBER
Builder setUseOrOptValue(int value)
double getOptimizationStep()
Builder clearUseSwapActive()
.lang.Override Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
Builder setUseRelocateSubtrip(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.util.OptionalBoolean getUseFullPathLns()
Builder mergeLnsTimeLimit(com.google.protobuf.Duration value)
Builder setUseFullPathLnsValue(int value)
Builder setUseRelocateAndMakeActiveValue(int value)
static final int USE_MAKE_ACTIVE_FIELD_NUMBER
static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters prototype)
Builder clearLocalSearchMetaheuristic()
Builder clearUseLinKernighan()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(byte[] data)
Builder setUseUnfilteredFirstSolutionStrategy(boolean value)
Builder setGuidedLocalSearchLambdaCoefficient(double value)
Builder setTimeLimit(com.google.protobuf.Duration.Builder builderForValue)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(byte[] data)
double getCheapestInsertionNeighborsRatio()
static final int USE_MAKE_INACTIVE_FIELD_NUMBER
.lang.Override final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
.lang.Override Builder clear()
Builder setFirstSolutionStrategyValue(int value)
com.google.ortools.util.OptionalBoolean getUseRelocatePair()
double getGuidedLocalSearchLambdaCoefficient()
Builder setNumberOfSolutionsToCollect(int value)
Builder setUseSwapActiveValue(int value)
Builder clearUseFullPathLns()
.lang.Override Builder mergeFrom(com.google.protobuf.Message other)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
static final int CHRISTOFIDES_USE_MINIMUM_MATCHING_FIELD_NUMBER
int getUseRelocatePairValue()
static final int USE_UNFILTERED_FIRST_SOLUTION_STRATEGY_FIELD_NUMBER
Builder setUseRelocateNeighborsValue(int value)
Builder clearUsePathLns()
.lang.Override final boolean isInitialized()
int getUseCpSatValue()
int getUseOrOptValue()
Builder setUseRelocate(com.google.ortools.util.OptionalBoolean value)
static final int USE_PATH_LNS_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseLightRelocatePair()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters buildPartial()
.lang.Override Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
Builder setUseExtendedSwapActive(com.google.ortools.util.OptionalBoolean value)
Builder clearUseTspOpt()
com.google.ortools.util.OptionalBoolean getUseMakeInactive()
Builder setUseCp(com.google.ortools.util.OptionalBoolean value)
int getUseNodePairSwapActiveValue()
Builder setLnsTimeLimit(com.google.protobuf.Duration value)
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder getLocalSearchOperatorsOrBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
static final int USE_RELOCATE_AND_MAKE_ACTIVE_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseExchangeSubtrip()
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Builder setFirstSolutionStrategy(com.google.ortools.constraintsolver.FirstSolutionStrategy.Value value)
int getUseMakeActiveValue()
Builder setUseTwoOptValue(int value)
com.google.ortools.util.OptionalBoolean getUseMakeInactive()
com.google.ortools.util.OptionalBoolean getUseExchangeSubtrip()
double getSavingsMaxMemoryUsageBytes()
Builder clearUseCrossExchange()
com.google.ortools.util.OptionalBoolean getUsePathLns()
static final int USE_TWO_OPT_FIELD_NUMBER
.lang.Override Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
int getUseTspLnsValue()
com.google.ortools.util.OptionalBoolean getUseExchange()
com.google.ortools.util.OptionalBoolean getUseSwapActive()
static final int LNS_TIME_LIMIT_FIELD_NUMBER
Builder clearSavingsAddReverseArcs()
Builder setUseExchangeValue(int value)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstanceForType()
Builder setUseExchangeSubtripValue(int value)
com.google.ortools.util.OptionalBoolean getUseMakeInactive()
int getUseRelocateValue()
int getFirstSolutionStrategyValue()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstanceForType()
double getLogCostOffset()
double log_cost_offset = 29;
Builder setUseTspLnsValue(int value)
static final int USE_DEPTH_FIRST_SEARCH_FIELD_NUMBER
.lang.Deprecated static Value valueOf(int value)
UNSET
boolean hasLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
int getUseTspLnsValue()
com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder()
Builder clearUseMakeChainInactive()
.lang.Override Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
com.google.ortools.util.OptionalBoolean getUseInactiveLns()
Builder clearCheapestInsertionFarthestSeedsRatio()
Builder setUseCpValue(int value)
boolean getSavingsParallelRoutes()
double getLogCostScalingFactor()
Definition: Domain.java:9
com.google.ortools.util.OptionalBoolean getUseInactiveLns()
Builder setUseLinKernighanValue(int value)
Builder mergeLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators value)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override Builder clear()
Builder clearUseUnfilteredFirstSolutionStrategy()
UNRECOGNIZED
static final int USE_CROSS_EXCHANGE_FIELD_NUMBER
UNRECOGNIZED
com.google.ortools.util.OptionalBoolean getUseLinKernighan()
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder getLocalSearchOperatorsOrBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
int getUseCrossExchangeValue()
int getUseSwapActiveValue()
boolean hasLnsTimeLimit()
com.google.ortools.util.OptionalBoolean getUseRelocate()
com.google.protobuf.Duration getLnsTimeLimit()
Builder setUseRelocatePair(com.google.ortools.util.OptionalBoolean value)
int getUseTspOptValue()
Builder clearSolutionLimit()
Builder clearUseCp()
Builder clearNumberOfSolutionsToCollect()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstance()
static final int USE_RELOCATE_PAIR_FIELD_NUMBER
static com.google.protobuf.Parser< LocalSearchNeighborhoodOperators > parser()
Builder setUseTspOptValue(int value)
Builder setUseExtendedSwapActiveValue(int value)
com.google.ortools.util.OptionalBoolean getUseExchangeSubtrip()
com.google.ortools.util.OptionalBoolean getUseTspOpt()
int getUseFullPathLnsValue()
static final int LOG_SEARCH_FIELD_NUMBER
int getUseRelocateAndMakeActiveValue()
int getUseRelocateAndMakeActiveValue()
.lang.Deprecated static Value valueOf(int value)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstanceForType()
Builder setCheapestInsertionFarthestSeedsRatio(double value)
Builder setUseMakeInactive(com.google.ortools.util.OptionalBoolean value)
static final int SAVINGS_MAX_MEMORY_USAGE_BYTES_FIELD_NUMBER
Builder mergeTimeLimit(com.google.protobuf.Duration value)
double getCheapestInsertionNeighborsRatio()
com.google.ortools.util.OptionalBoolean getUseCrossExchange()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.ByteString data)
com.google.ortools.util.OptionalBoolean getUseRelocateNeighbors()
int getUseSwapActiveValue()
com.google.ortools.constraintsolver.FirstSolutionStrategy.Value getFirstSolutionStrategy()
com.google.ortools.util.OptionalBoolean getUseMakeChainInactive()
Builder clearUseDepthFirstSearch()
.lang.Override Builder clone()
Builder setUseCrossExchangeValue(int value)
boolean hasTimeLimit()
int getUseExchangeSubtripValue()
Builder setLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators value)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
int getUseExchangeValue()
Builder setUseCrossValue(int value)
static final int USE_EXCHANGE_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUseRelocateNeighbors()
.lang.Override Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
.lang.Override Builder toBuilder()
com.google.ortools.util.OptionalBoolean getUseRelocatePair()
static final int USE_RELOCATE_FIELD_NUMBER
com.google.ortools.util.OptionalBoolean getUsePathLns()
boolean getLogSearch()
Builder setUseExchangePairValue(int value)
int getUseTwoOptValue()
Builder setLogCostScalingFactor(double value)
Builder setUseNodePairSwapActiveValue(int value)
Builder clearSavingsMaxMemoryUsageBytes()
int getUseOrOptValue()
com.google.ortools.util.OptionalBoolean getUseRelocateSubtrip()