#include <BonHeuristicInnerApproximation.hpp>
Public Member Functions | |
HeuristicInnerApproximation (BonminSetup *setup) | |
Constructor with setup. More... | |
HeuristicInnerApproximation (const HeuristicInnerApproximation ©) | |
Copy constructor. More... | |
~HeuristicInnerApproximation () | |
Destructor. More... | |
HeuristicInnerApproximation & | operator= (const HeuristicInnerApproximation &rhs) |
Assignment operator. More... | |
virtual CbcHeuristic * | clone () const |
Clone. More... | |
void | Initialize (BonminSetup *setup) |
Initialize method. More... | |
virtual void | resetModel (CbcModel *model) |
Resets stuff if model changes. More... | |
virtual int | solution (double &solutionValue, double *betterSolution) |
Performs heuristic. More... | |
Static Public Member Functions | |
static void | registerOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions) |
Register the options common to all local search based heuristics. More... | |
Protected Attributes | |
BonminSetup * | setup_ |
Setup to use for local searches (will make copies). More... | |
Private Member Functions | |
void | extractInnerApproximation (OsiTMINLPInterface &nlp, OsiSolverInterface &si, const double *x, bool getObj) |
bool | getMyInnerApproximation (OsiTMINLPInterface &si, OsiCuts &cs, int ind, const double *x, const double *x2) |
Get an inner-approximation constraint obtained by drawing a chord linking the two given points x and x2. More... | |
Private Attributes | |
int | howOften_ |
How often to do (code can change) More... | |
SubMipSolver * | mip_ |
A subsolver for MIP. More... | |
int | nbAp_ |
Number of Approximation points. More... | |
Definition at line 20 of file BonHeuristicInnerApproximation.hpp.
Bonmin::HeuristicInnerApproximation::HeuristicInnerApproximation | ( | BonminSetup * | setup | ) |
Constructor with setup.
Definition at line 41 of file BonHeuristicInnerApproximation.cpp.
Bonmin::HeuristicInnerApproximation::HeuristicInnerApproximation | ( | const HeuristicInnerApproximation & | copy | ) |
Copy constructor.
Definition at line 47 of file BonHeuristicInnerApproximation.cpp.
Bonmin::HeuristicInnerApproximation::~HeuristicInnerApproximation | ( | ) |
Destructor.
Definition at line 90 of file BonHeuristicInnerApproximation.cpp.
HeuristicInnerApproximation & Bonmin::HeuristicInnerApproximation::operator= | ( | const HeuristicInnerApproximation & | rhs | ) |
Assignment operator.
Definition at line 57 of file BonHeuristicInnerApproximation.cpp.
|
inlinevirtual |
Clone.
Definition at line 37 of file BonHeuristicInnerApproximation.hpp.
void Bonmin::HeuristicInnerApproximation::Initialize | ( | BonminSetup * | setup | ) |
Initialize method.
Definition at line 82 of file BonHeuristicInnerApproximation.cpp.
|
inlinevirtual |
Resets stuff if model changes.
Definition at line 45 of file BonHeuristicInnerApproximation.hpp.
|
virtual |
Performs heuristic.
Returns a feasible solution to the MINLP The heuristic constructs a MIP based approximating all univariate functions appearing in nonlinear constraints The linear approximation is obtained by adding inner chords linking pairs of points until covering the range of each variable.
Definition at line 98 of file BonHeuristicInnerApproximation.cpp.
|
static |
Register the options common to all local search based heuristics.
Definition at line 70 of file BonHeuristicInnerApproximation.cpp.
|
private |
Definition at line 304 of file BonHeuristicInnerApproximation.cpp.
|
private |
Get an inner-approximation constraint obtained by drawing a chord linking the two given points x and x2.
This only applies to nonlinear constraints featuring univariate functions (f(x) <= y).
Definition at line 237 of file BonHeuristicInnerApproximation.cpp.
|
protected |
Setup to use for local searches (will make copies).
Definition at line 58 of file BonHeuristicInnerApproximation.hpp.
|
private |
How often to do (code can change)
Definition at line 62 of file BonHeuristicInnerApproximation.hpp.
|
private |
A subsolver for MIP.
Definition at line 65 of file BonHeuristicInnerApproximation.hpp.
|
private |
Number of Approximation points.
Definition at line 68 of file BonHeuristicInnerApproximation.hpp.