6#ifndef ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto_2epb_2eh
7#define ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto_2epb_2eh
14#include "google/protobuf/runtime_version.h"
15#if PROTOBUF_VERSION != 6031001
16#error "Protobuf C++ gencode is built with an incompatible version of"
17#error "Protobuf C++ headers/runtime. See"
18#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
20#include "google/protobuf/io/coded_stream.h"
21#include "google/protobuf/arena.h"
22#include "google/protobuf/arenastring.h"
23#include "google/protobuf/generated_message_tctable_decl.h"
24#include "google/protobuf/generated_message_util.h"
25#include "google/protobuf/metadata_lite.h"
26#include "google/protobuf/generated_message_reflection.h"
27#include "google/protobuf/message.h"
28#include "google/protobuf/message_lite.h"
29#include "google/protobuf/repeated_field.h"
30#include "google/protobuf/extension_set.h"
31#include "google/protobuf/generated_enum_reflection.h"
32#include "google/protobuf/unknown_field_set.h"
33#include "google/protobuf/duration.pb.h"
42#include "google/protobuf/port_def.inc"
44#define PROTOBUF_INTERNAL_EXPORT_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto OR_PROTO_DLL
89internal::EnumTraitsT<::operations_research::RoutingSearchParameters_InsertionSortingProperty_internal_data_>
90 internal::EnumTraitsImpl::value<::operations_research::RoutingSearchParameters_InsertionSortingProperty>;
92internal::EnumTraitsT<::operations_research::RoutingSearchParameters_PairInsertionStrategy_internal_data_>
93 internal::EnumTraitsImpl::value<::operations_research::RoutingSearchParameters_PairInsertionStrategy>;
95internal::EnumTraitsT<::operations_research::RoutingSearchParameters_SchedulingSolver_internal_data_>
96 internal::EnumTraitsImpl::value<::operations_research::RoutingSearchParameters_SchedulingSolver>;
107 ::std::numeric_limits<::int32_t>::min(),
109 ::std::numeric_limits<::int32_t>::max(),
118 return 0 <= value && value <= 3;
124 static_assert(::std::is_same<T, RoutingSearchParameters_PairInsertionStrategy>::value ||
125 ::std::is_integral<T>::value,
126 "Incorrect type passed to PairInsertionStrategy_Name().");
131 return ::google::protobuf::internal::NameOfDenseEnum<RoutingSearchParameters_PairInsertionStrategy_descriptor, 0, 3>(
132 static_cast<int>(value));
150 ::std::numeric_limits<::int32_t>::min(),
152 ::std::numeric_limits<::int32_t>::max(),
161 return 0 <= value && value <= 8;
167 static_assert(::std::is_same<T, RoutingSearchParameters_InsertionSortingProperty>::value ||
168 ::std::is_integral<T>::value,
169 "Incorrect type passed to InsertionSortingProperty_Name().");
174 return ::google::protobuf::internal::NameOfDenseEnum<RoutingSearchParameters_InsertionSortingProperty_descriptor, 0, 8>(
175 static_cast<int>(value));
187 ::std::numeric_limits<::int32_t>::min(),
189 ::std::numeric_limits<::int32_t>::max(),
198 return 0 <= value && value <= 2;
204 static_assert(::std::is_same<T, RoutingSearchParameters_SchedulingSolver>::value ||
205 ::std::is_integral<T>::value,
206 "Incorrect type passed to SchedulingSolver_Name().");
211 return ::google::protobuf::internal::NameOfDenseEnum<RoutingSearchParameters_SchedulingSolver_descriptor, 0, 2>(
212 static_cast<int>(value));
225class OR_PROTO_DLL RoutingSearchParameters_LocalSearchNeighborhoodOperators final :
public ::google::protobuf::Message
231#if defined(PROTOBUF_CUSTOM_VTABLE)
238 template <
typename =
void>
249 if (
this == &from)
return *
this;
250 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
258 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
259 ABSL_ATTRIBUTE_LIFETIME_BOUND {
260 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
262 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
263 ABSL_ATTRIBUTE_LIFETIME_BOUND {
264 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
267 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
268 return GetDescriptor();
270 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
271 return default_instance().GetMetadata().descriptor;
273 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
274 return default_instance().GetMetadata().reflection;
280 static constexpr int kIndexInFileMessages = 0;
283 if (other ==
this)
return;
284 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
287 ::google::protobuf::internal::GenericSwap(
this, other);
290 void UnsafeArenaSwap(RoutingSearchParameters_LocalSearchNeighborhoodOperators* PROTOBUF_NONNULL other) {
291 if (other ==
this)
return;
292 ABSL_DCHECK(GetArena() == other->GetArena());
299 return ::google::protobuf::Message::DefaultConstruct<RoutingSearchParameters_LocalSearchNeighborhoodOperators>(arena);
301 using ::google::protobuf::Message::CopyFrom;
303 using ::google::protobuf::Message::MergeFrom;
307 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
308 const ::google::protobuf::MessageLite& from_msg);
314 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
315 #if defined(PROTOBUF_CUSTOM_VTABLE)
317 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
318 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
319 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
320 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
323 ::size_t ByteSizeLong()
const {
return ByteSizeLong(*
this); }
324 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
325 ::uint8_t* PROTOBUF_NONNULL target,
326 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
327 return _InternalSerialize(*
this, target, stream);
330 ::size_t ByteSizeLong() const final;
331 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
332 ::uint8_t* PROTOBUF_NONNULL target,
333 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
335 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
338 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
342 template <
typename T>
344 static ::absl::string_view FullMessageName() {
return "operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators"; }
352 *
this = ::std::move(from);
354 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
355 static
void* PROTOBUF_NONNULL PlacementNew_(
356 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
357 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
358 static constexpr auto InternalNewImpl_();
361 static constexpr auto InternalGenerateClassData_();
363 ::
google::protobuf::Metadata GetMetadata() const;
368 kUseRelocateFieldNumber = 1,
369 kUseRelocatePairFieldNumber = 2,
790 friend class ::google::protobuf::internal::TcParser;
791 static const ::google::protobuf::internal::TcParseTable<5, 38,
796 friend class ::google::protobuf::MessageLite;
797 friend class ::google::protobuf::Arena;
798 template <
typename T>
799 friend class ::google::protobuf::Arena::InternalHelper;
800 using InternalArenaConstructable_ = void;
801 using DestructorSkippable_ = void;
803 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
804 inline explicit Impl_(
805 ::google::protobuf::internal::InternalVisibility visibility,
806 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
807 inline explicit Impl_(
808 ::google::protobuf::internal::InternalVisibility visibility,
809 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
811 ::google::protobuf::internal::HasBits<2> _has_bits_;
812 ::google::protobuf::internal::CachedSize _cached_size_;
814 int use_relocate_pair_;
815 int use_relocate_neighbors_;
818 int use_cross_exchange_;
821 int use_lin_kernighan_;
823 int use_make_active_;
824 int use_make_inactive_;
825 int use_make_chain_inactive_;
826 int use_swap_active_;
827 int use_extended_swap_active_;
829 int use_full_path_lns_;
831 int use_inactive_lns_;
832 int use_node_pair_swap_active_;
833 int use_relocate_and_make_active_;
834 int use_exchange_pair_;
835 int use_relocate_expensive_chain_;
836 int use_light_relocate_pair_;
837 int use_relocate_subtrip_;
838 int use_exchange_subtrip_;
839 int use_global_cheapest_insertion_path_lns_;
840 int use_local_cheapest_insertion_path_lns_;
841 int use_global_cheapest_insertion_expensive_chain_lns_;
842 int use_local_cheapest_insertion_expensive_chain_lns_;
843 int use_global_cheapest_insertion_close_nodes_lns_;
844 int use_local_cheapest_insertion_close_nodes_lns_;
845 int use_relocate_path_global_cheapest_insertion_insert_unperformed_;
846 int use_shortest_path_swap_active_;
847 int use_swap_active_chain_;
848 int use_shortest_path_two_opt_;
849 int use_exchange_and_make_active_;
850 int use_exchange_path_start_ends_and_make_active_;
851 PROTOBUF_TSAN_DECLARE_MEMBER
853 union { Impl_ _impl_; };
854 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
866#if defined(PROTOBUF_CUSTOM_VTABLE)
873 template <
typename =
void>
884 if (
this == &from)
return *
this;
885 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
893 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
894 ABSL_ATTRIBUTE_LIFETIME_BOUND {
895 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
897 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
898 ABSL_ATTRIBUTE_LIFETIME_BOUND {
899 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
902 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
903 return GetDescriptor();
905 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
GetDescriptor() {
908 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL
GetReflection() {
915 static constexpr int kIndexInFileMessages = 1;
917 inline void Swap(RoutingSearchParameters_ImprovementSearchLimitParameters* PROTOBUF_NONNULL other) {
918 if (other ==
this)
return;
919 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
922 ::google::protobuf::internal::GenericSwap(
this, other);
925 void UnsafeArenaSwap(RoutingSearchParameters_ImprovementSearchLimitParameters* PROTOBUF_NONNULL other) {
926 if (other ==
this)
return;
927 ABSL_DCHECK(GetArena() == other->GetArena());
934 return ::google::protobuf::Message::DefaultConstruct<RoutingSearchParameters_ImprovementSearchLimitParameters>(arena);
936 using ::google::protobuf::Message::CopyFrom;
938 using ::google::protobuf::Message::MergeFrom;
942 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
943 const ::google::protobuf::MessageLite& from_msg);
949 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
950 #if defined(PROTOBUF_CUSTOM_VTABLE)
952 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
954 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
955 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
959 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
960 ::uint8_t* PROTOBUF_NONNULL target,
961 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
962 return _InternalSerialize(*
this, target, stream);
965 ::size_t ByteSizeLong() const final;
966 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
967 ::uint8_t* PROTOBUF_NONNULL target,
968 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
970 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
973 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
977 template <
typename T>
979 static ::absl::string_view FullMessageName() {
return "operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters"; }
987 *
this = ::std::move(from);
989 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
990 static
void* PROTOBUF_NONNULL PlacementNew_(
991 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
992 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
993 static constexpr auto InternalNewImpl_();
996 static constexpr auto InternalGenerateClassData_();
998 ::
google::protobuf::Metadata GetMetadata() const;
1003 kImprovementRateCoefficientFieldNumber = 38,
1004 kImprovementRateSolutionsDistanceFieldNumber = 39,
1012 double _internal_improvement_rate_coefficient()
const;
1013 void _internal_set_improvement_rate_coefficient(
double value);
1022 ::int32_t _internal_improvement_rate_solutions_distance()
const;
1023 void _internal_set_improvement_rate_solutions_distance(::int32_t value);
1029 friend class ::google::protobuf::internal::TcParser;
1030 static const ::google::protobuf::internal::TcParseTable<1, 2,
1035 friend class ::google::protobuf::MessageLite;
1036 friend class ::google::protobuf::Arena;
1037 template <
typename T>
1038 friend class ::google::protobuf::Arena::InternalHelper;
1039 using InternalArenaConstructable_ = void;
1040 using DestructorSkippable_ = void;
1042 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
1043 inline explicit Impl_(
1044 ::google::protobuf::internal::InternalVisibility visibility,
1045 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1046 inline explicit Impl_(
1047 ::google::protobuf::internal::InternalVisibility visibility,
1048 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
1050 ::google::protobuf::internal::HasBits<1> _has_bits_;
1051 ::google::protobuf::internal::CachedSize _cached_size_;
1052 double improvement_rate_coefficient_;
1053 ::int32_t improvement_rate_solutions_distance_;
1054 PROTOBUF_TSAN_DECLARE_MEMBER
1056 union { Impl_ _impl_; };
1057 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1069#if defined(PROTOBUF_CUSTOM_VTABLE)
1076 template <
typename =
void>
1080 inline RoutingModelParameters(RoutingModelParameters&& from) noexcept
1087 if (
this == &from)
return *
this;
1088 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1089 InternalSwap(&from);
1096 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1097 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1098 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1101 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1102 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1105 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
descriptor() {
1108 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1111 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1121 if (other ==
this)
return;
1122 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1123 InternalSwap(other);
1125 ::google::protobuf::internal::GenericSwap(
this, other);
1128 void UnsafeArenaSwap(RoutingModelParameters* PROTOBUF_NONNULL other) {
1129 if (other ==
this)
return;
1130 ABSL_DCHECK(GetArena() == other->GetArena());
1131 InternalSwap(other);
1136 RoutingModelParameters* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena =
nullptr)
const {
1137 return ::google::protobuf::Message::DefaultConstruct<RoutingModelParameters>(arena);
1139 using ::google::protobuf::Message::CopyFrom;
1141 using ::google::protobuf::Message::MergeFrom;
1145 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1146 const ::google::protobuf::MessageLite& from_msg);
1152 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
1153 #if defined(PROTOBUF_CUSTOM_VTABLE)
1155 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1157 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1158 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1162 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1163 ::uint8_t* PROTOBUF_NONNULL target,
1164 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
1165 return _InternalSerialize(*
this, target, stream);
1168 ::size_t ByteSizeLong() const final;
1169 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1170 ::uint8_t* PROTOBUF_NONNULL target,
1171 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1173 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
1176 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1180 template <
typename T>
1182 static ::absl::string_view FullMessageName() {
return "operations_research.RoutingModelParameters"; }
1190 *
this = ::std::move(from);
1192 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1193 static
void* PROTOBUF_NONNULL PlacementNew_(
1194 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1195 ::
google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1196 static constexpr auto InternalNewImpl_();
1199 static constexpr auto InternalGenerateClassData_();
1201 ::
google::protobuf::Metadata GetMetadata() const;
1206 kSolverParametersFieldNumber = 1,
1207 kReduceVehicleCostModelFieldNumber = 2,
1208 kMaxCallbackCacheSizeFieldNumber = 3,
1213 const ::operations_research::ConstraintSolverParameters&
solver_parameters()
const;
1221 const ::operations_research::ConstraintSolverParameters& _internal_solver_parameters()
const;
1231 bool _internal_reduce_vehicle_cost_model()
const;
1232 void _internal_set_reduce_vehicle_cost_model(
bool value);
1241 ::int32_t _internal_max_callback_cache_size()
const;
1242 void _internal_set_max_callback_cache_size(::int32_t value);
1248 friend class ::google::protobuf::internal::TcParser;
1249 static const ::google::protobuf::internal::TcParseTable<2, 3,
1254 friend class ::google::protobuf::MessageLite;
1255 friend class ::google::protobuf::Arena;
1256 template <
typename T>
1257 friend class ::google::protobuf::Arena::InternalHelper;
1258 using InternalArenaConstructable_ = void;
1259 using DestructorSkippable_ = void;
1261 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
1262 inline explicit Impl_(
1263 ::google::protobuf::internal::InternalVisibility visibility,
1264 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1265 inline explicit Impl_(
1266 ::google::protobuf::internal::InternalVisibility visibility,
1267 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
1269 ::google::protobuf::internal::HasBits<1> _has_bits_;
1270 ::google::protobuf::internal::CachedSize _cached_size_;
1272 bool reduce_vehicle_cost_model_;
1273 ::int32_t max_callback_cache_size_;
1274 PROTOBUF_TSAN_DECLARE_MEMBER
1276 union { Impl_ _impl_; };
1277 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
1289#if defined(PROTOBUF_CUSTOM_VTABLE)
1296 template <
typename =
void>
1300 inline RoutingSearchParameters(RoutingSearchParameters&& from) noexcept
1301 : RoutingSearchParameters(
nullptr, ::std::move(from)) {}
1307 if (
this == &from)
return *
this;
1308 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1309 InternalSwap(&from);
1316 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1317 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1318 return _internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1320 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1321 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1322 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1325 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
descriptor() {
1328 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1329 return default_instance().GetMetadata().descriptor;
1331 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1332 return default_instance().GetMetadata().reflection;
1338 static constexpr int kIndexInFileMessages = 2;
1341 if (other ==
this)
return;
1342 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1343 InternalSwap(other);
1345 ::google::protobuf::internal::GenericSwap(
this, other);
1348 void UnsafeArenaSwap(RoutingSearchParameters* PROTOBUF_NONNULL other) {
1349 if (other ==
this)
return;
1350 ABSL_DCHECK(GetArena() == other->GetArena());
1351 InternalSwap(other);
1357 return ::google::protobuf::Message::DefaultConstruct<RoutingSearchParameters>(arena);
1359 using ::google::protobuf::Message::CopyFrom;
1361 using ::google::protobuf::Message::MergeFrom;
1365 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1366 const ::google::protobuf::MessageLite& from_msg);
1372 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
1373 #if defined(PROTOBUF_CUSTOM_VTABLE)
1375 static ::size_t
ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1377 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1378 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1382 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1383 ::uint8_t* PROTOBUF_NONNULL target,
1384 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
1385 return _InternalSerialize(*
this, target, stream);
1388 ::size_t ByteSizeLong() const final;
1389 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1390 ::uint8_t* PROTOBUF_NONNULL target,
1391 ::
google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1393 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
1396 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1397 static void SharedDtor(MessageLite& self);
1400 template <
typename T>
1402 static ::absl::string_view FullMessageName() {
return "operations_research.RoutingSearchParameters"; }
1410 *
this = ::std::move(from);
1412 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
GetClassData() const PROTOBUF_FINAL;
1414 const
void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1415 ::
google::protobuf::
Arena* PROTOBUF_NULLABLE arena);
1439 template <
typename T>
1443 static inline bool PairInsertionStrategy_Parse(
1444 ::absl::string_view name, PairInsertionStrategy* PROTOBUF_NONNULL value) {
1466 template <
typename T>
1470 static inline bool InsertionSortingProperty_Parse(
1471 ::absl::string_view name, InsertionSortingProperty* PROTOBUF_NONNULL value) {
1487 template <
typename T>
1491 static inline bool SchedulingSolver_Parse(
1492 ::absl::string_view name, SchedulingSolver* PROTOBUF_NONNULL value) {
1561 int _internal_local_search_metaheuristics_size()
const;
1573 const ::google::protobuf::RepeatedField<int>& _internal_local_search_metaheuristics()
const;
1574 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_local_search_metaheuristics();
1580 int _internal_local_cheapest_insertion_sorting_properties_size()
const;
1592 const ::google::protobuf::RepeatedField<int>& _internal_local_cheapest_insertion_sorting_properties()
const;
1593 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_local_cheapest_insertion_sorting_properties();
1598 const ::std::string&
log_tag()
const;
1599 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1606 const ::std::string& _internal_log_tag()
const;
1607 PROTOBUF_ALWAYS_INLINE
void _internal_set_log_tag(const ::std::string& value);
1608 ::std::string* PROTOBUF_NONNULL _internal_mutable_log_tag();
1614 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators&
local_search_operators()
const;
1622 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& _internal_local_search_operators()
const;
1629 const ::google::protobuf::Duration&
time_limit()
const;
1637 const ::google::protobuf::Duration& _internal_time_limit()
const;
1638 ::google::protobuf::Duration* PROTOBUF_NONNULL _internal_mutable_time_limit();
1652 const ::google::protobuf::Duration& _internal_lns_time_limit()
const;
1653 ::google::protobuf::Duration* PROTOBUF_NONNULL _internal_mutable_lns_time_limit();
1667 const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& _internal_improvement_limit_parameters()
const;
1674 const ::operations_research::sat::SatParameters&
sat_parameters()
const;
1682 const ::operations_research::sat::SatParameters& _internal_sat_parameters()
const;
1697 const ::operations_research::IteratedLocalSearchParameters& _internal_iterated_local_search_parameters()
const;
1727 double _internal_guided_local_search_lambda_coefficient()
const;
1728 void _internal_set_guided_local_search_lambda_coefficient(
double value);
1737 double _internal_optimization_step()
const;
1738 void _internal_set_optimization_step(
double value);
1747 ::int64_t _internal_solution_limit()
const;
1748 void _internal_set_solution_limit(::int64_t value);
1757 bool _internal_use_unfiltered_first_solution_strategy()
const;
1758 void _internal_set_use_unfiltered_first_solution_strategy(
bool value);
1767 bool _internal_use_depth_first_search()
const;
1768 void _internal_set_use_depth_first_search(
bool value);
1777 bool _internal_use_full_propagation()
const;
1778 void _internal_set_use_full_propagation(
bool value);
1787 bool _internal_log_search()
const;
1788 void _internal_set_log_search(
bool value);
1797 ::int32_t _internal_number_of_solutions_to_collect()
const;
1798 void _internal_set_number_of_solutions_to_collect(::int32_t value);
1807 double _internal_savings_neighbors_ratio()
const;
1808 void _internal_set_savings_neighbors_ratio(
double value);
1817 double _internal_cheapest_insertion_farthest_seeds_ratio()
const;
1818 void _internal_set_cheapest_insertion_farthest_seeds_ratio(
double value);
1827 double _internal_savings_arc_coefficient()
const;
1828 void _internal_set_savings_arc_coefficient(
double value);
1837 double _internal_cheapest_insertion_first_solution_neighbors_ratio()
const;
1838 void _internal_set_cheapest_insertion_first_solution_neighbors_ratio(
double value);
1847 double _internal_log_cost_scaling_factor()
const;
1848 void _internal_set_log_cost_scaling_factor(
double value);
1857 double _internal_savings_max_memory_usage_bytes()
const;
1858 void _internal_set_savings_max_memory_usage_bytes(
double value);
1867 ::int32_t _internal_relocate_expensive_chain_num_arcs_to_consider()
const;
1868 void _internal_set_relocate_expensive_chain_num_arcs_to_consider(::int32_t value);
1887 double _internal_log_cost_offset()
const;
1888 void _internal_set_log_cost_offset(
double value);
1907 bool _internal_savings_add_reverse_arcs()
const;
1908 void _internal_set_savings_add_reverse_arcs(
bool value);
1917 bool _internal_christofides_use_minimum_matching()
const;
1918 void _internal_set_christofides_use_minimum_matching(
bool value);
1927 bool _internal_cheapest_insertion_add_unperformed_entries()
const;
1928 void _internal_set_cheapest_insertion_add_unperformed_entries(
bool value);
1937 bool _internal_use_multi_armed_bandit_concatenate_operators()
const;
1938 void _internal_set_use_multi_armed_bandit_concatenate_operators(
bool value);
1947 double _internal_cheapest_insertion_ls_operator_neighbors_ratio()
const;
1948 void _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(
double value);
1957 ::int32_t _internal_heuristic_expensive_chain_lns_num_arcs_to_consider()
const;
1958 void _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(::int32_t value);
1987 ::int32_t _internal_heuristic_close_nodes_lns_num_nodes()
const;
1988 void _internal_set_heuristic_close_nodes_lns_num_nodes(::int32_t value);
1997 double _internal_multi_armed_bandit_compound_operator_memory_coefficient()
const;
1998 void _internal_set_multi_armed_bandit_compound_operator_memory_coefficient(
double value);
2007 double _internal_multi_armed_bandit_compound_operator_exploration_coefficient()
const;
2008 void _internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(
double value);
2017 ::int32_t _internal_cheapest_insertion_first_solution_min_neighbors()
const;
2018 void _internal_set_cheapest_insertion_first_solution_min_neighbors(::int32_t value);
2027 ::int32_t _internal_cheapest_insertion_ls_operator_min_neighbors()
const;
2028 void _internal_set_cheapest_insertion_ls_operator_min_neighbors(::int32_t value);
2057 bool _internal_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization()
const;
2058 void _internal_set_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization(
bool value);
2068 bool _internal_disable_scheduling_beware_this_may_degrade_performance()
const;
2069 void _internal_set_disable_scheduling_beware_this_may_degrade_performance(
bool value);
2078 bool _internal_guided_local_search_reset_penalties_on_new_best_solution()
const;
2079 void _internal_set_guided_local_search_reset_penalties_on_new_best_solution(
bool value);
2088 bool _internal_report_intermediate_cp_sat_solutions()
const;
2089 void _internal_set_report_intermediate_cp_sat_solutions(
bool value);
2098 ::int32_t _internal_fallback_to_cp_sat_size_threshold()
const;
2099 void _internal_set_fallback_to_cp_sat_size_threshold(::int32_t value);
2108 double _internal_ls_operator_neighbors_ratio()
const;
2109 void _internal_set_ls_operator_neighbors_ratio(
double value);
2118 ::int32_t _internal_ls_operator_min_neighbors()
const;
2119 void _internal_set_ls_operator_min_neighbors(::int32_t value);
2138 double _internal_secondary_ls_time_limit_ratio()
const;
2139 void _internal_set_secondary_ls_time_limit_ratio(
double value);
2148 ::int32_t _internal_first_solution_optimization_period()
const;
2149 void _internal_set_first_solution_optimization_period(::int32_t value);
2158 bool _internal_use_iterated_local_search()
const;
2159 void _internal_set_use_iterated_local_search(
bool value);
2168 bool _internal_guided_local_search_penalize_with_vehicle_classes()
const;
2169 void _internal_set_guided_local_search_penalize_with_vehicle_classes(
bool value);
2178 bool _internal_use_guided_local_search_penalties_in_local_search_operators()
const;
2179 void _internal_set_use_guided_local_search_penalties_in_local_search_operators(
bool value);
2188 ::int32_t _internal_num_max_local_optima_before_metaheuristic_switch()
const;
2189 void _internal_set_num_max_local_optima_before_metaheuristic_switch(::int32_t value);
2198 ::int32_t _internal_max_swap_active_chain_size()
const;
2199 void _internal_set_max_swap_active_chain_size(::int32_t value);
2205 friend class ::google::protobuf::internal::TcParser;
2206 static const ::google::protobuf::internal::TcParseTable<5, 59,
2211 friend class ::google::protobuf::MessageLite;
2212 friend class ::google::protobuf::Arena;
2213 template <
typename T>
2214 friend class ::google::protobuf::Arena::InternalHelper;
2215 using InternalArenaConstructable_ = void;
2216 using DestructorSkippable_ = void;
2218 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized)
noexcept;
2219 inline explicit Impl_(
2220 ::google::protobuf::internal::InternalVisibility visibility,
2221 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
2222 inline explicit Impl_(
2223 ::google::protobuf::internal::InternalVisibility visibility,
2224 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
2226 ::google::protobuf::internal::HasBits<2> _has_bits_;
2227 ::google::protobuf::internal::CachedSize _cached_size_;
2228 ::google::protobuf::RepeatedField<int> local_search_metaheuristics_;
2229 ::google::protobuf::internal::CachedSize _local_search_metaheuristics_cached_byte_size_;
2230 ::google::protobuf::RepeatedField<int> local_cheapest_insertion_sorting_properties_;
2231 ::google::protobuf::internal::CachedSize _local_cheapest_insertion_sorting_properties_cached_byte_size_;
2232 ::google::protobuf::internal::ArenaStringPtr log_tag_;
2234 ::google::protobuf::Duration* PROTOBUF_NULLABLE time_limit_;
2235 ::google::protobuf::Duration* PROTOBUF_NULLABLE lns_time_limit_;
2239 int first_solution_strategy_;
2240 int local_search_metaheuristic_;
2241 double guided_local_search_lambda_coefficient_;
2242 double optimization_step_;
2243 ::int64_t solution_limit_;
2244 bool use_unfiltered_first_solution_strategy_;
2245 bool use_depth_first_search_;
2246 bool use_full_propagation_;
2248 ::int32_t number_of_solutions_to_collect_;
2249 double savings_neighbors_ratio_;
2250 double cheapest_insertion_farthest_seeds_ratio_;
2251 double savings_arc_coefficient_;
2252 double cheapest_insertion_first_solution_neighbors_ratio_;
2253 double log_cost_scaling_factor_;
2254 double savings_max_memory_usage_bytes_;
2255 ::int32_t relocate_expensive_chain_num_arcs_to_consider_;
2257 double log_cost_offset_;
2259 bool savings_add_reverse_arcs_;
2260 bool christofides_use_minimum_matching_;
2261 bool cheapest_insertion_add_unperformed_entries_;
2262 bool use_multi_armed_bandit_concatenate_operators_;
2263 double cheapest_insertion_ls_operator_neighbors_ratio_;
2264 ::int32_t heuristic_expensive_chain_lns_num_arcs_to_consider_;
2265 int continuous_scheduling_solver_;
2266 int mixed_integer_scheduling_solver_;
2267 ::int32_t heuristic_close_nodes_lns_num_nodes_;
2268 double multi_armed_bandit_compound_operator_memory_coefficient_;
2269 double multi_armed_bandit_compound_operator_exploration_coefficient_;
2270 ::int32_t cheapest_insertion_first_solution_min_neighbors_;
2271 ::int32_t cheapest_insertion_ls_operator_min_neighbors_;
2272 int use_generalized_cp_sat_;
2273 int local_cheapest_insertion_pickup_delivery_strategy_;
2274 bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization_;
2275 bool disable_scheduling_beware_this_may_degrade_performance_;
2276 bool guided_local_search_reset_penalties_on_new_best_solution_;
2277 bool report_intermediate_cp_sat_solutions_;
2278 ::int32_t fallback_to_cp_sat_size_threshold_;
2279 double ls_operator_neighbors_ratio_;
2280 ::int32_t ls_operator_min_neighbors_;
2281 int local_cheapest_cost_insertion_pickup_delivery_strategy_;
2282 double secondary_ls_time_limit_ratio_;
2283 ::int32_t first_solution_optimization_period_;
2284 bool use_iterated_local_search_;
2285 bool guided_local_search_penalize_with_vehicle_classes_;
2286 bool use_guided_local_search_penalties_in_local_search_operators_;
2287 ::int32_t num_max_local_optima_before_metaheuristic_switch_;
2288 ::int32_t max_swap_active_chain_size_;
2289 PROTOBUF_TSAN_DECLARE_MEMBER
2291 union { Impl_ _impl_; };
2292 friend struct ::TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto;
2306#pragma GCC diagnostic push
2307#pragma GCC diagnostic ignored "-Wstrict-aliasing"
2315 ::google::protobuf::internal::TSanWrite(&
_impl_);
2316 _impl_.use_relocate_ = 0;
2317 _impl_._has_bits_[0] &= ~0x00000001u;
2321 return _internal_use_relocate();
2324 _internal_set_use_relocate(value);
2325 _impl_._has_bits_[0] |= 0x00000001u;
2328inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate()
const {
2329 ::google::protobuf::internal::TSanRead(&
_impl_);
2333 ::google::protobuf::internal::TSanWrite(&
_impl_);
2334 _impl_.use_relocate_ = value;
2339 ::google::protobuf::internal::TSanWrite(&
_impl_);
2340 _impl_.use_relocate_pair_ = 0;
2341 _impl_._has_bits_[0] &= ~0x00000002u;
2345 return _internal_use_relocate_pair();
2348 _internal_set_use_relocate_pair(value);
2349 _impl_._has_bits_[0] |= 0x00000002u;
2352inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_pair()
const {
2353 ::google::protobuf::internal::TSanRead(&
_impl_);
2357 ::google::protobuf::internal::TSanWrite(&
_impl_);
2358 _impl_.use_relocate_pair_ = value;
2363 ::google::protobuf::internal::TSanWrite(&
_impl_);
2364 _impl_.use_light_relocate_pair_ = 0;
2365 _impl_._has_bits_[0] &= ~0x00800000u;
2369 return _internal_use_light_relocate_pair();
2372 _internal_set_use_light_relocate_pair(value);
2373 _impl_._has_bits_[0] |= 0x00800000u;
2376inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_light_relocate_pair()
const {
2377 ::google::protobuf::internal::TSanRead(&
_impl_);
2381 ::google::protobuf::internal::TSanWrite(&
_impl_);
2382 _impl_.use_light_relocate_pair_ = value;
2387 ::google::protobuf::internal::TSanWrite(&
_impl_);
2388 _impl_.use_relocate_neighbors_ = 0;
2389 _impl_._has_bits_[0] &= ~0x00000004u;
2393 return _internal_use_relocate_neighbors();
2396 _internal_set_use_relocate_neighbors(value);
2397 _impl_._has_bits_[0] |= 0x00000004u;
2400inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_neighbors()
const {
2401 ::google::protobuf::internal::TSanRead(&
_impl_);
2405 ::google::protobuf::internal::TSanWrite(&
_impl_);
2406 _impl_.use_relocate_neighbors_ = value;
2411 ::google::protobuf::internal::TSanWrite(&
_impl_);
2412 _impl_.use_relocate_subtrip_ = 0;
2413 _impl_._has_bits_[0] &= ~0x01000000u;
2417 return _internal_use_relocate_subtrip();
2420 _internal_set_use_relocate_subtrip(value);
2421 _impl_._has_bits_[0] |= 0x01000000u;
2424inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_subtrip()
const {
2425 ::google::protobuf::internal::TSanRead(&
_impl_);
2429 ::google::protobuf::internal::TSanWrite(&
_impl_);
2430 _impl_.use_relocate_subtrip_ = value;
2435 ::google::protobuf::internal::TSanWrite(&
_impl_);
2436 _impl_.use_exchange_ = 0;
2437 _impl_._has_bits_[0] &= ~0x00000008u;
2441 return _internal_use_exchange();
2444 _internal_set_use_exchange(value);
2445 _impl_._has_bits_[0] |= 0x00000008u;
2448inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange()
const {
2449 ::google::protobuf::internal::TSanRead(&
_impl_);
2453 ::google::protobuf::internal::TSanWrite(&
_impl_);
2454 _impl_.use_exchange_ = value;
2459 ::google::protobuf::internal::TSanWrite(&
_impl_);
2460 _impl_.use_exchange_pair_ = 0;
2461 _impl_._has_bits_[0] &= ~0x00200000u;
2465 return _internal_use_exchange_pair();
2468 _internal_set_use_exchange_pair(value);
2469 _impl_._has_bits_[0] |= 0x00200000u;
2472inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_pair()
const {
2473 ::google::protobuf::internal::TSanRead(&
_impl_);
2477 ::google::protobuf::internal::TSanWrite(&
_impl_);
2478 _impl_.use_exchange_pair_ = value;
2483 ::google::protobuf::internal::TSanWrite(&
_impl_);
2484 _impl_.use_exchange_subtrip_ = 0;
2485 _impl_._has_bits_[0] &= ~0x02000000u;
2489 return _internal_use_exchange_subtrip();
2492 _internal_set_use_exchange_subtrip(value);
2493 _impl_._has_bits_[0] |= 0x02000000u;
2496inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_subtrip()
const {
2497 ::google::protobuf::internal::TSanRead(&
_impl_);
2501 ::google::protobuf::internal::TSanWrite(&
_impl_);
2502 _impl_.use_exchange_subtrip_ = value;
2507 ::google::protobuf::internal::TSanWrite(&
_impl_);
2509 _impl_._has_bits_[0] &= ~0x00000010u;
2513 return _internal_use_cross();
2516 _internal_set_use_cross(value);
2517 _impl_._has_bits_[0] |= 0x00000010u;
2520inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_cross()
const {
2521 ::google::protobuf::internal::TSanRead(&
_impl_);
2525 ::google::protobuf::internal::TSanWrite(&
_impl_);
2526 _impl_.use_cross_ = value;
2531 ::google::protobuf::internal::TSanWrite(&
_impl_);
2532 _impl_.use_cross_exchange_ = 0;
2533 _impl_._has_bits_[0] &= ~0x00000020u;
2537 return _internal_use_cross_exchange();
2540 _internal_set_use_cross_exchange(value);
2541 _impl_._has_bits_[0] |= 0x00000020u;
2544inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_cross_exchange()
const {
2545 ::google::protobuf::internal::TSanRead(&
_impl_);
2549 ::google::protobuf::internal::TSanWrite(&
_impl_);
2550 _impl_.use_cross_exchange_ = value;
2555 ::google::protobuf::internal::TSanWrite(&
_impl_);
2556 _impl_.use_relocate_expensive_chain_ = 0;
2557 _impl_._has_bits_[0] &= ~0x00400000u;
2561 return _internal_use_relocate_expensive_chain();
2564 _internal_set_use_relocate_expensive_chain(value);
2565 _impl_._has_bits_[0] |= 0x00400000u;
2568inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_expensive_chain()
const {
2569 ::google::protobuf::internal::TSanRead(&
_impl_);
2573 ::google::protobuf::internal::TSanWrite(&
_impl_);
2574 _impl_.use_relocate_expensive_chain_ = value;
2579 ::google::protobuf::internal::TSanWrite(&
_impl_);
2581 _impl_._has_bits_[0] &= ~0x00000040u;
2585 return _internal_use_two_opt();
2588 _internal_set_use_two_opt(value);
2589 _impl_._has_bits_[0] |= 0x00000040u;
2592inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_two_opt()
const {
2593 ::google::protobuf::internal::TSanRead(&
_impl_);
2597 ::google::protobuf::internal::TSanWrite(&
_impl_);
2598 _impl_.use_two_opt_ = value;
2603 ::google::protobuf::internal::TSanWrite(&
_impl_);
2605 _impl_._has_bits_[0] &= ~0x00000080u;
2609 return _internal_use_or_opt();
2612 _internal_set_use_or_opt(value);
2613 _impl_._has_bits_[0] |= 0x00000080u;
2616inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_or_opt()
const {
2617 ::google::protobuf::internal::TSanRead(&
_impl_);
2621 ::google::protobuf::internal::TSanWrite(&
_impl_);
2622 _impl_.use_or_opt_ = value;
2627 ::google::protobuf::internal::TSanWrite(&
_impl_);
2628 _impl_.use_lin_kernighan_ = 0;
2629 _impl_._has_bits_[0] &= ~0x00000100u;
2633 return _internal_use_lin_kernighan();
2636 _internal_set_use_lin_kernighan(value);
2637 _impl_._has_bits_[0] |= 0x00000100u;
2640inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_lin_kernighan()
const {
2641 ::google::protobuf::internal::TSanRead(&
_impl_);
2645 ::google::protobuf::internal::TSanWrite(&
_impl_);
2646 _impl_.use_lin_kernighan_ = value;
2651 ::google::protobuf::internal::TSanWrite(&
_impl_);
2653 _impl_._has_bits_[0] &= ~0x00000200u;
2657 return _internal_use_tsp_opt();
2660 _internal_set_use_tsp_opt(value);
2661 _impl_._has_bits_[0] |= 0x00000200u;
2664inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_tsp_opt()
const {
2665 ::google::protobuf::internal::TSanRead(&
_impl_);
2669 ::google::protobuf::internal::TSanWrite(&
_impl_);
2670 _impl_.use_tsp_opt_ = value;
2675 ::google::protobuf::internal::TSanWrite(&
_impl_);
2676 _impl_.use_make_active_ = 0;
2677 _impl_._has_bits_[0] &= ~0x00000400u;
2681 return _internal_use_make_active();
2684 _internal_set_use_make_active(value);
2685 _impl_._has_bits_[0] |= 0x00000400u;
2688inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_active()
const {
2689 ::google::protobuf::internal::TSanRead(&
_impl_);
2693 ::google::protobuf::internal::TSanWrite(&
_impl_);
2694 _impl_.use_make_active_ = value;
2699 ::google::protobuf::internal::TSanWrite(&
_impl_);
2700 _impl_.use_relocate_and_make_active_ = 0;
2701 _impl_._has_bits_[0] &= ~0x00100000u;
2705 return _internal_use_relocate_and_make_active();
2708 _internal_set_use_relocate_and_make_active(value);
2709 _impl_._has_bits_[0] |= 0x00100000u;
2712inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_and_make_active()
const {
2713 ::google::protobuf::internal::TSanRead(&
_impl_);
2717 ::google::protobuf::internal::TSanWrite(&
_impl_);
2718 _impl_.use_relocate_and_make_active_ = value;
2723 ::google::protobuf::internal::TSanWrite(&
_impl_);
2724 _impl_.use_exchange_and_make_active_ = 0;
2725 _impl_._has_bits_[1] &= ~0x00000010u;
2729 return _internal_use_exchange_and_make_active();
2732 _internal_set_use_exchange_and_make_active(value);
2733 _impl_._has_bits_[1] |= 0x00000010u;
2736inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_and_make_active()
const {
2737 ::google::protobuf::internal::TSanRead(&
_impl_);
2741 ::google::protobuf::internal::TSanWrite(&
_impl_);
2742 _impl_.use_exchange_and_make_active_ = value;
2747 ::google::protobuf::internal::TSanWrite(&
_impl_);
2748 _impl_.use_exchange_path_start_ends_and_make_active_ = 0;
2749 _impl_._has_bits_[1] &= ~0x00000020u;
2753 return _internal_use_exchange_path_start_ends_and_make_active();
2756 _internal_set_use_exchange_path_start_ends_and_make_active(value);
2757 _impl_._has_bits_[1] |= 0x00000020u;
2760inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_exchange_path_start_ends_and_make_active()
const {
2761 ::google::protobuf::internal::TSanRead(&
_impl_);
2765 ::google::protobuf::internal::TSanWrite(&
_impl_);
2766 _impl_.use_exchange_path_start_ends_and_make_active_ = value;
2771 ::google::protobuf::internal::TSanWrite(&
_impl_);
2772 _impl_.use_make_inactive_ = 0;
2773 _impl_._has_bits_[0] &= ~0x00000800u;
2777 return _internal_use_make_inactive();
2780 _internal_set_use_make_inactive(value);
2781 _impl_._has_bits_[0] |= 0x00000800u;
2784inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_inactive()
const {
2785 ::google::protobuf::internal::TSanRead(&
_impl_);
2789 ::google::protobuf::internal::TSanWrite(&
_impl_);
2790 _impl_.use_make_inactive_ = value;
2795 ::google::protobuf::internal::TSanWrite(&
_impl_);
2796 _impl_.use_make_chain_inactive_ = 0;
2797 _impl_._has_bits_[0] &= ~0x00001000u;
2801 return _internal_use_make_chain_inactive();
2804 _internal_set_use_make_chain_inactive(value);
2805 _impl_._has_bits_[0] |= 0x00001000u;
2808inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_make_chain_inactive()
const {
2809 ::google::protobuf::internal::TSanRead(&
_impl_);
2813 ::google::protobuf::internal::TSanWrite(&
_impl_);
2814 _impl_.use_make_chain_inactive_ = value;
2819 ::google::protobuf::internal::TSanWrite(&
_impl_);
2820 _impl_.use_swap_active_ = 0;
2821 _impl_._has_bits_[0] &= ~0x00002000u;
2825 return _internal_use_swap_active();
2828 _internal_set_use_swap_active(value);
2829 _impl_._has_bits_[0] |= 0x00002000u;
2832inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_swap_active()
const {
2833 ::google::protobuf::internal::TSanRead(&
_impl_);
2837 ::google::protobuf::internal::TSanWrite(&
_impl_);
2838 _impl_.use_swap_active_ = value;
2843 ::google::protobuf::internal::TSanWrite(&
_impl_);
2844 _impl_.use_swap_active_chain_ = 0;
2845 _impl_._has_bits_[1] &= ~0x00000004u;
2849 return _internal_use_swap_active_chain();
2852 _internal_set_use_swap_active_chain(value);
2853 _impl_._has_bits_[1] |= 0x00000004u;
2856inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_swap_active_chain()
const {
2857 ::google::protobuf::internal::TSanRead(&
_impl_);
2861 ::google::protobuf::internal::TSanWrite(&
_impl_);
2862 _impl_.use_swap_active_chain_ = value;
2867 ::google::protobuf::internal::TSanWrite(&
_impl_);
2868 _impl_.use_extended_swap_active_ = 0;
2869 _impl_._has_bits_[0] &= ~0x00004000u;
2873 return _internal_use_extended_swap_active();
2876 _internal_set_use_extended_swap_active(value);
2877 _impl_._has_bits_[0] |= 0x00004000u;
2880inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_extended_swap_active()
const {
2881 ::google::protobuf::internal::TSanRead(&
_impl_);
2885 ::google::protobuf::internal::TSanWrite(&
_impl_);
2886 _impl_.use_extended_swap_active_ = value;
2891 ::google::protobuf::internal::TSanWrite(&
_impl_);
2892 _impl_.use_shortest_path_swap_active_ = 0;
2893 _impl_._has_bits_[1] &= ~0x00000002u;
2897 return _internal_use_shortest_path_swap_active();
2900 _internal_set_use_shortest_path_swap_active(value);
2901 _impl_._has_bits_[1] |= 0x00000002u;
2904inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_shortest_path_swap_active()
const {
2905 ::google::protobuf::internal::TSanRead(&
_impl_);
2909 ::google::protobuf::internal::TSanWrite(&
_impl_);
2910 _impl_.use_shortest_path_swap_active_ = value;
2915 ::google::protobuf::internal::TSanWrite(&
_impl_);
2916 _impl_.use_shortest_path_two_opt_ = 0;
2917 _impl_._has_bits_[1] &= ~0x00000008u;
2921 return _internal_use_shortest_path_two_opt();
2924 _internal_set_use_shortest_path_two_opt(value);
2925 _impl_._has_bits_[1] |= 0x00000008u;
2928inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_shortest_path_two_opt()
const {
2929 ::google::protobuf::internal::TSanRead(&
_impl_);
2933 ::google::protobuf::internal::TSanWrite(&
_impl_);
2934 _impl_.use_shortest_path_two_opt_ = value;
2939 ::google::protobuf::internal::TSanWrite(&
_impl_);
2940 _impl_.use_node_pair_swap_active_ = 0;
2941 _impl_._has_bits_[0] &= ~0x00080000u;
2945 return _internal_use_node_pair_swap_active();
2948 _internal_set_use_node_pair_swap_active(value);
2949 _impl_._has_bits_[0] |= 0x00080000u;
2952inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_node_pair_swap_active()
const {
2953 ::google::protobuf::internal::TSanRead(&
_impl_);
2957 ::google::protobuf::internal::TSanWrite(&
_impl_);
2958 _impl_.use_node_pair_swap_active_ = value;
2963 ::google::protobuf::internal::TSanWrite(&
_impl_);
2964 _impl_.use_path_lns_ = 0;
2965 _impl_._has_bits_[0] &= ~0x00008000u;
2969 return _internal_use_path_lns();
2972 _internal_set_use_path_lns(value);
2973 _impl_._has_bits_[0] |= 0x00008000u;
2976inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_path_lns()
const {
2977 ::google::protobuf::internal::TSanRead(&
_impl_);
2981 ::google::protobuf::internal::TSanWrite(&
_impl_);
2982 _impl_.use_path_lns_ = value;
2987 ::google::protobuf::internal::TSanWrite(&
_impl_);
2988 _impl_.use_full_path_lns_ = 0;
2989 _impl_._has_bits_[0] &= ~0x00010000u;
2993 return _internal_use_full_path_lns();
2996 _internal_set_use_full_path_lns(value);
2997 _impl_._has_bits_[0] |= 0x00010000u;
3000inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_full_path_lns()
const {
3001 ::google::protobuf::internal::TSanRead(&
_impl_);
3005 ::google::protobuf::internal::TSanWrite(&
_impl_);
3006 _impl_.use_full_path_lns_ = value;
3011 ::google::protobuf::internal::TSanWrite(&
_impl_);
3013 _impl_._has_bits_[0] &= ~0x00020000u;
3017 return _internal_use_tsp_lns();
3020 _internal_set_use_tsp_lns(value);
3021 _impl_._has_bits_[0] |= 0x00020000u;
3024inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_tsp_lns()
const {
3025 ::google::protobuf::internal::TSanRead(&
_impl_);
3029 ::google::protobuf::internal::TSanWrite(&
_impl_);
3030 _impl_.use_tsp_lns_ = value;
3035 ::google::protobuf::internal::TSanWrite(&
_impl_);
3036 _impl_.use_inactive_lns_ = 0;
3037 _impl_._has_bits_[0] &= ~0x00040000u;
3041 return _internal_use_inactive_lns();
3044 _internal_set_use_inactive_lns(value);
3045 _impl_._has_bits_[0] |= 0x00040000u;
3048inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_inactive_lns()
const {
3049 ::google::protobuf::internal::TSanRead(&
_impl_);
3053 ::google::protobuf::internal::TSanWrite(&
_impl_);
3054 _impl_.use_inactive_lns_ = value;
3059 ::google::protobuf::internal::TSanWrite(&
_impl_);
3060 _impl_.use_global_cheapest_insertion_path_lns_ = 0;
3061 _impl_._has_bits_[0] &= ~0x04000000u;
3065 return _internal_use_global_cheapest_insertion_path_lns();
3068 _internal_set_use_global_cheapest_insertion_path_lns(value);
3069 _impl_._has_bits_[0] |= 0x04000000u;
3072inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_path_lns()
const {
3073 ::google::protobuf::internal::TSanRead(&
_impl_);
3077 ::google::protobuf::internal::TSanWrite(&
_impl_);
3078 _impl_.use_global_cheapest_insertion_path_lns_ = value;
3083 ::google::protobuf::internal::TSanWrite(&
_impl_);
3084 _impl_.use_local_cheapest_insertion_path_lns_ = 0;
3085 _impl_._has_bits_[0] &= ~0x08000000u;
3089 return _internal_use_local_cheapest_insertion_path_lns();
3092 _internal_set_use_local_cheapest_insertion_path_lns(value);
3093 _impl_._has_bits_[0] |= 0x08000000u;
3096inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_path_lns()
const {
3097 ::google::protobuf::internal::TSanRead(&
_impl_);
3101 ::google::protobuf::internal::TSanWrite(&
_impl_);
3102 _impl_.use_local_cheapest_insertion_path_lns_ = value;
3107 ::google::protobuf::internal::TSanWrite(&
_impl_);
3108 _impl_.use_relocate_path_global_cheapest_insertion_insert_unperformed_ = 0;
3109 _impl_._has_bits_[1] &= ~0x00000001u;
3113 return _internal_use_relocate_path_global_cheapest_insertion_insert_unperformed();
3116 _internal_set_use_relocate_path_global_cheapest_insertion_insert_unperformed(value);
3117 _impl_._has_bits_[1] |= 0x00000001u;
3120inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_relocate_path_global_cheapest_insertion_insert_unperformed()
const {
3121 ::google::protobuf::internal::TSanRead(&
_impl_);
3124inline void RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_set_use_relocate_path_global_cheapest_insertion_insert_unperformed(
::operations_research::OptionalBoolean value) {
3125 ::google::protobuf::internal::TSanWrite(&
_impl_);
3126 _impl_.use_relocate_path_global_cheapest_insertion_insert_unperformed_ = value;
3131 ::google::protobuf::internal::TSanWrite(&
_impl_);
3132 _impl_.use_global_cheapest_insertion_expensive_chain_lns_ = 0;
3133 _impl_._has_bits_[0] &= ~0x10000000u;
3137 return _internal_use_global_cheapest_insertion_expensive_chain_lns();
3140 _internal_set_use_global_cheapest_insertion_expensive_chain_lns(value);
3141 _impl_._has_bits_[0] |= 0x10000000u;
3144inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_expensive_chain_lns()
const {
3145 ::google::protobuf::internal::TSanRead(&
_impl_);
3149 ::google::protobuf::internal::TSanWrite(&
_impl_);
3150 _impl_.use_global_cheapest_insertion_expensive_chain_lns_ = value;
3155 ::google::protobuf::internal::TSanWrite(&
_impl_);
3156 _impl_.use_local_cheapest_insertion_expensive_chain_lns_ = 0;
3157 _impl_._has_bits_[0] &= ~0x20000000u;
3161 return _internal_use_local_cheapest_insertion_expensive_chain_lns();
3164 _internal_set_use_local_cheapest_insertion_expensive_chain_lns(value);
3165 _impl_._has_bits_[0] |= 0x20000000u;
3168inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_expensive_chain_lns()
const {
3169 ::google::protobuf::internal::TSanRead(&
_impl_);
3173 ::google::protobuf::internal::TSanWrite(&
_impl_);
3174 _impl_.use_local_cheapest_insertion_expensive_chain_lns_ = value;
3179 ::google::protobuf::internal::TSanWrite(&
_impl_);
3180 _impl_.use_global_cheapest_insertion_close_nodes_lns_ = 0;
3181 _impl_._has_bits_[0] &= ~0x40000000u;
3185 return _internal_use_global_cheapest_insertion_close_nodes_lns();
3188 _internal_set_use_global_cheapest_insertion_close_nodes_lns(value);
3189 _impl_._has_bits_[0] |= 0x40000000u;
3192inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_global_cheapest_insertion_close_nodes_lns()
const {
3193 ::google::protobuf::internal::TSanRead(&
_impl_);
3197 ::google::protobuf::internal::TSanWrite(&
_impl_);
3198 _impl_.use_global_cheapest_insertion_close_nodes_lns_ = value;
3203 ::google::protobuf::internal::TSanWrite(&
_impl_);
3204 _impl_.use_local_cheapest_insertion_close_nodes_lns_ = 0;
3205 _impl_._has_bits_[0] &= ~0x80000000u;
3209 return _internal_use_local_cheapest_insertion_close_nodes_lns();
3212 _internal_set_use_local_cheapest_insertion_close_nodes_lns(value);
3213 _impl_._has_bits_[0] |= 0x80000000u;
3216inline ::operations_research::OptionalBoolean RoutingSearchParameters_LocalSearchNeighborhoodOperators::_internal_use_local_cheapest_insertion_close_nodes_lns()
const {
3217 ::google::protobuf::internal::TSanRead(&
_impl_);
3221 ::google::protobuf::internal::TSanWrite(&
_impl_);
3222 _impl_.use_local_cheapest_insertion_close_nodes_lns_ = value;
3231 ::google::protobuf::internal::TSanWrite(&
_impl_);
3232 _impl_.improvement_rate_coefficient_ = 0;
3233 _impl_._has_bits_[0] &= ~0x00000001u;
3237 return _internal_improvement_rate_coefficient();
3240 _internal_set_improvement_rate_coefficient(value);
3241 _impl_._has_bits_[0] |= 0x00000001u;
3244inline double RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_improvement_rate_coefficient()
const {
3245 ::google::protobuf::internal::TSanRead(&
_impl_);
3246 return _impl_.improvement_rate_coefficient_;
3248inline void RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_set_improvement_rate_coefficient(
double value) {
3249 ::google::protobuf::internal::TSanWrite(&
_impl_);
3250 _impl_.improvement_rate_coefficient_ = value;
3255 ::google::protobuf::internal::TSanWrite(&
_impl_);
3256 _impl_.improvement_rate_solutions_distance_ = 0;
3257 _impl_._has_bits_[0] &= ~0x00000002u;
3261 return _internal_improvement_rate_solutions_distance();
3264 _internal_set_improvement_rate_solutions_distance(value);
3265 _impl_._has_bits_[0] |= 0x00000002u;
3268inline ::int32_t RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_improvement_rate_solutions_distance()
const {
3269 ::google::protobuf::internal::TSanRead(&
_impl_);
3270 return _impl_.improvement_rate_solutions_distance_;
3272inline void RoutingSearchParameters_ImprovementSearchLimitParameters::_internal_set_improvement_rate_solutions_distance(::int32_t value) {
3273 ::google::protobuf::internal::TSanWrite(&
_impl_);
3274 _impl_.improvement_rate_solutions_distance_ = value;
3283 ::google::protobuf::internal::TSanWrite(&
_impl_);
3284 _impl_.first_solution_strategy_ = 0;
3285 _impl_._has_bits_[0] &= ~0x00000080u;
3289 return _internal_first_solution_strategy();
3292 _internal_set_first_solution_strategy(value);
3293 _impl_._has_bits_[0] |= 0x00000080u;
3296inline ::operations_research::FirstSolutionStrategy_Value RoutingSearchParameters::_internal_first_solution_strategy()
const {
3297 ::google::protobuf::internal::TSanRead(&
_impl_);
3301 ::google::protobuf::internal::TSanWrite(&
_impl_);
3302 _impl_.first_solution_strategy_ = value;
3307 ::google::protobuf::internal::TSanWrite(&
_impl_);
3308 _impl_.use_unfiltered_first_solution_strategy_ =
false;
3309 _impl_._has_bits_[0] &= ~0x00001000u;
3313 return _internal_use_unfiltered_first_solution_strategy();
3316 _internal_set_use_unfiltered_first_solution_strategy(value);
3317 _impl_._has_bits_[0] |= 0x00001000u;
3320inline bool RoutingSearchParameters::_internal_use_unfiltered_first_solution_strategy()
const {
3321 ::google::protobuf::internal::TSanRead(&
_impl_);
3322 return _impl_.use_unfiltered_first_solution_strategy_;
3324inline void RoutingSearchParameters::_internal_set_use_unfiltered_first_solution_strategy(
bool value) {
3325 ::google::protobuf::internal::TSanWrite(&
_impl_);
3326 _impl_.use_unfiltered_first_solution_strategy_ = value;
3331 ::google::protobuf::internal::TSanWrite(&
_impl_);
3332 _impl_.savings_neighbors_ratio_ = 0;
3333 _impl_._has_bits_[0] &= ~0x00020000u;
3337 return _internal_savings_neighbors_ratio();
3340 _internal_set_savings_neighbors_ratio(value);
3341 _impl_._has_bits_[0] |= 0x00020000u;
3344inline double RoutingSearchParameters::_internal_savings_neighbors_ratio()
const {
3345 ::google::protobuf::internal::TSanRead(&
_impl_);
3346 return _impl_.savings_neighbors_ratio_;
3348inline void RoutingSearchParameters::_internal_set_savings_neighbors_ratio(
double value) {
3349 ::google::protobuf::internal::TSanWrite(&
_impl_);
3350 _impl_.savings_neighbors_ratio_ = value;
3355 ::google::protobuf::internal::TSanWrite(&
_impl_);
3356 _impl_.savings_max_memory_usage_bytes_ = 0;
3357 _impl_._has_bits_[0] &= ~0x00400000u;
3361 return _internal_savings_max_memory_usage_bytes();
3364 _internal_set_savings_max_memory_usage_bytes(value);
3365 _impl_._has_bits_[0] |= 0x00400000u;
3368inline double RoutingSearchParameters::_internal_savings_max_memory_usage_bytes()
const {
3369 ::google::protobuf::internal::TSanRead(&
_impl_);
3370 return _impl_.savings_max_memory_usage_bytes_;
3372inline void RoutingSearchParameters::_internal_set_savings_max_memory_usage_bytes(
double value) {
3373 ::google::protobuf::internal::TSanWrite(&
_impl_);
3374 _impl_.savings_max_memory_usage_bytes_ = value;
3379 ::google::protobuf::internal::TSanWrite(&
_impl_);
3380 _impl_.savings_add_reverse_arcs_ =
false;
3381 _impl_._has_bits_[0] &= ~0x08000000u;
3385 return _internal_savings_add_reverse_arcs();
3388 _internal_set_savings_add_reverse_arcs(value);
3389 _impl_._has_bits_[0] |= 0x08000000u;
3392inline bool RoutingSearchParameters::_internal_savings_add_reverse_arcs()
const {
3393 ::google::protobuf::internal::TSanRead(&
_impl_);
3394 return _impl_.savings_add_reverse_arcs_;
3396inline void RoutingSearchParameters::_internal_set_savings_add_reverse_arcs(
bool value) {
3397 ::google::protobuf::internal::TSanWrite(&
_impl_);
3398 _impl_.savings_add_reverse_arcs_ = value;
3403 ::google::protobuf::internal::TSanWrite(&
_impl_);
3404 _impl_.savings_arc_coefficient_ = 0;
3405 _impl_._has_bits_[0] &= ~0x00080000u;
3409 return _internal_savings_arc_coefficient();
3412 _internal_set_savings_arc_coefficient(value);
3413 _impl_._has_bits_[0] |= 0x00080000u;
3416inline double RoutingSearchParameters::_internal_savings_arc_coefficient()
const {
3417 ::google::protobuf::internal::TSanRead(&
_impl_);
3418 return _impl_.savings_arc_coefficient_;
3420inline void RoutingSearchParameters::_internal_set_savings_arc_coefficient(
double value) {
3421 ::google::protobuf::internal::TSanWrite(&
_impl_);
3422 _impl_.savings_arc_coefficient_ = value;
3427 ::google::protobuf::internal::TSanWrite(&
_impl_);
3428 _impl_.cheapest_insertion_farthest_seeds_ratio_ = 0;
3429 _impl_._has_bits_[0] &= ~0x00040000u;
3433 return _internal_cheapest_insertion_farthest_seeds_ratio();
3436 _internal_set_cheapest_insertion_farthest_seeds_ratio(value);
3437 _impl_._has_bits_[0] |= 0x00040000u;
3440inline double RoutingSearchParameters::_internal_cheapest_insertion_farthest_seeds_ratio()
const {
3441 ::google::protobuf::internal::TSanRead(&
_impl_);
3442 return _impl_.cheapest_insertion_farthest_seeds_ratio_;
3444inline void RoutingSearchParameters::_internal_set_cheapest_insertion_farthest_seeds_ratio(
double value) {
3445 ::google::protobuf::internal::TSanWrite(&
_impl_);
3446 _impl_.cheapest_insertion_farthest_seeds_ratio_ = value;
3451 ::google::protobuf::internal::TSanWrite(&
_impl_);
3452 _impl_.cheapest_insertion_first_solution_neighbors_ratio_ = 0;
3453 _impl_._has_bits_[0] &= ~0x00100000u;
3457 return _internal_cheapest_insertion_first_solution_neighbors_ratio();
3460 _internal_set_cheapest_insertion_first_solution_neighbors_ratio(value);
3461 _impl_._has_bits_[0] |= 0x00100000u;
3464inline double RoutingSearchParameters::_internal_cheapest_insertion_first_solution_neighbors_ratio()
const {
3465 ::google::protobuf::internal::TSanRead(&
_impl_);
3466 return _impl_.cheapest_insertion_first_solution_neighbors_ratio_;
3468inline void RoutingSearchParameters::_internal_set_cheapest_insertion_first_solution_neighbors_ratio(
double value) {
3469 ::google::protobuf::internal::TSanWrite(&
_impl_);
3470 _impl_.cheapest_insertion_first_solution_neighbors_ratio_ = value;
3475 ::google::protobuf::internal::TSanWrite(&
_impl_);
3476 _impl_.cheapest_insertion_first_solution_min_neighbors_ = 0;
3477 _impl_._has_bits_[1] &= ~0x00000040u;
3481 return _internal_cheapest_insertion_first_solution_min_neighbors();
3484 _internal_set_cheapest_insertion_first_solution_min_neighbors(value);
3485 _impl_._has_bits_[1] |= 0x00000040u;
3488inline ::int32_t RoutingSearchParameters::_internal_cheapest_insertion_first_solution_min_neighbors()
const {
3489 ::google::protobuf::internal::TSanRead(&
_impl_);
3490 return _impl_.cheapest_insertion_first_solution_min_neighbors_;
3492inline void RoutingSearchParameters::_internal_set_cheapest_insertion_first_solution_min_neighbors(::int32_t value) {
3493 ::google::protobuf::internal::TSanWrite(&
_impl_);
3494 _impl_.cheapest_insertion_first_solution_min_neighbors_ = value;
3499 ::google::protobuf::internal::TSanWrite(&
_impl_);
3500 _impl_.cheapest_insertion_ls_operator_neighbors_ratio_ = 0;
3501 _impl_._has_bits_[0] &= ~0x80000000u;
3505 return _internal_cheapest_insertion_ls_operator_neighbors_ratio();
3508 _internal_set_cheapest_insertion_ls_operator_neighbors_ratio(value);
3509 _impl_._has_bits_[0] |= 0x80000000u;
3512inline double RoutingSearchParameters::_internal_cheapest_insertion_ls_operator_neighbors_ratio()
const {
3513 ::google::protobuf::internal::TSanRead(&
_impl_);
3514 return _impl_.cheapest_insertion_ls_operator_neighbors_ratio_;
3516inline void RoutingSearchParameters::_internal_set_cheapest_insertion_ls_operator_neighbors_ratio(
double value) {
3517 ::google::protobuf::internal::TSanWrite(&
_impl_);
3518 _impl_.cheapest_insertion_ls_operator_neighbors_ratio_ = value;
3523 ::google::protobuf::internal::TSanWrite(&
_impl_);
3524 _impl_.cheapest_insertion_ls_operator_min_neighbors_ = 0;
3525 _impl_._has_bits_[1] &= ~0x00000080u;
3529 return _internal_cheapest_insertion_ls_operator_min_neighbors();
3532 _internal_set_cheapest_insertion_ls_operator_min_neighbors(value);
3533 _impl_._has_bits_[1] |= 0x00000080u;
3536inline ::int32_t RoutingSearchParameters::_internal_cheapest_insertion_ls_operator_min_neighbors()
const {
3537 ::google::protobuf::internal::TSanRead(&
_impl_);
3538 return _impl_.cheapest_insertion_ls_operator_min_neighbors_;
3540inline void RoutingSearchParameters::_internal_set_cheapest_insertion_ls_operator_min_neighbors(::int32_t value) {
3541 ::google::protobuf::internal::TSanWrite(&
_impl_);
3542 _impl_.cheapest_insertion_ls_operator_min_neighbors_ = value;
3547 ::google::protobuf::internal::TSanWrite(&
_impl_);
3548 _impl_.cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization_ =
false;
3549 _impl_._has_bits_[1] &= ~0x00000400u;
3553 return _internal_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization();
3556 _internal_set_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization(value);
3557 _impl_._has_bits_[1] |= 0x00000400u;
3560inline bool RoutingSearchParameters::_internal_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization()
const {
3561 ::google::protobuf::internal::TSanRead(&
_impl_);
3562 return _impl_.cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization_;
3564inline void RoutingSearchParameters::_internal_set_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization(
bool value) {
3565 ::google::protobuf::internal::TSanWrite(&
_impl_);
3566 _impl_.cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization_ = value;
3571 ::google::protobuf::internal::TSanWrite(&
_impl_);
3572 _impl_.cheapest_insertion_add_unperformed_entries_ =
false;
3573 _impl_._has_bits_[0] &= ~0x20000000u;
3577 return _internal_cheapest_insertion_add_unperformed_entries();
3580 _internal_set_cheapest_insertion_add_unperformed_entries(value);
3581 _impl_._has_bits_[0] |= 0x20000000u;
3584inline bool RoutingSearchParameters::_internal_cheapest_insertion_add_unperformed_entries()
const {
3585 ::google::protobuf::internal::TSanRead(&
_impl_);
3586 return _impl_.cheapest_insertion_add_unperformed_entries_;
3588inline void RoutingSearchParameters::_internal_set_cheapest_insertion_add_unperformed_entries(
bool value) {
3589 ::google::protobuf::internal::TSanWrite(&
_impl_);
3590 _impl_.cheapest_insertion_add_unperformed_entries_ = value;
3595 ::google::protobuf::internal::TSanWrite(&
_impl_);
3596 _impl_.local_cheapest_insertion_pickup_delivery_strategy_ = 0;
3597 _impl_._has_bits_[1] &= ~0x00000200u;
3601 return _internal_local_cheapest_insertion_pickup_delivery_strategy();
3604 _internal_set_local_cheapest_insertion_pickup_delivery_strategy(value);
3605 _impl_._has_bits_[1] |= 0x00000200u;
3608inline ::operations_research::RoutingSearchParameters_PairInsertionStrategy RoutingSearchParameters::_internal_local_cheapest_insertion_pickup_delivery_strategy()
const {
3609 ::google::protobuf::internal::TSanRead(&
_impl_);
3613 ::google::protobuf::internal::TSanWrite(&
_impl_);
3614 _impl_.local_cheapest_insertion_pickup_delivery_strategy_ = value;
3619 ::google::protobuf::internal::TSanWrite(&
_impl_);
3620 _impl_.local_cheapest_cost_insertion_pickup_delivery_strategy_ = 0;
3621 _impl_._has_bits_[1] &= ~0x00020000u;
3625 return _internal_local_cheapest_cost_insertion_pickup_delivery_strategy();
3628 _internal_set_local_cheapest_cost_insertion_pickup_delivery_strategy(value);
3629 _impl_._has_bits_[1] |= 0x00020000u;
3632inline ::operations_research::RoutingSearchParameters_PairInsertionStrategy RoutingSearchParameters::_internal_local_cheapest_cost_insertion_pickup_delivery_strategy()
const {
3633 ::google::protobuf::internal::TSanRead(&
_impl_);
3637 ::google::protobuf::internal::TSanWrite(&
_impl_);
3638 _impl_.local_cheapest_cost_insertion_pickup_delivery_strategy_ = value;
3642inline int RoutingSearchParameters::_internal_local_cheapest_insertion_sorting_properties_size()
const {
3643 return _internal_local_cheapest_insertion_sorting_properties().size();
3646 return _internal_local_cheapest_insertion_sorting_properties_size();
3649 ::google::protobuf::internal::TSanWrite(&
_impl_);
3650 _impl_.local_cheapest_insertion_sorting_properties_.Clear();
3657 _internal_mutable_local_cheapest_insertion_sorting_properties()->Set(index, value);
3661 ::google::protobuf::internal::TSanWrite(&
_impl_);
3662 _internal_mutable_local_cheapest_insertion_sorting_properties()->Add(value);
3666 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3668 return _internal_local_cheapest_insertion_sorting_properties();
3671 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3673 ::google::protobuf::internal::TSanWrite(&
_impl_);
3674 return _internal_mutable_local_cheapest_insertion_sorting_properties();
3676inline const ::google::protobuf::RepeatedField<int>& RoutingSearchParameters::_internal_local_cheapest_insertion_sorting_properties()
3678 ::google::protobuf::internal::TSanRead(&
_impl_);
3679 return _impl_.local_cheapest_insertion_sorting_properties_;
3681inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
3682RoutingSearchParameters::_internal_mutable_local_cheapest_insertion_sorting_properties() {
3683 ::google::protobuf::internal::TSanRead(&
_impl_);
3684 return &
_impl_.local_cheapest_insertion_sorting_properties_;
3689 ::google::protobuf::internal::TSanWrite(&
_impl_);
3690 _impl_.christofides_use_minimum_matching_ =
false;
3691 _impl_._has_bits_[0] &= ~0x10000000u;
3695 return _internal_christofides_use_minimum_matching();
3698 _internal_set_christofides_use_minimum_matching(value);
3699 _impl_._has_bits_[0] |= 0x10000000u;
3702inline bool RoutingSearchParameters::_internal_christofides_use_minimum_matching()
const {
3703 ::google::protobuf::internal::TSanRead(&
_impl_);
3704 return _impl_.christofides_use_minimum_matching_;
3706inline void RoutingSearchParameters::_internal_set_christofides_use_minimum_matching(
bool value) {
3707 ::google::protobuf::internal::TSanWrite(&
_impl_);
3708 _impl_.christofides_use_minimum_matching_ = value;
3713 ::google::protobuf::internal::TSanWrite(&
_impl_);
3714 _impl_.first_solution_optimization_period_ = 0;
3715 _impl_._has_bits_[1] &= ~0x00080000u;
3719 return _internal_first_solution_optimization_period();
3722 _internal_set_first_solution_optimization_period(value);
3723 _impl_._has_bits_[1] |= 0x00080000u;
3726inline ::int32_t RoutingSearchParameters::_internal_first_solution_optimization_period()
const {
3727 ::google::protobuf::internal::TSanRead(&
_impl_);
3728 return _impl_.first_solution_optimization_period_;
3730inline void RoutingSearchParameters::_internal_set_first_solution_optimization_period(::int32_t value) {
3731 ::google::protobuf::internal::TSanWrite(&
_impl_);
3732 _impl_.first_solution_optimization_period_ = value;
3737 bool value = (
_impl_._has_bits_[0] & 0x00000002u) != 0;
3738 PROTOBUF_ASSUME(!value ||
_impl_.local_search_operators_ !=
nullptr);
3742 ::google::protobuf::internal::TSanWrite(&
_impl_);
3743 if (
_impl_.local_search_operators_ !=
nullptr)
_impl_.local_search_operators_->
Clear();
3744 _impl_._has_bits_[0] &= ~0x00000002u;
3746inline const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators& RoutingSearchParameters::_internal_local_search_operators()
const {
3747 ::google::protobuf::internal::TSanRead(&
_impl_);
3748 const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* p =
_impl_.local_search_operators_;
3753 return _internal_local_search_operators();
3757 ::google::protobuf::internal::TSanWrite(&
_impl_);
3758 if (GetArena() ==
nullptr) {
3759 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.local_search_operators_);
3762 if (value !=
nullptr) {
3763 _impl_._has_bits_[0] |= 0x00000002u;
3770 ::google::protobuf::internal::TSanWrite(&
_impl_);
3772 _impl_._has_bits_[0] &= ~0x00000002u;
3774 _impl_.local_search_operators_ =
nullptr;
3775 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3776 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
3777 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3778 if (GetArena() ==
nullptr) {
3782 if (GetArena() !=
nullptr) {
3783 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3789 ::google::protobuf::internal::TSanWrite(&
_impl_);
3792 _impl_._has_bits_[0] &= ~0x00000002u;
3793 ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* temp =
_impl_.local_search_operators_;
3794 _impl_.local_search_operators_ =
nullptr;
3797inline ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_local_search_operators() {
3798 ::google::protobuf::internal::TSanWrite(&
_impl_);
3799 if (
_impl_.local_search_operators_ ==
nullptr) {
3800 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators>(GetArena());
3803 return _impl_.local_search_operators_;
3806 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3807 _impl_._has_bits_[0] |= 0x00000002u;
3814 ::google::protobuf::internal::TSanWrite(&
_impl_);
3815 if (message_arena ==
nullptr) {
3816 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.local_search_operators_);
3819 if (value !=
nullptr) {
3820 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3821 if (message_arena != submessage_arena) {
3822 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3824 _impl_._has_bits_[0] |= 0x00000002u;
3826 _impl_._has_bits_[0] &= ~0x00000002u;
3829 _impl_.local_search_operators_ =
reinterpret_cast<::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators*
>(value);
3835 ::google::protobuf::internal::TSanWrite(&
_impl_);
3836 _impl_.ls_operator_neighbors_ratio_ = 0;
3837 _impl_._has_bits_[1] &= ~0x00008000u;
3841 return _internal_ls_operator_neighbors_ratio();
3844 _internal_set_ls_operator_neighbors_ratio(value);
3845 _impl_._has_bits_[1] |= 0x00008000u;
3848inline double RoutingSearchParameters::_internal_ls_operator_neighbors_ratio()
const {
3849 ::google::protobuf::internal::TSanRead(&
_impl_);
3850 return _impl_.ls_operator_neighbors_ratio_;
3852inline void RoutingSearchParameters::_internal_set_ls_operator_neighbors_ratio(
double value) {
3853 ::google::protobuf::internal::TSanWrite(&
_impl_);
3854 _impl_.ls_operator_neighbors_ratio_ = value;
3859 ::google::protobuf::internal::TSanWrite(&
_impl_);
3860 _impl_.ls_operator_min_neighbors_ = 0;
3861 _impl_._has_bits_[1] &= ~0x00010000u;
3865 return _internal_ls_operator_min_neighbors();
3868 _internal_set_ls_operator_min_neighbors(value);
3869 _impl_._has_bits_[1] |= 0x00010000u;
3872inline ::int32_t RoutingSearchParameters::_internal_ls_operator_min_neighbors()
const {
3873 ::google::protobuf::internal::TSanRead(&
_impl_);
3874 return _impl_.ls_operator_min_neighbors_;
3876inline void RoutingSearchParameters::_internal_set_ls_operator_min_neighbors(::int32_t value) {
3877 ::google::protobuf::internal::TSanWrite(&
_impl_);
3878 _impl_.ls_operator_min_neighbors_ = value;
3883 ::google::protobuf::internal::TSanWrite(&
_impl_);
3884 _impl_.use_multi_armed_bandit_concatenate_operators_ =
false;
3885 _impl_._has_bits_[0] &= ~0x40000000u;
3889 return _internal_use_multi_armed_bandit_concatenate_operators();
3892 _internal_set_use_multi_armed_bandit_concatenate_operators(value);
3893 _impl_._has_bits_[0] |= 0x40000000u;
3896inline bool RoutingSearchParameters::_internal_use_multi_armed_bandit_concatenate_operators()
const {
3897 ::google::protobuf::internal::TSanRead(&
_impl_);
3898 return _impl_.use_multi_armed_bandit_concatenate_operators_;
3900inline void RoutingSearchParameters::_internal_set_use_multi_armed_bandit_concatenate_operators(
bool value) {
3901 ::google::protobuf::internal::TSanWrite(&
_impl_);
3902 _impl_.use_multi_armed_bandit_concatenate_operators_ = value;
3907 ::google::protobuf::internal::TSanWrite(&
_impl_);
3908 _impl_.multi_armed_bandit_compound_operator_memory_coefficient_ = 0;
3909 _impl_._has_bits_[1] &= ~0x00000010u;
3913 return _internal_multi_armed_bandit_compound_operator_memory_coefficient();
3916 _internal_set_multi_armed_bandit_compound_operator_memory_coefficient(value);
3917 _impl_._has_bits_[1] |= 0x00000010u;
3920inline double RoutingSearchParameters::_internal_multi_armed_bandit_compound_operator_memory_coefficient()
const {
3921 ::google::protobuf::internal::TSanRead(&
_impl_);
3922 return _impl_.multi_armed_bandit_compound_operator_memory_coefficient_;
3924inline void RoutingSearchParameters::_internal_set_multi_armed_bandit_compound_operator_memory_coefficient(
double value) {
3925 ::google::protobuf::internal::TSanWrite(&
_impl_);
3926 _impl_.multi_armed_bandit_compound_operator_memory_coefficient_ = value;
3931 ::google::protobuf::internal::TSanWrite(&
_impl_);
3932 _impl_.multi_armed_bandit_compound_operator_exploration_coefficient_ = 0;
3933 _impl_._has_bits_[1] &= ~0x00000020u;
3937 return _internal_multi_armed_bandit_compound_operator_exploration_coefficient();
3940 _internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(value);
3941 _impl_._has_bits_[1] |= 0x00000020u;
3944inline double RoutingSearchParameters::_internal_multi_armed_bandit_compound_operator_exploration_coefficient()
const {
3945 ::google::protobuf::internal::TSanRead(&
_impl_);
3946 return _impl_.multi_armed_bandit_compound_operator_exploration_coefficient_;
3948inline void RoutingSearchParameters::_internal_set_multi_armed_bandit_compound_operator_exploration_coefficient(
double value) {
3949 ::google::protobuf::internal::TSanWrite(&
_impl_);
3950 _impl_.multi_armed_bandit_compound_operator_exploration_coefficient_ = value;
3955 ::google::protobuf::internal::TSanWrite(&
_impl_);
3956 _impl_.max_swap_active_chain_size_ = 0;
3957 _impl_._has_bits_[1] &= ~0x01000000u;
3961 return _internal_max_swap_active_chain_size();
3964 _internal_set_max_swap_active_chain_size(value);
3965 _impl_._has_bits_[1] |= 0x01000000u;
3968inline ::int32_t RoutingSearchParameters::_internal_max_swap_active_chain_size()
const {
3969 ::google::protobuf::internal::TSanRead(&
_impl_);
3970 return _impl_.max_swap_active_chain_size_;
3972inline void RoutingSearchParameters::_internal_set_max_swap_active_chain_size(::int32_t value) {
3973 ::google::protobuf::internal::TSanWrite(&
_impl_);
3974 _impl_.max_swap_active_chain_size_ = value;
3979 ::google::protobuf::internal::TSanWrite(&
_impl_);
3980 _impl_.relocate_expensive_chain_num_arcs_to_consider_ = 0;
3981 _impl_._has_bits_[0] &= ~0x00800000u;
3985 return _internal_relocate_expensive_chain_num_arcs_to_consider();
3988 _internal_set_relocate_expensive_chain_num_arcs_to_consider(value);
3989 _impl_._has_bits_[0] |= 0x00800000u;
3992inline ::int32_t RoutingSearchParameters::_internal_relocate_expensive_chain_num_arcs_to_consider()
const {
3993 ::google::protobuf::internal::TSanRead(&
_impl_);
3994 return _impl_.relocate_expensive_chain_num_arcs_to_consider_;
3996inline void RoutingSearchParameters::_internal_set_relocate_expensive_chain_num_arcs_to_consider(::int32_t value) {
3997 ::google::protobuf::internal::TSanWrite(&
_impl_);
3998 _impl_.relocate_expensive_chain_num_arcs_to_consider_ = value;
4003 ::google::protobuf::internal::TSanWrite(&
_impl_);
4004 _impl_.heuristic_expensive_chain_lns_num_arcs_to_consider_ = 0;
4005 _impl_._has_bits_[1] &= ~0x00000001u;
4009 return _internal_heuristic_expensive_chain_lns_num_arcs_to_consider();
4012 _internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(value);
4013 _impl_._has_bits_[1] |= 0x00000001u;
4016inline ::int32_t RoutingSearchParameters::_internal_heuristic_expensive_chain_lns_num_arcs_to_consider()
const {
4017 ::google::protobuf::internal::TSanRead(&
_impl_);
4018 return _impl_.heuristic_expensive_chain_lns_num_arcs_to_consider_;
4020inline void RoutingSearchParameters::_internal_set_heuristic_expensive_chain_lns_num_arcs_to_consider(::int32_t value) {
4021 ::google::protobuf::internal::TSanWrite(&
_impl_);
4022 _impl_.heuristic_expensive_chain_lns_num_arcs_to_consider_ = value;
4027 ::google::protobuf::internal::TSanWrite(&
_impl_);
4028 _impl_.heuristic_close_nodes_lns_num_nodes_ = 0;
4029 _impl_._has_bits_[1] &= ~0x00000008u;
4033 return _internal_heuristic_close_nodes_lns_num_nodes();
4036 _internal_set_heuristic_close_nodes_lns_num_nodes(value);
4037 _impl_._has_bits_[1] |= 0x00000008u;
4040inline ::int32_t RoutingSearchParameters::_internal_heuristic_close_nodes_lns_num_nodes()
const {
4041 ::google::protobuf::internal::TSanRead(&
_impl_);
4042 return _impl_.heuristic_close_nodes_lns_num_nodes_;
4044inline void RoutingSearchParameters::_internal_set_heuristic_close_nodes_lns_num_nodes(::int32_t value) {
4045 ::google::protobuf::internal::TSanWrite(&
_impl_);
4046 _impl_.heuristic_close_nodes_lns_num_nodes_ = value;
4051 ::google::protobuf::internal::TSanWrite(&
_impl_);
4052 _impl_.local_search_metaheuristic_ = 0;
4053 _impl_._has_bits_[0] &= ~0x00000100u;
4057 return _internal_local_search_metaheuristic();
4060 _internal_set_local_search_metaheuristic(value);
4061 _impl_._has_bits_[0] |= 0x00000100u;
4064inline ::operations_research::LocalSearchMetaheuristic_Value RoutingSearchParameters::_internal_local_search_metaheuristic()
const {
4065 ::google::protobuf::internal::TSanRead(&
_impl_);
4069 ::google::protobuf::internal::TSanWrite(&
_impl_);
4070 _impl_.local_search_metaheuristic_ = value;
4074inline int RoutingSearchParameters::_internal_local_search_metaheuristics_size()
const {
4075 return _internal_local_search_metaheuristics().size();
4078 return _internal_local_search_metaheuristics_size();
4081 ::google::protobuf::internal::TSanWrite(&
_impl_);
4082 _impl_.local_search_metaheuristics_.Clear();
4089 _internal_mutable_local_search_metaheuristics()->Set(index, value);
4093 ::google::protobuf::internal::TSanWrite(&
_impl_);
4094 _internal_mutable_local_search_metaheuristics()->Add(value);
4098 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4100 return _internal_local_search_metaheuristics();
4103 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4105 ::google::protobuf::internal::TSanWrite(&
_impl_);
4106 return _internal_mutable_local_search_metaheuristics();
4108inline const ::google::protobuf::RepeatedField<int>& RoutingSearchParameters::_internal_local_search_metaheuristics()
4110 ::google::protobuf::internal::TSanRead(&
_impl_);
4111 return _impl_.local_search_metaheuristics_;
4113inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
4114RoutingSearchParameters::_internal_mutable_local_search_metaheuristics() {
4115 ::google::protobuf::internal::TSanRead(&
_impl_);
4116 return &
_impl_.local_search_metaheuristics_;
4121 ::google::protobuf::internal::TSanWrite(&
_impl_);
4122 _impl_.num_max_local_optima_before_metaheuristic_switch_ = 0;
4123 _impl_._has_bits_[1] &= ~0x00800000u;
4127 return _internal_num_max_local_optima_before_metaheuristic_switch();
4130 _internal_set_num_max_local_optima_before_metaheuristic_switch(value);
4131 _impl_._has_bits_[1] |= 0x00800000u;
4134inline ::int32_t RoutingSearchParameters::_internal_num_max_local_optima_before_metaheuristic_switch()
const {
4135 ::google::protobuf::internal::TSanRead(&
_impl_);
4136 return _impl_.num_max_local_optima_before_metaheuristic_switch_;
4138inline void RoutingSearchParameters::_internal_set_num_max_local_optima_before_metaheuristic_switch(::int32_t value) {
4139 ::google::protobuf::internal::TSanWrite(&
_impl_);
4140 _impl_.num_max_local_optima_before_metaheuristic_switch_ = value;
4145 ::google::protobuf::internal::TSanWrite(&
_impl_);
4146 _impl_.guided_local_search_lambda_coefficient_ = 0;
4147 _impl_._has_bits_[0] &= ~0x00000200u;
4151 return _internal_guided_local_search_lambda_coefficient();
4154 _internal_set_guided_local_search_lambda_coefficient(value);
4155 _impl_._has_bits_[0] |= 0x00000200u;
4158inline double RoutingSearchParameters::_internal_guided_local_search_lambda_coefficient()
const {
4159 ::google::protobuf::internal::TSanRead(&
_impl_);
4160 return _impl_.guided_local_search_lambda_coefficient_;
4162inline void RoutingSearchParameters::_internal_set_guided_local_search_lambda_coefficient(
double value) {
4163 ::google::protobuf::internal::TSanWrite(&
_impl_);
4164 _impl_.guided_local_search_lambda_coefficient_ = value;
4169 ::google::protobuf::internal::TSanWrite(&
_impl_);
4170 _impl_.guided_local_search_reset_penalties_on_new_best_solution_ =
false;
4171 _impl_._has_bits_[1] &= ~0x00001000u;
4175 return _internal_guided_local_search_reset_penalties_on_new_best_solution();
4178 _internal_set_guided_local_search_reset_penalties_on_new_best_solution(value);
4179 _impl_._has_bits_[1] |= 0x00001000u;
4182inline bool RoutingSearchParameters::_internal_guided_local_search_reset_penalties_on_new_best_solution()
const {
4183 ::google::protobuf::internal::TSanRead(&
_impl_);
4184 return _impl_.guided_local_search_reset_penalties_on_new_best_solution_;
4186inline void RoutingSearchParameters::_internal_set_guided_local_search_reset_penalties_on_new_best_solution(
bool value) {
4187 ::google::protobuf::internal::TSanWrite(&
_impl_);
4188 _impl_.guided_local_search_reset_penalties_on_new_best_solution_ = value;
4193 ::google::protobuf::internal::TSanWrite(&
_impl_);
4194 _impl_.guided_local_search_penalize_with_vehicle_classes_ =
false;
4195 _impl_._has_bits_[1] &= ~0x00200000u;
4199 return _internal_guided_local_search_penalize_with_vehicle_classes();
4202 _internal_set_guided_local_search_penalize_with_vehicle_classes(value);
4203 _impl_._has_bits_[1] |= 0x00200000u;
4206inline bool RoutingSearchParameters::_internal_guided_local_search_penalize_with_vehicle_classes()
const {
4207 ::google::protobuf::internal::TSanRead(&
_impl_);
4208 return _impl_.guided_local_search_penalize_with_vehicle_classes_;
4210inline void RoutingSearchParameters::_internal_set_guided_local_search_penalize_with_vehicle_classes(
bool value) {
4211 ::google::protobuf::internal::TSanWrite(&
_impl_);
4212 _impl_.guided_local_search_penalize_with_vehicle_classes_ = value;
4217 ::google::protobuf::internal::TSanWrite(&
_impl_);
4218 _impl_.use_guided_local_search_penalties_in_local_search_operators_ =
false;
4219 _impl_._has_bits_[1] &= ~0x00400000u;
4223 return _internal_use_guided_local_search_penalties_in_local_search_operators();
4226 _internal_set_use_guided_local_search_penalties_in_local_search_operators(value);
4227 _impl_._has_bits_[1] |= 0x00400000u;
4230inline bool RoutingSearchParameters::_internal_use_guided_local_search_penalties_in_local_search_operators()
const {
4231 ::google::protobuf::internal::TSanRead(&
_impl_);
4232 return _impl_.use_guided_local_search_penalties_in_local_search_operators_;
4234inline void RoutingSearchParameters::_internal_set_use_guided_local_search_penalties_in_local_search_operators(
bool value) {
4235 ::google::protobuf::internal::TSanWrite(&
_impl_);
4236 _impl_.use_guided_local_search_penalties_in_local_search_operators_ = value;
4241 ::google::protobuf::internal::TSanWrite(&
_impl_);
4242 _impl_.use_depth_first_search_ =
false;
4243 _impl_._has_bits_[0] &= ~0x00002000u;
4247 return _internal_use_depth_first_search();
4250 _internal_set_use_depth_first_search(value);
4251 _impl_._has_bits_[0] |= 0x00002000u;
4254inline bool RoutingSearchParameters::_internal_use_depth_first_search()
const {
4255 ::google::protobuf::internal::TSanRead(&
_impl_);
4256 return _impl_.use_depth_first_search_;
4258inline void RoutingSearchParameters::_internal_set_use_depth_first_search(
bool value) {
4259 ::google::protobuf::internal::TSanWrite(&
_impl_);
4260 _impl_.use_depth_first_search_ = value;
4265 ::google::protobuf::internal::TSanWrite(&
_impl_);
4267 _impl_._has_bits_[0] &= ~0x04000000u;
4271 return _internal_use_cp();
4274 _internal_set_use_cp(value);
4275 _impl_._has_bits_[0] |= 0x04000000u;
4278inline ::operations_research::OptionalBoolean RoutingSearchParameters::_internal_use_cp()
const {
4279 ::google::protobuf::internal::TSanRead(&
_impl_);
4283 ::google::protobuf::internal::TSanWrite(&
_impl_);
4289 ::google::protobuf::internal::TSanWrite(&
_impl_);
4291 _impl_._has_bits_[0] &= ~0x01000000u;
4295 return _internal_use_cp_sat();
4298 _internal_set_use_cp_sat(value);
4299 _impl_._has_bits_[0] |= 0x01000000u;
4302inline ::operations_research::OptionalBoolean RoutingSearchParameters::_internal_use_cp_sat()
const {
4303 ::google::protobuf::internal::TSanRead(&
_impl_);
4307 ::google::protobuf::internal::TSanWrite(&
_impl_);
4308 _impl_.use_cp_sat_ = value;
4313 ::google::protobuf::internal::TSanWrite(&
_impl_);
4314 _impl_.use_generalized_cp_sat_ = 0;
4315 _impl_._has_bits_[1] &= ~0x00000100u;
4319 return _internal_use_generalized_cp_sat();
4322 _internal_set_use_generalized_cp_sat(value);
4323 _impl_._has_bits_[1] |= 0x00000100u;
4326inline ::operations_research::OptionalBoolean RoutingSearchParameters::_internal_use_generalized_cp_sat()
const {
4327 ::google::protobuf::internal::TSanRead(&
_impl_);
4331 ::google::protobuf::internal::TSanWrite(&
_impl_);
4332 _impl_.use_generalized_cp_sat_ = value;
4337 bool value = (
_impl_._has_bits_[0] & 0x00000020u) != 0;
4338 PROTOBUF_ASSUME(!value ||
_impl_.sat_parameters_ !=
nullptr);
4341inline const ::operations_research::sat::SatParameters& RoutingSearchParameters::_internal_sat_parameters()
const {
4342 ::google::protobuf::internal::TSanRead(&
_impl_);
4343 const ::operations_research::sat::SatParameters* p =
_impl_.sat_parameters_;
4348 return _internal_sat_parameters();
4352 ::google::protobuf::internal::TSanWrite(&
_impl_);
4353 if (GetArena() ==
nullptr) {
4354 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.sat_parameters_);
4357 if (value !=
nullptr) {
4358 _impl_._has_bits_[0] |= 0x00000020u;
4365 ::google::protobuf::internal::TSanWrite(&
_impl_);
4367 _impl_._has_bits_[0] &= ~0x00000020u;
4369 _impl_.sat_parameters_ =
nullptr;
4370 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
4371 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
4372 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4373 if (GetArena() ==
nullptr) {
4377 if (GetArena() !=
nullptr) {
4378 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4384 ::google::protobuf::internal::TSanWrite(&
_impl_);
4387 _impl_._has_bits_[0] &= ~0x00000020u;
4388 ::operations_research::sat::SatParameters* temp =
_impl_.sat_parameters_;
4389 _impl_.sat_parameters_ =
nullptr;
4392inline ::operations_research::sat::SatParameters* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_sat_parameters() {
4393 ::google::protobuf::internal::TSanWrite(&
_impl_);
4394 if (
_impl_.sat_parameters_ ==
nullptr) {
4395 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::sat::SatParameters>(GetArena());
4398 return _impl_.sat_parameters_;
4401 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4402 _impl_._has_bits_[0] |= 0x00000020u;
4409 ::google::protobuf::internal::TSanWrite(&
_impl_);
4410 if (message_arena ==
nullptr) {
4411 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.sat_parameters_);
4414 if (value !=
nullptr) {
4415 ::google::protobuf::Arena* submessage_arena =
reinterpret_cast<::google::protobuf::Message*
>(value)->GetArena();
4416 if (message_arena != submessage_arena) {
4417 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
4419 _impl_._has_bits_[0] |= 0x00000020u;
4421 _impl_._has_bits_[0] &= ~0x00000020u;
4424 _impl_.sat_parameters_ =
reinterpret_cast<::operations_research::sat::SatParameters*
>(value);
4430 ::google::protobuf::internal::TSanWrite(&
_impl_);
4431 _impl_.report_intermediate_cp_sat_solutions_ =
false;
4432 _impl_._has_bits_[1] &= ~0x00002000u;
4436 return _internal_report_intermediate_cp_sat_solutions();
4439 _internal_set_report_intermediate_cp_sat_solutions(value);
4440 _impl_._has_bits_[1] |= 0x00002000u;
4443inline bool RoutingSearchParameters::_internal_report_intermediate_cp_sat_solutions()
const {
4444 ::google::protobuf::internal::TSanRead(&
_impl_);
4445 return _impl_.report_intermediate_cp_sat_solutions_;
4447inline void RoutingSearchParameters::_internal_set_report_intermediate_cp_sat_solutions(
bool value) {
4448 ::google::protobuf::internal::TSanWrite(&
_impl_);
4449 _impl_.report_intermediate_cp_sat_solutions_ = value;
4454 ::google::protobuf::internal::TSanWrite(&
_impl_);
4455 _impl_.fallback_to_cp_sat_size_threshold_ = 0;
4456 _impl_._has_bits_[1] &= ~0x00004000u;
4460 return _internal_fallback_to_cp_sat_size_threshold();
4463 _internal_set_fallback_to_cp_sat_size_threshold(value);
4464 _impl_._has_bits_[1] |= 0x00004000u;
4467inline ::int32_t RoutingSearchParameters::_internal_fallback_to_cp_sat_size_threshold()
const {
4468 ::google::protobuf::internal::TSanRead(&
_impl_);
4469 return _impl_.fallback_to_cp_sat_size_threshold_;
4471inline void RoutingSearchParameters::_internal_set_fallback_to_cp_sat_size_threshold(::int32_t value) {
4472 ::google::protobuf::internal::TSanWrite(&
_impl_);
4473 _impl_.fallback_to_cp_sat_size_threshold_ = value;
4478 ::google::protobuf::internal::TSanWrite(&
_impl_);
4479 _impl_.continuous_scheduling_solver_ = 0;
4480 _impl_._has_bits_[1] &= ~0x00000002u;
4484 return _internal_continuous_scheduling_solver();
4487 _internal_set_continuous_scheduling_solver(value);
4488 _impl_._has_bits_[1] |= 0x00000002u;
4491inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::_internal_continuous_scheduling_solver()
const {
4492 ::google::protobuf::internal::TSanRead(&
_impl_);
4496 ::google::protobuf::internal::TSanWrite(&
_impl_);
4497 _impl_.continuous_scheduling_solver_ = value;
4502 ::google::protobuf::internal::TSanWrite(&
_impl_);
4503 _impl_.mixed_integer_scheduling_solver_ = 0;
4504 _impl_._has_bits_[1] &= ~0x00000004u;
4508 return _internal_mixed_integer_scheduling_solver();
4511 _internal_set_mixed_integer_scheduling_solver(value);
4512 _impl_._has_bits_[1] |= 0x00000004u;
4515inline ::operations_research::RoutingSearchParameters_SchedulingSolver RoutingSearchParameters::_internal_mixed_integer_scheduling_solver()
const {
4516 ::google::protobuf::internal::TSanRead(&
_impl_);
4520 ::google::protobuf::internal::TSanWrite(&
_impl_);
4521 _impl_.mixed_integer_scheduling_solver_ = value;
4526 bool value = (
_impl_._has_bits_[1] & 0x00000800u) != 0;
4530 ::google::protobuf::internal::TSanWrite(&
_impl_);
4531 _impl_.disable_scheduling_beware_this_may_degrade_performance_ =
false;
4532 _impl_._has_bits_[1] &= ~0x00000800u;
4536 return _internal_disable_scheduling_beware_this_may_degrade_performance();
4539 _internal_set_disable_scheduling_beware_this_may_degrade_performance(value);
4540 _impl_._has_bits_[1] |= 0x00000800u;
4543inline bool RoutingSearchParameters::_internal_disable_scheduling_beware_this_may_degrade_performance()
const {
4544 ::google::protobuf::internal::TSanRead(&
_impl_);
4545 return _impl_.disable_scheduling_beware_this_may_degrade_performance_;
4547inline void RoutingSearchParameters::_internal_set_disable_scheduling_beware_this_may_degrade_performance(
bool value) {
4548 ::google::protobuf::internal::TSanWrite(&
_impl_);
4549 _impl_.disable_scheduling_beware_this_may_degrade_performance_ = value;
4554 ::google::protobuf::internal::TSanWrite(&
_impl_);
4555 _impl_.optimization_step_ = 0;
4556 _impl_._has_bits_[0] &= ~0x00000400u;
4560 return _internal_optimization_step();
4563 _internal_set_optimization_step(value);
4564 _impl_._has_bits_[0] |= 0x00000400u;
4567inline double RoutingSearchParameters::_internal_optimization_step()
const {
4568 ::google::protobuf::internal::TSanRead(&
_impl_);
4569 return _impl_.optimization_step_;
4571inline void RoutingSearchParameters::_internal_set_optimization_step(
double value) {
4572 ::google::protobuf::internal::TSanWrite(&
_impl_);
4573 _impl_.optimization_step_ = value;
4578 ::google::protobuf::internal::TSanWrite(&
_impl_);
4579 _impl_.number_of_solutions_to_collect_ = 0;
4580 _impl_._has_bits_[0] &= ~0x00010000u;
4584 return _internal_number_of_solutions_to_collect();
4587 _internal_set_number_of_solutions_to_collect(value);
4588 _impl_._has_bits_[0] |= 0x00010000u;
4591inline ::int32_t RoutingSearchParameters::_internal_number_of_solutions_to_collect()
const {
4592 ::google::protobuf::internal::TSanRead(&
_impl_);
4593 return _impl_.number_of_solutions_to_collect_;
4595inline void RoutingSearchParameters::_internal_set_number_of_solutions_to_collect(::int32_t value) {
4596 ::google::protobuf::internal::TSanWrite(&
_impl_);
4597 _impl_.number_of_solutions_to_collect_ = value;
4602 ::google::protobuf::internal::TSanWrite(&
_impl_);
4603 _impl_.solution_limit_ = ::int64_t{0};
4604 _impl_._has_bits_[0] &= ~0x00000800u;
4608 return _internal_solution_limit();
4611 _internal_set_solution_limit(value);
4612 _impl_._has_bits_[0] |= 0x00000800u;
4615inline ::int64_t RoutingSearchParameters::_internal_solution_limit()
const {
4616 ::google::protobuf::internal::TSanRead(&
_impl_);
4617 return _impl_.solution_limit_;
4619inline void RoutingSearchParameters::_internal_set_solution_limit(::int64_t value) {
4620 ::google::protobuf::internal::TSanWrite(&
_impl_);
4621 _impl_.solution_limit_ = value;
4626 bool value = (
_impl_._has_bits_[0] & 0x00000004u) != 0;
4627 PROTOBUF_ASSUME(!value ||
_impl_.time_limit_ !=
nullptr);
4630inline const ::google::protobuf::Duration& RoutingSearchParameters::_internal_time_limit()
const {
4631 ::google::protobuf::internal::TSanRead(&
_impl_);
4632 const ::google::protobuf::Duration* p =
_impl_.time_limit_;
4633 return p !=
nullptr ? *p :
reinterpret_cast<const ::google::protobuf::Duration&
>(::google::protobuf::_Duration_default_instance_);
4637 return _internal_time_limit();
4640 ::google::protobuf::Duration* PROTOBUF_NULLABLE value) {
4641 ::google::protobuf::internal::TSanWrite(&
_impl_);
4642 if (GetArena() ==
nullptr) {
4643 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.time_limit_);
4645 _impl_.time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(value);
4646 if (value !=
nullptr) {
4647 _impl_._has_bits_[0] |= 0x00000004u;
4654 ::google::protobuf::internal::TSanWrite(&
_impl_);
4656 _impl_._has_bits_[0] &= ~0x00000004u;
4657 ::google::protobuf::Duration* released =
_impl_.time_limit_;
4658 _impl_.time_limit_ =
nullptr;
4659 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
4660 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
4661 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4662 if (GetArena() ==
nullptr) {
4666 if (GetArena() !=
nullptr) {
4667 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4673 ::google::protobuf::internal::TSanWrite(&
_impl_);
4676 _impl_._has_bits_[0] &= ~0x00000004u;
4677 ::google::protobuf::Duration* temp =
_impl_.time_limit_;
4678 _impl_.time_limit_ =
nullptr;
4681inline ::google::protobuf::Duration* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_time_limit() {
4682 ::google::protobuf::internal::TSanWrite(&
_impl_);
4683 if (
_impl_.time_limit_ ==
nullptr) {
4684 auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Duration>(GetArena());
4685 _impl_.time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(p);
4687 return _impl_.time_limit_;
4690 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4691 _impl_._has_bits_[0] |= 0x00000004u;
4692 ::google::protobuf::Duration* _msg = _internal_mutable_time_limit();
4698 ::google::protobuf::internal::TSanWrite(&
_impl_);
4699 if (message_arena ==
nullptr) {
4700 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.time_limit_);
4703 if (value !=
nullptr) {
4704 ::google::protobuf::Arena* submessage_arena =
reinterpret_cast<::google::protobuf::Message*
>(value)->GetArena();
4705 if (message_arena != submessage_arena) {
4706 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
4708 _impl_._has_bits_[0] |= 0x00000004u;
4710 _impl_._has_bits_[0] &= ~0x00000004u;
4713 _impl_.time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(value);
4719 bool value = (
_impl_._has_bits_[0] & 0x00000008u) != 0;
4720 PROTOBUF_ASSUME(!value ||
_impl_.lns_time_limit_ !=
nullptr);
4723inline const ::google::protobuf::Duration& RoutingSearchParameters::_internal_lns_time_limit()
const {
4724 ::google::protobuf::internal::TSanRead(&
_impl_);
4725 const ::google::protobuf::Duration* p =
_impl_.lns_time_limit_;
4726 return p !=
nullptr ? *p :
reinterpret_cast<const ::google::protobuf::Duration&
>(::google::protobuf::_Duration_default_instance_);
4730 return _internal_lns_time_limit();
4733 ::google::protobuf::Duration* PROTOBUF_NULLABLE value) {
4734 ::google::protobuf::internal::TSanWrite(&
_impl_);
4735 if (GetArena() ==
nullptr) {
4736 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.lns_time_limit_);
4738 _impl_.lns_time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(value);
4739 if (value !=
nullptr) {
4740 _impl_._has_bits_[0] |= 0x00000008u;
4747 ::google::protobuf::internal::TSanWrite(&
_impl_);
4749 _impl_._has_bits_[0] &= ~0x00000008u;
4750 ::google::protobuf::Duration* released =
_impl_.lns_time_limit_;
4751 _impl_.lns_time_limit_ =
nullptr;
4752 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
4753 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
4754 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4755 if (GetArena() ==
nullptr) {
4759 if (GetArena() !=
nullptr) {
4760 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4766 ::google::protobuf::internal::TSanWrite(&
_impl_);
4769 _impl_._has_bits_[0] &= ~0x00000008u;
4770 ::google::protobuf::Duration* temp =
_impl_.lns_time_limit_;
4771 _impl_.lns_time_limit_ =
nullptr;
4774inline ::google::protobuf::Duration* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_lns_time_limit() {
4775 ::google::protobuf::internal::TSanWrite(&
_impl_);
4776 if (
_impl_.lns_time_limit_ ==
nullptr) {
4777 auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Duration>(GetArena());
4778 _impl_.lns_time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(p);
4780 return _impl_.lns_time_limit_;
4783 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4784 _impl_._has_bits_[0] |= 0x00000008u;
4785 ::google::protobuf::Duration* _msg = _internal_mutable_lns_time_limit();
4791 ::google::protobuf::internal::TSanWrite(&
_impl_);
4792 if (message_arena ==
nullptr) {
4793 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.lns_time_limit_);
4796 if (value !=
nullptr) {
4797 ::google::protobuf::Arena* submessage_arena =
reinterpret_cast<::google::protobuf::Message*
>(value)->GetArena();
4798 if (message_arena != submessage_arena) {
4799 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
4801 _impl_._has_bits_[0] |= 0x00000008u;
4803 _impl_._has_bits_[0] &= ~0x00000008u;
4806 _impl_.lns_time_limit_ =
reinterpret_cast<::google::protobuf::Duration*
>(value);
4812 ::google::protobuf::internal::TSanWrite(&
_impl_);
4813 _impl_.secondary_ls_time_limit_ratio_ = 0;
4814 _impl_._has_bits_[1] &= ~0x00040000u;
4818 return _internal_secondary_ls_time_limit_ratio();
4821 _internal_set_secondary_ls_time_limit_ratio(value);
4822 _impl_._has_bits_[1] |= 0x00040000u;
4825inline double RoutingSearchParameters::_internal_secondary_ls_time_limit_ratio()
const {
4826 ::google::protobuf::internal::TSanRead(&
_impl_);
4827 return _impl_.secondary_ls_time_limit_ratio_;
4829inline void RoutingSearchParameters::_internal_set_secondary_ls_time_limit_ratio(
double value) {
4830 ::google::protobuf::internal::TSanWrite(&
_impl_);
4831 _impl_.secondary_ls_time_limit_ratio_ = value;
4836 bool value = (
_impl_._has_bits_[0] & 0x00000010u) != 0;
4837 PROTOBUF_ASSUME(!value ||
_impl_.improvement_limit_parameters_ !=
nullptr);
4841 ::google::protobuf::internal::TSanWrite(&
_impl_);
4842 if (
_impl_.improvement_limit_parameters_ !=
nullptr)
_impl_.improvement_limit_parameters_->
Clear();
4843 _impl_._has_bits_[0] &= ~0x00000010u;
4845inline const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters& RoutingSearchParameters::_internal_improvement_limit_parameters()
const {
4846 ::google::protobuf::internal::TSanRead(&
_impl_);
4847 const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* p =
_impl_.improvement_limit_parameters_;
4852 return _internal_improvement_limit_parameters();
4856 ::google::protobuf::internal::TSanWrite(&
_impl_);
4857 if (GetArena() ==
nullptr) {
4858 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.improvement_limit_parameters_);
4861 if (value !=
nullptr) {
4862 _impl_._has_bits_[0] |= 0x00000010u;
4869 ::google::protobuf::internal::TSanWrite(&
_impl_);
4871 _impl_._has_bits_[0] &= ~0x00000010u;
4873 _impl_.improvement_limit_parameters_ =
nullptr;
4874 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
4875 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
4876 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4877 if (GetArena() ==
nullptr) {
4881 if (GetArena() !=
nullptr) {
4882 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
4888 ::google::protobuf::internal::TSanWrite(&
_impl_);
4891 _impl_._has_bits_[0] &= ~0x00000010u;
4892 ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* temp =
_impl_.improvement_limit_parameters_;
4893 _impl_.improvement_limit_parameters_ =
nullptr;
4896inline ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_improvement_limit_parameters() {
4897 ::google::protobuf::internal::TSanWrite(&
_impl_);
4898 if (
_impl_.improvement_limit_parameters_ ==
nullptr) {
4899 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters>(GetArena());
4902 return _impl_.improvement_limit_parameters_;
4905 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4906 _impl_._has_bits_[0] |= 0x00000010u;
4913 ::google::protobuf::internal::TSanWrite(&
_impl_);
4914 if (message_arena ==
nullptr) {
4915 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.improvement_limit_parameters_);
4918 if (value !=
nullptr) {
4919 ::google::protobuf::Arena* submessage_arena = value->GetArena();
4920 if (message_arena != submessage_arena) {
4921 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
4923 _impl_._has_bits_[0] |= 0x00000010u;
4925 _impl_._has_bits_[0] &= ~0x00000010u;
4928 _impl_.improvement_limit_parameters_ =
reinterpret_cast<::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters*
>(value);
4934 ::google::protobuf::internal::TSanWrite(&
_impl_);
4935 _impl_.use_full_propagation_ =
false;
4936 _impl_._has_bits_[0] &= ~0x00004000u;
4940 return _internal_use_full_propagation();
4943 _internal_set_use_full_propagation(value);
4944 _impl_._has_bits_[0] |= 0x00004000u;
4947inline bool RoutingSearchParameters::_internal_use_full_propagation()
const {
4948 ::google::protobuf::internal::TSanRead(&
_impl_);
4949 return _impl_.use_full_propagation_;
4951inline void RoutingSearchParameters::_internal_set_use_full_propagation(
bool value) {
4952 ::google::protobuf::internal::TSanWrite(&
_impl_);
4953 _impl_.use_full_propagation_ = value;
4958 ::google::protobuf::internal::TSanWrite(&
_impl_);
4959 _impl_.log_search_ =
false;
4960 _impl_._has_bits_[0] &= ~0x00008000u;
4964 return _internal_log_search();
4967 _internal_set_log_search(value);
4968 _impl_._has_bits_[0] |= 0x00008000u;
4971inline bool RoutingSearchParameters::_internal_log_search()
const {
4972 ::google::protobuf::internal::TSanRead(&
_impl_);
4973 return _impl_.log_search_;
4975inline void RoutingSearchParameters::_internal_set_log_search(
bool value) {
4976 ::google::protobuf::internal::TSanWrite(&
_impl_);
4977 _impl_.log_search_ = value;
4982 ::google::protobuf::internal::TSanWrite(&
_impl_);
4983 _impl_.log_cost_scaling_factor_ = 0;
4984 _impl_._has_bits_[0] &= ~0x00200000u;
4988 return _internal_log_cost_scaling_factor();
4991 _internal_set_log_cost_scaling_factor(value);
4992 _impl_._has_bits_[0] |= 0x00200000u;
4995inline double RoutingSearchParameters::_internal_log_cost_scaling_factor()
const {
4996 ::google::protobuf::internal::TSanRead(&
_impl_);
4997 return _impl_.log_cost_scaling_factor_;
4999inline void RoutingSearchParameters::_internal_set_log_cost_scaling_factor(
double value) {
5000 ::google::protobuf::internal::TSanWrite(&
_impl_);
5001 _impl_.log_cost_scaling_factor_ = value;
5006 ::google::protobuf::internal::TSanWrite(&
_impl_);
5007 _impl_.log_cost_offset_ = 0;
5008 _impl_._has_bits_[0] &= ~0x02000000u;
5012 return _internal_log_cost_offset();
5015 _internal_set_log_cost_offset(value);
5016 _impl_._has_bits_[0] |= 0x02000000u;
5019inline double RoutingSearchParameters::_internal_log_cost_offset()
const {
5020 ::google::protobuf::internal::TSanRead(&
_impl_);
5021 return _impl_.log_cost_offset_;
5023inline void RoutingSearchParameters::_internal_set_log_cost_offset(
double value) {
5024 ::google::protobuf::internal::TSanWrite(&
_impl_);
5025 _impl_.log_cost_offset_ = value;
5030 ::google::protobuf::internal::TSanWrite(&
_impl_);
5031 _impl_.log_tag_.ClearToEmpty();
5032 _impl_._has_bits_[0] &= ~0x00000001u;
5035 ABSL_ATTRIBUTE_LIFETIME_BOUND {
5037 return _internal_log_tag();
5039template <
typename Arg_,
typename... Args_>
5041 ::google::protobuf::internal::TSanWrite(&
_impl_);
5042 _impl_._has_bits_[0] |= 0x00000001u;
5043 _impl_.log_tag_.Set(
static_cast<Arg_&&
>(arg), args..., GetArena());
5047 ABSL_ATTRIBUTE_LIFETIME_BOUND {
5048 ::std::string* _s = _internal_mutable_log_tag();
5052inline const ::std::string& RoutingSearchParameters::_internal_log_tag()
const {
5053 ::google::protobuf::internal::TSanRead(&
_impl_);
5054 return _impl_.log_tag_.Get();
5056inline void RoutingSearchParameters::_internal_set_log_tag(const ::std::string& value) {
5057 ::google::protobuf::internal::TSanWrite(&
_impl_);
5058 _impl_._has_bits_[0] |= 0x00000001u;
5059 _impl_.log_tag_.Set(value, GetArena());
5061inline ::std::string* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_log_tag() {
5062 ::google::protobuf::internal::TSanWrite(&
_impl_);
5063 _impl_._has_bits_[0] |= 0x00000001u;
5064 return _impl_.log_tag_.Mutable( GetArena());
5067 ::google::protobuf::internal::TSanWrite(&
_impl_);
5069 if ((
_impl_._has_bits_[0] & 0x00000001u) == 0) {
5072 _impl_._has_bits_[0] &= ~0x00000001u;
5073 auto* released =
_impl_.log_tag_.Release();
5074 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
5075 _impl_.log_tag_.Set(
"", GetArena());
5080 ::google::protobuf::internal::TSanWrite(&
_impl_);
5081 if (value !=
nullptr) {
5082 _impl_._has_bits_[0] |= 0x00000001u;
5084 _impl_._has_bits_[0] &= ~0x00000001u;
5086 _impl_.log_tag_.SetAllocated(value, GetArena());
5087 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.log_tag_.IsDefault()) {
5088 _impl_.log_tag_.Set(
"", GetArena());
5095 ::google::protobuf::internal::TSanWrite(&
_impl_);
5096 _impl_.use_iterated_local_search_ =
false;
5097 _impl_._has_bits_[1] &= ~0x00100000u;
5101 return _internal_use_iterated_local_search();
5104 _internal_set_use_iterated_local_search(value);
5105 _impl_._has_bits_[1] |= 0x00100000u;
5108inline bool RoutingSearchParameters::_internal_use_iterated_local_search()
const {
5109 ::google::protobuf::internal::TSanRead(&
_impl_);
5110 return _impl_.use_iterated_local_search_;
5112inline void RoutingSearchParameters::_internal_set_use_iterated_local_search(
bool value) {
5113 ::google::protobuf::internal::TSanWrite(&
_impl_);
5114 _impl_.use_iterated_local_search_ = value;
5119 bool value = (
_impl_._has_bits_[0] & 0x00000040u) != 0;
5120 PROTOBUF_ASSUME(!value ||
_impl_.iterated_local_search_parameters_ !=
nullptr);
5123inline const ::operations_research::IteratedLocalSearchParameters& RoutingSearchParameters::_internal_iterated_local_search_parameters()
const {
5124 ::google::protobuf::internal::TSanRead(&
_impl_);
5125 const ::operations_research::IteratedLocalSearchParameters* p =
_impl_.iterated_local_search_parameters_;
5130 return _internal_iterated_local_search_parameters();
5134 ::google::protobuf::internal::TSanWrite(&
_impl_);
5135 if (GetArena() ==
nullptr) {
5136 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.iterated_local_search_parameters_);
5139 if (value !=
nullptr) {
5140 _impl_._has_bits_[0] |= 0x00000040u;
5147 ::google::protobuf::internal::TSanWrite(&
_impl_);
5149 _impl_._has_bits_[0] &= ~0x00000040u;
5151 _impl_.iterated_local_search_parameters_ =
nullptr;
5152 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
5153 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
5154 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
5155 if (GetArena() ==
nullptr) {
5159 if (GetArena() !=
nullptr) {
5160 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
5166 ::google::protobuf::internal::TSanWrite(&
_impl_);
5169 _impl_._has_bits_[0] &= ~0x00000040u;
5170 ::operations_research::IteratedLocalSearchParameters* temp =
_impl_.iterated_local_search_parameters_;
5171 _impl_.iterated_local_search_parameters_ =
nullptr;
5174inline ::operations_research::IteratedLocalSearchParameters* PROTOBUF_NONNULL RoutingSearchParameters::_internal_mutable_iterated_local_search_parameters() {
5175 ::google::protobuf::internal::TSanWrite(&
_impl_);
5176 if (
_impl_.iterated_local_search_parameters_ ==
nullptr) {
5177 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::IteratedLocalSearchParameters>(GetArena());
5180 return _impl_.iterated_local_search_parameters_;
5183 ABSL_ATTRIBUTE_LIFETIME_BOUND {
5184 _impl_._has_bits_[0] |= 0x00000040u;
5191 ::google::protobuf::internal::TSanWrite(&
_impl_);
5192 if (message_arena ==
nullptr) {
5193 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.iterated_local_search_parameters_);
5196 if (value !=
nullptr) {
5197 ::google::protobuf::Arena* submessage_arena =
reinterpret_cast<::google::protobuf::Message*
>(value)->GetArena();
5198 if (message_arena != submessage_arena) {
5199 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
5201 _impl_._has_bits_[0] |= 0x00000040u;
5203 _impl_._has_bits_[0] &= ~0x00000040u;
5206 _impl_.iterated_local_search_parameters_ =
reinterpret_cast<::operations_research::IteratedLocalSearchParameters*
>(value);
5216 bool value = (
_impl_._has_bits_[0] & 0x00000001u) != 0;
5217 PROTOBUF_ASSUME(!value ||
_impl_.solver_parameters_ !=
nullptr);
5220inline const ::operations_research::ConstraintSolverParameters& RoutingModelParameters::_internal_solver_parameters()
const {
5221 ::google::protobuf::internal::TSanRead(&
_impl_);
5222 const ::operations_research::ConstraintSolverParameters* p =
_impl_.solver_parameters_;
5227 return _internal_solver_parameters();
5231 ::google::protobuf::internal::TSanWrite(&
_impl_);
5232 if (GetArena() ==
nullptr) {
5233 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.solver_parameters_);
5236 if (value !=
nullptr) {
5237 _impl_._has_bits_[0] |= 0x00000001u;
5239 _impl_._has_bits_[0] &= ~0x00000001u;
5244 ::google::protobuf::internal::TSanWrite(&
_impl_);
5246 _impl_._has_bits_[0] &= ~0x00000001u;
5248 _impl_.solver_parameters_ =
nullptr;
5249 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
5250 auto* old =
reinterpret_cast<::google::protobuf::MessageLite*
>(released);
5251 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
5252 if (GetArena() ==
nullptr) {
5256 if (GetArena() !=
nullptr) {
5257 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
5263 ::google::protobuf::internal::TSanWrite(&
_impl_);
5266 _impl_._has_bits_[0] &= ~0x00000001u;
5267 ::operations_research::ConstraintSolverParameters* temp =
_impl_.solver_parameters_;
5268 _impl_.solver_parameters_ =
nullptr;
5271inline ::operations_research::ConstraintSolverParameters* PROTOBUF_NONNULL RoutingModelParameters::_internal_mutable_solver_parameters() {
5272 ::google::protobuf::internal::TSanWrite(&
_impl_);
5274 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::ConstraintSolverParameters>(GetArena());
5277 return _impl_.solver_parameters_;
5280 ABSL_ATTRIBUTE_LIFETIME_BOUND {
5281 _impl_._has_bits_[0] |= 0x00000001u;
5288 ::google::protobuf::internal::TSanWrite(&
_impl_);
5289 if (message_arena ==
nullptr) {
5290 delete reinterpret_cast<::google::protobuf::MessageLite*
>(
_impl_.solver_parameters_);
5293 if (value !=
nullptr) {
5294 ::google::protobuf::Arena* submessage_arena =
reinterpret_cast<::google::protobuf::Message*
>(value)->GetArena();
5295 if (message_arena != submessage_arena) {
5296 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
5298 _impl_._has_bits_[0] |= 0x00000001u;
5300 _impl_._has_bits_[0] &= ~0x00000001u;
5303 _impl_.solver_parameters_ =
reinterpret_cast<::operations_research::ConstraintSolverParameters*
>(value);
5309 ::google::protobuf::internal::TSanWrite(&
_impl_);
5310 _impl_.reduce_vehicle_cost_model_ =
false;
5311 _impl_._has_bits_[0] &= ~0x00000002u;
5315 return _internal_reduce_vehicle_cost_model();
5318 _internal_set_reduce_vehicle_cost_model(value);
5322inline bool RoutingModelParameters::_internal_reduce_vehicle_cost_model()
const {
5323 ::google::protobuf::internal::TSanRead(&
_impl_);
5326inline void RoutingModelParameters::_internal_set_reduce_vehicle_cost_model(
bool value) {
5327 ::google::protobuf::internal::TSanWrite(&
_impl_);
5333 ::google::protobuf::internal::TSanWrite(&
_impl_);
5334 _impl_.max_callback_cache_size_ = 0;
5335 _impl_._has_bits_[0] &= ~0x00000004u;
5339 return _internal_max_callback_cache_size();
5342 _internal_set_max_callback_cache_size(value);
5346inline ::int32_t RoutingModelParameters::_internal_max_callback_cache_size()
const {
5347 ::google::protobuf::internal::TSanRead(&
_impl_);
5350inline void RoutingModelParameters::_internal_set_max_callback_cache_size(::int32_t value) {
5351 ::google::protobuf::internal::TSanWrite(&
_impl_);
5356#pragma GCC diagnostic pop
5370 return ::operations_research::RoutingSearchParameters_PairInsertionStrategy_descriptor();
5376 return ::operations_research::RoutingSearchParameters_InsertionSortingProperty_descriptor();
5382 return ::operations_research::RoutingSearchParameters_SchedulingSolver_descriptor();
5390#include "google/protobuf/port_undef.inc"
static const RoutingModelParameters & default_instance()
void set_max_callback_cache_size(::int32_t value)
friend class ::google::protobuf::MessageLite
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
void clear_solver_parameters()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
void CopyFrom(const RoutingModelParameters &from)
::size_t ByteSizeLong() const final
RoutingModelParameters & operator=(const RoutingModelParameters &from)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
friend void swap(RoutingModelParameters &a, RoutingModelParameters &b)
void MergeFrom(const RoutingModelParameters &from)
bool IsInitialized() const
static constexpr int kIndexInFileMessages
const ::operations_research::ConstraintSolverParameters & solver_parameters() const
void clear_max_callback_cache_size()
int32 max_callback_cache_size = 3;
::operations_research::ConstraintSolverParameters *PROTOBUF_NULLABLE release_solver_parameters()
void unsafe_arena_set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *PROTOBUF_NULLABLE value)
bool has_solver_parameters() const
.operations_research.ConstraintSolverParameters solver_parameters = 1;
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void clear_reduce_vehicle_cost_model()
bool reduce_vehicle_cost_model = 2;
bool reduce_vehicle_cost_model() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::int32_t max_callback_cache_size() const
void set_reduce_vehicle_cost_model(bool value)
::operations_research::ConstraintSolverParameters *PROTOBUF_NONNULL mutable_solver_parameters()
void set_allocated_solver_parameters(::operations_research::ConstraintSolverParameters *PROTOBUF_NULLABLE value)
PROTOBUF_CONSTEXPR RoutingModelParameters(::google::protobuf::internal::ConstantInitialized)
void Swap(RoutingModelParameters *PROTOBUF_NONNULL other)
friend class ::google::protobuf::Arena
::operations_research::ConstraintSolverParameters *PROTOBUF_NULLABLE unsafe_arena_release_solver_parameters()
void CopyFrom(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
friend class ::google::protobuf::MessageLite
void set_improvement_rate_coefficient(double value)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
PROTOBUF_CONSTEXPR RoutingSearchParameters_ImprovementSearchLimitParameters(::google::protobuf::internal::ConstantInitialized)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
double improvement_rate_coefficient() const
::size_t ByteSizeLong() const final
void Swap(RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NONNULL other)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
void clear_improvement_rate_solutions_distance()
int32 improvement_rate_solutions_distance = 39;
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
static const RoutingSearchParameters_ImprovementSearchLimitParameters & default_instance()
bool IsInitialized() const
::int32_t improvement_rate_solutions_distance() const
RoutingSearchParameters_ImprovementSearchLimitParameters()
void set_improvement_rate_solutions_distance(::int32_t value)
RoutingSearchParameters_ImprovementSearchLimitParameters & operator=(const RoutingSearchParameters_ImprovementSearchLimitParameters &from)
void clear_improvement_rate_coefficient()
double improvement_rate_coefficient = 38;
::operations_research::OptionalBoolean use_relocate_path_global_cheapest_insertion_insert_unperformed() const
void set_use_global_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_full_path_lns() const
::operations_research::OptionalBoolean use_relocate_pair() const
void set_use_local_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
friend class ::google::protobuf::MessageLite
void clear_use_exchange_pair()
.operations_research.OptionalBoolean use_exchange_pair = 22;
void clear_use_global_cheapest_insertion_expensive_chain_lns()
.operations_research.OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns = 29;
void clear_use_node_pair_swap_active()
.operations_research.OptionalBoolean use_node_pair_swap_active = 20;
::operations_research::OptionalBoolean use_shortest_path_two_opt() const
void clear_use_relocate_neighbors()
.operations_research.OptionalBoolean use_relocate_neighbors = 3;
void set_use_or_opt(::operations_research::OptionalBoolean value)
@ kUseFullPathLnsFieldNumber
@ kUseLocalCheapestInsertionCloseNodesLnsFieldNumber
@ kUseRelocateAndMakeActiveFieldNumber
@ kUseExchangeAndMakeActiveFieldNumber
@ kUseSwapActiveFieldNumber
@ kUseMakeChainInactiveFieldNumber
@ kUseCrossExchangeFieldNumber
@ kUseExchangeSubtripFieldNumber
@ kUseExchangePathStartEndsAndMakeActiveFieldNumber
@ kUseSwapActiveChainFieldNumber
@ kUseRelocateExpensiveChainFieldNumber
@ kUseMakeInactiveFieldNumber
@ kUseMakeActiveFieldNumber
@ kUseRelocateSubtripFieldNumber
@ kUseGlobalCheapestInsertionPathLnsFieldNumber
@ kUseLightRelocatePairFieldNumber
@ kUseNodePairSwapActiveFieldNumber
@ kUseLinKernighanFieldNumber
@ kUseExtendedSwapActiveFieldNumber
@ kUseExchangePairFieldNumber
@ kUseInactiveLnsFieldNumber
@ kUseGlobalCheapestInsertionExpensiveChainLnsFieldNumber
@ kUseShortestPathTwoOptFieldNumber
@ kUseLocalCheapestInsertionExpensiveChainLnsFieldNumber
@ kUseShortestPathSwapActiveFieldNumber
@ kUseRelocatePathGlobalCheapestInsertionInsertUnperformedFieldNumber
@ kUseRelocateNeighborsFieldNumber
@ kUseLocalCheapestInsertionPathLnsFieldNumber
@ kUseGlobalCheapestInsertionCloseNodesLnsFieldNumber
@ kUseExchangeFieldNumber
void set_use_swap_active_chain(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_relocate_subtrip() const
::operations_research::OptionalBoolean use_exchange_and_make_active() const
::operations_research::OptionalBoolean use_local_cheapest_insertion_close_nodes_lns() const
void clear_use_relocate()
.operations_research.OptionalBoolean use_relocate = 1;
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::operations_research::OptionalBoolean use_shortest_path_swap_active() const
void set_use_exchange_path_start_ends_and_make_active(::operations_research::OptionalBoolean value)
void set_use_inactive_lns(::operations_research::OptionalBoolean value)
void clear_use_relocate_pair()
.operations_research.OptionalBoolean use_relocate_pair = 2;
::operations_research::OptionalBoolean use_cross() const
void clear_use_local_cheapest_insertion_path_lns()
.operations_research.OptionalBoolean use_local_cheapest_insertion_path_lns = 28;
RoutingSearchParameters_LocalSearchNeighborhoodOperators(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
void clear_use_exchange_and_make_active()
.operations_research.OptionalBoolean use_exchange_and_make_active = 37;
::operations_research::OptionalBoolean use_node_pair_swap_active() const
void set_use_exchange_pair(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_global_cheapest_insertion_expensive_chain_lns() const
void clear_use_exchange_subtrip()
.operations_research.OptionalBoolean use_exchange_subtrip = 26;
void clear_use_relocate_expensive_chain()
.operations_research.OptionalBoolean use_relocate_expensive_chain = 23;
void set_use_relocate_and_make_active(::operations_research::OptionalBoolean value)
void set_use_two_opt(::operations_research::OptionalBoolean value)
void clear_use_tsp_lns()
.operations_research.OptionalBoolean use_tsp_lns = 18;
::operations_research::OptionalBoolean use_make_chain_inactive() const
void clear_use_exchange_path_start_ends_and_make_active()
.operations_research.OptionalBoolean use_exchange_path_start_ends_and_make_active = 38;
::operations_research::OptionalBoolean use_relocate_neighbors() const
void set_use_path_lns(::operations_research::OptionalBoolean value)
void set_use_extended_swap_active(::operations_research::OptionalBoolean value)
void clear_use_global_cheapest_insertion_close_nodes_lns()
.operations_research.OptionalBoolean use_global_cheapest_insertion_close_nodes_lns = 31;
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void clear_use_relocate_path_global_cheapest_insertion_insert_unperformed()
.operations_research.OptionalBoolean use_relocate_path_global_cheapest_insertion_insert_unperformed =...
bool IsInitialized() const
void clear_use_relocate_and_make_active()
.operations_research.OptionalBoolean use_relocate_and_make_active = 21;
void set_use_make_inactive(::operations_research::OptionalBoolean value)
void set_use_relocate_pair(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_light_relocate_pair() const
void clear_use_global_cheapest_insertion_path_lns()
.operations_research.OptionalBoolean use_global_cheapest_insertion_path_lns = 27;
void clear_use_exchange()
.operations_research.OptionalBoolean use_exchange = 4;
void clear_use_cross()
.operations_research.OptionalBoolean use_cross = 5;
void set_use_full_path_lns(::operations_research::OptionalBoolean value)
void clear_use_extended_swap_active()
.operations_research.OptionalBoolean use_extended_swap_active = 15;
::operations_research::OptionalBoolean use_lin_kernighan() const
::operations_research::OptionalBoolean use_tsp_opt() const
RoutingSearchParameters_LocalSearchNeighborhoodOperators & operator=(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
void set_use_relocate_expensive_chain(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_relocate() const
void set_use_relocate_neighbors(::operations_research::OptionalBoolean value)
void clear_use_shortest_path_swap_active()
.operations_research.OptionalBoolean use_shortest_path_swap_active = 34;
void set_use_cross_exchange(::operations_research::OptionalBoolean value)
void clear_use_local_cheapest_insertion_expensive_chain_lns()
.operations_research.OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns = 30;
void set_use_exchange_and_make_active(::operations_research::OptionalBoolean value)
void clear_use_lin_kernighan()
.operations_research.OptionalBoolean use_lin_kernighan = 9;
::operations_research::OptionalBoolean use_local_cheapest_insertion_expensive_chain_lns() const
::operations_research::OptionalBoolean use_inactive_lns() const
::operations_research::OptionalBoolean use_exchange_path_start_ends_and_make_active() const
void set_use_shortest_path_two_opt(::operations_research::OptionalBoolean value)
void set_use_swap_active(::operations_research::OptionalBoolean value)
void clear_use_swap_active()
.operations_research.OptionalBoolean use_swap_active = 14;
void clear_use_light_relocate_pair()
.operations_research.OptionalBoolean use_light_relocate_pair = 24;
void set_use_exchange(::operations_research::OptionalBoolean value)
void set_use_cross(::operations_research::OptionalBoolean value)
RoutingSearchParameters_LocalSearchNeighborhoodOperators(::google::protobuf::Arena *PROTOBUF_NULLABLE arena, RoutingSearchParameters_LocalSearchNeighborhoodOperators &&from) noexcept
void set_use_relocate_path_global_cheapest_insertion_insert_unperformed(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_exchange_subtrip() const
void set_use_light_relocate_pair(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_relocate_expensive_chain() const
void clear_use_path_lns()
.operations_research.OptionalBoolean use_path_lns = 16;
void clear_use_make_active()
.operations_research.OptionalBoolean use_make_active = 11;
PROTOBUF_CONSTEXPR RoutingSearchParameters_LocalSearchNeighborhoodOperators(::google::protobuf::internal::ConstantInitialized)
void clear_use_or_opt()
.operations_research.OptionalBoolean use_or_opt = 8;
void clear_use_inactive_lns()
.operations_research.OptionalBoolean use_inactive_lns = 19;
::operations_research::OptionalBoolean use_two_opt() const
void clear_use_swap_active_chain()
.operations_research.OptionalBoolean use_swap_active_chain = 35;
void clear_use_shortest_path_two_opt()
.operations_research.OptionalBoolean use_shortest_path_two_opt = 36;
void set_use_tsp_opt(::operations_research::OptionalBoolean value)
void clear_use_full_path_lns()
.operations_research.OptionalBoolean use_full_path_lns = 17;
::operations_research::OptionalBoolean use_global_cheapest_insertion_path_lns() const
::operations_research::OptionalBoolean use_make_active() const
void CopyFrom(const RoutingSearchParameters_LocalSearchNeighborhoodOperators &from)
void set_use_relocate_subtrip(::operations_research::OptionalBoolean value)
void set_use_shortest_path_swap_active(::operations_research::OptionalBoolean value)
void set_use_node_pair_swap_active(::operations_research::OptionalBoolean value)
void Swap(RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NONNULL other)
void clear_use_make_inactive()
.operations_research.OptionalBoolean use_make_inactive = 12;
void clear_use_local_cheapest_insertion_close_nodes_lns()
.operations_research.OptionalBoolean use_local_cheapest_insertion_close_nodes_lns = 32;
::operations_research::OptionalBoolean use_relocate_and_make_active() const
::operations_research::OptionalBoolean use_swap_active() const
::operations_research::OptionalBoolean use_make_inactive() const
void clear_use_cross_exchange()
.operations_research.OptionalBoolean use_cross_exchange = 6;
void clear_use_two_opt()
.operations_research.OptionalBoolean use_two_opt = 7;
void set_use_local_cheapest_insertion_expensive_chain_lns(::operations_research::OptionalBoolean value)
void set_use_lin_kernighan(::operations_research::OptionalBoolean value)
void set_use_make_active(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_exchange_pair() const
::operations_research::OptionalBoolean use_exchange() const
::operations_research::OptionalBoolean use_tsp_lns() const
::operations_research::OptionalBoolean use_global_cheapest_insertion_close_nodes_lns() const
::operations_research::OptionalBoolean use_path_lns() const
void clear_use_tsp_opt()
.operations_research.OptionalBoolean use_tsp_opt = 10;
void set_use_relocate(::operations_research::OptionalBoolean value)
RoutingSearchParameters_LocalSearchNeighborhoodOperators()
void set_use_exchange_subtrip(::operations_research::OptionalBoolean value)
::operations_research::OptionalBoolean use_or_opt() const
::operations_research::OptionalBoolean use_cross_exchange() const
::operations_research::OptionalBoolean use_extended_swap_active() const
::operations_research::OptionalBoolean use_local_cheapest_insertion_path_lns() const
void set_use_global_cheapest_insertion_path_lns(::operations_research::OptionalBoolean value)
void clear_use_make_chain_inactive()
.operations_research.OptionalBoolean use_make_chain_inactive = 13;
::operations_research::OptionalBoolean use_swap_active_chain() const
void set_use_make_chain_inactive(::operations_research::OptionalBoolean value)
void set_use_global_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
void clear_use_relocate_subtrip()
.operations_research.OptionalBoolean use_relocate_subtrip = 25;
void set_use_local_cheapest_insertion_close_nodes_lns(::operations_research::OptionalBoolean value)
void set_use_tsp_lns(::operations_research::OptionalBoolean value)
void CopyFrom(const RoutingSearchParameters &from)
void set_use_cp_sat(::operations_research::OptionalBoolean value)
void clear_cheapest_insertion_first_solution_neighbors_ratio()
double cheapest_insertion_first_solution_neighbors_ratio = 21;
static constexpr PairInsertionStrategy PairInsertionStrategy_MIN
void clear_optimization_step()
double optimization_step = 7;
bool use_iterated_local_search() const
const ::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators & local_search_operators() const
void unsafe_arena_set_allocated_sat_parameters(::operations_research::sat::SatParameters *PROTOBUF_NULLABLE value)
::operations_research::RoutingSearchParameters_PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy() const
void set_ls_operator_neighbors_ratio(double value)
::int32_t first_solution_optimization_period() const
bool guided_local_search_penalize_with_vehicle_classes() const
RoutingSearchParameters & operator=(const RoutingSearchParameters &from)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SchedulingSolver_descriptor()
bool use_depth_first_search() const
void set_allocated_improvement_limit_parameters(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NULLABLE value)
void set_local_search_metaheuristics(int index, ::operations_research::LocalSearchMetaheuristic_Value value)
void set_report_intermediate_cp_sat_solutions(bool value)
static constexpr SchedulingSolver SCHEDULING_GLOP
void set_optimization_step(double value)
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NULLABLE unsafe_arena_release_local_search_operators()
bool savings_add_reverse_arcs() const
void set_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization(bool value)
void set_mixed_integer_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
::int32_t heuristic_expensive_chain_lns_num_arcs_to_consider() const
static const ::std::string & PairInsertionStrategy_Name(T value)
void clear_log_search()
bool log_search = 13;
static constexpr SchedulingSolver SchedulingSolver_MIN
void set_first_solution_strategy(::operations_research::FirstSolutionStrategy_Value value)
void set_use_iterated_local_search(bool value)
void unsafe_arena_set_allocated_time_limit(::google::protobuf::Duration *PROTOBUF_NULLABLE value)
bool use_multi_armed_bandit_concatenate_operators() const
void set_max_swap_active_chain_size(::int32_t value)
void clear_multi_armed_bandit_compound_operator_memory_coefficient()
double multi_armed_bandit_compound_operator_memory_coefficient = 42;
::operations_research::sat::SatParameters *PROTOBUF_NONNULL mutable_sat_parameters()
RoutingSearchParameters_LocalSearchNeighborhoodOperators LocalSearchNeighborhoodOperators
nested types -------------------------------------------------—
::operations_research::sat::SatParameters *PROTOBUF_NULLABLE unsafe_arena_release_sat_parameters()
::google::protobuf::RepeatedField< int > *PROTOBUF_NONNULL mutable_local_cheapest_insertion_sorting_properties()
void clear_local_search_metaheuristic()
.operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
void set_ls_operator_min_neighbors(::int32_t value)
::google::protobuf::Duration *PROTOBUF_NULLABLE release_lns_time_limit()
const ::operations_research::sat::SatParameters & sat_parameters() const
void clear_use_generalized_cp_sat()
.operations_research.OptionalBoolean use_generalized_cp_sat = 47;
::int32_t fallback_to_cp_sat_size_threshold() const
double savings_max_memory_usage_bytes() const
void clear_number_of_solutions_to_collect()
int32 number_of_solutions_to_collect = 17;
void clear_cheapest_insertion_ls_operator_min_neighbors()
int32 cheapest_insertion_ls_operator_min_neighbors = 45;
void clear_guided_local_search_reset_penalties_on_new_best_solution()
bool guided_local_search_reset_penalties_on_new_best_solution = 51;
void unsafe_arena_set_allocated_improvement_limit_parameters(::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NULLABLE value)
double savings_arc_coefficient() const
static constexpr InsertionSortingProperty SORTING_PROPERTY_LOWEST_MIN_ARC_COST_TO_VEHICLE_START_ENDS
void clear_cheapest_insertion_farthest_seeds_ratio()
double cheapest_insertion_farthest_seeds_ratio = 16;
bool use_guided_local_search_penalties_in_local_search_operators() const
double log_cost_offset() const
void clear_local_cheapest_insertion_pickup_delivery_strategy()
.operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_de...
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
void set_cheapest_insertion_ls_operator_min_neighbors(::int32_t value)
bool has_iterated_local_search_parameters() const
.operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
void set_guided_local_search_lambda_coefficient(double value)
RoutingSearchParameters()
void clear_use_guided_local_search_penalties_in_local_search_operators()
bool use_guided_local_search_penalties_in_local_search_operators = 62;
::int32_t relocate_expensive_chain_num_arcs_to_consider() const
bool has_sat_parameters() const
.operations_research.sat.SatParameters sat_parameters = 48;
void set_local_cheapest_cost_insertion_pickup_delivery_strategy(::operations_research::RoutingSearchParameters_PairInsertionStrategy value)
void clear_cheapest_insertion_first_solution_min_neighbors()
int32 cheapest_insertion_first_solution_min_neighbors = 44;
::operations_research::RoutingSearchParameters_InsertionSortingProperty local_cheapest_insertion_sorting_properties(int index) const
void clear_disable_scheduling_beware_this_may_degrade_performance()
bool cheapest_insertion_add_unperformed_entries() const
void clear_cheapest_insertion_ls_operator_neighbors_ratio()
double cheapest_insertion_ls_operator_neighbors_ratio = 31;
double log_cost_scaling_factor() const
::google::protobuf::Duration *PROTOBUF_NULLABLE release_time_limit()
static constexpr PairInsertionStrategy BEST_PICKUP_DELIVERY_PAIR_MULTITOUR
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
double secondary_ls_time_limit_ratio() const
void set_use_unfiltered_first_solution_strategy(bool value)
void set_allocated_log_tag(::std::string *PROTOBUF_NULLABLE value)
void set_local_cheapest_insertion_pickup_delivery_strategy(::operations_research::RoutingSearchParameters_PairInsertionStrategy value)
void set_guided_local_search_penalize_with_vehicle_classes(bool value)
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NULLABLE release_local_search_operators()
static constexpr InsertionSortingProperty SORTING_PROPERTY_UNSPECIFIED
RoutingSearchParameters_ImprovementSearchLimitParameters ImprovementSearchLimitParameters
void clear_log_cost_offset()
double log_cost_offset = 29;
void clear_savings_neighbors_ratio()
double savings_neighbors_ratio = 14;
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::LocalSearchMetaheuristic_Value local_search_metaheuristic() const
void set_use_guided_local_search_penalties_in_local_search_operators(bool value)
void clear_report_intermediate_cp_sat_solutions()
bool report_intermediate_cp_sat_solutions = 56;
void set_allocated_lns_time_limit(::google::protobuf::Duration *PROTOBUF_NULLABLE value)
RoutingSearchParameters_SchedulingSolver SchedulingSolver
const ::google::protobuf::Duration & time_limit() const
void set_continuous_scheduling_solver(::operations_research::RoutingSearchParameters_SchedulingSolver value)
void set_log_tag(Arg_ &&arg, Args_... args)
static constexpr InsertionSortingProperty SORTING_PROPERTY_ALLOWED_VEHICLES
void set_savings_arc_coefficient(double value)
::operations_research::OptionalBoolean use_cp_sat() const
void set_cheapest_insertion_first_solution_neighbors_ratio(double value)
void clear_max_swap_active_chain_size()
int32 max_swap_active_chain_size = 66;
::google::protobuf::RepeatedField< int > *PROTOBUF_NONNULL mutable_local_search_metaheuristics()
::int32_t max_swap_active_chain_size() const
double multi_armed_bandit_compound_operator_exploration_coefficient() const
static constexpr PairInsertionStrategy BEST_PICKUP_THEN_BEST_DELIVERY
static constexpr InsertionSortingProperty SORTING_PROPERTY_PENALTY
bool use_full_propagation() const
double cheapest_insertion_farthest_seeds_ratio() const
double savings_neighbors_ratio() const
void unsafe_arena_set_allocated_iterated_local_search_parameters(::operations_research::IteratedLocalSearchParameters *PROTOBUF_NULLABLE value)
bool report_intermediate_cp_sat_solutions() const
void clear_savings_add_reverse_arcs()
bool savings_add_reverse_arcs = 15;
void set_local_search_metaheuristic(::operations_research::LocalSearchMetaheuristic_Value value)
void clear_ls_operator_neighbors_ratio()
double ls_operator_neighbors_ratio = 53;
void clear_local_search_operators()
void set_heuristic_expensive_chain_lns_num_arcs_to_consider(::int32_t value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL PairInsertionStrategy_descriptor()
static constexpr PairInsertionStrategy BEST_PICKUP_DELIVERY_PAIR
::int32_t heuristic_close_nodes_lns_num_nodes() const
::google::protobuf::Metadata GetMetadata() const
void clear_ls_operator_min_neighbors()
int32 ls_operator_min_neighbors = 54;
void clear_use_unfiltered_first_solution_strategy()
bool use_unfiltered_first_solution_strategy = 2;
static constexpr SchedulingSolver SchedulingSolver_MAX
void set_use_multi_armed_bandit_concatenate_operators(bool value)
void set_allocated_time_limit(::google::protobuf::Duration *PROTOBUF_NULLABLE value)
::operations_research::LocalSearchMetaheuristic_Value local_search_metaheuristics(int index) const
void set_disable_scheduling_beware_this_may_degrade_performance(bool value)
::google::protobuf::Duration *PROTOBUF_NONNULL mutable_lns_time_limit()
void clear_sat_parameters()
::operations_research::RoutingSearchParameters_SchedulingSolver mixed_integer_scheduling_solver() const
static bool PairInsertionStrategy_IsValid(int value)
::operations_research::sat::SatParameters *PROTOBUF_NULLABLE release_sat_parameters()
double cheapest_insertion_first_solution_neighbors_ratio() const
const ::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters & improvement_limit_parameters() const
static constexpr InsertionSortingProperty SORTING_PROPERTY_PENALTY_OVER_ALLOWED_VEHICLES_RATIO
static const ::std::string & InsertionSortingProperty_Name(T value)
RoutingSearchParameters_PairInsertionStrategy PairInsertionStrategy
void clear_local_cheapest_insertion_sorting_properties()
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NONNULL mutable_improvement_limit_parameters()
const ::google::protobuf::RepeatedField< int > & local_search_metaheuristics() const
static constexpr auto InternalNewImpl_()
::std::string *PROTOBUF_NULLABLE release_log_tag()
void set_cheapest_insertion_add_unperformed_entries(bool value)
void clear_use_depth_first_search()
bool use_depth_first_search = 6;
void clear_cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization()
bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization = 46;
static bool InsertionSortingProperty_IsValid(int value)
void clear_iterated_local_search_parameters()
static constexpr InsertionSortingProperty SORTING_PROPERTY_HIGHEST_DIMENSION_USAGE
static constexpr InsertionSortingProperty SORTING_PROPERTY_RANDOM
void MergeFrom(const RoutingSearchParameters &from)
static constexpr PairInsertionStrategy PairInsertionStrategy_MAX
void clear_num_max_local_optima_before_metaheuristic_switch()
int32 num_max_local_optima_before_metaheuristic_switch = 64;
::size_t ByteSizeLong() const final
void unsafe_arena_set_allocated_lns_time_limit(::google::protobuf::Duration *PROTOBUF_NULLABLE value)
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NULLABLE unsafe_arena_release_improvement_limit_parameters()
void set_relocate_expensive_chain_num_arcs_to_consider(::int32_t value)
void clear_relocate_expensive_chain_num_arcs_to_consider()
int32 relocate_expensive_chain_num_arcs_to_consider = 20;
::google::protobuf::Duration *PROTOBUF_NULLABLE unsafe_arena_release_time_limit()
const ::operations_research::IteratedLocalSearchParameters & iterated_local_search_parameters() const
void set_guided_local_search_reset_penalties_on_new_best_solution(bool value)
::int64_t solution_limit() const
void set_savings_max_memory_usage_bytes(double value)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void set_secondary_ls_time_limit_ratio(double value)
static bool SchedulingSolver_IsValid(int value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL InsertionSortingProperty_descriptor()
void set_heuristic_close_nodes_lns_num_nodes(::int32_t value)
int local_cheapest_insertion_sorting_properties_size() const
repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_inserti...
bool has_disable_scheduling_beware_this_may_degrade_performance() const
optional bool disable_scheduling_beware_this_may_degrade_performance = 50;
bool disable_scheduling_beware_this_may_degrade_performance() const
void clear_use_multi_armed_bandit_concatenate_operators()
bool use_multi_armed_bandit_concatenate_operators = 41;
void clear_solution_limit()
int64 solution_limit = 8;
bool has_time_limit() const
.google.protobuf.Duration time_limit = 9;
void clear_christofides_use_minimum_matching()
bool christofides_use_minimum_matching = 30;
void clear_savings_arc_coefficient()
double savings_arc_coefficient = 18;
::int32_t ls_operator_min_neighbors() const
static constexpr PairInsertionStrategy AUTOMATIC
static constexpr InsertionSortingProperty InsertionSortingProperty_MAX
void set_christofides_use_minimum_matching(bool value)
void clear_guided_local_search_penalize_with_vehicle_classes()
bool guided_local_search_penalize_with_vehicle_classes = 61;
RoutingSearchParameters_InsertionSortingProperty InsertionSortingProperty
void clear_log_cost_scaling_factor()
double log_cost_scaling_factor = 22;
void clear_local_search_metaheuristics()
void set_log_search(bool value)
void set_allocated_iterated_local_search_parameters(::operations_research::IteratedLocalSearchParameters *PROTOBUF_NULLABLE value)
int local_search_metaheuristics_size() const
repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NONNULL mutable_local_search_operators()
void clear_secondary_ls_time_limit_ratio()
double secondary_ls_time_limit_ratio = 57;
bool use_unfiltered_first_solution_strategy() const
void clear_fallback_to_cp_sat_size_threshold()
int32 fallback_to_cp_sat_size_threshold = 52;
::int32_t cheapest_insertion_ls_operator_min_neighbors() const
::int32_t number_of_solutions_to_collect() const
RoutingSearchParameters *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
void set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NULLABLE value)
void set_cheapest_insertion_ls_operator_neighbors_ratio(double value)
static constexpr SchedulingSolver SCHEDULING_UNSET
::operations_research::RoutingSearchParameters_SchedulingSolver continuous_scheduling_solver() const
double multi_armed_bandit_compound_operator_memory_coefficient() const
void clear_guided_local_search_lambda_coefficient()
double guided_local_search_lambda_coefficient = 5;
void set_first_solution_optimization_period(::int32_t value)
::operations_research::OptionalBoolean use_cp() const
void clear_heuristic_close_nodes_lns_num_nodes()
int32 heuristic_close_nodes_lns_num_nodes = 35;
::operations_research::OptionalBoolean use_generalized_cp_sat() const
bool has_improvement_limit_parameters() const
.operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_param...
void set_log_cost_scaling_factor(double value)
bool has_lns_time_limit() const
.google.protobuf.Duration lns_time_limit = 10;
void clear_log_tag()
string log_tag = 36;
::int32_t num_max_local_optima_before_metaheuristic_switch() const
void clear_cheapest_insertion_add_unperformed_entries()
bool cheapest_insertion_add_unperformed_entries = 40;
const ::std::string & log_tag() const
bool has_local_search_operators() const
.operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators ...
bool christofides_use_minimum_matching() const
static constexpr auto InternalGenerateClassData_()
void set_num_max_local_optima_before_metaheuristic_switch(::int32_t value)
bool guided_local_search_reset_penalties_on_new_best_solution() const
static constexpr InsertionSortingProperty SORTING_PROPERTY_LOWEST_AVG_ARC_COST_TO_VEHICLE_START_ENDS
void clear_multi_armed_bandit_compound_operator_exploration_coefficient()
double multi_armed_bandit_compound_operator_exploration_coefficient = 43;
void set_use_depth_first_search(bool value)
void clear_improvement_limit_parameters()
@ kUseGuidedLocalSearchPenaltiesInLocalSearchOperatorsFieldNumber
@ kLocalSearchOperatorsFieldNumber
@ kLsOperatorNeighborsRatioFieldNumber
@ kFirstSolutionOptimizationPeriodFieldNumber
@ kGuidedLocalSearchResetPenaltiesOnNewBestSolutionFieldNumber
@ kMixedIntegerSchedulingSolverFieldNumber
@ kMultiArmedBanditCompoundOperatorExplorationCoefficientFieldNumber
@ kNumMaxLocalOptimaBeforeMetaheuristicSwitchFieldNumber
@ kCheapestInsertionLsOperatorMinNeighborsFieldNumber
@ kUseGeneralizedCpSatFieldNumber
@ kOptimizationStepFieldNumber
@ kGuidedLocalSearchPenalizeWithVehicleClassesFieldNumber
@ kSavingsArcCoefficientFieldNumber
@ kHeuristicCloseNodesLnsNumNodesFieldNumber
@ kIteratedLocalSearchParametersFieldNumber
@ kLocalCheapestInsertionPickupDeliveryStrategyFieldNumber
@ kCheapestInsertionAddUnperformedEntriesFieldNumber
@ kChristofidesUseMinimumMatchingFieldNumber
@ kUseFullPropagationFieldNumber
@ kCheapestInsertionFarthestSeedsRatioFieldNumber
@ kReportIntermediateCpSatSolutionsFieldNumber
@ kUseMultiArmedBanditConcatenateOperatorsFieldNumber
@ kNumberOfSolutionsToCollectFieldNumber
@ kLocalCheapestCostInsertionPickupDeliveryStrategyFieldNumber
@ kSavingsNeighborsRatioFieldNumber
@ kUseDepthFirstSearchFieldNumber
@ kCheapestInsertionFirstSolutionNeighborsRatioFieldNumber
@ kContinuousSchedulingSolverFieldNumber
@ kCheapestInsertionFirstSolutionUseNeighborsRatioForInitializationFieldNumber
@ kFirstSolutionStrategyFieldNumber
@ kSolutionLimitFieldNumber
@ kMaxSwapActiveChainSizeFieldNumber
@ kCheapestInsertionFirstSolutionMinNeighborsFieldNumber
@ kGuidedLocalSearchLambdaCoefficientFieldNumber
@ kSatParametersFieldNumber
@ kUseUnfilteredFirstSolutionStrategyFieldNumber
@ kCheapestInsertionLsOperatorNeighborsRatioFieldNumber
@ kLocalSearchMetaheuristicFieldNumber
@ kImprovementLimitParametersFieldNumber
@ kDisableSchedulingBewareThisMayDegradePerformanceFieldNumber
@ kLogCostOffsetFieldNumber
@ kUseIteratedLocalSearchFieldNumber
@ kFallbackToCpSatSizeThresholdFieldNumber
@ kLsOperatorMinNeighborsFieldNumber
@ kSavingsMaxMemoryUsageBytesFieldNumber
@ kSavingsAddReverseArcsFieldNumber
@ kHeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber
@ kLnsTimeLimitFieldNumber
@ kSecondaryLsTimeLimitRatioFieldNumber
@ kLocalCheapestInsertionSortingPropertiesFieldNumber
@ kRelocateExpensiveChainNumArcsToConsiderFieldNumber
@ kLogCostScalingFactorFieldNumber
@ kLocalSearchMetaheuristicsFieldNumber
@ kMultiArmedBanditCompoundOperatorMemoryCoefficientFieldNumber
void clear_continuous_scheduling_solver()
.operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
void Swap(RoutingSearchParameters *PROTOBUF_NONNULL other)
void clear_heuristic_expensive_chain_lns_num_arcs_to_consider()
int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
::operations_research::IteratedLocalSearchParameters *PROTOBUF_NULLABLE release_iterated_local_search_parameters()
void set_savings_add_reverse_arcs(bool value)
::operations_research::IteratedLocalSearchParameters *PROTOBUF_NONNULL mutable_iterated_local_search_parameters()
::operations_research::IteratedLocalSearchParameters *PROTOBUF_NULLABLE unsafe_arena_release_iterated_local_search_parameters()
void clear_local_cheapest_cost_insertion_pickup_delivery_strategy()
.operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pick...
void set_cheapest_insertion_farthest_seeds_ratio(double value)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static constexpr int SchedulingSolver_ARRAYSIZE
double guided_local_search_lambda_coefficient() const
double optimization_step() const
::google::protobuf::Duration *PROTOBUF_NULLABLE unsafe_arena_release_lns_time_limit()
bool IsInitialized() const
void set_number_of_solutions_to_collect(::int32_t value)
const ::google::protobuf::RepeatedField< int > & local_cheapest_insertion_sorting_properties() const
void clear_use_cp()
.operations_research.OptionalBoolean use_cp = 28;
::int32_t cheapest_insertion_first_solution_min_neighbors() const
::google::protobuf::Duration *PROTOBUF_NONNULL mutable_time_limit()
double cheapest_insertion_ls_operator_neighbors_ratio() const
void set_multi_armed_bandit_compound_operator_memory_coefficient(double value)
double ls_operator_neighbors_ratio() const
::operations_research::RoutingSearchParameters_PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy() const
static constexpr SchedulingSolver SCHEDULING_CP_SAT
void clear_lns_time_limit()
static constexpr int InsertionSortingProperty_ARRAYSIZE
friend void swap(RoutingSearchParameters &a, RoutingSearchParameters &b)
void set_multi_armed_bandit_compound_operator_exploration_coefficient(double value)
void clear_use_full_propagation()
bool use_full_propagation = 11;
static constexpr InsertionSortingProperty InsertionSortingProperty_MIN
void clear_use_iterated_local_search()
bool use_iterated_local_search = 58;
::std::string *PROTOBUF_NONNULL mutable_log_tag()
void clear_first_solution_strategy()
.operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
void set_fallback_to_cp_sat_size_threshold(::int32_t value)
void clear_mixed_integer_scheduling_solver()
.operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
static constexpr InsertionSortingProperty SORTING_PROPERTY_HIGHEST_AVG_ARC_COST_TO_VEHICLE_START_ENDS
void add_local_search_metaheuristics(::operations_research::LocalSearchMetaheuristic_Value value)
void set_log_cost_offset(double value)
void set_allocated_sat_parameters(::operations_research::sat::SatParameters *PROTOBUF_NULLABLE value)
static constexpr int PairInsertionStrategy_ARRAYSIZE
void set_use_cp(::operations_research::OptionalBoolean value)
void set_cheapest_insertion_first_solution_min_neighbors(::int32_t value)
void set_local_cheapest_insertion_sorting_properties(int index, ::operations_research::RoutingSearchParameters_InsertionSortingProperty value)
void unsafe_arena_set_allocated_local_search_operators(::operations_research::RoutingSearchParameters_LocalSearchNeighborhoodOperators *PROTOBUF_NULLABLE value)
void set_use_full_propagation(bool value)
bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization() const
::operations_research::FirstSolutionStrategy_Value first_solution_strategy() const
::operations_research::RoutingSearchParameters_ImprovementSearchLimitParameters *PROTOBUF_NULLABLE release_improvement_limit_parameters()
void clear_use_cp_sat()
.operations_research.OptionalBoolean use_cp_sat = 27;
void set_use_generalized_cp_sat(::operations_research::OptionalBoolean value)
friend class ::google::protobuf::Arena
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
void set_solution_limit(::int64_t value)
void clear_savings_max_memory_usage_bytes()
double savings_max_memory_usage_bytes = 23;
const ::google::protobuf::Duration & lns_time_limit() const
void set_savings_neighbors_ratio(double value)
void clear_first_solution_optimization_period()
int32 first_solution_optimization_period = 59;
static const ::std::string & SchedulingSolver_Name(T value)
void add_local_cheapest_insertion_sorting_properties(::operations_research::RoutingSearchParameters_InsertionSortingProperty value)
::absl::string_view GetAnyMessageName()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::RoutingSearchParameters_PairInsertionStrategy >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::RoutingSearchParameters_InsertionSortingProperty >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::RoutingSearchParameters_SchedulingSolver >()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SatParametersDefaultTypeInternal _SatParameters_default_instance_
In SWIG mode, we don't want anything besides these top-level includes.
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RoutingSearchParameters_InsertionSortingProperty_descriptor()
constexpr int RoutingSearchParameters_PairInsertionStrategy_PairInsertionStrategy_ARRAYSIZE
RoutingSearchParameters_InsertionSortingProperty
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_RANDOM
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_ALLOWED_VEHICLES
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_LOWEST_AVG_ARC_COST_TO_VEHICLE_START_ENDS
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_HIGHEST_AVG_ARC_COST_TO_VEHICLE_START_ENDS
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_PENALTY_OVER_ALLOWED_VEHICLES_RATIO
@ RoutingSearchParameters_InsertionSortingProperty_RoutingSearchParameters_InsertionSortingProperty_INT_MAX_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_PENALTY
@ RoutingSearchParameters_InsertionSortingProperty_RoutingSearchParameters_InsertionSortingProperty_INT_MIN_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_LOWEST_MIN_ARC_COST_TO_VEHICLE_START_ENDS
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_HIGHEST_DIMENSION_USAGE
@ RoutingSearchParameters_InsertionSortingProperty_SORTING_PROPERTY_UNSPECIFIED
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RoutingModelParameters_class_data_
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MIN
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RoutingSearchParameters_LocalSearchNeighborhoodOperatorsDefaultTypeInternal _RoutingSearchParameters_LocalSearchNeighborhoodOperators_default_instance_
constexpr RoutingSearchParameters_InsertionSortingProperty RoutingSearchParameters_InsertionSortingProperty_InsertionSortingProperty_MIN
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IteratedLocalSearchParametersDefaultTypeInternal _IteratedLocalSearchParameters_default_instance_
PROTOBUF_CONSTINIT const uint32_t RoutingSearchParameters_SchedulingSolver_internal_data_[]
constexpr RoutingSearchParameters_PairInsertionStrategy RoutingSearchParameters_PairInsertionStrategy_PairInsertionStrategy_MIN
PROTOBUF_CONSTINIT const uint32_t RoutingSearchParameters_InsertionSortingProperty_internal_data_[]
bool RoutingSearchParameters_SchedulingSolver_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ConstraintSolverParametersDefaultTypeInternal _ConstraintSolverParameters_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RoutingSearchParameters_PairInsertionStrategy_descriptor()
constexpr int RoutingSearchParameters_SchedulingSolver_SchedulingSolver_ARRAYSIZE
RoutingSearchParameters_SchedulingSolver
@ RoutingSearchParameters_SchedulingSolver_SCHEDULING_GLOP
@ RoutingSearchParameters_SchedulingSolver_SCHEDULING_CP_SAT
@ RoutingSearchParameters_SchedulingSolver_SCHEDULING_UNSET
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MIN_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_SchedulingSolver_RoutingSearchParameters_SchedulingSolver_INT_MAX_SENTINEL_DO_NOT_USE_
LocalSearchMetaheuristic_Value
bool RoutingSearchParameters_PairInsertionStrategy_Parse(::absl::string_view name, RoutingSearchParameters_PairInsertionStrategy *PROTOBUF_NONNULL value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RoutingModelParametersDefaultTypeInternal _RoutingModelParameters_default_instance_
bool RoutingSearchParameters_InsertionSortingProperty_IsValid(int value)
bool RoutingSearchParameters_SchedulingSolver_Parse(::absl::string_view name, RoutingSearchParameters_SchedulingSolver *PROTOBUF_NONNULL value)
const ::std::string & RoutingSearchParameters_InsertionSortingProperty_Name(T value)
bool RoutingSearchParameters_PairInsertionStrategy_IsValid(int value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RoutingSearchParameters_SchedulingSolver_descriptor()
bool RoutingSearchParameters_InsertionSortingProperty_Parse(::absl::string_view name, RoutingSearchParameters_InsertionSortingProperty *PROTOBUF_NONNULL value)
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RoutingSearchParameters_ImprovementSearchLimitParameters_class_data_
const ::std::string & RoutingSearchParameters_SchedulingSolver_Name(T value)
constexpr RoutingSearchParameters_InsertionSortingProperty RoutingSearchParameters_InsertionSortingProperty_InsertionSortingProperty_MAX
constexpr RoutingSearchParameters_PairInsertionStrategy RoutingSearchParameters_PairInsertionStrategy_PairInsertionStrategy_MAX
RoutingSearchParameters_PairInsertionStrategy
@ RoutingSearchParameters_PairInsertionStrategy_RoutingSearchParameters_PairInsertionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_PairInsertionStrategy_BEST_PICKUP_THEN_BEST_DELIVERY
@ RoutingSearchParameters_PairInsertionStrategy_BEST_PICKUP_DELIVERY_PAIR_MULTITOUR
@ RoutingSearchParameters_PairInsertionStrategy_BEST_PICKUP_DELIVERY_PAIR
@ RoutingSearchParameters_PairInsertionStrategy_RoutingSearchParameters_PairInsertionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_
@ RoutingSearchParameters_PairInsertionStrategy_AUTOMATIC
PROTOBUF_CONSTINIT const uint32_t RoutingSearchParameters_PairInsertionStrategy_internal_data_[]
constexpr RoutingSearchParameters_SchedulingSolver RoutingSearchParameters_SchedulingSolver_SchedulingSolver_MAX
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RoutingSearchParameters_LocalSearchNeighborhoodOperators_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RoutingSearchParametersDefaultTypeInternal _RoutingSearchParameters_default_instance_
constexpr int RoutingSearchParameters_InsertionSortingProperty_InsertionSortingProperty_ARRAYSIZE
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RoutingSearchParameters_class_data_
FirstSolutionStrategy_Value
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RoutingSearchParameters_ImprovementSearchLimitParametersDefaultTypeInternal _RoutingSearchParameters_ImprovementSearchLimitParameters_default_instance_
const ::std::string & RoutingSearchParameters_PairInsertionStrategy_Name(T value)
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto