206 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
210 private static readonly pb::MessageParser<RoutingSearchParameters> _parser =
new pb::MessageParser<RoutingSearchParameters>(() =>
new RoutingSearchParameters());
211 private pb::UnknownFieldSet _unknownFields;
212 private int _hasBits0;
213 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
214 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
215 public static pb::MessageParser<RoutingSearchParameters>
Parser {
get {
return _parser; } }
217 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
218 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
219 public static pbr::MessageDescriptor
Descriptor {
220 get {
return global::Google.OrTools.ConstraintSolver.RoutingParametersReflection.Descriptor.MessageTypes[0]; }
223 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
224 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
225 pbr::MessageDescriptor pb::IMessage.Descriptor {
226 get {
return Descriptor; }
229 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
230 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
231 public RoutingSearchParameters() {
235 partial
void OnConstruction();
237 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
238 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
240 _hasBits0 = other._hasBits0;
241 firstSolutionStrategy_ = other.firstSolutionStrategy_;
242 useUnfilteredFirstSolutionStrategy_ = other.useUnfilteredFirstSolutionStrategy_;
243 savingsParameters_ = other.savingsParameters_ !=
null ? other.savingsParameters_.
Clone() :
null;
244 globalCheapestInsertionFirstSolutionParameters_ = other.globalCheapestInsertionFirstSolutionParameters_ !=
null ? other.globalCheapestInsertionFirstSolutionParameters_.
Clone() :
null;
245 globalCheapestInsertionLsOperatorParameters_ = other.globalCheapestInsertionLsOperatorParameters_ !=
null ? other.globalCheapestInsertionLsOperatorParameters_.
Clone() :
null;
246 localCheapestInsertionParameters_ = other.localCheapestInsertionParameters_ !=
null ? other.localCheapestInsertionParameters_.
Clone() :
null;
247 localCheapestCostInsertionParameters_ = other.localCheapestCostInsertionParameters_ !=
null ? other.localCheapestCostInsertionParameters_.
Clone() :
null;
248 christofidesUseMinimumMatching_ = other.christofidesUseMinimumMatching_;
249 firstSolutionOptimizationPeriod_ = other.firstSolutionOptimizationPeriod_;
250 localSearchOperators_ = other.localSearchOperators_ !=
null ? other.localSearchOperators_.
Clone() :
null;
251 lsOperatorNeighborsRatio_ = other.lsOperatorNeighborsRatio_;
252 lsOperatorMinNeighbors_ = other.lsOperatorMinNeighbors_;
253 useMultiArmedBanditConcatenateOperators_ = other.useMultiArmedBanditConcatenateOperators_;
254 multiArmedBanditCompoundOperatorMemoryCoefficient_ = other.multiArmedBanditCompoundOperatorMemoryCoefficient_;
255 multiArmedBanditCompoundOperatorExplorationCoefficient_ = other.multiArmedBanditCompoundOperatorExplorationCoefficient_;
256 maxSwapActiveChainSize_ = other.maxSwapActiveChainSize_;
257 relocateExpensiveChainNumArcsToConsider_ = other.relocateExpensiveChainNumArcsToConsider_;
258 heuristicExpensiveChainLnsNumArcsToConsider_ = other.heuristicExpensiveChainLnsNumArcsToConsider_;
259 heuristicCloseNodesLnsNumNodes_ = other.heuristicCloseNodesLnsNumNodes_;
260 localSearchMetaheuristic_ = other.localSearchMetaheuristic_;
261 localSearchMetaheuristics_ = other.localSearchMetaheuristics_.Clone();
262 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = other.numMaxLocalOptimaBeforeMetaheuristicSwitch_;
263 guidedLocalSearchLambdaCoefficient_ = other.guidedLocalSearchLambdaCoefficient_;
264 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = other.guidedLocalSearchResetPenaltiesOnNewBestSolution_;
265 guidedLocalSearchPenalizeWithVehicleClasses_ = other.guidedLocalSearchPenalizeWithVehicleClasses_;
266 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ = other.useGuidedLocalSearchPenaltiesInLocalSearchOperators_;
267 useDepthFirstSearch_ = other.useDepthFirstSearch_;
268 useCp_ = other.useCp_;
269 useCpSat_ = other.useCpSat_;
270 useGeneralizedCpSat_ = other.useGeneralizedCpSat_;
271 satParameters_ = other.satParameters_ !=
null ? other.satParameters_.Clone() :
null;
272 reportIntermediateCpSatSolutions_ = other.reportIntermediateCpSatSolutions_;
273 fallbackToCpSatSizeThreshold_ = other.fallbackToCpSatSizeThreshold_;
274 continuousSchedulingSolver_ = other.continuousSchedulingSolver_;
275 mixedIntegerSchedulingSolver_ = other.mixedIntegerSchedulingSolver_;
276 disableSchedulingBewareThisMayDegradePerformance_ = other.disableSchedulingBewareThisMayDegradePerformance_;
277 optimizationStep_ = other.optimizationStep_;
278 numberOfSolutionsToCollect_ = other.numberOfSolutionsToCollect_;
279 solutionLimit_ = other.solutionLimit_;
280 timeLimit_ = other.timeLimit_ !=
null ? other.timeLimit_.Clone() :
null;
281 lnsTimeLimit_ = other.lnsTimeLimit_ !=
null ? other.lnsTimeLimit_.Clone() :
null;
282 secondaryLsTimeLimitRatio_ = other.secondaryLsTimeLimitRatio_;
283 improvementLimitParameters_ = other.improvementLimitParameters_ !=
null ? other.improvementLimitParameters_.
Clone() :
null;
284 useFullPropagation_ = other.useFullPropagation_;
285 logSearch_ = other.logSearch_;
286 logCostScalingFactor_ = other.logCostScalingFactor_;
287 logCostOffset_ = other.logCostOffset_;
288 logTag_ = other.logTag_;
289 useIteratedLocalSearch_ = other.useIteratedLocalSearch_;
290 iteratedLocalSearchParameters_ = other.iteratedLocalSearchParameters_ !=
null ? other.iteratedLocalSearchParameters_.
Clone() :
null;
291 _unknownFields = pb::UnknownFieldSet.
Clone(other._unknownFields);
294 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
295 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
301 public const int FirstSolutionStrategyFieldNumber = 1;
302 private global::Google.OrTools.ConstraintSolver.
FirstSolutionStrategy.
Types.
Value firstSolutionStrategy_ = global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset;
306 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
307 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
309 get { return firstSolutionStrategy_; }
311 firstSolutionStrategy_ = value;
316 public const int UseUnfilteredFirstSolutionStrategyFieldNumber = 2;
317 private bool useUnfilteredFirstSolutionStrategy_;
324 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
325 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
327 get {
return useUnfilteredFirstSolutionStrategy_; }
329 useUnfilteredFirstSolutionStrategy_ = value;
334 public const int SavingsParametersFieldNumber = 70;
335 private global::Google.OrTools.ConstraintSolver.SavingsParameters savingsParameters_;
339 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
340 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
342 get { return savingsParameters_; }
344 savingsParameters_ = value;
349 public const int GlobalCheapestInsertionFirstSolutionParametersFieldNumber = 71;
350 private global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters globalCheapestInsertionFirstSolutionParameters_;
355 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
356 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
358 get { return globalCheapestInsertionFirstSolutionParameters_; }
360 globalCheapestInsertionFirstSolutionParameters_ = value;
365 public const int GlobalCheapestInsertionLsOperatorParametersFieldNumber = 72;
366 private global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters globalCheapestInsertionLsOperatorParameters_;
373 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
374 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
376 get { return globalCheapestInsertionLsOperatorParameters_; }
378 globalCheapestInsertionLsOperatorParameters_ = value;
383 public const int LocalCheapestInsertionParametersFieldNumber = 68;
384 private global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters localCheapestInsertionParameters_;
388 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
389 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
391 get { return localCheapestInsertionParameters_; }
393 localCheapestInsertionParameters_ = value;
398 public const int LocalCheapestCostInsertionParametersFieldNumber = 69;
399 private global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters localCheapestCostInsertionParameters_;
403 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
404 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
406 get { return localCheapestCostInsertionParameters_; }
408 localCheapestCostInsertionParameters_ = value;
413 public const int ChristofidesUseMinimumMatchingFieldNumber = 30;
414 private bool christofidesUseMinimumMatching_;
419 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
420 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
422 get {
return christofidesUseMinimumMatching_; }
424 christofidesUseMinimumMatching_ = value;
429 public const int FirstSolutionOptimizationPeriodFieldNumber = 59;
430 private int firstSolutionOptimizationPeriod_;
440 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
441 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
443 get {
return firstSolutionOptimizationPeriod_; }
445 firstSolutionOptimizationPeriod_ = value;
450 public const int LocalSearchOperatorsFieldNumber = 3;
451 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators localSearchOperators_;
452 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
453 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
455 get { return localSearchOperators_; }
457 localSearchOperators_ = value;
462 public const int LsOperatorNeighborsRatioFieldNumber = 53;
463 private double lsOperatorNeighborsRatio_;
471 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
472 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
474 get {
return lsOperatorNeighborsRatio_; }
476 lsOperatorNeighborsRatio_ = value;
481 public const int LsOperatorMinNeighborsFieldNumber = 54;
482 private int lsOperatorMinNeighbors_;
483 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
484 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
486 get {
return lsOperatorMinNeighbors_; }
488 lsOperatorMinNeighbors_ = value;
493 public const int UseMultiArmedBanditConcatenateOperatorsFieldNumber = 41;
494 private bool useMultiArmedBanditConcatenateOperators_;
500 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
501 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
503 get {
return useMultiArmedBanditConcatenateOperators_; }
505 useMultiArmedBanditConcatenateOperators_ = value;
510 public const int MultiArmedBanditCompoundOperatorMemoryCoefficientFieldNumber = 42;
511 private double multiArmedBanditCompoundOperatorMemoryCoefficient_;
518 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
519 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
521 get {
return multiArmedBanditCompoundOperatorMemoryCoefficient_; }
523 multiArmedBanditCompoundOperatorMemoryCoefficient_ = value;
528 public const int MultiArmedBanditCompoundOperatorExplorationCoefficientFieldNumber = 43;
529 private double multiArmedBanditCompoundOperatorExplorationCoefficient_;
535 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
536 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
538 get {
return multiArmedBanditCompoundOperatorExplorationCoefficient_; }
540 multiArmedBanditCompoundOperatorExplorationCoefficient_ = value;
545 public const int MaxSwapActiveChainSizeFieldNumber = 66;
546 private int maxSwapActiveChainSize_;
550 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
551 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
553 get {
return maxSwapActiveChainSize_; }
555 maxSwapActiveChainSize_ = value;
560 public const int RelocateExpensiveChainNumArcsToConsiderFieldNumber = 20;
561 private int relocateExpensiveChainNumArcsToConsider_;
571 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
572 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
574 get {
return relocateExpensiveChainNumArcsToConsider_; }
576 relocateExpensiveChainNumArcsToConsider_ = value;
581 public const int HeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber = 32;
582 private int heuristicExpensiveChainLnsNumArcsToConsider_;
587 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
588 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
590 get {
return heuristicExpensiveChainLnsNumArcsToConsider_; }
592 heuristicExpensiveChainLnsNumArcsToConsider_ = value;
597 public const int HeuristicCloseNodesLnsNumNodesFieldNumber = 35;
598 private int heuristicCloseNodesLnsNumNodes_;
603 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
604 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
606 get {
return heuristicCloseNodesLnsNumNodes_; }
608 heuristicCloseNodesLnsNumNodes_ = value;
613 public const int LocalSearchMetaheuristicFieldNumber = 4;
614 private global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value localSearchMetaheuristic_ = global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset;
618 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
619 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
621 get { return localSearchMetaheuristic_; }
623 localSearchMetaheuristic_ = value;
628 public const int LocalSearchMetaheuristicsFieldNumber = 63;
629 private static readonly pb::FieldCodec<global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value> _repeated_localSearchMetaheuristics_codec
631 private readonly pbc::RepeatedField<global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value> localSearchMetaheuristics_ =
new pbc::RepeatedField<global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value>();
638 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
639 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
640 public pbc::RepeatedField<global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value>
LocalSearchMetaheuristics {
641 get { return localSearchMetaheuristics_; }
645 public const int NumMaxLocalOptimaBeforeMetaheuristicSwitchFieldNumber = 64;
646 private int numMaxLocalOptimaBeforeMetaheuristicSwitch_;
647 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
648 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
650 get {
return numMaxLocalOptimaBeforeMetaheuristicSwitch_; }
652 numMaxLocalOptimaBeforeMetaheuristicSwitch_ = value;
657 public const int GuidedLocalSearchLambdaCoefficientFieldNumber = 5;
658 private double guidedLocalSearchLambdaCoefficient_;
665 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
666 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
668 get {
return guidedLocalSearchLambdaCoefficient_; }
670 guidedLocalSearchLambdaCoefficient_ = value;
675 public const int GuidedLocalSearchResetPenaltiesOnNewBestSolutionFieldNumber = 51;
676 private bool guidedLocalSearchResetPenaltiesOnNewBestSolution_;
681 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
682 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
684 get {
return guidedLocalSearchResetPenaltiesOnNewBestSolution_; }
686 guidedLocalSearchResetPenaltiesOnNewBestSolution_ = value;
691 public const int GuidedLocalSearchPenalizeWithVehicleClassesFieldNumber = 61;
692 private bool guidedLocalSearchPenalizeWithVehicleClasses_;
698 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
699 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
701 get {
return guidedLocalSearchPenalizeWithVehicleClasses_; }
703 guidedLocalSearchPenalizeWithVehicleClasses_ = value;
708 public const int UseGuidedLocalSearchPenaltiesInLocalSearchOperatorsFieldNumber = 62;
709 private bool useGuidedLocalSearchPenaltiesInLocalSearchOperators_;
714 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
715 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
717 get {
return useGuidedLocalSearchPenaltiesInLocalSearchOperators_; }
719 useGuidedLocalSearchPenaltiesInLocalSearchOperators_ = value;
724 public const int UseDepthFirstSearchFieldNumber = 6;
725 private bool useDepthFirstSearch_;
732 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
733 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
735 get {
return useDepthFirstSearch_; }
737 useDepthFirstSearch_ = value;
742 public const int UseCpFieldNumber = 28;
743 private global::Google.OrTools.Util.OptionalBoolean useCp_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
749 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
750 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
752 get { return useCp_; }
759 public const int UseCpSatFieldNumber = 27;
760 private global::Google.OrTools.Util.OptionalBoolean useCpSat_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
767 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
768 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
770 get { return useCpSat_; }
777 public const int UseGeneralizedCpSatFieldNumber = 47;
778 private global::Google.OrTools.Util.OptionalBoolean useGeneralizedCpSat_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
785 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
786 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
788 get { return useGeneralizedCpSat_; }
790 useGeneralizedCpSat_ = value;
795 public const int SatParametersFieldNumber = 48;
796 private global::Google.OrTools.Sat.SatParameters satParameters_;
801 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
802 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
804 get { return satParameters_; }
806 satParameters_ = value;
811 public const int ReportIntermediateCpSatSolutionsFieldNumber = 56;
812 private bool reportIntermediateCpSatSolutions_;
817 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
818 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
820 get {
return reportIntermediateCpSatSolutions_; }
822 reportIntermediateCpSatSolutions_ = value;
827 public const int FallbackToCpSatSizeThresholdFieldNumber = 52;
828 private int fallbackToCpSatSizeThreshold_;
833 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
834 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
836 get {
return fallbackToCpSatSizeThreshold_; }
838 fallbackToCpSatSizeThreshold_ = value;
843 public const int ContinuousSchedulingSolverFieldNumber = 33;
844 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver continuousSchedulingSolver_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset;
845 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
846 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
848 get { return continuousSchedulingSolver_; }
850 continuousSchedulingSolver_ = value;
855 public const int MixedIntegerSchedulingSolverFieldNumber = 34;
856 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver mixedIntegerSchedulingSolver_ = global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset;
857 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
858 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
860 get { return mixedIntegerSchedulingSolver_; }
862 mixedIntegerSchedulingSolver_ = value;
867 public const int DisableSchedulingBewareThisMayDegradePerformanceFieldNumber = 50;
868 private readonly
static bool DisableSchedulingBewareThisMayDegradePerformanceDefaultValue =
false;
870 private bool disableSchedulingBewareThisMayDegradePerformance_;
875 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
876 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
878 get {
if ((_hasBits0 & 1) != 0) {
return disableSchedulingBewareThisMayDegradePerformance_; }
else {
return DisableSchedulingBewareThisMayDegradePerformanceDefaultValue; } }
881 disableSchedulingBewareThisMayDegradePerformance_ = value;
885 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
886 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
887 public bool HasDisableSchedulingBewareThisMayDegradePerformance {
888 get {
return (_hasBits0 & 1) != 0; }
891 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
892 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
899 private double optimizationStep_;
905 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
906 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
908 get {
return optimizationStep_; }
910 optimizationStep_ = value;
915 public const int NumberOfSolutionsToCollectFieldNumber = 17;
916 private int numberOfSolutionsToCollect_;
921 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
922 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
924 get {
return numberOfSolutionsToCollect_; }
926 numberOfSolutionsToCollect_ = value;
931 public const int SolutionLimitFieldNumber = 8;
932 private long solutionLimit_;
938 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
939 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
941 get {
return solutionLimit_; }
943 solutionLimit_ = value;
948 public const int TimeLimitFieldNumber = 9;
949 private global::Google.Protobuf.WellKnownTypes.Duration timeLimit_;
953 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
954 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
955 public global::Google.Protobuf.WellKnownTypes.Duration
TimeLimit {
956 get { return timeLimit_; }
963 public const int LnsTimeLimitFieldNumber = 10;
964 private global::Google.Protobuf.WellKnownTypes.Duration lnsTimeLimit_;
969 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
970 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
971 public global::Google.Protobuf.WellKnownTypes.Duration
LnsTimeLimit {
972 get { return lnsTimeLimit_; }
974 lnsTimeLimit_ = value;
979 public const int SecondaryLsTimeLimitRatioFieldNumber = 57;
980 private double secondaryLsTimeLimitRatio_;
989 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
990 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
992 get {
return secondaryLsTimeLimitRatio_; }
994 secondaryLsTimeLimitRatio_ = value;
999 public const int ImprovementLimitParametersFieldNumber = 37;
1000 private global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters improvementLimitParameters_;
1005 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1006 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1008 get { return improvementLimitParameters_; }
1010 improvementLimitParameters_ = value;
1015 public const int UseFullPropagationFieldNumber = 11;
1016 private bool useFullPropagation_;
1029 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1030 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1032 get {
return useFullPropagation_; }
1034 useFullPropagation_ = value;
1039 public const int LogSearchFieldNumber = 13;
1040 private bool logSearch_;
1056 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1057 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1059 get {
return logSearch_; }
1066 public const int LogCostScalingFactorFieldNumber = 22;
1067 private double logCostScalingFactor_;
1072 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1073 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1075 get {
return logCostScalingFactor_; }
1077 logCostScalingFactor_ = value;
1082 public const int LogCostOffsetFieldNumber = 29;
1083 private double logCostOffset_;
1084 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1085 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1086 public double LogCostOffset {
1087 get {
return logCostOffset_; }
1089 logCostOffset_ = value;
1094 public const int LogTagFieldNumber = 36;
1095 private string logTag_ =
"";
1100 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1101 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1103 get {
return logTag_; }
1105 logTag_ = pb::ProtoPreconditions.CheckNotNull(value,
"value");
1110 public const int UseIteratedLocalSearchFieldNumber = 58;
1111 private bool useIteratedLocalSearch_;
1116 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1117 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1119 get {
return useIteratedLocalSearch_; }
1121 useIteratedLocalSearch_ = value;
1126 public const int IteratedLocalSearchParametersFieldNumber = 60;
1127 private global::Google.OrTools.ConstraintSolver.IteratedLocalSearchParameters iteratedLocalSearchParameters_;
1131 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1132 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1134 get { return iteratedLocalSearchParameters_; }
1136 iteratedLocalSearchParameters_ = value;
1140 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1141 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1142 public override bool Equals(
object other) {
1146 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1147 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1149 if (ReferenceEquals(other,
null)) {
1152 if (ReferenceEquals(other,
this)) {
1165 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LsOperatorNeighborsRatio, other.
LsOperatorNeighborsRatio))
return false;
1175 if(!localSearchMetaheuristics_.Equals(other.localSearchMetaheuristics_))
return false;
1177 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(GuidedLocalSearchLambdaCoefficient, other.
GuidedLocalSearchLambdaCoefficient))
return false;
1182 if (UseCp != other.
UseCp)
return false;
1183 if (UseCpSat != other.
UseCpSat)
return false;
1185 if (!
object.Equals(SatParameters, other.
SatParameters))
return false;
1191 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(OptimizationStep, other.
OptimizationStep))
return false;
1194 if (!
object.Equals(TimeLimit, other.
TimeLimit))
return false;
1195 if (!
object.Equals(LnsTimeLimit, other.
LnsTimeLimit))
return false;
1196 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SecondaryLsTimeLimitRatio, other.
SecondaryLsTimeLimitRatio))
return false;
1199 if (LogSearch != other.
LogSearch)
return false;
1200 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LogCostScalingFactor, other.
LogCostScalingFactor))
return false;
1201 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LogCostOffset, other.
LogCostOffset))
return false;
1202 if (LogTag != other.
LogTag)
return false;
1205 return Equals(_unknownFields, other._unknownFields);
1208 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1209 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1210 public override int GetHashCode() {
1213 if (UseUnfilteredFirstSolutionStrategy !=
false) hash ^= UseUnfilteredFirstSolutionStrategy.GetHashCode();
1214 if (savingsParameters_ !=
null) hash ^= SavingsParameters.GetHashCode();
1232 hash ^= localSearchMetaheuristics_.GetHashCode();
1239 if (
UseCp != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^=
UseCp.GetHashCode();
1242 if (satParameters_ !=
null) hash ^=
SatParameters.GetHashCode();
1251 if (timeLimit_ !=
null) hash ^=
TimeLimit.GetHashCode();
1252 if (lnsTimeLimit_ !=
null) hash ^=
LnsTimeLimit.GetHashCode();
1262 if (_unknownFields !=
null) {
1263 hash ^= _unknownFields.GetHashCode();
1268 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1269 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1270 public override string ToString() {
1271 return pb::JsonFormatter.ToDiagnosticString(
this);
1274 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1275 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1276 public void WriteTo(pb::CodedOutputStream output) {
1277 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1278 output.WriteRawMessage(
this);
1281 output.WriteRawTag(8);
1284 if (UseUnfilteredFirstSolutionStrategy !=
false) {
1285 output.WriteRawTag(16);
1286 output.WriteBool(UseUnfilteredFirstSolutionStrategy);
1288 if (localSearchOperators_ !=
null) {
1289 output.WriteRawTag(26);
1290 output.WriteMessage(LocalSearchOperators);
1293 output.WriteRawTag(32);
1294 output.WriteEnum((
int) LocalSearchMetaheuristic);
1296 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1297 output.WriteRawTag(41);
1298 output.WriteDouble(GuidedLocalSearchLambdaCoefficient);
1300 if (UseDepthFirstSearch !=
false) {
1301 output.WriteRawTag(48);
1302 output.WriteBool(UseDepthFirstSearch);
1304 if (OptimizationStep != 0D) {
1305 output.WriteRawTag(57);
1306 output.WriteDouble(OptimizationStep);
1308 if (SolutionLimit != 0L) {
1309 output.WriteRawTag(64);
1310 output.WriteInt64(SolutionLimit);
1312 if (timeLimit_ !=
null) {
1313 output.WriteRawTag(74);
1314 output.WriteMessage(TimeLimit);
1316 if (lnsTimeLimit_ !=
null) {
1317 output.WriteRawTag(82);
1318 output.WriteMessage(LnsTimeLimit);
1320 if (UseFullPropagation !=
false) {
1321 output.WriteRawTag(88);
1322 output.WriteBool(UseFullPropagation);
1324 if (LogSearch !=
false) {
1325 output.WriteRawTag(104);
1326 output.WriteBool(LogSearch);
1328 if (NumberOfSolutionsToCollect != 0) {
1329 output.WriteRawTag(136, 1);
1330 output.WriteInt32(NumberOfSolutionsToCollect);
1332 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1333 output.WriteRawTag(160, 1);
1334 output.WriteInt32(RelocateExpensiveChainNumArcsToConsider);
1336 if (LogCostScalingFactor != 0D) {
1337 output.WriteRawTag(177, 1);
1338 output.WriteDouble(LogCostScalingFactor);
1340 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1341 output.WriteRawTag(216, 1);
1342 output.WriteEnum((
int) UseCpSat);
1344 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1345 output.WriteRawTag(224, 1);
1346 output.WriteEnum((
int) UseCp);
1348 if (LogCostOffset != 0D) {
1349 output.WriteRawTag(233, 1);
1350 output.WriteDouble(LogCostOffset);
1352 if (ChristofidesUseMinimumMatching !=
false) {
1353 output.WriteRawTag(240, 1);
1354 output.WriteBool(ChristofidesUseMinimumMatching);
1356 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1357 output.WriteRawTag(128, 2);
1358 output.WriteInt32(HeuristicExpensiveChainLnsNumArcsToConsider);
1360 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1361 output.WriteRawTag(136, 2);
1362 output.WriteEnum((
int) ContinuousSchedulingSolver);
1364 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1365 output.WriteRawTag(144, 2);
1366 output.WriteEnum((
int) MixedIntegerSchedulingSolver);
1368 if (HeuristicCloseNodesLnsNumNodes != 0) {
1369 output.WriteRawTag(152, 2);
1370 output.WriteInt32(HeuristicCloseNodesLnsNumNodes);
1372 if (LogTag.Length != 0) {
1373 output.WriteRawTag(162, 2);
1374 output.WriteString(LogTag);
1376 if (improvementLimitParameters_ !=
null) {
1377 output.WriteRawTag(170, 2);
1378 output.WriteMessage(ImprovementLimitParameters);
1380 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1381 output.WriteRawTag(200, 2);
1382 output.WriteBool(UseMultiArmedBanditConcatenateOperators);
1384 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1385 output.WriteRawTag(209, 2);
1386 output.WriteDouble(MultiArmedBanditCompoundOperatorMemoryCoefficient);
1388 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1389 output.WriteRawTag(217, 2);
1390 output.WriteDouble(MultiArmedBanditCompoundOperatorExplorationCoefficient);
1392 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1393 output.WriteRawTag(248, 2);
1394 output.WriteEnum((
int) UseGeneralizedCpSat);
1396 if (satParameters_ !=
null) {
1397 output.WriteRawTag(130, 3);
1398 output.WriteMessage(SatParameters);
1400 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1401 output.WriteRawTag(144, 3);
1402 output.WriteBool(DisableSchedulingBewareThisMayDegradePerformance);
1404 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1405 output.WriteRawTag(152, 3);
1406 output.WriteBool(GuidedLocalSearchResetPenaltiesOnNewBestSolution);
1408 if (FallbackToCpSatSizeThreshold != 0) {
1409 output.WriteRawTag(160, 3);
1410 output.WriteInt32(FallbackToCpSatSizeThreshold);
1412 if (LsOperatorNeighborsRatio != 0D) {
1413 output.WriteRawTag(169, 3);
1414 output.WriteDouble(LsOperatorNeighborsRatio);
1416 if (LsOperatorMinNeighbors != 0) {
1417 output.WriteRawTag(176, 3);
1418 output.WriteInt32(LsOperatorMinNeighbors);
1420 if (ReportIntermediateCpSatSolutions !=
false) {
1421 output.WriteRawTag(192, 3);
1422 output.WriteBool(ReportIntermediateCpSatSolutions);
1424 if (SecondaryLsTimeLimitRatio != 0D) {
1425 output.WriteRawTag(201, 3);
1426 output.WriteDouble(SecondaryLsTimeLimitRatio);
1428 if (UseIteratedLocalSearch !=
false) {
1429 output.WriteRawTag(208, 3);
1430 output.WriteBool(UseIteratedLocalSearch);
1432 if (FirstSolutionOptimizationPeriod != 0) {
1433 output.WriteRawTag(216, 3);
1434 output.WriteInt32(FirstSolutionOptimizationPeriod);
1436 if (iteratedLocalSearchParameters_ !=
null) {
1437 output.WriteRawTag(226, 3);
1438 output.WriteMessage(IteratedLocalSearchParameters);
1440 if (GuidedLocalSearchPenalizeWithVehicleClasses !=
false) {
1441 output.WriteRawTag(232, 3);
1442 output.WriteBool(GuidedLocalSearchPenalizeWithVehicleClasses);
1444 if (UseGuidedLocalSearchPenaltiesInLocalSearchOperators !=
false) {
1445 output.WriteRawTag(240, 3);
1446 output.WriteBool(UseGuidedLocalSearchPenaltiesInLocalSearchOperators);
1448 localSearchMetaheuristics_.WriteTo(output, _repeated_localSearchMetaheuristics_codec);
1449 if (NumMaxLocalOptimaBeforeMetaheuristicSwitch != 0) {
1450 output.WriteRawTag(128, 4);
1451 output.WriteInt32(NumMaxLocalOptimaBeforeMetaheuristicSwitch);
1453 if (MaxSwapActiveChainSize != 0) {
1454 output.WriteRawTag(144, 4);
1455 output.WriteInt32(MaxSwapActiveChainSize);
1457 if (localCheapestInsertionParameters_ !=
null) {
1458 output.WriteRawTag(162, 4);
1459 output.WriteMessage(LocalCheapestInsertionParameters);
1461 if (localCheapestCostInsertionParameters_ !=
null) {
1462 output.WriteRawTag(170, 4);
1463 output.WriteMessage(LocalCheapestCostInsertionParameters);
1465 if (savingsParameters_ !=
null) {
1466 output.WriteRawTag(178, 4);
1467 output.WriteMessage(SavingsParameters);
1469 if (globalCheapestInsertionFirstSolutionParameters_ !=
null) {
1470 output.WriteRawTag(186, 4);
1471 output.WriteMessage(GlobalCheapestInsertionFirstSolutionParameters);
1473 if (globalCheapestInsertionLsOperatorParameters_ !=
null) {
1474 output.WriteRawTag(194, 4);
1475 output.WriteMessage(GlobalCheapestInsertionLsOperatorParameters);
1477 if (_unknownFields !=
null) {
1478 _unknownFields.WriteTo(output);
1483 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1484 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1485 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1486 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1487 if (FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1488 output.WriteRawTag(8);
1489 output.WriteEnum((
int) FirstSolutionStrategy);
1491 if (UseUnfilteredFirstSolutionStrategy !=
false) {
1492 output.WriteRawTag(16);
1493 output.WriteBool(UseUnfilteredFirstSolutionStrategy);
1495 if (localSearchOperators_ !=
null) {
1496 output.WriteRawTag(26);
1497 output.WriteMessage(LocalSearchOperators);
1499 if (LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1500 output.WriteRawTag(32);
1501 output.WriteEnum((
int) LocalSearchMetaheuristic);
1503 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1504 output.WriteRawTag(41);
1505 output.WriteDouble(GuidedLocalSearchLambdaCoefficient);
1507 if (UseDepthFirstSearch !=
false) {
1508 output.WriteRawTag(48);
1509 output.WriteBool(UseDepthFirstSearch);
1511 if (OptimizationStep != 0D) {
1512 output.WriteRawTag(57);
1513 output.WriteDouble(OptimizationStep);
1515 if (SolutionLimit != 0L) {
1516 output.WriteRawTag(64);
1517 output.WriteInt64(SolutionLimit);
1519 if (timeLimit_ !=
null) {
1520 output.WriteRawTag(74);
1521 output.WriteMessage(TimeLimit);
1523 if (lnsTimeLimit_ !=
null) {
1524 output.WriteRawTag(82);
1525 output.WriteMessage(LnsTimeLimit);
1527 if (UseFullPropagation !=
false) {
1528 output.WriteRawTag(88);
1529 output.WriteBool(UseFullPropagation);
1531 if (LogSearch !=
false) {
1532 output.WriteRawTag(104);
1533 output.WriteBool(LogSearch);
1535 if (NumberOfSolutionsToCollect != 0) {
1536 output.WriteRawTag(136, 1);
1537 output.WriteInt32(NumberOfSolutionsToCollect);
1539 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1540 output.WriteRawTag(160, 1);
1541 output.WriteInt32(RelocateExpensiveChainNumArcsToConsider);
1543 if (LogCostScalingFactor != 0D) {
1544 output.WriteRawTag(177, 1);
1545 output.WriteDouble(LogCostScalingFactor);
1547 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1548 output.WriteRawTag(216, 1);
1549 output.WriteEnum((
int) UseCpSat);
1551 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1552 output.WriteRawTag(224, 1);
1553 output.WriteEnum((
int) UseCp);
1555 if (LogCostOffset != 0D) {
1556 output.WriteRawTag(233, 1);
1557 output.WriteDouble(LogCostOffset);
1559 if (ChristofidesUseMinimumMatching !=
false) {
1560 output.WriteRawTag(240, 1);
1561 output.WriteBool(ChristofidesUseMinimumMatching);
1563 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1564 output.WriteRawTag(128, 2);
1565 output.WriteInt32(HeuristicExpensiveChainLnsNumArcsToConsider);
1567 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1568 output.WriteRawTag(136, 2);
1569 output.WriteEnum((
int) ContinuousSchedulingSolver);
1571 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1572 output.WriteRawTag(144, 2);
1573 output.WriteEnum((
int) MixedIntegerSchedulingSolver);
1575 if (HeuristicCloseNodesLnsNumNodes != 0) {
1576 output.WriteRawTag(152, 2);
1577 output.WriteInt32(HeuristicCloseNodesLnsNumNodes);
1579 if (LogTag.Length != 0) {
1580 output.WriteRawTag(162, 2);
1581 output.WriteString(LogTag);
1583 if (improvementLimitParameters_ !=
null) {
1584 output.WriteRawTag(170, 2);
1585 output.WriteMessage(ImprovementLimitParameters);
1587 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1588 output.WriteRawTag(200, 2);
1589 output.WriteBool(UseMultiArmedBanditConcatenateOperators);
1591 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1592 output.WriteRawTag(209, 2);
1593 output.WriteDouble(MultiArmedBanditCompoundOperatorMemoryCoefficient);
1595 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1596 output.WriteRawTag(217, 2);
1597 output.WriteDouble(MultiArmedBanditCompoundOperatorExplorationCoefficient);
1599 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1600 output.WriteRawTag(248, 2);
1601 output.WriteEnum((
int) UseGeneralizedCpSat);
1603 if (satParameters_ !=
null) {
1604 output.WriteRawTag(130, 3);
1605 output.WriteMessage(SatParameters);
1607 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1608 output.WriteRawTag(144, 3);
1609 output.WriteBool(DisableSchedulingBewareThisMayDegradePerformance);
1611 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1612 output.WriteRawTag(152, 3);
1613 output.WriteBool(GuidedLocalSearchResetPenaltiesOnNewBestSolution);
1615 if (FallbackToCpSatSizeThreshold != 0) {
1616 output.WriteRawTag(160, 3);
1617 output.WriteInt32(FallbackToCpSatSizeThreshold);
1619 if (LsOperatorNeighborsRatio != 0D) {
1620 output.WriteRawTag(169, 3);
1621 output.WriteDouble(LsOperatorNeighborsRatio);
1623 if (LsOperatorMinNeighbors != 0) {
1624 output.WriteRawTag(176, 3);
1625 output.WriteInt32(LsOperatorMinNeighbors);
1627 if (ReportIntermediateCpSatSolutions !=
false) {
1628 output.WriteRawTag(192, 3);
1629 output.WriteBool(ReportIntermediateCpSatSolutions);
1631 if (SecondaryLsTimeLimitRatio != 0D) {
1632 output.WriteRawTag(201, 3);
1633 output.WriteDouble(SecondaryLsTimeLimitRatio);
1635 if (UseIteratedLocalSearch !=
false) {
1636 output.WriteRawTag(208, 3);
1637 output.WriteBool(UseIteratedLocalSearch);
1639 if (FirstSolutionOptimizationPeriod != 0) {
1640 output.WriteRawTag(216, 3);
1641 output.WriteInt32(FirstSolutionOptimizationPeriod);
1643 if (iteratedLocalSearchParameters_ !=
null) {
1644 output.WriteRawTag(226, 3);
1645 output.WriteMessage(IteratedLocalSearchParameters);
1647 if (GuidedLocalSearchPenalizeWithVehicleClasses !=
false) {
1648 output.WriteRawTag(232, 3);
1649 output.WriteBool(GuidedLocalSearchPenalizeWithVehicleClasses);
1651 if (UseGuidedLocalSearchPenaltiesInLocalSearchOperators !=
false) {
1652 output.WriteRawTag(240, 3);
1653 output.WriteBool(UseGuidedLocalSearchPenaltiesInLocalSearchOperators);
1655 localSearchMetaheuristics_.WriteTo(ref output, _repeated_localSearchMetaheuristics_codec);
1656 if (NumMaxLocalOptimaBeforeMetaheuristicSwitch != 0) {
1657 output.WriteRawTag(128, 4);
1658 output.WriteInt32(NumMaxLocalOptimaBeforeMetaheuristicSwitch);
1660 if (MaxSwapActiveChainSize != 0) {
1661 output.WriteRawTag(144, 4);
1662 output.WriteInt32(MaxSwapActiveChainSize);
1664 if (localCheapestInsertionParameters_ !=
null) {
1665 output.WriteRawTag(162, 4);
1666 output.WriteMessage(LocalCheapestInsertionParameters);
1668 if (localCheapestCostInsertionParameters_ !=
null) {
1669 output.WriteRawTag(170, 4);
1670 output.WriteMessage(LocalCheapestCostInsertionParameters);
1672 if (savingsParameters_ !=
null) {
1673 output.WriteRawTag(178, 4);
1674 output.WriteMessage(SavingsParameters);
1676 if (globalCheapestInsertionFirstSolutionParameters_ !=
null) {
1677 output.WriteRawTag(186, 4);
1678 output.WriteMessage(GlobalCheapestInsertionFirstSolutionParameters);
1680 if (globalCheapestInsertionLsOperatorParameters_ !=
null) {
1681 output.WriteRawTag(194, 4);
1682 output.WriteMessage(GlobalCheapestInsertionLsOperatorParameters);
1684 if (_unknownFields !=
null) {
1685 _unknownFields.WriteTo(ref output);
1690 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1691 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1692 public int CalculateSize() {
1694 if (FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1695 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) FirstSolutionStrategy);
1700 if (savingsParameters_ !=
null) {
1703 if (globalCheapestInsertionFirstSolutionParameters_ !=
null) {
1704 size += 2 + pb::CodedOutputStream.ComputeMessageSize(GlobalCheapestInsertionFirstSolutionParameters);
1706 if (globalCheapestInsertionLsOperatorParameters_ !=
null) {
1707 size += 2 + pb::CodedOutputStream.ComputeMessageSize(GlobalCheapestInsertionLsOperatorParameters);
1709 if (localCheapestInsertionParameters_ !=
null) {
1710 size += 2 + pb::CodedOutputStream.ComputeMessageSize(LocalCheapestInsertionParameters);
1712 if (localCheapestCostInsertionParameters_ !=
null) {
1713 size += 2 + pb::CodedOutputStream.ComputeMessageSize(LocalCheapestCostInsertionParameters);
1715 if (ChristofidesUseMinimumMatching !=
false) {
1718 if (FirstSolutionOptimizationPeriod != 0) {
1719 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FirstSolutionOptimizationPeriod);
1721 if (localSearchOperators_ !=
null) {
1722 size += 1 + pb::CodedOutputStream.ComputeMessageSize(LocalSearchOperators);
1724 if (LsOperatorNeighborsRatio != 0D) {
1727 if (LsOperatorMinNeighbors != 0) {
1728 size += 2 + pb::CodedOutputStream.ComputeInt32Size(LsOperatorMinNeighbors);
1730 if (UseMultiArmedBanditConcatenateOperators !=
false) {
1733 if (MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1736 if (MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1739 if (MaxSwapActiveChainSize != 0) {
1740 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxSwapActiveChainSize);
1742 if (RelocateExpensiveChainNumArcsToConsider != 0) {
1743 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RelocateExpensiveChainNumArcsToConsider);
1745 if (HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1746 size += 2 + pb::CodedOutputStream.ComputeInt32Size(HeuristicExpensiveChainLnsNumArcsToConsider);
1748 if (HeuristicCloseNodesLnsNumNodes != 0) {
1749 size += 2 + pb::CodedOutputStream.ComputeInt32Size(HeuristicCloseNodesLnsNumNodes);
1751 if (LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1752 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) LocalSearchMetaheuristic);
1754 size += localSearchMetaheuristics_.CalculateSize(_repeated_localSearchMetaheuristics_codec);
1755 if (NumMaxLocalOptimaBeforeMetaheuristicSwitch != 0) {
1756 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumMaxLocalOptimaBeforeMetaheuristicSwitch);
1758 if (GuidedLocalSearchLambdaCoefficient != 0D) {
1761 if (GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1764 if (GuidedLocalSearchPenalizeWithVehicleClasses !=
false) {
1767 if (UseGuidedLocalSearchPenaltiesInLocalSearchOperators !=
false) {
1770 if (UseDepthFirstSearch !=
false) {
1773 if (UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1774 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCp);
1776 if (UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1777 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCpSat);
1779 if (UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1780 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGeneralizedCpSat);
1782 if (satParameters_ !=
null) {
1783 size += 2 + pb::CodedOutputStream.ComputeMessageSize(SatParameters);
1785 if (ReportIntermediateCpSatSolutions !=
false) {
1788 if (FallbackToCpSatSizeThreshold != 0) {
1789 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FallbackToCpSatSizeThreshold);
1791 if (ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1792 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) ContinuousSchedulingSolver);
1794 if (MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1795 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) MixedIntegerSchedulingSolver);
1797 if (HasDisableSchedulingBewareThisMayDegradePerformance) {
1800 if (OptimizationStep != 0D) {
1803 if (NumberOfSolutionsToCollect != 0) {
1804 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumberOfSolutionsToCollect);
1806 if (SolutionLimit != 0L) {
1807 size += 1 + pb::CodedOutputStream.ComputeInt64Size(SolutionLimit);
1809 if (timeLimit_ !=
null) {
1810 size += 1 + pb::CodedOutputStream.ComputeMessageSize(TimeLimit);
1812 if (lnsTimeLimit_ !=
null) {
1813 size += 1 + pb::CodedOutputStream.ComputeMessageSize(LnsTimeLimit);
1815 if (SecondaryLsTimeLimitRatio != 0D) {
1818 if (improvementLimitParameters_ !=
null) {
1819 size += 2 + pb::CodedOutputStream.ComputeMessageSize(ImprovementLimitParameters);
1821 if (UseFullPropagation !=
false) {
1824 if (LogSearch !=
false) {
1827 if (LogCostScalingFactor != 0D) {
1830 if (LogCostOffset != 0D) {
1833 if (LogTag.Length != 0) {
1834 size += 2 + pb::CodedOutputStream.ComputeStringSize(LogTag);
1836 if (UseIteratedLocalSearch !=
false) {
1839 if (iteratedLocalSearchParameters_ !=
null) {
1840 size += 2 + pb::CodedOutputStream.ComputeMessageSize(IteratedLocalSearchParameters);
1842 if (_unknownFields !=
null) {
1843 size += _unknownFields.CalculateSize();
1848 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1849 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
1850 public void MergeFrom(RoutingSearchParameters other) {
1851 if (other ==
null) {
1854 if (other.FirstSolutionStrategy != global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value.Unset) {
1857 if (other.UseUnfilteredFirstSolutionStrategy !=
false) {
1858 UseUnfilteredFirstSolutionStrategy = other.UseUnfilteredFirstSolutionStrategy;
1860 if (other.savingsParameters_ !=
null) {
1861 if (savingsParameters_ ==
null) {
1862 SavingsParameters =
new global::Google.OrTools.ConstraintSolver.SavingsParameters();
1864 SavingsParameters.MergeFrom(other.SavingsParameters);
1866 if (other.globalCheapestInsertionFirstSolutionParameters_ !=
null) {
1867 if (globalCheapestInsertionFirstSolutionParameters_ ==
null) {
1868 GlobalCheapestInsertionFirstSolutionParameters =
new global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters();
1870 GlobalCheapestInsertionFirstSolutionParameters.MergeFrom(other.GlobalCheapestInsertionFirstSolutionParameters);
1872 if (other.globalCheapestInsertionLsOperatorParameters_ !=
null) {
1873 if (globalCheapestInsertionLsOperatorParameters_ ==
null) {
1874 GlobalCheapestInsertionLsOperatorParameters =
new global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters();
1876 GlobalCheapestInsertionLsOperatorParameters.MergeFrom(other.GlobalCheapestInsertionLsOperatorParameters);
1878 if (other.localCheapestInsertionParameters_ !=
null) {
1879 if (localCheapestInsertionParameters_ ==
null) {
1880 LocalCheapestInsertionParameters =
new global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters();
1882 LocalCheapestInsertionParameters.MergeFrom(other.LocalCheapestInsertionParameters);
1884 if (other.localCheapestCostInsertionParameters_ !=
null) {
1885 if (localCheapestCostInsertionParameters_ ==
null) {
1886 LocalCheapestCostInsertionParameters =
new global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters();
1888 LocalCheapestCostInsertionParameters.MergeFrom(other.LocalCheapestCostInsertionParameters);
1890 if (other.ChristofidesUseMinimumMatching !=
false) {
1891 ChristofidesUseMinimumMatching = other.ChristofidesUseMinimumMatching;
1893 if (other.FirstSolutionOptimizationPeriod != 0) {
1894 FirstSolutionOptimizationPeriod = other.FirstSolutionOptimizationPeriod;
1896 if (other.localSearchOperators_ !=
null) {
1897 if (localSearchOperators_ ==
null) {
1898 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
1900 LocalSearchOperators.MergeFrom(other.LocalSearchOperators);
1902 if (other.LsOperatorNeighborsRatio != 0D) {
1903 LsOperatorNeighborsRatio = other.LsOperatorNeighborsRatio;
1905 if (other.LsOperatorMinNeighbors != 0) {
1906 LsOperatorMinNeighbors = other.LsOperatorMinNeighbors;
1908 if (other.UseMultiArmedBanditConcatenateOperators !=
false) {
1909 UseMultiArmedBanditConcatenateOperators = other.UseMultiArmedBanditConcatenateOperators;
1911 if (other.MultiArmedBanditCompoundOperatorMemoryCoefficient != 0D) {
1912 MultiArmedBanditCompoundOperatorMemoryCoefficient = other.MultiArmedBanditCompoundOperatorMemoryCoefficient;
1914 if (other.MultiArmedBanditCompoundOperatorExplorationCoefficient != 0D) {
1915 MultiArmedBanditCompoundOperatorExplorationCoefficient = other.MultiArmedBanditCompoundOperatorExplorationCoefficient;
1917 if (other.MaxSwapActiveChainSize != 0) {
1918 MaxSwapActiveChainSize = other.MaxSwapActiveChainSize;
1920 if (other.RelocateExpensiveChainNumArcsToConsider != 0) {
1921 RelocateExpensiveChainNumArcsToConsider = other.RelocateExpensiveChainNumArcsToConsider;
1923 if (other.HeuristicExpensiveChainLnsNumArcsToConsider != 0) {
1924 HeuristicExpensiveChainLnsNumArcsToConsider = other.HeuristicExpensiveChainLnsNumArcsToConsider;
1926 if (other.HeuristicCloseNodesLnsNumNodes != 0) {
1927 HeuristicCloseNodesLnsNumNodes = other.HeuristicCloseNodesLnsNumNodes;
1929 if (other.LocalSearchMetaheuristic != global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value.Unset) {
1930 LocalSearchMetaheuristic = other.LocalSearchMetaheuristic;
1932 localSearchMetaheuristics_.Add(other.localSearchMetaheuristics_);
1933 if (other.NumMaxLocalOptimaBeforeMetaheuristicSwitch != 0) {
1934 NumMaxLocalOptimaBeforeMetaheuristicSwitch = other.NumMaxLocalOptimaBeforeMetaheuristicSwitch;
1936 if (other.GuidedLocalSearchLambdaCoefficient != 0D) {
1937 GuidedLocalSearchLambdaCoefficient = other.GuidedLocalSearchLambdaCoefficient;
1939 if (other.GuidedLocalSearchResetPenaltiesOnNewBestSolution !=
false) {
1940 GuidedLocalSearchResetPenaltiesOnNewBestSolution = other.GuidedLocalSearchResetPenaltiesOnNewBestSolution;
1942 if (other.GuidedLocalSearchPenalizeWithVehicleClasses !=
false) {
1943 GuidedLocalSearchPenalizeWithVehicleClasses = other.GuidedLocalSearchPenalizeWithVehicleClasses;
1945 if (other.UseGuidedLocalSearchPenaltiesInLocalSearchOperators !=
false) {
1946 UseGuidedLocalSearchPenaltiesInLocalSearchOperators = other.UseGuidedLocalSearchPenaltiesInLocalSearchOperators;
1948 if (other.UseDepthFirstSearch !=
false) {
1949 UseDepthFirstSearch = other.UseDepthFirstSearch;
1951 if (other.UseCp != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1952 UseCp = other.UseCp;
1954 if (other.UseCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1955 UseCpSat = other.UseCpSat;
1957 if (other.UseGeneralizedCpSat != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
1958 UseGeneralizedCpSat = other.UseGeneralizedCpSat;
1960 if (other.satParameters_ !=
null) {
1961 if (satParameters_ ==
null) {
1962 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
1964 SatParameters.MergeFrom(other.SatParameters);
1966 if (other.ReportIntermediateCpSatSolutions !=
false) {
1967 ReportIntermediateCpSatSolutions = other.ReportIntermediateCpSatSolutions;
1969 if (other.FallbackToCpSatSizeThreshold != 0) {
1970 FallbackToCpSatSizeThreshold = other.FallbackToCpSatSizeThreshold;
1972 if (other.ContinuousSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1973 ContinuousSchedulingSolver = other.ContinuousSchedulingSolver;
1975 if (other.MixedIntegerSchedulingSolver != global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver.SchedulingUnset) {
1976 MixedIntegerSchedulingSolver = other.MixedIntegerSchedulingSolver;
1978 if (other.HasDisableSchedulingBewareThisMayDegradePerformance) {
1979 DisableSchedulingBewareThisMayDegradePerformance = other.DisableSchedulingBewareThisMayDegradePerformance;
1981 if (other.OptimizationStep != 0D) {
1982 OptimizationStep = other.OptimizationStep;
1984 if (other.NumberOfSolutionsToCollect != 0) {
1985 NumberOfSolutionsToCollect = other.NumberOfSolutionsToCollect;
1987 if (other.SolutionLimit != 0L) {
1988 SolutionLimit = other.SolutionLimit;
1990 if (other.timeLimit_ !=
null) {
1991 if (timeLimit_ ==
null) {
1992 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
1996 if (other.lnsTimeLimit_ !=
null) {
1997 if (lnsTimeLimit_ ==
null) {
1998 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2000 LnsTimeLimit.MergeFrom(other.LnsTimeLimit);
2002 if (other.SecondaryLsTimeLimitRatio != 0D) {
2003 SecondaryLsTimeLimitRatio = other.SecondaryLsTimeLimitRatio;
2005 if (other.improvementLimitParameters_ !=
null) {
2006 if (improvementLimitParameters_ ==
null) {
2007 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2009 ImprovementLimitParameters.MergeFrom(other.ImprovementLimitParameters);
2011 if (other.UseFullPropagation !=
false) {
2012 UseFullPropagation = other.UseFullPropagation;
2014 if (other.LogSearch !=
false) {
2015 LogSearch = other.LogSearch;
2017 if (other.LogCostScalingFactor != 0D) {
2018 LogCostScalingFactor = other.LogCostScalingFactor;
2020 if (other.LogCostOffset != 0D) {
2021 LogCostOffset = other.LogCostOffset;
2023 if (other.LogTag.Length != 0) {
2024 LogTag = other.LogTag;
2026 if (other.UseIteratedLocalSearch !=
false) {
2027 UseIteratedLocalSearch = other.UseIteratedLocalSearch;
2029 if (other.iteratedLocalSearchParameters_ !=
null) {
2030 if (iteratedLocalSearchParameters_ ==
null) {
2031 IteratedLocalSearchParameters =
new global::Google.OrTools.ConstraintSolver.IteratedLocalSearchParameters();
2033 IteratedLocalSearchParameters.MergeFrom(other.IteratedLocalSearchParameters);
2035 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2038 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2039 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2040 public void MergeFrom(pb::CodedInputStream input) {
2041 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2042 input.ReadRawMessage(
this);
2045 while ((tag = input.ReadTag()) != 0) {
2046 if ((tag & 7) == 4) {
2052 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2055 FirstSolutionStrategy = (global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value) input.ReadEnum();
2063 if (localSearchOperators_ ==
null) {
2064 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
2070 LocalSearchMetaheuristic = (global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value) input.ReadEnum();
2090 if (timeLimit_ ==
null) {
2091 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2097 if (lnsTimeLimit_ ==
null) {
2098 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2124 UseCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2128 UseCp = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2144 ContinuousSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2148 MixedIntegerSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2156 LogTag = input.ReadString();
2160 if (improvementLimitParameters_ ==
null) {
2161 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2183 if (satParameters_ ==
null) {
2184 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
2226 if (iteratedLocalSearchParameters_ ==
null) {
2242 localSearchMetaheuristics_.AddEntriesFrom(input, _repeated_localSearchMetaheuristics_codec);
2254 if (localCheapestInsertionParameters_ ==
null) {
2261 if (localCheapestCostInsertionParameters_ ==
null) {
2268 if (savingsParameters_ ==
null) {
2269 SavingsParameters =
new global::Google.OrTools.ConstraintSolver.SavingsParameters();
2275 if (globalCheapestInsertionFirstSolutionParameters_ ==
null) {
2282 if (globalCheapestInsertionLsOperatorParameters_ ==
null) {
2293 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2294 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2295 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2296 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2298 while ((tag = input.ReadTag()) != 0) {
2299 if ((tag & 7) == 4) {
2305 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2308 FirstSolutionStrategy = (global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value) input.ReadEnum();
2312 UseUnfilteredFirstSolutionStrategy = input.ReadBool();
2316 if (localSearchOperators_ ==
null) {
2317 LocalSearchOperators =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators();
2319 input.ReadMessage(LocalSearchOperators);
2323 LocalSearchMetaheuristic = (global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value) input.ReadEnum();
2327 GuidedLocalSearchLambdaCoefficient = input.ReadDouble();
2331 UseDepthFirstSearch = input.ReadBool();
2335 OptimizationStep = input.ReadDouble();
2339 SolutionLimit = input.ReadInt64();
2343 if (timeLimit_ ==
null) {
2344 TimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2346 input.ReadMessage(TimeLimit);
2350 if (lnsTimeLimit_ ==
null) {
2351 LnsTimeLimit =
new global::Google.Protobuf.WellKnownTypes.Duration();
2353 input.ReadMessage(LnsTimeLimit);
2357 UseFullPropagation = input.ReadBool();
2361 LogSearch = input.ReadBool();
2365 NumberOfSolutionsToCollect = input.ReadInt32();
2369 RelocateExpensiveChainNumArcsToConsider = input.ReadInt32();
2373 LogCostScalingFactor = input.ReadDouble();
2377 UseCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2381 UseCp = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2385 LogCostOffset = input.ReadDouble();
2389 ChristofidesUseMinimumMatching = input.ReadBool();
2393 HeuristicExpensiveChainLnsNumArcsToConsider = input.ReadInt32();
2397 ContinuousSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2401 MixedIntegerSchedulingSolver = (global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver) input.ReadEnum();
2405 HeuristicCloseNodesLnsNumNodes = input.ReadInt32();
2409 LogTag = input.ReadString();
2413 if (improvementLimitParameters_ ==
null) {
2414 ImprovementLimitParameters =
new global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters();
2416 input.ReadMessage(ImprovementLimitParameters);
2420 UseMultiArmedBanditConcatenateOperators = input.ReadBool();
2424 MultiArmedBanditCompoundOperatorMemoryCoefficient = input.ReadDouble();
2428 MultiArmedBanditCompoundOperatorExplorationCoefficient = input.ReadDouble();
2432 UseGeneralizedCpSat = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
2436 if (satParameters_ ==
null) {
2437 SatParameters =
new global::Google.OrTools.Sat.SatParameters();
2439 input.ReadMessage(SatParameters);
2443 DisableSchedulingBewareThisMayDegradePerformance = input.ReadBool();
2447 GuidedLocalSearchResetPenaltiesOnNewBestSolution = input.ReadBool();
2451 FallbackToCpSatSizeThreshold = input.ReadInt32();
2455 LsOperatorNeighborsRatio = input.ReadDouble();
2459 LsOperatorMinNeighbors = input.ReadInt32();
2463 ReportIntermediateCpSatSolutions = input.ReadBool();
2467 SecondaryLsTimeLimitRatio = input.ReadDouble();
2471 UseIteratedLocalSearch = input.ReadBool();
2475 FirstSolutionOptimizationPeriod = input.ReadInt32();
2479 if (iteratedLocalSearchParameters_ ==
null) {
2480 IteratedLocalSearchParameters =
new global::Google.OrTools.ConstraintSolver.IteratedLocalSearchParameters();
2482 input.ReadMessage(IteratedLocalSearchParameters);
2486 GuidedLocalSearchPenalizeWithVehicleClasses = input.ReadBool();
2490 UseGuidedLocalSearchPenaltiesInLocalSearchOperators = input.ReadBool();
2495 localSearchMetaheuristics_.AddEntriesFrom(ref input, _repeated_localSearchMetaheuristics_codec);
2499 NumMaxLocalOptimaBeforeMetaheuristicSwitch = input.ReadInt32();
2503 MaxSwapActiveChainSize = input.ReadInt32();
2507 if (localCheapestInsertionParameters_ ==
null) {
2508 LocalCheapestInsertionParameters =
new global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters();
2510 input.ReadMessage(LocalCheapestInsertionParameters);
2514 if (localCheapestCostInsertionParameters_ ==
null) {
2515 LocalCheapestCostInsertionParameters =
new global::Google.OrTools.ConstraintSolver.LocalCheapestInsertionParameters();
2517 input.ReadMessage(LocalCheapestCostInsertionParameters);
2521 if (savingsParameters_ ==
null) {
2522 SavingsParameters =
new global::Google.OrTools.ConstraintSolver.SavingsParameters();
2524 input.ReadMessage(SavingsParameters);
2528 if (globalCheapestInsertionFirstSolutionParameters_ ==
null) {
2529 GlobalCheapestInsertionFirstSolutionParameters =
new global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters();
2531 input.ReadMessage(GlobalCheapestInsertionFirstSolutionParameters);
2535 if (globalCheapestInsertionLsOperatorParameters_ ==
null) {
2536 GlobalCheapestInsertionLsOperatorParameters =
new global::Google.OrTools.ConstraintSolver.GlobalCheapestInsertionParameters();
2538 input.ReadMessage(GlobalCheapestInsertionLsOperatorParameters);
2546 #region Nested types
2548 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2549 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2550 public static partial
class Types {
2556 [pbr::OriginalName(
"SCHEDULING_UNSET")] SchedulingUnset = 0,
2557 [pbr::OriginalName(
"SCHEDULING_GLOP")] SchedulingGlop = 1,
2558 [pbr::OriginalName(
"SCHEDULING_CP_SAT")] SchedulingCpSat = 2,
2565 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
2567 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2568 , pb::IBufferMessage
2571 private static readonly pb::MessageParser<LocalSearchNeighborhoodOperators> _parser =
new pb::MessageParser<LocalSearchNeighborhoodOperators>(() =>
new LocalSearchNeighborhoodOperators());
2572 private pb::UnknownFieldSet _unknownFields;
2573 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2574 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2575 public static pb::MessageParser<LocalSearchNeighborhoodOperators>
Parser {
get {
return _parser; } }
2577 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2578 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2579 public static pbr::MessageDescriptor
Descriptor {
2580 get {
return global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Descriptor.NestedTypes[0]; }
2583 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2584 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2585 pbr::MessageDescriptor pb::IMessage.Descriptor {
2589 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2590 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2595 partial
void OnConstruction();
2597 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2598 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2600 useRelocate_ = other.useRelocate_;
2601 useRelocatePair_ = other.useRelocatePair_;
2602 useLightRelocatePair_ = other.useLightRelocatePair_;
2603 useRelocateNeighbors_ = other.useRelocateNeighbors_;
2604 useRelocateSubtrip_ = other.useRelocateSubtrip_;
2605 useExchange_ = other.useExchange_;
2606 useExchangePair_ = other.useExchangePair_;
2607 useExchangeSubtrip_ = other.useExchangeSubtrip_;
2608 useCross_ = other.useCross_;
2609 useCrossExchange_ = other.useCrossExchange_;
2610 useRelocateExpensiveChain_ = other.useRelocateExpensiveChain_;
2611 useTwoOpt_ = other.useTwoOpt_;
2612 useOrOpt_ = other.useOrOpt_;
2613 useLinKernighan_ = other.useLinKernighan_;
2614 useTspOpt_ = other.useTspOpt_;
2615 useMakeActive_ = other.useMakeActive_;
2616 useRelocateAndMakeActive_ = other.useRelocateAndMakeActive_;
2617 useExchangeAndMakeActive_ = other.useExchangeAndMakeActive_;
2618 useExchangePathStartEndsAndMakeActive_ = other.useExchangePathStartEndsAndMakeActive_;
2619 useMakeInactive_ = other.useMakeInactive_;
2620 useMakeChainInactive_ = other.useMakeChainInactive_;
2621 useSwapActive_ = other.useSwapActive_;
2622 useSwapActiveChain_ = other.useSwapActiveChain_;
2623 useExtendedSwapActive_ = other.useExtendedSwapActive_;
2624 useShortestPathSwapActive_ = other.useShortestPathSwapActive_;
2625 useShortestPathTwoOpt_ = other.useShortestPathTwoOpt_;
2626 useNodePairSwapActive_ = other.useNodePairSwapActive_;
2627 usePathLns_ = other.usePathLns_;
2628 useFullPathLns_ = other.useFullPathLns_;
2629 useTspLns_ = other.useTspLns_;
2630 useInactiveLns_ = other.useInactiveLns_;
2631 useGlobalCheapestInsertionPathLns_ = other.useGlobalCheapestInsertionPathLns_;
2632 useLocalCheapestInsertionPathLns_ = other.useLocalCheapestInsertionPathLns_;
2633 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = other.useRelocatePathGlobalCheapestInsertionInsertUnperformed_;
2634 useGlobalCheapestInsertionExpensiveChainLns_ = other.useGlobalCheapestInsertionExpensiveChainLns_;
2635 useLocalCheapestInsertionExpensiveChainLns_ = other.useLocalCheapestInsertionExpensiveChainLns_;
2636 useGlobalCheapestInsertionCloseNodesLns_ = other.useGlobalCheapestInsertionCloseNodesLns_;
2637 useLocalCheapestInsertionCloseNodesLns_ = other.useLocalCheapestInsertionCloseNodesLns_;
2638 useGlobalCheapestInsertionVisitTypesLns_ = other.useGlobalCheapestInsertionVisitTypesLns_;
2639 useLocalCheapestInsertionVisitTypesLns_ = other.useLocalCheapestInsertionVisitTypesLns_;
2640 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2643 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2644 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2651 private global::Google.OrTools.Util.OptionalBoolean useRelocate_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2663 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2664 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2666 get { return useRelocate_; }
2668 useRelocate_ = value;
2673 public const int UseRelocatePairFieldNumber = 2;
2674 private global::Google.OrTools.Util.OptionalBoolean useRelocatePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2686 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2687 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2689 get { return useRelocatePair_; }
2691 useRelocatePair_ = value;
2696 public const int UseLightRelocatePairFieldNumber = 24;
2697 private global::Google.OrTools.Util.OptionalBoolean useLightRelocatePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2707 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2708 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2710 get { return useLightRelocatePair_; }
2712 useLightRelocatePair_ = value;
2717 public const int UseRelocateNeighborsFieldNumber = 3;
2718 private global::Google.OrTools.Util.OptionalBoolean useRelocateNeighbors_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2743 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2744 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2746 get { return useRelocateNeighbors_; }
2748 useRelocateNeighbors_ = value;
2753 public const int UseRelocateSubtripFieldNumber = 25;
2754 private global::Google.OrTools.Util.OptionalBoolean useRelocateSubtrip_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2771 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2772 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2774 get { return useRelocateSubtrip_; }
2776 useRelocateSubtrip_ = value;
2782 private global::Google.OrTools.Util.OptionalBoolean useExchange_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2792 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2793 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2795 get { return useExchange_; }
2797 useExchange_ = value;
2803 private global::Google.OrTools.Util.OptionalBoolean useExchangePair_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2813 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2814 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2816 get { return useExchangePair_; }
2818 useExchangePair_ = value;
2824 private global::Google.OrTools.Util.OptionalBoolean useExchangeSubtrip_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2829 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2830 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2832 get { return useExchangeSubtrip_; }
2834 useExchangeSubtrip_ = value;
2840 private global::Google.OrTools.Util.OptionalBoolean useCross_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2852 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2853 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2855 get { return useCross_; }
2863 private global::Google.OrTools.Util.OptionalBoolean useCrossExchange_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2867 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2868 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2870 get { return useCrossExchange_; }
2872 useCrossExchange_ = value;
2878 private global::Google.OrTools.Util.OptionalBoolean useRelocateExpensiveChain_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2891 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2892 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2894 get { return useRelocateExpensiveChain_; }
2896 useRelocateExpensiveChain_ = value;
2902 private global::Google.OrTools.Util.OptionalBoolean useTwoOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2915 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2916 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2918 get { return useTwoOpt_; }
2926 private global::Google.OrTools.Util.OptionalBoolean useOrOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2940 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2941 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2943 get { return useOrOpt_; }
2951 private global::Google.OrTools.Util.OptionalBoolean useLinKernighan_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2958 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2959 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2961 get { return useLinKernighan_; }
2963 useLinKernighan_ = value;
2969 private global::Google.OrTools.Util.OptionalBoolean useTspOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2978 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2979 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
2981 get { return useTspOpt_; }
2989 private global::Google.OrTools.Util.OptionalBoolean useMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
2999 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3000 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3002 get { return useMakeActive_; }
3004 useMakeActive_ = value;
3010 private global::Google.OrTools.Util.OptionalBoolean useRelocateAndMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3023 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3024 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3026 get { return useRelocateAndMakeActive_; }
3028 useRelocateAndMakeActive_ = value;
3034 private global::Google.OrTools.Util.OptionalBoolean useExchangeAndMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3043 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3044 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3046 get { return useExchangeAndMakeActive_; }
3048 useExchangeAndMakeActive_ = value;
3054 private global::Google.OrTools.Util.OptionalBoolean useExchangePathStartEndsAndMakeActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3066 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3067 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3069 get { return useExchangePathStartEndsAndMakeActive_; }
3071 useExchangePathStartEndsAndMakeActive_ = value;
3077 private global::Google.OrTools.Util.OptionalBoolean useMakeInactive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3085 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3086 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3088 get { return useMakeInactive_; }
3090 useMakeInactive_ = value;
3096 private global::Google.OrTools.Util.OptionalBoolean useMakeChainInactive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3105 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3106 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3108 get { return useMakeChainInactive_; }
3110 useMakeChainInactive_ = value;
3116 private global::Google.OrTools.Util.OptionalBoolean useSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3124 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3125 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3127 get { return useSwapActive_; }
3129 useSwapActive_ = value;
3135 private global::Google.OrTools.Util.OptionalBoolean useSwapActiveChain_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3144 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3145 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3147 get { return useSwapActiveChain_; }
3149 useSwapActiveChain_ = value;
3155 private global::Google.OrTools.Util.OptionalBoolean useExtendedSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3168 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3169 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3171 get { return useExtendedSwapActive_; }
3173 useExtendedSwapActive_ = value;
3179 private global::Google.OrTools.Util.OptionalBoolean useShortestPathSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3188 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3189 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3191 get { return useShortestPathSwapActive_; }
3193 useShortestPathSwapActive_ = value;
3199 private global::Google.OrTools.Util.OptionalBoolean useShortestPathTwoOpt_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3204 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3205 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3207 get { return useShortestPathTwoOpt_; }
3209 useShortestPathTwoOpt_ = value;
3215 private global::Google.OrTools.Util.OptionalBoolean useNodePairSwapActive_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3229 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3230 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3232 get { return useNodePairSwapActive_; }
3234 useNodePairSwapActive_ = value;
3240 private global::Google.OrTools.Util.OptionalBoolean usePathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3251 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3252 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3254 get { return usePathLns_; }
3256 usePathLns_ = value;
3262 private global::Google.OrTools.Util.OptionalBoolean useFullPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3266 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3267 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3269 get { return useFullPathLns_; }
3271 useFullPathLns_ = value;
3277 private global::Google.OrTools.Util.OptionalBoolean useTspLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3286 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3287 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3289 get { return useTspLns_; }
3297 private global::Google.OrTools.Util.OptionalBoolean useInactiveLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3303 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3304 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3306 get { return useInactiveLns_; }
3308 useInactiveLns_ = value;
3314 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3320 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3321 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3323 get { return useGlobalCheapestInsertionPathLns_; }
3325 useGlobalCheapestInsertionPathLns_ = value;
3331 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionPathLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3335 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3336 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3338 get { return useLocalCheapestInsertionPathLns_; }
3340 useLocalCheapestInsertionPathLns_ = value;
3346 private global::Google.OrTools.Util.OptionalBoolean useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3352 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3353 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3355 get { return useRelocatePathGlobalCheapestInsertionInsertUnperformed_; }
3357 useRelocatePathGlobalCheapestInsertionInsertUnperformed_ = value;
3363 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionExpensiveChainLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3370 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3371 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3373 get { return useGlobalCheapestInsertionExpensiveChainLns_; }
3375 useGlobalCheapestInsertionExpensiveChainLns_ = value;
3381 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionExpensiveChainLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3386 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3387 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3389 get { return useLocalCheapestInsertionExpensiveChainLns_; }
3391 useLocalCheapestInsertionExpensiveChainLns_ = value;
3397 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionCloseNodesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3404 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3405 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3407 get { return useGlobalCheapestInsertionCloseNodesLns_; }
3409 useGlobalCheapestInsertionCloseNodesLns_ = value;
3415 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionCloseNodesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3420 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3421 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3423 get { return useLocalCheapestInsertionCloseNodesLns_; }
3425 useLocalCheapestInsertionCloseNodesLns_ = value;
3431 private global::Google.OrTools.Util.OptionalBoolean useGlobalCheapestInsertionVisitTypesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3437 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3438 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3440 get { return useGlobalCheapestInsertionVisitTypesLns_; }
3442 useGlobalCheapestInsertionVisitTypesLns_ = value;
3448 private global::Google.OrTools.Util.OptionalBoolean useLocalCheapestInsertionVisitTypesLns_ = global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified;
3453 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3454 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3456 get { return useLocalCheapestInsertionVisitTypesLns_; }
3458 useLocalCheapestInsertionVisitTypesLns_ = value;
3462 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3463 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3464 public override bool Equals(
object other) {
3468 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3469 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3471 if (ReferenceEquals(other,
null)) {
3474 if (ReferenceEquals(other,
this)) {
3517 return Equals(_unknownFields, other._unknownFields);
3520 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3521 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3524 if (UseRelocate != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocate.GetHashCode();
3525 if (UseRelocatePair != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocatePair.GetHashCode();
3526 if (UseLightRelocatePair != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^= UseLightRelocatePair.GetHashCode();
3527 if (UseRelocateNeighbors != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateNeighbors.GetHashCode();
3528 if (UseRelocateSubtrip != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) hash ^= UseRelocateSubtrip.GetHashCode();
3564 if (_unknownFields !=
null) {
3565 hash ^= _unknownFields.GetHashCode();
3570 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3571 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3572 public override string ToString() {
3573 return pb::JsonFormatter.ToDiagnosticString(
this);
3576 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3577 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3578 public void WriteTo(pb::CodedOutputStream output) {
3579 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3580 output.WriteRawMessage(
this);
3583 output.WriteRawTag(8);
3586 if (UseRelocatePair != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3587 output.WriteRawTag(16);
3588 output.WriteEnum((
int) UseRelocatePair);
3590 if (UseRelocateNeighbors != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3591 output.WriteRawTag(24);
3592 output.WriteEnum((
int) UseRelocateNeighbors);
3594 if (UseExchange != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3595 output.WriteRawTag(32);
3596 output.WriteEnum((
int) UseExchange);
3598 if (UseCross != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3599 output.WriteRawTag(40);
3600 output.WriteEnum((
int) UseCross);
3602 if (UseCrossExchange != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3603 output.WriteRawTag(48);
3604 output.WriteEnum((
int) UseCrossExchange);
3606 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3607 output.WriteRawTag(56);
3608 output.WriteEnum((
int) UseTwoOpt);
3610 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3611 output.WriteRawTag(64);
3612 output.WriteEnum((
int) UseOrOpt);
3614 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3615 output.WriteRawTag(72);
3616 output.WriteEnum((
int) UseLinKernighan);
3618 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3619 output.WriteRawTag(80);
3620 output.WriteEnum((
int) UseTspOpt);
3622 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3623 output.WriteRawTag(88);
3624 output.WriteEnum((
int) UseMakeActive);
3626 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3627 output.WriteRawTag(96);
3628 output.WriteEnum((
int) UseMakeInactive);
3630 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3631 output.WriteRawTag(104);
3632 output.WriteEnum((
int) UseMakeChainInactive);
3634 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3635 output.WriteRawTag(112);
3636 output.WriteEnum((
int) UseSwapActive);
3638 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3639 output.WriteRawTag(120);
3640 output.WriteEnum((
int) UseExtendedSwapActive);
3642 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3643 output.WriteRawTag(128, 1);
3644 output.WriteEnum((
int) UsePathLns);
3646 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3647 output.WriteRawTag(136, 1);
3648 output.WriteEnum((
int) UseFullPathLns);
3650 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3651 output.WriteRawTag(144, 1);
3652 output.WriteEnum((
int) UseTspLns);
3654 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3655 output.WriteRawTag(152, 1);
3656 output.WriteEnum((
int) UseInactiveLns);
3658 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3659 output.WriteRawTag(160, 1);
3660 output.WriteEnum((
int) UseNodePairSwapActive);
3662 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3663 output.WriteRawTag(168, 1);
3664 output.WriteEnum((
int) UseRelocateAndMakeActive);
3666 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3667 output.WriteRawTag(176, 1);
3668 output.WriteEnum((
int) UseExchangePair);
3670 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3671 output.WriteRawTag(184, 1);
3672 output.WriteEnum((
int) UseRelocateExpensiveChain);
3674 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3675 output.WriteRawTag(192, 1);
3676 output.WriteEnum((
int) UseLightRelocatePair);
3678 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3679 output.WriteRawTag(200, 1);
3680 output.WriteEnum((
int) UseRelocateSubtrip);
3682 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3683 output.WriteRawTag(208, 1);
3684 output.WriteEnum((
int) UseExchangeSubtrip);
3686 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3687 output.WriteRawTag(216, 1);
3688 output.WriteEnum((
int) UseGlobalCheapestInsertionPathLns);
3690 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3691 output.WriteRawTag(224, 1);
3692 output.WriteEnum((
int) UseLocalCheapestInsertionPathLns);
3694 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3695 output.WriteRawTag(232, 1);
3696 output.WriteEnum((
int) UseGlobalCheapestInsertionExpensiveChainLns);
3698 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3699 output.WriteRawTag(240, 1);
3700 output.WriteEnum((
int) UseLocalCheapestInsertionExpensiveChainLns);
3702 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3703 output.WriteRawTag(248, 1);
3704 output.WriteEnum((
int) UseGlobalCheapestInsertionCloseNodesLns);
3706 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3707 output.WriteRawTag(128, 2);
3708 output.WriteEnum((
int) UseLocalCheapestInsertionCloseNodesLns);
3710 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3711 output.WriteRawTag(136, 2);
3712 output.WriteEnum((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
3714 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3715 output.WriteRawTag(144, 2);
3716 output.WriteEnum((
int) UseShortestPathSwapActive);
3718 if (UseSwapActiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3719 output.WriteRawTag(152, 2);
3720 output.WriteEnum((
int) UseSwapActiveChain);
3722 if (UseShortestPathTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3723 output.WriteRawTag(160, 2);
3724 output.WriteEnum((
int) UseShortestPathTwoOpt);
3726 if (UseExchangeAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3727 output.WriteRawTag(168, 2);
3728 output.WriteEnum((
int) UseExchangeAndMakeActive);
3730 if (UseExchangePathStartEndsAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3731 output.WriteRawTag(176, 2);
3732 output.WriteEnum((
int) UseExchangePathStartEndsAndMakeActive);
3734 if (UseGlobalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3735 output.WriteRawTag(184, 2);
3736 output.WriteEnum((
int) UseGlobalCheapestInsertionVisitTypesLns);
3738 if (UseLocalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3739 output.WriteRawTag(192, 2);
3740 output.WriteEnum((
int) UseLocalCheapestInsertionVisitTypesLns);
3742 if (_unknownFields !=
null) {
3743 _unknownFields.WriteTo(output);
3748 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3749 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3750 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3751 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3752 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3753 output.WriteRawTag(8);
3754 output.WriteEnum((
int) UseRelocate);
3756 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3757 output.WriteRawTag(16);
3758 output.WriteEnum((
int) UseRelocatePair);
3760 if (UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3761 output.WriteRawTag(24);
3762 output.WriteEnum((
int) UseRelocateNeighbors);
3764 if (UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3765 output.WriteRawTag(32);
3766 output.WriteEnum((
int) UseExchange);
3768 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3769 output.WriteRawTag(40);
3770 output.WriteEnum((
int) UseCross);
3772 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3773 output.WriteRawTag(48);
3774 output.WriteEnum((
int) UseCrossExchange);
3776 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3777 output.WriteRawTag(56);
3778 output.WriteEnum((
int) UseTwoOpt);
3780 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3781 output.WriteRawTag(64);
3782 output.WriteEnum((
int) UseOrOpt);
3784 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3785 output.WriteRawTag(72);
3786 output.WriteEnum((
int) UseLinKernighan);
3788 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3789 output.WriteRawTag(80);
3790 output.WriteEnum((
int) UseTspOpt);
3792 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3793 output.WriteRawTag(88);
3794 output.WriteEnum((
int) UseMakeActive);
3796 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3797 output.WriteRawTag(96);
3798 output.WriteEnum((
int) UseMakeInactive);
3800 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3801 output.WriteRawTag(104);
3802 output.WriteEnum((
int) UseMakeChainInactive);
3804 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3805 output.WriteRawTag(112);
3806 output.WriteEnum((
int) UseSwapActive);
3808 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3809 output.WriteRawTag(120);
3810 output.WriteEnum((
int) UseExtendedSwapActive);
3812 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3813 output.WriteRawTag(128, 1);
3814 output.WriteEnum((
int) UsePathLns);
3816 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3817 output.WriteRawTag(136, 1);
3818 output.WriteEnum((
int) UseFullPathLns);
3820 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3821 output.WriteRawTag(144, 1);
3822 output.WriteEnum((
int) UseTspLns);
3824 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3825 output.WriteRawTag(152, 1);
3826 output.WriteEnum((
int) UseInactiveLns);
3828 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3829 output.WriteRawTag(160, 1);
3830 output.WriteEnum((
int) UseNodePairSwapActive);
3832 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3833 output.WriteRawTag(168, 1);
3834 output.WriteEnum((
int) UseRelocateAndMakeActive);
3836 if (UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3837 output.WriteRawTag(176, 1);
3838 output.WriteEnum((
int) UseExchangePair);
3840 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3841 output.WriteRawTag(184, 1);
3842 output.WriteEnum((
int) UseRelocateExpensiveChain);
3844 if (UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3845 output.WriteRawTag(192, 1);
3846 output.WriteEnum((
int) UseLightRelocatePair);
3848 if (UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3849 output.WriteRawTag(200, 1);
3850 output.WriteEnum((
int) UseRelocateSubtrip);
3852 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3853 output.WriteRawTag(208, 1);
3854 output.WriteEnum((
int) UseExchangeSubtrip);
3856 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3857 output.WriteRawTag(216, 1);
3858 output.WriteEnum((
int) UseGlobalCheapestInsertionPathLns);
3860 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3861 output.WriteRawTag(224, 1);
3862 output.WriteEnum((
int) UseLocalCheapestInsertionPathLns);
3864 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3865 output.WriteRawTag(232, 1);
3866 output.WriteEnum((
int) UseGlobalCheapestInsertionExpensiveChainLns);
3868 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3869 output.WriteRawTag(240, 1);
3870 output.WriteEnum((
int) UseLocalCheapestInsertionExpensiveChainLns);
3872 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3873 output.WriteRawTag(248, 1);
3874 output.WriteEnum((
int) UseGlobalCheapestInsertionCloseNodesLns);
3876 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3877 output.WriteRawTag(128, 2);
3878 output.WriteEnum((
int) UseLocalCheapestInsertionCloseNodesLns);
3880 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3881 output.WriteRawTag(136, 2);
3882 output.WriteEnum((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
3884 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3885 output.WriteRawTag(144, 2);
3886 output.WriteEnum((
int) UseShortestPathSwapActive);
3888 if (UseSwapActiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3889 output.WriteRawTag(152, 2);
3890 output.WriteEnum((
int) UseSwapActiveChain);
3892 if (UseShortestPathTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3893 output.WriteRawTag(160, 2);
3894 output.WriteEnum((
int) UseShortestPathTwoOpt);
3896 if (UseExchangeAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3897 output.WriteRawTag(168, 2);
3898 output.WriteEnum((
int) UseExchangeAndMakeActive);
3900 if (UseExchangePathStartEndsAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3901 output.WriteRawTag(176, 2);
3902 output.WriteEnum((
int) UseExchangePathStartEndsAndMakeActive);
3904 if (UseGlobalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3905 output.WriteRawTag(184, 2);
3906 output.WriteEnum((
int) UseGlobalCheapestInsertionVisitTypesLns);
3908 if (UseLocalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3909 output.WriteRawTag(192, 2);
3910 output.WriteEnum((
int) UseLocalCheapestInsertionVisitTypesLns);
3912 if (_unknownFields !=
null) {
3913 _unknownFields.WriteTo(ref output);
3918 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3919 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
3920 public int CalculateSize() {
3922 if (UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3923 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocate);
3925 if (UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3926 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocatePair);
3928 if (UseLightRelocatePair != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3929 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLightRelocatePair);
3931 if (UseRelocateNeighbors != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3932 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateNeighbors);
3934 if (UseRelocateSubtrip != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3935 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateSubtrip);
3937 if (UseExchange != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3938 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchange);
3940 if (UseExchangePair != global::Google.
OrTools.
Util.OptionalBoolean.BoolUnspecified) {
3941 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangePair);
3943 if (UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3944 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangeSubtrip);
3946 if (UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3947 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCross);
3949 if (UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3950 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseCrossExchange);
3952 if (UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3953 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateExpensiveChain);
3955 if (UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3956 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTwoOpt);
3958 if (UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3959 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseOrOpt);
3961 if (UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3962 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLinKernighan);
3964 if (UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3965 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTspOpt);
3967 if (UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3968 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeActive);
3970 if (UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3971 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocateAndMakeActive);
3973 if (UseExchangeAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3974 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangeAndMakeActive);
3976 if (UseExchangePathStartEndsAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3977 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExchangePathStartEndsAndMakeActive);
3979 if (UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3980 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeInactive);
3982 if (UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3983 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseMakeChainInactive);
3985 if (UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3986 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseSwapActive);
3988 if (UseSwapActiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3989 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseSwapActiveChain);
3991 if (UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3992 size += 1 + pb::CodedOutputStream.ComputeEnumSize((
int) UseExtendedSwapActive);
3994 if (UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3995 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseShortestPathSwapActive);
3997 if (UseShortestPathTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
3998 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseShortestPathTwoOpt);
4000 if (UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4001 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseNodePairSwapActive);
4003 if (UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4004 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UsePathLns);
4006 if (UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4007 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseFullPathLns);
4009 if (UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4010 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseTspLns);
4012 if (UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4013 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseInactiveLns);
4015 if (UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4016 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionPathLns);
4018 if (UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4019 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionPathLns);
4021 if (UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4022 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseRelocatePathGlobalCheapestInsertionInsertUnperformed);
4024 if (UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4025 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionExpensiveChainLns);
4027 if (UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4028 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionExpensiveChainLns);
4030 if (UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4031 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionCloseNodesLns);
4033 if (UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4034 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionCloseNodesLns);
4036 if (UseGlobalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4037 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseGlobalCheapestInsertionVisitTypesLns);
4039 if (UseLocalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4040 size += 2 + pb::CodedOutputStream.ComputeEnumSize((
int) UseLocalCheapestInsertionVisitTypesLns);
4042 if (_unknownFields !=
null) {
4043 size += _unknownFields.CalculateSize();
4048 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4049 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4050 public void MergeFrom(LocalSearchNeighborhoodOperators other) {
4051 if (other ==
null) {
4054 if (other.UseRelocate != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4055 UseRelocate = other.UseRelocate;
4057 if (other.UseRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4060 if (other.UseLightRelocatePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4061 UseLightRelocatePair = other.UseLightRelocatePair;
4063 if (other.UseRelocateNeighbors != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4064 UseRelocateNeighbors = other.UseRelocateNeighbors;
4066 if (other.UseRelocateSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4067 UseRelocateSubtrip = other.UseRelocateSubtrip;
4069 if (other.UseExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4070 UseExchange = other.UseExchange;
4072 if (other.UseExchangePair != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4073 UseExchangePair = other.UseExchangePair;
4075 if (other.UseExchangeSubtrip != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4076 UseExchangeSubtrip = other.UseExchangeSubtrip;
4078 if (other.UseCross != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4079 UseCross = other.UseCross;
4081 if (other.UseCrossExchange != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4082 UseCrossExchange = other.UseCrossExchange;
4084 if (other.UseRelocateExpensiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4085 UseRelocateExpensiveChain = other.UseRelocateExpensiveChain;
4087 if (other.UseTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4088 UseTwoOpt = other.UseTwoOpt;
4090 if (other.UseOrOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4091 UseOrOpt = other.UseOrOpt;
4093 if (other.UseLinKernighan != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4094 UseLinKernighan = other.UseLinKernighan;
4096 if (other.UseTspOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4097 UseTspOpt = other.UseTspOpt;
4099 if (other.UseMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4100 UseMakeActive = other.UseMakeActive;
4102 if (other.UseRelocateAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4103 UseRelocateAndMakeActive = other.UseRelocateAndMakeActive;
4105 if (other.UseExchangeAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4106 UseExchangeAndMakeActive = other.UseExchangeAndMakeActive;
4108 if (other.UseExchangePathStartEndsAndMakeActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4109 UseExchangePathStartEndsAndMakeActive = other.UseExchangePathStartEndsAndMakeActive;
4111 if (other.UseMakeInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4112 UseMakeInactive = other.UseMakeInactive;
4114 if (other.UseMakeChainInactive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4115 UseMakeChainInactive = other.UseMakeChainInactive;
4117 if (other.UseSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4118 UseSwapActive = other.UseSwapActive;
4120 if (other.UseSwapActiveChain != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4121 UseSwapActiveChain = other.UseSwapActiveChain;
4123 if (other.UseExtendedSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4124 UseExtendedSwapActive = other.UseExtendedSwapActive;
4126 if (other.UseShortestPathSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4127 UseShortestPathSwapActive = other.UseShortestPathSwapActive;
4129 if (other.UseShortestPathTwoOpt != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4130 UseShortestPathTwoOpt = other.UseShortestPathTwoOpt;
4132 if (other.UseNodePairSwapActive != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4133 UseNodePairSwapActive = other.UseNodePairSwapActive;
4135 if (other.UsePathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4136 UsePathLns = other.UsePathLns;
4138 if (other.UseFullPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4139 UseFullPathLns = other.UseFullPathLns;
4141 if (other.UseTspLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4142 UseTspLns = other.UseTspLns;
4144 if (other.UseInactiveLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4145 UseInactiveLns = other.UseInactiveLns;
4147 if (other.UseGlobalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4148 UseGlobalCheapestInsertionPathLns = other.UseGlobalCheapestInsertionPathLns;
4150 if (other.UseLocalCheapestInsertionPathLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4151 UseLocalCheapestInsertionPathLns = other.UseLocalCheapestInsertionPathLns;
4153 if (other.UseRelocatePathGlobalCheapestInsertionInsertUnperformed != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4154 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = other.UseRelocatePathGlobalCheapestInsertionInsertUnperformed;
4156 if (other.UseGlobalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4157 UseGlobalCheapestInsertionExpensiveChainLns = other.UseGlobalCheapestInsertionExpensiveChainLns;
4159 if (other.UseLocalCheapestInsertionExpensiveChainLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4160 UseLocalCheapestInsertionExpensiveChainLns = other.UseLocalCheapestInsertionExpensiveChainLns;
4162 if (other.UseGlobalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4163 UseGlobalCheapestInsertionCloseNodesLns = other.UseGlobalCheapestInsertionCloseNodesLns;
4165 if (other.UseLocalCheapestInsertionCloseNodesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4166 UseLocalCheapestInsertionCloseNodesLns = other.UseLocalCheapestInsertionCloseNodesLns;
4168 if (other.UseGlobalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4169 UseGlobalCheapestInsertionVisitTypesLns = other.UseGlobalCheapestInsertionVisitTypesLns;
4171 if (other.UseLocalCheapestInsertionVisitTypesLns != global::Google.OrTools.Util.OptionalBoolean.BoolUnspecified) {
4172 UseLocalCheapestInsertionVisitTypesLns = other.UseLocalCheapestInsertionVisitTypesLns;
4174 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4177 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4178 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4179 public void MergeFrom(pb::CodedInputStream input) {
4180 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4181 input.ReadRawMessage(
this);
4184 while ((tag = input.ReadTag()) != 0) {
4185 if ((tag & 7) == 4) {
4191 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4194 UseRelocate = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4198 UseRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4202 UseRelocateNeighbors = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4206 UseExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4210 UseCross = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4214 UseCrossExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4218 UseTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4222 UseOrOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4226 UseLinKernighan = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4230 UseTspOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4234 UseMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4238 UseMakeInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4242 UseMakeChainInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4246 UseSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4250 UseExtendedSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4254 UsePathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4258 UseFullPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4262 UseTspLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4266 UseInactiveLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4270 UseNodePairSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4274 UseRelocateAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4278 UseExchangePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4282 UseRelocateExpensiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4286 UseLightRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4290 UseRelocateSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4294 UseExchangeSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4298 UseGlobalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4302 UseLocalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4306 UseGlobalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4310 UseLocalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4314 UseGlobalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4318 UseLocalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4322 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4326 UseShortestPathSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4330 UseSwapActiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4334 UseShortestPathTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4338 UseExchangeAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4342 UseExchangePathStartEndsAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4346 UseGlobalCheapestInsertionVisitTypesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4350 UseLocalCheapestInsertionVisitTypesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4358 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4359 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4360 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4361 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4363 while ((tag = input.ReadTag()) != 0) {
4364 if ((tag & 7) == 4) {
4370 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4373 UseRelocate = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4377 UseRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4381 UseRelocateNeighbors = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4385 UseExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4389 UseCross = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4393 UseCrossExchange = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4397 UseTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4401 UseOrOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4405 UseLinKernighan = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4409 UseTspOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4413 UseMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4417 UseMakeInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4421 UseMakeChainInactive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4425 UseSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4429 UseExtendedSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4433 UsePathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4437 UseFullPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4441 UseTspLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4445 UseInactiveLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4449 UseNodePairSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4453 UseRelocateAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4457 UseExchangePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4461 UseRelocateExpensiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4465 UseLightRelocatePair = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4469 UseRelocateSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4473 UseExchangeSubtrip = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4477 UseGlobalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4481 UseLocalCheapestInsertionPathLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4485 UseGlobalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4489 UseLocalCheapestInsertionExpensiveChainLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4493 UseGlobalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4497 UseLocalCheapestInsertionCloseNodesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4501 UseRelocatePathGlobalCheapestInsertionInsertUnperformed = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4505 UseShortestPathSwapActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4509 UseSwapActiveChain = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4513 UseShortestPathTwoOpt = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4517 UseExchangeAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4521 UseExchangePathStartEndsAndMakeActive = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4525 UseGlobalCheapestInsertionVisitTypesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4529 UseLocalCheapestInsertionVisitTypesLns = (global::Google.OrTools.Util.OptionalBoolean) input.ReadEnum();
4542 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
4543 public sealed partial
class ImprovementSearchLimitParameters : pb::IMessage<ImprovementSearchLimitParameters>
4544 #
if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4545 , pb::IBufferMessage
4548 private static readonly pb::MessageParser<ImprovementSearchLimitParameters> _parser =
new pb::MessageParser<ImprovementSearchLimitParameters>(() =>
new ImprovementSearchLimitParameters());
4549 private pb::UnknownFieldSet _unknownFields;
4550 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4551 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4552 public static pb::MessageParser<ImprovementSearchLimitParameters>
Parser {
get {
return _parser; } }
4554 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4555 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4556 public static pbr::MessageDescriptor
Descriptor {
4557 get {
return global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Descriptor.NestedTypes[1]; }
4560 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4561 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4562 pbr::MessageDescriptor pb::IMessage.Descriptor {
4566 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4567 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4568 public ImprovementSearchLimitParameters() {
4572 partial
void OnConstruction();
4574 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4575 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4577 improvementRateCoefficient_ = other.improvementRateCoefficient_;
4578 improvementRateSolutionsDistance_ = other.improvementRateSolutionsDistance_;
4579 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
4582 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4583 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4589 public const int ImprovementRateCoefficientFieldNumber = 38;
4590 private double improvementRateCoefficient_;
4596 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4597 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4599 get {
return improvementRateCoefficient_; }
4601 improvementRateCoefficient_ = value;
4607 private int improvementRateSolutionsDistance_;
4615 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4616 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4618 get {
return improvementRateSolutionsDistance_; }
4620 improvementRateSolutionsDistance_ = value;
4624 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4625 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4626 public override bool Equals(
object other) {
4630 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4631 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4633 if (ReferenceEquals(other,
null)) {
4636 if (ReferenceEquals(other,
this)) {
4641 return Equals(_unknownFields, other._unknownFields);
4644 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4645 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4648 if (ImprovementRateCoefficient != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ImprovementRateCoefficient);
4649 if (ImprovementRateSolutionsDistance != 0) hash ^= ImprovementRateSolutionsDistance.GetHashCode();
4650 if (_unknownFields !=
null) {
4651 hash ^= _unknownFields.GetHashCode();
4656 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4657 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4658 public override string ToString() {
4659 return pb::JsonFormatter.ToDiagnosticString(
this);
4662 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4663 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4664 public void WriteTo(pb::CodedOutputStream output) {
4665 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4666 output.WriteRawMessage(
this);
4669 output.WriteRawTag(177, 2);
4672 if (ImprovementRateSolutionsDistance != 0) {
4673 output.WriteRawTag(184, 2);
4674 output.WriteInt32(ImprovementRateSolutionsDistance);
4676 if (_unknownFields !=
null) {
4677 _unknownFields.WriteTo(output);
4682 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4683 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4684 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4685 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
4686 if (ImprovementRateCoefficient != 0D) {
4687 output.WriteRawTag(177, 2);
4688 output.WriteDouble(ImprovementRateCoefficient);
4690 if (ImprovementRateSolutionsDistance != 0) {
4691 output.WriteRawTag(184, 2);
4692 output.WriteInt32(ImprovementRateSolutionsDistance);
4694 if (_unknownFields !=
null) {
4695 _unknownFields.WriteTo(ref output);
4700 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4701 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4702 public int CalculateSize() {
4704 if (ImprovementRateCoefficient != 0D) {
4707 if (ImprovementRateSolutionsDistance != 0) {
4708 size += 2 + pb::CodedOutputStream.ComputeInt32Size(ImprovementRateSolutionsDistance);
4710 if (_unknownFields !=
null) {
4711 size += _unknownFields.CalculateSize();
4716 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4717 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4718 public void MergeFrom(ImprovementSearchLimitParameters other) {
4719 if (other ==
null) {
4722 if (other.ImprovementRateCoefficient != 0D) {
4723 ImprovementRateCoefficient = other.ImprovementRateCoefficient;
4725 if (other.ImprovementRateSolutionsDistance != 0) {
4728 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4731 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4732 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4733 public void MergeFrom(pb::CodedInputStream input) {
4734 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4735 input.ReadRawMessage(
this);
4738 while ((tag = input.ReadTag()) != 0) {
4739 if ((tag & 7) == 4) {
4745 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4748 ImprovementRateCoefficient = input.ReadDouble();
4752 ImprovementRateSolutionsDistance = input.ReadInt32();
4760 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4761 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4762 [global::System.CodeDom.Compiler.GeneratedCode(
"protoc",
null)]
4763 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4765 while ((tag = input.ReadTag()) != 0) {
4766 if ((tag & 7) == 4) {
4772 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4775 ImprovementRateCoefficient = input.ReadDouble();
4779 ImprovementRateSolutionsDistance = input.ReadInt32();
4797 [global::System.Diagnostics.DebuggerDisplayAttribute(
"{ToString(),nq}")]
4798 public sealed partial
class RoutingModelParameters : pb::IMessage<RoutingModelParameters>
4799 #
if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE