#include <BonOaDecBase.hpp>
Inheritance diagram for Bonmin::OaDecompositionBase:
Public Member Functions | |
OaDecompositionBase (OsiTMINLPInterface *nlp=NULL, OsiSolverInterface *si=NULL, CbcStrategy *strategy=NULL, double cbcCutoffIncrement_=1e-07, double cbcIntegerTolerance=1e-05, bool leaveSiUnchanged=0) | |
Old usefull constructor. | |
OaDecompositionBase (BabSetupBase &b, bool leaveSiUnchanged, bool reassignLpsolver) | |
New usefull constructor. | |
OaDecompositionBase (const OaDecompositionBase ©) | |
Copy constructor. | |
virtual | ~OaDecompositionBase () |
Destructor. | |
virtual void | generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo()) const |
Standard cut generation methods. | |
void | assignNlpInterface (OsiTMINLPInterface *nlp) |
Assign an OsiTMINLPInterface. | |
void | assignLpInterface (OsiSolverInterface *si) |
Assign an OsiTMINLPInterface. | |
bool | reassignLpsolver () |
void | setObjects (OsiObject **objects, int nObjects) |
Set objects. | |
void | setLeaveSiUnchanged (bool yesno) |
Set whether to leave the solverinterface unchanged. | |
Parameters & | parameter () |
const Parameters & | parameter () const |
void | setLogLevel (int level) |
void | passInMessageHandler (CoinMessageHandler *handler) |
Protected Member Functions | |
virtual double | performOa (OsiCuts &cs, solverManip &nlpManip, solverManip &lpManip, SubMipSolver *&subMip, OsiBabSolver *babInfo, double &) const =0 |
virtual method which performs the OA algorithm by modifying lp and nlp. | |
virtual bool | doLocalSearch () const =0 |
virutal method to decide if local search is performed | |
Protected helper functions | |
bool | solveNlp (OsiBabSolver *babInfo, double cutoff) const |
Solve the nlp and do output. | |
Protected Attributes | |
Protected members | |
OsiTMINLPInterface * | nlp_ |
Pointer to nlp interface. | |
int | nSolve_ |
Number of nlp solved done. | |
OsiSolverInterface * | lp_ |
A linear solver. | |
OsiObject ** | objects_ |
Some objects the feasiblitiy of which to verify. | |
int | nObjects_ |
Number of objects.*/. | |
int | nLocalSearch_ |
number of local searches performed | |
CoinMessageHandler * | handler_ |
messages handler. | |
CoinMessages | messages_ |
Messages for OA. | |
bool | leaveSiUnchanged_ |
Wether or not we should remove cuts at the end of the procedure. | |
bool | reassignLpsolver_ |
Do we need to reassign the lp solver with Cbc. | |
double | timeBegin_ |
time of construction | |
Parameters | parameters_ |
Parameters. | |
Classes | |
struct | Parameters |
Parameters for algorithm. More... | |
class | solverManip |
Small class to manipulatee various things in an OsiSolverInterface and restore them. More... | |
class | SubMipSolver |
Small class to perform the solution of sub-mips. More... |
Definition at line 31 of file BonOaDecBase.hpp.
Bonmin::OaDecompositionBase::OaDecompositionBase | ( | OsiTMINLPInterface * | nlp = NULL , |
|
OsiSolverInterface * | si = NULL , |
|||
CbcStrategy * | strategy = NULL , |
|||
double | cbcCutoffIncrement_ = 1e-07 , |
|||
double | cbcIntegerTolerance = 1e-05 , |
|||
bool | leaveSiUnchanged = 0 | |||
) |
Old usefull constructor.
Bonmin::OaDecompositionBase::OaDecompositionBase | ( | BabSetupBase & | b, | |
bool | leaveSiUnchanged, | |||
bool | reassignLpsolver | |||
) |
New usefull constructor.
Bonmin::OaDecompositionBase::OaDecompositionBase | ( | const OaDecompositionBase & | copy | ) |
Copy constructor.
virtual Bonmin::OaDecompositionBase::~OaDecompositionBase | ( | ) | [virtual] |
Destructor.
virtual void Bonmin::OaDecompositionBase::generateCuts | ( | const OsiSolverInterface & | si, | |
OsiCuts & | cs, | |||
const CglTreeInfo | info = CglTreeInfo() | |||
) | const [virtual] |
void Bonmin::OaDecompositionBase::assignNlpInterface | ( | OsiTMINLPInterface * | nlp | ) | [inline] |
void Bonmin::OaDecompositionBase::assignLpInterface | ( | OsiSolverInterface * | si | ) | [inline] |
bool Bonmin::OaDecompositionBase::reassignLpsolver | ( | ) | [inline] |
void Bonmin::OaDecompositionBase::setObjects | ( | OsiObject ** | objects, | |
int | nObjects | |||
) | [inline] |
void Bonmin::OaDecompositionBase::setLeaveSiUnchanged | ( | bool | yesno | ) | [inline] |
Set whether to leave the solverinterface unchanged.
Definition at line 260 of file BonOaDecBase.hpp.
References leaveSiUnchanged_.
Parameters& Bonmin::OaDecompositionBase::parameter | ( | ) | [inline] |
const Parameters& Bonmin::OaDecompositionBase::parameter | ( | ) | const [inline] |
void Bonmin::OaDecompositionBase::setLogLevel | ( | int | level | ) | [inline] |
Definition at line 328 of file BonOaDecBase.hpp.
References handler_, and CoinMessageHandler::setLogLevel().
void Bonmin::OaDecompositionBase::passInMessageHandler | ( | CoinMessageHandler * | handler | ) |
bool Bonmin::OaDecompositionBase::solveNlp | ( | OsiBabSolver * | babInfo, | |
double | cutoff | |||
) | const [protected] |
Solve the nlp and do output.
virtual double Bonmin::OaDecompositionBase::performOa | ( | OsiCuts & | cs, | |
solverManip & | nlpManip, | |||
solverManip & | lpManip, | |||
SubMipSolver *& | subMip, | |||
OsiBabSolver * | babInfo, | |||
double & | ||||
) | const [protected, pure virtual] |
virtual method which performs the OA algorithm by modifying lp and nlp.
virtual bool Bonmin::OaDecompositionBase::doLocalSearch | ( | ) | const [protected, pure virtual] |
virutal method to decide if local search is performed
Implemented in Bonmin::EcpCuts, Bonmin::OACutGenerator2, and Bonmin::OaFeasibilityChecker.
OsiTMINLPInterface* Bonmin::OaDecompositionBase::nlp_ [mutable, protected] |
Pointer to nlp interface.
Definition at line 352 of file BonOaDecBase.hpp.
Referenced by assignNlpInterface().
int Bonmin::OaDecompositionBase::nSolve_ [mutable, protected] |
OsiSolverInterface* Bonmin::OaDecompositionBase::lp_ [mutable, protected] |
A linear solver.
Definition at line 356 of file BonOaDecBase.hpp.
Referenced by assignLpInterface().
OsiObject* * Bonmin::OaDecompositionBase::objects_ [protected] |
Some objects the feasiblitiy of which to verify.
Definition at line 358 of file BonOaDecBase.hpp.
Referenced by setObjects().
int Bonmin::OaDecompositionBase::nObjects_ [protected] |
int Bonmin::OaDecompositionBase::nLocalSearch_ [mutable, protected] |
CoinMessageHandler* Bonmin::OaDecompositionBase::handler_ [protected] |
CoinMessages Bonmin::OaDecompositionBase::messages_ [protected] |
bool Bonmin::OaDecompositionBase::leaveSiUnchanged_ [protected] |
Wether or not we should remove cuts at the end of the procedure.
Definition at line 368 of file BonOaDecBase.hpp.
Referenced by setLeaveSiUnchanged().
bool Bonmin::OaDecompositionBase::reassignLpsolver_ [protected] |
Do we need to reassign the lp solver with Cbc.
Definition at line 370 of file BonOaDecBase.hpp.
Referenced by reassignLpsolver().
double Bonmin::OaDecompositionBase::timeBegin_ [protected] |
Parameters Bonmin::OaDecompositionBase::parameters_ [protected] |
Definition at line 375 of file BonOaDecBase.hpp.
Referenced by parameter(), Bonmin::OaFeasibilityChecker::setStrategy(), and Bonmin::OACutGenerator2::setStrategy().