Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::sat::NeighborhoodGenerator Class Referenceabstract

Detailed Description

Definition at line 388 of file cp_model_lns.h.

#include <cp_model_lns.h>

Inheritance diagram for operations_research::sat::NeighborhoodGenerator:
operations_research::sat::ArcGraphNeighborhoodGenerator operations_research::sat::ConstraintGraphNeighborhoodGenerator operations_research::sat::DecompositionGraphNeighborhoodGenerator operations_research::sat::LocalBranchingLpBasedNeighborhoodGenerator operations_research::sat::RandomIntervalSchedulingNeighborhoodGenerator operations_research::sat::RandomPrecedenceSchedulingNeighborhoodGenerator operations_research::sat::RandomPrecedencesPackingNeighborhoodGenerator operations_research::sat::RandomRectanglesPackingNeighborhoodGenerator operations_research::sat::RectanglesPackingRelaxOneNeighborhoodGenerator operations_research::sat::RectanglesPackingRelaxTwoNeighborhoodsGenerator operations_research::sat::RelaxRandomConstraintsGenerator operations_research::sat::RelaxRandomVariablesGenerator operations_research::sat::RelaxationInducedNeighborhoodGenerator operations_research::sat::RoutingFullPathNeighborhoodGenerator operations_research::sat::RoutingPathNeighborhoodGenerator operations_research::sat::RoutingRandomNeighborhoodGenerator operations_research::sat::SchedulingResourceWindowsNeighborhoodGenerator operations_research::sat::SchedulingTimeWindowNeighborhoodGenerator operations_research::sat::SlicePackingNeighborhoodGenerator operations_research::sat::VariableGraphNeighborhoodGenerator

Classes

struct  SolveData

Public Types

using ActiveRectangle = NeighborhoodGeneratorHelper::ActiveRectangle

Public Member Functions

 NeighborhoodGenerator (absl::string_view name, NeighborhoodGeneratorHelper const *helper)
virtual ~NeighborhoodGenerator ()=default
virtual Neighborhood Generate (const CpSolverResponse &initial_solution, SolveData &data, absl::BitGenRef random)=0
virtual bool ReadyToGenerate () const
double GetUCBScore (int64_t total_num_calls) const
void AddSolveData (SolveData data)
absl::Span< const double > Synchronize ()
std::string name () const
int64_t num_calls () const
int64_t num_fully_solved_calls () const
int64_t num_improving_calls () const
int64_t num_consecutive_non_improving_calls () const
double difficulty () const
double deterministic_limit () const

Protected Attributes

const std::string name_
const NeighborhoodGeneratorHelperhelper_
absl::Mutex generator_mutex_
double deterministic_limit_ = 0.1

Member Typedef Documentation

◆ ActiveRectangle

Constructor & Destructor Documentation

◆ NeighborhoodGenerator()

operations_research::sat::NeighborhoodGenerator::NeighborhoodGenerator ( absl::string_view name,
NeighborhoodGeneratorHelper const * helper )
inline

Definition at line 390 of file cp_model_lns.h.

◆ ~NeighborhoodGenerator()

virtual operations_research::sat::NeighborhoodGenerator::~NeighborhoodGenerator ( )
virtualdefault

Member Function Documentation

◆ AddSolveData()

void operations_research::sat::NeighborhoodGenerator::AddSolveData ( SolveData data)
inline

Definition at line 472 of file cp_model_lns.h.

◆ deterministic_limit()

double operations_research::sat::NeighborhoodGenerator::deterministic_limit ( ) const
inline

Definition at line 518 of file cp_model_lns.h.

◆ difficulty()

double operations_research::sat::NeighborhoodGenerator::difficulty ( ) const
inline

Definition at line 512 of file cp_model_lns.h.

◆ Generate()

virtual Neighborhood operations_research::sat::NeighborhoodGenerator::Generate ( const CpSolverResponse & initial_solution,
SolveData & data,
absl::BitGenRef random )
pure virtual

◆ GetUCBScore()

double operations_research::sat::NeighborhoodGenerator::GetUCBScore ( int64_t total_num_calls) const

Definition at line 1245 of file cp_model_lns.cc.

◆ name()

std::string operations_research::sat::NeighborhoodGenerator::name ( ) const
inline

Definition at line 483 of file cp_model_lns.h.

◆ num_calls()

int64_t operations_research::sat::NeighborhoodGenerator::num_calls ( ) const
inline

Definition at line 486 of file cp_model_lns.h.

◆ num_consecutive_non_improving_calls()

int64_t operations_research::sat::NeighborhoodGenerator::num_consecutive_non_improving_calls ( ) const
inline

Definition at line 506 of file cp_model_lns.h.

◆ num_fully_solved_calls()

int64_t operations_research::sat::NeighborhoodGenerator::num_fully_solved_calls ( ) const
inline

Definition at line 492 of file cp_model_lns.h.

◆ num_improving_calls()

int64_t operations_research::sat::NeighborhoodGenerator::num_improving_calls ( ) const
inline

Definition at line 498 of file cp_model_lns.h.

◆ ReadyToGenerate()

bool operations_research::sat::NeighborhoodGenerator::ReadyToGenerate ( ) const
virtual

◆ Synchronize()

absl::Span< const double > operations_research::sat::NeighborhoodGenerator::Synchronize ( )

Definition at line 1252 of file cp_model_lns.cc.

Member Data Documentation

◆ deterministic_limit_

double operations_research::sat::NeighborhoodGenerator::deterministic_limit_ = 0.1
protected

Definition at line 527 of file cp_model_lns.h.

◆ generator_mutex_

absl::Mutex operations_research::sat::NeighborhoodGenerator::generator_mutex_
mutableprotected

Definition at line 526 of file cp_model_lns.h.

◆ helper_

const NeighborhoodGeneratorHelper& operations_research::sat::NeighborhoodGenerator::helper_
protected

Definition at line 525 of file cp_model_lns.h.

◆ name_

const std::string operations_research::sat::NeighborhoodGenerator::name_
protected

Definition at line 524 of file cp_model_lns.h.


The documentation for this class was generated from the following files: