4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3014000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
16 #if 3014000 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/metadata_lite.h>
29 #include <google/protobuf/generated_message_reflection.h>
30 #include <google/protobuf/message.h>
31 #include <google/protobuf/repeated_field.h>
32 #include <google/protobuf/extension_set.h>
33 #include <google/protobuf/generated_enum_reflection.h>
34 #include <google/protobuf/unknown_field_set.h>
35 #include <google/protobuf/duration.pb.h>
40 #include <google/protobuf/port_def.inc>
41 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto
42 PROTOBUF_NAMESPACE_OPEN
46 PROTOBUF_NAMESPACE_CLOSE
50 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
52 static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
54 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4]
56 static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata
field_metadata[];
62 class RoutingModelParameters;
63 class RoutingModelParametersDefaultTypeInternal;
65 class RoutingSearchParameters;
68 class RoutingSearchParameters_ImprovementSearchLimitParameters;
71 class RoutingSearchParameters_LocalSearchNeighborhoodOperators;
75 PROTOBUF_NAMESPACE_OPEN
76 template<> ::operations_research::RoutingModelParameters* Arena::CreateMaybeMessage<::operations_research::RoutingModelParameters>(Arena*);
77 template<> ::operations_research::RoutingSearchParameters* Arena::CreateMaybeMessage<::operations_research::RoutingSearchParameters>(Arena*);
78 template<> ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* Arena::CreateMaybeMessage<::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters>(Arena*);
79 template<> ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* Arena::CreateMaybeMessage<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators>(Arena*);
80 PROTOBUF_NAMESPACE_CLOSE
100 "Incorrect type passed to function RoutingSearchParameters_SchedulingSolver_Name.");
101 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
106 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<RoutingSearchParameters_SchedulingSolver>(
111 class RoutingSearchParameters_LocalSearchNeighborhoodOperators PROTOBUF_FINAL :
112 public ::PROTOBUF_NAMESPACE_ID::Message {
119 : RoutingSearchParameters_LocalSearchNeighborhoodOperators() {
120 *
this = ::std::move(from);
123 inline RoutingSearchParameters_LocalSearchNeighborhoodOperators&
operator=(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from) {
127 inline RoutingSearchParameters_LocalSearchNeighborhoodOperators&
operator=(RoutingSearchParameters_LocalSearchNeighborhoodOperators&& from) noexcept {
128 if (GetArena() == from.GetArena()) {
129 if (
this != &from) InternalSwap(&from);
136 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
137 return GetDescriptor();
140 return GetMetadataStatic().descriptor;
143 return GetMetadataStatic().reflection;
148 return reinterpret_cast<const RoutingSearchParameters_LocalSearchNeighborhoodOperators*
>(
151 static constexpr
int kIndexInFileMessages =
154 friend void swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators&
a, RoutingSearchParameters_LocalSearchNeighborhoodOperators&
b) {
157 inline void Swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other) {
158 if (other ==
this)
return;
159 if (GetArena() == other->GetArena()) {
162 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
165 void UnsafeArenaSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other) {
166 if (other ==
this)
return;
167 GOOGLE_DCHECK(GetArena() == other->GetArena());
173 inline RoutingSearchParameters_LocalSearchNeighborhoodOperators*
New() const final {
174 return CreateMaybeMessage<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(
nullptr);
177 RoutingSearchParameters_LocalSearchNeighborhoodOperators*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
178 return CreateMaybeMessage<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(arena);
180 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
181 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
182 void CopyFrom(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from);
183 void MergeFrom(
const RoutingSearchParameters_LocalSearchNeighborhoodOperators& from);
184 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
185 bool IsInitialized() const final;
187 size_t ByteSizeLong() const final;
188 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
189 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
190 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
191 int GetCachedSize() const final {
return _cached_size_.Get(); }
194 inline void SharedCtor();
195 inline void SharedDtor();
196 void SetCachedSize(
int size)
const final;
197 void InternalSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* other);
198 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
199 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
200 return "operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators";
205 static void ArenaDtor(
void*
object);
206 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
211 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
223 kUseRelocateFieldNumber = 1,
224 kUseRelocatePairFieldNumber = 2,
225 kUseRelocateNeighborsFieldNumber = 3,
226 kUseExchangeFieldNumber = 4,
227 kUseCrossFieldNumber = 5,
228 kUseCrossExchangeFieldNumber = 6,
229 kUseTwoOptFieldNumber = 7,
230 kUseOrOptFieldNumber = 8,
231 kUseLinKernighanFieldNumber = 9,
232 kUseTspOptFieldNumber = 10,
233 kUseMakeActiveFieldNumber = 11,
234 kUseMakeInactiveFieldNumber = 12,
235 kUseMakeChainInactiveFieldNumber = 13,
236 kUseSwapActiveFieldNumber = 14,
237 kUseExtendedSwapActiveFieldNumber = 15,
238 kUsePathLnsFieldNumber = 16,
239 kUseFullPathLnsFieldNumber = 17,
240 kUseTspLnsFieldNumber = 18,
241 kUseInactiveLnsFieldNumber = 19,
242 kUseNodePairSwapActiveFieldNumber = 20,
243 kUseRelocateAndMakeActiveFieldNumber = 21,
244 kUseExchangePairFieldNumber = 22,
245 kUseRelocateExpensiveChainFieldNumber = 23,
246 kUseLightRelocatePairFieldNumber = 24,
247 kUseRelocateSubtripFieldNumber = 25,
248 kUseExchangeSubtripFieldNumber = 26,
249 kUseGlobalCheapestInsertionPathLnsFieldNumber = 27,
250 kUseLocalCheapestInsertionPathLnsFieldNumber = 28,
251 kUseGlobalCheapestInsertionExpensiveChainLnsFieldNumber = 29,
252 kUseLocalCheapestInsertionExpensiveChainLnsFieldNumber = 30,
253 kUseGlobalCheapestInsertionCloseNodesLnsFieldNumber = 31,
254 kUseLocalCheapestInsertionCloseNodesLnsFieldNumber = 32,
255 kUseRelocatePathGlobalCheapestInsertionInsertUnperformedFieldNumber = 33,
558 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
559 typedef void InternalArenaConstructable_;
560 typedef void DestructorSkippable_;
562 int use_relocate_pair_;
563 int use_relocate_neighbors_;
566 int use_cross_exchange_;
569 int use_lin_kernighan_;
571 int use_make_active_;
572 int use_make_inactive_;
573 int use_make_chain_inactive_;
574 int use_swap_active_;
575 int use_extended_swap_active_;
577 int use_full_path_lns_;
579 int use_inactive_lns_;
580 int use_node_pair_swap_active_;
581 int use_relocate_and_make_active_;
582 int use_exchange_pair_;
583 int use_relocate_expensive_chain_;
584 int use_light_relocate_pair_;
585 int use_relocate_subtrip_;
586 int use_exchange_subtrip_;
587 int use_global_cheapest_insertion_path_lns_;
588 int use_local_cheapest_insertion_path_lns_;
589 int use_global_cheapest_insertion_expensive_chain_lns_;
590 int use_local_cheapest_insertion_expensive_chain_lns_;
591 int use_global_cheapest_insertion_close_nodes_lns_;
592 int use_local_cheapest_insertion_close_nodes_lns_;
593 int use_relocate_path_global_cheapest_insertion_insert_unperformed_;
594 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
595 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
599 class RoutingSearchParameters_ImprovementSearchLimitParameters
PROTOBUF_FINAL :
600 public ::PROTOBUF_NAMESPACE_ID::Message {
607 : RoutingSearchParameters_ImprovementSearchLimitParameters() {
608 *
this = ::std::move(from);
611 inline RoutingSearchParameters_ImprovementSearchLimitParameters&
operator=(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from) {
615 inline RoutingSearchParameters_ImprovementSearchLimitParameters&
operator=(RoutingSearchParameters_ImprovementSearchLimitParameters&& from) noexcept {
616 if (GetArena() == from.GetArena()) {
617 if (
this != &from) InternalSwap(&from);
624 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
625 return GetDescriptor();
628 return GetMetadataStatic().descriptor;
631 return GetMetadataStatic().reflection;
636 return reinterpret_cast<const RoutingSearchParameters_ImprovementSearchLimitParameters*
>(
639 static constexpr
int kIndexInFileMessages =
642 friend void swap(RoutingSearchParameters_ImprovementSearchLimitParameters&
a, RoutingSearchParameters_ImprovementSearchLimitParameters&
b) {
645 inline void Swap(RoutingSearchParameters_ImprovementSearchLimitParameters* other) {
646 if (other ==
this)
return;
647 if (GetArena() == other->GetArena()) {
650 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
653 void UnsafeArenaSwap(RoutingSearchParameters_ImprovementSearchLimitParameters* other) {
654 if (other ==
this)
return;
655 GOOGLE_DCHECK(GetArena() == other->GetArena());
661 inline RoutingSearchParameters_ImprovementSearchLimitParameters*
New() const final {
662 return CreateMaybeMessage<RoutingSearchParameters_ImprovementSearchLimitParameters>(
nullptr);
665 RoutingSearchParameters_ImprovementSearchLimitParameters*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
666 return CreateMaybeMessage<RoutingSearchParameters_ImprovementSearchLimitParameters>(arena);
668 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
669 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
670 void CopyFrom(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from);
671 void MergeFrom(
const RoutingSearchParameters_ImprovementSearchLimitParameters& from);
672 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
673 bool IsInitialized() const final;
675 size_t ByteSizeLong() const final;
676 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
677 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
678 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
679 int GetCachedSize() const final {
return _cached_size_.Get(); }
682 inline void SharedCtor();
683 inline void SharedDtor();
684 void SetCachedSize(
int size)
const final;
685 void InternalSwap(RoutingSearchParameters_ImprovementSearchLimitParameters* other);
686 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
687 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
688 return "operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters";
693 static void ArenaDtor(
void*
object);
694 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
699 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
711 kImprovementRateSolutionsDistanceFieldNumber = 39,
712 kImprovementRateCoefficientFieldNumber = 38,
728 double _internal_improvement_rate_coefficient()
const;
729 void _internal_set_improvement_rate_coefficient(
double value);
736 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
737 typedef void InternalArenaConstructable_;
738 typedef void DestructorSkippable_;
740 double improvement_rate_coefficient_;
741 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
742 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
747 public ::PROTOBUF_NAMESPACE_ID::Message {
754 : RoutingSearchParameters() {
755 *
this = ::std::move(from);
758 inline RoutingSearchParameters&
operator=(
const RoutingSearchParameters& from) {
762 inline RoutingSearchParameters&
operator=(RoutingSearchParameters&& from) noexcept {
763 if (GetArena() == from.GetArena()) {
764 if (
this != &from) InternalSwap(&from);
771 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
772 return GetDescriptor();
775 return GetMetadataStatic().descriptor;
778 return GetMetadataStatic().reflection;
783 return reinterpret_cast<const RoutingSearchParameters*
>(
786 static constexpr
int kIndexInFileMessages =
789 friend void swap(RoutingSearchParameters&
a, RoutingSearchParameters&
b) {
792 inline void Swap(RoutingSearchParameters* other) {
793 if (other ==
this)
return;
794 if (GetArena() == other->GetArena()) {
797 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
801 if (other ==
this)
return;
802 GOOGLE_DCHECK(GetArena() == other->GetArena());
808 inline RoutingSearchParameters*
New() const final {
809 return CreateMaybeMessage<RoutingSearchParameters>(
nullptr);
812 RoutingSearchParameters*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
813 return CreateMaybeMessage<RoutingSearchParameters>(arena);
815 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
816 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
817 void CopyFrom(
const RoutingSearchParameters& from);
819 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
820 bool IsInitialized() const final;
822 size_t ByteSizeLong() const final;
823 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
824 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
825 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
826 int GetCachedSize() const final {
return _cached_size_.Get(); }
829 inline void SharedCtor();
830 inline void SharedDtor();
831 void SetCachedSize(
int size)
const final;
832 void InternalSwap(RoutingSearchParameters* other);
833 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
834 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
835 return "operations_research.RoutingSearchParameters";
840 static void ArenaDtor(
void*
object);
841 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
846 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
872 static constexpr
int SchedulingSolver_ARRAYSIZE =
874 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
882 "Incorrect type passed to function SchedulingSolver_Name.");
893 kLogTagFieldNumber = 36,
894 kLocalSearchOperatorsFieldNumber = 3,
895 kTimeLimitFieldNumber = 9,
896 kLnsTimeLimitFieldNumber = 10,
897 kImprovementLimitParametersFieldNumber = 37,
898 kFirstSolutionStrategyFieldNumber = 1,
899 kLocalSearchMetaheuristicFieldNumber = 4,
900 kGuidedLocalSearchLambdaCoefficientFieldNumber = 5,
901 kOptimizationStepFieldNumber = 7,
902 kSolutionLimitFieldNumber = 8,
903 kSavingsNeighborsRatioFieldNumber = 14,
904 kLogSearchFieldNumber = 13,
905 kNumberOfSolutionsToCollectFieldNumber = 17,
906 kCheapestInsertionFarthestSeedsRatioFieldNumber = 16,
907 kSavingsArcCoefficientFieldNumber = 18,
908 kUseUnfilteredFirstSolutionStrategyFieldNumber = 2,
909 kSavingsAddReverseArcsFieldNumber = 15,
910 kSavingsParallelRoutesFieldNumber = 19,
911 kCheapestInsertionAddUnperformedEntriesFieldNumber = 40,
912 kRelocateExpensiveChainNumArcsToConsiderFieldNumber = 20,
913 kCheapestInsertionFirstSolutionNeighborsRatioFieldNumber = 21,
914 kLogCostScalingFactorFieldNumber = 22,
915 kSavingsMaxMemoryUsageBytesFieldNumber = 23,
916 kChristofidesUseMinimumMatchingFieldNumber = 30,
917 kUseMultiArmedBanditConcatenateOperatorsFieldNumber = 41,
918 kUseDepthFirstSearchFieldNumber = 6,
919 kUseFullPropagationFieldNumber = 11,
920 kUseCpSatFieldNumber = 27,
921 kLogCostOffsetFieldNumber = 29,
922 kUseCpFieldNumber = 28,
923 kHeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber = 32,
924 kCheapestInsertionLsOperatorNeighborsRatioFieldNumber = 31,
925 kContinuousSchedulingSolverFieldNumber = 33,
926 kMixedIntegerSchedulingSolverFieldNumber = 34,
927 kHeuristicCloseNodesLnsNumNodesFieldNumber = 35,
928 kCheapestInsertionFirstSolutionMinNeighborsFieldNumber = 44,
929 kCheapestInsertionLsOperatorMinNeighborsFieldNumber = 45,
930 kMultiArmedBanditCompoundOperatorMemoryCoefficientFieldNumber = 42,
931 kMultiArmedBanditCompoundOperatorExplorationCoefficientFieldNumber = 43,
944 const std::string& _internal_log_tag()
const;
945 void _internal_set_log_tag(
const std::string&
value);
946 std::string* _internal_mutable_log_tag();
952 bool _internal_has_local_search_operators()
const;
960 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& _internal_local_search_operators()
const;
961 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* _internal_mutable_local_search_operators();
964 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators);
970 bool _internal_has_time_limit()
const;
978 const PROTOBUF_NAMESPACE_ID::Duration& _internal_time_limit()
const;
979 PROTOBUF_NAMESPACE_ID::Duration* _internal_mutable_time_limit();
988 bool _internal_has_lns_time_limit()
const;
996 const PROTOBUF_NAMESPACE_ID::Duration& _internal_lns_time_limit()
const;
997 PROTOBUF_NAMESPACE_ID::Duration* _internal_mutable_lns_time_limit();
1000 PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit);
1006 bool _internal_has_improvement_limit_parameters()
const;
1014 const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& _internal_improvement_limit_parameters()
const;
1015 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* _internal_mutable_improvement_limit_parameters();
1018 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* improvement_limit_parameters);
1044 double _internal_guided_local_search_lambda_coefficient()
const;
1045 void _internal_set_guided_local_search_lambda_coefficient(
double value);
1053 double _internal_optimization_step()
const;
1054 void _internal_set_optimization_step(
double value);
1071 double _internal_savings_neighbors_ratio()
const;
1072 void _internal_set_savings_neighbors_ratio(
double value);
1080 bool _internal_log_search()
const;
1081 void _internal_set_log_search(
bool value);
1098 double _internal_cheapest_insertion_farthest_seeds_ratio()
const;
1099 void _internal_set_cheapest_insertion_farthest_seeds_ratio(
double value);
1107 double _internal_savings_arc_coefficient()
const;
1108 void _internal_set_savings_arc_coefficient(
double value);
1116 bool _internal_use_unfiltered_first_solution_strategy()
const;
1117 void _internal_set_use_unfiltered_first_solution_strategy(
bool value);
1125 bool _internal_savings_add_reverse_arcs()
const;
1126 void _internal_set_savings_add_reverse_arcs(
bool value);
1134 bool _internal_savings_parallel_routes()
const;
1135 void _internal_set_savings_parallel_routes(
bool value);
1143 bool _internal_cheapest_insertion_add_unperformed_entries()
const;
1144 void _internal_set_cheapest_insertion_add_unperformed_entries(
bool value);
1161 double _internal_cheapest_insertion_first_solution_neighbors_ratio()
const;
1162 void _internal_set_cheapest_insertion_first_solution_neighbors_ratio(
double value);
1170 double _internal_log_cost_scaling_factor()
const;
1171 void _internal_set_log_cost_scaling_factor(
double value);
1179 double _internal_savings_max_memory_usage_bytes()
const;
1180 void _internal_set_savings_max_memory_usage_bytes(
double value);
1188 bool _internal_christofides_use_minimum_matching()
const;
1189 void _internal_set_christofides_use_minimum_matching(
bool value);
1197 bool _internal_use_multi_armed_bandit_concatenate_operators()
const;
1198 void _internal_set_use_multi_armed_bandit_concatenate_operators(
bool value);
1206 bool _internal_use_depth_first_search()
const;
1207 void _internal_set_use_depth_first_search(
bool value);
1215 bool _internal_use_full_propagation()
const;
1216 void _internal_set_use_full_propagation(
bool value);
1233 double _internal_log_cost_offset()
const;
1234 void _internal_set_log_cost_offset(
double value);
1260 double _internal_cheapest_insertion_ls_operator_neighbors_ratio()
const;
1261 void _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(
double value);
1314 double _internal_multi_armed_bandit_compound_operator_memory_coefficient()
const;
1315 void _internal_set_multi_armed_bandit_compound_operator_memory_coefficient(
double value);
1323 double _internal_multi_armed_bandit_compound_operator_exploration_coefficient()
const;
1324 void _internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(
double value);
1331 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1332 typedef void InternalArenaConstructable_;
1333 typedef void DestructorSkippable_;
1334 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_tag_;
1335 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators_;
1336 PROTOBUF_NAMESPACE_ID::Duration* time_limit_;
1337 PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit_;
1338 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* improvement_limit_parameters_;
1339 int first_solution_strategy_;
1340 int local_search_metaheuristic_;
1341 double guided_local_search_lambda_coefficient_;
1342 double optimization_step_;
1344 double savings_neighbors_ratio_;
1347 double cheapest_insertion_farthest_seeds_ratio_;
1348 double savings_arc_coefficient_;
1349 bool use_unfiltered_first_solution_strategy_;
1350 bool savings_add_reverse_arcs_;
1351 bool savings_parallel_routes_;
1352 bool cheapest_insertion_add_unperformed_entries_;
1354 double cheapest_insertion_first_solution_neighbors_ratio_;
1355 double log_cost_scaling_factor_;
1356 double savings_max_memory_usage_bytes_;
1357 bool christofides_use_minimum_matching_;
1358 bool use_multi_armed_bandit_concatenate_operators_;
1359 bool use_depth_first_search_;
1360 bool use_full_propagation_;
1362 double log_cost_offset_;
1365 double cheapest_insertion_ls_operator_neighbors_ratio_;
1366 int continuous_scheduling_solver_;
1367 int mixed_integer_scheduling_solver_;
1371 double multi_armed_bandit_compound_operator_memory_coefficient_;
1372 double multi_armed_bandit_compound_operator_exploration_coefficient_;
1373 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1374 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1379 public ::PROTOBUF_NAMESPACE_ID::Message {
1386 : RoutingModelParameters() {
1387 *
this = ::std::move(from);
1390 inline RoutingModelParameters&
operator=(
const RoutingModelParameters& from) {
1394 inline RoutingModelParameters&
operator=(RoutingModelParameters&& from) noexcept {
1395 if (GetArena() == from.GetArena()) {
1396 if (
this != &from) InternalSwap(&from);
1404 return GetDescriptor();
1407 return GetMetadataStatic().descriptor;
1410 return GetMetadataStatic().reflection;
1415 return reinterpret_cast<const RoutingModelParameters*
>(
1418 static constexpr
int kIndexInFileMessages =
1421 friend void swap(RoutingModelParameters&
a, RoutingModelParameters&
b) {
1424 inline void Swap(RoutingModelParameters* other) {
1425 if (other ==
this)
return;
1426 if (GetArena() == other->GetArena()) {
1427 InternalSwap(other);
1429 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
1433 if (other ==
this)
return;
1434 GOOGLE_DCHECK(GetArena() == other->GetArena());
1435 InternalSwap(other);
1440 inline RoutingModelParameters*
New() const final {
1441 return CreateMaybeMessage<RoutingModelParameters>(
nullptr);
1444 RoutingModelParameters*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
1445 return CreateMaybeMessage<RoutingModelParameters>(arena);
1447 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
1448 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
1451 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
1452 bool IsInitialized() const final;
1454 size_t ByteSizeLong() const final;
1455 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
1456 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
1457 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1458 int GetCachedSize() const final {
return _cached_size_.Get(); }
1461 inline void SharedCtor();
1462 inline void SharedDtor();
1463 void SetCachedSize(
int size)
const final;
1464 void InternalSwap(RoutingModelParameters* other);
1465 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1466 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1467 return "operations_research.RoutingModelParameters";
1472 static void ArenaDtor(
void*
object);
1473 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1478 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1490 kSolverParametersFieldNumber = 1,
1491 kReduceVehicleCostModelFieldNumber = 2,
1492 kMaxCallbackCacheSizeFieldNumber = 3,
1497 bool _internal_has_solver_parameters()
const;
1505 const ::operations_research::ConstraintSolverParameters& _internal_solver_parameters()
const;
1506 ::operations_research::ConstraintSolverParameters* _internal_mutable_solver_parameters();
1509 ::operations_research::ConstraintSolverParameters* solver_parameters);
1517 bool _internal_reduce_vehicle_cost_model()
const;
1518 void _internal_set_reduce_vehicle_cost_model(
bool value);
1534 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1535 typedef void InternalArenaConstructable_;
1536 typedef void DestructorSkippable_;
1537 ::operations_research::ConstraintSolverParameters* solver_parameters_;
1538 bool reduce_vehicle_cost_model_;
1540 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1541 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1549 #pragma GCC diagnostic push
1550 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1555 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate() {
1563 return _internal_use_relocate();
1567 use_relocate_ =
value;
1570 _internal_set_use_relocate(
value);
1575 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_pair() {
1576 use_relocate_pair_ = 0;
1583 return _internal_use_relocate_pair();
1587 use_relocate_pair_ =
value;
1590 _internal_set_use_relocate_pair(
value);
1595 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_light_relocate_pair() {
1596 use_light_relocate_pair_ = 0;
1603 return _internal_use_light_relocate_pair();
1607 use_light_relocate_pair_ =
value;
1610 _internal_set_use_light_relocate_pair(
value);
1615 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_neighbors() {
1616 use_relocate_neighbors_ = 0;
1623 return _internal_use_relocate_neighbors();
1627 use_relocate_neighbors_ =
value;
1630 _internal_set_use_relocate_neighbors(
value);
1635 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_subtrip() {
1636 use_relocate_subtrip_ = 0;
1643 return _internal_use_relocate_subtrip();
1647 use_relocate_subtrip_ =
value;
1650 _internal_set_use_relocate_subtrip(
value);
1655 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange() {
1663 return _internal_use_exchange();
1667 use_exchange_ =
value;
1670 _internal_set_use_exchange(
value);
1675 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange_pair() {
1676 use_exchange_pair_ = 0;
1683 return _internal_use_exchange_pair();
1687 use_exchange_pair_ =
value;
1690 _internal_set_use_exchange_pair(
value);
1695 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_exchange_subtrip() {
1696 use_exchange_subtrip_ = 0;
1703 return _internal_use_exchange_subtrip();
1707 use_exchange_subtrip_ =
value;
1710 _internal_set_use_exchange_subtrip(
value);
1715 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_cross() {
1723 return _internal_use_cross();
1730 _internal_set_use_cross(
value);
1735 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_cross_exchange() {
1736 use_cross_exchange_ = 0;
1743 return _internal_use_cross_exchange();
1747 use_cross_exchange_ =
value;
1750 _internal_set_use_cross_exchange(
value);
1755 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_expensive_chain() {
1756 use_relocate_expensive_chain_ = 0;
1763 return _internal_use_relocate_expensive_chain();
1767 use_relocate_expensive_chain_ =
value;
1770 _internal_set_use_relocate_expensive_chain(
value);
1775 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_two_opt() {
1783 return _internal_use_two_opt();
1787 use_two_opt_ =
value;
1790 _internal_set_use_two_opt(
value);
1795 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_or_opt() {
1803 return _internal_use_or_opt();
1807 use_or_opt_ =
value;
1810 _internal_set_use_or_opt(
value);
1815 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_lin_kernighan() {
1816 use_lin_kernighan_ = 0;
1823 return _internal_use_lin_kernighan();
1827 use_lin_kernighan_ =
value;
1830 _internal_set_use_lin_kernighan(
value);
1835 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_tsp_opt() {
1843 return _internal_use_tsp_opt();
1847 use_tsp_opt_ =
value;
1850 _internal_set_use_tsp_opt(
value);
1855 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_active() {
1856 use_make_active_ = 0;
1863 return _internal_use_make_active();
1867 use_make_active_ =
value;
1870 _internal_set_use_make_active(
value);
1875 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_and_make_active() {
1876 use_relocate_and_make_active_ = 0;
1883 return _internal_use_relocate_and_make_active();
1887 use_relocate_and_make_active_ =
value;
1890 _internal_set_use_relocate_and_make_active(
value);
1895 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_inactive() {
1896 use_make_inactive_ = 0;
1903 return _internal_use_make_inactive();
1907 use_make_inactive_ =
value;
1910 _internal_set_use_make_inactive(
value);
1915 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_make_chain_inactive() {
1916 use_make_chain_inactive_ = 0;
1923 return _internal_use_make_chain_inactive();
1927 use_make_chain_inactive_ =
value;
1930 _internal_set_use_make_chain_inactive(
value);
1935 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_swap_active() {
1936 use_swap_active_ = 0;
1943 return _internal_use_swap_active();
1947 use_swap_active_ =
value;
1950 _internal_set_use_swap_active(
value);
1955 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_extended_swap_active() {
1956 use_extended_swap_active_ = 0;
1963 return _internal_use_extended_swap_active();
1967 use_extended_swap_active_ =
value;
1970 _internal_set_use_extended_swap_active(
value);
1975 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_node_pair_swap_active() {
1976 use_node_pair_swap_active_ = 0;
1983 return _internal_use_node_pair_swap_active();
1987 use_node_pair_swap_active_ =
value;
1990 _internal_set_use_node_pair_swap_active(
value);
1995 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_path_lns() {
2003 return _internal_use_path_lns();
2007 use_path_lns_ =
value;
2010 _internal_set_use_path_lns(
value);
2015 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_full_path_lns() {
2016 use_full_path_lns_ = 0;
2023 return _internal_use_full_path_lns();
2027 use_full_path_lns_ =
value;
2030 _internal_set_use_full_path_lns(
value);
2035 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_tsp_lns() {
2043 return _internal_use_tsp_lns();
2047 use_tsp_lns_ =
value;
2050 _internal_set_use_tsp_lns(
value);
2055 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_inactive_lns() {
2056 use_inactive_lns_ = 0;
2063 return _internal_use_inactive_lns();
2067 use_inactive_lns_ =
value;
2070 _internal_set_use_inactive_lns(
value);
2075 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_path_lns() {
2076 use_global_cheapest_insertion_path_lns_ = 0;
2083 return _internal_use_global_cheapest_insertion_path_lns();
2087 use_global_cheapest_insertion_path_lns_ =
value;
2090 _internal_set_use_global_cheapest_insertion_path_lns(
value);
2095 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_path_lns() {
2096 use_local_cheapest_insertion_path_lns_ = 0;
2103 return _internal_use_local_cheapest_insertion_path_lns();
2107 use_local_cheapest_insertion_path_lns_ =
value;
2110 _internal_set_use_local_cheapest_insertion_path_lns(
value);
2115 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_relocate_path_global_cheapest_insertion_insert_unperformed() {
2116 use_relocate_path_global_cheapest_insertion_insert_unperformed_ = 0;
2123 return _internal_use_relocate_path_global_cheapest_insertion_insert_unperformed();
2127 use_relocate_path_global_cheapest_insertion_insert_unperformed_ =
value;
2130 _internal_set_use_relocate_path_global_cheapest_insertion_insert_unperformed(
value);
2135 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_expensive_chain_lns() {
2136 use_global_cheapest_insertion_expensive_chain_lns_ = 0;
2143 return _internal_use_global_cheapest_insertion_expensive_chain_lns();
2147 use_global_cheapest_insertion_expensive_chain_lns_ =
value;
2150 _internal_set_use_global_cheapest_insertion_expensive_chain_lns(
value);
2155 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_expensive_chain_lns() {
2156 use_local_cheapest_insertion_expensive_chain_lns_ = 0;
2163 return _internal_use_local_cheapest_insertion_expensive_chain_lns();
2167 use_local_cheapest_insertion_expensive_chain_lns_ =
value;
2170 _internal_set_use_local_cheapest_insertion_expensive_chain_lns(
value);
2175 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_global_cheapest_insertion_close_nodes_lns() {
2176 use_global_cheapest_insertion_close_nodes_lns_ = 0;
2183 return _internal_use_global_cheapest_insertion_close_nodes_lns();
2187 use_global_cheapest_insertion_close_nodes_lns_ =
value;
2190 _internal_set_use_global_cheapest_insertion_close_nodes_lns(
value);
2195 inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::clear_use_local_cheapest_insertion_close_nodes_lns() {
2196 use_local_cheapest_insertion_close_nodes_lns_ = 0;
2203 return _internal_use_local_cheapest_insertion_close_nodes_lns();
2207 use_local_cheapest_insertion_close_nodes_lns_ =
value;
2210 _internal_set_use_local_cheapest_insertion_close_nodes_lns(
value);
2219 inline void RoutingSearchParameters_ImprovementSearchLimitParameters::clear_improvement_rate_coefficient() {
2220 improvement_rate_coefficient_ = 0;
2222 inline double RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_improvement_rate_coefficient()
const {
2223 return improvement_rate_coefficient_;
2225 inline double RoutingSearchParameters_ImprovementSearchLimitParameters::improvement_rate_coefficient()
const {
2227 return _internal_improvement_rate_coefficient();
2229 inline void RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_set_improvement_rate_coefficient(
double value) {
2231 improvement_rate_coefficient_ =
value;
2233 inline void RoutingSearchParameters_ImprovementSearchLimitParameters::set_improvement_rate_coefficient(
double value) {
2234 _internal_set_improvement_rate_coefficient(
value);
2239 inline void RoutingSearchParameters_ImprovementSearchLimitParameters::clear_improvement_rate_solutions_distance() {
2240 improvement_rate_solutions_distance_ = 0;
2243 return improvement_rate_solutions_distance_;
2247 return _internal_improvement_rate_solutions_distance();
2251 improvement_rate_solutions_distance_ =
value;
2254 _internal_set_improvement_rate_solutions_distance(
value);
2263 inline void RoutingSearchParameters::clear_first_solution_strategy() {
2264 first_solution_strategy_ = 0;
2271 return _internal_first_solution_strategy();
2275 first_solution_strategy_ =
value;
2278 _internal_set_first_solution_strategy(
value);
2283 inline void RoutingSearchParameters::clear_use_unfiltered_first_solution_strategy() {
2284 use_unfiltered_first_solution_strategy_ =
false;
2286 inline bool RoutingSearchParameters::_internal_use_unfiltered_first_solution_strategy()
const {
2287 return use_unfiltered_first_solution_strategy_;
2289 inline bool RoutingSearchParameters::use_unfiltered_first_solution_strategy()
const {
2291 return _internal_use_unfiltered_first_solution_strategy();
2293 inline void RoutingSearchParameters::_internal_set_use_unfiltered_first_solution_strategy(
bool value) {
2295 use_unfiltered_first_solution_strategy_ =
value;
2297 inline void RoutingSearchParameters::set_use_unfiltered_first_solution_strategy(
bool value) {
2298 _internal_set_use_unfiltered_first_solution_strategy(
value);
2303 inline void RoutingSearchParameters::clear_savings_neighbors_ratio() {
2304 savings_neighbors_ratio_ = 0;
2306 inline double RoutingSearchParameters::_internal_savings_neighbors_ratio()
const {
2307 return savings_neighbors_ratio_;
2309 inline double RoutingSearchParameters::savings_neighbors_ratio()
const {
2311 return _internal_savings_neighbors_ratio();
2313 inline void RoutingSearchParameters::_internal_set_savings_neighbors_ratio(
double value) {
2315 savings_neighbors_ratio_ =
value;
2317 inline void RoutingSearchParameters::set_savings_neighbors_ratio(
double value) {
2318 _internal_set_savings_neighbors_ratio(
value);
2323 inline void RoutingSearchParameters::clear_savings_max_memory_usage_bytes() {
2324 savings_max_memory_usage_bytes_ = 0;
2326 inline double RoutingSearchParameters::_internal_savings_max_memory_usage_bytes()
const {
2327 return savings_max_memory_usage_bytes_;
2329 inline double RoutingSearchParameters::savings_max_memory_usage_bytes()
const {
2331 return _internal_savings_max_memory_usage_bytes();
2333 inline void RoutingSearchParameters::_internal_set_savings_max_memory_usage_bytes(
double value) {
2335 savings_max_memory_usage_bytes_ =
value;
2337 inline void RoutingSearchParameters::set_savings_max_memory_usage_bytes(
double value) {
2338 _internal_set_savings_max_memory_usage_bytes(
value);
2343 inline void RoutingSearchParameters::clear_savings_add_reverse_arcs() {
2344 savings_add_reverse_arcs_ =
false;
2346 inline bool RoutingSearchParameters::_internal_savings_add_reverse_arcs()
const {
2347 return savings_add_reverse_arcs_;
2349 inline bool RoutingSearchParameters::savings_add_reverse_arcs()
const {
2351 return _internal_savings_add_reverse_arcs();
2353 inline void RoutingSearchParameters::_internal_set_savings_add_reverse_arcs(
bool value) {
2355 savings_add_reverse_arcs_ =
value;
2357 inline void RoutingSearchParameters::set_savings_add_reverse_arcs(
bool value) {
2358 _internal_set_savings_add_reverse_arcs(
value);
2363 inline void RoutingSearchParameters::clear_savings_arc_coefficient() {
2364 savings_arc_coefficient_ = 0;
2366 inline double RoutingSearchParameters::_internal_savings_arc_coefficient()
const {
2367 return savings_arc_coefficient_;
2369 inline double RoutingSearchParameters::savings_arc_coefficient()
const {
2371 return _internal_savings_arc_coefficient();
2373 inline void RoutingSearchParameters::_internal_set_savings_arc_coefficient(
double value) {
2375 savings_arc_coefficient_ =
value;
2377 inline void RoutingSearchParameters::set_savings_arc_coefficient(
double value) {
2378 _internal_set_savings_arc_coefficient(
value);
2383 inline void RoutingSearchParameters::clear_savings_parallel_routes() {
2384 savings_parallel_routes_ =
false;
2386 inline bool RoutingSearchParameters::_internal_savings_parallel_routes()
const {
2387 return savings_parallel_routes_;
2389 inline bool RoutingSearchParameters::savings_parallel_routes()
const {
2391 return _internal_savings_parallel_routes();
2393 inline void RoutingSearchParameters::_internal_set_savings_parallel_routes(
bool value) {
2395 savings_parallel_routes_ =
value;
2397 inline void RoutingSearchParameters::set_savings_parallel_routes(
bool value) {
2398 _internal_set_savings_parallel_routes(
value);
2403 inline void RoutingSearchParameters::clear_cheapest_insertion_farthest_seeds_ratio() {
2404 cheapest_insertion_farthest_seeds_ratio_ = 0;
2406 inline double RoutingSearchParameters::_internal_cheapest_insertion_farthest_seeds_ratio()
const {
2407 return cheapest_insertion_farthest_seeds_ratio_;
2409 inline double RoutingSearchParameters::cheapest_insertion_farthest_seeds_ratio()
const {
2411 return _internal_cheapest_insertion_farthest_seeds_ratio();
2413 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_farthest_seeds_ratio(
double value) {
2415 cheapest_insertion_farthest_seeds_ratio_ =
value;
2417 inline void RoutingSearchParameters::set_cheapest_insertion_farthest_seeds_ratio(
double value) {
2418 _internal_set_cheapest_insertion_farthest_seeds_ratio(
value);
2423 inline void RoutingSearchParameters::clear_cheapest_insertion_first_solution_neighbors_ratio() {
2424 cheapest_insertion_first_solution_neighbors_ratio_ = 0;
2426 inline double RoutingSearchParameters::_internal_cheapest_insertion_first_solution_neighbors_ratio()
const {
2427 return cheapest_insertion_first_solution_neighbors_ratio_;
2429 inline double RoutingSearchParameters::cheapest_insertion_first_solution_neighbors_ratio()
const {
2431 return _internal_cheapest_insertion_first_solution_neighbors_ratio();
2433 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_first_solution_neighbors_ratio(
double value) {
2435 cheapest_insertion_first_solution_neighbors_ratio_ =
value;
2437 inline void RoutingSearchParameters::set_cheapest_insertion_first_solution_neighbors_ratio(
double value) {
2438 _internal_set_cheapest_insertion_first_solution_neighbors_ratio(
value);
2443 inline void RoutingSearchParameters::clear_cheapest_insertion_first_solution_min_neighbors() {
2444 cheapest_insertion_first_solution_min_neighbors_ = 0;
2447 return cheapest_insertion_first_solution_min_neighbors_;
2451 return _internal_cheapest_insertion_first_solution_min_neighbors();
2455 cheapest_insertion_first_solution_min_neighbors_ =
value;
2458 _internal_set_cheapest_insertion_first_solution_min_neighbors(
value);
2463 inline void RoutingSearchParameters::clear_cheapest_insertion_ls_operator_neighbors_ratio() {
2464 cheapest_insertion_ls_operator_neighbors_ratio_ = 0;
2466 inline double RoutingSearchParameters::_internal_cheapest_insertion_ls_operator_neighbors_ratio()
const {
2467 return cheapest_insertion_ls_operator_neighbors_ratio_;
2469 inline double RoutingSearchParameters::cheapest_insertion_ls_operator_neighbors_ratio()
const {
2471 return _internal_cheapest_insertion_ls_operator_neighbors_ratio();
2473 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_ls_operator_neighbors_ratio(
double value) {
2475 cheapest_insertion_ls_operator_neighbors_ratio_ =
value;
2477 inline void RoutingSearchParameters::set_cheapest_insertion_ls_operator_neighbors_ratio(
double value) {
2478 _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(
value);
2483 inline void RoutingSearchParameters::clear_cheapest_insertion_ls_operator_min_neighbors() {
2484 cheapest_insertion_ls_operator_min_neighbors_ = 0;
2487 return cheapest_insertion_ls_operator_min_neighbors_;
2491 return _internal_cheapest_insertion_ls_operator_min_neighbors();
2495 cheapest_insertion_ls_operator_min_neighbors_ =
value;
2498 _internal_set_cheapest_insertion_ls_operator_min_neighbors(
value);
2503 inline void RoutingSearchParameters::clear_cheapest_insertion_add_unperformed_entries() {
2504 cheapest_insertion_add_unperformed_entries_ =
false;
2506 inline bool RoutingSearchParameters::_internal_cheapest_insertion_add_unperformed_entries()
const {
2507 return cheapest_insertion_add_unperformed_entries_;
2509 inline bool RoutingSearchParameters::cheapest_insertion_add_unperformed_entries()
const {
2511 return _internal_cheapest_insertion_add_unperformed_entries();
2513 inline void RoutingSearchParameters::_internal_set_cheapest_insertion_add_unperformed_entries(
bool value) {
2515 cheapest_insertion_add_unperformed_entries_ =
value;
2517 inline void RoutingSearchParameters::set_cheapest_insertion_add_unperformed_entries(
bool value) {
2518 _internal_set_cheapest_insertion_add_unperformed_entries(
value);
2523 inline void RoutingSearchParameters::clear_christofides_use_minimum_matching() {
2524 christofides_use_minimum_matching_ =
false;
2526 inline bool RoutingSearchParameters::_internal_christofides_use_minimum_matching()
const {
2527 return christofides_use_minimum_matching_;
2529 inline bool RoutingSearchParameters::christofides_use_minimum_matching()
const {
2531 return _internal_christofides_use_minimum_matching();
2533 inline void RoutingSearchParameters::_internal_set_christofides_use_minimum_matching(
bool value) {
2535 christofides_use_minimum_matching_ =
value;
2537 inline void RoutingSearchParameters::set_christofides_use_minimum_matching(
bool value) {
2538 _internal_set_christofides_use_minimum_matching(
value);
2543 inline bool RoutingSearchParameters::_internal_has_local_search_operators()
const {
2544 return this != internal_default_instance() && local_search_operators_ !=
nullptr;
2546 inline bool RoutingSearchParameters::has_local_search_operators()
const {
2547 return _internal_has_local_search_operators();
2549 inline void RoutingSearchParameters::clear_local_search_operators() {
2550 if (GetArena() ==
nullptr && local_search_operators_ !=
nullptr) {
2551 delete local_search_operators_;
2553 local_search_operators_ =
nullptr;
2555 inline const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters::_internal_local_search_operators()
const {
2556 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* p = local_search_operators_;
2557 return p !=
nullptr ? *p :
reinterpret_cast<const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators&
>(
2560 inline const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters::local_search_operators()
const {
2562 return _internal_local_search_operators();
2564 inline void RoutingSearchParameters::unsafe_arena_set_allocated_local_search_operators(
2565 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators) {
2566 if (GetArena() ==
nullptr) {
2567 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(local_search_operators_);
2569 local_search_operators_ = local_search_operators;
2570 if (local_search_operators) {
2577 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::release_local_search_operators() {
2579 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* temp = local_search_operators_;
2580 local_search_operators_ =
nullptr;
2581 if (GetArena() !=
nullptr) {
2582 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2586 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::unsafe_arena_release_local_search_operators() {
2589 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* temp = local_search_operators_;
2590 local_search_operators_ =
nullptr;
2593 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::_internal_mutable_local_search_operators() {
2595 if (local_search_operators_ ==
nullptr) {
2596 auto* p = CreateMaybeMessage<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators>(GetArena());
2597 local_search_operators_ = p;
2599 return local_search_operators_;
2601 inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* RoutingSearchParameters::mutable_local_search_operators() {
2603 return _internal_mutable_local_search_operators();
2605 inline void RoutingSearchParameters::set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* local_search_operators) {
2606 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2607 if (message_arena ==
nullptr) {
2608 delete local_search_operators_;
2610 if (local_search_operators) {
2611 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2612 ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(local_search_operators);
2613 if (message_arena != submessage_arena) {
2614 local_search_operators = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2615 message_arena, local_search_operators, submessage_arena);
2621 local_search_operators_ = local_search_operators;
2626 inline void RoutingSearchParameters::clear_use_multi_armed_bandit_concatenate_operators() {
2627 use_multi_armed_bandit_concatenate_operators_ =
false;
2629 inline bool RoutingSearchParameters::_internal_use_multi_armed_bandit_concatenate_operators()
const {
2630 return use_multi_armed_bandit_concatenate_operators_;
2632 inline bool RoutingSearchParameters::use_multi_armed_bandit_concatenate_operators()
const {
2634 return _internal_use_multi_armed_bandit_concatenate_operators();
2636 inline void RoutingSearchParameters::_internal_set_use_multi_armed_bandit_concatenate_operators(
bool value) {
2638 use_multi_armed_bandit_concatenate_operators_ =
value;
2640 inline void RoutingSearchParameters::set_use_multi_armed_bandit_concatenate_operators(
bool value) {
2641 _internal_set_use_multi_armed_bandit_concatenate_operators(
value);
2646 inline void RoutingSearchParameters::clear_multi_armed_bandit_compound_operator_memory_coefficient() {
2647 multi_armed_bandit_compound_operator_memory_coefficient_ = 0;
2649 inline double RoutingSearchParameters::_internal_multi_armed_bandit_compound_operator_memory_coefficient()
const {
2650 return multi_armed_bandit_compound_operator_memory_coefficient_;
2652 inline double RoutingSearchParameters::multi_armed_bandit_compound_operator_memory_coefficient()
const {
2654 return _internal_multi_armed_bandit_compound_operator_memory_coefficient();
2656 inline void RoutingSearchParameters::_internal_set_multi_armed_bandit_compound_operator_memory_coefficient(
double value) {
2658 multi_armed_bandit_compound_operator_memory_coefficient_ =
value;
2660 inline void RoutingSearchParameters::set_multi_armed_bandit_compound_operator_memory_coefficient(
double value) {
2661 _internal_set_multi_armed_bandit_compound_operator_memory_coefficient(
value);
2666 inline void RoutingSearchParameters::clear_multi_armed_bandit_compound_operator_exploration_coefficient() {
2667 multi_armed_bandit_compound_operator_exploration_coefficient_ = 0;
2669 inline double RoutingSearchParameters::_internal_multi_armed_bandit_compound_operator_exploration_coefficient()
const {
2670 return multi_armed_bandit_compound_operator_exploration_coefficient_;
2672 inline double RoutingSearchParameters::multi_armed_bandit_compound_operator_exploration_coefficient()
const {
2674 return _internal_multi_armed_bandit_compound_operator_exploration_coefficient();
2676 inline void RoutingSearchParameters::_internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(
double value) {
2678 multi_armed_bandit_compound_operator_exploration_coefficient_ =
value;
2680 inline void RoutingSearchParameters::set_multi_armed_bandit_compound_operator_exploration_coefficient(
double value) {
2681 _internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(
value);
2686 inline void RoutingSearchParameters::clear_relocate_expensive_chain_num_arcs_to_consider() {
2687 relocate_expensive_chain_num_arcs_to_consider_ = 0;
2690 return relocate_expensive_chain_num_arcs_to_consider_;
2694 return _internal_relocate_expensive_chain_num_arcs_to_consider();
2698 relocate_expensive_chain_num_arcs_to_consider_ =
value;
2701 _internal_set_relocate_expensive_chain_num_arcs_to_consider(
value);
2706 inline void RoutingSearchParameters::clear_heuristic_expensive_chain_lns_num_arcs_to_consider() {
2707 heuristic_expensive_chain_lns_num_arcs_to_consider_ = 0;
2710 return heuristic_expensive_chain_lns_num_arcs_to_consider_;
2714 return _internal_heuristic_expensive_chain_lns_num_arcs_to_consider();
2718 heuristic_expensive_chain_lns_num_arcs_to_consider_ =
value;
2721 _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(
value);
2726 inline void RoutingSearchParameters::clear_heuristic_close_nodes_lns_num_nodes() {
2727 heuristic_close_nodes_lns_num_nodes_ = 0;
2730 return heuristic_close_nodes_lns_num_nodes_;
2734 return _internal_heuristic_close_nodes_lns_num_nodes();
2738 heuristic_close_nodes_lns_num_nodes_ =
value;
2741 _internal_set_heuristic_close_nodes_lns_num_nodes(
value);
2746 inline void RoutingSearchParameters::clear_local_search_metaheuristic() {
2747 local_search_metaheuristic_ = 0;
2754 return _internal_local_search_metaheuristic();
2758 local_search_metaheuristic_ =
value;
2761 _internal_set_local_search_metaheuristic(
value);
2766 inline void RoutingSearchParameters::clear_guided_local_search_lambda_coefficient() {
2767 guided_local_search_lambda_coefficient_ = 0;
2769 inline double RoutingSearchParameters::_internal_guided_local_search_lambda_coefficient()
const {
2770 return guided_local_search_lambda_coefficient_;
2772 inline double RoutingSearchParameters::guided_local_search_lambda_coefficient()
const {
2774 return _internal_guided_local_search_lambda_coefficient();
2776 inline void RoutingSearchParameters::_internal_set_guided_local_search_lambda_coefficient(
double value) {
2778 guided_local_search_lambda_coefficient_ =
value;
2780 inline void RoutingSearchParameters::set_guided_local_search_lambda_coefficient(
double value) {
2781 _internal_set_guided_local_search_lambda_coefficient(
value);
2786 inline void RoutingSearchParameters::clear_use_depth_first_search() {
2787 use_depth_first_search_ =
false;
2789 inline bool RoutingSearchParameters::_internal_use_depth_first_search()
const {
2790 return use_depth_first_search_;
2792 inline bool RoutingSearchParameters::use_depth_first_search()
const {
2794 return _internal_use_depth_first_search();
2796 inline void RoutingSearchParameters::_internal_set_use_depth_first_search(
bool value) {
2798 use_depth_first_search_ =
value;
2800 inline void RoutingSearchParameters::set_use_depth_first_search(
bool value) {
2801 _internal_set_use_depth_first_search(
value);
2806 inline void RoutingSearchParameters::clear_use_cp() {
2814 return _internal_use_cp();
2821 _internal_set_use_cp(
value);
2826 inline void RoutingSearchParameters::clear_use_cp_sat() {
2834 return _internal_use_cp_sat();
2838 use_cp_sat_ =
value;
2841 _internal_set_use_cp_sat(
value);
2846 inline void RoutingSearchParameters::clear_continuous_scheduling_solver() {
2847 continuous_scheduling_solver_ = 0;
2854 return _internal_continuous_scheduling_solver();
2858 continuous_scheduling_solver_ =
value;
2861 _internal_set_continuous_scheduling_solver(
value);
2866 inline void RoutingSearchParameters::clear_mixed_integer_scheduling_solver() {
2867 mixed_integer_scheduling_solver_ = 0;
2874 return _internal_mixed_integer_scheduling_solver();
2878 mixed_integer_scheduling_solver_ =
value;
2881 _internal_set_mixed_integer_scheduling_solver(
value);
2886 inline void RoutingSearchParameters::clear_optimization_step() {
2887 optimization_step_ = 0;
2889 inline double RoutingSearchParameters::_internal_optimization_step()
const {
2890 return optimization_step_;
2892 inline double RoutingSearchParameters::optimization_step()
const {
2894 return _internal_optimization_step();
2896 inline void RoutingSearchParameters::_internal_set_optimization_step(
double value) {
2898 optimization_step_ =
value;
2900 inline void RoutingSearchParameters::set_optimization_step(
double value) {
2901 _internal_set_optimization_step(
value);
2906 inline void RoutingSearchParameters::clear_number_of_solutions_to_collect() {
2907 number_of_solutions_to_collect_ = 0;
2910 return number_of_solutions_to_collect_;
2914 return _internal_number_of_solutions_to_collect();
2918 number_of_solutions_to_collect_ =
value;
2921 _internal_set_number_of_solutions_to_collect(
value);
2926 inline void RoutingSearchParameters::clear_solution_limit() {
2927 solution_limit_ = PROTOBUF_LONGLONG(0);
2930 return solution_limit_;
2934 return _internal_solution_limit();
2938 solution_limit_ =
value;
2941 _internal_set_solution_limit(
value);
2946 inline bool RoutingSearchParameters::_internal_has_time_limit()
const {
2947 return this != internal_default_instance() && time_limit_ !=
nullptr;
2949 inline bool RoutingSearchParameters::has_time_limit()
const {
2950 return _internal_has_time_limit();
2952 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::_internal_time_limit()
const {
2953 const PROTOBUF_NAMESPACE_ID::Duration* p = time_limit_;
2954 return p !=
nullptr ? *p :
reinterpret_cast<const PROTOBUF_NAMESPACE_ID::Duration&
>(
2955 PROTOBUF_NAMESPACE_ID::_Duration_default_instance_);
2959 return _internal_time_limit();
2961 inline void RoutingSearchParameters::unsafe_arena_set_allocated_time_limit(
2962 PROTOBUF_NAMESPACE_ID::Duration*
time_limit) {
2963 if (GetArena() ==
nullptr) {
2964 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(time_limit_);
2974 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::release_time_limit() {
2976 PROTOBUF_NAMESPACE_ID::Duration* temp = time_limit_;
2977 time_limit_ =
nullptr;
2978 if (GetArena() !=
nullptr) {
2979 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2983 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::unsafe_arena_release_time_limit() {
2986 PROTOBUF_NAMESPACE_ID::Duration* temp = time_limit_;
2987 time_limit_ =
nullptr;
2990 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::_internal_mutable_time_limit() {
2992 if (time_limit_ ==
nullptr) {
2993 auto* p = CreateMaybeMessage<PROTOBUF_NAMESPACE_ID::Duration>(GetArena());
2998 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::mutable_time_limit() {
3000 return _internal_mutable_time_limit();
3002 inline void RoutingSearchParameters::set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration*
time_limit) {
3003 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
3004 if (message_arena ==
nullptr) {
3005 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*
>(time_limit_);
3008 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3009 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(
time_limit)->GetArena();
3010 if (message_arena != submessage_arena) {
3011 time_limit = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3012 message_arena,
time_limit, submessage_arena);
3023 inline bool RoutingSearchParameters::_internal_has_lns_time_limit()
const {
3024 return this != internal_default_instance() && lns_time_limit_ !=
nullptr;
3026 inline bool RoutingSearchParameters::has_lns_time_limit()
const {
3027 return _internal_has_lns_time_limit();
3029 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::_internal_lns_time_limit()
const {
3030 const PROTOBUF_NAMESPACE_ID::Duration* p = lns_time_limit_;
3031 return p !=
nullptr ? *p :
reinterpret_cast<const PROTOBUF_NAMESPACE_ID::Duration&
>(
3032 PROTOBUF_NAMESPACE_ID::_Duration_default_instance_);
3034 inline const PROTOBUF_NAMESPACE_ID::Duration& RoutingSearchParameters::lns_time_limit()
const {
3036 return _internal_lns_time_limit();
3038 inline void RoutingSearchParameters::unsafe_arena_set_allocated_lns_time_limit(
3039 PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit) {
3040 if (GetArena() ==
nullptr) {
3041 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(lns_time_limit_);
3043 lns_time_limit_ = lns_time_limit;
3044 if (lns_time_limit) {
3051 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::release_lns_time_limit() {
3053 PROTOBUF_NAMESPACE_ID::Duration* temp = lns_time_limit_;
3054 lns_time_limit_ =
nullptr;
3055 if (GetArena() !=
nullptr) {
3056 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3060 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::unsafe_arena_release_lns_time_limit() {
3063 PROTOBUF_NAMESPACE_ID::Duration* temp = lns_time_limit_;
3064 lns_time_limit_ =
nullptr;
3067 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::_internal_mutable_lns_time_limit() {
3069 if (lns_time_limit_ ==
nullptr) {
3070 auto* p = CreateMaybeMessage<PROTOBUF_NAMESPACE_ID::Duration>(GetArena());
3071 lns_time_limit_ = p;
3073 return lns_time_limit_;
3075 inline PROTOBUF_NAMESPACE_ID::Duration* RoutingSearchParameters::mutable_lns_time_limit() {
3077 return _internal_mutable_lns_time_limit();
3079 inline void RoutingSearchParameters::set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration* lns_time_limit) {
3080 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
3081 if (message_arena ==
nullptr) {
3082 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*
>(lns_time_limit_);
3084 if (lns_time_limit) {
3085 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3086 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(lns_time_limit)->GetArena();
3087 if (message_arena != submessage_arena) {
3088 lns_time_limit = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3089 message_arena, lns_time_limit, submessage_arena);
3095 lns_time_limit_ = lns_time_limit;
3100 inline bool RoutingSearchParameters::_internal_has_improvement_limit_parameters()
const {
3101 return this != internal_default_instance() && improvement_limit_parameters_ !=
nullptr;
3103 inline bool RoutingSearchParameters::has_improvement_limit_parameters()
const {
3104 return _internal_has_improvement_limit_parameters();
3106 inline void RoutingSearchParameters::clear_improvement_limit_parameters() {
3107 if (GetArena() ==
nullptr && improvement_limit_parameters_ !=
nullptr) {
3108 delete improvement_limit_parameters_;
3110 improvement_limit_parameters_ =
nullptr;
3112 inline const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& RoutingSearchParameters::_internal_improvement_limit_parameters()
const {
3113 const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* p = improvement_limit_parameters_;
3114 return p !=
nullptr ? *p :
reinterpret_cast<const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters&
>(
3117 inline const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& RoutingSearchParameters::improvement_limit_parameters()
const {
3119 return _internal_improvement_limit_parameters();
3121 inline void RoutingSearchParameters::unsafe_arena_set_allocated_improvement_limit_parameters(
3122 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* improvement_limit_parameters) {
3123 if (GetArena() ==
nullptr) {
3124 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(improvement_limit_parameters_);
3126 improvement_limit_parameters_ = improvement_limit_parameters;
3127 if (improvement_limit_parameters) {
3134 inline ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* RoutingSearchParameters::release_improvement_limit_parameters() {
3136 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* temp = improvement_limit_parameters_;
3137 improvement_limit_parameters_ =
nullptr;
3138 if (GetArena() !=
nullptr) {
3139 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3143 inline ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* RoutingSearchParameters::unsafe_arena_release_improvement_limit_parameters() {
3146 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* temp = improvement_limit_parameters_;
3147 improvement_limit_parameters_ =
nullptr;
3150 inline ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* RoutingSearchParameters::_internal_mutable_improvement_limit_parameters() {
3152 if (improvement_limit_parameters_ ==
nullptr) {
3153 auto* p = CreateMaybeMessage<::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters>(GetArena());
3154 improvement_limit_parameters_ = p;
3156 return improvement_limit_parameters_;
3158 inline ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* RoutingSearchParameters::mutable_improvement_limit_parameters() {
3160 return _internal_mutable_improvement_limit_parameters();
3162 inline void RoutingSearchParameters::set_allocated_improvement_limit_parameters(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* improvement_limit_parameters) {
3163 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
3164 if (message_arena ==
nullptr) {
3165 delete improvement_limit_parameters_;
3167 if (improvement_limit_parameters) {
3168 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3169 ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(improvement_limit_parameters);
3170 if (message_arena != submessage_arena) {
3171 improvement_limit_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3172 message_arena, improvement_limit_parameters, submessage_arena);
3178 improvement_limit_parameters_ = improvement_limit_parameters;
3183 inline void RoutingSearchParameters::clear_use_full_propagation() {
3184 use_full_propagation_ =
false;
3186 inline bool RoutingSearchParameters::_internal_use_full_propagation()
const {
3187 return use_full_propagation_;
3189 inline bool RoutingSearchParameters::use_full_propagation()
const {
3191 return _internal_use_full_propagation();
3193 inline void RoutingSearchParameters::_internal_set_use_full_propagation(
bool value) {
3195 use_full_propagation_ =
value;
3197 inline void RoutingSearchParameters::set_use_full_propagation(
bool value) {
3198 _internal_set_use_full_propagation(
value);
3203 inline void RoutingSearchParameters::clear_log_search() {
3204 log_search_ =
false;
3206 inline bool RoutingSearchParameters::_internal_log_search()
const {
3209 inline bool RoutingSearchParameters::log_search()
const {
3211 return _internal_log_search();
3213 inline void RoutingSearchParameters::_internal_set_log_search(
bool value) {
3215 log_search_ =
value;
3217 inline void RoutingSearchParameters::set_log_search(
bool value) {
3218 _internal_set_log_search(
value);
3223 inline void RoutingSearchParameters::clear_log_cost_scaling_factor() {
3224 log_cost_scaling_factor_ = 0;
3226 inline double RoutingSearchParameters::_internal_log_cost_scaling_factor()
const {
3227 return log_cost_scaling_factor_;
3229 inline double RoutingSearchParameters::log_cost_scaling_factor()
const {
3231 return _internal_log_cost_scaling_factor();
3233 inline void RoutingSearchParameters::_internal_set_log_cost_scaling_factor(
double value) {
3235 log_cost_scaling_factor_ =
value;
3237 inline void RoutingSearchParameters::set_log_cost_scaling_factor(
double value) {
3238 _internal_set_log_cost_scaling_factor(
value);
3243 inline void RoutingSearchParameters::clear_log_cost_offset() {
3244 log_cost_offset_ = 0;
3246 inline double RoutingSearchParameters::_internal_log_cost_offset()
const {
3247 return log_cost_offset_;
3249 inline double RoutingSearchParameters::log_cost_offset()
const {
3251 return _internal_log_cost_offset();
3253 inline void RoutingSearchParameters::_internal_set_log_cost_offset(
double value) {
3255 log_cost_offset_ =
value;
3257 inline void RoutingSearchParameters::set_log_cost_offset(
double value) {
3258 _internal_set_log_cost_offset(
value);
3263 inline void RoutingSearchParameters::clear_log_tag() {
3264 log_tag_.ClearToEmpty();
3266 inline const std::string& RoutingSearchParameters::log_tag()
const {
3268 return _internal_log_tag();
3270 inline void RoutingSearchParameters::set_log_tag(
const std::string&
value) {
3271 _internal_set_log_tag(
value);
3274 inline std::string* RoutingSearchParameters::mutable_log_tag() {
3276 return _internal_mutable_log_tag();
3278 inline const std::string& RoutingSearchParameters::_internal_log_tag()
const {
3279 return log_tag_.Get();
3281 inline void RoutingSearchParameters::_internal_set_log_tag(
const std::string&
value) {
3283 log_tag_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{},
value, GetArena());
3285 inline void RoutingSearchParameters::set_log_tag(std::string&&
value) {
3288 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::move(
value), GetArena());
3291 inline void RoutingSearchParameters::set_log_tag(
const char*
value) {
3292 GOOGLE_DCHECK(
value !=
nullptr);
3294 log_tag_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(
value), GetArena());
3297 inline void RoutingSearchParameters::set_log_tag(
const char*
value,
3300 log_tag_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(
3301 reinterpret_cast<const char*
>(
value), size), GetArena());
3304 inline std::string* RoutingSearchParameters::_internal_mutable_log_tag() {
3306 return log_tag_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArena());
3308 inline std::string* RoutingSearchParameters::release_log_tag() {
3310 return log_tag_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3312 inline void RoutingSearchParameters::set_allocated_log_tag(std::string* log_tag) {
3313 if (log_tag !=
nullptr) {
3318 log_tag_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), log_tag,
3328 inline bool RoutingModelParameters::_internal_has_solver_parameters()
const {
3329 return this != internal_default_instance() && solver_parameters_ !=
nullptr;
3331 inline bool RoutingModelParameters::has_solver_parameters()
const {
3332 return _internal_has_solver_parameters();
3334 inline const ::operations_research::ConstraintSolverParameters& RoutingModelParameters::_internal_solver_parameters()
const {
3335 const ::operations_research::ConstraintSolverParameters* p = solver_parameters_;
3336 return p !=
nullptr ? *p :
reinterpret_cast<const ::operations_research::ConstraintSolverParameters&
>(
3339 inline const ::operations_research::ConstraintSolverParameters& RoutingModelParameters::solver_parameters()
const {
3341 return _internal_solver_parameters();
3343 inline void RoutingModelParameters::unsafe_arena_set_allocated_solver_parameters(
3344 ::operations_research::ConstraintSolverParameters* solver_parameters) {
3345 if (GetArena() ==
nullptr) {
3346 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(solver_parameters_);
3348 solver_parameters_ = solver_parameters;
3349 if (solver_parameters) {
3356 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::release_solver_parameters() {
3358 ::operations_research::ConstraintSolverParameters* temp = solver_parameters_;
3359 solver_parameters_ =
nullptr;
3360 if (GetArena() !=
nullptr) {
3361 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3365 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::unsafe_arena_release_solver_parameters() {
3368 ::operations_research::ConstraintSolverParameters* temp = solver_parameters_;
3369 solver_parameters_ =
nullptr;
3372 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::_internal_mutable_solver_parameters() {
3374 if (solver_parameters_ ==
nullptr) {
3375 auto* p = CreateMaybeMessage<::operations_research::ConstraintSolverParameters>(GetArena());
3376 solver_parameters_ = p;
3378 return solver_parameters_;
3380 inline ::operations_research::ConstraintSolverParameters* RoutingModelParameters::mutable_solver_parameters() {
3382 return _internal_mutable_solver_parameters();
3384 inline void RoutingModelParameters::set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters* solver_parameters) {
3385 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
3386 if (message_arena ==
nullptr) {
3387 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*
>(solver_parameters_);
3389 if (solver_parameters) {
3390 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3391 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(solver_parameters)->GetArena();
3392 if (message_arena != submessage_arena) {
3393 solver_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3394 message_arena, solver_parameters, submessage_arena);
3400 solver_parameters_ = solver_parameters;
3405 inline void RoutingModelParameters::clear_reduce_vehicle_cost_model() {
3406 reduce_vehicle_cost_model_ =
false;
3408 inline bool RoutingModelParameters::_internal_reduce_vehicle_cost_model()
const {
3409 return reduce_vehicle_cost_model_;
3411 inline bool RoutingModelParameters::reduce_vehicle_cost_model()
const {
3413 return _internal_reduce_vehicle_cost_model();
3415 inline void RoutingModelParameters::_internal_set_reduce_vehicle_cost_model(
bool value) {
3417 reduce_vehicle_cost_model_ =
value;
3419 inline void RoutingModelParameters::set_reduce_vehicle_cost_model(
bool value) {
3420 _internal_set_reduce_vehicle_cost_model(
value);
3425 inline void RoutingModelParameters::clear_max_callback_cache_size() {
3426 max_callback_cache_size_ = 0;
3429 return max_callback_cache_size_;
3433 return _internal_max_callback_cache_size();
3437 max_callback_cache_size_ =
value;
3440 _internal_set_max_callback_cache_size(
value);
3445 #pragma GCC diagnostic pop
3458 PROTOBUF_NAMESPACE_OPEN
3462 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::RoutingSearchParameters_SchedulingSolver>() {
3466 PROTOBUF_NAMESPACE_CLOSE
3470 #include <google/protobuf/port_undef.inc>
void set_multi_armed_bandit_compound_operator_memory_coefficient(double value)
virtual ~RoutingSearchParameters()
void clear_use_exchange_subtrip()
std::string * mutable_log_tag()
const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators & local_search_operators() const
RoutingSearchParameters_ImprovementSearchLimitParameters & operator=(RoutingSearchParameters_ImprovementSearchLimitParameters &&from) noexcept
double cheapest_insertion_first_solution_neighbors_ratio() const
void set_use_exchange_subtrip(::operations_research::OptionalBoolean value)
void set_use_node_pair_swap_active(::operations_research::OptionalBoolean value)
void set_log_cost_offset(double value)
void Swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators *other)
::operations_research::ConstraintSolverParameters * unsafe_arena_release_solver_parameters()
static bool SchedulingSolver_IsValid(int value)
void clear_use_extended_swap_active()
void Swap(RoutingSearchParameters *other)
const std::string & log_tag() const
void clear_use_path_lns()
void UnsafeArenaSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators *other)
void clear_solver_parameters()
bool cheapest_insertion_add_unperformed_entries() const
void set_optimization_step(double value)
void set_savings_add_reverse_arcs(bool value)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void set_use_make_inactive(::operations_research::OptionalBoolean value)
double savings_max_memory_usage_bytes() const
void set_cheapest_insertion_ls_operator_min_neighbors(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_multi_armed_bandit_compound_operator_exploration_coefficient()
::operations_research::OptionalBoolean use_cross_exchange() const
::operations_research::LocalSearchMetaheuristic_Value local_search_metaheuristic() const
bool has_local_search_operators() const
static const RoutingSearchParameters * internal_default_instance()
void set_use_cross_exchange(::operations_research::OptionalBoolean value)
void clear_use_relocate_path_global_cheapest_insertion_insert_unperformed()
::operations_research::OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns() const
void set_allocated_log_tag(std::string *log_tag)
virtual ~RoutingModelParameters()
void set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration *time_limit)
void clear_savings_add_reverse_arcs()
void set_use_make_chain_inactive(::operations_research::OptionalBoolean value)
void set_cheapest_insertion_add_unperformed_entries(bool value)
void set_use_light_relocate_pair(::operations_research::OptionalBoolean value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::OptionalBoolean use_cross() const
void clear_improvement_limit_parameters()
::operations_research::OptionalBoolean use_make_inactive() const
void clear_cheapest_insertion_first_solution_min_neighbors()
bool has_time_limit() const
RoutingSearchParameters()
double savings_neighbors_ratio() const
RoutingSearchParameters_ImprovementSearchLimitParameters()
RoutingSearchParameters_ImprovementSearchLimitParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
::PROTOBUF_NAMESPACE_ID::int32 relocate_expensive_chain_num_arcs_to_consider() const
RoutingModelParameters * New() const final
RoutingSearchParameters & operator=(RoutingSearchParameters &&from) noexcept
static const RoutingSearchParameters_ImprovementSearchLimitParameters * internal_default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void set_savings_arc_coefficient(double value)
void unsafe_arena_set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration *lns_time_limit)
::operations_research::OptionalBoolean use_extended_swap_active() const
::operations_research::OptionalBoolean use_exchange_pair() const
double cheapest_insertion_farthest_seeds_ratio() const
::PROTOBUF_NAMESPACE_ID::int32 cheapest_insertion_first_solution_min_neighbors() const
void clear_use_local_cheapest_insertion_close_nodes_lns()
void clear_use_relocate_and_make_active()
RoutingSearchParameters & operator=(const RoutingSearchParameters &from)
void set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
void clear_improvement_rate_solutions_distance()
virtual ~RoutingSearchParameters_LocalSearchNeighborhoodOperators()
void set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *solver_parameters)
double multi_armed_bandit_compound_operator_exploration_coefficient() const
void CopyFrom(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
bool savings_parallel_routes() const
::operations_research::OptionalBoolean use_relocate_and_make_active() const
void clear_use_make_inactive()
double optimization_step() const
void set_use_relocate_path_global_cheapest_insertion_insert_unperformed(::operations_research::OptionalBoolean value)
static const std::string & SchedulingSolver_Name(T enum_t_value)
void clear_log_cost_scaling_factor()
void set_cheapest_insertion_farthest_seeds_ratio(double value)
void set_use_make_active(::operations_research::OptionalBoolean value)
void unsafe_arena_set_allocated_improvement_limit_parameters(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *improvement_limit_parameters)
void clear_max_callback_cache_size()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
RoutingSearchParameters_LocalSearchNeighborhoodOperators()
RoutingModelParameters(const RoutingModelParameters &from)
::operations_research::OptionalBoolean use_make_active() const
bool savings_add_reverse_arcs() const
void clear_solution_limit()
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * unsafe_arena_release_local_search_operators()
void CopyFrom(const RoutingModelParameters &from)
::operations_research::OptionalBoolean use_relocate_neighbors() const
::operations_research::OptionalBoolean use_relocate_path_global_cheapest_insertion_insert_unperformed() const
void set_use_exchange_pair(::operations_research::OptionalBoolean value)
void set_max_callback_cache_size(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_savings_neighbors_ratio(double value)
void clear_relocate_expensive_chain_num_arcs_to_consider()
PROTOBUF_NAMESPACE_ID::Duration * unsafe_arena_release_time_limit()
void UnsafeArenaSwap(RoutingModelParameters *other)
void set_log_tag(const char *value, size_t size)
void clear_use_exchange_pair()
friend void swap(RoutingModelParameters &a, RoutingModelParameters &b)
void set_solution_limit(::PROTOBUF_NAMESPACE_ID::int64 value)
void clear_use_global_cheapest_insertion_path_lns()
void clear_use_light_relocate_pair()
RoutingSearchParameters_LocalSearchNeighborhoodOperators(::PROTOBUF_NAMESPACE_ID::Arena *arena)
PROTOBUF_NAMESPACE_ID::Duration * mutable_time_limit()
void unsafe_arena_set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *local_search_operators)
void clear_use_full_propagation()
void clear_optimization_step()
void set_cheapest_insertion_first_solution_neighbors_ratio(double value)
void set_reduce_vehicle_cost_model(bool value)
void set_use_tsp_lns(::operations_research::OptionalBoolean value)
RoutingSearchParameters_LocalSearchNeighborhoodOperators(RoutingSearchParameters_LocalSearchNeighborhoodOperators &&from) noexcept
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * release_local_search_operators()
void set_use_cross(::operations_research::OptionalBoolean value)
void clear_savings_neighbors_ratio()
bool use_multi_armed_bandit_concatenate_operators() const
void clear_cheapest_insertion_first_solution_neighbors_ratio()
void clear_use_depth_first_search()
void clear_use_full_path_lns()
void set_guided_local_search_lambda_coefficient(double value)
::operations_research::ConstraintSolverParameters * release_solver_parameters()
void set_use_relocate_subtrip(::operations_research::OptionalBoolean value)
RoutingSearchParameters_SchedulingSolver SchedulingSolver
::operations_research::OptionalBoolean use_tsp_opt() const
RoutingSearchParameters(RoutingSearchParameters &&from) noexcept
void Swap(RoutingModelParameters *other)
::PROTOBUF_NAMESPACE_ID::int32 heuristic_close_nodes_lns_num_nodes() const
::operations_research::OptionalBoolean use_local_cheapest_insertion_close_nodes_lns() const
void clear_use_make_active()
void set_use_relocate(::operations_research::OptionalBoolean value)
static const RoutingSearchParameters_LocalSearchNeighborhoodOperators * internal_default_instance()
void set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
void set_use_tsp_opt(::operations_research::OptionalBoolean value)
void set_use_full_propagation(bool value)
void clear_use_node_pair_swap_active()
RoutingSearchParameters_ImprovementSearchLimitParameters * New() const final
static const RoutingModelParameters * internal_default_instance()
void clear_continuous_scheduling_solver()
bool has_lns_time_limit() const
RoutingSearchParameters_ImprovementSearchLimitParameters(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
static bool SchedulingSolver_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SchedulingSolver *value)
void set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value)
RoutingModelParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
void set_cheapest_insertion_ls_operator_neighbors_ratio(double value)
double improvement_rate_coefficient() const
void set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value)
void unsafe_arena_set_allocated_time_limit(PROTOBUF_NAMESPACE_ID::Duration *time_limit)
void set_heuristic_expensive_chain_lns_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_number_of_solutions_to_collect(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_cheapest_insertion_add_unperformed_entries()
void clear_use_relocate_pair()
virtual ~RoutingSearchParameters_ImprovementSearchLimitParameters()
void clear_number_of_solutions_to_collect()
void clear_use_cross_exchange()
void clear_use_global_cheapest_insertion_close_nodes_lns()
void clear_heuristic_close_nodes_lns_num_nodes()
void clear_guided_local_search_lambda_coefficient()
void UnsafeArenaSwap(RoutingSearchParameters *other)
double guided_local_search_lambda_coefficient() const
bool reduce_vehicle_cost_model() const
void UnsafeArenaSwap(RoutingSearchParameters_ImprovementSearchLimitParameters *other)
void set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
void set_use_extended_swap_active(::operations_research::OptionalBoolean value)
void clear_savings_max_memory_usage_bytes()
bool use_depth_first_search() const
void set_log_tag(std::string &&value)
PROTOBUF_NAMESPACE_ID::Duration * release_lns_time_limit()
RoutingSearchParameters_LocalSearchNeighborhoodOperators & operator=(RoutingSearchParameters_LocalSearchNeighborhoodOperators &&from) noexcept
::operations_research::OptionalBoolean use_relocate_subtrip() const
void clear_savings_parallel_routes()
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters * unsafe_arena_release_improvement_limit_parameters()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const PROTOBUF_NAMESPACE_ID::Duration & time_limit() const
void set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value)
::PROTOBUF_NAMESPACE_ID::int32 heuristic_expensive_chain_lns_num_arcs_to_consider() const
bool use_full_propagation() const
RoutingSearchParameters * New() const final
void clear_use_make_chain_inactive()
void clear_use_lin_kernighan()
void Swap(RoutingSearchParameters_ImprovementSearchLimitParameters *other)
RoutingSearchParameters_ImprovementSearchLimitParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void clear_use_inactive_lns()
RoutingModelParameters & operator=(RoutingModelParameters &&from) noexcept
void clear_use_exchange()
void clear_use_local_cheapest_insertion_path_lns()
const ::operations_research::ConstraintSolverParameters & solver_parameters() const
void set_use_swap_active(::operations_research::OptionalBoolean value)
void clear_log_cost_offset()
::operations_research::OptionalBoolean use_relocate() const
void clear_use_relocate()
void set_allocated_lns_time_limit(PROTOBUF_NAMESPACE_ID::Duration *lns_time_limit)
void clear_savings_arc_coefficient()
void set_use_relocate_pair(::operations_research::OptionalBoolean value)
void clear_local_search_metaheuristic()
std::string * release_log_tag()
void clear_use_swap_active()
bool use_unfiltered_first_solution_strategy() const
RoutingSearchParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
RoutingSearchParameters(const RoutingSearchParameters &from)
void clear_use_global_cheapest_insertion_expensive_chain_lns()
void set_use_inactive_lns(::operations_research::OptionalBoolean value)
bool has_solver_parameters() const
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters * mutable_improvement_limit_parameters()
void set_multi_armed_bandit_compound_operator_exploration_coefficient(double value)
::operations_research::OptionalBoolean use_exchange_subtrip() const
void clear_cheapest_insertion_ls_operator_neighbors_ratio()
::PROTOBUF_NAMESPACE_ID::int32 cheapest_insertion_ls_operator_min_neighbors() const
void set_use_full_path_lns(::operations_research::OptionalBoolean value)
RoutingSearchParameters_LocalSearchNeighborhoodOperators & operator=(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
void set_savings_parallel_routes(bool value)
const PROTOBUF_NAMESPACE_ID::Duration & lns_time_limit() const
::operations_research::OptionalBoolean use_path_lns() const
void set_use_exchange(::operations_research::OptionalBoolean value)
void CopyFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
double log_cost_offset() const
::operations_research::OptionalBoolean use_or_opt() const
RoutingSearchParameters_LocalSearchNeighborhoodOperators * New() const final
bool christofides_use_minimum_matching() const
void set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *local_search_operators)
::operations_research::OptionalBoolean use_cp_sat() const
::operations_research::OptionalBoolean use_relocate_pair() const
void clear_first_solution_strategy()
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters * release_improvement_limit_parameters()
void set_log_tag(const std::string &value)
::operations_research::OptionalBoolean use_global_cheapest_insertion_path_lns() const
RoutingSearchParameters_ImprovementSearchLimitParameters ImprovementSearchLimitParameters
void clear_use_unfiltered_first_solution_strategy()
void MergeFrom(const RoutingModelParameters &from)
::operations_research::OptionalBoolean use_light_relocate_pair() const
::operations_research::RoutingSearchParameters_SchedulingSolver continuous_scheduling_solver() const
::PROTOBUF_NAMESPACE_ID::int64 solution_limit() const
double savings_arc_coefficient() const
void clear_heuristic_expensive_chain_lns_num_arcs_to_consider()
void clear_christofides_use_minimum_matching()
::PROTOBUF_NAMESPACE_ID::int32 number_of_solutions_to_collect() const
::operations_research::OptionalBoolean use_two_opt() const
void set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
void set_use_multi_armed_bandit_concatenate_operators(bool value)
void set_use_cp_sat(::operations_research::OptionalBoolean value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns() const
void set_use_depth_first_search(bool value)
double cheapest_insertion_ls_operator_neighbors_ratio() const
::operations_research::OptionalBoolean use_exchange() const
void clear_use_relocate_expensive_chain()
void MergeFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
RoutingSearchParameters_ImprovementSearchLimitParameters & operator=(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
void set_cheapest_insertion_first_solution_min_neighbors(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_local_search_operators()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
::operations_research::OptionalBoolean use_local_cheapest_insertion_path_lns() const
void set_use_relocate_and_make_active(::operations_research::OptionalBoolean value)
::PROTOBUF_NAMESPACE_ID::int32 improvement_rate_solutions_distance() const
void clear_use_relocate_subtrip()
void set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters & improvement_limit_parameters() const
void set_savings_max_memory_usage_bytes(double value)
double multi_armed_bandit_compound_operator_memory_coefficient() const
::PROTOBUF_NAMESPACE_ID::int32 max_callback_cache_size() const
void clear_reduce_vehicle_cost_model()
void MergeFrom(const RoutingSearchParameters &from)
void set_improvement_rate_coefficient(double value)
void clear_multi_armed_bandit_compound_operator_memory_coefficient()
friend void swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators &a, RoutingSearchParameters_LocalSearchNeighborhoodOperators &b)
::operations_research::OptionalBoolean use_lin_kernighan() const
RoutingModelParameters & operator=(const RoutingModelParameters &from)
::operations_research::OptionalBoolean use_global_cheapest_insertion_close_nodes_lns() const
::operations_research::OptionalBoolean use_node_pair_swap_active() const
void set_use_lin_kernighan(::operations_research::OptionalBoolean value)
RoutingModelParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_log_tag(const char *value)
::operations_research::RoutingSearchParameters_SchedulingSolver mixed_integer_scheduling_solver() const
void set_use_relocate_neighbors(::operations_research::OptionalBoolean value)
void set_use_unfiltered_first_solution_strategy(bool value)
friend void swap(RoutingSearchParameters_ImprovementSearchLimitParameters &a, RoutingSearchParameters_ImprovementSearchLimitParameters &b)
void clear_mixed_integer_scheduling_solver()
void clear_lns_time_limit()
void set_heuristic_close_nodes_lns_num_nodes(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_relocate_expensive_chain_num_arcs_to_consider(::PROTOBUF_NAMESPACE_ID::int32 value)
static const RoutingSearchParameters_ImprovementSearchLimitParameters & default_instance()
void clear_improvement_rate_coefficient()
void set_use_or_opt(::operations_research::OptionalBoolean value)
static const RoutingSearchParameters_LocalSearchNeighborhoodOperators & default_instance()
void set_log_search(bool value)
RoutingSearchParameters_ImprovementSearchLimitParameters(RoutingSearchParameters_ImprovementSearchLimitParameters &&from) noexcept
static const RoutingSearchParameters & default_instance()
void clear_use_local_cheapest_insertion_expensive_chain_lns()
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SchedulingSolver_descriptor()
void clear_cheapest_insertion_ls_operator_min_neighbors()
RoutingSearchParameters_LocalSearchNeighborhoodOperators LocalSearchNeighborhoodOperators
PROTOBUF_NAMESPACE_ID::Duration * unsafe_arena_release_lns_time_limit()
void set_allocated_improvement_limit_parameters(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *improvement_limit_parameters)
RoutingSearchParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const RoutingModelParameters & default_instance()
friend void swap(RoutingSearchParameters &a, RoutingSearchParameters &b)
::operations_research::OptionalBoolean use_swap_active() const
RoutingSearchParameters_LocalSearchNeighborhoodOperators(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
void set_improvement_rate_solutions_distance(::PROTOBUF_NAMESPACE_ID::int32 value)
::operations_research::OptionalBoolean use_inactive_lns() const
::operations_research::OptionalBoolean use_cp() const
PROTOBUF_NAMESPACE_ID::Duration * mutable_lns_time_limit()
double log_cost_scaling_factor() const
RoutingModelParameters(RoutingModelParameters &&from) noexcept
void set_christofides_use_minimum_matching(bool value)
::operations_research::OptionalBoolean use_full_path_lns() const
PROTOBUF_NAMESPACE_ID::Duration * release_time_limit()
::operations_research::OptionalBoolean use_relocate_expensive_chain() const
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators * mutable_local_search_operators()
void clear_cheapest_insertion_farthest_seeds_ratio()
::operations_research::FirstSolutionStrategy_Value first_solution_strategy() const
void set_log_cost_scaling_factor(double value)
void clear_use_relocate_neighbors()
void clear_use_multi_armed_bandit_concatenate_operators()
void MergeFrom(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
void set_use_two_opt(::operations_research::OptionalBoolean value)
void unsafe_arena_set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *solver_parameters)
void set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
void set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
::operations_research::OptionalBoolean use_make_chain_inactive() const
void set_use_path_lns(::operations_research::OptionalBoolean value)
RoutingSearchParameters_LocalSearchNeighborhoodOperators * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
bool has_improvement_limit_parameters() const
::operations_research::OptionalBoolean use_tsp_lns() const
::operations_research::ConstraintSolverParameters * mutable_solver_parameters()
void CopyFrom(const RoutingSearchParameters &from)
void set_use_cp(::operations_research::OptionalBoolean value)
SharedTimeLimit * time_limit
The vehicle routing library lets one model and solve generic vehicle routing problems ranging from th...
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * RoutingSearchParameters_SchedulingSolver_descriptor()
class operations_research::ConstraintSolverParametersDefaultTypeInternal _ConstraintSolverParameters_default_instance_
class operations_research::RoutingSearchParameters_ImprovementSearchLimitParametersDefaultTypeInternal _RoutingSearchParameters_ImprovementSearchLimitParameters_default_instance_
FirstSolutionStrategy_Value
bool RoutingSearchParameters_SchedulingSolver_IsValid(int value)
class operations_research::RoutingSearchParametersDefaultTypeInternal _RoutingSearchParameters_default_instance_
RoutingSearchParameters_SchedulingSolver
@ RoutingSearchParameters_SchedulingSolver_UNSET
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MIN_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_SchedulingSolver_CP_SAT
@ RoutingSearchParameters_SchedulingSolver_GLOP
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MAX_SENTINEL_DO_NOT_USE_
class operations_research::RoutingModelParametersDefaultTypeInternal _RoutingModelParameters_default_instance_
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MAX
bool RoutingSearchParameters_SchedulingSolver_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RoutingSearchParameters_SchedulingSolver *value)
class operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperatorsDefaultTypeInternal _RoutingSearchParameters_LocalSearchNeighborhoodOperators_default_instance_
const std::string & RoutingSearchParameters_SchedulingSolver_Name(T enum_t_value)
constexpr int RoutingSearchParameters_SchedulingSolver_SchedulingSolver_ARRAYSIZE
LocalSearchMetaheuristic_Value
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MIN
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto