Bonmin
1.7
|
#include <BonLocalSolverBasedHeuristic.hpp>
Public Member Functions | |
LocalSolverBasedHeuristic () | |
Default constructor. | |
LocalSolverBasedHeuristic (BonminSetup *setup) | |
Constructor with setup. | |
LocalSolverBasedHeuristic (const LocalSolverBasedHeuristic &other) | |
Copy constructor. | |
~LocalSolverBasedHeuristic () | |
Destructor. | |
virtual CbcHeuristic * | clone () const =0 |
Virtual copy constructor. | |
LocalSolverBasedHeuristic & | operator= (const LocalSolverBasedHeuristic &rhs) |
Assignment operator. | |
virtual void | resetModel (CbcModel *model) |
Resets stuff if model changes. | |
void | setSetup (BonminSetup *setup) |
Change setup used for heuristic. | |
virtual int | solution (double &objectiveValue, double *newSolution)=0 |
Performs heuristic. | |
virtual int | solution (double &objectiveValue, double *newSolution, OsiCuts &cs) |
Performs heuristic which adds cuts. | |
int | doLocalSearch (OsiTMINLPInterface *solver, double *solution, double &solValue, double cutoff, std::string prefix="local_solver.") const |
Do a local search based on setup and passed solver. | |
virtual void | setupDefaults (Ipopt::SmartPtr< Ipopt::OptionsList > options) |
Setup the defaults. | |
void | Initialize (Ipopt::SmartPtr< Ipopt::OptionsList > options) |
Initiaize using passed options. | |
Static Public Member Functions | |
static void | registerOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions) |
Register the options common to all local search based heuristics. | |
Static Protected Member Functions | |
static void | changeIfNotSet (Ipopt::SmartPtr< Ipopt::OptionsList > options, std::string prefix, const std::string &option, const std::string &value) |
static void | changeIfNotSet (Ipopt::SmartPtr< Ipopt::OptionsList > options, std::string prefix, const std::string &option, const double &value) |
static void | changeIfNotSet (Ipopt::SmartPtr< Ipopt::OptionsList > options, std::string prefix, const std::string &option, const int &value) |
Protected Attributes | |
BonminSetup * | setup_ |
Setup to use for local searches (will make copies). | |
Private Attributes | |
double | time_limit_ |
Time limit in local search. | |
int | max_number_nodes_ |
maximal number of nodes in local search. | |
int | max_number_solutions_ |
Maximal number of solutions in local search. |
Definition at line 15 of file BonLocalSolverBasedHeuristic.hpp.
Bonmin::LocalSolverBasedHeuristic::LocalSolverBasedHeuristic | ( | ) |
Default constructor.
Bonmin::LocalSolverBasedHeuristic::LocalSolverBasedHeuristic | ( | BonminSetup * | setup | ) |
Constructor with setup.
Bonmin::LocalSolverBasedHeuristic::LocalSolverBasedHeuristic | ( | const LocalSolverBasedHeuristic & | other | ) |
Copy constructor.
Bonmin::LocalSolverBasedHeuristic::~LocalSolverBasedHeuristic | ( | ) |
Destructor.
virtual CbcHeuristic* Bonmin::LocalSolverBasedHeuristic::clone | ( | ) | const [pure virtual] |
Virtual copy constructor.
Implemented in Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, and Bonmin::PumpForMinlp.
LocalSolverBasedHeuristic& Bonmin::LocalSolverBasedHeuristic::operator= | ( | const LocalSolverBasedHeuristic & | rhs | ) |
Assignment operator.
virtual void Bonmin::LocalSolverBasedHeuristic::resetModel | ( | CbcModel * | model | ) | [inline, virtual] |
Resets stuff if model changes.
Definition at line 40 of file BonLocalSolverBasedHeuristic.hpp.
void Bonmin::LocalSolverBasedHeuristic::setSetup | ( | BonminSetup * | setup | ) | [inline] |
Change setup used for heuristic.
Definition at line 45 of file BonLocalSolverBasedHeuristic.hpp.
References Initialize(), Bonmin::BabSetupBase::options(), and setup_.
virtual int Bonmin::LocalSolverBasedHeuristic::solution | ( | double & | objectiveValue, |
double * | newSolution | ||
) | [pure virtual] |
Performs heuristic.
Implemented in Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, and Bonmin::PumpForMinlp.
virtual int Bonmin::LocalSolverBasedHeuristic::solution | ( | double & | objectiveValue, |
double * | newSolution, | ||
OsiCuts & | cs | ||
) | [inline, virtual] |
Performs heuristic which adds cuts.
Definition at line 54 of file BonLocalSolverBasedHeuristic.hpp.
int Bonmin::LocalSolverBasedHeuristic::doLocalSearch | ( | OsiTMINLPInterface * | solver, |
double * | solution, | ||
double & | solValue, | ||
double | cutoff, | ||
std::string | prefix = "local_solver." |
||
) | const |
Do a local search based on setup and passed solver.
static void Bonmin::LocalSolverBasedHeuristic::registerOptions | ( | Ipopt::SmartPtr< Bonmin::RegisteredOptions > | roptions | ) | [static] |
Register the options common to all local search based heuristics.
Reimplemented in Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, and Bonmin::PumpForMinlp.
virtual void Bonmin::LocalSolverBasedHeuristic::setupDefaults | ( | Ipopt::SmartPtr< Ipopt::OptionsList > | options | ) | [virtual] |
Setup the defaults.
Reimplemented in Bonmin::PumpForMinlp.
void Bonmin::LocalSolverBasedHeuristic::Initialize | ( | Ipopt::SmartPtr< Ipopt::OptionsList > | options | ) |
Initiaize using passed options.
Reimplemented in Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, Bonmin::PumpForMinlp, Bonmin::DummyPump, and Bonmin::FixAndSolveHeuristic.
Referenced by setSetup().
static void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Ipopt::OptionsList > | options, |
std::string | prefix, | ||
const std::string & | option, | ||
const std::string & | value | ||
) | [static, protected] |
static void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Ipopt::OptionsList > | options, |
std::string | prefix, | ||
const std::string & | option, | ||
const double & | value | ||
) | [static, protected] |
static void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Ipopt::OptionsList > | options, |
std::string | prefix, | ||
const std::string & | option, | ||
const int & | value | ||
) | [static, protected] |
BonminSetup* Bonmin::LocalSolverBasedHeuristic::setup_ [protected] |
Setup to use for local searches (will make copies).
Definition at line 75 of file BonLocalSolverBasedHeuristic.hpp.
Referenced by setSetup().
double Bonmin::LocalSolverBasedHeuristic::time_limit_ [private] |
Time limit in local search.
Definition at line 93 of file BonLocalSolverBasedHeuristic.hpp.
int Bonmin::LocalSolverBasedHeuristic::max_number_nodes_ [private] |
maximal number of nodes in local search.
Definition at line 95 of file BonLocalSolverBasedHeuristic.hpp.
int Bonmin::LocalSolverBasedHeuristic::max_number_solutions_ [private] |
Maximal number of solutions in local search.
Definition at line 97 of file BonLocalSolverBasedHeuristic.hpp.