4#ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fbop_2fbop_5fparameters_2eproto
5#define GOOGLE_PROTOBUF_INCLUDED_ortools_2fbop_2fbop_5fparameters_2eproto
10#include <google/protobuf/port_def.inc>
11#if PROTOBUF_VERSION < 3018000
12#error This file was generated by a newer version of protoc which is
13#error incompatible with your Protocol Buffer headers. Please update
16#if 3018000 < PROTOBUF_MIN_PROTOC_VERSION
17#error This file was generated by an older version of protoc which is
18#error incompatible with your Protocol Buffer headers. Please
19#error regenerate this file with a newer version of protoc.
22#include <google/protobuf/port_undef.inc>
23#include <google/protobuf/io/coded_stream.h>
24#include <google/protobuf/arena.h>
25#include <google/protobuf/arenastring.h>
26#include <google/protobuf/generated_message_table_driven.h>
27#include <google/protobuf/generated_message_util.h>
28#include <google/protobuf/metadata_lite.h>
29#include <google/protobuf/generated_message_reflection.h>
30#include <google/protobuf/message.h>
31#include <google/protobuf/repeated_field.h>
32#include <google/protobuf/extension_set.h>
33#include <google/protobuf/generated_enum_reflection.h>
34#include <google/protobuf/unknown_field_set.h>
36#include <google/protobuf/port_def.inc>
37#define PROTOBUF_INTERNAL_EXPORT_ortools_2fbop_2fbop_5fparameters_2eproto
38PROTOBUF_NAMESPACE_OPEN
42PROTOBUF_NAMESPACE_CLOSE
46 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
48 static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
50 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3]
52 static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata
field_metadata[];
54 static const ::PROTOBUF_NAMESPACE_ID::uint32
offsets[];
59class BopOptimizerMethod;
60struct BopOptimizerMethodDefaultTypeInternal;
63struct BopParametersDefaultTypeInternal;
65class BopSolverOptimizerSet;
66struct BopSolverOptimizerSetDefaultTypeInternal;
70PROTOBUF_NAMESPACE_OPEN
74PROTOBUF_NAMESPACE_CLOSE
105 "Incorrect type passed to function BopOptimizerMethod_OptimizerType_Name.");
106 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
111 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<BopOptimizerMethod_OptimizerType>(
129 "Incorrect type passed to function BopParameters_ThreadSynchronizationType_Name.");
130 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
135 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<BopParameters_ThreadSynchronizationType>(
141 public ::PROTOBUF_NAMESPACE_ID::Message {
145 explicit constexpr BopOptimizerMethod(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
150 *
this = ::std::move(from);
158 if (
this == &from)
return *
this;
159 if (GetOwningArena() == from.GetOwningArena()
160 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
161 && GetOwningArena() !=
nullptr
172 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
175 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
178 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
201 if (other ==
this)
return;
202 if (GetOwningArena() == other->GetOwningArena()) {
205 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
209 if (other ==
this)
return;
210 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
221 return CreateMaybeMessage<BopOptimizerMethod>(arena);
223 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
225 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
228 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from);
230 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
236 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
242 void SetCachedSize(
int size)
const final;
244 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
245 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
246 return "operations_research.bop.BopOptimizerMethod";
250 bool is_message_owned =
false);
252 static void ArenaDtor(
void*
object);
253 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
257 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*
GetClassData() const final;
259 ::PROTOBUF_NAMESPACE_ID::Metadata
GetMetadata() const final;
303 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
311 "Incorrect type passed to function OptimizerType_Name.");
327 bool _internal_has_type()
const;
341 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
342 typedef void InternalArenaConstructable_;
343 typedef void DestructorSkippable_;
344 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
345 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
347 friend struct ::TableStruct_ortools_2fbop_2fbop_5fparameters_2eproto;
352 public ::PROTOBUF_NAMESPACE_ID::Message {
361 *
this = ::std::move(from);
369 if (
this == &from)
return *
this;
370 if (GetOwningArena() == from.GetOwningArena()
371 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
372 && GetOwningArena() !=
nullptr
383 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
386 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
389 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
412 if (other ==
this)
return;
413 if (GetOwningArena() == other->GetOwningArena()) {
416 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
420 if (other ==
this)
return;
421 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
432 return CreateMaybeMessage<BopSolverOptimizerSet>(arena);
434 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
436 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
439 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from);
441 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
447 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
453 void SetCachedSize(
int size)
const final;
455 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
456 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
457 return "operations_research.bop.BopSolverOptimizerSet";
461 bool is_message_owned =
false);
463 static void ArenaDtor(
void*
object);
464 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
468 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*
GetClassData() const final;
470 ::PROTOBUF_NAMESPACE_ID::Metadata
GetMetadata() const final;
482 int _internal_methods_size()
const;
486 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod >*
489 const ::operations_research::bop::BopOptimizerMethod& _internal_methods(
int index)
const;
492 const ::operations_research::bop::BopOptimizerMethod&
methods(
int index)
const;
494 const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod >&
501 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
502 typedef void InternalArenaConstructable_;
503 typedef void DestructorSkippable_;
504 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod > methods_;
505 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
506 friend struct ::TableStruct_ortools_2fbop_2fbop_5fparameters_2eproto;
511 public ::PROTOBUF_NAMESPACE_ID::Message {
515 explicit constexpr BopParameters(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
520 *
this = ::std::move(from);
528 if (
this == &from)
return *
this;
529 if (GetOwningArena() == from.GetOwningArena()
530 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
531 && GetOwningArena() !=
nullptr
542 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
545 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
548 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
571 if (other ==
this)
return;
572 if (GetOwningArena() == other->GetOwningArena()) {
575 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
579 if (other ==
this)
return;
580 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
591 return CreateMaybeMessage<BopParameters>(arena);
593 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
595 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
598 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from);
600 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
606 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
612 void SetCachedSize(
int size)
const final;
614 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
615 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
616 return "operations_research.bop.BopParameters";
619 explicit BopParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena,
620 bool is_message_owned =
false);
622 static void ArenaDtor(
void*
object);
623 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
627 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*
GetClassData() const final;
629 ::PROTOBUF_NAMESPACE_ID::Metadata
GetMetadata() const final;
649 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
657 "Incorrect type passed to function ThreadSynchronizationType_Name.");
709 int _internal_solver_optimizer_sets_size()
const;
713 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet >*
716 const ::operations_research::bop::BopSolverOptimizerSet& _internal_solver_optimizer_sets(
int index)
const;
721 const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet >&
727 bool _internal_has_default_solver_optimizer_sets()
const;
731 template <
typename ArgT0 =
const std::string&,
typename... ArgT>
737 const std::string& _internal_default_solver_optimizer_sets()
const;
738 inline PROTOBUF_ALWAYS_INLINE
void _internal_set_default_solver_optimizer_sets(
const std::string&
value);
739 std::string* _internal_mutable_default_solver_optimizer_sets();
745 bool _internal_has_log_search_progress()
const;
751 bool _internal_log_search_progress()
const;
752 void _internal_set_log_search_progress(
bool value);
758 bool _internal_has_prune_search_tree()
const;
764 bool _internal_prune_search_tree()
const;
765 void _internal_set_prune_search_tree(
bool value);
771 bool _internal_has_sort_constraints_by_num_terms()
const;
777 bool _internal_sort_constraints_by_num_terms()
const;
778 void _internal_set_sort_constraints_by_num_terms(
bool value);
784 bool _internal_has_use_symmetry()
const;
790 bool _internal_use_symmetry()
const;
791 void _internal_set_use_symmetry(
bool value);
797 bool _internal_has_synchronization_type()
const;
810 bool _internal_has_max_number_of_consecutive_failing_optimizer_calls()
const;
816 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_number_of_consecutive_failing_optimizer_calls()
const;
817 void _internal_set_max_number_of_consecutive_failing_optimizer_calls(::PROTOBUF_NAMESPACE_ID::int32
value);
823 bool _internal_has_exploit_symmetry_in_sat_first_solution()
const;
829 bool _internal_exploit_symmetry_in_sat_first_solution()
const;
830 void _internal_set_exploit_symmetry_in_sat_first_solution(
bool value);
836 bool _internal_has_use_potential_one_flip_repairs_in_ls()
const;
842 bool _internal_use_potential_one_flip_repairs_in_ls()
const;
843 void _internal_set_use_potential_one_flip_repairs_in_ls(
bool value);
849 bool _internal_has_use_lp_strong_branching()
const;
855 bool _internal_use_lp_strong_branching()
const;
856 void _internal_set_use_lp_strong_branching(
bool value);
862 bool _internal_has_decomposed_problem_min_time_in_seconds()
const;
868 double _internal_decomposed_problem_min_time_in_seconds()
const;
869 void _internal_set_decomposed_problem_min_time_in_seconds(
double value);
875 bool _internal_has_max_lp_solve_for_feasibility_problems()
const;
881 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_lp_solve_for_feasibility_problems()
const;
882 void _internal_set_max_lp_solve_for_feasibility_problems(::PROTOBUF_NAMESPACE_ID::int32
value);
888 bool _internal_has_max_time_in_seconds()
const;
894 double _internal_max_time_in_seconds()
const;
895 void _internal_set_max_time_in_seconds(
double value);
901 bool _internal_has_max_num_decisions_in_ls()
const;
907 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_num_decisions_in_ls()
const;
908 void _internal_set_max_num_decisions_in_ls(::PROTOBUF_NAMESPACE_ID::int32
value);
914 bool _internal_has_random_seed()
const;
917 ::PROTOBUF_NAMESPACE_ID::int32
random_seed()
const;
920 ::PROTOBUF_NAMESPACE_ID::int32 _internal_random_seed()
const;
921 void _internal_set_random_seed(::PROTOBUF_NAMESPACE_ID::int32
value);
927 bool _internal_has_num_relaxed_vars()
const;
933 ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_relaxed_vars()
const;
934 void _internal_set_num_relaxed_vars(::PROTOBUF_NAMESPACE_ID::int32
value);
940 bool _internal_has_max_number_of_conflicts_in_random_lns()
const;
946 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_number_of_conflicts_in_random_lns()
const;
947 void _internal_set_max_number_of_conflicts_in_random_lns(::PROTOBUF_NAMESPACE_ID::int32
value);
953 bool _internal_has_compute_estimated_impact()
const;
959 bool _internal_compute_estimated_impact()
const;
960 void _internal_set_compute_estimated_impact(
bool value);
966 bool _internal_has_use_random_lns()
const;
972 bool _internal_use_random_lns()
const;
973 void _internal_set_use_random_lns(
bool value);
979 bool _internal_has_use_lp_lns()
const;
985 bool _internal_use_lp_lns()
const;
986 void _internal_set_use_lp_lns(
bool value);
992 bool _internal_has_use_sat_to_choose_lns_neighbourhood()
const;
998 bool _internal_use_sat_to_choose_lns_neighbourhood()
const;
999 void _internal_set_use_sat_to_choose_lns_neighbourhood(
bool value);
1005 bool _internal_has_num_random_lns_tries()
const;
1011 ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_random_lns_tries()
const;
1012 void _internal_set_num_random_lns_tries(::PROTOBUF_NAMESPACE_ID::int32
value);
1018 bool _internal_has_max_number_of_backtracks_in_ls()
const;
1024 ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_number_of_backtracks_in_ls()
const;
1025 void _internal_set_max_number_of_backtracks_in_ls(::PROTOBUF_NAMESPACE_ID::int64
value);
1031 bool _internal_has_max_number_of_conflicts_for_quick_check()
const;
1037 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_number_of_conflicts_for_quick_check()
const;
1038 void _internal_set_max_number_of_conflicts_for_quick_check(::PROTOBUF_NAMESPACE_ID::int32
value);
1044 bool _internal_has_max_number_of_conflicts_in_random_solution_generation()
const;
1050 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_number_of_conflicts_in_random_solution_generation()
const;
1051 void _internal_set_max_number_of_conflicts_in_random_solution_generation(::PROTOBUF_NAMESPACE_ID::int32
value);
1057 bool _internal_has_max_number_of_explored_assignments_per_try_in_ls()
const;
1063 ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_number_of_explored_assignments_per_try_in_ls()
const;
1064 void _internal_set_max_number_of_explored_assignments_per_try_in_ls(::PROTOBUF_NAMESPACE_ID::int64
value);
1070 bool _internal_has_use_transposition_table_in_ls()
const;
1076 bool _internal_use_transposition_table_in_ls()
const;
1077 void _internal_set_use_transposition_table_in_ls(
bool value);
1083 bool _internal_has_use_learned_binary_clauses_in_lp()
const;
1089 bool _internal_use_learned_binary_clauses_in_lp()
const;
1090 void _internal_set_use_learned_binary_clauses_in_lp(
bool value);
1096 bool _internal_has_number_of_solvers()
const;
1102 ::PROTOBUF_NAMESPACE_ID::int32 _internal_number_of_solvers()
const;
1103 void _internal_set_number_of_solvers(::PROTOBUF_NAMESPACE_ID::int32
value);
1109 bool _internal_has_max_deterministic_time()
const;
1115 double _internal_max_deterministic_time()
const;
1116 void _internal_set_max_deterministic_time(
double value);
1122 bool _internal_has_relative_gap_limit()
const;
1128 double _internal_relative_gap_limit()
const;
1129 void _internal_set_relative_gap_limit(
double value);
1135 bool _internal_has_decomposer_num_variables_threshold()
const;
1141 ::PROTOBUF_NAMESPACE_ID::int32 _internal_decomposer_num_variables_threshold()
const;
1142 void _internal_set_decomposer_num_variables_threshold(::PROTOBUF_NAMESPACE_ID::int32
value);
1148 bool _internal_has_num_bop_solvers_used_by_decomposition()
const;
1154 ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_bop_solvers_used_by_decomposition()
const;
1155 void _internal_set_num_bop_solvers_used_by_decomposition(::PROTOBUF_NAMESPACE_ID::int32
value);
1161 bool _internal_has_guided_sat_conflicts_chunk()
const;
1167 ::PROTOBUF_NAMESPACE_ID::int32 _internal_guided_sat_conflicts_chunk()
const;
1168 void _internal_set_guided_sat_conflicts_chunk(::PROTOBUF_NAMESPACE_ID::int32
value);
1174 bool _internal_has_max_num_broken_constraints_in_ls()
const;
1180 ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_num_broken_constraints_in_ls()
const;
1181 void _internal_set_max_num_broken_constraints_in_ls(::PROTOBUF_NAMESPACE_ID::int32
value);
1187 bool _internal_has_lp_max_deterministic_time()
const;
1193 double _internal_lp_max_deterministic_time()
const;
1194 void _internal_set_lp_max_deterministic_time(
double value);
1201 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1202 typedef void InternalArenaConstructable_;
1203 typedef void DestructorSkippable_;
1204 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
1205 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1206 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet > solver_optimizer_sets_;
1207 static const ::PROTOBUF_NAMESPACE_ID::internal::LazyString _i_give_permission_to_break_this_code_default_default_solver_optimizer_sets_;
1208 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr default_solver_optimizer_sets_;
1209 bool log_search_progress_;
1210 bool prune_search_tree_;
1211 bool sort_constraints_by_num_terms_;
1213 int synchronization_type_;
1214 ::PROTOBUF_NAMESPACE_ID::int32 max_number_of_consecutive_failing_optimizer_calls_;
1215 bool exploit_symmetry_in_sat_first_solution_;
1216 bool use_potential_one_flip_repairs_in_ls_;
1217 bool use_lp_strong_branching_;
1218 double decomposed_problem_min_time_in_seconds_;
1219 ::PROTOBUF_NAMESPACE_ID::int32 max_lp_solve_for_feasibility_problems_;
1220 double max_time_in_seconds_;
1221 ::PROTOBUF_NAMESPACE_ID::int32 max_num_decisions_in_ls_;
1222 ::PROTOBUF_NAMESPACE_ID::int32 random_seed_;
1223 ::PROTOBUF_NAMESPACE_ID::int32 num_relaxed_vars_;
1224 ::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_in_random_lns_;
1225 bool compute_estimated_impact_;
1226 bool use_random_lns_;
1228 bool use_sat_to_choose_lns_neighbourhood_;
1229 ::PROTOBUF_NAMESPACE_ID::int32 num_random_lns_tries_;
1230 ::PROTOBUF_NAMESPACE_ID::int64 max_number_of_backtracks_in_ls_;
1231 ::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_for_quick_check_;
1232 ::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_in_random_solution_generation_;
1233 ::PROTOBUF_NAMESPACE_ID::int64 max_number_of_explored_assignments_per_try_in_ls_;
1234 bool use_transposition_table_in_ls_;
1235 bool use_learned_binary_clauses_in_lp_;
1236 ::PROTOBUF_NAMESPACE_ID::int32 number_of_solvers_;
1237 double max_deterministic_time_;
1238 double relative_gap_limit_;
1239 ::PROTOBUF_NAMESPACE_ID::int32 decomposer_num_variables_threshold_;
1240 ::PROTOBUF_NAMESPACE_ID::int32 num_bop_solvers_used_by_decomposition_;
1241 ::PROTOBUF_NAMESPACE_ID::int32 guided_sat_conflicts_chunk_;
1242 ::PROTOBUF_NAMESPACE_ID::int32 max_num_broken_constraints_in_ls_;
1243 double lp_max_deterministic_time_;
1244 friend struct ::TableStruct_ortools_2fbop_2fbop_5fparameters_2eproto;
1252 #pragma GCC diagnostic push
1253 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1258inline bool BopOptimizerMethod::_internal_has_type()
const {
1259 bool value = (_has_bits_[0] & 0x00000001u) != 0;
1263 return _internal_has_type();
1267 _has_bits_[0] &= ~0x00000001u;
1274 return _internal_type();
1278 _has_bits_[0] |= 0x00000001u;
1282 _internal_set_type(
value);
1291inline int BopSolverOptimizerSet::_internal_methods_size()
const {
1292 return methods_.size();
1295 return _internal_methods_size();
1302 return methods_.Mutable(
index);
1304inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod >*
1309inline const ::operations_research::bop::BopOptimizerMethod& BopSolverOptimizerSet::_internal_methods(
int index)
const {
1310 return methods_.Get(
index);
1314 return _internal_methods(
index);
1316inline ::operations_research::bop::BopOptimizerMethod* BopSolverOptimizerSet::_internal_add_methods() {
1317 return methods_.Add();
1324inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod >&
1335inline bool BopParameters::_internal_has_max_time_in_seconds()
const {
1336 bool value = (_has_bits_[0] & 0x00001000u) != 0;
1340 return _internal_has_max_time_in_seconds();
1343 max_time_in_seconds_ = std::numeric_limits<double>::infinity();
1344 _has_bits_[0] &= ~0x00001000u;
1346inline double BopParameters::_internal_max_time_in_seconds()
const {
1347 return max_time_in_seconds_;
1351 return _internal_max_time_in_seconds();
1353inline void BopParameters::_internal_set_max_time_in_seconds(
double value) {
1354 _has_bits_[0] |= 0x00001000u;
1355 max_time_in_seconds_ =
value;
1358 _internal_set_max_time_in_seconds(
value);
1363inline bool BopParameters::_internal_has_max_deterministic_time()
const {
1364 bool value = (_has_bits_[0] & 0x20000000u) != 0;
1368 return _internal_has_max_deterministic_time();
1371 max_deterministic_time_ = std::numeric_limits<double>::infinity();
1372 _has_bits_[0] &= ~0x20000000u;
1374inline double BopParameters::_internal_max_deterministic_time()
const {
1375 return max_deterministic_time_;
1379 return _internal_max_deterministic_time();
1381inline void BopParameters::_internal_set_max_deterministic_time(
double value) {
1382 _has_bits_[0] |= 0x20000000u;
1383 max_deterministic_time_ =
value;
1386 _internal_set_max_deterministic_time(
value);
1391inline bool BopParameters::_internal_has_lp_max_deterministic_time()
const {
1392 bool value = (_has_bits_[1] & 0x00000008u) != 0;
1396 return _internal_has_lp_max_deterministic_time();
1399 lp_max_deterministic_time_ = 1;
1400 _has_bits_[1] &= ~0x00000008u;
1402inline double BopParameters::_internal_lp_max_deterministic_time()
const {
1403 return lp_max_deterministic_time_;
1407 return _internal_lp_max_deterministic_time();
1409inline void BopParameters::_internal_set_lp_max_deterministic_time(
double value) {
1410 _has_bits_[1] |= 0x00000008u;
1411 lp_max_deterministic_time_ =
value;
1414 _internal_set_lp_max_deterministic_time(
value);
1419inline bool BopParameters::_internal_has_max_number_of_consecutive_failing_optimizer_calls()
const {
1420 bool value = (_has_bits_[0] & 0x00000040u) != 0;
1424 return _internal_has_max_number_of_consecutive_failing_optimizer_calls();
1427 max_number_of_consecutive_failing_optimizer_calls_ = 0;
1428 _has_bits_[0] &= ~0x00000040u;
1430inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_number_of_consecutive_failing_optimizer_calls()
const {
1431 return max_number_of_consecutive_failing_optimizer_calls_;
1435 return _internal_max_number_of_consecutive_failing_optimizer_calls();
1437inline void BopParameters::_internal_set_max_number_of_consecutive_failing_optimizer_calls(::PROTOBUF_NAMESPACE_ID::int32
value) {
1438 _has_bits_[0] |= 0x00000040u;
1439 max_number_of_consecutive_failing_optimizer_calls_ =
value;
1442 _internal_set_max_number_of_consecutive_failing_optimizer_calls(
value);
1447inline bool BopParameters::_internal_has_relative_gap_limit()
const {
1448 bool value = (_has_bits_[0] & 0x40000000u) != 0;
1452 return _internal_has_relative_gap_limit();
1455 relative_gap_limit_ = 0.0001;
1456 _has_bits_[0] &= ~0x40000000u;
1458inline double BopParameters::_internal_relative_gap_limit()
const {
1459 return relative_gap_limit_;
1463 return _internal_relative_gap_limit();
1465inline void BopParameters::_internal_set_relative_gap_limit(
double value) {
1466 _has_bits_[0] |= 0x40000000u;
1467 relative_gap_limit_ =
value;
1470 _internal_set_relative_gap_limit(
value);
1475inline bool BopParameters::_internal_has_max_num_decisions_in_ls()
const {
1476 bool value = (_has_bits_[0] & 0x00002000u) != 0;
1480 return _internal_has_max_num_decisions_in_ls();
1483 max_num_decisions_in_ls_ = 4;
1484 _has_bits_[0] &= ~0x00002000u;
1486inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_num_decisions_in_ls()
const {
1487 return max_num_decisions_in_ls_;
1491 return _internal_max_num_decisions_in_ls();
1493inline void BopParameters::_internal_set_max_num_decisions_in_ls(::PROTOBUF_NAMESPACE_ID::int32
value) {
1494 _has_bits_[0] |= 0x00002000u;
1495 max_num_decisions_in_ls_ =
value;
1498 _internal_set_max_num_decisions_in_ls(
value);
1503inline bool BopParameters::_internal_has_max_num_broken_constraints_in_ls()
const {
1504 bool value = (_has_bits_[1] & 0x00000004u) != 0;
1508 return _internal_has_max_num_broken_constraints_in_ls();
1511 max_num_broken_constraints_in_ls_ = 2147483647;
1512 _has_bits_[1] &= ~0x00000004u;
1514inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_num_broken_constraints_in_ls()
const {
1515 return max_num_broken_constraints_in_ls_;
1519 return _internal_max_num_broken_constraints_in_ls();
1521inline void BopParameters::_internal_set_max_num_broken_constraints_in_ls(::PROTOBUF_NAMESPACE_ID::int32
value) {
1522 _has_bits_[1] |= 0x00000004u;
1523 max_num_broken_constraints_in_ls_ =
value;
1526 _internal_set_max_num_broken_constraints_in_ls(
value);
1531inline bool BopParameters::_internal_has_log_search_progress()
const {
1532 bool value = (_has_bits_[0] & 0x00000002u) != 0;
1536 return _internal_has_log_search_progress();
1539 log_search_progress_ =
false;
1540 _has_bits_[0] &= ~0x00000002u;
1542inline bool BopParameters::_internal_log_search_progress()
const {
1543 return log_search_progress_;
1547 return _internal_log_search_progress();
1549inline void BopParameters::_internal_set_log_search_progress(
bool value) {
1550 _has_bits_[0] |= 0x00000002u;
1551 log_search_progress_ =
value;
1554 _internal_set_log_search_progress(
value);
1559inline bool BopParameters::_internal_has_compute_estimated_impact()
const {
1560 bool value = (_has_bits_[0] & 0x00020000u) != 0;
1564 return _internal_has_compute_estimated_impact();
1567 compute_estimated_impact_ =
true;
1568 _has_bits_[0] &= ~0x00020000u;
1570inline bool BopParameters::_internal_compute_estimated_impact()
const {
1571 return compute_estimated_impact_;
1575 return _internal_compute_estimated_impact();
1577inline void BopParameters::_internal_set_compute_estimated_impact(
bool value) {
1578 _has_bits_[0] |= 0x00020000u;
1579 compute_estimated_impact_ =
value;
1582 _internal_set_compute_estimated_impact(
value);
1587inline bool BopParameters::_internal_has_prune_search_tree()
const {
1588 bool value = (_has_bits_[0] & 0x00000004u) != 0;
1592 return _internal_has_prune_search_tree();
1595 prune_search_tree_ =
false;
1596 _has_bits_[0] &= ~0x00000004u;
1598inline bool BopParameters::_internal_prune_search_tree()
const {
1599 return prune_search_tree_;
1603 return _internal_prune_search_tree();
1605inline void BopParameters::_internal_set_prune_search_tree(
bool value) {
1606 _has_bits_[0] |= 0x00000004u;
1607 prune_search_tree_ =
value;
1610 _internal_set_prune_search_tree(
value);
1615inline bool BopParameters::_internal_has_sort_constraints_by_num_terms()
const {
1616 bool value = (_has_bits_[0] & 0x00000008u) != 0;
1620 return _internal_has_sort_constraints_by_num_terms();
1623 sort_constraints_by_num_terms_ =
false;
1624 _has_bits_[0] &= ~0x00000008u;
1626inline bool BopParameters::_internal_sort_constraints_by_num_terms()
const {
1627 return sort_constraints_by_num_terms_;
1631 return _internal_sort_constraints_by_num_terms();
1633inline void BopParameters::_internal_set_sort_constraints_by_num_terms(
bool value) {
1634 _has_bits_[0] |= 0x00000008u;
1635 sort_constraints_by_num_terms_ =
value;
1638 _internal_set_sort_constraints_by_num_terms(
value);
1643inline bool BopParameters::_internal_has_use_random_lns()
const {
1644 bool value = (_has_bits_[0] & 0x00040000u) != 0;
1648 return _internal_has_use_random_lns();
1651 use_random_lns_ =
true;
1652 _has_bits_[0] &= ~0x00040000u;
1654inline bool BopParameters::_internal_use_random_lns()
const {
1655 return use_random_lns_;
1659 return _internal_use_random_lns();
1661inline void BopParameters::_internal_set_use_random_lns(
bool value) {
1662 _has_bits_[0] |= 0x00040000u;
1663 use_random_lns_ =
value;
1666 _internal_set_use_random_lns(
value);
1671inline bool BopParameters::_internal_has_random_seed()
const {
1672 bool value = (_has_bits_[0] & 0x00004000u) != 0;
1676 return _internal_has_random_seed();
1680 _has_bits_[0] &= ~0x00004000u;
1682inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_random_seed()
const {
1683 return random_seed_;
1687 return _internal_random_seed();
1689inline void BopParameters::_internal_set_random_seed(::PROTOBUF_NAMESPACE_ID::int32
value) {
1690 _has_bits_[0] |= 0x00004000u;
1691 random_seed_ =
value;
1694 _internal_set_random_seed(
value);
1699inline bool BopParameters::_internal_has_num_relaxed_vars()
const {
1700 bool value = (_has_bits_[0] & 0x00008000u) != 0;
1704 return _internal_has_num_relaxed_vars();
1707 num_relaxed_vars_ = 10;
1708 _has_bits_[0] &= ~0x00008000u;
1710inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_num_relaxed_vars()
const {
1711 return num_relaxed_vars_;
1715 return _internal_num_relaxed_vars();
1717inline void BopParameters::_internal_set_num_relaxed_vars(::PROTOBUF_NAMESPACE_ID::int32
value) {
1718 _has_bits_[0] |= 0x00008000u;
1719 num_relaxed_vars_ =
value;
1722 _internal_set_num_relaxed_vars(
value);
1727inline bool BopParameters::_internal_has_max_number_of_conflicts_in_random_lns()
const {
1728 bool value = (_has_bits_[0] & 0x00010000u) != 0;
1732 return _internal_has_max_number_of_conflicts_in_random_lns();
1735 max_number_of_conflicts_in_random_lns_ = 2500;
1736 _has_bits_[0] &= ~0x00010000u;
1738inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_number_of_conflicts_in_random_lns()
const {
1739 return max_number_of_conflicts_in_random_lns_;
1743 return _internal_max_number_of_conflicts_in_random_lns();
1745inline void BopParameters::_internal_set_max_number_of_conflicts_in_random_lns(::PROTOBUF_NAMESPACE_ID::int32
value) {
1746 _has_bits_[0] |= 0x00010000u;
1747 max_number_of_conflicts_in_random_lns_ =
value;
1750 _internal_set_max_number_of_conflicts_in_random_lns(
value);
1755inline bool BopParameters::_internal_has_num_random_lns_tries()
const {
1756 bool value = (_has_bits_[0] & 0x00200000u) != 0;
1760 return _internal_has_num_random_lns_tries();
1763 num_random_lns_tries_ = 1;
1764 _has_bits_[0] &= ~0x00200000u;
1766inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_num_random_lns_tries()
const {
1767 return num_random_lns_tries_;
1771 return _internal_num_random_lns_tries();
1773inline void BopParameters::_internal_set_num_random_lns_tries(::PROTOBUF_NAMESPACE_ID::int32
value) {
1774 _has_bits_[0] |= 0x00200000u;
1775 num_random_lns_tries_ =
value;
1778 _internal_set_num_random_lns_tries(
value);
1783inline bool BopParameters::_internal_has_max_number_of_backtracks_in_ls()
const {
1784 bool value = (_has_bits_[0] & 0x00400000u) != 0;
1788 return _internal_has_max_number_of_backtracks_in_ls();
1791 max_number_of_backtracks_in_ls_ = int64_t{100000000};
1792 _has_bits_[0] &= ~0x00400000u;
1794inline ::PROTOBUF_NAMESPACE_ID::int64 BopParameters::_internal_max_number_of_backtracks_in_ls()
const {
1795 return max_number_of_backtracks_in_ls_;
1799 return _internal_max_number_of_backtracks_in_ls();
1801inline void BopParameters::_internal_set_max_number_of_backtracks_in_ls(::PROTOBUF_NAMESPACE_ID::int64
value) {
1802 _has_bits_[0] |= 0x00400000u;
1803 max_number_of_backtracks_in_ls_ =
value;
1806 _internal_set_max_number_of_backtracks_in_ls(
value);
1811inline bool BopParameters::_internal_has_use_lp_lns()
const {
1812 bool value = (_has_bits_[0] & 0x00080000u) != 0;
1816 return _internal_has_use_lp_lns();
1820 _has_bits_[0] &= ~0x00080000u;
1822inline bool BopParameters::_internal_use_lp_lns()
const {
1827 return _internal_use_lp_lns();
1829inline void BopParameters::_internal_set_use_lp_lns(
bool value) {
1830 _has_bits_[0] |= 0x00080000u;
1831 use_lp_lns_ =
value;
1834 _internal_set_use_lp_lns(
value);
1839inline bool BopParameters::_internal_has_use_sat_to_choose_lns_neighbourhood()
const {
1840 bool value = (_has_bits_[0] & 0x00100000u) != 0;
1844 return _internal_has_use_sat_to_choose_lns_neighbourhood();
1847 use_sat_to_choose_lns_neighbourhood_ =
true;
1848 _has_bits_[0] &= ~0x00100000u;
1850inline bool BopParameters::_internal_use_sat_to_choose_lns_neighbourhood()
const {
1851 return use_sat_to_choose_lns_neighbourhood_;
1855 return _internal_use_sat_to_choose_lns_neighbourhood();
1857inline void BopParameters::_internal_set_use_sat_to_choose_lns_neighbourhood(
bool value) {
1858 _has_bits_[0] |= 0x00100000u;
1859 use_sat_to_choose_lns_neighbourhood_ =
value;
1862 _internal_set_use_sat_to_choose_lns_neighbourhood(
value);
1867inline bool BopParameters::_internal_has_max_number_of_conflicts_for_quick_check()
const {
1868 bool value = (_has_bits_[0] & 0x00800000u) != 0;
1872 return _internal_has_max_number_of_conflicts_for_quick_check();
1875 max_number_of_conflicts_for_quick_check_ = 10;
1876 _has_bits_[0] &= ~0x00800000u;
1878inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_number_of_conflicts_for_quick_check()
const {
1879 return max_number_of_conflicts_for_quick_check_;
1883 return _internal_max_number_of_conflicts_for_quick_check();
1885inline void BopParameters::_internal_set_max_number_of_conflicts_for_quick_check(::PROTOBUF_NAMESPACE_ID::int32
value) {
1886 _has_bits_[0] |= 0x00800000u;
1887 max_number_of_conflicts_for_quick_check_ =
value;
1890 _internal_set_max_number_of_conflicts_for_quick_check(
value);
1895inline bool BopParameters::_internal_has_use_symmetry()
const {
1896 bool value = (_has_bits_[0] & 0x00000010u) != 0;
1900 return _internal_has_use_symmetry();
1903 use_symmetry_ =
false;
1904 _has_bits_[0] &= ~0x00000010u;
1906inline bool BopParameters::_internal_use_symmetry()
const {
1907 return use_symmetry_;
1911 return _internal_use_symmetry();
1913inline void BopParameters::_internal_set_use_symmetry(
bool value) {
1914 _has_bits_[0] |= 0x00000010u;
1915 use_symmetry_ =
value;
1918 _internal_set_use_symmetry(
value);
1923inline bool BopParameters::_internal_has_exploit_symmetry_in_sat_first_solution()
const {
1924 bool value = (_has_bits_[0] & 0x00000080u) != 0;
1928 return _internal_has_exploit_symmetry_in_sat_first_solution();
1931 exploit_symmetry_in_sat_first_solution_ =
false;
1932 _has_bits_[0] &= ~0x00000080u;
1934inline bool BopParameters::_internal_exploit_symmetry_in_sat_first_solution()
const {
1935 return exploit_symmetry_in_sat_first_solution_;
1939 return _internal_exploit_symmetry_in_sat_first_solution();
1941inline void BopParameters::_internal_set_exploit_symmetry_in_sat_first_solution(
bool value) {
1942 _has_bits_[0] |= 0x00000080u;
1943 exploit_symmetry_in_sat_first_solution_ =
value;
1946 _internal_set_exploit_symmetry_in_sat_first_solution(
value);
1951inline bool BopParameters::_internal_has_max_number_of_conflicts_in_random_solution_generation()
const {
1952 bool value = (_has_bits_[0] & 0x01000000u) != 0;
1956 return _internal_has_max_number_of_conflicts_in_random_solution_generation();
1959 max_number_of_conflicts_in_random_solution_generation_ = 500;
1960 _has_bits_[0] &= ~0x01000000u;
1962inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_number_of_conflicts_in_random_solution_generation()
const {
1963 return max_number_of_conflicts_in_random_solution_generation_;
1967 return _internal_max_number_of_conflicts_in_random_solution_generation();
1969inline void BopParameters::_internal_set_max_number_of_conflicts_in_random_solution_generation(::PROTOBUF_NAMESPACE_ID::int32
value) {
1970 _has_bits_[0] |= 0x01000000u;
1971 max_number_of_conflicts_in_random_solution_generation_ =
value;
1974 _internal_set_max_number_of_conflicts_in_random_solution_generation(
value);
1979inline bool BopParameters::_internal_has_max_number_of_explored_assignments_per_try_in_ls()
const {
1980 bool value = (_has_bits_[0] & 0x02000000u) != 0;
1984 return _internal_has_max_number_of_explored_assignments_per_try_in_ls();
1987 max_number_of_explored_assignments_per_try_in_ls_ = int64_t{10000};
1988 _has_bits_[0] &= ~0x02000000u;
1990inline ::PROTOBUF_NAMESPACE_ID::int64 BopParameters::_internal_max_number_of_explored_assignments_per_try_in_ls()
const {
1991 return max_number_of_explored_assignments_per_try_in_ls_;
1995 return _internal_max_number_of_explored_assignments_per_try_in_ls();
1997inline void BopParameters::_internal_set_max_number_of_explored_assignments_per_try_in_ls(::PROTOBUF_NAMESPACE_ID::int64
value) {
1998 _has_bits_[0] |= 0x02000000u;
1999 max_number_of_explored_assignments_per_try_in_ls_ =
value;
2002 _internal_set_max_number_of_explored_assignments_per_try_in_ls(
value);
2007inline bool BopParameters::_internal_has_use_transposition_table_in_ls()
const {
2008 bool value = (_has_bits_[0] & 0x04000000u) != 0;
2012 return _internal_has_use_transposition_table_in_ls();
2015 use_transposition_table_in_ls_ =
true;
2016 _has_bits_[0] &= ~0x04000000u;
2018inline bool BopParameters::_internal_use_transposition_table_in_ls()
const {
2019 return use_transposition_table_in_ls_;
2023 return _internal_use_transposition_table_in_ls();
2025inline void BopParameters::_internal_set_use_transposition_table_in_ls(
bool value) {
2026 _has_bits_[0] |= 0x04000000u;
2027 use_transposition_table_in_ls_ =
value;
2030 _internal_set_use_transposition_table_in_ls(
value);
2035inline bool BopParameters::_internal_has_use_potential_one_flip_repairs_in_ls()
const {
2036 bool value = (_has_bits_[0] & 0x00000100u) != 0;
2040 return _internal_has_use_potential_one_flip_repairs_in_ls();
2043 use_potential_one_flip_repairs_in_ls_ =
false;
2044 _has_bits_[0] &= ~0x00000100u;
2046inline bool BopParameters::_internal_use_potential_one_flip_repairs_in_ls()
const {
2047 return use_potential_one_flip_repairs_in_ls_;
2051 return _internal_use_potential_one_flip_repairs_in_ls();
2053inline void BopParameters::_internal_set_use_potential_one_flip_repairs_in_ls(
bool value) {
2054 _has_bits_[0] |= 0x00000100u;
2055 use_potential_one_flip_repairs_in_ls_ =
value;
2058 _internal_set_use_potential_one_flip_repairs_in_ls(
value);
2063inline bool BopParameters::_internal_has_use_learned_binary_clauses_in_lp()
const {
2064 bool value = (_has_bits_[0] & 0x08000000u) != 0;
2068 return _internal_has_use_learned_binary_clauses_in_lp();
2071 use_learned_binary_clauses_in_lp_ =
true;
2072 _has_bits_[0] &= ~0x08000000u;
2074inline bool BopParameters::_internal_use_learned_binary_clauses_in_lp()
const {
2075 return use_learned_binary_clauses_in_lp_;
2079 return _internal_use_learned_binary_clauses_in_lp();
2081inline void BopParameters::_internal_set_use_learned_binary_clauses_in_lp(
bool value) {
2082 _has_bits_[0] |= 0x08000000u;
2083 use_learned_binary_clauses_in_lp_ =
value;
2086 _internal_set_use_learned_binary_clauses_in_lp(
value);
2091inline bool BopParameters::_internal_has_number_of_solvers()
const {
2092 bool value = (_has_bits_[0] & 0x10000000u) != 0;
2096 return _internal_has_number_of_solvers();
2099 number_of_solvers_ = 1;
2100 _has_bits_[0] &= ~0x10000000u;
2102inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_number_of_solvers()
const {
2103 return number_of_solvers_;
2107 return _internal_number_of_solvers();
2109inline void BopParameters::_internal_set_number_of_solvers(::PROTOBUF_NAMESPACE_ID::int32
value) {
2110 _has_bits_[0] |= 0x10000000u;
2111 number_of_solvers_ =
value;
2114 _internal_set_number_of_solvers(
value);
2119inline bool BopParameters::_internal_has_synchronization_type()
const {
2120 bool value = (_has_bits_[0] & 0x00000020u) != 0;
2124 return _internal_has_synchronization_type();
2127 synchronization_type_ = 0;
2128 _has_bits_[0] &= ~0x00000020u;
2135 return _internal_synchronization_type();
2139 _has_bits_[0] |= 0x00000020u;
2140 synchronization_type_ =
value;
2143 _internal_set_synchronization_type(
value);
2148inline int BopParameters::_internal_solver_optimizer_sets_size()
const {
2149 return solver_optimizer_sets_.size();
2152 return _internal_solver_optimizer_sets_size();
2155 solver_optimizer_sets_.Clear();
2159 return solver_optimizer_sets_.Mutable(
index);
2161inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet >*
2164 return &solver_optimizer_sets_;
2166inline const ::operations_research::bop::BopSolverOptimizerSet& BopParameters::_internal_solver_optimizer_sets(
int index)
const {
2167 return solver_optimizer_sets_.Get(
index);
2171 return _internal_solver_optimizer_sets(
index);
2173inline ::operations_research::bop::BopSolverOptimizerSet* BopParameters::_internal_add_solver_optimizer_sets() {
2174 return solver_optimizer_sets_.Add();
2181inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet >&
2184 return solver_optimizer_sets_;
2188inline bool BopParameters::_internal_has_default_solver_optimizer_sets()
const {
2189 bool value = (_has_bits_[0] & 0x00000001u) != 0;
2193 return _internal_has_default_solver_optimizer_sets();
2196 default_solver_optimizer_sets_.ClearToDefault(::operations_research::bop::BopParameters::_i_give_permission_to_break_this_code_default_default_solver_optimizer_sets_, GetArenaForAllocation());
2197 _has_bits_[0] &= ~0x00000001u;
2201 if (default_solver_optimizer_sets_.IsDefault(
nullptr))
return _i_give_permission_to_break_this_code_default_default_solver_optimizer_sets_.get();
2202 return _internal_default_solver_optimizer_sets();
2204template <
typename ArgT0,
typename... ArgT>
2205inline PROTOBUF_ALWAYS_INLINE
2207 _has_bits_[0] |= 0x00000001u;
2208 default_solver_optimizer_sets_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::NonEmptyDefault{},
static_cast<ArgT0 &&
>(arg0), args..., GetArenaForAllocation());
2212 std::string* _s = _internal_mutable_default_solver_optimizer_sets();
2216inline const std::string& BopParameters::_internal_default_solver_optimizer_sets()
const {
2217 return default_solver_optimizer_sets_.Get();
2219inline void BopParameters::_internal_set_default_solver_optimizer_sets(
const std::string&
value) {
2220 _has_bits_[0] |= 0x00000001u;
2221 default_solver_optimizer_sets_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::NonEmptyDefault{},
value, GetArenaForAllocation());
2223inline std::string* BopParameters::_internal_mutable_default_solver_optimizer_sets() {
2224 _has_bits_[0] |= 0x00000001u;
2225 return default_solver_optimizer_sets_.Mutable(::operations_research::bop::BopParameters::_i_give_permission_to_break_this_code_default_default_solver_optimizer_sets_, GetArenaForAllocation());
2229 if (!_internal_has_default_solver_optimizer_sets()) {
2232 _has_bits_[0] &= ~0x00000001u;
2233 return default_solver_optimizer_sets_.ReleaseNonDefault(
nullptr, GetArenaForAllocation());
2237 _has_bits_[0] |= 0x00000001u;
2239 _has_bits_[0] &= ~0x00000001u;
2242 GetArenaForAllocation());
2247inline bool BopParameters::_internal_has_use_lp_strong_branching()
const {
2248 bool value = (_has_bits_[0] & 0x00000200u) != 0;
2252 return _internal_has_use_lp_strong_branching();
2255 use_lp_strong_branching_ =
false;
2256 _has_bits_[0] &= ~0x00000200u;
2258inline bool BopParameters::_internal_use_lp_strong_branching()
const {
2259 return use_lp_strong_branching_;
2263 return _internal_use_lp_strong_branching();
2265inline void BopParameters::_internal_set_use_lp_strong_branching(
bool value) {
2266 _has_bits_[0] |= 0x00000200u;
2267 use_lp_strong_branching_ =
value;
2270 _internal_set_use_lp_strong_branching(
value);
2275inline bool BopParameters::_internal_has_decomposer_num_variables_threshold()
const {
2276 bool value = (_has_bits_[0] & 0x80000000u) != 0;
2280 return _internal_has_decomposer_num_variables_threshold();
2283 decomposer_num_variables_threshold_ = 50;
2284 _has_bits_[0] &= ~0x80000000u;
2286inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_decomposer_num_variables_threshold()
const {
2287 return decomposer_num_variables_threshold_;
2291 return _internal_decomposer_num_variables_threshold();
2293inline void BopParameters::_internal_set_decomposer_num_variables_threshold(::PROTOBUF_NAMESPACE_ID::int32
value) {
2294 _has_bits_[0] |= 0x80000000u;
2295 decomposer_num_variables_threshold_ =
value;
2298 _internal_set_decomposer_num_variables_threshold(
value);
2303inline bool BopParameters::_internal_has_num_bop_solvers_used_by_decomposition()
const {
2304 bool value = (_has_bits_[1] & 0x00000001u) != 0;
2308 return _internal_has_num_bop_solvers_used_by_decomposition();
2311 num_bop_solvers_used_by_decomposition_ = 1;
2312 _has_bits_[1] &= ~0x00000001u;
2314inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_num_bop_solvers_used_by_decomposition()
const {
2315 return num_bop_solvers_used_by_decomposition_;
2319 return _internal_num_bop_solvers_used_by_decomposition();
2321inline void BopParameters::_internal_set_num_bop_solvers_used_by_decomposition(::PROTOBUF_NAMESPACE_ID::int32
value) {
2322 _has_bits_[1] |= 0x00000001u;
2323 num_bop_solvers_used_by_decomposition_ =
value;
2326 _internal_set_num_bop_solvers_used_by_decomposition(
value);
2331inline bool BopParameters::_internal_has_decomposed_problem_min_time_in_seconds()
const {
2332 bool value = (_has_bits_[0] & 0x00000400u) != 0;
2336 return _internal_has_decomposed_problem_min_time_in_seconds();
2339 decomposed_problem_min_time_in_seconds_ = 0;
2340 _has_bits_[0] &= ~0x00000400u;
2342inline double BopParameters::_internal_decomposed_problem_min_time_in_seconds()
const {
2343 return decomposed_problem_min_time_in_seconds_;
2347 return _internal_decomposed_problem_min_time_in_seconds();
2349inline void BopParameters::_internal_set_decomposed_problem_min_time_in_seconds(
double value) {
2350 _has_bits_[0] |= 0x00000400u;
2351 decomposed_problem_min_time_in_seconds_ =
value;
2354 _internal_set_decomposed_problem_min_time_in_seconds(
value);
2359inline bool BopParameters::_internal_has_guided_sat_conflicts_chunk()
const {
2360 bool value = (_has_bits_[1] & 0x00000002u) != 0;
2364 return _internal_has_guided_sat_conflicts_chunk();
2367 guided_sat_conflicts_chunk_ = 1000;
2368 _has_bits_[1] &= ~0x00000002u;
2370inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_guided_sat_conflicts_chunk()
const {
2371 return guided_sat_conflicts_chunk_;
2375 return _internal_guided_sat_conflicts_chunk();
2377inline void BopParameters::_internal_set_guided_sat_conflicts_chunk(::PROTOBUF_NAMESPACE_ID::int32
value) {
2378 _has_bits_[1] |= 0x00000002u;
2379 guided_sat_conflicts_chunk_ =
value;
2382 _internal_set_guided_sat_conflicts_chunk(
value);
2387inline bool BopParameters::_internal_has_max_lp_solve_for_feasibility_problems()
const {
2388 bool value = (_has_bits_[0] & 0x00000800u) != 0;
2392 return _internal_has_max_lp_solve_for_feasibility_problems();
2395 max_lp_solve_for_feasibility_problems_ = 0;
2396 _has_bits_[0] &= ~0x00000800u;
2398inline ::PROTOBUF_NAMESPACE_ID::int32 BopParameters::_internal_max_lp_solve_for_feasibility_problems()
const {
2399 return max_lp_solve_for_feasibility_problems_;
2403 return _internal_max_lp_solve_for_feasibility_problems();
2405inline void BopParameters::_internal_set_max_lp_solve_for_feasibility_problems(::PROTOBUF_NAMESPACE_ID::int32
value) {
2406 _has_bits_[0] |= 0x00000800u;
2407 max_lp_solve_for_feasibility_problems_ =
value;
2410 _internal_set_max_lp_solve_for_feasibility_problems(
value);
2415 #pragma GCC diagnostic pop
2427PROTOBUF_NAMESPACE_OPEN
2431inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::bop::BopOptimizerMethod_OptimizerType>() {
2436inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::bop::BopParameters_ThreadSynchronizationType>() {
2440PROTOBUF_NAMESPACE_CLOSE
2444#include <google/protobuf/port_undef.inc>
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fbop_2fbop_5fparameters_2eproto
static bool OptimizerType_IsValid(int value)
static constexpr OptimizerType USER_GUIDED_FIRST_SOLUTION
static constexpr OptimizerType LP_FIRST_SOLUTION
int GetCachedSize() const final
static const BopOptimizerMethod & default_instance()
static constexpr OptimizerType RANDOM_CONSTRAINT_LNS
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
static constexpr OptimizerType OptimizerType_MAX
static constexpr OptimizerType OBJECTIVE_FIRST_SOLUTION
BopOptimizerMethod & operator=(BopOptimizerMethod &&from) noexcept
BopOptimizerMethod(BopOptimizerMethod &&from) noexcept
~BopOptimizerMethod() override
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * OptimizerType_descriptor()
static constexpr OptimizerType RELATION_GRAPH_LNS
static constexpr OptimizerType RANDOM_VARIABLE_LNS
bool IsInitialized() const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static constexpr int kIndexInFileMessages
static constexpr OptimizerType RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP
BopOptimizerMethod * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const std::string & OptimizerType_Name(T enum_t_value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void UnsafeArenaSwap(BopOptimizerMethod *other)
void MergeFrom(const BopOptimizerMethod &from)
static constexpr OptimizerType SAT_CORE_BASED
static constexpr OptimizerType RANDOM_VARIABLE_LNS_GUIDED_BY_LP
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static constexpr OptimizerType OptimizerType_MIN
static constexpr OptimizerType LINEAR_RELAXATION
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static bool OptimizerType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, OptimizerType *value)
static constexpr OptimizerType COMPLETE_LNS
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
friend void swap(BopOptimizerMethod &a, BopOptimizerMethod &b)
void CopyFrom(const BopOptimizerMethod &from)
BopOptimizerMethod * New() const final
static const BopOptimizerMethod * internal_default_instance()
void set_type(::operations_research::bop::BopOptimizerMethod_OptimizerType value)
static constexpr OptimizerType SAT_LINEAR_SEARCH
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static constexpr OptimizerType LOCAL_SEARCH
static constexpr OptimizerType RELATION_GRAPH_LNS_GUIDED_BY_LP
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
::operations_research::bop::BopOptimizerMethod_OptimizerType type() const
size_t ByteSizeLong() const final
BopOptimizerMethod & operator=(const BopOptimizerMethod &from)
void Swap(BopOptimizerMethod *other)
static constexpr OptimizerType RANDOM_FIRST_SOLUTION
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static constexpr int OptimizerType_ARRAYSIZE
bool has_lp_max_deterministic_time() const
void set_max_number_of_consecutive_failing_optimizer_calls(::PROTOBUF_NAMESPACE_ID::int32 value)
BopParameters(BopParameters &&from) noexcept
double max_deterministic_time() const
bool has_use_lp_lns() const
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet > * mutable_solver_optimizer_sets()
::PROTOBUF_NAMESPACE_ID::int64 max_number_of_backtracks_in_ls() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopSolverOptimizerSet > & solver_optimizer_sets() const
void clear_max_num_decisions_in_ls()
void clear_max_number_of_conflicts_in_random_lns()
void set_use_transposition_table_in_ls(bool value)
::PROTOBUF_NAMESPACE_ID::int32 max_num_decisions_in_ls() const
void set_max_number_of_explored_assignments_per_try_in_ls(::PROTOBUF_NAMESPACE_ID::int64 value)
void set_max_num_broken_constraints_in_ls(::PROTOBUF_NAMESPACE_ID::int32 value)
double lp_max_deterministic_time() const
bool log_search_progress() const
void set_lp_max_deterministic_time(double value)
bool use_potential_one_flip_repairs_in_ls() const
void set_prune_search_tree(bool value)
::PROTOBUF_NAMESPACE_ID::int64 max_number_of_explored_assignments_per_try_in_ls() const
void clear_num_bop_solvers_used_by_decomposition()
void clear_default_solver_optimizer_sets()
void clear_max_lp_solve_for_feasibility_problems()
void clear_max_deterministic_time()
bool compute_estimated_impact() const
void clear_sort_constraints_by_num_terms()
void clear_num_random_lns_tries()
void clear_compute_estimated_impact()
void clear_use_learned_binary_clauses_in_lp()
bool has_max_number_of_conflicts_in_random_solution_generation() const
static constexpr ThreadSynchronizationType ThreadSynchronizationType_MAX
void clear_lp_max_deterministic_time()
bool has_use_learned_binary_clauses_in_lp() const
int GetCachedSize() const final
void MergeFrom(const BopParameters &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_in_random_solution_generation() const
bool has_decomposed_problem_min_time_in_seconds() const
bool use_sat_to_choose_lns_neighbourhood() const
bool has_default_solver_optimizer_sets() const
bool has_random_seed() const
static constexpr ThreadSynchronizationType ThreadSynchronizationType_MIN
void set_default_solver_optimizer_sets(ArgT0 &&arg0, ArgT... args)
void UnsafeArenaSwap(BopParameters *other)
::PROTOBUF_NAMESPACE_ID::int32 guided_sat_conflicts_chunk() const
void set_num_relaxed_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
static const ClassData _class_data_
::PROTOBUF_NAMESPACE_ID::int32 num_bop_solvers_used_by_decomposition() const
void CopyFrom(const BopParameters &from)
BopParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void clear_number_of_solvers()
void clear_use_lp_strong_branching()
void set_max_number_of_backtracks_in_ls(::PROTOBUF_NAMESPACE_ID::int64 value)
bool has_use_symmetry() const
bool has_prune_search_tree() const
bool sort_constraints_by_num_terms() const
void set_compute_estimated_impact(bool value)
void set_max_number_of_conflicts_for_quick_check(::PROTOBUF_NAMESPACE_ID::int32 value)
bool prune_search_tree() const
bool has_number_of_solvers() const
bool has_compute_estimated_impact() const
void clear_num_relaxed_vars()
bool has_use_random_lns() const
::PROTOBUF_NAMESPACE_ID::int32 max_number_of_consecutive_failing_optimizer_calls() const
void clear_decomposed_problem_min_time_in_seconds()
void set_num_random_lns_tries(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 random_seed() const
void set_relative_gap_limit(double value)
double relative_gap_limit() const
bool has_max_number_of_conflicts_in_random_lns() const
std::string * mutable_default_solver_optimizer_sets()
BopParameters & operator=(BopParameters &&from) noexcept
static bool ThreadSynchronizationType_IsValid(int value)
void clear_use_sat_to_choose_lns_neighbourhood()
bool has_max_num_broken_constraints_in_ls() const
::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_for_quick_check() const
void set_use_random_lns(bool value)
static const BopParameters & default_instance()
void clear_use_random_lns()
static const std::string & ThreadSynchronizationType_Name(T enum_t_value)
void set_decomposed_problem_min_time_in_seconds(double value)
const std::string & default_solver_optimizer_sets() const
bool has_num_random_lns_tries() const
void clear_guided_sat_conflicts_chunk()
bool has_use_transposition_table_in_ls() const
bool has_decomposer_num_variables_threshold() const
::PROTOBUF_NAMESPACE_ID::int32 max_num_broken_constraints_in_ls() const
void clear_synchronization_type()
void clear_use_potential_one_flip_repairs_in_ls()
void Swap(BopParameters *other)
bool use_lp_strong_branching() const
bool has_num_relaxed_vars() const
bool IsInitialized() const final
bool has_guided_sat_conflicts_chunk() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static constexpr int kIndexInFileMessages
void set_use_lp_strong_branching(bool value)
bool has_use_potential_one_flip_repairs_in_ls() const
void set_max_deterministic_time(double value)
void clear_max_number_of_explored_assignments_per_try_in_ls()
void set_synchronization_type(::operations_research::bop::BopParameters_ThreadSynchronizationType value)
void clear_decomposer_num_variables_threshold()
bool has_max_number_of_backtracks_in_ls() const
void set_num_bop_solvers_used_by_decomposition(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 decomposer_num_variables_threshold() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void clear_max_number_of_backtracks_in_ls()
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * ThreadSynchronizationType_descriptor()
void clear_solver_optimizer_sets()
::PROTOBUF_NAMESPACE_ID::int32 num_relaxed_vars() const
static constexpr int ThreadSynchronizationType_ARRAYSIZE
~BopParameters() override
bool use_symmetry() const
BopParameters & operator=(const BopParameters &from)
bool has_max_time_in_seconds() const
void set_sort_constraints_by_num_terms(bool value)
::PROTOBUF_NAMESPACE_ID::int32 num_random_lns_tries() const
bool has_sort_constraints_by_num_terms() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_decomposer_num_variables_threshold(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr ThreadSynchronizationType NO_SYNCHRONIZATION
void set_use_lp_lns(bool value)
void clear_log_search_progress()
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
bool has_num_bop_solvers_used_by_decomposition() const
void set_log_search_progress(bool value)
bool has_relative_gap_limit() const
void set_guided_sat_conflicts_chunk(::PROTOBUF_NAMESPACE_ID::int32 value)
bool has_max_deterministic_time() const
static constexpr ThreadSynchronizationType SYNCHRONIZE_ALL
bool has_max_number_of_conflicts_for_quick_check() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_use_potential_one_flip_repairs_in_ls(bool value)
void clear_relative_gap_limit()
void clear_max_num_broken_constraints_in_ls()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void clear_max_number_of_consecutive_failing_optimizer_calls()
void clear_max_time_in_seconds()
void clear_exploit_symmetry_in_sat_first_solution()
bool use_transposition_table_in_ls() const
void set_use_learned_binary_clauses_in_lp(bool value)
::PROTOBUF_NAMESPACE_ID::int32 max_lp_solve_for_feasibility_problems() const
bool use_random_lns() const
void set_exploit_symmetry_in_sat_first_solution(bool value)
void set_allocated_default_solver_optimizer_sets(std::string *default_solver_optimizer_sets)
void set_max_num_decisions_in_ls(::PROTOBUF_NAMESPACE_ID::int32 value)
BopParameters * New() const final
double max_time_in_seconds() const
double decomposed_problem_min_time_in_seconds() const
::operations_research::bop::BopSolverOptimizerSet * add_solver_optimizer_sets()
void clear_use_symmetry()
bool exploit_symmetry_in_sat_first_solution() const
bool has_max_lp_solve_for_feasibility_problems() const
void clear_max_number_of_conflicts_for_quick_check()
void clear_prune_search_tree()
bool has_log_search_progress() const
void set_max_number_of_conflicts_in_random_lns(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_max_lp_solve_for_feasibility_problems(::PROTOBUF_NAMESPACE_ID::int32 value)
bool has_exploit_symmetry_in_sat_first_solution() const
void set_max_time_in_seconds(double value)
friend void swap(BopParameters &a, BopParameters &b)
::PROTOBUF_NAMESPACE_ID::int32 number_of_solvers() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
bool use_learned_binary_clauses_in_lp() const
void set_number_of_solvers(::PROTOBUF_NAMESPACE_ID::int32 value)
bool has_use_sat_to_choose_lns_neighbourhood() const
bool has_max_number_of_consecutive_failing_optimizer_calls() const
PROTOBUF_MUST_USE_RESULT std::string * release_default_solver_optimizer_sets()
static bool ThreadSynchronizationType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ThreadSynchronizationType *value)
::PROTOBUF_NAMESPACE_ID::int32 max_number_of_conflicts_in_random_lns() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const BopParameters * internal_default_instance()
@ kUseRandomLnsFieldNumber
@ kMaxLpSolveForFeasibilityProblemsFieldNumber
@ kUseLearnedBinaryClausesInLpFieldNumber
@ kSolverOptimizerSetsFieldNumber
@ kUseLpStrongBranchingFieldNumber
@ kRelativeGapLimitFieldNumber
@ kUseSatToChooseLnsNeighbourhoodFieldNumber
@ kLpMaxDeterministicTimeFieldNumber
@ kLogSearchProgressFieldNumber
@ kNumRandomLnsTriesFieldNumber
@ kMaxNumberOfConflictsInRandomLnsFieldNumber
@ kMaxNumberOfConflictsInRandomSolutionGenerationFieldNumber
@ kNumRelaxedVarsFieldNumber
@ kDefaultSolverOptimizerSetsFieldNumber
@ kMaxNumberOfConsecutiveFailingOptimizerCallsFieldNumber
@ kExploitSymmetryInSatFirstSolutionFieldNumber
@ kNumBopSolversUsedByDecompositionFieldNumber
@ kUsePotentialOneFlipRepairsInLsFieldNumber
@ kMaxNumberOfBacktracksInLsFieldNumber
@ kComputeEstimatedImpactFieldNumber
@ kNumberOfSolversFieldNumber
@ kMaxNumBrokenConstraintsInLsFieldNumber
@ kUseTranspositionTableInLsFieldNumber
@ kSortConstraintsByNumTermsFieldNumber
@ kMaxNumberOfConflictsForQuickCheckFieldNumber
@ kSynchronizationTypeFieldNumber
@ kDecomposedProblemMinTimeInSecondsFieldNumber
@ kMaxNumDecisionsInLsFieldNumber
@ kUseSymmetryFieldNumber
@ kDecomposerNumVariablesThresholdFieldNumber
@ kGuidedSatConflictsChunkFieldNumber
@ kMaxDeterministicTimeFieldNumber
@ kPruneSearchTreeFieldNumber
@ kMaxNumberOfExploredAssignmentsPerTryInLsFieldNumber
@ kMaxTimeInSecondsFieldNumber
void clear_max_number_of_conflicts_in_random_solution_generation()
void set_max_number_of_conflicts_in_random_solution_generation(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr ThreadSynchronizationType SYNCHRONIZE_ON_RIGHT
bool has_max_num_decisions_in_ls() const
size_t ByteSizeLong() const final
void clear_use_transposition_table_in_ls()
void set_use_symmetry(bool value)
::operations_research::bop::BopParameters_ThreadSynchronizationType synchronization_type() const
void set_use_sat_to_choose_lns_neighbourhood(bool value)
int solver_optimizer_sets_size() const
bool has_use_lp_strong_branching() const
bool has_synchronization_type() const
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
bool has_max_number_of_explored_assignments_per_try_in_ls() const
BopSolverOptimizerSet & operator=(BopSolverOptimizerSet &&from) noexcept
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod > * mutable_methods()
BopSolverOptimizerSet * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
int GetCachedSize() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const BopSolverOptimizerSet * internal_default_instance()
static const ClassData _class_data_
static const BopSolverOptimizerSet & default_instance()
::operations_research::bop::BopOptimizerMethod * add_methods()
~BopSolverOptimizerSet() override
bool IsInitialized() const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static constexpr int kIndexInFileMessages
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void Swap(BopSolverOptimizerSet *other)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
friend void swap(BopSolverOptimizerSet &a, BopSolverOptimizerSet &b)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void CopyFrom(const BopSolverOptimizerSet &from)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
BopSolverOptimizerSet & operator=(const BopSolverOptimizerSet &from)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::bop::BopOptimizerMethod > & methods() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void MergeFrom(const BopSolverOptimizerSet &from)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
BopSolverOptimizerSet(BopSolverOptimizerSet &&from) noexcept
void UnsafeArenaSwap(BopSolverOptimizerSet *other)
size_t ByteSizeLong() const final
BopSolverOptimizerSet * New() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const std::string & BopOptimizerMethod_OptimizerType_Name(T enum_t_value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT BopParametersDefaultTypeInternal _BopParameters_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT BopOptimizerMethodDefaultTypeInternal _BopOptimizerMethod_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BopParameters_ThreadSynchronizationType_descriptor()
bool BopOptimizerMethod_OptimizerType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BopOptimizerMethod_OptimizerType *value)
constexpr BopParameters_ThreadSynchronizationType BopParameters_ThreadSynchronizationType_ThreadSynchronizationType_MIN
const std::string & BopParameters_ThreadSynchronizationType_Name(T enum_t_value)
bool BopOptimizerMethod_OptimizerType_IsValid(int value)
bool BopParameters_ThreadSynchronizationType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BopParameters_ThreadSynchronizationType *value)
constexpr int BopParameters_ThreadSynchronizationType_ThreadSynchronizationType_ARRAYSIZE
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BopOptimizerMethod_OptimizerType_descriptor()
constexpr BopOptimizerMethod_OptimizerType BopOptimizerMethod_OptimizerType_OptimizerType_MAX
constexpr BopOptimizerMethod_OptimizerType BopOptimizerMethod_OptimizerType_OptimizerType_MIN
constexpr int BopOptimizerMethod_OptimizerType_OptimizerType_ARRAYSIZE
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT BopSolverOptimizerSetDefaultTypeInternal _BopSolverOptimizerSet_default_instance_
constexpr BopParameters_ThreadSynchronizationType BopParameters_ThreadSynchronizationType_ThreadSynchronizationType_MAX
BopOptimizerMethod_OptimizerType
@ BopOptimizerMethod_OptimizerType_RELATION_GRAPH_LNS_GUIDED_BY_LP
@ BopOptimizerMethod_OptimizerType_COMPLETE_LNS
@ BopOptimizerMethod_OptimizerType_RANDOM_FIRST_SOLUTION
@ BopOptimizerMethod_OptimizerType_RANDOM_VARIABLE_LNS
@ BopOptimizerMethod_OptimizerType_LOCAL_SEARCH
@ BopOptimizerMethod_OptimizerType_LINEAR_RELAXATION
@ BopOptimizerMethod_OptimizerType_LP_FIRST_SOLUTION
@ BopOptimizerMethod_OptimizerType_RANDOM_CONSTRAINT_LNS
@ BopOptimizerMethod_OptimizerType_SAT_CORE_BASED
@ BopOptimizerMethod_OptimizerType_OBJECTIVE_FIRST_SOLUTION
@ BopOptimizerMethod_OptimizerType_USER_GUIDED_FIRST_SOLUTION
@ BopOptimizerMethod_OptimizerType_RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP
@ BopOptimizerMethod_OptimizerType_RELATION_GRAPH_LNS
@ BopOptimizerMethod_OptimizerType_SAT_LINEAR_SEARCH
@ BopOptimizerMethod_OptimizerType_RANDOM_VARIABLE_LNS_GUIDED_BY_LP
BopParameters_ThreadSynchronizationType
@ BopParameters_ThreadSynchronizationType_SYNCHRONIZE_ON_RIGHT
@ BopParameters_ThreadSynchronizationType_NO_SYNCHRONIZATION
@ BopParameters_ThreadSynchronizationType_SYNCHRONIZE_ALL
bool BopParameters_ThreadSynchronizationType_IsValid(int value)
Collection of objects used to extend the Constraint Solver library.