#include <BonLocalSolverBasedHeuristic.hpp>
Inheritance diagram for Bonmin::LocalSolverBasedHeuristic:


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< Bonmin::OptionsList > options) |
| Setup the defaults. | |
| void | Initialize (Ipopt::SmartPtr< Bonmin::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< Bonmin::OptionsList > options, std::string prefix, const std::string &option, const std::string &value) |
| static void | changeIfNotSet (Ipopt::SmartPtr< Bonmin::OptionsList > options, std::string prefix, const std::string &option, const double &value) |
| static void | changeIfNotSet (Ipopt::SmartPtr< Bonmin::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 | ( | ) |
| Bonmin::LocalSolverBasedHeuristic::LocalSolverBasedHeuristic | ( | BonminSetup * | setup | ) |
Constructor with setup.
Definition at line 20 of file BonLocalSolverBasedHeuristic.cpp.
References Initialize(), and Bonmin::BabSetupBase::options().
| Bonmin::LocalSolverBasedHeuristic::LocalSolverBasedHeuristic | ( | const LocalSolverBasedHeuristic & | other | ) |
| Bonmin::LocalSolverBasedHeuristic::~LocalSolverBasedHeuristic | ( | ) |
| virtual CbcHeuristic* Bonmin::LocalSolverBasedHeuristic::clone | ( | ) | const [pure virtual] |
Virtual copy constructor.
Implemented in Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, and Bonmin::PumpForMinlp.
| LocalSolverBasedHeuristic & Bonmin::LocalSolverBasedHeuristic::operator= | ( | const LocalSolverBasedHeuristic & | rhs | ) |
Assignment operator.
Definition at line 41 of file BonLocalSolverBasedHeuristic.cpp.
References setup_.
| virtual void Bonmin::LocalSolverBasedHeuristic::resetModel | ( | CbcModel * | model | ) | [inline, virtual] |
| void Bonmin::LocalSolverBasedHeuristic::setSetup | ( | BonminSetup * | setup | ) | [inline] |
| virtual int Bonmin::LocalSolverBasedHeuristic::solution | ( | double & | objectiveValue, | |
| double * | newSolution | |||
| ) | [pure virtual] |
Performs heuristic.
Implemented in Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, and Bonmin::PumpForMinlp.
| virtual int Bonmin::LocalSolverBasedHeuristic::solution | ( | double & | objectiveValue, | |
| double * | newSolution, | |||
| OsiCuts & | cs | |||
| ) | [inline, virtual] |
| 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.
Definition at line 91 of file BonLocalSolverBasedHeuristic.cpp.
References Bonmin::Bab::bestObj(), Bonmin::Bab::bestSolution(), Bonmin::BonminSetup::clone(), Bonmin::BabSetupBase::Cutoff, Bonmin::OsiTMINLPInterface::getNumCols(), Bonmin::BabSetupBase::NumberStrong, Bonmin::BabSetupBase::setDoubleParameter(), Bonmin::BabSetupBase::setIntParameter(), and setup_.
Referenced by Bonmin::PumpForMinlp::solution(), Bonmin::HeuristicRINS::solution(), Bonmin::HeuristicLocalBranching::solution(), Bonmin::FixAndSolveHeuristic::solution(), and Bonmin::DummyPump::solution().
| void Bonmin::LocalSolverBasedHeuristic::registerOptions | ( | Ipopt::SmartPtr< Bonmin::RegisteredOptions > | roptions | ) | [static] |
Register the options common to all local search based heuristics.
Reimplemented in Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, and Bonmin::PumpForMinlp.
Definition at line 112 of file BonLocalSolverBasedHeuristic.cpp.
Referenced by Bonmin::BonminSetup::registerAllOptions().
| void Bonmin::LocalSolverBasedHeuristic::setupDefaults | ( | Ipopt::SmartPtr< Bonmin::OptionsList > | options | ) | [virtual] |
Setup the defaults.
Reimplemented in Bonmin::PumpForMinlp.
Definition at line 81 of file BonLocalSolverBasedHeuristic.cpp.
References changeIfNotSet().
Referenced by Initialize().
| void Bonmin::LocalSolverBasedHeuristic::Initialize | ( | Ipopt::SmartPtr< Bonmin::OptionsList > | options | ) |
Initiaize using passed options.
Some fancy defaults.
Reimplemented in Bonmin::DummyPump, Bonmin::FixAndSolveHeuristic, Bonmin::HeuristicLocalBranching, Bonmin::HeuristicRINS, and Bonmin::PumpForMinlp.
Definition at line 117 of file BonLocalSolverBasedHeuristic.cpp.
References setupDefaults().
Referenced by LocalSolverBasedHeuristic().
| void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Bonmin::OptionsList > | options, | |
| std::string | prefix, | |||
| const std::string & | option, | |||
| const std::string & | value | |||
| ) | [static, protected] |
Definition at line 50 of file BonLocalSolverBasedHeuristic.cpp.
Referenced by Bonmin::PumpForMinlp::setupDefaults(), and setupDefaults().
| void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Bonmin::OptionsList > | options, | |
| std::string | prefix, | |||
| const std::string & | option, | |||
| const double & | value | |||
| ) | [static, protected] |
Definition at line 60 of file BonLocalSolverBasedHeuristic.cpp.
| void Bonmin::LocalSolverBasedHeuristic::changeIfNotSet | ( | Ipopt::SmartPtr< Bonmin::OptionsList > | options, | |
| std::string | prefix, | |||
| const std::string & | option, | |||
| const int & | value | |||
| ) | [static, protected] |
Definition at line 70 of file BonLocalSolverBasedHeuristic.cpp.
BonminSetup* Bonmin::LocalSolverBasedHeuristic::setup_ [protected] |
Setup to use for local searches (will make copies).
Definition at line 75 of file BonLocalSolverBasedHeuristic.hpp.
Referenced by doLocalSearch(), operator=(), Bonmin::PumpForMinlp::solution(), Bonmin::HeuristicRINS::solution(), Bonmin::HeuristicLocalBranching::solution(), Bonmin::FixAndSolveHeuristic::solution(), Bonmin::DummyPump::solution(), and Bonmin::HeuristicLocalBranching::validate().
double Bonmin::LocalSolverBasedHeuristic::time_limit_ [private] |
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.
1.4.7