10 #ifndef BonOaNlpOptim_HPP
11 #define BonOaNlpOptim_HPP
12 #include "CglCutGenerator.hpp"
24 int maxDepth = 10,
bool addOnlyViolated =
false,
25 bool globalCuts =
true);
32 CglCutGenerator(copy),
50 virtual CglCutGenerator *
clone()
const
65 virtual void generateCuts(
const OsiSolverInterface & si, OsiCuts & cs,
66 const CglTreeInfo
info);
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Register OaNlpOptim options.
bool addOnlyViolated_
Add only violated cuts?
void assignInterface(OsiTMINLPInterface *si)
Assign an OsiTMINLPInterface.
void fint fint fint real fint real real real real real real real real real fint real fint fint fint real fint fint fint fint * info
void setGlobalCuts(bool yesno)
This is class provides an Osi interface for a Mixed Integer Linear Program expressed as a TMINLP (so ...
void setLogLevel(int value)
set log level
void setMaxDepth(int value)
double solves_per_level_
Average number of nodes per level in tree.
OsiTMINLPInterface * nlp_
Pointer to the Ipopt interface.
virtual CglCutGenerator * clone() const
Abstract constructor.
A class to have all elements necessary to setup a branch-and-bound.
bool global_
Add cuts as global?
CoinMessageHandler * handler_
messages handler.
CoinMessages messages_
handler
int nSolve_
Number of NLP resolution done.
int maxDepth_
maximum depth at which generate cuts
Output messages for Outer approximation cutting planes.
OaNlpOptim(OsiTMINLPInterface *si=NULL, int maxDepth=10, bool addOnlyViolated=false, bool globalCuts=true)
Default constructor.
OaNlpOptim(const OaNlpOptim ©)
Copy constructor.
virtual ~OaNlpOptim()
Desctructor.
void passInMessageHandler(const CoinMessageHandler *handler)
Generate cuts for the nlp corresponding to continuous relaxation at a node.
void setAddOnlyViolated(bool yesno)
virtual void generateCuts(const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info)
cut generation method