Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::bop::BopAdaptiveLNSOptimizer Class Referencefinal

#include <bop_lns.h>

Inheritance diagram for operations_research::bop::BopAdaptiveLNSOptimizer:
operations_research::bop::BopOptimizerBase

Public Member Functions

 BopAdaptiveLNSOptimizer (absl::string_view name, bool use_lp_to_guide_sat, NeighborhoodGenerator *neighborhood_generator, sat::SatSolver *sat_propagator)
 
 ~BopAdaptiveLNSOptimizer () final
 
- Public Member Functions inherited from operations_research::bop::BopOptimizerBase
 BopOptimizerBase (absl::string_view name)
 
virtual ~BopOptimizerBase ()
 
const std::string & name () const
 Returns the name given at construction.
 

Additional Inherited Members

- Public Types inherited from operations_research::bop::BopOptimizerBase
enum  Status {
  OPTIMAL_SOLUTION_FOUND , SOLUTION_FOUND , INFEASIBLE , LIMIT_REACHED ,
  INFORMATION_FOUND , CONTINUE , ABORT
}
 
- Static Public Member Functions inherited from operations_research::bop::BopOptimizerBase
static std::string GetStatusString (Status status)
 Returns a string describing the status.
 
- Protected Attributes inherited from operations_research::bop::BopOptimizerBase
const std::string name_
 
StatsGroup stats_
 

Detailed Description

A generic LNS optimizer which generates neighborhoods according to the given NeighborhoodGenerator and automatically adapt the neighborhood size depending on how easy it is to solve the associated problem.

Definition at line 96 of file bop_lns.h.

Constructor & Destructor Documentation

◆ BopAdaptiveLNSOptimizer()

operations_research::bop::BopAdaptiveLNSOptimizer::BopAdaptiveLNSOptimizer ( absl::string_view name,
bool use_lp_to_guide_sat,
NeighborhoodGenerator * neighborhood_generator,
sat::SatSolver * sat_propagator )

Takes ownership of the given neighborhood_generator. The sat_propagator is assumed to contains the current problem.

Note(user): We prefer to start with a really low difficulty as this works better for large problem, and for small ones, it will be really quickly increased anyway. Maybe a better approach is to start by relaxing something like 10 variables instead of having a fixed percentage.

Definition at line 231 of file bop_lns.cc.

◆ ~BopAdaptiveLNSOptimizer()

operations_research::bop::BopAdaptiveLNSOptimizer::~BopAdaptiveLNSOptimizer ( )
finaldefault

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