![]() |
Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
|
Definition at line 107 of file cp_model_lns.h.
#include <cp_model_lns.h>
Classes | |
| struct | ActiveRectangle |
Public Member Functions | |
| NeighborhoodGeneratorHelper (CpModelProto const *model_proto, SatParameters const *parameters, SharedResponseManager *shared_response, ModelSharedTimeLimit *global_time_limit, SharedBoundsManager *shared_bounds=nullptr) | |
| bool | TaskIsAvailable () override |
| std::function< void()> | GenerateTask (int64_t) override |
| void | Synchronize () override |
| int | NumVariables () const |
| Neighborhood | FixGivenVariables (const CpSolverResponse &base_solution, const Bitset64< int > &variables_to_fix) const |
| Neighborhood | RelaxGivenVariables (const CpSolverResponse &initial_solution, absl::Span< const int > relaxed_variables) const |
| Neighborhood | FixAllVariables (const CpSolverResponse &initial_solution) const |
| Neighborhood | FullNeighborhood () const |
| Neighborhood | NoNeighborhood () const |
| void | AddSolutionHinting (const CpSolverResponse &initial_solution, CpModelProto *model_proto) const |
| bool | IsActive (int var) const ABSL_SHARED_LOCKS_REQUIRED(graph_mutex_) |
| std::vector< int > | ActiveVariables () const |
| int | NumActiveVariables () const |
| std::vector< int > | ActiveObjectiveVariables () const |
| bool | DifficultyMeansFullNeighborhood (double difficulty) const |
| const std::vector< int > & | ActiveVariablesWhileHoldingLock () const ABSL_SHARED_LOCKS_REQUIRED(graph_mutex_) |
| std::vector< int > | ActiveObjectiveVariablesWhileHoldingLock () const ABSL_SHARED_LOCKS_REQUIRED(graph_mutex_) |
| std::vector< int > | ImprovableObjectiveVariablesWhileHoldingLock (const CpSolverResponse &initial_solution) const ABSL_LOCKS_EXCLUDED(domain_mutex_) |
| const CompactVectorVector< int, int > & | ConstraintToVar () const ABSL_SHARED_LOCKS_REQUIRED(graph_mutex_) |
| const CompactVectorVector< int, int > & | VarToConstraint () const ABSL_SHARED_LOCKS_REQUIRED(graph_mutex_) |
| absl::Span< const int > | TypeToConstraints (ConstraintProto::ConstraintCase type) const |
| std::vector< int > | KeepActiveIntervals (absl::Span< const int > unfiltered_intervals, const CpSolverResponse &initial_solution) const |
| std::vector< int > | GetActiveIntervals (const CpSolverResponse &initial_solution) const |
| std::vector< ActiveRectangle > | GetActiveRectangles (const CpSolverResponse &initial_solution) const |
| std::vector< std::vector< int > > | GetUniqueIntervalSets () const |
| std::vector< std::vector< int > > | GetRoutingPathBooleanVariables (const CpSolverResponse &initial_solution) const |
| std::vector< std::pair< int, int > > | GetSchedulingPrecedences (const absl::flat_hash_set< int > &ignored_intervals, const CpSolverResponse &initial_solution, absl::BitGenRef random) const |
| CpModelProto | UpdatedModelProtoCopy () const |
| const CpModelProto & | ModelProto () const |
| const SatParameters & | Parameters () const |
| const SharedResponseManager & | shared_response () const |
| Public Member Functions inherited from operations_research::sat::SubSolver | |
| SubSolver (absl::string_view name, SubsolverType type) | |
| virtual | ~SubSolver ()=default |
| virtual bool | IsDone () |
| double | deterministic_time () const |
| std::string | name () const |
| SubsolverType | type () const |
| void | AddTaskDuration (double duration_in_seconds) |
| void | NotifySelection () |
| void | AddTaskDeterministicDuration (double deterministic_duration) |
| std::string | TimingInfo () const |
| std::string | DeterministicTimingInfo () const |
| double | GetSelectionScore (bool deterministic) const |
Public Attributes | |
| absl::Mutex | graph_mutex_ |
Additional Inherited Members | |
| Public Types inherited from operations_research::sat::SubSolver | |
| enum | SubsolverType { FULL_PROBLEM , FIRST_SOLUTION , INCOMPLETE , HELPER } |
| operations_research::sat::NeighborhoodGeneratorHelper::NeighborhoodGeneratorHelper | ( | CpModelProto const * | model_proto, |
| SatParameters const * | parameters, | ||
| SharedResponseManager * | shared_response, | ||
| ModelSharedTimeLimit * | global_time_limit, | ||
| SharedBoundsManager * | shared_bounds = nullptr ) |
Definition at line 73 of file cp_model_lns.cc.
|
inline |
Definition at line 169 of file cp_model_lns.h.
|
inline |
Definition at line 192 of file cp_model_lns.h.
|
inline |
Definition at line 157 of file cp_model_lns.h.
|
inline |
Definition at line 185 of file cp_model_lns.h.
| void operations_research::sat::NeighborhoodGeneratorHelper::AddSolutionHinting | ( | const CpSolverResponse & | initial_solution, |
| CpModelProto * | model_proto ) const |
Definition at line 1187 of file cp_model_lns.cc.
|
inline |
Definition at line 211 of file cp_model_lns.h.
|
inline |
Definition at line 176 of file cp_model_lns.h.
| Neighborhood operations_research::sat::NeighborhoodGeneratorHelper::FixAllVariables | ( | const CpSolverResponse & | initial_solution | ) | const |
Definition at line 1219 of file cp_model_lns.cc.
| Neighborhood operations_research::sat::NeighborhoodGeneratorHelper::FixGivenVariables | ( | const CpSolverResponse & | base_solution, |
| const Bitset64< int > & | variables_to_fix ) const |
Definition at line 1070 of file cp_model_lns.cc.
| Neighborhood operations_research::sat::NeighborhoodGeneratorHelper::FullNeighborhood | ( | ) | const |
Definition at line 419 of file cp_model_lns.cc.
|
inlineoverridevirtual |
Implements operations_research::sat::SubSolver.
Definition at line 117 of file cp_model_lns.h.
| std::vector< int > operations_research::sat::NeighborhoodGeneratorHelper::GetActiveIntervals | ( | const CpSolverResponse & | initial_solution | ) | const |
Definition at line 474 of file cp_model_lns.cc.
| std::vector< NeighborhoodGeneratorHelper::ActiveRectangle > operations_research::sat::NeighborhoodGeneratorHelper::GetActiveRectangles | ( | const CpSolverResponse & | initial_solution | ) | const |
Definition at line 481 of file cp_model_lns.cc.
| std::vector< std::vector< int > > operations_research::sat::NeighborhoodGeneratorHelper::GetRoutingPathBooleanVariables | ( | const CpSolverResponse & | initial_solution | ) | const |
Definition at line 984 of file cp_model_lns.cc.
| std::vector< std::pair< int, int > > operations_research::sat::NeighborhoodGeneratorHelper::GetSchedulingPrecedences | ( | const absl::flat_hash_set< int > & | ignored_intervals, |
| const CpSolverResponse & | initial_solution, | ||
| absl::BitGenRef | random ) const |
Definition at line 959 of file cp_model_lns.cc.
| std::vector< std::vector< int > > operations_research::sat::NeighborhoodGeneratorHelper::GetUniqueIntervalSets | ( | ) | const |
Definition at line 515 of file cp_model_lns.cc.
| std::vector< int > operations_research::sat::NeighborhoodGeneratorHelper::ImprovableObjectiveVariablesWhileHoldingLock | ( | const CpSolverResponse & | initial_solution | ) | const |
Definition at line 1336 of file cp_model_lns.cc.
| bool operations_research::sat::NeighborhoodGeneratorHelper::IsActive | ( | int | var | ) | const |
Definition at line 409 of file cp_model_lns.cc.
| std::vector< int > operations_research::sat::NeighborhoodGeneratorHelper::KeepActiveIntervals | ( | absl::Span< const int > | unfiltered_intervals, |
| const CpSolverResponse & | initial_solution ) const |
Definition at line 462 of file cp_model_lns.cc.
|
inline |
Definition at line 280 of file cp_model_lns.h.
| Neighborhood operations_research::sat::NeighborhoodGeneratorHelper::NoNeighborhood | ( | ) | const |
Definition at line 431 of file cp_model_lns.cc.
|
inline |
Definition at line 164 of file cp_model_lns.h.
|
inline |
Definition at line 122 of file cp_model_lns.h.
|
inline |
Definition at line 281 of file cp_model_lns.h.
| Neighborhood operations_research::sat::NeighborhoodGeneratorHelper::RelaxGivenVariables | ( | const CpSolverResponse & | initial_solution, |
| absl::Span< const int > | relaxed_variables ) const |
Definition at line 1205 of file cp_model_lns.cc.
|
inline |
Definition at line 283 of file cp_model_lns.h.
|
overridevirtual |
Implements operations_research::sat::SubSolver.
Definition at line 103 of file cp_model_lns.cc.
|
inlineoverridevirtual |
Implements operations_research::sat::SubSolver.
Definition at line 116 of file cp_model_lns.h.
|
inline |
Definition at line 221 of file cp_model_lns.h.
| CpModelProto operations_research::sat::NeighborhoodGeneratorHelper::UpdatedModelProtoCopy | ( | ) | const |
Definition at line 1231 of file cp_model_lns.cc.
|
inline |
Definition at line 215 of file cp_model_lns.h.
|
mutable |
Definition at line 292 of file cp_model_lns.h.