195 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
199 private static readonly pb::MessageParser<RoutingSearchParameters> _parser =
new pb::MessageParser<RoutingSearchParameters>(() =>
new RoutingSearchParameters());
200 private pb::UnknownFieldSet _unknownFields;
201 private int _hasBits0;
202 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
203 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
204 public static pb::MessageParser<RoutingSearchParameters> Parser {
get {
return _parser; } }
206 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
207 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
208 public static pbr::MessageDescriptor Descriptor {
209 get {
return global::Google.OrTools.ConstraintSolver.RoutingParametersReflection.Descriptor.MessageTypes[0]; }
212 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
213 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
214 pbr::MessageDescriptor pb::IMessage.Descriptor {
215 get {
return Descriptor; }
218 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
219 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
220 public RoutingSearchParameters() {
224 partial
void OnConstruction();
226 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
227 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
229 _hasBits0 = other._hasBits0;
230 firstSolutionStrategy_ = other.firstSolutionStrategy_;
231 useUnfilteredFirstSolutionStrategy_ = other.useUnfilteredFirstSolutionStrategy_;
232 savingsNeighborsRatio_ = other.savingsNeighborsRatio_;
233 savingsMaxMemoryUsageBytes_ = other.savingsMaxMemoryUsageBytes_;
234 savingsAddReverseArcs_ = other.savingsAddReverseArcs_;
235 savingsArcCoefficient_ = other.savingsArcCoefficient_;
236 savingsParallelRoutes_ = other.savingsParallelRoutes_;
237 cheapestInsertionFarthestSeedsRatio_ = other.cheapestInsertionFarthestSeedsRatio_;
238 cheapestInsertionFirstSolutionNeighborsRatio_ = other.cheapestInsertionFirstSolutionNeighborsRatio_;
239 cheapestInsertionFirstSolutionMinNeighbors_ = other.cheapestInsertionFirstSolutionMinNeighbors_;
240 cheapestInsertionLsOperatorNeighborsRatio_ = other.cheapestInsertionLsOperatorNeighborsRatio_;
241 cheapestInsertionLsOperatorMinNeighbors_ = other.cheapestInsertionLsOperatorMinNeighbors_;
242 cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization_ = other.cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization_;
243 cheapestInsertionAddUnperformedEntries_ = other.cheapestInsertionAddUnperformedEntries_;
244 localCheapestInsertionPickupDeliveryStrategy_ = other.localCheapestInsertionPickupDeliveryStrategy_;
245 localCheapestCostInsertionPickupDeliveryStrategy_ = other.localCheapestCostInsertionPickupDeliveryStrategy_;
246 christofidesUseMinimumMatching_ = other.christofidesUseMinimumMatching_;
247 firstSolutionOptimizationPeriod_ = other.firstSolutionOptimizationPeriod_;
248 localSearchOperators_ = other.localSearchOperators_ !=
null ? other.localSearchOperators_.
Clone() :
null;
249 lsOperatorNeighborsRatio_ = other.lsOperatorNeighborsRatio_;
250 lsOperatorMinNeighbors_ = other.lsOperatorMinNeighbors_;
251 useMultiArmedBanditConcatenateOperators_ = other.useMultiArmedBanditConcatenateOperators_;
252 multiArmedBanditCompoundOperatorMemoryCoefficient_ = other.multiArmedBanditCompoundOperatorMemoryCoefficient_;
253 multiArmedBanditCompoundOperatorExplorationCoefficient_ = other.multiArmedBanditCompoundOperatorExplorationCoefficient_;
254 relocateExpensiveChainNumArcsToConsider_ = other.relocateExpensiveChainNumArcsToConsider_;
255 heuristicExpensiveChainLnsNumArcsToConsider_ = other.heuristicExpensiveChainLnsNumArcsToConsider_;
256 heuristicCloseNodesLnsNumNodes_ = other.heuristicCloseNodesLnsNumNodes_;
257 localSearchMetaheuristic_ = other.localSearchMetaheuristic_;
258 guidedLocalSearchLambdaCoefficient_ = other.guidedLocalSearchLambdaCoefficient_;
259 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = other.guidedLocalSearchResetPenaltiesOnNewBestSolution_;
260 useDepthFirstSearch_ = other.useDepthFirstSearch_;
261 useCp_ = other.useCp_;
262 useCpSat_ = other.useCpSat_;
263 useGeneralizedCpSat_ = other.useGeneralizedCpSat_;
264 satParameters_ = other.satParameters_ !=
null ? other.satParameters_.Clone() :
null;
265 reportIntermediateCpSatSolutions_ = other.reportIntermediateCpSatSolutions_;
266 fallbackToCpSatSizeThreshold_ = other.fallbackToCpSatSizeThreshold_;
267 continuousSchedulingSolver_ = other.continuousSchedulingSolver_;
268 mixedIntegerSchedulingSolver_ = other.mixedIntegerSchedulingSolver_;
269 disableSchedulingBewareThisMayDegradePerformance_ = other.disableSchedulingBewareThisMayDegradePerformance_;
270 optimizationStep_ = other.optimizationStep_;
271 numberOfSolutionsToCollect_ = other.numberOfSolutionsToCollect_;
272 solutionLimit_ = other.solutionLimit_;
273 timeLimit_ = other.timeLimit_ !=
null ? other.timeLimit_.Clone() :
null;
274 lnsTimeLimit_ = other.lnsTimeLimit_ !=
null ? other.lnsTimeLimit_.Clone() :
null;
275 secondaryLsTimeLimitRatio_ = other.secondaryLsTimeLimitRatio_;
276 improvementLimitParameters_ = other.improvementLimitParameters_ !=
null ? other.improvementLimitParameters_.
Clone() :
null;
277 useFullPropagation_ = other.useFullPropagation_;
278 logSearch_ = other.logSearch_;
279 logCostScalingFactor_ = other.logCostScalingFactor_;
280 logCostOffset_ = other.logCostOffset_;
281 logTag_ = other.logTag_;
282 useIteratedLocalSearch_ = other.useIteratedLocalSearch_;
283 iteratedLocalSearchParameters_ = other.iteratedLocalSearchParameters_ !=
null ? other.iteratedLocalSearchParameters_.Clone() :
null;
284 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
287 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
288 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
294 public const int FirstSolutionStrategyFieldNumber = 1;
295 private global::Google.OrTools.ConstraintSolver.
FirstSolutionStrategy.
Types.
Value firstSolutionStrategy_ = global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset;
299 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
300 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
301 public global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value
FirstSolutionStrategy {
302 get { return firstSolutionStrategy_; }
304 firstSolutionStrategy_ = value;
309 public const int UseUnfilteredFirstSolutionStrategyFieldNumber = 2;
310 private bool useUnfilteredFirstSolutionStrategy_;
317 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
318 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
319 public bool UseUnfilteredFirstSolutionStrategy {
320 get {
return useUnfilteredFirstSolutionStrategy_; }
322 useUnfilteredFirstSolutionStrategy_ = value;
327 public const int SavingsNeighborsRatioFieldNumber = 14;
328 private double savingsNeighborsRatio_;
334 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
335 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
336 public double SavingsNeighborsRatio {
337 get {
return savingsNeighborsRatio_; }
339 savingsNeighborsRatio_ = value;
344 public const int SavingsMaxMemoryUsageBytesFieldNumber = 23;
345 private double savingsMaxMemoryUsageBytes_;
354 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
355 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
356 public double SavingsMaxMemoryUsageBytes {
357 get {
return savingsMaxMemoryUsageBytes_; }
359 savingsMaxMemoryUsageBytes_ = value;
364 public const int SavingsAddReverseArcsFieldNumber = 15;
365 private bool savingsAddReverseArcs_;
370 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
371 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
372 public bool SavingsAddReverseArcs {
373 get {
return savingsAddReverseArcs_; }
375 savingsAddReverseArcs_ = value;
380 public const int SavingsArcCoefficientFieldNumber = 18;
381 private double savingsArcCoefficient_;
389 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
390 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
391 public double SavingsArcCoefficient {
392 get {
return savingsArcCoefficient_; }
394 savingsArcCoefficient_ = value;
399 public const int SavingsParallelRoutesFieldNumber = 19;
400 private bool savingsParallelRoutes_;
404 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
405 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
406 public bool SavingsParallelRoutes {
407 get {
return savingsParallelRoutes_; }
409 savingsParallelRoutes_ = value;
414 public const int CheapestInsertionFarthestSeedsRatioFieldNumber = 16;
415 private double cheapestInsertionFarthestSeedsRatio_;
421 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
422 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
423 public double CheapestInsertionFarthestSeedsRatio {
424 get {
return cheapestInsertionFarthestSeedsRatio_; }
426 cheapestInsertionFarthestSeedsRatio_ = value;
431 public const int CheapestInsertionFirstSolutionNeighborsRatioFieldNumber = 21;
432 private double cheapestInsertionFirstSolutionNeighborsRatio_;
450 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
451 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
452 public double CheapestInsertionFirstSolutionNeighborsRatio {
453 get {
return cheapestInsertionFirstSolutionNeighborsRatio_; }
455 cheapestInsertionFirstSolutionNeighborsRatio_ = value;
460 public const int CheapestInsertionFirstSolutionMinNeighborsFieldNumber = 44;
461 private int cheapestInsertionFirstSolutionMinNeighbors_;
462 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
463 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
464 public int CheapestInsertionFirstSolutionMinNeighbors {
465 get {
return cheapestInsertionFirstSolutionMinNeighbors_; }
467 cheapestInsertionFirstSolutionMinNeighbors_ = value;
472 public const int CheapestInsertionLsOperatorNeighborsRatioFieldNumber = 31;
473 private double cheapestInsertionLsOperatorNeighborsRatio_;
480 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
481 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
482 public double CheapestInsertionLsOperatorNeighborsRatio {
483 get {
return cheapestInsertionLsOperatorNeighborsRatio_; }
485 cheapestInsertionLsOperatorNeighborsRatio_ = value;
490 public const int CheapestInsertionLsOperatorMinNeighborsFieldNumber = 45;
491 private int cheapestInsertionLsOperatorMinNeighbors_;
492 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
493 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
494 public int CheapestInsertionLsOperatorMinNeighbors {
495 get {
return cheapestInsertionLsOperatorMinNeighbors_; }
497 cheapestInsertionLsOperatorMinNeighbors_ = value;
502 public const int CheapestInsertionFirstSolutionUseNeighborsRatioForInitializationFieldNumber = 46;
503 private bool cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization_;
508 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
509 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
510 public bool CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization {
511 get {
return cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization_; }
513 cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization_ = value;
518 public const int CheapestInsertionAddUnperformedEntriesFieldNumber = 40;
519 private bool cheapestInsertionAddUnperformedEntries_;
524 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
525 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
526 public bool CheapestInsertionAddUnperformedEntries {
527 get {
return cheapestInsertionAddUnperformedEntries_; }
529 cheapestInsertionAddUnperformedEntries_ = value;
534 public const int LocalCheapestInsertionPickupDeliveryStrategyFieldNumber = 49;
535 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.
Types.PairInsertionStrategy localCheapestInsertionPickupDeliveryStrategy_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic;
540 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
541 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
542 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy LocalCheapestInsertionPickupDeliveryStrategy {
543 get { return localCheapestInsertionPickupDeliveryStrategy_; }
545 localCheapestInsertionPickupDeliveryStrategy_ = value;
550 public const int LocalCheapestCostInsertionPickupDeliveryStrategyFieldNumber = 55;
551 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy localCheapestCostInsertionPickupDeliveryStrategy_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic;
556 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
557 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
558 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy LocalCheapestCostInsertionPickupDeliveryStrategy {
559 get { return localCheapestCostInsertionPickupDeliveryStrategy_; }
561 localCheapestCostInsertionPickupDeliveryStrategy_ = value;
566 public const int ChristofidesUseMinimumMatchingFieldNumber = 30;
567 private bool christofidesUseMinimumMatching_;
572 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
573 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
574 public bool ChristofidesUseMinimumMatching {
575 get {
return christofidesUseMinimumMatching_; }
577 christofidesUseMinimumMatching_ = value;
582 public const int FirstSolutionOptimizationPeriodFieldNumber = 59;
583 private int firstSolutionOptimizationPeriod_;
593 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
594 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
595 public int FirstSolutionOptimizationPeriod {
596 get {
return firstSolutionOptimizationPeriod_; }
598 firstSolutionOptimizationPeriod_ = value;
603 public const int LocalSearchOperatorsFieldNumber = 3;
604 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators localSearchOperators_;
605 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
606 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
607 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators LocalSearchOperators {
608 get { return localSearchOperators_; }
610 localSearchOperators_ = value;
615 public const int LsOperatorNeighborsRatioFieldNumber = 53;
616 private double lsOperatorNeighborsRatio_;
622 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
623 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
624 public double LsOperatorNeighborsRatio {
625 get {
return lsOperatorNeighborsRatio_; }
627 lsOperatorNeighborsRatio_ = value;
632 public const int LsOperatorMinNeighborsFieldNumber = 54;
633 private int lsOperatorMinNeighbors_;
634 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
635 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
636 public int LsOperatorMinNeighbors {
637 get {
return lsOperatorMinNeighbors_; }
639 lsOperatorMinNeighbors_ = value;
644 public const int UseMultiArmedBanditConcatenateOperatorsFieldNumber = 41;
645 private bool useMultiArmedBanditConcatenateOperators_;
651 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
652 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
653 public bool UseMultiArmedBanditConcatenateOperators {
654 get {
return useMultiArmedBanditConcatenateOperators_; }
656 useMultiArmedBanditConcatenateOperators_ = value;
661 public const int MultiArmedBanditCompoundOperatorMemoryCoefficientFieldNumber = 42;
662 private double multiArmedBanditCompoundOperatorMemoryCoefficient_;
669 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
670 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
671 public double MultiArmedBanditCompoundOperatorMemoryCoefficient {
672 get {
return multiArmedBanditCompoundOperatorMemoryCoefficient_; }
674 multiArmedBanditCompoundOperatorMemoryCoefficient_ = value;
679 public const int MultiArmedBanditCompoundOperatorExplorationCoefficientFieldNumber = 43;
680 private double multiArmedBanditCompoundOperatorExplorationCoefficient_;
686 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
687 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
688 public double MultiArmedBanditCompoundOperatorExplorationCoefficient {
689 get {
return multiArmedBanditCompoundOperatorExplorationCoefficient_; }
691 multiArmedBanditCompoundOperatorExplorationCoefficient_ = value;
696 public const int RelocateExpensiveChainNumArcsToConsiderFieldNumber = 20;
697 private int relocateExpensiveChainNumArcsToConsider_;
707 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
708 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
709 public int RelocateExpensiveChainNumArcsToConsider {
710 get {
return relocateExpensiveChainNumArcsToConsider_; }
712 relocateExpensiveChainNumArcsToConsider_ = value;
717 public const int HeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber = 32;
718 private int heuristicExpensiveChainLnsNumArcsToConsider_;
723 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
724 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
725 public int HeuristicExpensiveChainLnsNumArcsToConsider {
726 get {
return heuristicExpensiveChainLnsNumArcsToConsider_; }
728 heuristicExpensiveChainLnsNumArcsToConsider_ = value;
733 public const int HeuristicCloseNodesLnsNumNodesFieldNumber = 35;
734 private int heuristicCloseNodesLnsNumNodes_;
739 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
740 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
741 public int HeuristicCloseNodesLnsNumNodes {
742 get {
return heuristicCloseNodesLnsNumNodes_; }
744 heuristicCloseNodesLnsNumNodes_ = value;
749 public const int LocalSearchMetaheuristicFieldNumber = 4;
750 private global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.
Value localSearchMetaheuristic_ = global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset;
754 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
755 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
756 public global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value LocalSearchMetaheuristic {
757 get { return localSearchMetaheuristic_; }
759 localSearchMetaheuristic_ = value;
764 public const int GuidedLocalSearchLambdaCoefficientFieldNumber = 5;
765 private double guidedLocalSearchLambdaCoefficient_;
772 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
773 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
774 public double GuidedLocalSearchLambdaCoefficient {
775 get {
return guidedLocalSearchLambdaCoefficient_; }
777 guidedLocalSearchLambdaCoefficient_ = value;
782 public const int GuidedLocalSearchResetPenaltiesOnNewBestSolutionFieldNumber = 51;
783 private bool guidedLocalSearchResetPenaltiesOnNewBestSolution_;
788 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
789 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
790 public bool GuidedLocalSearchResetPenaltiesOnNewBestSolution {
791 get {
return guidedLocalSearchResetPenaltiesOnNewBestSolution_; }
793 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = value;
798 public const int UseDepthFirstSearchFieldNumber = 6;
799 private bool useDepthFirstSearch_;
806 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
807 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
808 public bool UseDepthFirstSearch {
809 get {
return useDepthFirstSearch_; }
811 useDepthFirstSearch_ = value;
816 public const int UseCpFieldNumber = 28;
817 private global::Google.OrTools.Util.OptionalBoolean useCp_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
823 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
824 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
825 public global::Google.OrTools.Util.OptionalBoolean UseCp {
826 get { return useCp_; }
833 public const int UseCpSatFieldNumber = 27;
834 private global::Google.OrTools.Util.OptionalBoolean useCpSat_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
841 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
842 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
843 public global::Google.OrTools.Util.OptionalBoolean UseCpSat {
844 get { return useCpSat_; }
851 public const int UseGeneralizedCpSatFieldNumber = 47;
852 private global::Google.OrTools.Util.OptionalBoolean useGeneralizedCpSat_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
859 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
860 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
861 public global::Google.OrTools.Util.OptionalBoolean UseGeneralizedCpSat {
862 get { return useGeneralizedCpSat_; }
864 useGeneralizedCpSat_ = value;
869 public const int SatParametersFieldNumber = 48;
870 private global::Google.OrTools.Sat.SatParameters satParameters_;
875 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
876 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
877 public global::Google.OrTools.Sat.SatParameters SatParameters {
878 get { return satParameters_; }
880 satParameters_ = value;
885 public const int ReportIntermediateCpSatSolutionsFieldNumber = 56;
886 private bool reportIntermediateCpSatSolutions_;
891 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
892 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
893 public bool ReportIntermediateCpSatSolutions {
894 get {
return reportIntermediateCpSatSolutions_; }
896 reportIntermediateCpSatSolutions_ = value;
901 public const int FallbackToCpSatSizeThresholdFieldNumber = 52;
902 private int fallbackToCpSatSizeThreshold_;
907 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
908 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
909 public int FallbackToCpSatSizeThreshold {
910 get {
return fallbackToCpSatSizeThreshold_; }
912 fallbackToCpSatSizeThreshold_ = value;
917 public const int ContinuousSchedulingSolverFieldNumber = 33;
918 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver continuousSchedulingSolver_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset;
919 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
920 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
921 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver ContinuousSchedulingSolver {
922 get { return continuousSchedulingSolver_; }
924 continuousSchedulingSolver_ = value;
929 public const int MixedIntegerSchedulingSolverFieldNumber = 34;
930 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver mixedIntegerSchedulingSolver_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset;
931 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
932 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
933 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver MixedIntegerSchedulingSolver {
934 get { return mixedIntegerSchedulingSolver_; }
936 mixedIntegerSchedulingSolver_ = value;
941 public const int DisableSchedulingBewareThisMayDegradePerformanceFieldNumber = 50;
942 private readonly
static bool DisableSchedulingBewareThisMayDegradePerformanceDefaultValue =
false;
944 private bool disableSchedulingBewareThisMayDegradePerformance_;
949 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
950 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
951 public bool DisableSchedulingBewareThisMayDegradePerformance {
952 get {
if ((_hasBits0 & 1) != 0) {
return disableSchedulingBewareThisMayDegradePerformance_; }
else {
return DisableSchedulingBewareThisMayDegradePerformanceDefaultValue; } }
955 disableSchedulingBewareThisMayDegradePerformance_ = value;
959 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
960 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
961 public bool HasDisableSchedulingBewareThisMayDegradePerformance {
962 get {
return (_hasBits0 & 1) != 0; }
965 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
966 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
967 public void ClearDisableSchedulingBewareThisMayDegradePerformance() {
972 public const int OptimizationStepFieldNumber = 7;
973 private double optimizationStep_;
979 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
980 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
981 public double OptimizationStep {
982 get {
return optimizationStep_; }
984 optimizationStep_ = value;
989 public const int NumberOfSolutionsToCollectFieldNumber = 17;
990 private int numberOfSolutionsToCollect_;
995 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
996 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
997 public int NumberOfSolutionsToCollect {
998 get {
return numberOfSolutionsToCollect_; }
1000 numberOfSolutionsToCollect_ = value;
1005 public const int SolutionLimitFieldNumber = 8;
1006 private long solutionLimit_;
1012 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1013 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1014 public long SolutionLimit {
1015 get {
return solutionLimit_; }
1017 solutionLimit_ = value;
1022 public const int TimeLimitFieldNumber = 9;
1023 private global::Google.Protobuf.WellKnownTypes.Duration timeLimit_;
1027 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1028 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1029 public global::Google.Protobuf.WellKnownTypes.Duration TimeLimit {
1030 get { return timeLimit_; }
1037 public const int LnsTimeLimitFieldNumber = 10;
1038 private global::Google.Protobuf.WellKnownTypes.Duration lnsTimeLimit_;
1043 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1044 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1045 public global::Google.Protobuf.WellKnownTypes.Duration LnsTimeLimit {
1046 get { return lnsTimeLimit_; }
1048 lnsTimeLimit_ = value;
1053 public const int SecondaryLsTimeLimitRatioFieldNumber = 57;
1054 private double secondaryLsTimeLimitRatio_;
1063 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1064 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1065 public double SecondaryLsTimeLimitRatio {
1066 get {
return secondaryLsTimeLimitRatio_; }
1068 secondaryLsTimeLimitRatio_ = value;
1073 public const int ImprovementLimitParametersFieldNumber = 37;
1074 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters improvementLimitParameters_;
1079 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1080 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1081 public global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters ImprovementLimitParameters {
1082 get { return improvementLimitParameters_; }
1084 improvementLimitParameters_ = value;
1089 public const int UseFullPropagationFieldNumber = 11;
1090 private bool useFullPropagation_;
1103 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1104 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1105 public bool UseFullPropagation {
1106 get {
return useFullPropagation_; }
1108 useFullPropagation_ = value;
1113 public const int LogSearchFieldNumber = 13;
1114 private bool logSearch_;
1130 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1131 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1132 public bool LogSearch {
1133 get {
return logSearch_; }
1140 public const int LogCostScalingFactorFieldNumber = 22;
1141 private double logCostScalingFactor_;
1146 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1147 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1148 public double LogCostScalingFactor {
1149 get {
return logCostScalingFactor_; }
1151 logCostScalingFactor_ = value;
1156 public const int LogCostOffsetFieldNumber = 29;
1157 private double logCostOffset_;
1158 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1159 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1160 public double LogCostOffset {
1161 get {
return logCostOffset_; }
1163 logCostOffset_ = value;
1168 public const int LogTagFieldNumber = 36;
1169 private string logTag_ =
"";
1174 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1175 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1176 public string LogTag {
1177 get {
return logTag_; }
1179 logTag_ = pb::ProtoPreconditions.CheckNotNull(value,
"value");
1184 public const int UseIteratedLocalSearchFieldNumber = 58;
1185 private bool useIteratedLocalSearch_;
1190 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1191 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1192 public bool UseIteratedLocalSearch {
1193 get {
return useIteratedLocalSearch_; }
1195 useIteratedLocalSearch_ = value;
1200 public const int IteratedLocalSearchParametersFieldNumber = 60;
1201 private global::OperationsResearch.IteratedLocalSearchParameters iteratedLocalSearchParameters_;
1205 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1206 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1207 public global::OperationsResearch.IteratedLocalSearchParameters IteratedLocalSearchParameters {
1208 get {
return iteratedLocalSearchParameters_; }
1210 iteratedLocalSearchParameters_ = value;
1214 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1215 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1216 public override bool Equals(
object other) {
1220 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1221 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1223 if (ReferenceEquals(other,
null)) {
1226 if (ReferenceEquals(other,
this)) {
1231 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SavingsNeighborsRatio, other.
SavingsNeighborsRatio))
return false;
1232 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SavingsMaxMemoryUsageBytes, other.
SavingsMaxMemoryUsageBytes))
return false;
1234 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SavingsArcCoefficient, other.
SavingsArcCoefficient))
return false;
1248 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LsOperatorNeighborsRatio, other.
LsOperatorNeighborsRatio))
return false;
1257 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(GuidedLocalSearchLambdaCoefficient, other.
GuidedLocalSearchLambdaCoefficient))
return false;
1260 if (UseCp != other.
UseCp)
return false;
1261 if (UseCpSat != other.
UseCpSat)
return false;
1263 if (!
object.Equals(SatParameters, other.
SatParameters))
return false;
1269 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(OptimizationStep, other.
OptimizationStep))
return false;
1272 if (!
object.Equals(TimeLimit, other.
TimeLimit))
return false;
1273 if (!
object.Equals(LnsTimeLimit, other.
LnsTimeLimit))
return false;
1274 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SecondaryLsTimeLimitRatio, other.
SecondaryLsTimeLimitRatio))
return false;
1277 if (LogSearch != other.
LogSearch)
return false;
1278 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LogCostScalingFactor, other.
LogCostScalingFactor))
return false;
1279 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LogCostOffset, other.
LogCostOffset))
return false;
1280 if (LogTag != other.
LogTag)
return false;
1283 return Equals(_unknownFields, other._unknownFields);
1286 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1287 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1288 public override int GetHashCode() {
1290 if (FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) hash ^= FirstSolutionStrategy.GetHashCode();
1291 if (UseUnfilteredFirstSolutionStrategy !=
false) hash ^= UseUnfilteredFirstSolutionStrategy.GetHashCode();
1292 if (SavingsNeighborsRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SavingsNeighborsRatio);
1293 if (SavingsMaxMemoryUsageBytes != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SavingsMaxMemoryUsageBytes);
1294 if (SavingsAddReverseArcs !=
false) hash ^= SavingsAddReverseArcs.GetHashCode();
1295 if (SavingsArcCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SavingsArcCoefficient);
1296 if (SavingsParallelRoutes !=
false) hash ^= SavingsParallelRoutes.GetHashCode();
1297 if (CheapestInsertionFarthestSeedsRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(CheapestInsertionFarthestSeedsRatio);
1298 if (CheapestInsertionFirstSolutionNeighborsRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(CheapestInsertionFirstSolutionNeighborsRatio);
1299 if (CheapestInsertionFirstSolutionMinNeighbors != 0) hash ^= CheapestInsertionFirstSolutionMinNeighbors.GetHashCode();
1300 if (CheapestInsertionLsOperatorNeighborsRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(CheapestInsertionLsOperatorNeighborsRatio);
1301 if (CheapestInsertionLsOperatorMinNeighbors != 0) hash ^= CheapestInsertionLsOperatorMinNeighbors.GetHashCode();
1302 if (CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization !=
false) hash ^= CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization.GetHashCode();
1303 if (CheapestInsertionAddUnperformedEntries !=
false) hash ^= CheapestInsertionAddUnperformedEntries.GetHashCode();
1304 if (LocalCheapestInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) hash ^= LocalCheapestInsertionPickupDeliveryStrategy.GetHashCode();
1305 if (LocalCheapestCostInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) hash ^= LocalCheapestCostInsertionPickupDeliveryStrategy.GetHashCode();
1306 if (ChristofidesUseMinimumMatching !=
false) hash ^= ChristofidesUseMinimumMatching.GetHashCode();
1307 if (FirstSolutionOptimizationPeriod != 0) hash ^= FirstSolutionOptimizationPeriod.GetHashCode();
1308 if (localSearchOperators_ !=
null) hash ^= LocalSearchOperators.GetHashCode();
1309 if (LsOperatorNeighborsRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LsOperatorNeighborsRatio);
1310 if (LsOperatorMinNeighbors != 0) hash ^= LsOperatorMinNeighbors.GetHashCode();
1311 if (UseMultiArmedBanditConcatenateOperators !=
false) hash ^= UseMultiArmedBanditConcatenateOperators.GetHashCode();
1312 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MultiArmedBanditCompoundOperatorMemoryCoefficient);
1313 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MultiArmedBanditCompoundOperatorExplorationCoefficient);
1314 if (RelocateExpensiveChainNumArcsToConsider != 0) hash ^= RelocateExpensiveChainNumArcsToConsider.GetHashCode();
1315 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) hash ^= HeuristicExpensiveChainLnsNumArcsToConsider.GetHashCode();
1316 if (HeuristicCloseNodesLnsNumNodes != 0) hash ^= HeuristicCloseNodesLnsNumNodes.GetHashCode();
1318 if (GuidedLocalSearchLambdaCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(GuidedLocalSearchLambdaCoefficient);
1319 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) hash ^= GuidedLocalSearchResetPenaltiesOnNewBestSolution.GetHashCode();
1320 if (UseDepthFirstSearch !=
false) hash ^= UseDepthFirstSearch.GetHashCode();
1321 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseCp.GetHashCode();
1322 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseCpSat.GetHashCode();
1323 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseGeneralizedCpSat.GetHashCode();
1324 if (satParameters_ !=
null) hash ^= SatParameters.GetHashCode();
1325 if (ReportIntermediateCpSatSolutions !=
false) hash ^= ReportIntermediateCpSatSolutions.GetHashCode();
1326 if (FallbackToCpSatSizeThreshold != 0) hash ^= FallbackToCpSatSizeThreshold.GetHashCode();
1327 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) hash ^= ContinuousSchedulingSolver.GetHashCode();
1328 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) hash ^= MixedIntegerSchedulingSolver.GetHashCode();
1329 if (HasDisableSchedulingBewareThisMayDegradePerformance) hash ^= DisableSchedulingBewareThisMayDegradePerformance.GetHashCode();
1330 if (OptimizationStep != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(OptimizationStep);
1331 if (NumberOfSolutionsToCollect != 0) hash ^= NumberOfSolutionsToCollect.GetHashCode();
1332 if (SolutionLimit != 0L) hash ^= SolutionLimit.GetHashCode();
1333 if (timeLimit_ !=
null) hash ^= TimeLimit.GetHashCode();
1334 if (lnsTimeLimit_ !=
null) hash ^= LnsTimeLimit.GetHashCode();
1335 if (SecondaryLsTimeLimitRatio != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SecondaryLsTimeLimitRatio);
1336 if (improvementLimitParameters_ !=
null) hash ^= ImprovementLimitParameters.GetHashCode();
1337 if (UseFullPropagation !=
false) hash ^= UseFullPropagation.GetHashCode();
1338 if (LogSearch !=
false) hash ^= LogSearch.GetHashCode();
1339 if (LogCostScalingFactor != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LogCostScalingFactor);
1340 if (LogCostOffset != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LogCostOffset);
1341 if (LogTag.Length != 0) hash ^= LogTag.GetHashCode();
1342 if (UseIteratedLocalSearch !=
false) hash ^= UseIteratedLocalSearch.GetHashCode();
1343 if (iteratedLocalSearchParameters_ !=
null) hash ^= IteratedLocalSearchParameters.GetHashCode();
1344 if (_unknownFields !=
null) {
1345 hash ^= _unknownFields.GetHashCode();
1350 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1351 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1352 public override string ToString() {
1353 return pb::JsonFormatter.ToDiagnosticString(
this);
1356 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1357 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1358 public void WriteTo(pb::CodedOutputStream output) {
1359 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1360 output.WriteRawMessage(
this);
1363 output.WriteRawTag(8);
1366 if (UseUnfilteredFirstSolutionStrategy !=
false) {
1367 output.WriteRawTag(16);
1368 output.WriteBool(UseUnfilteredFirstSolutionStrategy);
1370 if (localSearchOperators_ !=
null) {
1371 output.WriteRawTag(26);
1372 output.WriteMessage(LocalSearchOperators);
1374 if (LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1375 output.WriteRawTag(32);
1376 output.WriteEnum((
int) LocalSearchMetaheuristic);
1378 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1379 output.WriteRawTag(41);
1380 output.WriteDouble(GuidedLocalSearchLambdaCoefficient);
1382 if (UseDepthFirstSearch !=
false) {
1383 output.WriteRawTag(48);
1384 output.WriteBool(UseDepthFirstSearch);
1386 if (OptimizationStep != 0D) {
1387 output.WriteRawTag(57);
1388 output.WriteDouble(OptimizationStep);
1390 if (SolutionLimit != 0L) {
1391 output.WriteRawTag(64);
1392 output.WriteInt64(SolutionLimit);
1394 if (timeLimit_ !=
null) {
1395 output.WriteRawTag(74);
1396 output.WriteMessage(TimeLimit);
1398 if (lnsTimeLimit_ !=
null) {
1399 output.WriteRawTag(82);
1400 output.WriteMessage(LnsTimeLimit);
1402 if (UseFullPropagation !=
false) {
1403 output.WriteRawTag(88);
1404 output.WriteBool(UseFullPropagation);
1406 if (LogSearch !=
false) {
1407 output.WriteRawTag(104);
1408 output.WriteBool(LogSearch);
1410 if (SavingsNeighborsRatio != 0D) {
1411 output.WriteRawTag(113);
1412 output.WriteDouble(SavingsNeighborsRatio);
1414 if (SavingsAddReverseArcs !=
false) {
1415 output.WriteRawTag(120);
1416 output.WriteBool(SavingsAddReverseArcs);
1418 if (CheapestInsertionFarthestSeedsRatio != 0D) {
1419 output.WriteRawTag(129, 1);
1420 output.WriteDouble(CheapestInsertionFarthestSeedsRatio);
1422 if (NumberOfSolutionsToCollect != 0) {
1423 output.WriteRawTag(136, 1);
1424 output.WriteInt32(NumberOfSolutionsToCollect);
1426 if (SavingsArcCoefficient != 0D) {
1427 output.WriteRawTag(145, 1);
1428 output.WriteDouble(SavingsArcCoefficient);
1430 if (SavingsParallelRoutes !=
false) {
1431 output.WriteRawTag(152, 1);
1432 output.WriteBool(SavingsParallelRoutes);
1434 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1435 output.WriteRawTag(160, 1);
1436 output.WriteInt32(RelocateExpensiveChainNumArcsToConsider);
1438 if (CheapestInsertionFirstSolutionNeighborsRatio != 0D) {
1439 output.WriteRawTag(169, 1);
1440 output.WriteDouble(CheapestInsertionFirstSolutionNeighborsRatio);
1442 if (LogCostScalingFactor != 0D) {
1443 output.WriteRawTag(177, 1);
1444 output.WriteDouble(LogCostScalingFactor);
1446 if (SavingsMaxMemoryUsageBytes != 0D) {
1447 output.WriteRawTag(185, 1);
1448 output.WriteDouble(SavingsMaxMemoryUsageBytes);
1450 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1451 output.WriteRawTag(216, 1);
1452 output.WriteEnum((
int) UseCpSat);
1454 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1455 output.WriteRawTag(224, 1);
1456 output.WriteEnum((
int) UseCp);
1458 if (LogCostOffset != 0D) {
1459 output.WriteRawTag(233, 1);
1460 output.WriteDouble(LogCostOffset);
1462 if (ChristofidesUseMinimumMatching !=
false) {
1463 output.WriteRawTag(240, 1);
1464 output.WriteBool(ChristofidesUseMinimumMatching);
1466 if (CheapestInsertionLsOperatorNeighborsRatio != 0D) {
1467 output.WriteRawTag(249, 1);
1468 output.WriteDouble(CheapestInsertionLsOperatorNeighborsRatio);
1470 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1471 output.WriteRawTag(128, 2);
1472 output.WriteInt32(HeuristicExpensiveChainLnsNumArcsToConsider);
1474 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1475 output.WriteRawTag(136, 2);
1476 output.WriteEnum((
int) ContinuousSchedulingSolver);
1478 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1479 output.WriteRawTag(144, 2);
1480 output.WriteEnum((
int) MixedIntegerSchedulingSolver);
1482 if (HeuristicCloseNodesLnsNumNodes != 0) {
1483 output.WriteRawTag(152, 2);
1484 output.WriteInt32(HeuristicCloseNodesLnsNumNodes);
1486 if (LogTag.Length != 0) {
1487 output.WriteRawTag(162, 2);
1488 output.WriteString(LogTag);
1490 if (improvementLimitParameters_ !=
null) {
1491 output.WriteRawTag(170, 2);
1492 output.WriteMessage(ImprovementLimitParameters);
1494 if (CheapestInsertionAddUnperformedEntries !=
false) {
1495 output.WriteRawTag(192, 2);
1496 output.WriteBool(CheapestInsertionAddUnperformedEntries);
1498 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1499 output.WriteRawTag(200, 2);
1500 output.WriteBool(UseMultiArmedBanditConcatenateOperators);
1502 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1503 output.WriteRawTag(209, 2);
1504 output.WriteDouble(MultiArmedBanditCompoundOperatorMemoryCoefficient);
1506 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1507 output.WriteRawTag(217, 2);
1508 output.WriteDouble(MultiArmedBanditCompoundOperatorExplorationCoefficient);
1510 if (CheapestInsertionFirstSolutionMinNeighbors != 0) {
1511 output.WriteRawTag(224, 2);
1512 output.WriteInt32(CheapestInsertionFirstSolutionMinNeighbors);
1514 if (CheapestInsertionLsOperatorMinNeighbors != 0) {
1515 output.WriteRawTag(232, 2);
1516 output.WriteInt32(CheapestInsertionLsOperatorMinNeighbors);
1518 if (CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization !=
false) {
1519 output.WriteRawTag(240, 2);
1520 output.WriteBool(CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization);
1522 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1523 output.WriteRawTag(248, 2);
1524 output.WriteEnum((
int) UseGeneralizedCpSat);
1526 if (satParameters_ !=
null) {
1527 output.WriteRawTag(130, 3);
1528 output.WriteMessage(SatParameters);
1530 if (LocalCheapestInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1531 output.WriteRawTag(136, 3);
1532 output.WriteEnum((
int) LocalCheapestInsertionPickupDeliveryStrategy);
1534 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1535 output.WriteRawTag(144, 3);
1536 output.WriteBool(DisableSchedulingBewareThisMayDegradePerformance);
1538 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1539 output.WriteRawTag(152, 3);
1540 output.WriteBool(GuidedLocalSearchResetPenaltiesOnNewBestSolution);
1542 if (FallbackToCpSatSizeThreshold != 0) {
1543 output.WriteRawTag(160, 3);
1544 output.WriteInt32(FallbackToCpSatSizeThreshold);
1546 if (LsOperatorNeighborsRatio != 0D) {
1547 output.WriteRawTag(169, 3);
1548 output.WriteDouble(LsOperatorNeighborsRatio);
1550 if (LsOperatorMinNeighbors != 0) {
1551 output.WriteRawTag(176, 3);
1552 output.WriteInt32(LsOperatorMinNeighbors);
1554 if (LocalCheapestCostInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1555 output.WriteRawTag(184, 3);
1556 output.WriteEnum((
int) LocalCheapestCostInsertionPickupDeliveryStrategy);
1558 if (ReportIntermediateCpSatSolutions !=
false) {
1559 output.WriteRawTag(192, 3);
1560 output.WriteBool(ReportIntermediateCpSatSolutions);
1562 if (SecondaryLsTimeLimitRatio != 0D) {
1563 output.WriteRawTag(201, 3);
1564 output.WriteDouble(SecondaryLsTimeLimitRatio);
1566 if (UseIteratedLocalSearch !=
false) {
1567 output.WriteRawTag(208, 3);
1568 output.WriteBool(UseIteratedLocalSearch);
1570 if (FirstSolutionOptimizationPeriod != 0) {
1571 output.WriteRawTag(216, 3);
1572 output.WriteInt32(FirstSolutionOptimizationPeriod);
1574 if (iteratedLocalSearchParameters_ !=
null) {
1575 output.WriteRawTag(226, 3);
1576 output.WriteMessage(IteratedLocalSearchParameters);
1578 if (_unknownFields !=
null) {
1579 _unknownFields.WriteTo(output);
1584 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1585 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1586 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1587 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1588 if (FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1589 output.WriteRawTag(8);
1590 output.WriteEnum((
int) FirstSolutionStrategy);
1592 if (UseUnfilteredFirstSolutionStrategy !=
false) {
1593 output.WriteRawTag(16);
1594 output.WriteBool(UseUnfilteredFirstSolutionStrategy);
1596 if (localSearchOperators_ !=
null) {
1597 output.WriteRawTag(26);
1598 output.WriteMessage(LocalSearchOperators);
1600 if (LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1601 output.WriteRawTag(32);
1602 output.WriteEnum((
int) LocalSearchMetaheuristic);
1604 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1605 output.WriteRawTag(41);
1606 output.WriteDouble(GuidedLocalSearchLambdaCoefficient);
1608 if (UseDepthFirstSearch !=
false) {
1609 output.WriteRawTag(48);
1610 output.WriteBool(UseDepthFirstSearch);
1612 if (OptimizationStep != 0D) {
1613 output.WriteRawTag(57);
1614 output.WriteDouble(OptimizationStep);
1616 if (SolutionLimit != 0L) {
1617 output.WriteRawTag(64);
1618 output.WriteInt64(SolutionLimit);
1620 if (timeLimit_ !=
null) {
1621 output.WriteRawTag(74);
1622 output.WriteMessage(TimeLimit);
1624 if (lnsTimeLimit_ !=
null) {
1625 output.WriteRawTag(82);
1626 output.WriteMessage(LnsTimeLimit);
1628 if (UseFullPropagation !=
false) {
1629 output.WriteRawTag(88);
1630 output.WriteBool(UseFullPropagation);
1632 if (LogSearch !=
false) {
1633 output.WriteRawTag(104);
1634 output.WriteBool(LogSearch);
1636 if (SavingsNeighborsRatio != 0D) {
1637 output.WriteRawTag(113);
1638 output.WriteDouble(SavingsNeighborsRatio);
1640 if (SavingsAddReverseArcs !=
false) {
1641 output.WriteRawTag(120);
1642 output.WriteBool(SavingsAddReverseArcs);
1644 if (CheapestInsertionFarthestSeedsRatio != 0D) {
1645 output.WriteRawTag(129, 1);
1646 output.WriteDouble(CheapestInsertionFarthestSeedsRatio);
1648 if (NumberOfSolutionsToCollect != 0) {
1649 output.WriteRawTag(136, 1);
1650 output.WriteInt32(NumberOfSolutionsToCollect);
1652 if (SavingsArcCoefficient != 0D) {
1653 output.WriteRawTag(145, 1);
1654 output.WriteDouble(SavingsArcCoefficient);
1656 if (SavingsParallelRoutes !=
false) {
1657 output.WriteRawTag(152, 1);
1658 output.WriteBool(SavingsParallelRoutes);
1660 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1661 output.WriteRawTag(160, 1);
1662 output.WriteInt32(RelocateExpensiveChainNumArcsToConsider);
1664 if (CheapestInsertionFirstSolutionNeighborsRatio != 0D) {
1665 output.WriteRawTag(169, 1);
1666 output.WriteDouble(CheapestInsertionFirstSolutionNeighborsRatio);
1668 if (LogCostScalingFactor != 0D) {
1669 output.WriteRawTag(177, 1);
1670 output.WriteDouble(LogCostScalingFactor);
1672 if (SavingsMaxMemoryUsageBytes != 0D) {
1673 output.WriteRawTag(185, 1);
1674 output.WriteDouble(SavingsMaxMemoryUsageBytes);
1676 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1677 output.WriteRawTag(216, 1);
1678 output.WriteEnum((
int) UseCpSat);
1680 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1681 output.WriteRawTag(224, 1);
1682 output.WriteEnum((
int) UseCp);
1684 if (LogCostOffset != 0D) {
1685 output.WriteRawTag(233, 1);
1686 output.WriteDouble(LogCostOffset);
1688 if (ChristofidesUseMinimumMatching !=
false) {
1689 output.WriteRawTag(240, 1);
1690 output.WriteBool(ChristofidesUseMinimumMatching);
1692 if (CheapestInsertionLsOperatorNeighborsRatio != 0D) {
1693 output.WriteRawTag(249, 1);
1694 output.WriteDouble(CheapestInsertionLsOperatorNeighborsRatio);
1696 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1697 output.WriteRawTag(128, 2);
1698 output.WriteInt32(HeuristicExpensiveChainLnsNumArcsToConsider);
1700 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1701 output.WriteRawTag(136, 2);
1702 output.WriteEnum((
int) ContinuousSchedulingSolver);
1704 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1705 output.WriteRawTag(144, 2);
1706 output.WriteEnum((
int) MixedIntegerSchedulingSolver);
1708 if (HeuristicCloseNodesLnsNumNodes != 0) {
1709 output.WriteRawTag(152, 2);
1710 output.WriteInt32(HeuristicCloseNodesLnsNumNodes);
1712 if (LogTag.Length != 0) {
1713 output.WriteRawTag(162, 2);
1714 output.WriteString(LogTag);
1716 if (improvementLimitParameters_ !=
null) {
1717 output.WriteRawTag(170, 2);
1718 output.WriteMessage(ImprovementLimitParameters);
1720 if (CheapestInsertionAddUnperformedEntries !=
false) {
1721 output.WriteRawTag(192, 2);
1722 output.WriteBool(CheapestInsertionAddUnperformedEntries);
1724 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1725 output.WriteRawTag(200, 2);
1726 output.WriteBool(UseMultiArmedBanditConcatenateOperators);
1728 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1729 output.WriteRawTag(209, 2);
1730 output.WriteDouble(MultiArmedBanditCompoundOperatorMemoryCoefficient);
1732 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1733 output.WriteRawTag(217, 2);
1734 output.WriteDouble(MultiArmedBanditCompoundOperatorExplorationCoefficient);
1736 if (CheapestInsertionFirstSolutionMinNeighbors != 0) {
1737 output.WriteRawTag(224, 2);
1738 output.WriteInt32(CheapestInsertionFirstSolutionMinNeighbors);
1740 if (CheapestInsertionLsOperatorMinNeighbors != 0) {
1741 output.WriteRawTag(232, 2);
1742 output.WriteInt32(CheapestInsertionLsOperatorMinNeighbors);
1744 if (CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization !=
false) {
1745 output.WriteRawTag(240, 2);
1746 output.WriteBool(CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization);
1748 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1749 output.WriteRawTag(248, 2);
1750 output.WriteEnum((
int) UseGeneralizedCpSat);
1752 if (satParameters_ !=
null) {
1753 output.WriteRawTag(130, 3);
1754 output.WriteMessage(SatParameters);
1756 if (LocalCheapestInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1757 output.WriteRawTag(136, 3);
1758 output.WriteEnum((
int) LocalCheapestInsertionPickupDeliveryStrategy);
1760 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1761 output.WriteRawTag(144, 3);
1762 output.WriteBool(DisableSchedulingBewareThisMayDegradePerformance);
1764 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1765 output.WriteRawTag(152, 3);
1766 output.WriteBool(GuidedLocalSearchResetPenaltiesOnNewBestSolution);
1768 if (FallbackToCpSatSizeThreshold != 0) {
1769 output.WriteRawTag(160, 3);
1770 output.WriteInt32(FallbackToCpSatSizeThreshold);
1772 if (LsOperatorNeighborsRatio != 0D) {
1773 output.WriteRawTag(169, 3);
1774 output.WriteDouble(LsOperatorNeighborsRatio);
1776 if (LsOperatorMinNeighbors != 0) {
1777 output.WriteRawTag(176, 3);
1778 output.WriteInt32(LsOperatorMinNeighbors);
1780 if (LocalCheapestCostInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1781 output.WriteRawTag(184, 3);
1782 output.WriteEnum((
int) LocalCheapestCostInsertionPickupDeliveryStrategy);
1784 if (ReportIntermediateCpSatSolutions !=
false) {
1785 output.WriteRawTag(192, 3);
1786 output.WriteBool(ReportIntermediateCpSatSolutions);
1788 if (SecondaryLsTimeLimitRatio != 0D) {
1789 output.WriteRawTag(201, 3);
1790 output.WriteDouble(SecondaryLsTimeLimitRatio);
1792 if (UseIteratedLocalSearch !=
false) {
1793 output.WriteRawTag(208, 3);
1794 output.WriteBool(UseIteratedLocalSearch);
1796 if (FirstSolutionOptimizationPeriod != 0) {
1797 output.WriteRawTag(216, 3);
1798 output.WriteInt32(FirstSolutionOptimizationPeriod);
1800 if (iteratedLocalSearchParameters_ !=
null) {
1801 output.WriteRawTag(226, 3);
1802 output.WriteMessage(IteratedLocalSearchParameters);
1804 if (_unknownFields !=
null) {
1805 _unknownFields.WriteTo(ref output);
1810 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1811 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1812 public int CalculateSize() {
1814 if (FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1815 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) FirstSolutionStrategy);
1817 if (UseUnfilteredFirstSolutionStrategy !=
false) {
1820 if (SavingsNeighborsRatio != 0D) {
1823 if (SavingsMaxMemoryUsageBytes != 0D) {
1826 if (SavingsAddReverseArcs !=
false) {
1829 if (SavingsArcCoefficient != 0D) {
1832 if (SavingsParallelRoutes !=
false) {
1835 if (CheapestInsertionFarthestSeedsRatio != 0D) {
1838 if (CheapestInsertionFirstSolutionNeighborsRatio != 0D) {
1841 if (CheapestInsertionFirstSolutionMinNeighbors != 0) {
1842 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CheapestInsertionFirstSolutionMinNeighbors);
1844 if (CheapestInsertionLsOperatorNeighborsRatio != 0D) {
1847 if (CheapestInsertionLsOperatorMinNeighbors != 0) {
1848 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CheapestInsertionLsOperatorMinNeighbors);
1850 if (CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization !=
false) {
1853 if (CheapestInsertionAddUnperformedEntries !=
false) {
1856 if (LocalCheapestInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1857 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) LocalCheapestInsertionPickupDeliveryStrategy);
1859 if (LocalCheapestCostInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
1860 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) LocalCheapestCostInsertionPickupDeliveryStrategy);
1862 if (ChristofidesUseMinimumMatching !=
false) {
1865 if (FirstSolutionOptimizationPeriod != 0) {
1866 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FirstSolutionOptimizationPeriod);
1868 if (localSearchOperators_ !=
null) {
1869 size += 1 + pb::CodedOutputStream.ComputeMessageSize(LocalSearchOperators);
1871 if (LsOperatorNeighborsRatio != 0D) {
1874 if (LsOperatorMinNeighbors != 0) {
1875 size += 2 + pb::CodedOutputStream.ComputeInt32Size(LsOperatorMinNeighbors);
1877 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1880 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1883 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1886 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1887 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RelocateExpensiveChainNumArcsToConsider);
1889 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1890 size += 2 + pb::CodedOutputStream.ComputeInt32Size(HeuristicExpensiveChainLnsNumArcsToConsider);
1892 if (HeuristicCloseNodesLnsNumNodes != 0) {
1893 size += 2 + pb::CodedOutputStream.ComputeInt32Size(HeuristicCloseNodesLnsNumNodes);
1895 if (LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1896 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) LocalSearchMetaheuristic);
1898 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1901 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1904 if (UseDepthFirstSearch !=
false) {
1907 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1908 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCp);
1910 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1911 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCpSat);
1913 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1914 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGeneralizedCpSat);
1916 if (satParameters_ !=
null) {
1917 size += 2 + pb::CodedOutputStream.ComputeMessageSize(SatParameters);
1919 if (ReportIntermediateCpSatSolutions !=
false) {
1922 if (FallbackToCpSatSizeThreshold != 0) {
1923 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FallbackToCpSatSizeThreshold);
1925 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1926 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) ContinuousSchedulingSolver);
1928 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1929 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) MixedIntegerSchedulingSolver);
1931 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1934 if (OptimizationStep != 0D) {
1937 if (NumberOfSolutionsToCollect != 0) {
1938 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumberOfSolutionsToCollect);
1940 if (SolutionLimit != 0L) {
1941 size += 1 + pb::CodedOutputStream.ComputeInt64Size(SolutionLimit);
1943 if (timeLimit_ !=
null) {
1944 size += 1 + pb::CodedOutputStream.ComputeMessageSize(TimeLimit);
1946 if (lnsTimeLimit_ !=
null) {
1947 size += 1 + pb::CodedOutputStream.ComputeMessageSize(LnsTimeLimit);
1949 if (SecondaryLsTimeLimitRatio != 0D) {
1952 if (improvementLimitParameters_ !=
null) {
1953 size += 2 + pb::CodedOutputStream.ComputeMessageSize(ImprovementLimitParameters);
1955 if (UseFullPropagation !=
false) {
1958 if (LogSearch !=
false) {
1961 if (LogCostScalingFactor != 0D) {
1964 if (LogCostOffset != 0D) {
1967 if (LogTag.Length != 0) {
1968 size += 2 + pb::CodedOutputStream.ComputeStringSize(LogTag);
1970 if (UseIteratedLocalSearch !=
false) {
1973 if (iteratedLocalSearchParameters_ !=
null) {
1974 size += 2 + pb::CodedOutputStream.ComputeMessageSize(IteratedLocalSearchParameters);
1976 if (_unknownFields !=
null) {
1977 size += _unknownFields.CalculateSize();
1982 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1983 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1984 public void MergeFrom(RoutingSearchParameters other) {
1985 if (other ==
null) {
1988 if (other.FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1989 FirstSolutionStrategy = other.FirstSolutionStrategy;
1991 if (other.UseUnfilteredFirstSolutionStrategy !=
false) {
1992 UseUnfilteredFirstSolutionStrategy = other.UseUnfilteredFirstSolutionStrategy;
1994 if (other.SavingsNeighborsRatio != 0D) {
1995 SavingsNeighborsRatio = other.SavingsNeighborsRatio;
1997 if (other.SavingsMaxMemoryUsageBytes != 0D) {
1998 SavingsMaxMemoryUsageBytes = other.SavingsMaxMemoryUsageBytes;
2000 if (other.SavingsAddReverseArcs !=
false) {
2001 SavingsAddReverseArcs = other.SavingsAddReverseArcs;
2003 if (other.SavingsArcCoefficient != 0D) {
2004 SavingsArcCoefficient = other.SavingsArcCoefficient;
2006 if (other.SavingsParallelRoutes !=
false) {
2007 SavingsParallelRoutes = other.SavingsParallelRoutes;
2009 if (other.CheapestInsertionFarthestSeedsRatio != 0D) {
2010 CheapestInsertionFarthestSeedsRatio = other.CheapestInsertionFarthestSeedsRatio;
2012 if (other.CheapestInsertionFirstSolutionNeighborsRatio != 0D) {
2013 CheapestInsertionFirstSolutionNeighborsRatio = other.CheapestInsertionFirstSolutionNeighborsRatio;
2015 if (other.CheapestInsertionFirstSolutionMinNeighbors != 0) {
2016 CheapestInsertionFirstSolutionMinNeighbors = other.CheapestInsertionFirstSolutionMinNeighbors;
2018 if (other.CheapestInsertionLsOperatorNeighborsRatio != 0D) {
2019 CheapestInsertionLsOperatorNeighborsRatio = other.CheapestInsertionLsOperatorNeighborsRatio;
2021 if (other.CheapestInsertionLsOperatorMinNeighbors != 0) {
2022 CheapestInsertionLsOperatorMinNeighbors = other.CheapestInsertionLsOperatorMinNeighbors;
2024 if (other.CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization !=
false) {
2025 CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization = other.CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization;
2027 if (other.CheapestInsertionAddUnperformedEntries !=
false) {
2028 CheapestInsertionAddUnperformedEntries = other.CheapestInsertionAddUnperformedEntries;
2030 if (other.LocalCheapestInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
2031 LocalCheapestInsertionPickupDeliveryStrategy = other.LocalCheapestInsertionPickupDeliveryStrategy;
2033 if (other.LocalCheapestCostInsertionPickupDeliveryStrategy != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy.Automatic) {
2034 LocalCheapestCostInsertionPickupDeliveryStrategy = other.LocalCheapestCostInsertionPickupDeliveryStrategy;
2036 if (other.ChristofidesUseMinimumMatching !=
false) {
2037 ChristofidesUseMinimumMatching = other.ChristofidesUseMinimumMatching;
2039 if (other.FirstSolutionOptimizationPeriod != 0) {
2040 FirstSolutionOptimizationPeriod = other.FirstSolutionOptimizationPeriod;
2042 if (other.localSearchOperators_ !=
null) {
2043 if (localSearchOperators_ ==
null) {
2044 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
2046 LocalSearchOperators.MergeFrom(other.LocalSearchOperators);
2048 if (other.LsOperatorNeighborsRatio != 0D) {
2049 LsOperatorNeighborsRatio = other.LsOperatorNeighborsRatio;
2051 if (other.LsOperatorMinNeighbors != 0) {
2052 LsOperatorMinNeighbors = other.LsOperatorMinNeighbors;
2054 if (other.UseMultiArmedBanditConcatenateOperators !=
false) {
2055 UseMultiArmedBanditConcatenateOperators = other.UseMultiArmedBanditConcatenateOperators;
2057 if (other.MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
2058 MultiArmedBanditCompoundOperatorMemoryCoefficient = other.MultiArmedBanditCompoundOperatorMemoryCoefficient;
2060 if (other.MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
2061 MultiArmedBanditCompoundOperatorExplorationCoefficient = other.MultiArmedBanditCompoundOperatorExplorationCoefficient;
2063 if (other.RelocateExpensiveChainNumArcsToConsider != 0) {
2064 RelocateExpensiveChainNumArcsToConsider = other.RelocateExpensiveChainNumArcsToConsider;
2066 if (other.HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
2067 HeuristicExpensiveChainLnsNumArcsToConsider = other.HeuristicExpensiveChainLnsNumArcsToConsider;
2069 if (other.HeuristicCloseNodesLnsNumNodes != 0) {
2070 HeuristicCloseNodesLnsNumNodes = other.HeuristicCloseNodesLnsNumNodes;
2072 if (other.LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
2073 LocalSearchMetaheuristic = other.LocalSearchMetaheuristic;
2075 if (other.GuidedLocalSearchLambdaCoefficient != 0D) {
2076 GuidedLocalSearchLambdaCoefficient = other.GuidedLocalSearchLambdaCoefficient;
2078 if (other.GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
2079 GuidedLocalSearchResetPenaltiesOnNewBestSolution = other.GuidedLocalSearchResetPenaltiesOnNewBestSolution;
2081 if (other.UseDepthFirstSearch !=
false) {
2082 UseDepthFirstSearch = other.UseDepthFirstSearch;
2084 if (other.UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
2085 UseCp = other.UseCp;
2087 if (other.UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
2088 UseCpSat = other.UseCpSat;
2090 if (other.UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
2091 UseGeneralizedCpSat = other.UseGeneralizedCpSat;
2093 if (other.satParameters_ !=
null) {
2094 if (satParameters_ ==
null) {
2095 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
2097 SatParameters.MergeFrom(other.SatParameters);
2099 if (other.ReportIntermediateCpSatSolutions !=
false) {
2100 ReportIntermediateCpSatSolutions = other.ReportIntermediateCpSatSolutions;
2102 if (other.FallbackToCpSatSizeThreshold != 0) {
2103 FallbackToCpSatSizeThreshold = other.FallbackToCpSatSizeThreshold;
2105 if (other.ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
2106 ContinuousSchedulingSolver = other.ContinuousSchedulingSolver;
2108 if (other.MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
2109 MixedIntegerSchedulingSolver = other.MixedIntegerSchedulingSolver;
2111 if (other.HasDisableSchedulingBewareThisMayDegradePerformance) {
2112 DisableSchedulingBewareThisMayDegradePerformance = other.DisableSchedulingBewareThisMayDegradePerformance;
2114 if (other.OptimizationStep != 0D) {
2115 OptimizationStep = other.OptimizationStep;
2117 if (other.NumberOfSolutionsToCollect != 0) {
2118 NumberOfSolutionsToCollect = other.NumberOfSolutionsToCollect;
2120 if (other.SolutionLimit != 0L) {
2121 SolutionLimit = other.SolutionLimit;
2123 if (other.timeLimit_ !=
null) {
2124 if (timeLimit_ ==
null) {
2125 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2129 if (other.lnsTimeLimit_ !=
null) {
2130 if (lnsTimeLimit_ ==
null) {
2131 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2133 LnsTimeLimit.MergeFrom(other.LnsTimeLimit);
2135 if (other.SecondaryLsTimeLimitRatio != 0D) {
2136 SecondaryLsTimeLimitRatio = other.SecondaryLsTimeLimitRatio;
2138 if (other.improvementLimitParameters_ !=
null) {
2139 if (improvementLimitParameters_ ==
null) {
2140 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2142 ImprovementLimitParameters.MergeFrom(other.ImprovementLimitParameters);
2144 if (other.UseFullPropagation !=
false) {
2145 UseFullPropagation = other.UseFullPropagation;
2147 if (other.LogSearch !=
false) {
2148 LogSearch = other.LogSearch;
2150 if (other.LogCostScalingFactor != 0D) {
2151 LogCostScalingFactor = other.LogCostScalingFactor;
2153 if (other.LogCostOffset != 0D) {
2154 LogCostOffset = other.LogCostOffset;
2156 if (other.LogTag.Length != 0) {
2157 LogTag = other.LogTag;
2159 if (other.UseIteratedLocalSearch !=
false) {
2160 UseIteratedLocalSearch = other.UseIteratedLocalSearch;
2162 if (other.iteratedLocalSearchParameters_ !=
null) {
2163 if (iteratedLocalSearchParameters_ ==
null) {
2164 IteratedLocalSearchParameters =
new global::OperationsResearch.IteratedLocalSearchParameters();
2166 IteratedLocalSearchParameters.MergeFrom(other.IteratedLocalSearchParameters);
2168 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2171 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2172 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2173 public void MergeFrom(pb::CodedInputStream input) {
2174 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2175 input.ReadRawMessage(
this);
2178 while ((tag = input.ReadTag()) != 0) {
2181 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2184 FirstSolutionStrategy = (global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value) input.ReadEnum();
2188 UseUnfilteredFirstSolutionStrategy = input.ReadBool();
2192 if (localSearchOperators_ ==
null) {
2193 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
2195 input.ReadMessage(LocalSearchOperators);
2199 LocalSearchMetaheuristic = (global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value) input.ReadEnum();
2203 GuidedLocalSearchLambdaCoefficient = input.ReadDouble();
2207 UseDepthFirstSearch = input.ReadBool();
2211 OptimizationStep = input.ReadDouble();
2215 SolutionLimit = input.ReadInt64();
2219 if (timeLimit_ ==
null) {
2220 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2222 input.ReadMessage(TimeLimit);
2226 if (lnsTimeLimit_ ==
null) {
2227 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2229 input.ReadMessage(LnsTimeLimit);
2233 UseFullPropagation = input.ReadBool();
2237 LogSearch = input.ReadBool();
2241 SavingsNeighborsRatio = input.ReadDouble();
2245 SavingsAddReverseArcs = input.ReadBool();
2249 CheapestInsertionFarthestSeedsRatio = input.ReadDouble();
2253 NumberOfSolutionsToCollect = input.ReadInt32();
2257 SavingsArcCoefficient = input.ReadDouble();
2261 SavingsParallelRoutes = input.ReadBool();
2265 RelocateExpensiveChainNumArcsToConsider = input.ReadInt32();
2269 CheapestInsertionFirstSolutionNeighborsRatio = input.ReadDouble();
2273 LogCostScalingFactor = input.ReadDouble();
2277 SavingsMaxMemoryUsageBytes = input.ReadDouble();
2281 UseCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2285 UseCp = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2289 LogCostOffset = input.ReadDouble();
2293 ChristofidesUseMinimumMatching = input.ReadBool();
2297 CheapestInsertionLsOperatorNeighborsRatio = input.ReadDouble();
2301 HeuristicExpensiveChainLnsNumArcsToConsider = input.ReadInt32();
2305 ContinuousSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2309 MixedIntegerSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2313 HeuristicCloseNodesLnsNumNodes = input.ReadInt32();
2317 LogTag = input.ReadString();
2321 if (improvementLimitParameters_ ==
null) {
2322 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2324 input.ReadMessage(ImprovementLimitParameters);
2328 CheapestInsertionAddUnperformedEntries = input.ReadBool();
2332 UseMultiArmedBanditConcatenateOperators = input.ReadBool();
2336 MultiArmedBanditCompoundOperatorMemoryCoefficient = input.ReadDouble();
2340 MultiArmedBanditCompoundOperatorExplorationCoefficient = input.ReadDouble();
2344 CheapestInsertionFirstSolutionMinNeighbors = input.ReadInt32();
2348 CheapestInsertionLsOperatorMinNeighbors = input.ReadInt32();
2352 CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization = input.ReadBool();
2356 UseGeneralizedCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2360 if (satParameters_ ==
null) {
2361 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
2363 input.ReadMessage(SatParameters);
2367 LocalCheapestInsertionPickupDeliveryStrategy = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy) input.ReadEnum();
2371 DisableSchedulingBewareThisMayDegradePerformance = input.ReadBool();
2375 GuidedLocalSearchResetPenaltiesOnNewBestSolution = input.ReadBool();
2379 FallbackToCpSatSizeThreshold = input.ReadInt32();
2383 LsOperatorNeighborsRatio = input.ReadDouble();
2387 LsOperatorMinNeighbors = input.ReadInt32();
2391 LocalCheapestCostInsertionPickupDeliveryStrategy = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy) input.ReadEnum();
2395 ReportIntermediateCpSatSolutions = input.ReadBool();
2399 SecondaryLsTimeLimitRatio = input.ReadDouble();
2403 UseIteratedLocalSearch = input.ReadBool();
2407 FirstSolutionOptimizationPeriod = input.ReadInt32();
2411 if (iteratedLocalSearchParameters_ ==
null) {
2412 IteratedLocalSearchParameters =
new global::OperationsResearch.IteratedLocalSearchParameters();
2414 input.ReadMessage(IteratedLocalSearchParameters);
2422 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2423 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2424 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2425 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2427 while ((tag = input.ReadTag()) != 0) {
2430 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2433 FirstSolutionStrategy = (global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value) input.ReadEnum();
2437 UseUnfilteredFirstSolutionStrategy = input.ReadBool();
2441 if (localSearchOperators_ ==
null) {
2442 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
2444 input.ReadMessage(LocalSearchOperators);
2448 LocalSearchMetaheuristic = (global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value) input.ReadEnum();
2452 GuidedLocalSearchLambdaCoefficient = input.ReadDouble();
2456 UseDepthFirstSearch = input.ReadBool();
2460 OptimizationStep = input.ReadDouble();
2464 SolutionLimit = input.ReadInt64();
2468 if (timeLimit_ ==
null) {
2469 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2471 input.ReadMessage(TimeLimit);
2475 if (lnsTimeLimit_ ==
null) {
2476 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2478 input.ReadMessage(LnsTimeLimit);
2482 UseFullPropagation = input.ReadBool();
2486 LogSearch = input.ReadBool();
2490 SavingsNeighborsRatio = input.ReadDouble();
2494 SavingsAddReverseArcs = input.ReadBool();
2498 CheapestInsertionFarthestSeedsRatio = input.ReadDouble();
2502 NumberOfSolutionsToCollect = input.ReadInt32();
2506 SavingsArcCoefficient = input.ReadDouble();
2510 SavingsParallelRoutes = input.ReadBool();
2514 RelocateExpensiveChainNumArcsToConsider = input.ReadInt32();
2518 CheapestInsertionFirstSolutionNeighborsRatio = input.ReadDouble();
2522 LogCostScalingFactor = input.ReadDouble();
2526 SavingsMaxMemoryUsageBytes = input.ReadDouble();
2530 UseCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2534 UseCp = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2538 LogCostOffset = input.ReadDouble();
2542 ChristofidesUseMinimumMatching = input.ReadBool();
2546 CheapestInsertionLsOperatorNeighborsRatio = input.ReadDouble();
2550 HeuristicExpensiveChainLnsNumArcsToConsider = input.ReadInt32();
2554 ContinuousSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2558 MixedIntegerSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2562 HeuristicCloseNodesLnsNumNodes = input.ReadInt32();
2566 LogTag = input.ReadString();
2570 if (improvementLimitParameters_ ==
null) {
2571 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2573 input.ReadMessage(ImprovementLimitParameters);
2577 CheapestInsertionAddUnperformedEntries = input.ReadBool();
2581 UseMultiArmedBanditConcatenateOperators = input.ReadBool();
2585 MultiArmedBanditCompoundOperatorMemoryCoefficient = input.ReadDouble();
2589 MultiArmedBanditCompoundOperatorExplorationCoefficient = input.ReadDouble();
2593 CheapestInsertionFirstSolutionMinNeighbors = input.ReadInt32();
2597 CheapestInsertionLsOperatorMinNeighbors = input.ReadInt32();
2601 CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization = input.ReadBool();
2605 UseGeneralizedCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2609 if (satParameters_ ==
null) {
2610 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
2612 input.ReadMessage(SatParameters);
2616 LocalCheapestInsertionPickupDeliveryStrategy = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy) input.ReadEnum();
2620 DisableSchedulingBewareThisMayDegradePerformance = input.ReadBool();
2624 GuidedLocalSearchResetPenaltiesOnNewBestSolution = input.ReadBool();
2628 FallbackToCpSatSizeThreshold = input.ReadInt32();
2632 LsOperatorNeighborsRatio = input.ReadDouble();
2636 LsOperatorMinNeighbors = input.ReadInt32();
2640 LocalCheapestCostInsertionPickupDeliveryStrategy = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy) input.ReadEnum();
2644 ReportIntermediateCpSatSolutions = input.ReadBool();
2648 SecondaryLsTimeLimitRatio = input.ReadDouble();
2652 UseIteratedLocalSearch = input.ReadBool();
2656 FirstSolutionOptimizationPeriod = input.ReadInt32();
2660 if (iteratedLocalSearchParameters_ ==
null) {
2661 IteratedLocalSearchParameters =
new global::OperationsResearch.IteratedLocalSearchParameters();
2663 input.ReadMessage(IteratedLocalSearchParameters);
2671 #region Nested types
2673 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2674 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2675 public static partial
class Types {
2685 [pbr::OriginalName(
"AUTOMATIC")] Automatic = 0,
2689 [pbr::OriginalName(
"BEST_PICKUP_THEN_BEST_DELIVERY")] BestPickupThenBestDelivery = 1,
2693 [pbr::OriginalName(
"BEST_PICKUP_DELIVERY_PAIR")] BestPickupDeliveryPair = 2,
2701 [pbr::OriginalName(
"BEST_PICKUP_DELIVERY_PAIR_MULTITOUR")] BestPickupDeliveryPairMultitour = 3,
2708 public enum SchedulingSolver {
2709 [pbr::OriginalName(
"SCHEDULING_UNSET")] SchedulingUnset = 0,
2710 [pbr::OriginalName(
"SCHEDULING_GLOP")] SchedulingGlop = 1,
2711 [pbr::OriginalName(
"SCHEDULING_CP_SAT")] SchedulingCpSat = 2,
2718 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
2719 public sealed partial class LocalSearchNeighborhoodOperators : pb::IMessage<LocalSearchNeighborhoodOperators>
2720 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2721 , pb::IBufferMessage
2724 private static readonly pb::MessageParser<LocalSearchNeighborhoodOperators> _parser =
new pb::MessageParser<LocalSearchNeighborhoodOperators>(() =>
new LocalSearchNeighborhoodOperators());
2725 private pb::UnknownFieldSet _unknownFields;
2726 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2727 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2728 public static pb::MessageParser<LocalSearchNeighborhoodOperators> Parser {
get {
return _parser; } }
2730 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2731 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2732 public static pbr::MessageDescriptor Descriptor {
2733 get {
return global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Descriptor.NestedTypes[0]; }
2736 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2737 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2738 pbr::MessageDescriptor pb::IMessage.Descriptor {
2739 get {
return Descriptor; }
2742 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2743 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2748 partial
void OnConstruction();
2750 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2751 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2753 useRelocate_ = other.useRelocate_;
2754 useRelocatePair_ = other.useRelocatePair_;
2755 useLightRelocatePair_ = other.useLightRelocatePair_;
2756 useRelocateNeighbors_ = other.useRelocateNeighbors_;
2757 useRelocateSubtrip_ = other.useRelocateSubtrip_;
2758 useExchange_ = other.useExchange_;
2759 useExchangePair_ = other.useExchangePair_;
2760 useExchangeSubtrip_ = other.useExchangeSubtrip_;
2761 useCross_ = other.useCross_;
2762 useCrossExchange_ = other.useCrossExchange_;
2763 useRelocateExpensiveChain_ = other.useRelocateExpensiveChain_;
2764 useTwoOpt_ = other.useTwoOpt_;
2765 useOrOpt_ = other.useOrOpt_;
2766 useLinKernighan_ = other.useLinKernighan_;
2767 useTspOpt_ = other.useTspOpt_;
2768 useMakeActive_ = other.useMakeActive_;
2769 useRelocateAndMakeActive_ = other.useRelocateAndMakeActive_;
2770 useMakeInactive_ = other.useMakeInactive_;
2771 useMakeChainInactive_ = other.useMakeChainInactive_;
2772 useSwapActive_ = other.useSwapActive_;
2773 useExtendedSwapActive_ = other.useExtendedSwapActive_;
2774 useShortestPathSwapActive_ = other.useShortestPathSwapActive_;
2775 useNodePairSwapActive_ = other.useNodePairSwapActive_;
2776 usePathLns_ = other.usePathLns_;
2777 useFullPathLns_ = other.useFullPathLns_;
2778 useTspLns_ = other.useTspLns_;
2779 useInactiveLns_ = other.useInactiveLns_;
2780 useGlobalCheapestInsertionPathLns_ = other.useGlobalCheapestInsertionPathLns_;
2781 useLocalCheapestInsertionPathLns_ = other.useLocalCheapestInsertionPathLns_;
2782 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = other.useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
2783 useGlobalCheapestInsertionExpensiveChainLns_ = other.useGlobalCheapestInsertionExpensiveChainLns_;
2784 useLocalCheapestInsertionExpensiveChainLns_ = other.useLocalCheapestInsertionExpensiveChainLns_;
2785 useGlobalCheapestInsertionCloseNodesLns_ = other.useGlobalCheapestInsertionCloseNodesLns_;
2786 useLocalCheapestInsertionCloseNodesLns_ = other.useLocalCheapestInsertionCloseNodesLns_;
2787 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2790 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2791 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2797 public const int UseRelocateFieldNumber = 1;
2798 private global::Google.OrTools.Util.OptionalBoolean useRelocate_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2810 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2811 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2812 public global::Google.OrTools.Util.OptionalBoolean UseRelocate {
2813 get { return useRelocate_; }
2815 useRelocate_ = value;
2820 public const int UseRelocatePairFieldNumber = 2;
2821 private global::Google.OrTools.Util.OptionalBoolean useRelocatePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2833 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2834 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2835 public global::Google.OrTools.Util.OptionalBoolean UseRelocatePair {
2836 get { return useRelocatePair_; }
2838 useRelocatePair_ = value;
2843 public const int UseLightRelocatePairFieldNumber = 24;
2844 private global::Google.OrTools.Util.OptionalBoolean useLightRelocatePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2854 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2855 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2856 public global::Google.OrTools.Util.OptionalBoolean UseLightRelocatePair {
2857 get { return useLightRelocatePair_; }
2859 useLightRelocatePair_ = value;
2864 public const int UseRelocateNeighborsFieldNumber = 3;
2865 private global::Google.OrTools.Util.OptionalBoolean useRelocateNeighbors_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2890 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2891 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2892 public global::Google.OrTools.Util.OptionalBoolean UseRelocateNeighbors {
2893 get { return useRelocateNeighbors_; }
2895 useRelocateNeighbors_ = value;
2900 public const int UseRelocateSubtripFieldNumber = 25;
2901 private global::Google.OrTools.Util.OptionalBoolean useRelocateSubtrip_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2918 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2919 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2920 public global::Google.OrTools.Util.OptionalBoolean UseRelocateSubtrip {
2921 get { return useRelocateSubtrip_; }
2923 useRelocateSubtrip_ = value;
2928 public const int UseExchangeFieldNumber = 4;
2929 private global::Google.OrTools.Util.OptionalBoolean useExchange_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2939 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2940 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2941 public global::Google.OrTools.Util.OptionalBoolean UseExchange {
2942 get { return useExchange_; }
2944 useExchange_ = value;
2949 public const int UseExchangePairFieldNumber = 22;
2950 private global::Google.OrTools.Util.OptionalBoolean useExchangePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2960 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2961 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2962 public global::Google.OrTools.Util.OptionalBoolean UseExchangePair {
2963 get { return useExchangePair_; }
2965 useExchangePair_ = value;
2970 public const int UseExchangeSubtripFieldNumber = 26;
2971 private global::Google.OrTools.Util.OptionalBoolean useExchangeSubtrip_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2976 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2977 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2978 public global::Google.OrTools.Util.OptionalBoolean UseExchangeSubtrip {
2979 get { return useExchangeSubtrip_; }
2981 useExchangeSubtrip_ = value;
2986 public const int UseCrossFieldNumber = 5;
2987 private global::Google.OrTools.Util.OptionalBoolean useCross_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2999 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3000 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3001 public global::Google.OrTools.Util.OptionalBoolean UseCross {
3002 get { return useCross_; }
3009 public const int UseCrossExchangeFieldNumber = 6;
3010 private global::Google.OrTools.Util.OptionalBoolean useCrossExchange_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3014 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3015 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3016 public global::Google.OrTools.Util.OptionalBoolean UseCrossExchange {
3017 get { return useCrossExchange_; }
3019 useCrossExchange_ = value;
3024 public const int UseRelocateExpensiveChainFieldNumber = 23;
3025 private global::Google.OrTools.Util.OptionalBoolean useRelocateExpensiveChain_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3038 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3039 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3040 public global::Google.OrTools.Util.OptionalBoolean UseRelocateExpensiveChain {
3041 get { return useRelocateExpensiveChain_; }
3043 useRelocateExpensiveChain_ = value;
3048 public const int UseTwoOptFieldNumber = 7;
3049 private global::Google.OrTools.Util.OptionalBoolean useTwoOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3062 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3063 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3064 public global::Google.OrTools.Util.OptionalBoolean UseTwoOpt {
3065 get { return useTwoOpt_; }
3072 public const int UseOrOptFieldNumber = 8;
3073 private global::Google.OrTools.Util.OptionalBoolean useOrOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3087 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3088 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3089 public global::Google.OrTools.Util.OptionalBoolean UseOrOpt {
3090 get { return useOrOpt_; }
3097 public const int UseLinKernighanFieldNumber = 9;
3098 private global::Google.OrTools.Util.OptionalBoolean useLinKernighan_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3105 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3106 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3107 public global::Google.OrTools.Util.OptionalBoolean UseLinKernighan {
3108 get { return useLinKernighan_; }
3110 useLinKernighan_ = value;
3115 public const int UseTspOptFieldNumber = 10;
3116 private global::Google.OrTools.Util.OptionalBoolean useTspOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3125 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3126 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3127 public global::Google.OrTools.Util.OptionalBoolean UseTspOpt {
3128 get { return useTspOpt_; }
3135 public const int UseMakeActiveFieldNumber = 11;
3136 private global::Google.OrTools.Util.OptionalBoolean useMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3146 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3147 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3148 public global::Google.OrTools.Util.OptionalBoolean UseMakeActive {
3149 get { return useMakeActive_; }
3151 useMakeActive_ = value;
3156 public const int UseRelocateAndMakeActiveFieldNumber = 21;
3157 private global::Google.OrTools.Util.OptionalBoolean useRelocateAndMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3170 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3171 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3172 public global::Google.OrTools.Util.OptionalBoolean UseRelocateAndMakeActive {
3173 get { return useRelocateAndMakeActive_; }
3175 useRelocateAndMakeActive_ = value;
3180 public const int UseMakeInactiveFieldNumber = 12;
3181 private global::Google.OrTools.Util.OptionalBoolean useMakeInactive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3189 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3190 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3191 public global::Google.OrTools.Util.OptionalBoolean UseMakeInactive {
3192 get { return useMakeInactive_; }
3194 useMakeInactive_ = value;
3199 public const int UseMakeChainInactiveFieldNumber = 13;
3200 private global::Google.OrTools.Util.OptionalBoolean useMakeChainInactive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3209 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3210 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3211 public global::Google.OrTools.Util.OptionalBoolean UseMakeChainInactive {
3212 get { return useMakeChainInactive_; }
3214 useMakeChainInactive_ = value;
3219 public const int UseSwapActiveFieldNumber = 14;
3220 private global::Google.OrTools.Util.OptionalBoolean useSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3228 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3229 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3230 public global::Google.OrTools.Util.OptionalBoolean UseSwapActive {
3231 get { return useSwapActive_; }
3233 useSwapActive_ = value;
3238 public const int UseExtendedSwapActiveFieldNumber = 15;
3239 private global::Google.OrTools.Util.OptionalBoolean useExtendedSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3252 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3253 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3254 public global::Google.OrTools.Util.OptionalBoolean UseExtendedSwapActive {
3255 get { return useExtendedSwapActive_; }
3257 useExtendedSwapActive_ = value;
3262 public const int UseShortestPathSwapActiveFieldNumber = 34;
3263 private global::Google.OrTools.Util.OptionalBoolean useShortestPathSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3272 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3273 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3274 public global::Google.OrTools.Util.OptionalBoolean UseShortestPathSwapActive {
3275 get { return useShortestPathSwapActive_; }
3277 useShortestPathSwapActive_ = value;
3282 public const int UseNodePairSwapActiveFieldNumber = 20;
3283 private global::Google.OrTools.Util.OptionalBoolean useNodePairSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3297 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3298 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3299 public global::Google.OrTools.Util.OptionalBoolean UseNodePairSwapActive {
3300 get { return useNodePairSwapActive_; }
3302 useNodePairSwapActive_ = value;
3307 public const int UsePathLnsFieldNumber = 16;
3308 private global::Google.OrTools.Util.OptionalBoolean usePathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3319 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3320 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3321 public global::Google.OrTools.Util.OptionalBoolean UsePathLns {
3322 get { return usePathLns_; }
3324 usePathLns_ = value;
3329 public const int UseFullPathLnsFieldNumber = 17;
3330 private global::Google.OrTools.Util.OptionalBoolean useFullPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3334 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3335 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3336 public global::Google.OrTools.Util.OptionalBoolean UseFullPathLns {
3337 get { return useFullPathLns_; }
3339 useFullPathLns_ = value;
3344 public const int UseTspLnsFieldNumber = 18;
3345 private global::Google.OrTools.Util.OptionalBoolean useTspLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3354 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3355 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3356 public global::Google.OrTools.Util.OptionalBoolean UseTspLns {
3357 get { return useTspLns_; }
3364 public const int UseInactiveLnsFieldNumber = 19;
3365 private global::Google.OrTools.Util.OptionalBoolean useInactiveLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3371 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3372 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3373 public global::Google.OrTools.Util.OptionalBoolean UseInactiveLns {
3374 get { return useInactiveLns_; }
3376 useInactiveLns_ = value;
3381 public const int UseGlobalCheapestInsertionPathLnsFieldNumber = 27;
3382 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3388 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3389 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3390 public global::Google.OrTools.Util.OptionalBoolean UseGlobalCheapestInsertionPathLns {
3391 get { return useGlobalCheapestInsertionPathLns_; }
3393 useGlobalCheapestInsertionPathLns_ = value;
3398 public const int UseLocalCheapestInsertionPathLnsFieldNumber = 28;
3399 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3403 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3404 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3405 public global::Google.OrTools.Util.OptionalBoolean UseLocalCheapestInsertionPathLns {
3406 get { return useLocalCheapestInsertionPathLns_; }
3408 useLocalCheapestInsertionPathLns_ = value;
3413 public const int UseRelocatePathGlobalCheapestInsertionInsertUnperformedFieldNumber = 33;
3414 private global::Google.OrTools.Util.OptionalBoolean useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3420 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3421 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3422 public global::Google.OrTools.Util.OptionalBoolean UseRelocatePathGlobalCheapestInsertionInsertUnperformed {
3423 get { return useRelocatePathGlobalCheapestInsertionInsertUnperformed_; }
3425 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = value;
3430 public const int UseGlobalCheapestInsertionExpensiveChainLnsFieldNumber = 29;
3431 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionExpensiveChainLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3438 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3439 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3440 public global::Google.OrTools.Util.OptionalBoolean UseGlobalCheapestInsertionExpensiveChainLns {
3441 get { return useGlobalCheapestInsertionExpensiveChainLns_; }
3443 useGlobalCheapestInsertionExpensiveChainLns_ = value;
3448 public const int UseLocalCheapestInsertionExpensiveChainLnsFieldNumber = 30;
3449 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionExpensiveChainLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3454 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3455 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3456 public global::Google.OrTools.Util.OptionalBoolean UseLocalCheapestInsertionExpensiveChainLns {
3457 get { return useLocalCheapestInsertionExpensiveChainLns_; }
3459 useLocalCheapestInsertionExpensiveChainLns_ = value;
3464 public const int UseGlobalCheapestInsertionCloseNodesLnsFieldNumber = 31;
3465 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionCloseNodesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3472 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3473 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3474 public global::Google.OrTools.Util.OptionalBoolean UseGlobalCheapestInsertionCloseNodesLns {
3475 get { return useGlobalCheapestInsertionCloseNodesLns_; }
3477 useGlobalCheapestInsertionCloseNodesLns_ = value;
3482 public const int UseLocalCheapestInsertionCloseNodesLnsFieldNumber = 32;
3483 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionCloseNodesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3488 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3489 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3490 public global::Google.OrTools.Util.OptionalBoolean UseLocalCheapestInsertionCloseNodesLns {
3491 get { return useLocalCheapestInsertionCloseNodesLns_; }
3493 useLocalCheapestInsertionCloseNodesLns_ = value;
3497 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3498 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3499 public override bool Equals(
object other) {
3503 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3504 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3506 if (ReferenceEquals(other,
null)) {
3509 if (ReferenceEquals(other,
this)) {
3512 if (UseRelocate != other.UseRelocate)
return false;
3513 if (UseRelocatePair != other.UseRelocatePair)
return false;
3514 if (UseLightRelocatePair != other.UseLightRelocatePair)
return false;
3515 if (UseRelocateNeighbors != other.UseRelocateNeighbors)
return false;
3516 if (UseRelocateSubtrip != other.UseRelocateSubtrip)
return false;
3517 if (UseExchange != other.UseExchange)
return false;
3518 if (UseExchangePair != other.UseExchangePair)
return false;
3519 if (UseExchangeSubtrip != other.UseExchangeSubtrip)
return false;
3520 if (UseCross != other.UseCross)
return false;
3521 if (UseCrossExchange != other.UseCrossExchange)
return false;
3522 if (UseRelocateExpensiveChain != other.UseRelocateExpensiveChain)
return false;
3523 if (UseTwoOpt != other.UseTwoOpt)
return false;
3524 if (UseOrOpt != other.UseOrOpt)
return false;
3525 if (UseLinKernighan != other.UseLinKernighan)
return false;
3526 if (UseTspOpt != other.UseTspOpt)
return false;
3527 if (UseMakeActive != other.UseMakeActive)
return false;
3528 if (UseRelocateAndMakeActive != other.UseRelocateAndMakeActive)
return false;
3529 if (UseMakeInactive != other.UseMakeInactive)
return false;
3530 if (UseMakeChainInactive != other.UseMakeChainInactive)
return false;
3531 if (UseSwapActive != other.UseSwapActive)
return false;
3532 if (UseExtendedSwapActive != other.UseExtendedSwapActive)
return false;
3533 if (UseShortestPathSwapActive != other.UseShortestPathSwapActive)
return false;
3534 if (UseNodePairSwapActive != other.UseNodePairSwapActive)
return false;
3535 if (UsePathLns != other.UsePathLns)
return false;
3536 if (UseFullPathLns != other.UseFullPathLns)
return false;
3537 if (UseTspLns != other.UseTspLns)
return false;
3538 if (UseInactiveLns != other.UseInactiveLns)
return false;
3539 if (UseGlobalCheapestInsertionPathLns != other.UseGlobalCheapestInsertionPathLns)
return false;
3540 if (UseLocalCheapestInsertionPathLns != other.UseLocalCheapestInsertionPathLns)
return false;
3541 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != other.UseRelocatePathGlobalCheapestInsertionInsertUnperformed)
return false;
3542 if (UseGlobalCheapestInsertionExpensiveChainLns != other.UseGlobalCheapestInsertionExpensiveChainLns)
return false;
3543 if (UseLocalCheapestInsertionExpensiveChainLns != other.UseLocalCheapestInsertionExpensiveChainLns)
return false;
3544 if (UseGlobalCheapestInsertionCloseNodesLns != other.UseGlobalCheapestInsertionCloseNodesLns)
return false;
3545 if (UseLocalCheapestInsertionCloseNodesLns != other.UseLocalCheapestInsertionCloseNodesLns)
return false;
3546 return Equals(_unknownFields, other._unknownFields);
3549 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3550 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3551 public override int GetHashCode() {
3553 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocate.GetHashCode();
3554 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocatePair.GetHashCode();
3555 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseLightRelocatePair.GetHashCode();
3556 if (UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateNeighbors.GetHashCode();
3557 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateSubtrip.GetHashCode();
3558 if (UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseExchange.GetHashCode();
3559 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseExchangePair.GetHashCode();
3560 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseExchangeSubtrip.GetHashCode();
3561 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseCross.GetHashCode();
3562 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseCrossExchange.GetHashCode();
3563 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateExpensiveChain.GetHashCode();
3564 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseTwoOpt.GetHashCode();
3565 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseOrOpt.GetHashCode();
3566 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseLinKernighan.GetHashCode();
3567 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseTspOpt.GetHashCode();
3568 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseMakeActive.GetHashCode();
3569 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateAndMakeActive.GetHashCode();
3570 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseMakeInactive.GetHashCode();
3571 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseMakeChainInactive.GetHashCode();
3572 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseSwapActive.GetHashCode();
3573 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseExtendedSwapActive.GetHashCode();
3574 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseShortestPathSwapActive.GetHashCode();
3575 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseNodePairSwapActive.GetHashCode();
3576 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UsePathLns.GetHashCode();
3577 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseFullPathLns.GetHashCode();
3578 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseTspLns.GetHashCode();
3579 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseInactiveLns.GetHashCode();
3580 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseGlobalCheapestInsertionPathLns.GetHashCode();
3581 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseLocalCheapestInsertionPathLns.GetHashCode();
3582 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocatePathGlobalCheapestInsertionInsertUnperformed.GetHashCode();
3583 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseGlobalCheapestInsertionExpensiveChainLns.GetHashCode();
3584 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseLocalCheapestInsertionExpensiveChainLns.GetHashCode();
3585 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseGlobalCheapestInsertionCloseNodesLns.GetHashCode();
3586 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) hash ^= UseLocalCheapestInsertionCloseNodesLns.GetHashCode();
3587 if (_unknownFields !=
null) {
3588 hash ^= _unknownFields.GetHashCode();
3593 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3594 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3595 public override string ToString() {
3596 return pb::JsonFormatter.ToDiagnosticString(
this);
3599 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3600 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3601 public void WriteTo(pb::CodedOutputStream output) {
3602 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3603 output.WriteRawMessage(
this);
3605 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3606 output.WriteRawTag(8);
3607 output.WriteEnum((
int) UseRelocate);
3609 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3610 output.WriteRawTag(16);
3611 output.WriteEnum((
int) UseRelocatePair);
3613 if (UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3614 output.WriteRawTag(24);
3615 output.WriteEnum((
int) UseRelocateNeighbors);
3617 if (UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3618 output.WriteRawTag(32);
3619 output.WriteEnum((
int) UseExchange);
3621 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3622 output.WriteRawTag(40);
3623 output.WriteEnum((
int) UseCross);
3625 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3626 output.WriteRawTag(48);
3627 output.WriteEnum((
int) UseCrossExchange);
3629 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3630 output.WriteRawTag(56);
3631 output.WriteEnum((
int) UseTwoOpt);
3633 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3634 output.WriteRawTag(64);
3635 output.WriteEnum((
int) UseOrOpt);
3637 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3638 output.WriteRawTag(72);
3639 output.WriteEnum((
int) UseLinKernighan);
3641 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3642 output.WriteRawTag(80);
3643 output.WriteEnum((
int) UseTspOpt);
3645 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3646 output.WriteRawTag(88);
3647 output.WriteEnum((
int) UseMakeActive);
3649 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3650 output.WriteRawTag(96);
3651 output.WriteEnum((
int) UseMakeInactive);
3653 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3654 output.WriteRawTag(104);
3655 output.WriteEnum((
int) UseMakeChainInactive);
3657 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3658 output.WriteRawTag(112);
3659 output.WriteEnum((
int) UseSwapActive);
3661 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3662 output.WriteRawTag(120);
3663 output.WriteEnum((
int) UseExtendedSwapActive);
3665 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3666 output.WriteRawTag(128, 1);
3667 output.WriteEnum((
int) UsePathLns);
3669 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3670 output.WriteRawTag(136, 1);
3671 output.WriteEnum((
int) UseFullPathLns);
3673 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3674 output.WriteRawTag(144, 1);
3675 output.WriteEnum((
int) UseTspLns);
3677 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3678 output.WriteRawTag(152, 1);
3679 output.WriteEnum((
int) UseInactiveLns);
3681 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3682 output.WriteRawTag(160, 1);
3683 output.WriteEnum((
int) UseNodePairSwapActive);
3685 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3686 output.WriteRawTag(168, 1);
3687 output.WriteEnum((
int) UseRelocateAndMakeActive);
3689 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3690 output.WriteRawTag(176, 1);
3691 output.WriteEnum((
int) UseExchangePair);
3693 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3694 output.WriteRawTag(184, 1);
3695 output.WriteEnum((
int) UseRelocateExpensiveChain);
3697 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3698 output.WriteRawTag(192, 1);
3699 output.WriteEnum((
int) UseLightRelocatePair);
3701 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3702 output.WriteRawTag(200, 1);
3703 output.WriteEnum((
int) UseRelocateSubtrip);
3705 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3706 output.WriteRawTag(208, 1);
3707 output.WriteEnum((
int) UseExchangeSubtrip);
3709 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3710 output.WriteRawTag(216, 1);
3711 output.WriteEnum((
int) UseGlobalCheapestInsertionPathLns);
3713 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3714 output.WriteRawTag(224, 1);
3715 output.WriteEnum((
int) UseLocalCheapestInsertionPathLns);
3717 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3718 output.WriteRawTag(232, 1);
3719 output.WriteEnum((
int) UseGlobalCheapestInsertionExpensiveChainLns);
3721 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3722 output.WriteRawTag(240, 1);
3723 output.WriteEnum((
int) UseLocalCheapestInsertionExpensiveChainLns);
3725 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3726 output.WriteRawTag(248, 1);
3727 output.WriteEnum((
int) UseGlobalCheapestInsertionCloseNodesLns);
3729 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3730 output.WriteRawTag(128, 2);
3731 output.WriteEnum((
int) UseLocalCheapestInsertionCloseNodesLns);
3733 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3734 output.WriteRawTag(136, 2);
3735 output.WriteEnum((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
3737 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3738 output.WriteRawTag(144, 2);
3739 output.WriteEnum((
int) UseShortestPathSwapActive);
3741 if (_unknownFields !=
null) {
3742 _unknownFields.WriteTo(output);
3747 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3748 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3749 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3750 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3751 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3752 output.WriteRawTag(8);
3753 output.WriteEnum((
int) UseRelocate);
3755 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3756 output.WriteRawTag(16);
3757 output.WriteEnum((
int) UseRelocatePair);
3759 if (UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3760 output.WriteRawTag(24);
3761 output.WriteEnum((
int) UseRelocateNeighbors);
3763 if (UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3764 output.WriteRawTag(32);
3765 output.WriteEnum((
int) UseExchange);
3767 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3768 output.WriteRawTag(40);
3769 output.WriteEnum((
int) UseCross);
3771 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3772 output.WriteRawTag(48);
3773 output.WriteEnum((
int) UseCrossExchange);
3775 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3776 output.WriteRawTag(56);
3777 output.WriteEnum((
int) UseTwoOpt);
3779 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3780 output.WriteRawTag(64);
3781 output.WriteEnum((
int) UseOrOpt);
3783 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3784 output.WriteRawTag(72);
3785 output.WriteEnum((
int) UseLinKernighan);
3787 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3788 output.WriteRawTag(80);
3789 output.WriteEnum((
int) UseTspOpt);
3791 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3792 output.WriteRawTag(88);
3793 output.WriteEnum((
int) UseMakeActive);
3795 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3796 output.WriteRawTag(96);
3797 output.WriteEnum((
int) UseMakeInactive);
3799 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3800 output.WriteRawTag(104);
3801 output.WriteEnum((
int) UseMakeChainInactive);
3803 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3804 output.WriteRawTag(112);
3805 output.WriteEnum((
int) UseSwapActive);
3807 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3808 output.WriteRawTag(120);
3809 output.WriteEnum((
int) UseExtendedSwapActive);
3811 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3812 output.WriteRawTag(128, 1);
3813 output.WriteEnum((
int) UsePathLns);
3815 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3816 output.WriteRawTag(136, 1);
3817 output.WriteEnum((
int) UseFullPathLns);
3819 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3820 output.WriteRawTag(144, 1);
3821 output.WriteEnum((
int) UseTspLns);
3823 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3824 output.WriteRawTag(152, 1);
3825 output.WriteEnum((
int) UseInactiveLns);
3827 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3828 output.WriteRawTag(160, 1);
3829 output.WriteEnum((
int) UseNodePairSwapActive);
3831 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3832 output.WriteRawTag(168, 1);
3833 output.WriteEnum((
int) UseRelocateAndMakeActive);
3835 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3836 output.WriteRawTag(176, 1);
3837 output.WriteEnum((
int) UseExchangePair);
3839 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3840 output.WriteRawTag(184, 1);
3841 output.WriteEnum((
int) UseRelocateExpensiveChain);
3843 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3844 output.WriteRawTag(192, 1);
3845 output.WriteEnum((
int) UseLightRelocatePair);
3847 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3848 output.WriteRawTag(200, 1);
3849 output.WriteEnum((
int) UseRelocateSubtrip);
3851 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3852 output.WriteRawTag(208, 1);
3853 output.WriteEnum((
int) UseExchangeSubtrip);
3855 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3856 output.WriteRawTag(216, 1);
3857 output.WriteEnum((
int) UseGlobalCheapestInsertionPathLns);
3859 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3860 output.WriteRawTag(224, 1);
3861 output.WriteEnum((
int) UseLocalCheapestInsertionPathLns);
3863 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3864 output.WriteRawTag(232, 1);
3865 output.WriteEnum((
int) UseGlobalCheapestInsertionExpensiveChainLns);
3867 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3868 output.WriteRawTag(240, 1);
3869 output.WriteEnum((
int) UseLocalCheapestInsertionExpensiveChainLns);
3871 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3872 output.WriteRawTag(248, 1);
3873 output.WriteEnum((
int) UseGlobalCheapestInsertionCloseNodesLns);
3875 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3876 output.WriteRawTag(128, 2);
3877 output.WriteEnum((
int) UseLocalCheapestInsertionCloseNodesLns);
3879 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3880 output.WriteRawTag(136, 2);
3881 output.WriteEnum((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
3883 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3884 output.WriteRawTag(144, 2);
3885 output.WriteEnum((
int) UseShortestPathSwapActive);
3887 if (_unknownFields !=
null) {
3888 _unknownFields.WriteTo(ref output);
3893 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3894 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3895 public int CalculateSize() {
3897 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3898 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocate);
3900 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3901 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocatePair);
3903 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3904 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLightRelocatePair);
3906 if (UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3907 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateNeighbors);
3909 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3910 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateSubtrip);
3912 if (UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3913 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchange);
3915 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3916 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangePair);
3918 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3919 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangeSubtrip);
3921 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3922 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCross);
3924 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3925 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCrossExchange);
3927 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3928 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateExpensiveChain);
3930 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3931 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTwoOpt);
3933 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3934 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseOrOpt);
3936 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3937 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLinKernighan);
3939 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3940 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTspOpt);
3942 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3943 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeActive);
3945 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3946 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateAndMakeActive);
3948 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3949 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeInactive);
3951 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3952 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeChainInactive);
3954 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3955 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseSwapActive);
3957 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3958 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExtendedSwapActive);
3960 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3961 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseShortestPathSwapActive);
3963 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3964 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseNodePairSwapActive);
3966 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3967 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UsePathLns);
3969 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3970 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseFullPathLns);
3972 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3973 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTspLns);
3975 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3976 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseInactiveLns);
3978 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3979 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionPathLns);
3981 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3982 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionPathLns);
3984 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3985 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
3987 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3988 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionExpensiveChainLns);
3990 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3991 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionExpensiveChainLns);
3993 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3994 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionCloseNodesLns);
3996 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3997 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionCloseNodesLns);
3999 if (_unknownFields !=
null) {
4000 size += _unknownFields.CalculateSize();
4005 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4006 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4007 public void MergeFrom(LocalSearchNeighborhoodOperators other) {
4008 if (other ==
null) {
4011 if (other.UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4012 UseRelocate = other.UseRelocate;
4014 if (other.UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4015 UseRelocatePair = other.UseRelocatePair;
4017 if (other.UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4018 UseLightRelocatePair = other.UseLightRelocatePair;
4020 if (other.UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4021 UseRelocateNeighbors = other.UseRelocateNeighbors;
4023 if (other.UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4024 UseRelocateSubtrip = other.UseRelocateSubtrip;
4026 if (other.UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4027 UseExchange = other.UseExchange;
4029 if (other.UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4030 UseExchangePair = other.UseExchangePair;
4032 if (other.UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4033 UseExchangeSubtrip = other.UseExchangeSubtrip;
4035 if (other.UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4036 UseCross = other.UseCross;
4038 if (other.UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4039 UseCrossExchange = other.UseCrossExchange;
4041 if (other.UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4042 UseRelocateExpensiveChain = other.UseRelocateExpensiveChain;
4044 if (other.UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4045 UseTwoOpt = other.UseTwoOpt;
4047 if (other.UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4048 UseOrOpt = other.UseOrOpt;
4050 if (other.UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4051 UseLinKernighan = other.UseLinKernighan;
4053 if (other.UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4054 UseTspOpt = other.UseTspOpt;
4056 if (other.UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4057 UseMakeActive = other.UseMakeActive;
4059 if (other.UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4060 UseRelocateAndMakeActive = other.UseRelocateAndMakeActive;
4062 if (other.UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4063 UseMakeInactive = other.UseMakeInactive;
4065 if (other.UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4066 UseMakeChainInactive = other.UseMakeChainInactive;
4068 if (other.UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4069 UseSwapActive = other.UseSwapActive;
4071 if (other.UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4072 UseExtendedSwapActive = other.UseExtendedSwapActive;
4074 if (other.UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4075 UseShortestPathSwapActive = other.UseShortestPathSwapActive;
4077 if (other.UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4078 UseNodePairSwapActive = other.UseNodePairSwapActive;
4080 if (other.UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4081 UsePathLns = other.UsePathLns;
4083 if (other.UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4084 UseFullPathLns = other.UseFullPathLns;
4086 if (other.UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4087 UseTspLns = other.UseTspLns;
4089 if (other.UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4090 UseInactiveLns = other.UseInactiveLns;
4092 if (other.UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4093 UseGlobalCheapestInsertionPathLns = other.UseGlobalCheapestInsertionPathLns;
4095 if (other.UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4096 UseLocalCheapestInsertionPathLns = other.UseLocalCheapestInsertionPathLns;
4098 if (other.UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4099 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = other.UseRelocatePathGlobalCheapestInsertionInsertUnperformed;
4101 if (other.UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4102 UseGlobalCheapestInsertionExpensiveChainLns = other.UseGlobalCheapestInsertionExpensiveChainLns;
4104 if (other.UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4105 UseLocalCheapestInsertionExpensiveChainLns = other.UseLocalCheapestInsertionExpensiveChainLns;
4107 if (other.UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4108 UseGlobalCheapestInsertionCloseNodesLns = other.UseGlobalCheapestInsertionCloseNodesLns;
4110 if (other.UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4111 UseLocalCheapestInsertionCloseNodesLns = other.UseLocalCheapestInsertionCloseNodesLns;
4113 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4116 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4117 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4118 public void MergeFrom(pb::CodedInputStream input) {
4119 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4120 input.ReadRawMessage(
this);
4123 while ((tag = input.ReadTag()) != 0) {
4126 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4129 UseRelocate = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4133 UseRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4137 UseRelocateNeighbors = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4141 UseExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4145 UseCross = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4149 UseCrossExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4153 UseTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4157 UseOrOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4161 UseLinKernighan = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4165 UseTspOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4169 UseMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4173 UseMakeInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4177 UseMakeChainInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4181 UseSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4185 UseExtendedSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4189 UsePathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4193 UseFullPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4197 UseTspLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4201 UseInactiveLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4205 UseNodePairSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4209 UseRelocateAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4213 UseExchangePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4217 UseRelocateExpensiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4221 UseLightRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4225 UseRelocateSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4229 UseExchangeSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4233 UseGlobalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4237 UseLocalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4241 UseGlobalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4245 UseLocalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4249 UseGlobalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4253 UseLocalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4257 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4261 UseShortestPathSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4269 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4270 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4271 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4272 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4274 while ((tag = input.ReadTag()) != 0) {
4277 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4280 UseRelocate = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4284 UseRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4288 UseRelocateNeighbors = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4292 UseExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4296 UseCross = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4300 UseCrossExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4304 UseTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4308 UseOrOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4312 UseLinKernighan = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4316 UseTspOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4320 UseMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4324 UseMakeInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4328 UseMakeChainInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4332 UseSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4336 UseExtendedSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4340 UsePathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4344 UseFullPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4348 UseTspLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4352 UseInactiveLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4356 UseNodePairSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4360 UseRelocateAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4364 UseExchangePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4368 UseRelocateExpensiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4372 UseLightRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4376 UseRelocateSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4380 UseExchangeSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4384 UseGlobalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4388 UseLocalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4392 UseGlobalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4396 UseLocalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4400 UseGlobalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4404 UseLocalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4408 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4412 UseShortestPathSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4425 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
4426 public sealed partial
class ImprovementSearchLimitParameters : pb::IMessage<ImprovementSearchLimitParameters>
4427 #
if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4428 , pb::IBufferMessage
4431 private static readonly pb::MessageParser<ImprovementSearchLimitParameters> _parser =
new pb::MessageParser<ImprovementSearchLimitParameters>(() =>
new ImprovementSearchLimitParameters());
4432 private pb::UnknownFieldSet _unknownFields;
4433 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4434 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4435 public static pb::MessageParser<ImprovementSearchLimitParameters> Parser {
get {
return _parser; } }
4437 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4438 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4439 public static pbr::MessageDescriptor Descriptor {
4440 get {
return global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Descriptor.NestedTypes[1]; }
4443 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4444 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4445 pbr::MessageDescriptor pb::IMessage.Descriptor {
4446 get {
return Descriptor; }
4449 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4450 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4455 partial
void OnConstruction();
4457 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4458 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4460 improvementRateCoefficient_ = other.improvementRateCoefficient_;
4461 improvementRateSolutionsDistance_ = other.improvementRateSolutionsDistance_;
4462 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
4465 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4466 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4472 public const int ImprovementRateCoefficientFieldNumber = 38;
4473 private double improvementRateCoefficient_;
4479 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4480 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4481 public double ImprovementRateCoefficient {
4482 get {
return improvementRateCoefficient_; }
4484 improvementRateCoefficient_ = value;
4489 public const int ImprovementRateSolutionsDistanceFieldNumber = 39;
4490 private int improvementRateSolutionsDistance_;
4498 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4499 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4500 public int ImprovementRateSolutionsDistance {
4501 get {
return improvementRateSolutionsDistance_; }
4503 improvementRateSolutionsDistance_ = value;
4507 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4508 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4509 public override bool Equals(
object other) {
4513 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4514 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4516 if (ReferenceEquals(other,
null)) {
4519 if (ReferenceEquals(other,
this)) {
4522 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ImprovementRateCoefficient, other.
ImprovementRateCoefficient))
return false;
4524 return Equals(_unknownFields, other._unknownFields);
4527 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4528 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4529 public override int GetHashCode() {
4531 if (ImprovementRateCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ImprovementRateCoefficient);
4532 if (ImprovementRateSolutionsDistance != 0) hash ^= ImprovementRateSolutionsDistance.GetHashCode();
4533 if (_unknownFields !=
null) {
4534 hash ^= _unknownFields.GetHashCode();
4539 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4540 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4541 public override string ToString() {
4542 return pb::JsonFormatter.ToDiagnosticString(
this);
4545 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4546 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4547 public void WriteTo(pb::CodedOutputStream output) {
4548 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4549 output.WriteRawMessage(
this);
4551 if (ImprovementRateCoefficient != 0D) {
4552 output.WriteRawTag(177, 2);
4553 output.WriteDouble(ImprovementRateCoefficient);
4555 if (ImprovementRateSolutionsDistance != 0) {
4556 output.WriteRawTag(184, 2);
4557 output.WriteInt32(ImprovementRateSolutionsDistance);
4559 if (_unknownFields !=
null) {
4560 _unknownFields.WriteTo(output);
4565 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4566 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4567 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4568 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
4569 if (ImprovementRateCoefficient != 0D) {
4570 output.WriteRawTag(177, 2);
4571 output.WriteDouble(ImprovementRateCoefficient);
4573 if (ImprovementRateSolutionsDistance != 0) {
4574 output.WriteRawTag(184, 2);
4575 output.WriteInt32(ImprovementRateSolutionsDistance);
4577 if (_unknownFields !=
null) {
4578 _unknownFields.WriteTo(ref output);
4583 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4584 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4585 public int CalculateSize() {
4587 if (ImprovementRateCoefficient != 0D) {
4590 if (ImprovementRateSolutionsDistance != 0) {
4591 size += 2 + pb::CodedOutputStream.ComputeInt32Size(ImprovementRateSolutionsDistance);
4593 if (_unknownFields !=
null) {
4594 size += _unknownFields.CalculateSize();
4599 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4600 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4601 public void MergeFrom(ImprovementSearchLimitParameters other) {
4602 if (other ==
null) {
4605 if (other.ImprovementRateCoefficient != 0D) {
4606 ImprovementRateCoefficient = other.ImprovementRateCoefficient;
4608 if (other.ImprovementRateSolutionsDistance != 0) {
4609 ImprovementRateSolutionsDistance = other.ImprovementRateSolutionsDistance;
4611 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4614 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4615 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4616 public void MergeFrom(pb::CodedInputStream input) {
4617 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4618 input.ReadRawMessage(
this);
4621 while ((tag = input.ReadTag()) != 0) {
4624 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4627 ImprovementRateCoefficient = input.ReadDouble();
4631 ImprovementRateSolutionsDistance = input.ReadInt32();
4639 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4640 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4641 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4642 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4644 while ((tag = input.ReadTag()) != 0) {
4647 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4650 ImprovementRateCoefficient = input.ReadDouble();
4654 ImprovementRateSolutionsDistance = input.ReadInt32();
4672 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
4673 public sealed partial
class RoutingModelParameters : pb::IMessage<RoutingModelParameters>
4674 #
if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4675 , pb::IBufferMessage