Reference

C++

Python

DotNET

Java Documentation

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  default: {
217  if (!parseUnknownField(
218  input, unknownFields, extensionRegistry, tag)) {
219  done = true;
220  }
221  break;
222  }
223  }
224  }
225  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
226  throw e.setUnfinishedMessage(this);
227  } catch (java.io.IOException e) {
228  throw new com.google.protobuf.InvalidProtocolBufferException(
229  e).setUnfinishedMessage(this);
230  } finally {
231  this.unknownFields = unknownFields.build();
232  makeExtensionsImmutable();
233  }
234  }
235  public static final com.google.protobuf.Descriptors.Descriptor
237  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
238  }
239 
240  @java.lang.Override
241  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
243  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
244  .ensureFieldAccessorsInitialized(
246  }
247 
249  // @@protoc_insertion_point(interface_extends:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
250  com.google.protobuf.MessageOrBuilder {
251 
267  int getUseRelocateValue();
284 
317 
346 
405 
444 
458  int getUseExchangeValue();
473 
502 
521 
537  int getUseCrossValue();
554 
571 
606 
623  int getUseTwoOptValue();
641 
659  int getUseOrOptValue();
678 
701 
714  int getUseTspOptValue();
728 
742  int getUseMakeActiveValue();
757 
792 
817 
844 
856  int getUseSwapActiveValue();
869 
904 
941 
956  int getUsePathLnsValue();
972 
989 
1002  int getUseTspLnsValue();
1016 
1026  int getUseInactiveLnsValue();
1037  }
1046  public static final class LocalSearchNeighborhoodOperators extends
1047  com.google.protobuf.GeneratedMessageV3 implements
1048  // @@protoc_insertion_point(message_implements:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
1050  private static final long serialVersionUID = 0L;
1051  // Use LocalSearchNeighborhoodOperators.newBuilder() to construct.
1052  private LocalSearchNeighborhoodOperators(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
1053  super(builder);
1054  }
1056  useRelocate_ = 0;
1057  useRelocatePair_ = 0;
1058  useLightRelocatePair_ = 0;
1059  useRelocateNeighbors_ = 0;
1060  useRelocateSubtrip_ = 0;
1061  useExchange_ = 0;
1062  useExchangePair_ = 0;
1063  useExchangeSubtrip_ = 0;
1064  useCross_ = 0;
1065  useCrossExchange_ = 0;
1066  useRelocateExpensiveChain_ = 0;
1067  useTwoOpt_ = 0;
1068  useOrOpt_ = 0;
1069  useLinKernighan_ = 0;
1070  useTspOpt_ = 0;
1071  useMakeActive_ = 0;
1072  useRelocateAndMakeActive_ = 0;
1073  useMakeInactive_ = 0;
1074  useMakeChainInactive_ = 0;
1075  useSwapActive_ = 0;
1076  useExtendedSwapActive_ = 0;
1077  useNodePairSwapActive_ = 0;
1078  usePathLns_ = 0;
1079  useFullPathLns_ = 0;
1080  useTspLns_ = 0;
1081  useInactiveLns_ = 0;
1082  }
1083 
1084  @java.lang.Override
1085  @SuppressWarnings({"unused"})
1086  protected java.lang.Object newInstance(
1087  UnusedPrivateParameter unused) {
1088  return new LocalSearchNeighborhoodOperators();
1089  }
1090 
1091  @java.lang.Override
1092  public final com.google.protobuf.UnknownFieldSet
1094  return this.unknownFields;
1095  }
1097  com.google.protobuf.CodedInputStream input,
1098  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1099  throws com.google.protobuf.InvalidProtocolBufferException {
1100  this();
1101  if (extensionRegistry == null) {
1102  throw new java.lang.NullPointerException();
1103  }
1104  com.google.protobuf.UnknownFieldSet.Builder unknownFields =
1105  com.google.protobuf.UnknownFieldSet.newBuilder();
1106  try {
1107  boolean done = false;
1108  while (!done) {
1109  int tag = input.readTag();
1110  switch (tag) {
1111  case 0:
1112  done = true;
1113  break;
1114  case 8: {
1115  int rawValue = input.readEnum();
1116 
1117  useRelocate_ = rawValue;
1118  break;
1119  }
1120  case 16: {
1121  int rawValue = input.readEnum();
1122 
1123  useRelocatePair_ = rawValue;
1124  break;
1125  }
1126  case 24: {
1127  int rawValue = input.readEnum();
1128 
1129  useRelocateNeighbors_ = rawValue;
1130  break;
1131  }
1132  case 32: {
1133  int rawValue = input.readEnum();
1134 
1135  useExchange_ = rawValue;
1136  break;
1137  }
1138  case 40: {
1139  int rawValue = input.readEnum();
1140 
1141  useCross_ = rawValue;
1142  break;
1143  }
1144  case 48: {
1145  int rawValue = input.readEnum();
1146 
1147  useCrossExchange_ = rawValue;
1148  break;
1149  }
1150  case 56: {
1151  int rawValue = input.readEnum();
1152 
1153  useTwoOpt_ = rawValue;
1154  break;
1155  }
1156  case 64: {
1157  int rawValue = input.readEnum();
1158 
1159  useOrOpt_ = rawValue;
1160  break;
1161  }
1162  case 72: {
1163  int rawValue = input.readEnum();
1164 
1165  useLinKernighan_ = rawValue;
1166  break;
1167  }
1168  case 80: {
1169  int rawValue = input.readEnum();
1170 
1171  useTspOpt_ = rawValue;
1172  break;
1173  }
1174  case 88: {
1175  int rawValue = input.readEnum();
1176 
1177  useMakeActive_ = rawValue;
1178  break;
1179  }
1180  case 96: {
1181  int rawValue = input.readEnum();
1182 
1183  useMakeInactive_ = rawValue;
1184  break;
1185  }
1186  case 104: {
1187  int rawValue = input.readEnum();
1188 
1189  useMakeChainInactive_ = rawValue;
1190  break;
1191  }
1192  case 112: {
1193  int rawValue = input.readEnum();
1194 
1195  useSwapActive_ = rawValue;
1196  break;
1197  }
1198  case 120: {
1199  int rawValue = input.readEnum();
1200 
1201  useExtendedSwapActive_ = rawValue;
1202  break;
1203  }
1204  case 128: {
1205  int rawValue = input.readEnum();
1206 
1207  usePathLns_ = rawValue;
1208  break;
1209  }
1210  case 136: {
1211  int rawValue = input.readEnum();
1212 
1213  useFullPathLns_ = rawValue;
1214  break;
1215  }
1216  case 144: {
1217  int rawValue = input.readEnum();
1218 
1219  useTspLns_ = rawValue;
1220  break;
1221  }
1222  case 152: {
1223  int rawValue = input.readEnum();
1224 
1225  useInactiveLns_ = rawValue;
1226  break;
1227  }
1228  case 160: {
1229  int rawValue = input.readEnum();
1230 
1231  useNodePairSwapActive_ = rawValue;
1232  break;
1233  }
1234  case 168: {
1235  int rawValue = input.readEnum();
1236 
1237  useRelocateAndMakeActive_ = rawValue;
1238  break;
1239  }
1240  case 176: {
1241  int rawValue = input.readEnum();
1242 
1243  useExchangePair_ = rawValue;
1244  break;
1245  }
1246  case 184: {
1247  int rawValue = input.readEnum();
1248 
1249  useRelocateExpensiveChain_ = rawValue;
1250  break;
1251  }
1252  case 192: {
1253  int rawValue = input.readEnum();
1254 
1255  useLightRelocatePair_ = rawValue;
1256  break;
1257  }
1258  case 200: {
1259  int rawValue = input.readEnum();
1260 
1261  useRelocateSubtrip_ = rawValue;
1262  break;
1263  }
1264  case 208: {
1265  int rawValue = input.readEnum();
1266 
1267  useExchangeSubtrip_ = rawValue;
1268  break;
1269  }
1270  default: {
1271  if (!parseUnknownField(
1272  input, unknownFields, extensionRegistry, tag)) {
1273  done = true;
1274  }
1275  break;
1276  }
1277  }
1278  }
1279  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1280  throw e.setUnfinishedMessage(this);
1281  } catch (java.io.IOException e) {
1282  throw new com.google.protobuf.InvalidProtocolBufferException(
1283  e).setUnfinishedMessage(this);
1284  } finally {
1285  this.unknownFields = unknownFields.build();
1286  makeExtensionsImmutable();
1287  }
1288  }
1289  public static final com.google.protobuf.Descriptors.Descriptor
1291  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
1292  }
1293 
1294  @java.lang.Override
1295  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
1297  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
1298  .ensureFieldAccessorsInitialized(
1300  }
1301 
1302  public static final int USE_RELOCATE_FIELD_NUMBER = 1;
1303  private int useRelocate_;
1319  public int getUseRelocateValue() {
1320  return useRelocate_;
1321  }
1338  @SuppressWarnings("deprecation")
1340  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1341  }
1342 
1343  public static final int USE_RELOCATE_PAIR_FIELD_NUMBER = 2;
1344  private int useRelocatePair_;
1361  return useRelocatePair_;
1362  }
1379  @SuppressWarnings("deprecation")
1381  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1382  }
1383 
1384  public static final int USE_LIGHT_RELOCATE_PAIR_FIELD_NUMBER = 24;
1385  private int useLightRelocatePair_;
1400  return useLightRelocatePair_;
1401  }
1416  @SuppressWarnings("deprecation")
1418  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1419  }
1420 
1421  public static final int USE_RELOCATE_NEIGHBORS_FIELD_NUMBER = 3;
1422  private int useRelocateNeighbors_;
1452  return useRelocateNeighbors_;
1453  }
1483  @SuppressWarnings("deprecation")
1485  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1486  }
1487 
1488  public static final int USE_RELOCATE_SUBTRIP_FIELD_NUMBER = 25;
1489  private int useRelocateSubtrip_;
1509  return useRelocateSubtrip_;
1510  }
1530  @SuppressWarnings("deprecation")
1532  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1533  }
1534 
1535  public static final int USE_EXCHANGE_FIELD_NUMBER = 4;
1536  private int useExchange_;
1550  public int getUseExchangeValue() {
1551  return useExchange_;
1552  }
1567  @SuppressWarnings("deprecation")
1569  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1570  }
1571 
1572  public static final int USE_EXCHANGE_PAIR_FIELD_NUMBER = 22;
1573  private int useExchangePair_;
1588  return useExchangePair_;
1589  }
1604  @SuppressWarnings("deprecation")
1606  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1607  }
1608 
1609  public static final int USE_EXCHANGE_SUBTRIP_FIELD_NUMBER = 26;
1610  private int useExchangeSubtrip_;
1620  return useExchangeSubtrip_;
1621  }
1631  @SuppressWarnings("deprecation")
1633  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1634  }
1635 
1636  public static final int USE_CROSS_FIELD_NUMBER = 5;
1637  private int useCross_;
1653  public int getUseCrossValue() {
1654  return useCross_;
1655  }
1672  @SuppressWarnings("deprecation")
1674  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1675  }
1676 
1677  public static final int USE_CROSS_EXCHANGE_FIELD_NUMBER = 6;
1678  private int useCrossExchange_;
1687  return useCrossExchange_;
1688  }
1697  @SuppressWarnings("deprecation")
1699  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1700  }
1701 
1702  public static final int USE_RELOCATE_EXPENSIVE_CHAIN_FIELD_NUMBER = 23;
1703  private int useRelocateExpensiveChain_;
1721  return useRelocateExpensiveChain_;
1722  }
1740  @SuppressWarnings("deprecation")
1741  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateExpensiveChain_);
1742  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1743  }
1744 
1745  public static final int USE_TWO_OPT_FIELD_NUMBER = 7;
1746  private int useTwoOpt_;
1763  public int getUseTwoOptValue() {
1764  return useTwoOpt_;
1765  }
1783  @SuppressWarnings("deprecation")
1785  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1786  }
1787 
1788  public static final int USE_OR_OPT_FIELD_NUMBER = 8;
1789  private int useOrOpt_;
1807  public int getUseOrOptValue() {
1808  return useOrOpt_;
1809  }
1828  @SuppressWarnings("deprecation")
1830  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1831  }
1832 
1833  public static final int USE_LIN_KERNIGHAN_FIELD_NUMBER = 9;
1834  private int useLinKernighan_;
1846  return useLinKernighan_;
1847  }
1859  @SuppressWarnings("deprecation")
1861  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1862  }
1863 
1864  public static final int USE_TSP_OPT_FIELD_NUMBER = 10;
1865  private int useTspOpt_;
1878  public int getUseTspOptValue() {
1879  return useTspOpt_;
1880  }
1894  @SuppressWarnings("deprecation")
1896  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1897  }
1898 
1899  public static final int USE_MAKE_ACTIVE_FIELD_NUMBER = 11;
1900  private int useMakeActive_;
1914  public int getUseMakeActiveValue() {
1915  return useMakeActive_;
1916  }
1931  @SuppressWarnings("deprecation")
1933  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1934  }
1935 
1936  public static final int USE_RELOCATE_AND_MAKE_ACTIVE_FIELD_NUMBER = 21;
1937  private int useRelocateAndMakeActive_;
1955  return useRelocateAndMakeActive_;
1956  }
1974  @SuppressWarnings("deprecation")
1975  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateAndMakeActive_);
1976  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
1977  }
1978 
1979  public static final int USE_MAKE_INACTIVE_FIELD_NUMBER = 12;
1980  private int useMakeInactive_;
1993  return useMakeInactive_;
1994  }
2007  @SuppressWarnings("deprecation")
2009  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2010  }
2011 
2012  public static final int USE_MAKE_CHAIN_INACTIVE_FIELD_NUMBER = 13;
2013  private int useMakeChainInactive_;
2027  return useMakeChainInactive_;
2028  }
2042  @SuppressWarnings("deprecation")
2044  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2045  }
2046 
2047  public static final int USE_SWAP_ACTIVE_FIELD_NUMBER = 14;
2048  private int useSwapActive_;
2060  public int getUseSwapActiveValue() {
2061  return useSwapActive_;
2062  }
2075  @SuppressWarnings("deprecation")
2077  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2078  }
2079 
2080  public static final int USE_EXTENDED_SWAP_ACTIVE_FIELD_NUMBER = 15;
2081  private int useExtendedSwapActive_;
2099  return useExtendedSwapActive_;
2100  }
2118  @SuppressWarnings("deprecation")
2119  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useExtendedSwapActive_);
2120  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2121  }
2122 
2123  public static final int USE_NODE_PAIR_SWAP_ACTIVE_FIELD_NUMBER = 20;
2124  private int useNodePairSwapActive_;
2143  return useNodePairSwapActive_;
2144  }
2163  @SuppressWarnings("deprecation")
2164  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useNodePairSwapActive_);
2165  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2166  }
2167 
2168  public static final int USE_PATH_LNS_FIELD_NUMBER = 16;
2169  private int usePathLns_;
2184  public int getUsePathLnsValue() {
2185  return usePathLns_;
2186  }
2202  @SuppressWarnings("deprecation")
2204  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2205  }
2206 
2207  public static final int USE_FULL_PATH_LNS_FIELD_NUMBER = 17;
2208  private int useFullPathLns_;
2216  public int getUseFullPathLnsValue() {
2217  return useFullPathLns_;
2218  }
2227  @SuppressWarnings("deprecation")
2229  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2230  }
2231 
2232  public static final int USE_TSP_LNS_FIELD_NUMBER = 18;
2233  private int useTspLns_;
2246  public int getUseTspLnsValue() {
2247  return useTspLns_;
2248  }
2262  @SuppressWarnings("deprecation")
2264  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2265  }
2266 
2267  public static final int USE_INACTIVE_LNS_FIELD_NUMBER = 19;
2268  private int useInactiveLns_;
2278  public int getUseInactiveLnsValue() {
2279  return useInactiveLns_;
2280  }
2291  @SuppressWarnings("deprecation")
2293  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
2294  }
2295 
2296  private byte memoizedIsInitialized = -1;
2297  @java.lang.Override
2298  public final boolean isInitialized() {
2299  byte isInitialized = memoizedIsInitialized;
2300  if (isInitialized == 1) return true;
2301  if (isInitialized == 0) return false;
2302 
2303  memoizedIsInitialized = 1;
2304  return true;
2305  }
2306 
2307  @java.lang.Override
2308  public void writeTo(com.google.protobuf.CodedOutputStream output)
2309  throws java.io.IOException {
2310  if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2311  output.writeEnum(1, useRelocate_);
2312  }
2313  if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2314  output.writeEnum(2, useRelocatePair_);
2315  }
2316  if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2317  output.writeEnum(3, useRelocateNeighbors_);
2318  }
2319  if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2320  output.writeEnum(4, useExchange_);
2321  }
2322  if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2323  output.writeEnum(5, useCross_);
2324  }
2325  if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2326  output.writeEnum(6, useCrossExchange_);
2327  }
2328  if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2329  output.writeEnum(7, useTwoOpt_);
2330  }
2331  if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2332  output.writeEnum(8, useOrOpt_);
2333  }
2334  if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2335  output.writeEnum(9, useLinKernighan_);
2336  }
2337  if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2338  output.writeEnum(10, useTspOpt_);
2339  }
2340  if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2341  output.writeEnum(11, useMakeActive_);
2342  }
2343  if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2344  output.writeEnum(12, useMakeInactive_);
2345  }
2346  if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2347  output.writeEnum(13, useMakeChainInactive_);
2348  }
2349  if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2350  output.writeEnum(14, useSwapActive_);
2351  }
2352  if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2353  output.writeEnum(15, useExtendedSwapActive_);
2354  }
2355  if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2356  output.writeEnum(16, usePathLns_);
2357  }
2358  if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2359  output.writeEnum(17, useFullPathLns_);
2360  }
2361  if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2362  output.writeEnum(18, useTspLns_);
2363  }
2364  if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2365  output.writeEnum(19, useInactiveLns_);
2366  }
2367  if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2368  output.writeEnum(20, useNodePairSwapActive_);
2369  }
2370  if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2371  output.writeEnum(21, useRelocateAndMakeActive_);
2372  }
2373  if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2374  output.writeEnum(22, useExchangePair_);
2375  }
2376  if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2377  output.writeEnum(23, useRelocateExpensiveChain_);
2378  }
2379  if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2380  output.writeEnum(24, useLightRelocatePair_);
2381  }
2382  if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2383  output.writeEnum(25, useRelocateSubtrip_);
2384  }
2385  if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2386  output.writeEnum(26, useExchangeSubtrip_);
2387  }
2388  unknownFields.writeTo(output);
2389  }
2390 
2391  @java.lang.Override
2392  public int getSerializedSize() {
2393  int size = memoizedSize;
2394  if (size != -1) return size;
2395 
2396  size = 0;
2397  if (useRelocate_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2398  size += com.google.protobuf.CodedOutputStream
2399  .computeEnumSize(1, useRelocate_);
2400  }
2401  if (useRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2402  size += com.google.protobuf.CodedOutputStream
2403  .computeEnumSize(2, useRelocatePair_);
2404  }
2405  if (useRelocateNeighbors_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2406  size += com.google.protobuf.CodedOutputStream
2407  .computeEnumSize(3, useRelocateNeighbors_);
2408  }
2409  if (useExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2410  size += com.google.protobuf.CodedOutputStream
2411  .computeEnumSize(4, useExchange_);
2412  }
2413  if (useCross_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2414  size += com.google.protobuf.CodedOutputStream
2415  .computeEnumSize(5, useCross_);
2416  }
2417  if (useCrossExchange_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2418  size += com.google.protobuf.CodedOutputStream
2419  .computeEnumSize(6, useCrossExchange_);
2420  }
2421  if (useTwoOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2422  size += com.google.protobuf.CodedOutputStream
2423  .computeEnumSize(7, useTwoOpt_);
2424  }
2425  if (useOrOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2426  size += com.google.protobuf.CodedOutputStream
2427  .computeEnumSize(8, useOrOpt_);
2428  }
2429  if (useLinKernighan_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2430  size += com.google.protobuf.CodedOutputStream
2431  .computeEnumSize(9, useLinKernighan_);
2432  }
2433  if (useTspOpt_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2434  size += com.google.protobuf.CodedOutputStream
2435  .computeEnumSize(10, useTspOpt_);
2436  }
2437  if (useMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2438  size += com.google.protobuf.CodedOutputStream
2439  .computeEnumSize(11, useMakeActive_);
2440  }
2441  if (useMakeInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2442  size += com.google.protobuf.CodedOutputStream
2443  .computeEnumSize(12, useMakeInactive_);
2444  }
2445  if (useMakeChainInactive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2446  size += com.google.protobuf.CodedOutputStream
2447  .computeEnumSize(13, useMakeChainInactive_);
2448  }
2449  if (useSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2450  size += com.google.protobuf.CodedOutputStream
2451  .computeEnumSize(14, useSwapActive_);
2452  }
2453  if (useExtendedSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2454  size += com.google.protobuf.CodedOutputStream
2455  .computeEnumSize(15, useExtendedSwapActive_);
2456  }
2457  if (usePathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2458  size += com.google.protobuf.CodedOutputStream
2459  .computeEnumSize(16, usePathLns_);
2460  }
2461  if (useFullPathLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2462  size += com.google.protobuf.CodedOutputStream
2463  .computeEnumSize(17, useFullPathLns_);
2464  }
2465  if (useTspLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2466  size += com.google.protobuf.CodedOutputStream
2467  .computeEnumSize(18, useTspLns_);
2468  }
2469  if (useInactiveLns_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2470  size += com.google.protobuf.CodedOutputStream
2471  .computeEnumSize(19, useInactiveLns_);
2472  }
2473  if (useNodePairSwapActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2474  size += com.google.protobuf.CodedOutputStream
2475  .computeEnumSize(20, useNodePairSwapActive_);
2476  }
2477  if (useRelocateAndMakeActive_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2478  size += com.google.protobuf.CodedOutputStream
2479  .computeEnumSize(21, useRelocateAndMakeActive_);
2480  }
2481  if (useExchangePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2482  size += com.google.protobuf.CodedOutputStream
2483  .computeEnumSize(22, useExchangePair_);
2484  }
2485  if (useRelocateExpensiveChain_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2486  size += com.google.protobuf.CodedOutputStream
2487  .computeEnumSize(23, useRelocateExpensiveChain_);
2488  }
2489  if (useLightRelocatePair_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2490  size += com.google.protobuf.CodedOutputStream
2491  .computeEnumSize(24, useLightRelocatePair_);
2492  }
2493  if (useRelocateSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2494  size += com.google.protobuf.CodedOutputStream
2495  .computeEnumSize(25, useRelocateSubtrip_);
2496  }
2497  if (useExchangeSubtrip_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
2498  size += com.google.protobuf.CodedOutputStream
2499  .computeEnumSize(26, useExchangeSubtrip_);
2500  }
2501  size += unknownFields.getSerializedSize();
2502  memoizedSize = size;
2503  return size;
2504  }
2505 
2506  @java.lang.Override
2507  public boolean equals(final java.lang.Object obj) {
2508  if (obj == this) {
2509  return true;
2510  }
2512  return super.equals(obj);
2513  }
2515 
2516  if (useRelocate_ != other.useRelocate_) return false;
2517  if (useRelocatePair_ != other.useRelocatePair_) return false;
2518  if (useLightRelocatePair_ != other.useLightRelocatePair_) return false;
2519  if (useRelocateNeighbors_ != other.useRelocateNeighbors_) return false;
2520  if (useRelocateSubtrip_ != other.useRelocateSubtrip_) return false;
2521  if (useExchange_ != other.useExchange_) return false;
2522  if (useExchangePair_ != other.useExchangePair_) return false;
2523  if (useExchangeSubtrip_ != other.useExchangeSubtrip_) return false;
2524  if (useCross_ != other.useCross_) return false;
2525  if (useCrossExchange_ != other.useCrossExchange_) return false;
2526  if (useRelocateExpensiveChain_ != other.useRelocateExpensiveChain_) return false;
2527  if (useTwoOpt_ != other.useTwoOpt_) return false;
2528  if (useOrOpt_ != other.useOrOpt_) return false;
2529  if (useLinKernighan_ != other.useLinKernighan_) return false;
2530  if (useTspOpt_ != other.useTspOpt_) return false;
2531  if (useMakeActive_ != other.useMakeActive_) return false;
2532  if (useRelocateAndMakeActive_ != other.useRelocateAndMakeActive_) return false;
2533  if (useMakeInactive_ != other.useMakeInactive_) return false;
2534  if (useMakeChainInactive_ != other.useMakeChainInactive_) return false;
2535  if (useSwapActive_ != other.useSwapActive_) return false;
2536  if (useExtendedSwapActive_ != other.useExtendedSwapActive_) return false;
2537  if (useNodePairSwapActive_ != other.useNodePairSwapActive_) return false;
2538  if (usePathLns_ != other.usePathLns_) return false;
2539  if (useFullPathLns_ != other.useFullPathLns_) return false;
2540  if (useTspLns_ != other.useTspLns_) return false;
2541  if (useInactiveLns_ != other.useInactiveLns_) return false;
2542  if (!unknownFields.equals(other.unknownFields)) return false;
2543  return true;
2544  }
2545 
2546  @java.lang.Override
2547  public int hashCode() {
2548  if (memoizedHashCode != 0) {
2549  return memoizedHashCode;
2550  }
2551  int hash = 41;
2552  hash = (19 * hash) + getDescriptor().hashCode();
2553  hash = (37 * hash) + USE_RELOCATE_FIELD_NUMBER;
2554  hash = (53 * hash) + useRelocate_;
2555  hash = (37 * hash) + USE_RELOCATE_PAIR_FIELD_NUMBER;
2556  hash = (53 * hash) + useRelocatePair_;
2557  hash = (37 * hash) + USE_LIGHT_RELOCATE_PAIR_FIELD_NUMBER;
2558  hash = (53 * hash) + useLightRelocatePair_;
2559  hash = (37 * hash) + USE_RELOCATE_NEIGHBORS_FIELD_NUMBER;
2560  hash = (53 * hash) + useRelocateNeighbors_;
2561  hash = (37 * hash) + USE_RELOCATE_SUBTRIP_FIELD_NUMBER;
2562  hash = (53 * hash) + useRelocateSubtrip_;
2563  hash = (37 * hash) + USE_EXCHANGE_FIELD_NUMBER;
2564  hash = (53 * hash) + useExchange_;
2565  hash = (37 * hash) + USE_EXCHANGE_PAIR_FIELD_NUMBER;
2566  hash = (53 * hash) + useExchangePair_;
2567  hash = (37 * hash) + USE_EXCHANGE_SUBTRIP_FIELD_NUMBER;
2568  hash = (53 * hash) + useExchangeSubtrip_;
2569  hash = (37 * hash) + USE_CROSS_FIELD_NUMBER;
2570  hash = (53 * hash) + useCross_;
2571  hash = (37 * hash) + USE_CROSS_EXCHANGE_FIELD_NUMBER;
2572  hash = (53 * hash) + useCrossExchange_;
2573  hash = (37 * hash) + USE_RELOCATE_EXPENSIVE_CHAIN_FIELD_NUMBER;
2574  hash = (53 * hash) + useRelocateExpensiveChain_;
2575  hash = (37 * hash) + USE_TWO_OPT_FIELD_NUMBER;
2576  hash = (53 * hash) + useTwoOpt_;
2577  hash = (37 * hash) + USE_OR_OPT_FIELD_NUMBER;
2578  hash = (53 * hash) + useOrOpt_;
2579  hash = (37 * hash) + USE_LIN_KERNIGHAN_FIELD_NUMBER;
2580  hash = (53 * hash) + useLinKernighan_;
2581  hash = (37 * hash) + USE_TSP_OPT_FIELD_NUMBER;
2582  hash = (53 * hash) + useTspOpt_;
2583  hash = (37 * hash) + USE_MAKE_ACTIVE_FIELD_NUMBER;
2584  hash = (53 * hash) + useMakeActive_;
2585  hash = (37 * hash) + USE_RELOCATE_AND_MAKE_ACTIVE_FIELD_NUMBER;
2586  hash = (53 * hash) + useRelocateAndMakeActive_;
2587  hash = (37 * hash) + USE_MAKE_INACTIVE_FIELD_NUMBER;
2588  hash = (53 * hash) + useMakeInactive_;
2589  hash = (37 * hash) + USE_MAKE_CHAIN_INACTIVE_FIELD_NUMBER;
2590  hash = (53 * hash) + useMakeChainInactive_;
2591  hash = (37 * hash) + USE_SWAP_ACTIVE_FIELD_NUMBER;
2592  hash = (53 * hash) + useSwapActive_;
2593  hash = (37 * hash) + USE_EXTENDED_SWAP_ACTIVE_FIELD_NUMBER;
2594  hash = (53 * hash) + useExtendedSwapActive_;
2595  hash = (37 * hash) + USE_NODE_PAIR_SWAP_ACTIVE_FIELD_NUMBER;
2596  hash = (53 * hash) + useNodePairSwapActive_;
2597  hash = (37 * hash) + USE_PATH_LNS_FIELD_NUMBER;
2598  hash = (53 * hash) + usePathLns_;
2599  hash = (37 * hash) + USE_FULL_PATH_LNS_FIELD_NUMBER;
2600  hash = (53 * hash) + useFullPathLns_;
2601  hash = (37 * hash) + USE_TSP_LNS_FIELD_NUMBER;
2602  hash = (53 * hash) + useTspLns_;
2603  hash = (37 * hash) + USE_INACTIVE_LNS_FIELD_NUMBER;
2604  hash = (53 * hash) + useInactiveLns_;
2605  hash = (29 * hash) + unknownFields.hashCode();
2606  memoizedHashCode = hash;
2607  return hash;
2608  }
2609 
2611  java.nio.ByteBuffer data)
2612  throws com.google.protobuf.InvalidProtocolBufferException {
2613  return PARSER.parseFrom(data);
2614  }
2616  java.nio.ByteBuffer data,
2617  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2618  throws com.google.protobuf.InvalidProtocolBufferException {
2619  return PARSER.parseFrom(data, extensionRegistry);
2620  }
2622  com.google.protobuf.ByteString data)
2623  throws com.google.protobuf.InvalidProtocolBufferException {
2624  return PARSER.parseFrom(data);
2625  }
2627  com.google.protobuf.ByteString data,
2628  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2629  throws com.google.protobuf.InvalidProtocolBufferException {
2630  return PARSER.parseFrom(data, extensionRegistry);
2631  }
2633  throws com.google.protobuf.InvalidProtocolBufferException {
2634  return PARSER.parseFrom(data);
2635  }
2637  byte[] data,
2638  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2639  throws com.google.protobuf.InvalidProtocolBufferException {
2640  return PARSER.parseFrom(data, extensionRegistry);
2641  }
2643  throws java.io.IOException {
2644  return com.google.protobuf.GeneratedMessageV3
2645  .parseWithIOException(PARSER, input);
2646  }
2648  java.io.InputStream input,
2649  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2650  throws java.io.IOException {
2651  return com.google.protobuf.GeneratedMessageV3
2652  .parseWithIOException(PARSER, input, extensionRegistry);
2653  }
2655  throws java.io.IOException {
2656  return com.google.protobuf.GeneratedMessageV3
2657  .parseDelimitedWithIOException(PARSER, input);
2658  }
2660  java.io.InputStream input,
2661  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2662  throws java.io.IOException {
2663  return com.google.protobuf.GeneratedMessageV3
2664  .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2665  }
2667  com.google.protobuf.CodedInputStream input)
2668  throws java.io.IOException {
2669  return com.google.protobuf.GeneratedMessageV3
2670  .parseWithIOException(PARSER, input);
2671  }
2673  com.google.protobuf.CodedInputStream input,
2674  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2675  throws java.io.IOException {
2676  return com.google.protobuf.GeneratedMessageV3
2677  .parseWithIOException(PARSER, input, extensionRegistry);
2678  }
2679 
2680  @java.lang.Override
2681  public Builder newBuilderForType() { return newBuilder(); }
2682  public static Builder newBuilder() {
2683  return DEFAULT_INSTANCE.toBuilder();
2684  }
2686  return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2687  }
2688  @java.lang.Override
2689  public Builder toBuilder() {
2690  return this == DEFAULT_INSTANCE
2691  ? new Builder() : new Builder().mergeFrom(this);
2692  }
2693 
2694  @java.lang.Override
2696  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2697  Builder builder = new Builder(parent);
2698  return builder;
2699  }
2708  public static final class Builder extends
2709  com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
2710  // @@protoc_insertion_point(builder_implements:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
2712  public static final com.google.protobuf.Descriptors.Descriptor
2714  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
2715  }
2716 
2717  @java.lang.Override
2718  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
2720  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_fieldAccessorTable
2721  .ensureFieldAccessorsInitialized(
2723  }
2724 
2725  // Construct using com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.newBuilder()
2726  private Builder() {
2727  maybeForceBuilderInitialization();
2728  }
2729 
2730  private Builder(
2731  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2732  super(parent);
2733  maybeForceBuilderInitialization();
2734  }
2735  private void maybeForceBuilderInitialization() {
2736  if (com.google.protobuf.GeneratedMessageV3
2737  .alwaysUseFieldBuilders) {
2738  }
2739  }
2740  @java.lang.Override
2741  public Builder clear() {
2742  super.clear();
2743  useRelocate_ = 0;
2744 
2745  useRelocatePair_ = 0;
2746 
2747  useLightRelocatePair_ = 0;
2748 
2749  useRelocateNeighbors_ = 0;
2750 
2751  useRelocateSubtrip_ = 0;
2752 
2753  useExchange_ = 0;
2754 
2755  useExchangePair_ = 0;
2756 
2757  useExchangeSubtrip_ = 0;
2758 
2759  useCross_ = 0;
2760 
2761  useCrossExchange_ = 0;
2762 
2763  useRelocateExpensiveChain_ = 0;
2764 
2765  useTwoOpt_ = 0;
2766 
2767  useOrOpt_ = 0;
2768 
2769  useLinKernighan_ = 0;
2770 
2771  useTspOpt_ = 0;
2772 
2773  useMakeActive_ = 0;
2774 
2775  useRelocateAndMakeActive_ = 0;
2776 
2777  useMakeInactive_ = 0;
2778 
2779  useMakeChainInactive_ = 0;
2780 
2781  useSwapActive_ = 0;
2782 
2783  useExtendedSwapActive_ = 0;
2784 
2785  useNodePairSwapActive_ = 0;
2786 
2787  usePathLns_ = 0;
2788 
2789  useFullPathLns_ = 0;
2790 
2791  useTspLns_ = 0;
2792 
2793  useInactiveLns_ = 0;
2794 
2795  return this;
2796  }
2797 
2798  @java.lang.Override
2799  public com.google.protobuf.Descriptors.Descriptor
2801  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_LocalSearchNeighborhoodOperators_descriptor;
2802  }
2803 
2804  @java.lang.Override
2807  }
2808 
2809  @java.lang.Override
2812  if (!result.isInitialized()) {
2813  throw newUninitializedMessageException(result);
2814  }
2815  return result;
2816  }
2817 
2818  @java.lang.Override
2821  result.useRelocate_ = useRelocate_;
2822  result.useRelocatePair_ = useRelocatePair_;
2823  result.useLightRelocatePair_ = useLightRelocatePair_;
2824  result.useRelocateNeighbors_ = useRelocateNeighbors_;
2825  result.useRelocateSubtrip_ = useRelocateSubtrip_;
2826  result.useExchange_ = useExchange_;
2827  result.useExchangePair_ = useExchangePair_;
2828  result.useExchangeSubtrip_ = useExchangeSubtrip_;
2829  result.useCross_ = useCross_;
2830  result.useCrossExchange_ = useCrossExchange_;
2831  result.useRelocateExpensiveChain_ = useRelocateExpensiveChain_;
2832  result.useTwoOpt_ = useTwoOpt_;
2833  result.useOrOpt_ = useOrOpt_;
2834  result.useLinKernighan_ = useLinKernighan_;
2835  result.useTspOpt_ = useTspOpt_;
2836  result.useMakeActive_ = useMakeActive_;
2837  result.useRelocateAndMakeActive_ = useRelocateAndMakeActive_;
2838  result.useMakeInactive_ = useMakeInactive_;
2839  result.useMakeChainInactive_ = useMakeChainInactive_;
2840  result.useSwapActive_ = useSwapActive_;
2841  result.useExtendedSwapActive_ = useExtendedSwapActive_;
2842  result.useNodePairSwapActive_ = useNodePairSwapActive_;
2843  result.usePathLns_ = usePathLns_;
2844  result.useFullPathLns_ = useFullPathLns_;
2845  result.useTspLns_ = useTspLns_;
2846  result.useInactiveLns_ = useInactiveLns_;
2847  onBuilt();
2848  return result;
2849  }
2850 
2851  @java.lang.Override
2852  public Builder clone() {
2853  return super.clone();
2854  }
2855  @java.lang.Override
2857  com.google.protobuf.Descriptors.FieldDescriptor field,
2858  java.lang.Object value) {
2859  return super.setField(field, value);
2860  }
2861  @java.lang.Override
2863  com.google.protobuf.Descriptors.FieldDescriptor field) {
2864  return super.clearField(field);
2865  }
2866  @java.lang.Override
2868  com.google.protobuf.Descriptors.OneofDescriptor oneof) {
2869  return super.clearOneof(oneof);
2870  }
2871  @java.lang.Override
2873  com.google.protobuf.Descriptors.FieldDescriptor field,
2874  int index, java.lang.Object value) {
2875  return super.setRepeatedField(field, index, value);
2876  }
2877  @java.lang.Override
2879  com.google.protobuf.Descriptors.FieldDescriptor field,
2880  java.lang.Object value) {
2881  return super.addRepeatedField(field, value);
2882  }
2883  @java.lang.Override
2884  public Builder mergeFrom(com.google.protobuf.Message other) {
2887  } else {
2888  super.mergeFrom(other);
2889  return this;
2890  }
2891  }
2892 
2895  if (other.useRelocate_ != 0) {
2896  setUseRelocateValue(other.getUseRelocateValue());
2897  }
2898  if (other.useRelocatePair_ != 0) {
2899  setUseRelocatePairValue(other.getUseRelocatePairValue());
2900  }
2901  if (other.useLightRelocatePair_ != 0) {
2902  setUseLightRelocatePairValue(other.getUseLightRelocatePairValue());
2903  }
2904  if (other.useRelocateNeighbors_ != 0) {
2905  setUseRelocateNeighborsValue(other.getUseRelocateNeighborsValue());
2906  }
2907  if (other.useRelocateSubtrip_ != 0) {
2908  setUseRelocateSubtripValue(other.getUseRelocateSubtripValue());
2909  }
2910  if (other.useExchange_ != 0) {
2911  setUseExchangeValue(other.getUseExchangeValue());
2912  }
2913  if (other.useExchangePair_ != 0) {
2914  setUseExchangePairValue(other.getUseExchangePairValue());
2915  }
2916  if (other.useExchangeSubtrip_ != 0) {
2917  setUseExchangeSubtripValue(other.getUseExchangeSubtripValue());
2918  }
2919  if (other.useCross_ != 0) {
2920  setUseCrossValue(other.getUseCrossValue());
2921  }
2922  if (other.useCrossExchange_ != 0) {
2923  setUseCrossExchangeValue(other.getUseCrossExchangeValue());
2924  }
2925  if (other.useRelocateExpensiveChain_ != 0) {
2926  setUseRelocateExpensiveChainValue(other.getUseRelocateExpensiveChainValue());
2927  }
2928  if (other.useTwoOpt_ != 0) {
2929  setUseTwoOptValue(other.getUseTwoOptValue());
2930  }
2931  if (other.useOrOpt_ != 0) {
2932  setUseOrOptValue(other.getUseOrOptValue());
2933  }
2934  if (other.useLinKernighan_ != 0) {
2935  setUseLinKernighanValue(other.getUseLinKernighanValue());
2936  }
2937  if (other.useTspOpt_ != 0) {
2938  setUseTspOptValue(other.getUseTspOptValue());
2939  }
2940  if (other.useMakeActive_ != 0) {
2941  setUseMakeActiveValue(other.getUseMakeActiveValue());
2942  }
2943  if (other.useRelocateAndMakeActive_ != 0) {
2944  setUseRelocateAndMakeActiveValue(other.getUseRelocateAndMakeActiveValue());
2945  }
2946  if (other.useMakeInactive_ != 0) {
2947  setUseMakeInactiveValue(other.getUseMakeInactiveValue());
2948  }
2949  if (other.useMakeChainInactive_ != 0) {
2950  setUseMakeChainInactiveValue(other.getUseMakeChainInactiveValue());
2951  }
2952  if (other.useSwapActive_ != 0) {
2953  setUseSwapActiveValue(other.getUseSwapActiveValue());
2954  }
2955  if (other.useExtendedSwapActive_ != 0) {
2956  setUseExtendedSwapActiveValue(other.getUseExtendedSwapActiveValue());
2957  }
2958  if (other.useNodePairSwapActive_ != 0) {
2959  setUseNodePairSwapActiveValue(other.getUseNodePairSwapActiveValue());
2960  }
2961  if (other.usePathLns_ != 0) {
2962  setUsePathLnsValue(other.getUsePathLnsValue());
2963  }
2964  if (other.useFullPathLns_ != 0) {
2965  setUseFullPathLnsValue(other.getUseFullPathLnsValue());
2966  }
2967  if (other.useTspLns_ != 0) {
2968  setUseTspLnsValue(other.getUseTspLnsValue());
2969  }
2970  if (other.useInactiveLns_ != 0) {
2971  setUseInactiveLnsValue(other.getUseInactiveLnsValue());
2972  }
2973  this.mergeUnknownFields(other.unknownFields);
2974  onChanged();
2975  return this;
2976  }
2977 
2978  @java.lang.Override
2979  public final boolean isInitialized() {
2980  return true;
2981  }
2982 
2983  @java.lang.Override
2985  com.google.protobuf.CodedInputStream input,
2986  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2987  throws java.io.IOException {
2989  try {
2990  parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2991  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2993  throw e.unwrapIOException();
2994  } finally {
2995  if (parsedMessage != null) {
2996  mergeFrom(parsedMessage);
2997  }
2998  }
2999  return this;
3000  }
3001 
3002  private int useRelocate_ = 0;
3018  public int getUseRelocateValue() {
3019  return useRelocate_;
3020  }
3036  public Builder setUseRelocateValue(int value) {
3037  useRelocate_ = value;
3038  onChanged();
3039  return this;
3040  }
3057  @SuppressWarnings("deprecation")
3059  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3060  }
3077  if (value == null) {
3078  throw new NullPointerException();
3079  }
3080 
3081  useRelocate_ = value.getNumber();
3082  onChanged();
3083  return this;
3084  }
3101 
3102  useRelocate_ = 0;
3103  onChanged();
3104  return this;
3105  }
3106 
3107  private int useRelocatePair_ = 0;
3124  return useRelocatePair_;
3125  }
3141  public Builder setUseRelocatePairValue(int value) {
3142  useRelocatePair_ = value;
3143  onChanged();
3144  return this;
3145  }
3162  @SuppressWarnings("deprecation")
3164  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3165  }
3182  if (value == null) {
3183  throw new NullPointerException();
3184  }
3185 
3186  useRelocatePair_ = value.getNumber();
3187  onChanged();
3188  return this;
3189  }
3206 
3207  useRelocatePair_ = 0;
3208  onChanged();
3209  return this;
3210  }
3211 
3212  private int useLightRelocatePair_ = 0;
3227  return useLightRelocatePair_;
3228  }
3243  useLightRelocatePair_ = value;
3244  onChanged();
3245  return this;
3246  }
3261  @SuppressWarnings("deprecation")
3263  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3264  }
3279  if (value == null) {
3280  throw new NullPointerException();
3281  }
3282 
3283  useLightRelocatePair_ = value.getNumber();
3284  onChanged();
3285  return this;
3286  }
3301 
3302  useLightRelocatePair_ = 0;
3303  onChanged();
3304  return this;
3305  }
3306 
3307  private int useRelocateNeighbors_ = 0;
3337  return useRelocateNeighbors_;
3338  }
3368  useRelocateNeighbors_ = value;
3369  onChanged();
3370  return this;
3371  }
3401  @SuppressWarnings("deprecation")
3403  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3404  }
3434  if (value == null) {
3435  throw new NullPointerException();
3436  }
3437 
3438  useRelocateNeighbors_ = value.getNumber();
3439  onChanged();
3440  return this;
3441  }
3471 
3472  useRelocateNeighbors_ = 0;
3473  onChanged();
3474  return this;
3475  }
3476 
3477  private int useRelocateSubtrip_ = 0;
3497  return useRelocateSubtrip_;
3498  }
3518  useRelocateSubtrip_ = value;
3519  onChanged();
3520  return this;
3521  }
3541  @SuppressWarnings("deprecation")
3543  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3544  }
3564  if (value == null) {
3565  throw new NullPointerException();
3566  }
3567 
3568  useRelocateSubtrip_ = value.getNumber();
3569  onChanged();
3570  return this;
3571  }
3591 
3592  useRelocateSubtrip_ = 0;
3593  onChanged();
3594  return this;
3595  }
3596 
3597  private int useExchange_ = 0;
3611  public int getUseExchangeValue() {
3612  return useExchange_;
3613  }
3627  public Builder setUseExchangeValue(int value) {
3628  useExchange_ = value;
3629  onChanged();
3630  return this;
3631  }
3646  @SuppressWarnings("deprecation")
3648  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3649  }
3664  if (value == null) {
3665  throw new NullPointerException();
3666  }
3667 
3668  useExchange_ = value.getNumber();
3669  onChanged();
3670  return this;
3671  }
3686 
3687  useExchange_ = 0;
3688  onChanged();
3689  return this;
3690  }
3691 
3692  private int useExchangePair_ = 0;
3707  return useExchangePair_;
3708  }
3722  public Builder setUseExchangePairValue(int value) {
3723  useExchangePair_ = value;
3724  onChanged();
3725  return this;
3726  }
3741  @SuppressWarnings("deprecation")
3743  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3744  }
3759  if (value == null) {
3760  throw new NullPointerException();
3761  }
3762 
3763  useExchangePair_ = value.getNumber();
3764  onChanged();
3765  return this;
3766  }
3781 
3782  useExchangePair_ = 0;
3783  onChanged();
3784  return this;
3785  }
3786 
3787  private int useExchangeSubtrip_ = 0;
3797  return useExchangeSubtrip_;
3798  }
3808  useExchangeSubtrip_ = value;
3809  onChanged();
3810  return this;
3811  }
3821  @SuppressWarnings("deprecation")
3823  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3824  }
3834  if (value == null) {
3835  throw new NullPointerException();
3836  }
3837 
3838  useExchangeSubtrip_ = value.getNumber();
3839  onChanged();
3840  return this;
3841  }
3851 
3852  useExchangeSubtrip_ = 0;
3853  onChanged();
3854  return this;
3855  }
3856 
3857  private int useCross_ = 0;
3873  public int getUseCrossValue() {
3874  return useCross_;
3875  }
3891  public Builder setUseCrossValue(int value) {
3892  useCross_ = value;
3893  onChanged();
3894  return this;
3895  }
3912  @SuppressWarnings("deprecation")
3914  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3915  }
3932  if (value == null) {
3933  throw new NullPointerException();
3934  }
3935 
3936  useCross_ = value.getNumber();
3937  onChanged();
3938  return this;
3939  }
3956 
3957  useCross_ = 0;
3958  onChanged();
3959  return this;
3960  }
3961 
3962  private int useCrossExchange_ = 0;
3971  return useCrossExchange_;
3972  }
3980  public Builder setUseCrossExchangeValue(int value) {
3981  useCrossExchange_ = value;
3982  onChanged();
3983  return this;
3984  }
3993  @SuppressWarnings("deprecation")
3995  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
3996  }
4005  if (value == null) {
4006  throw new NullPointerException();
4007  }
4008 
4009  useCrossExchange_ = value.getNumber();
4010  onChanged();
4011  return this;
4012  }
4021 
4022  useCrossExchange_ = 0;
4023  onChanged();
4024  return this;
4025  }
4026 
4027  private int useRelocateExpensiveChain_ = 0;
4045  return useRelocateExpensiveChain_;
4046  }
4064  useRelocateExpensiveChain_ = value;
4065  onChanged();
4066  return this;
4067  }
4085  @SuppressWarnings("deprecation")
4086  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateExpensiveChain_);
4087  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4088  }
4106  if (value == null) {
4107  throw new NullPointerException();
4108  }
4109 
4110  useRelocateExpensiveChain_ = value.getNumber();
4111  onChanged();
4112  return this;
4113  }
4131 
4132  useRelocateExpensiveChain_ = 0;
4133  onChanged();
4134  return this;
4135  }
4136 
4137  private int useTwoOpt_ = 0;
4154  public int getUseTwoOptValue() {
4155  return useTwoOpt_;
4156  }
4173  public Builder setUseTwoOptValue(int value) {
4174  useTwoOpt_ = value;
4175  onChanged();
4176  return this;
4177  }
4195  @SuppressWarnings("deprecation")
4197  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4198  }
4216  if (value == null) {
4217  throw new NullPointerException();
4218  }
4219 
4220  useTwoOpt_ = value.getNumber();
4221  onChanged();
4222  return this;
4223  }
4241 
4242  useTwoOpt_ = 0;
4243  onChanged();
4244  return this;
4245  }
4246 
4247  private int useOrOpt_ = 0;
4265  public int getUseOrOptValue() {
4266  return useOrOpt_;
4267  }
4285  public Builder setUseOrOptValue(int value) {
4286  useOrOpt_ = value;
4287  onChanged();
4288  return this;
4289  }
4308  @SuppressWarnings("deprecation")
4310  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4311  }
4330  if (value == null) {
4331  throw new NullPointerException();
4332  }
4333 
4334  useOrOpt_ = value.getNumber();
4335  onChanged();
4336  return this;
4337  }
4356 
4357  useOrOpt_ = 0;
4358  onChanged();
4359  return this;
4360  }
4361 
4362  private int useLinKernighan_ = 0;
4374  return useLinKernighan_;
4375  }
4386  public Builder setUseLinKernighanValue(int value) {
4387  useLinKernighan_ = value;
4388  onChanged();
4389  return this;
4390  }
4402  @SuppressWarnings("deprecation")
4404  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4405  }
4417  if (value == null) {
4418  throw new NullPointerException();
4419  }
4420 
4421  useLinKernighan_ = value.getNumber();
4422  onChanged();
4423  return this;
4424  }
4436 
4437  useLinKernighan_ = 0;
4438  onChanged();
4439  return this;
4440  }
4441 
4442  private int useTspOpt_ = 0;
4455  public int getUseTspOptValue() {
4456  return useTspOpt_;
4457  }
4470  public Builder setUseTspOptValue(int value) {
4471  useTspOpt_ = value;
4472  onChanged();
4473  return this;
4474  }
4488  @SuppressWarnings("deprecation")
4490  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4491  }
4505  if (value == null) {
4506  throw new NullPointerException();
4507  }
4508 
4509  useTspOpt_ = value.getNumber();
4510  onChanged();
4511  return this;
4512  }
4526 
4527  useTspOpt_ = 0;
4528  onChanged();
4529  return this;
4530  }
4531 
4532  private int useMakeActive_ = 0;
4546  public int getUseMakeActiveValue() {
4547  return useMakeActive_;
4548  }
4562  public Builder setUseMakeActiveValue(int value) {
4563  useMakeActive_ = value;
4564  onChanged();
4565  return this;
4566  }
4581  @SuppressWarnings("deprecation")
4583  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4584  }
4599  if (value == null) {
4600  throw new NullPointerException();
4601  }
4602 
4603  useMakeActive_ = value.getNumber();
4604  onChanged();
4605  return this;
4606  }
4621 
4622  useMakeActive_ = 0;
4623  onChanged();
4624  return this;
4625  }
4626 
4627  private int useRelocateAndMakeActive_ = 0;
4645  return useRelocateAndMakeActive_;
4646  }
4664  useRelocateAndMakeActive_ = value;
4665  onChanged();
4666  return this;
4667  }
4685  @SuppressWarnings("deprecation")
4686  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useRelocateAndMakeActive_);
4687  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4688  }
4706  if (value == null) {
4707  throw new NullPointerException();
4708  }
4709 
4710  useRelocateAndMakeActive_ = value.getNumber();
4711  onChanged();
4712  return this;
4713  }
4731 
4732  useRelocateAndMakeActive_ = 0;
4733  onChanged();
4734  return this;
4735  }
4736 
4737  private int useMakeInactive_ = 0;
4750  return useMakeInactive_;
4751  }
4763  public Builder setUseMakeInactiveValue(int value) {
4764  useMakeInactive_ = value;
4765  onChanged();
4766  return this;
4767  }
4780  @SuppressWarnings("deprecation")
4782  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4783  }
4796  if (value == null) {
4797  throw new NullPointerException();
4798  }
4799 
4800  useMakeInactive_ = value.getNumber();
4801  onChanged();
4802  return this;
4803  }
4816 
4817  useMakeInactive_ = 0;
4818  onChanged();
4819  return this;
4820  }
4821 
4822  private int useMakeChainInactive_ = 0;
4836  return useMakeChainInactive_;
4837  }
4851  useMakeChainInactive_ = value;
4852  onChanged();
4853  return this;
4854  }
4868  @SuppressWarnings("deprecation")
4870  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4871  }
4885  if (value == null) {
4886  throw new NullPointerException();
4887  }
4888 
4889  useMakeChainInactive_ = value.getNumber();
4890  onChanged();
4891  return this;
4892  }
4906 
4907  useMakeChainInactive_ = 0;
4908  onChanged();
4909  return this;
4910  }
4911 
4912  private int useSwapActive_ = 0;
4924  public int getUseSwapActiveValue() {
4925  return useSwapActive_;
4926  }
4938  public Builder setUseSwapActiveValue(int value) {
4939  useSwapActive_ = value;
4940  onChanged();
4941  return this;
4942  }
4955  @SuppressWarnings("deprecation")
4957  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
4958  }
4971  if (value == null) {
4972  throw new NullPointerException();
4973  }
4974 
4975  useSwapActive_ = value.getNumber();
4976  onChanged();
4977  return this;
4978  }
4991 
4992  useSwapActive_ = 0;
4993  onChanged();
4994  return this;
4995  }
4996 
4997  private int useExtendedSwapActive_ = 0;
5015  return useExtendedSwapActive_;
5016  }
5034  useExtendedSwapActive_ = value;
5035  onChanged();
5036  return this;
5037  }
5055  @SuppressWarnings("deprecation")
5056  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useExtendedSwapActive_);
5057  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5058  }
5076  if (value == null) {
5077  throw new NullPointerException();
5078  }
5079 
5080  useExtendedSwapActive_ = value.getNumber();
5081  onChanged();
5082  return this;
5083  }
5101 
5102  useExtendedSwapActive_ = 0;
5103  onChanged();
5104  return this;
5105  }
5106 
5107  private int useNodePairSwapActive_ = 0;
5126  return useNodePairSwapActive_;
5127  }
5146  useNodePairSwapActive_ = value;
5147  onChanged();
5148  return this;
5149  }
5168  @SuppressWarnings("deprecation")
5169  com.google.ortools.util.OptionalBoolean result = com.google.ortools.util.OptionalBoolean.valueOf(useNodePairSwapActive_);
5170  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5171  }
5190  if (value == null) {
5191  throw new NullPointerException();
5192  }
5193 
5194  useNodePairSwapActive_ = value.getNumber();
5195  onChanged();
5196  return this;
5197  }
5216 
5217  useNodePairSwapActive_ = 0;
5218  onChanged();
5219  return this;
5220  }
5221 
5222  private int usePathLns_ = 0;
5237  public int getUsePathLnsValue() {
5238  return usePathLns_;
5239  }
5254  public Builder setUsePathLnsValue(int value) {
5255  usePathLns_ = value;
5256  onChanged();
5257  return this;
5258  }
5274  @SuppressWarnings("deprecation")
5276  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5277  }
5293  if (value == null) {
5294  throw new NullPointerException();
5295  }
5296 
5297  usePathLns_ = value.getNumber();
5298  onChanged();
5299  return this;
5300  }
5316 
5317  usePathLns_ = 0;
5318  onChanged();
5319  return this;
5320  }
5321 
5322  private int useFullPathLns_ = 0;
5330  public int getUseFullPathLnsValue() {
5331  return useFullPathLns_;
5332  }
5340  public Builder setUseFullPathLnsValue(int value) {
5341  useFullPathLns_ = value;
5342  onChanged();
5343  return this;
5344  }
5353  @SuppressWarnings("deprecation")
5355  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5356  }
5365  if (value == null) {
5366  throw new NullPointerException();
5367  }
5368 
5369  useFullPathLns_ = value.getNumber();
5370  onChanged();
5371  return this;
5372  }
5381 
5382  useFullPathLns_ = 0;
5383  onChanged();
5384  return this;
5385  }
5386 
5387  private int useTspLns_ = 0;
5400  public int getUseTspLnsValue() {
5401  return useTspLns_;
5402  }
5415  public Builder setUseTspLnsValue(int value) {
5416  useTspLns_ = value;
5417  onChanged();
5418  return this;
5419  }
5433  @SuppressWarnings("deprecation")
5435  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5436  }
5450  if (value == null) {
5451  throw new NullPointerException();
5452  }
5453 
5454  useTspLns_ = value.getNumber();
5455  onChanged();
5456  return this;
5457  }
5471 
5472  useTspLns_ = 0;
5473  onChanged();
5474  return this;
5475  }
5476 
5477  private int useInactiveLns_ = 0;
5487  public int getUseInactiveLnsValue() {
5488  return useInactiveLns_;
5489  }
5499  public Builder setUseInactiveLnsValue(int value) {
5500  useInactiveLns_ = value;
5501  onChanged();
5502  return this;
5503  }
5514  @SuppressWarnings("deprecation")
5516  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5517  }
5528  if (value == null) {
5529  throw new NullPointerException();
5530  }
5531 
5532  useInactiveLns_ = value.getNumber();
5533  onChanged();
5534  return this;
5535  }
5546 
5547  useInactiveLns_ = 0;
5548  onChanged();
5549  return this;
5550  }
5551  @java.lang.Override
5553  final com.google.protobuf.UnknownFieldSet unknownFields) {
5554  return super.setUnknownFields(unknownFields);
5555  }
5556 
5557  @java.lang.Override
5559  final com.google.protobuf.UnknownFieldSet unknownFields) {
5560  return super.mergeUnknownFields(unknownFields);
5561  }
5562 
5563 
5564  // @@protoc_insertion_point(builder_scope:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
5565  }
5566 
5567  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators)
5569  static {
5571  }
5572 
5574  return DEFAULT_INSTANCE;
5575  }
5576 
5577  private static final com.google.protobuf.Parser<LocalSearchNeighborhoodOperators>
5578  PARSER = new com.google.protobuf.AbstractParser<LocalSearchNeighborhoodOperators>() {
5579  @java.lang.Override
5580  public LocalSearchNeighborhoodOperators parsePartialFrom(
5581  com.google.protobuf.CodedInputStream input,
5582  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5583  throws com.google.protobuf.InvalidProtocolBufferException {
5584  return new LocalSearchNeighborhoodOperators(input, extensionRegistry);
5585  }
5586  };
5587 
5588  public static com.google.protobuf.Parser<LocalSearchNeighborhoodOperators> parser() {
5589  return PARSER;
5590  }
5591 
5592  @java.lang.Override
5594  return PARSER;
5595  }
5596 
5597  @java.lang.Override
5599  return DEFAULT_INSTANCE;
5600  }
5601 
5602  }
5603 
5604  public static final int FIRST_SOLUTION_STRATEGY_FIELD_NUMBER = 1;
5605  private int firstSolutionStrategy_;
5614  return firstSolutionStrategy_;
5615  }
5624  @SuppressWarnings("deprecation")
5626  return result == null ? com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNRECOGNIZED : result;
5627  }
5628 
5630  private boolean useUnfilteredFirstSolutionStrategy_;
5641  return useUnfilteredFirstSolutionStrategy_;
5642  }
5643 
5644  public static final int SAVINGS_NEIGHBORS_RATIO_FIELD_NUMBER = 14;
5645  private double savingsNeighborsRatio_;
5655  public double getSavingsNeighborsRatio() {
5656  return savingsNeighborsRatio_;
5657  }
5658 
5659  public static final int SAVINGS_MAX_MEMORY_USAGE_BYTES_FIELD_NUMBER = 23;
5660  private double savingsMaxMemoryUsageBytes_;
5674  return savingsMaxMemoryUsageBytes_;
5675  }
5676 
5677  public static final int SAVINGS_ADD_REVERSE_ARCS_FIELD_NUMBER = 15;
5678  private boolean savingsAddReverseArcs_;
5687  public boolean getSavingsAddReverseArcs() {
5688  return savingsAddReverseArcs_;
5689  }
5690 
5691  public static final int SAVINGS_ARC_COEFFICIENT_FIELD_NUMBER = 18;
5692  private double savingsArcCoefficient_;
5704  public double getSavingsArcCoefficient() {
5705  return savingsArcCoefficient_;
5706  }
5707 
5708  public static final int SAVINGS_PARALLEL_ROUTES_FIELD_NUMBER = 19;
5709  private boolean savingsParallelRoutes_;
5717  public boolean getSavingsParallelRoutes() {
5718  return savingsParallelRoutes_;
5719  }
5720 
5722  private double cheapestInsertionFarthestSeedsRatio_;
5733  return cheapestInsertionFarthestSeedsRatio_;
5734  }
5735 
5737  private double cheapestInsertionNeighborsRatio_;
5749  return cheapestInsertionNeighborsRatio_;
5750  }
5751 
5752  public static final int LOCAL_SEARCH_OPERATORS_FIELD_NUMBER = 3;
5757  public boolean hasLocalSearchOperators() {
5758  return localSearchOperators_ != null;
5759  }
5764  return localSearchOperators_ == null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
5765  }
5770  return getLocalSearchOperators();
5771  }
5772 
5774  private int relocateExpensiveChainNumArcsToConsider_;
5789  return relocateExpensiveChainNumArcsToConsider_;
5790  }
5791 
5792  public static final int LOCAL_SEARCH_METAHEURISTIC_FIELD_NUMBER = 4;
5793  private int localSearchMetaheuristic_;
5802  return localSearchMetaheuristic_;
5803  }
5812  @SuppressWarnings("deprecation")
5815  }
5816 
5818  private double guidedLocalSearchLambdaCoefficient_;
5830  return guidedLocalSearchLambdaCoefficient_;
5831  }
5832 
5833  public static final int USE_DEPTH_FIRST_SEARCH_FIELD_NUMBER = 6;
5834  private boolean useDepthFirstSearch_;
5844  public boolean getUseDepthFirstSearch() {
5845  return useDepthFirstSearch_;
5846  }
5847 
5848  public static final int USE_CP_FIELD_NUMBER = 28;
5849  private int useCp_;
5859  public int getUseCpValue() {
5860  return useCp_;
5861  }
5872  @SuppressWarnings("deprecation")
5874  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5875  }
5876 
5877  public static final int USE_CP_SAT_FIELD_NUMBER = 27;
5878  private int useCpSat_;
5889  public int getUseCpSatValue() {
5890  return useCpSat_;
5891  }
5903  @SuppressWarnings("deprecation")
5905  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
5906  }
5907 
5908  public static final int OPTIMIZATION_STEP_FIELD_NUMBER = 7;
5909  private double optimizationStep_;
5919  public double getOptimizationStep() {
5920  return optimizationStep_;
5921  }
5922 
5923  public static final int NUMBER_OF_SOLUTIONS_TO_COLLECT_FIELD_NUMBER = 17;
5924  private int numberOfSolutionsToCollect_;
5934  return numberOfSolutionsToCollect_;
5935  }
5936 
5937  public static final int SOLUTION_LIMIT_FIELD_NUMBER = 8;
5938  private long solutionLimit_;
5948  public long getSolutionLimit() {
5949  return solutionLimit_;
5950  }
5951 
5952  public static final int TIME_LIMIT_FIELD_NUMBER = 9;
5953  private com.google.protobuf.Duration timeLimit_;
5961  public boolean hasTimeLimit() {
5962  return timeLimit_ != null;
5963  }
5971  public com.google.protobuf.Duration getTimeLimit() {
5972  return timeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
5973  }
5981  public com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder() {
5982  return getTimeLimit();
5983  }
5984 
5985  public static final int LNS_TIME_LIMIT_FIELD_NUMBER = 10;
5986  private com.google.protobuf.Duration lnsTimeLimit_;
5995  public boolean hasLnsTimeLimit() {
5996  return lnsTimeLimit_ != null;
5997  }
6006  public com.google.protobuf.Duration getLnsTimeLimit() {
6007  return lnsTimeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
6008  }
6017  public com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder() {
6018  return getLnsTimeLimit();
6019  }
6020 
6021  public static final int USE_FULL_PROPAGATION_FIELD_NUMBER = 11;
6022  private boolean useFullPropagation_;
6038  public boolean getUseFullPropagation() {
6039  return useFullPropagation_;
6040  }
6041 
6042  public static final int LOG_SEARCH_FIELD_NUMBER = 13;
6043  private boolean logSearch_;
6062  public boolean getLogSearch() {
6063  return logSearch_;
6064  }
6065 
6066  public static final int LOG_COST_SCALING_FACTOR_FIELD_NUMBER = 22;
6067  private double logCostScalingFactor_;
6076  public double getLogCostScalingFactor() {
6077  return logCostScalingFactor_;
6078  }
6079 
6080  public static final int LOG_COST_OFFSET_FIELD_NUMBER = 29;
6081  private double logCostOffset_;
6085  public double getLogCostOffset() {
6086  return logCostOffset_;
6087  }
6088 
6089  private byte memoizedIsInitialized = -1;
6090  @java.lang.Override
6091  public final boolean isInitialized() {
6092  byte isInitialized = memoizedIsInitialized;
6093  if (isInitialized == 1) return true;
6094  if (isInitialized == 0) return false;
6095 
6096  memoizedIsInitialized = 1;
6097  return true;
6098  }
6099 
6100  @java.lang.Override
6101  public void writeTo(com.google.protobuf.CodedOutputStream output)
6102  throws java.io.IOException {
6103  if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
6104  output.writeEnum(1, firstSolutionStrategy_);
6105  }
6106  if (useUnfilteredFirstSolutionStrategy_ != false) {
6107  output.writeBool(2, useUnfilteredFirstSolutionStrategy_);
6108  }
6109  if (localSearchOperators_ != null) {
6110  output.writeMessage(3, getLocalSearchOperators());
6111  }
6112  if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
6113  output.writeEnum(4, localSearchMetaheuristic_);
6114  }
6115  if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6116  output.writeDouble(5, guidedLocalSearchLambdaCoefficient_);
6117  }
6118  if (useDepthFirstSearch_ != false) {
6119  output.writeBool(6, useDepthFirstSearch_);
6120  }
6121  if (optimizationStep_ != 0D) {
6122  output.writeDouble(7, optimizationStep_);
6123  }
6124  if (solutionLimit_ != 0L) {
6125  output.writeInt64(8, solutionLimit_);
6126  }
6127  if (timeLimit_ != null) {
6128  output.writeMessage(9, getTimeLimit());
6129  }
6130  if (lnsTimeLimit_ != null) {
6131  output.writeMessage(10, getLnsTimeLimit());
6132  }
6133  if (useFullPropagation_ != false) {
6134  output.writeBool(11, useFullPropagation_);
6135  }
6136  if (logSearch_ != false) {
6137  output.writeBool(13, logSearch_);
6138  }
6139  if (savingsNeighborsRatio_ != 0D) {
6140  output.writeDouble(14, savingsNeighborsRatio_);
6141  }
6142  if (savingsAddReverseArcs_ != false) {
6143  output.writeBool(15, savingsAddReverseArcs_);
6144  }
6145  if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6146  output.writeDouble(16, cheapestInsertionFarthestSeedsRatio_);
6147  }
6148  if (numberOfSolutionsToCollect_ != 0) {
6149  output.writeInt32(17, numberOfSolutionsToCollect_);
6150  }
6151  if (savingsArcCoefficient_ != 0D) {
6152  output.writeDouble(18, savingsArcCoefficient_);
6153  }
6154  if (savingsParallelRoutes_ != false) {
6155  output.writeBool(19, savingsParallelRoutes_);
6156  }
6157  if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6158  output.writeInt32(20, relocateExpensiveChainNumArcsToConsider_);
6159  }
6160  if (cheapestInsertionNeighborsRatio_ != 0D) {
6161  output.writeDouble(21, cheapestInsertionNeighborsRatio_);
6162  }
6163  if (logCostScalingFactor_ != 0D) {
6164  output.writeDouble(22, logCostScalingFactor_);
6165  }
6166  if (savingsMaxMemoryUsageBytes_ != 0D) {
6167  output.writeDouble(23, savingsMaxMemoryUsageBytes_);
6168  }
6169  if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6170  output.writeEnum(27, useCpSat_);
6171  }
6172  if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6173  output.writeEnum(28, useCp_);
6174  }
6175  if (logCostOffset_ != 0D) {
6176  output.writeDouble(29, logCostOffset_);
6177  }
6178  unknownFields.writeTo(output);
6179  }
6180 
6181  @java.lang.Override
6182  public int getSerializedSize() {
6183  int size = memoizedSize;
6184  if (size != -1) return size;
6185 
6186  size = 0;
6187  if (firstSolutionStrategy_ != com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNSET.getNumber()) {
6188  size += com.google.protobuf.CodedOutputStream
6189  .computeEnumSize(1, firstSolutionStrategy_);
6190  }
6191  if (useUnfilteredFirstSolutionStrategy_ != false) {
6192  size += com.google.protobuf.CodedOutputStream
6193  .computeBoolSize(2, useUnfilteredFirstSolutionStrategy_);
6194  }
6195  if (localSearchOperators_ != null) {
6196  size += com.google.protobuf.CodedOutputStream
6197  .computeMessageSize(3, getLocalSearchOperators());
6198  }
6199  if (localSearchMetaheuristic_ != com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value.UNSET.getNumber()) {
6200  size += com.google.protobuf.CodedOutputStream
6201  .computeEnumSize(4, localSearchMetaheuristic_);
6202  }
6203  if (guidedLocalSearchLambdaCoefficient_ != 0D) {
6204  size += com.google.protobuf.CodedOutputStream
6205  .computeDoubleSize(5, guidedLocalSearchLambdaCoefficient_);
6206  }
6207  if (useDepthFirstSearch_ != false) {
6208  size += com.google.protobuf.CodedOutputStream
6209  .computeBoolSize(6, useDepthFirstSearch_);
6210  }
6211  if (optimizationStep_ != 0D) {
6212  size += com.google.protobuf.CodedOutputStream
6213  .computeDoubleSize(7, optimizationStep_);
6214  }
6215  if (solutionLimit_ != 0L) {
6216  size += com.google.protobuf.CodedOutputStream
6217  .computeInt64Size(8, solutionLimit_);
6218  }
6219  if (timeLimit_ != null) {
6220  size += com.google.protobuf.CodedOutputStream
6221  .computeMessageSize(9, getTimeLimit());
6222  }
6223  if (lnsTimeLimit_ != null) {
6224  size += com.google.protobuf.CodedOutputStream
6225  .computeMessageSize(10, getLnsTimeLimit());
6226  }
6227  if (useFullPropagation_ != false) {
6228  size += com.google.protobuf.CodedOutputStream
6229  .computeBoolSize(11, useFullPropagation_);
6230  }
6231  if (logSearch_ != false) {
6232  size += com.google.protobuf.CodedOutputStream
6233  .computeBoolSize(13, logSearch_);
6234  }
6235  if (savingsNeighborsRatio_ != 0D) {
6236  size += com.google.protobuf.CodedOutputStream
6237  .computeDoubleSize(14, savingsNeighborsRatio_);
6238  }
6239  if (savingsAddReverseArcs_ != false) {
6240  size += com.google.protobuf.CodedOutputStream
6241  .computeBoolSize(15, savingsAddReverseArcs_);
6242  }
6243  if (cheapestInsertionFarthestSeedsRatio_ != 0D) {
6244  size += com.google.protobuf.CodedOutputStream
6245  .computeDoubleSize(16, cheapestInsertionFarthestSeedsRatio_);
6246  }
6247  if (numberOfSolutionsToCollect_ != 0) {
6248  size += com.google.protobuf.CodedOutputStream
6249  .computeInt32Size(17, numberOfSolutionsToCollect_);
6250  }
6251  if (savingsArcCoefficient_ != 0D) {
6252  size += com.google.protobuf.CodedOutputStream
6253  .computeDoubleSize(18, savingsArcCoefficient_);
6254  }
6255  if (savingsParallelRoutes_ != false) {
6256  size += com.google.protobuf.CodedOutputStream
6257  .computeBoolSize(19, savingsParallelRoutes_);
6258  }
6259  if (relocateExpensiveChainNumArcsToConsider_ != 0) {
6260  size += com.google.protobuf.CodedOutputStream
6261  .computeInt32Size(20, relocateExpensiveChainNumArcsToConsider_);
6262  }
6263  if (cheapestInsertionNeighborsRatio_ != 0D) {
6264  size += com.google.protobuf.CodedOutputStream
6265  .computeDoubleSize(21, cheapestInsertionNeighborsRatio_);
6266  }
6267  if (logCostScalingFactor_ != 0D) {
6268  size += com.google.protobuf.CodedOutputStream
6269  .computeDoubleSize(22, logCostScalingFactor_);
6270  }
6271  if (savingsMaxMemoryUsageBytes_ != 0D) {
6272  size += com.google.protobuf.CodedOutputStream
6273  .computeDoubleSize(23, savingsMaxMemoryUsageBytes_);
6274  }
6275  if (useCpSat_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6276  size += com.google.protobuf.CodedOutputStream
6277  .computeEnumSize(27, useCpSat_);
6278  }
6279  if (useCp_ != com.google.ortools.util.OptionalBoolean.BOOL_UNSPECIFIED.getNumber()) {
6280  size += com.google.protobuf.CodedOutputStream
6281  .computeEnumSize(28, useCp_);
6282  }
6283  if (logCostOffset_ != 0D) {
6284  size += com.google.protobuf.CodedOutputStream
6285  .computeDoubleSize(29, logCostOffset_);
6286  }
6287  size += unknownFields.getSerializedSize();
6288  memoizedSize = size;
6289  return size;
6290  }
6291 
6292  @java.lang.Override
6293  public boolean equals(final java.lang.Object obj) {
6294  if (obj == this) {
6295  return true;
6296  }
6297  if (!(obj instanceof com.google.ortools.constraintsolver.RoutingSearchParameters)) {
6298  return super.equals(obj);
6299  }
6301 
6302  if (firstSolutionStrategy_ != other.firstSolutionStrategy_) return false;
6304  != other.getUseUnfilteredFirstSolutionStrategy()) return false;
6305  if (java.lang.Double.doubleToLongBits(getSavingsNeighborsRatio())
6306  != java.lang.Double.doubleToLongBits(
6307  other.getSavingsNeighborsRatio())) return false;
6308  if (java.lang.Double.doubleToLongBits(getSavingsMaxMemoryUsageBytes())
6309  != java.lang.Double.doubleToLongBits(
6310  other.getSavingsMaxMemoryUsageBytes())) return false;
6312  != other.getSavingsAddReverseArcs()) return false;
6313  if (java.lang.Double.doubleToLongBits(getSavingsArcCoefficient())
6314  != java.lang.Double.doubleToLongBits(
6315  other.getSavingsArcCoefficient())) return false;
6317  != other.getSavingsParallelRoutes()) return false;
6318  if (java.lang.Double.doubleToLongBits(getCheapestInsertionFarthestSeedsRatio())
6319  != java.lang.Double.doubleToLongBits(
6320  other.getCheapestInsertionFarthestSeedsRatio())) return false;
6321  if (java.lang.Double.doubleToLongBits(getCheapestInsertionNeighborsRatio())
6322  != java.lang.Double.doubleToLongBits(
6323  other.getCheapestInsertionNeighborsRatio())) return false;
6324  if (hasLocalSearchOperators() != other.hasLocalSearchOperators()) return false;
6325  if (hasLocalSearchOperators()) {
6327  .equals(other.getLocalSearchOperators())) return false;
6328  }
6330  != other.getRelocateExpensiveChainNumArcsToConsider()) return false;
6331  if (localSearchMetaheuristic_ != other.localSearchMetaheuristic_) return false;
6332  if (java.lang.Double.doubleToLongBits(getGuidedLocalSearchLambdaCoefficient())
6333  != java.lang.Double.doubleToLongBits(
6334  other.getGuidedLocalSearchLambdaCoefficient())) return false;
6336  != other.getUseDepthFirstSearch()) return false;
6337  if (useCp_ != other.useCp_) return false;
6338  if (useCpSat_ != other.useCpSat_) return false;
6339  if (java.lang.Double.doubleToLongBits(getOptimizationStep())
6340  != java.lang.Double.doubleToLongBits(
6341  other.getOptimizationStep())) return false;
6343  != other.getNumberOfSolutionsToCollect()) return false;
6344  if (getSolutionLimit()
6345  != other.getSolutionLimit()) return false;
6346  if (hasTimeLimit() != other.hasTimeLimit()) return false;
6347  if (hasTimeLimit()) {
6348  if (!getTimeLimit()
6349  .equals(other.getTimeLimit())) return false;
6350  }
6351  if (hasLnsTimeLimit() != other.hasLnsTimeLimit()) return false;
6352  if (hasLnsTimeLimit()) {
6353  if (!getLnsTimeLimit()
6354  .equals(other.getLnsTimeLimit())) return false;
6355  }
6356  if (getUseFullPropagation()
6357  != other.getUseFullPropagation()) return false;
6358  if (getLogSearch()
6359  != other.getLogSearch()) return false;
6360  if (java.lang.Double.doubleToLongBits(getLogCostScalingFactor())
6361  != java.lang.Double.doubleToLongBits(
6362  other.getLogCostScalingFactor())) return false;
6363  if (java.lang.Double.doubleToLongBits(getLogCostOffset())
6364  != java.lang.Double.doubleToLongBits(
6365  other.getLogCostOffset())) return false;
6366  if (!unknownFields.equals(other.unknownFields)) return false;
6367  return true;
6368  }
6369 
6370  @java.lang.Override
6371  public int hashCode() {
6372  if (memoizedHashCode != 0) {
6373  return memoizedHashCode;
6374  }
6375  int hash = 41;
6376  hash = (19 * hash) + getDescriptor().hashCode();
6377  hash = (37 * hash) + FIRST_SOLUTION_STRATEGY_FIELD_NUMBER;
6378  hash = (53 * hash) + firstSolutionStrategy_;
6380  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6382  hash = (37 * hash) + SAVINGS_NEIGHBORS_RATIO_FIELD_NUMBER;
6383  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6384  java.lang.Double.doubleToLongBits(getSavingsNeighborsRatio()));
6385  hash = (37 * hash) + SAVINGS_MAX_MEMORY_USAGE_BYTES_FIELD_NUMBER;
6386  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6387  java.lang.Double.doubleToLongBits(getSavingsMaxMemoryUsageBytes()));
6388  hash = (37 * hash) + SAVINGS_ADD_REVERSE_ARCS_FIELD_NUMBER;
6389  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6391  hash = (37 * hash) + SAVINGS_ARC_COEFFICIENT_FIELD_NUMBER;
6392  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6393  java.lang.Double.doubleToLongBits(getSavingsArcCoefficient()));
6394  hash = (37 * hash) + SAVINGS_PARALLEL_ROUTES_FIELD_NUMBER;
6395  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6398  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6399  java.lang.Double.doubleToLongBits(getCheapestInsertionFarthestSeedsRatio()));
6401  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6402  java.lang.Double.doubleToLongBits(getCheapestInsertionNeighborsRatio()));
6403  if (hasLocalSearchOperators()) {
6404  hash = (37 * hash) + LOCAL_SEARCH_OPERATORS_FIELD_NUMBER;
6405  hash = (53 * hash) + getLocalSearchOperators().hashCode();
6406  }
6408  hash = (53 * hash) + getRelocateExpensiveChainNumArcsToConsider();
6409  hash = (37 * hash) + LOCAL_SEARCH_METAHEURISTIC_FIELD_NUMBER;
6410  hash = (53 * hash) + localSearchMetaheuristic_;
6412  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6413  java.lang.Double.doubleToLongBits(getGuidedLocalSearchLambdaCoefficient()));
6414  hash = (37 * hash) + USE_DEPTH_FIRST_SEARCH_FIELD_NUMBER;
6415  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6417  hash = (37 * hash) + USE_CP_FIELD_NUMBER;
6418  hash = (53 * hash) + useCp_;
6419  hash = (37 * hash) + USE_CP_SAT_FIELD_NUMBER;
6420  hash = (53 * hash) + useCpSat_;
6421  hash = (37 * hash) + OPTIMIZATION_STEP_FIELD_NUMBER;
6422  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6423  java.lang.Double.doubleToLongBits(getOptimizationStep()));
6424  hash = (37 * hash) + NUMBER_OF_SOLUTIONS_TO_COLLECT_FIELD_NUMBER;
6425  hash = (53 * hash) + getNumberOfSolutionsToCollect();
6426  hash = (37 * hash) + SOLUTION_LIMIT_FIELD_NUMBER;
6427  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6428  getSolutionLimit());
6429  if (hasTimeLimit()) {
6430  hash = (37 * hash) + TIME_LIMIT_FIELD_NUMBER;
6431  hash = (53 * hash) + getTimeLimit().hashCode();
6432  }
6433  if (hasLnsTimeLimit()) {
6434  hash = (37 * hash) + LNS_TIME_LIMIT_FIELD_NUMBER;
6435  hash = (53 * hash) + getLnsTimeLimit().hashCode();
6436  }
6437  hash = (37 * hash) + USE_FULL_PROPAGATION_FIELD_NUMBER;
6438  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6440  hash = (37 * hash) + LOG_SEARCH_FIELD_NUMBER;
6441  hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
6442  getLogSearch());
6443  hash = (37 * hash) + LOG_COST_SCALING_FACTOR_FIELD_NUMBER;
6444  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6445  java.lang.Double.doubleToLongBits(getLogCostScalingFactor()));
6446  hash = (37 * hash) + LOG_COST_OFFSET_FIELD_NUMBER;
6447  hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
6448  java.lang.Double.doubleToLongBits(getLogCostOffset()));
6449  hash = (29 * hash) + unknownFields.hashCode();
6450  memoizedHashCode = hash;
6451  return hash;
6452  }
6453 
6455  java.nio.ByteBuffer data)
6456  throws com.google.protobuf.InvalidProtocolBufferException {
6457  return PARSER.parseFrom(data);
6458  }
6460  java.nio.ByteBuffer data,
6461  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6462  throws com.google.protobuf.InvalidProtocolBufferException {
6463  return PARSER.parseFrom(data, extensionRegistry);
6464  }
6466  com.google.protobuf.ByteString data)
6467  throws com.google.protobuf.InvalidProtocolBufferException {
6468  return PARSER.parseFrom(data);
6469  }
6471  com.google.protobuf.ByteString data,
6472  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6473  throws com.google.protobuf.InvalidProtocolBufferException {
6474  return PARSER.parseFrom(data, extensionRegistry);
6475  }
6477  throws com.google.protobuf.InvalidProtocolBufferException {
6478  return PARSER.parseFrom(data);
6479  }
6481  byte[] data,
6482  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6483  throws com.google.protobuf.InvalidProtocolBufferException {
6484  return PARSER.parseFrom(data, extensionRegistry);
6485  }
6486  public static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input)
6487  throws java.io.IOException {
6488  return com.google.protobuf.GeneratedMessageV3
6489  .parseWithIOException(PARSER, input);
6490  }
6492  java.io.InputStream input,
6493  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6494  throws java.io.IOException {
6495  return com.google.protobuf.GeneratedMessageV3
6496  .parseWithIOException(PARSER, input, extensionRegistry);
6497  }
6499  throws java.io.IOException {
6500  return com.google.protobuf.GeneratedMessageV3
6501  .parseDelimitedWithIOException(PARSER, input);
6502  }
6504  java.io.InputStream input,
6505  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6506  throws java.io.IOException {
6507  return com.google.protobuf.GeneratedMessageV3
6508  .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
6509  }
6511  com.google.protobuf.CodedInputStream input)
6512  throws java.io.IOException {
6513  return com.google.protobuf.GeneratedMessageV3
6514  .parseWithIOException(PARSER, input);
6515  }
6517  com.google.protobuf.CodedInputStream input,
6518  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6519  throws java.io.IOException {
6520  return com.google.protobuf.GeneratedMessageV3
6521  .parseWithIOException(PARSER, input, extensionRegistry);
6522  }
6523 
6524  @java.lang.Override
6525  public Builder newBuilderForType() { return newBuilder(); }
6526  public static Builder newBuilder() {
6527  return DEFAULT_INSTANCE.toBuilder();
6528  }
6530  return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
6531  }
6532  @java.lang.Override
6533  public Builder toBuilder() {
6534  return this == DEFAULT_INSTANCE
6535  ? new Builder() : new Builder().mergeFrom(this);
6536  }
6537 
6538  @java.lang.Override
6540  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6541  Builder builder = new Builder(parent);
6542  return builder;
6543  }
6555  public static final class Builder extends
6556  com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
6557  // @@protoc_insertion_point(builder_implements:operations_research.RoutingSearchParameters)
6558  com.google.ortools.constraintsolver.RoutingSearchParametersOrBuilder {
6559  public static final com.google.protobuf.Descriptors.Descriptor
6561  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
6562  }
6563 
6564  @java.lang.Override
6565  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
6567  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_fieldAccessorTable
6568  .ensureFieldAccessorsInitialized(
6570  }
6571 
6572  // Construct using com.google.ortools.constraintsolver.RoutingSearchParameters.newBuilder()
6573  private Builder() {
6574  maybeForceBuilderInitialization();
6575  }
6576 
6577  private Builder(
6578  com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
6579  super(parent);
6580  maybeForceBuilderInitialization();
6581  }
6582  private void maybeForceBuilderInitialization() {
6583  if (com.google.protobuf.GeneratedMessageV3
6584  .alwaysUseFieldBuilders) {
6585  }
6586  }
6587  @java.lang.Override
6588  public Builder clear() {
6589  super.clear();
6590  firstSolutionStrategy_ = 0;
6591 
6592  useUnfilteredFirstSolutionStrategy_ = false;
6593 
6594  savingsNeighborsRatio_ = 0D;
6595 
6596  savingsMaxMemoryUsageBytes_ = 0D;
6597 
6598  savingsAddReverseArcs_ = false;
6599 
6600  savingsArcCoefficient_ = 0D;
6601 
6602  savingsParallelRoutes_ = false;
6603 
6604  cheapestInsertionFarthestSeedsRatio_ = 0D;
6605 
6606  cheapestInsertionNeighborsRatio_ = 0D;
6607 
6608  if (localSearchOperatorsBuilder_ == null) {
6609  localSearchOperators_ = null;
6610  } else {
6611  localSearchOperators_ = null;
6612  localSearchOperatorsBuilder_ = null;
6613  }
6614  relocateExpensiveChainNumArcsToConsider_ = 0;
6615 
6616  localSearchMetaheuristic_ = 0;
6617 
6618  guidedLocalSearchLambdaCoefficient_ = 0D;
6619 
6620  useDepthFirstSearch_ = false;
6621 
6622  useCp_ = 0;
6623 
6624  useCpSat_ = 0;
6625 
6626  optimizationStep_ = 0D;
6627 
6628  numberOfSolutionsToCollect_ = 0;
6629 
6630  solutionLimit_ = 0L;
6631 
6632  if (timeLimitBuilder_ == null) {
6633  timeLimit_ = null;
6634  } else {
6635  timeLimit_ = null;
6636  timeLimitBuilder_ = null;
6637  }
6638  if (lnsTimeLimitBuilder_ == null) {
6639  lnsTimeLimit_ = null;
6640  } else {
6641  lnsTimeLimit_ = null;
6642  lnsTimeLimitBuilder_ = null;
6643  }
6644  useFullPropagation_ = false;
6645 
6646  logSearch_ = false;
6647 
6648  logCostScalingFactor_ = 0D;
6649 
6650  logCostOffset_ = 0D;
6651 
6652  return this;
6653  }
6654 
6655  @java.lang.Override
6656  public com.google.protobuf.Descriptors.Descriptor
6658  return com.google.ortools.constraintsolver.RoutingParameters.internal_static_operations_research_RoutingSearchParameters_descriptor;
6659  }
6660 
6661  @java.lang.Override
6664  }
6665 
6666  @java.lang.Override
6669  if (!result.isInitialized()) {
6670  throw newUninitializedMessageException(result);
6671  }
6672  return result;
6673  }
6674 
6675  @java.lang.Override
6678  result.firstSolutionStrategy_ = firstSolutionStrategy_;
6679  result.useUnfilteredFirstSolutionStrategy_ = useUnfilteredFirstSolutionStrategy_;
6680  result.savingsNeighborsRatio_ = savingsNeighborsRatio_;
6681  result.savingsMaxMemoryUsageBytes_ = savingsMaxMemoryUsageBytes_;
6682  result.savingsAddReverseArcs_ = savingsAddReverseArcs_;
6683  result.savingsArcCoefficient_ = savingsArcCoefficient_;
6684  result.savingsParallelRoutes_ = savingsParallelRoutes_;
6685  result.cheapestInsertionFarthestSeedsRatio_ = cheapestInsertionFarthestSeedsRatio_;
6686  result.cheapestInsertionNeighborsRatio_ = cheapestInsertionNeighborsRatio_;
6687  if (localSearchOperatorsBuilder_ == null) {
6688  result.localSearchOperators_ = localSearchOperators_;
6689  } else {
6690  result.localSearchOperators_ = localSearchOperatorsBuilder_.build();
6691  }
6692  result.relocateExpensiveChainNumArcsToConsider_ = relocateExpensiveChainNumArcsToConsider_;
6693  result.localSearchMetaheuristic_ = localSearchMetaheuristic_;
6694  result.guidedLocalSearchLambdaCoefficient_ = guidedLocalSearchLambdaCoefficient_;
6695  result.useDepthFirstSearch_ = useDepthFirstSearch_;
6696  result.useCp_ = useCp_;
6697  result.useCpSat_ = useCpSat_;
6698  result.optimizationStep_ = optimizationStep_;
6699  result.numberOfSolutionsToCollect_ = numberOfSolutionsToCollect_;
6700  result.solutionLimit_ = solutionLimit_;
6701  if (timeLimitBuilder_ == null) {
6702  result.timeLimit_ = timeLimit_;
6703  } else {
6704  result.timeLimit_ = timeLimitBuilder_.build();
6705  }
6706  if (lnsTimeLimitBuilder_ == null) {
6707  result.lnsTimeLimit_ = lnsTimeLimit_;
6708  } else {
6709  result.lnsTimeLimit_ = lnsTimeLimitBuilder_.build();
6710  }
6711  result.useFullPropagation_ = useFullPropagation_;
6712  result.logSearch_ = logSearch_;
6713  result.logCostScalingFactor_ = logCostScalingFactor_;
6714  result.logCostOffset_ = logCostOffset_;
6715  onBuilt();
6716  return result;
6717  }
6718 
6719  @java.lang.Override
6720  public Builder clone() {
6721  return super.clone();
6722  }
6723  @java.lang.Override
6725  com.google.protobuf.Descriptors.FieldDescriptor field,
6726  java.lang.Object value) {
6727  return super.setField(field, value);
6728  }
6729  @java.lang.Override
6731  com.google.protobuf.Descriptors.FieldDescriptor field) {
6732  return super.clearField(field);
6733  }
6734  @java.lang.Override
6736  com.google.protobuf.Descriptors.OneofDescriptor oneof) {
6737  return super.clearOneof(oneof);
6738  }
6739  @java.lang.Override
6741  com.google.protobuf.Descriptors.FieldDescriptor field,
6742  int index, java.lang.Object value) {
6743  return super.setRepeatedField(field, index, value);
6744  }
6745  @java.lang.Override
6747  com.google.protobuf.Descriptors.FieldDescriptor field,
6748  java.lang.Object value) {
6749  return super.addRepeatedField(field, value);
6750  }
6751  @java.lang.Override
6752  public Builder mergeFrom(com.google.protobuf.Message other) {
6755  } else {
6756  super.mergeFrom(other);
6757  return this;
6758  }
6759  }
6760 
6763  if (other.firstSolutionStrategy_ != 0) {
6764  setFirstSolutionStrategyValue(other.getFirstSolutionStrategyValue());
6765  }
6766  if (other.getUseUnfilteredFirstSolutionStrategy() != false) {
6767  setUseUnfilteredFirstSolutionStrategy(other.getUseUnfilteredFirstSolutionStrategy());
6768  }
6769  if (other.getSavingsNeighborsRatio() != 0D) {
6770  setSavingsNeighborsRatio(other.getSavingsNeighborsRatio());
6771  }
6772  if (other.getSavingsMaxMemoryUsageBytes() != 0D) {
6773  setSavingsMaxMemoryUsageBytes(other.getSavingsMaxMemoryUsageBytes());
6774  }
6775  if (other.getSavingsAddReverseArcs() != false) {
6776  setSavingsAddReverseArcs(other.getSavingsAddReverseArcs());
6777  }
6778  if (other.getSavingsArcCoefficient() != 0D) {
6779  setSavingsArcCoefficient(other.getSavingsArcCoefficient());
6780  }
6781  if (other.getSavingsParallelRoutes() != false) {
6782  setSavingsParallelRoutes(other.getSavingsParallelRoutes());
6783  }
6784  if (other.getCheapestInsertionFarthestSeedsRatio() != 0D) {
6785  setCheapestInsertionFarthestSeedsRatio(other.getCheapestInsertionFarthestSeedsRatio());
6786  }
6787  if (other.getCheapestInsertionNeighborsRatio() != 0D) {
6788  setCheapestInsertionNeighborsRatio(other.getCheapestInsertionNeighborsRatio());
6789  }
6790  if (other.hasLocalSearchOperators()) {
6791  mergeLocalSearchOperators(other.getLocalSearchOperators());
6792  }
6793  if (other.getRelocateExpensiveChainNumArcsToConsider() != 0) {
6794  setRelocateExpensiveChainNumArcsToConsider(other.getRelocateExpensiveChainNumArcsToConsider());
6795  }
6796  if (other.localSearchMetaheuristic_ != 0) {
6797  setLocalSearchMetaheuristicValue(other.getLocalSearchMetaheuristicValue());
6798  }
6799  if (other.getGuidedLocalSearchLambdaCoefficient() != 0D) {
6800  setGuidedLocalSearchLambdaCoefficient(other.getGuidedLocalSearchLambdaCoefficient());
6801  }
6802  if (other.getUseDepthFirstSearch() != false) {
6803  setUseDepthFirstSearch(other.getUseDepthFirstSearch());
6804  }
6805  if (other.useCp_ != 0) {
6806  setUseCpValue(other.getUseCpValue());
6807  }
6808  if (other.useCpSat_ != 0) {
6809  setUseCpSatValue(other.getUseCpSatValue());
6810  }
6811  if (other.getOptimizationStep() != 0D) {
6812  setOptimizationStep(other.getOptimizationStep());
6813  }
6814  if (other.getNumberOfSolutionsToCollect() != 0) {
6815  setNumberOfSolutionsToCollect(other.getNumberOfSolutionsToCollect());
6816  }
6817  if (other.getSolutionLimit() != 0L) {
6818  setSolutionLimit(other.getSolutionLimit());
6819  }
6820  if (other.hasTimeLimit()) {
6821  mergeTimeLimit(other.getTimeLimit());
6822  }
6823  if (other.hasLnsTimeLimit()) {
6824  mergeLnsTimeLimit(other.getLnsTimeLimit());
6825  }
6826  if (other.getUseFullPropagation() != false) {
6827  setUseFullPropagation(other.getUseFullPropagation());
6828  }
6829  if (other.getLogSearch() != false) {
6830  setLogSearch(other.getLogSearch());
6831  }
6832  if (other.getLogCostScalingFactor() != 0D) {
6833  setLogCostScalingFactor(other.getLogCostScalingFactor());
6834  }
6835  if (other.getLogCostOffset() != 0D) {
6836  setLogCostOffset(other.getLogCostOffset());
6837  }
6838  this.mergeUnknownFields(other.unknownFields);
6839  onChanged();
6840  return this;
6841  }
6842 
6843  @java.lang.Override
6844  public final boolean isInitialized() {
6845  return true;
6846  }
6847 
6848  @java.lang.Override
6850  com.google.protobuf.CodedInputStream input,
6851  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6852  throws java.io.IOException {
6854  try {
6855  parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
6856  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
6857  parsedMessage = (com.google.ortools.constraintsolver.RoutingSearchParameters) e.getUnfinishedMessage();
6858  throw e.unwrapIOException();
6859  } finally {
6860  if (parsedMessage != null) {
6861  mergeFrom(parsedMessage);
6862  }
6863  }
6864  return this;
6865  }
6866 
6867  private int firstSolutionStrategy_ = 0;
6876  return firstSolutionStrategy_;
6877  }
6886  firstSolutionStrategy_ = value;
6887  onChanged();
6888  return this;
6889  }
6898  @SuppressWarnings("deprecation")
6900  return result == null ? com.google.ortools.constraintsolver.FirstSolutionStrategy.Value.UNRECOGNIZED : result;
6901  }
6910  if (value == null) {
6911  throw new NullPointerException();
6912  }
6913 
6914  firstSolutionStrategy_ = value.getNumber();
6915  onChanged();
6916  return this;
6917  }
6926 
6927  firstSolutionStrategy_ = 0;
6928  onChanged();
6929  return this;
6930  }
6931 
6932  private boolean useUnfilteredFirstSolutionStrategy_ ;
6943  return useUnfilteredFirstSolutionStrategy_;
6944  }
6955 
6956  useUnfilteredFirstSolutionStrategy_ = value;
6957  onChanged();
6958  return this;
6959  }
6970 
6971  useUnfilteredFirstSolutionStrategy_ = false;
6972  onChanged();
6973  return this;
6974  }
6975 
6976  private double savingsNeighborsRatio_ ;
6986  public double getSavingsNeighborsRatio() {
6987  return savingsNeighborsRatio_;
6988  }
6998  public Builder setSavingsNeighborsRatio(double value) {
6999 
7000  savingsNeighborsRatio_ = value;
7001  onChanged();
7002  return this;
7003  }
7014 
7015  savingsNeighborsRatio_ = 0D;
7016  onChanged();
7017  return this;
7018  }
7019 
7020  private double savingsMaxMemoryUsageBytes_ ;
7034  return savingsMaxMemoryUsageBytes_;
7035  }
7049 
7050  savingsMaxMemoryUsageBytes_ = value;
7051  onChanged();
7052  return this;
7053  }
7067 
7068  savingsMaxMemoryUsageBytes_ = 0D;
7069  onChanged();
7070  return this;
7071  }
7072 
7073  private boolean savingsAddReverseArcs_ ;
7082  public boolean getSavingsAddReverseArcs() {
7083  return savingsAddReverseArcs_;
7084  }
7093  public Builder setSavingsAddReverseArcs(boolean value) {
7094 
7095  savingsAddReverseArcs_ = value;
7096  onChanged();
7097  return this;
7098  }
7108 
7109  savingsAddReverseArcs_ = false;
7110  onChanged();
7111  return this;
7112  }
7113 
7114  private double savingsArcCoefficient_ ;
7126  public double getSavingsArcCoefficient() {
7127  return savingsArcCoefficient_;
7128  }
7140  public Builder setSavingsArcCoefficient(double value) {
7141 
7142  savingsArcCoefficient_ = value;
7143  onChanged();
7144  return this;
7145  }
7158 
7159  savingsArcCoefficient_ = 0D;
7160  onChanged();
7161  return this;
7162  }
7163 
7164  private boolean savingsParallelRoutes_ ;
7172  public boolean getSavingsParallelRoutes() {
7173  return savingsParallelRoutes_;
7174  }
7182  public Builder setSavingsParallelRoutes(boolean value) {
7183 
7184  savingsParallelRoutes_ = value;
7185  onChanged();
7186  return this;
7187  }
7196 
7197  savingsParallelRoutes_ = false;
7198  onChanged();
7199  return this;
7200  }
7201 
7202  private double cheapestInsertionFarthestSeedsRatio_ ;
7213  return cheapestInsertionFarthestSeedsRatio_;
7214  }
7225 
7226  cheapestInsertionFarthestSeedsRatio_ = value;
7227  onChanged();
7228  return this;
7229  }
7240 
7241  cheapestInsertionFarthestSeedsRatio_ = 0D;
7242  onChanged();
7243  return this;
7244  }
7245 
7246  private double cheapestInsertionNeighborsRatio_ ;
7258  return cheapestInsertionNeighborsRatio_;
7259  }
7271 
7272  cheapestInsertionNeighborsRatio_ = value;
7273  onChanged();
7274  return this;
7275  }
7287 
7288  cheapestInsertionNeighborsRatio_ = 0D;
7289  onChanged();
7290  return this;
7291  }
7292 
7294  private com.google.protobuf.SingleFieldBuilderV3<
7299  public boolean hasLocalSearchOperators() {
7300  return localSearchOperatorsBuilder_ != null || localSearchOperators_ != null;
7301  }
7306  if (localSearchOperatorsBuilder_ == null) {
7307  return localSearchOperators_ == null ? com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.getDefaultInstance() : localSearchOperators_;
7308  } else {
7309  return localSearchOperatorsBuilder_.getMessage();
7310  }
7311  }
7316  if (localSearchOperatorsBuilder_ == null) {
7317  if (value == null) {
7318  throw new NullPointerException();
7319  }
7320  localSearchOperators_ = value;
7321  onChanged();
7322  } else {
7323  localSearchOperatorsBuilder_.setMessage(value);
7324  }
7325 
7326  return this;
7327  }
7333  if (localSearchOperatorsBuilder_ == null) {
7334  localSearchOperators_ = builderForValue.build();
7335  onChanged();
7336  } else {
7337  localSearchOperatorsBuilder_.setMessage(builderForValue.build());
7338  }
7339 
7340  return this;
7341  }
7346  if (localSearchOperatorsBuilder_ == null) {
7347  if (localSearchOperators_ != null) {
7348  localSearchOperators_ =
7350  } else {
7351  localSearchOperators_ = value;
7352  }
7353  onChanged();
7354  } else {
7355  localSearchOperatorsBuilder_.mergeFrom(value);
7356  }
7357 
7358  return this;
7359  }
7364  if (localSearchOperatorsBuilder_ == null) {
7365  localSearchOperators_ = null;
7366  onChanged();
7367  } else {
7368  localSearchOperators_ = null;
7369  localSearchOperatorsBuilder_ = null;
7370  }
7371 
7372  return this;
7373  }
7378 
7379  onChanged();
7380  return getLocalSearchOperatorsFieldBuilder().getBuilder();
7381  }
7386  if (localSearchOperatorsBuilder_ != null) {
7387  return localSearchOperatorsBuilder_.getMessageOrBuilder();
7388  } else {
7389  return localSearchOperators_ == null ?
7391  }
7392  }
7396  private com.google.protobuf.SingleFieldBuilderV3<
7398  getLocalSearchOperatorsFieldBuilder() {
7399  if (localSearchOperatorsBuilder_ == null) {
7400  localSearchOperatorsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
7403  getParentForChildren(),
7404  isClean());
7405  localSearchOperators_ = null;
7406  }
7407  return localSearchOperatorsBuilder_;
7408  }
7409 
7410  private int relocateExpensiveChainNumArcsToConsider_ ;
7425  return relocateExpensiveChainNumArcsToConsider_;
7426  }
7441 
7442  relocateExpensiveChainNumArcsToConsider_ = value;
7443  onChanged();
7444  return this;
7445  }
7460 
7461  relocateExpensiveChainNumArcsToConsider_ = 0;
7462  onChanged();
7463  return this;
7464  }
7465 
7466  private int localSearchMetaheuristic_ = 0;
7475  return localSearchMetaheuristic_;
7476  }
7485  localSearchMetaheuristic_ = value;
7486  onChanged();
7487  return this;
7488  }
7497  @SuppressWarnings("deprecation")
7500  }
7509  if (value == null) {
7510  throw new NullPointerException();
7511  }
7512 
7513  localSearchMetaheuristic_ = value.getNumber();
7514  onChanged();
7515  return this;
7516  }
7525 
7526  localSearchMetaheuristic_ = 0;
7527  onChanged();
7528  return this;
7529  }
7530 
7531  private double guidedLocalSearchLambdaCoefficient_ ;
7543  return guidedLocalSearchLambdaCoefficient_;
7544  }
7556 
7557  guidedLocalSearchLambdaCoefficient_ = value;
7558  onChanged();
7559  return this;
7560  }
7572 
7573  guidedLocalSearchLambdaCoefficient_ = 0D;
7574  onChanged();
7575  return this;
7576  }
7577 
7578  private boolean useDepthFirstSearch_ ;
7588  public boolean getUseDepthFirstSearch() {
7589  return useDepthFirstSearch_;
7590  }
7600  public Builder setUseDepthFirstSearch(boolean value) {
7601 
7602  useDepthFirstSearch_ = value;
7603  onChanged();
7604  return this;
7605  }
7616 
7617  useDepthFirstSearch_ = false;
7618  onChanged();
7619  return this;
7620  }
7621 
7622  private int useCp_ = 0;
7632  public int getUseCpValue() {
7633  return useCp_;
7634  }
7644  public Builder setUseCpValue(int value) {
7645  useCp_ = value;
7646  onChanged();
7647  return this;
7648  }
7659  @SuppressWarnings("deprecation")
7661  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
7662  }
7673  if (value == null) {
7674  throw new NullPointerException();
7675  }
7676 
7677  useCp_ = value.getNumber();
7678  onChanged();
7679  return this;
7680  }
7690  public Builder clearUseCp() {
7691 
7692  useCp_ = 0;
7693  onChanged();
7694  return this;
7695  }
7696 
7697  private int useCpSat_ = 0;
7708  public int getUseCpSatValue() {
7709  return useCpSat_;
7710  }
7721  public Builder setUseCpSatValue(int value) {
7722  useCpSat_ = value;
7723  onChanged();
7724  return this;
7725  }
7737  @SuppressWarnings("deprecation")
7739  return result == null ? com.google.ortools.util.OptionalBoolean.UNRECOGNIZED : result;
7740  }
7752  if (value == null) {
7753  throw new NullPointerException();
7754  }
7755 
7756  useCpSat_ = value.getNumber();
7757  onChanged();
7758  return this;
7759  }
7771 
7772  useCpSat_ = 0;
7773  onChanged();
7774  return this;
7775  }
7776 
7777  private double optimizationStep_ ;
7787  public double getOptimizationStep() {
7788  return optimizationStep_;
7789  }
7799  public Builder setOptimizationStep(double value) {
7800 
7801  optimizationStep_ = value;
7802  onChanged();
7803  return this;
7804  }
7815 
7816  optimizationStep_ = 0D;
7817  onChanged();
7818  return this;
7819  }
7820 
7821  private int numberOfSolutionsToCollect_ ;
7831  return numberOfSolutionsToCollect_;
7832  }
7842 
7843  numberOfSolutionsToCollect_ = value;
7844  onChanged();
7845  return this;
7846  }
7856 
7857  numberOfSolutionsToCollect_ = 0;
7858  onChanged();
7859  return this;
7860  }
7861 
7862  private long solutionLimit_ ;
7872  public long getSolutionLimit() {
7873  return solutionLimit_;
7874  }
7884  public Builder setSolutionLimit(long value) {
7885 
7886  solutionLimit_ = value;
7887  onChanged();
7888  return this;
7889  }
7900 
7901  solutionLimit_ = 0L;
7902  onChanged();
7903  return this;
7904  }
7905 
7906  private com.google.protobuf.Duration timeLimit_;
7907  private com.google.protobuf.SingleFieldBuilderV3<
7908  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> timeLimitBuilder_;
7916  public boolean hasTimeLimit() {
7917  return timeLimitBuilder_ != null || timeLimit_ != null;
7918  }
7926  public com.google.protobuf.Duration getTimeLimit() {
7927  if (timeLimitBuilder_ == null) {
7928  return timeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
7929  } else {
7930  return timeLimitBuilder_.getMessage();
7931  }
7932  }
7940  public Builder setTimeLimit(com.google.protobuf.Duration value) {
7941  if (timeLimitBuilder_ == null) {
7942  if (value == null) {
7943  throw new NullPointerException();
7944  }
7945  timeLimit_ = value;
7946  onChanged();
7947  } else {
7948  timeLimitBuilder_.setMessage(value);
7949  }
7950 
7951  return this;
7952  }
7961  com.google.protobuf.Duration.Builder builderForValue) {
7962  if (timeLimitBuilder_ == null) {
7963  timeLimit_ = builderForValue.build();
7964  onChanged();
7965  } else {
7966  timeLimitBuilder_.setMessage(builderForValue.build());
7967  }
7968 
7969  return this;
7970  }
7978  public Builder mergeTimeLimit(com.google.protobuf.Duration value) {
7979  if (timeLimitBuilder_ == null) {
7980  if (timeLimit_ != null) {
7981  timeLimit_ =
7982  com.google.protobuf.Duration.newBuilder(timeLimit_).mergeFrom(value).buildPartial();
7983  } else {
7984  timeLimit_ = value;
7985  }
7986  onChanged();
7987  } else {
7988  timeLimitBuilder_.mergeFrom(value);
7989  }
7990 
7991  return this;
7992  }
8001  if (timeLimitBuilder_ == null) {
8002  timeLimit_ = null;
8003  onChanged();
8004  } else {
8005  timeLimit_ = null;
8006  timeLimitBuilder_ = null;
8007  }
8008 
8009  return this;
8010  }
8018  public com.google.protobuf.Duration.Builder getTimeLimitBuilder() {
8019 
8020  onChanged();
8021  return getTimeLimitFieldBuilder().getBuilder();
8022  }
8030  public com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder() {
8031  if (timeLimitBuilder_ != null) {
8032  return timeLimitBuilder_.getMessageOrBuilder();
8033  } else {
8034  return timeLimit_ == null ?
8035  com.google.protobuf.Duration.getDefaultInstance() : timeLimit_;
8036  }
8037  }
8045  private com.google.protobuf.SingleFieldBuilderV3<
8046  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
8047  getTimeLimitFieldBuilder() {
8048  if (timeLimitBuilder_ == null) {
8049  timeLimitBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
8050  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
8051  getTimeLimit(),
8052  getParentForChildren(),
8053  isClean());
8054  timeLimit_ = null;
8055  }
8056  return timeLimitBuilder_;
8057  }
8058 
8059  private com.google.protobuf.Duration lnsTimeLimit_;
8060  private com.google.protobuf.SingleFieldBuilderV3<
8061  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> lnsTimeLimitBuilder_;
8070  public boolean hasLnsTimeLimit() {
8071  return lnsTimeLimitBuilder_ != null || lnsTimeLimit_ != null;
8072  }
8081  public com.google.protobuf.Duration getLnsTimeLimit() {
8082  if (lnsTimeLimitBuilder_ == null) {
8083  return lnsTimeLimit_ == null ? com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8084  } else {
8085  return lnsTimeLimitBuilder_.getMessage();
8086  }
8087  }
8096  public Builder setLnsTimeLimit(com.google.protobuf.Duration value) {
8097  if (lnsTimeLimitBuilder_ == null) {
8098  if (value == null) {
8099  throw new NullPointerException();
8100  }
8101  lnsTimeLimit_ = value;
8102  onChanged();
8103  } else {
8104  lnsTimeLimitBuilder_.setMessage(value);
8105  }
8106 
8107  return this;
8108  }
8118  com.google.protobuf.Duration.Builder builderForValue) {
8119  if (lnsTimeLimitBuilder_ == null) {
8120  lnsTimeLimit_ = builderForValue.build();
8121  onChanged();
8122  } else {
8123  lnsTimeLimitBuilder_.setMessage(builderForValue.build());
8124  }
8125 
8126  return this;
8127  }
8136  public Builder mergeLnsTimeLimit(com.google.protobuf.Duration value) {
8137  if (lnsTimeLimitBuilder_ == null) {
8138  if (lnsTimeLimit_ != null) {
8139  lnsTimeLimit_ =
8140  com.google.protobuf.Duration.newBuilder(lnsTimeLimit_).mergeFrom(value).buildPartial();
8141  } else {
8142  lnsTimeLimit_ = value;
8143  }
8144  onChanged();
8145  } else {
8146  lnsTimeLimitBuilder_.mergeFrom(value);
8147  }
8148 
8149  return this;
8150  }
8160  if (lnsTimeLimitBuilder_ == null) {
8161  lnsTimeLimit_ = null;
8162  onChanged();
8163  } else {
8164  lnsTimeLimit_ = null;
8165  lnsTimeLimitBuilder_ = null;
8166  }
8167 
8168  return this;
8169  }
8178  public com.google.protobuf.Duration.Builder getLnsTimeLimitBuilder() {
8179 
8180  onChanged();
8181  return getLnsTimeLimitFieldBuilder().getBuilder();
8182  }
8191  public com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder() {
8192  if (lnsTimeLimitBuilder_ != null) {
8193  return lnsTimeLimitBuilder_.getMessageOrBuilder();
8194  } else {
8195  return lnsTimeLimit_ == null ?
8196  com.google.protobuf.Duration.getDefaultInstance() : lnsTimeLimit_;
8197  }
8198  }
8207  private com.google.protobuf.SingleFieldBuilderV3<
8208  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>
8209  getLnsTimeLimitFieldBuilder() {
8210  if (lnsTimeLimitBuilder_ == null) {
8211  lnsTimeLimitBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
8212  com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>(
8213  getLnsTimeLimit(),
8214  getParentForChildren(),
8215  isClean());
8216  lnsTimeLimit_ = null;
8217  }
8218  return lnsTimeLimitBuilder_;
8219  }
8220 
8221  private boolean useFullPropagation_ ;
8237  public boolean getUseFullPropagation() {
8238  return useFullPropagation_;
8239  }
8255  public Builder setUseFullPropagation(boolean value) {
8256 
8257  useFullPropagation_ = value;
8258  onChanged();
8259  return this;
8260  }
8277 
8278  useFullPropagation_ = false;
8279  onChanged();
8280  return this;
8281  }
8282 
8283  private boolean logSearch_ ;
8302  public boolean getLogSearch() {
8303  return logSearch_;
8304  }
8323  public Builder setLogSearch(boolean value) {
8324 
8325  logSearch_ = value;
8326  onChanged();
8327  return this;
8328  }
8348 
8349  logSearch_ = false;
8350  onChanged();
8351  return this;
8352  }
8353 
8354  private double logCostScalingFactor_ ;
8363  public double getLogCostScalingFactor() {
8364  return logCostScalingFactor_;
8365  }
8374  public Builder setLogCostScalingFactor(double value) {
8375 
8376  logCostScalingFactor_ = value;
8377  onChanged();
8378  return this;
8379  }
8389 
8390  logCostScalingFactor_ = 0D;
8391  onChanged();
8392  return this;
8393  }
8394 
8395  private double logCostOffset_ ;
8399  public double getLogCostOffset() {
8400  return logCostOffset_;
8401  }
8405  public Builder setLogCostOffset(double value) {
8406 
8407  logCostOffset_ = value;
8408  onChanged();
8409  return this;
8410  }
8415 
8416  logCostOffset_ = 0D;
8417  onChanged();
8418  return this;
8419  }
8420  @java.lang.Override
8422  final com.google.protobuf.UnknownFieldSet unknownFields) {
8423  return super.setUnknownFields(unknownFields);
8424  }
8425 
8426  @java.lang.Override
8428  final com.google.protobuf.UnknownFieldSet unknownFields) {
8429  return super.mergeUnknownFields(unknownFields);
8430  }
8431 
8432 
8433  // @@protoc_insertion_point(builder_scope:operations_research.RoutingSearchParameters)
8434  }
8435 
8436  // @@protoc_insertion_point(class_scope:operations_research.RoutingSearchParameters)
8437  private static final com.google.ortools.constraintsolver.RoutingSearchParameters DEFAULT_INSTANCE;
8438  static {
8439  DEFAULT_INSTANCE = new com.google.ortools.constraintsolver.RoutingSearchParameters();
8440  }
8441 
8443  return DEFAULT_INSTANCE;
8444  }
8445 
8446  private static final com.google.protobuf.Parser<RoutingSearchParameters>
8447  PARSER = new com.google.protobuf.AbstractParser<RoutingSearchParameters>() {
8448  @java.lang.Override
8449  public RoutingSearchParameters parsePartialFrom(
8450  com.google.protobuf.CodedInputStream input,
8451  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8452  throws com.google.protobuf.InvalidProtocolBufferException {
8453  return new RoutingSearchParameters(input, extensionRegistry);
8454  }
8455  };
8456 
8457  public static com.google.protobuf.Parser<RoutingSearchParameters> parser() {
8458  return PARSER;
8459  }
8460 
8461  @java.lang.Override
8463  return PARSER;
8464  }
8465 
8466  @java.lang.Override
8468  return DEFAULT_INSTANCE;
8469  }
8470 
8471 }
8472 
.lang.Override Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.nio.ByteBuffer data)
.lang.Override Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
Builder mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators other)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
.lang.Override final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(byte[] data)
static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators prototype)
.lang.Override com.google.protobuf.Parser< RoutingSearchParameters > getParserForType()
Builder setUseCpSat(com.google.ortools.util.OptionalBoolean value)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override final Builder mergeUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
.lang.Override Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseDelimitedFrom(java.io.InputStream input)
.lang.Override boolean equals(final java.lang.Object obj)
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
.lang.Override Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
Builder setFirstSolutionStrategy(com.google.ortools.constraintsolver.FirstSolutionStrategy.Value value)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
Builder mergeLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators value)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
static com.google.ortools.constraintsolver.RoutingSearchParameters parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.protobuf.Parser< RoutingSearchParameters > parser()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
.lang.Deprecated static OptionalBoolean valueOf(int value)
boolean hasLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
Builder setUseCp(com.google.ortools.util.OptionalBoolean value)
com.google.ortools.constraintsolver.FirstSolutionStrategy.Value getFirstSolutionStrategy()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.ByteString data)
.lang.Override Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
.lang.Override Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder getLocalSearchOperatorsOrBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder getLocalSearchOperatorsOrBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
Builder setTimeLimit(com.google.protobuf.Duration.Builder builderForValue)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters buildPartial()
.lang.Override Builder mergeFrom(com.google.protobuf.Message other)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(com.google.protobuf.CodedInputStream input)
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Builder setLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators value)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
Builder setLogCostOffset(double value)
double log_cost_offset = 29;
.lang.Override java.lang.Object newInstance(UnusedPrivateParameter unused)
.lang.Override Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators buildPartial()
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
static com.google.protobuf.Parser< LocalSearchNeighborhoodOperators > parser()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(byte[] data)
.lang.Override Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstanceForType()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstance()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
.lang.Override final com.google.protobuf.UnknownFieldSet getUnknownFields()
com.google.ortools.constraintsolver.FirstSolutionStrategy.Value getFirstSolutionStrategy()
.lang.Override Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
.lang.Override Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters build()
Builder setLocalSearchOperators(com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder builderForValue)
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators.Builder getLocalSearchOperatorsBuilder()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseDelimitedFrom(java.io.InputStream input)
.lang.Override com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
.lang.Override Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.CodedInputStream input)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstanceForType()
com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
Builder setLocalSearchMetaheuristic(com.google.ortools.constraintsolver.LocalSearchMetaheuristic.Value value)
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
.lang.Override final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
Builder clearLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstanceForType()
static Builder newBuilder(com.google.ortools.constraintsolver.RoutingSearchParameters prototype)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(com.google.protobuf.ByteString data)
.lang.Override final Builder mergeUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
Builder mergeFrom(com.google.ortools.constraintsolver.RoutingSearchParameters other)
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.io.InputStream input)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators getDefaultInstanceForType()
.lang.Override Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
.lang.Override com.google.protobuf.Parser< LocalSearchNeighborhoodOperators > getParserForType()
static com.google.ortools.constraintsolver.RoutingSearchParameters parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.io.InputStream input)
.lang.Override void writeTo(com.google.protobuf.CodedOutputStream output)
.lang.Override com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators build()
Builder setLnsTimeLimit(com.google.protobuf.Duration.Builder builderForValue)
static com.google.ortools.constraintsolver.RoutingSearchParameters.LocalSearchNeighborhoodOperators parseFrom(java.nio.ByteBuffer data)
static com.google.ortools.constraintsolver.RoutingSearchParameters getDefaultInstance()
boolean hasLocalSearchOperators()
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
.lang.Override Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)