#include <BonBonminSetup.hpp>
Inheritance diagram for Bonmin::BonminSetup:
Public Member Functions | |
BonminSetup () | |
Default constructor. | |
BonminSetup (const BonminSetup &other) | |
Copy constructor. | |
BonminSetup (const BonminSetup &setup, OsiTMINLPInterface &nlp) | |
Copy but uses an other nlp. | |
virtual BabSetupBase * | clone () const |
virtual copy constructor. | |
virtual BabSetupBase * | clone (OsiTMINLPInterface &nlp) const |
Make a copy with solver replace by one passed . | |
virtual | ~BonminSetup () |
void | initialize (Ipopt::SmartPtr< TMINLP > tminlp, bool createContinuousSolver=true) |
Initialize, read options and create appropriate bonmin setup using initialized tminlp. | |
void | initialize (const OsiTMINLPInterface &nlpSi, bool createContinuousSolver=true) |
Initialize, read options and create appropriate bonmin setup using initialized tminlp. | |
Bonmin::Algorithm | getAlgorithm () |
Get the algorithm used. | |
Methods to instantiate: Registering and retrieving options and initializing everything. | |
virtual void | registerOptions () |
Register all the Bonmin options. | |
virtual void | setBabDefaultOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions) |
Setup the defaults options for this algorithm. | |
Static Public Member Functions | |
static void | registerAllOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions) |
Register all bonmin type executable options. | |
Protected Member Functions | |
void | addMilpCutGenerators () |
Add milp cut generators according to options. | |
void | initializeBBB () |
Initialize a plain branch-and-bound. | |
void | initializeBHyb (bool createContinuousSolver=false) |
Initialize a branch-and-cut with some OA. | |
Static Protected Member Functions | |
static void | registerMilpCutGenerators (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions) |
Register standard MILP cut generators. | |
Private Attributes | |
Algorithm | algo_ |
Definition at line 24 of file BonBonminSetup.hpp.
Bonmin::BonminSetup::BonminSetup | ( | ) |
Bonmin::BonminSetup::BonminSetup | ( | const BonminSetup & | other | ) |
Bonmin::BonminSetup::BonminSetup | ( | const BonminSetup & | setup, | |
OsiTMINLPInterface & | nlp | |||
) |
Copy but uses an other nlp.
Definition at line 55 of file BonBonminSetup.cpp.
References algo_, Bonmin::B_BB, Bonmin::OsiTMINLPInterface::clone(), Bonmin::BabSetupBase::continuousSolver_, Bonmin::OsiTMINLPInterface::extractLinearRelaxation(), Bonmin::BabSetupBase::lpMessageHandler_, Bonmin::BabSetupBase::nonlinearSolver_, and Bonmin::BabSetupBase::options_.
virtual Bonmin::BonminSetup::~BonminSetup | ( | ) | [inline, virtual] |
Definition at line 45 of file BonBonminSetup.hpp.
virtual BabSetupBase* Bonmin::BonminSetup::clone | ( | ) | const [inline, virtual] |
virtual copy constructor.
Implements Bonmin::BabSetupBase.
Definition at line 37 of file BonBonminSetup.hpp.
References BonminSetup().
virtual BabSetupBase* Bonmin::BonminSetup::clone | ( | OsiTMINLPInterface & | nlp | ) | const [inline, virtual] |
Make a copy with solver replace by one passed .
Reimplemented from Bonmin::BabSetupBase.
Definition at line 42 of file BonBonminSetup.hpp.
References BonminSetup().
void Bonmin::BonminSetup::registerOptions | ( | ) | [virtual] |
Register all the Bonmin options.
Reimplemented from Bonmin::BabSetupBase.
Definition at line 107 of file BonBonminSetup.cpp.
References registerAllOptions(), and Bonmin::BabSetupBase::roptions_.
virtual void Bonmin::BonminSetup::setBabDefaultOptions | ( | Ipopt::SmartPtr< Bonmin::RegisteredOptions > | roptions | ) | [inline, virtual] |
Setup the defaults options for this algorithm.
Reimplemented from Bonmin::BabSetupBase.
Definition at line 52 of file BonBonminSetup.hpp.
void Bonmin::BonminSetup::registerAllOptions | ( | Ipopt::SmartPtr< Bonmin::RegisteredOptions > | roptions | ) | [static] |
Register all bonmin type executable options.
Reimplemented from Bonmin::BabSetupBase.
Definition at line 75 of file BonBonminSetup.cpp.
References Bonmin::RegisteredOptions::BonminCategory, Bonmin::BabSetupBase::registerAllOptions(), registerMilpCutGenerators(), Bonmin::BonCbcFullNodeInfo::registerOptions(), Bonmin::OaNlpOptim::registerOptions(), Bonmin::EcpCuts::registerOptions(), and Bonmin::OACutGenerator2::registerOptions().
Referenced by registerOptions().
void Bonmin::BonminSetup::initialize | ( | Ipopt::SmartPtr< TMINLP > | tminlp, | |
bool | createContinuousSolver = true | |||
) |
Initialize, read options and create appropriate bonmin setup using initialized tminlp.
Definition at line 114 of file BonBonminSetup.cpp.
References algo_, Bonmin::B_BB, Bonmin::BabSetupBase::gatherParametersValues(), getAlgorithm(), initializeBBB(), initializeBHyb(), Bonmin::BabSetupBase::options_, and Bonmin::BabSetupBase::use().
Referenced by Bonmin::BonminAmplSetup::initialize(), main(), and BonminSolver::solve().
void Bonmin::BonminSetup::initialize | ( | const OsiTMINLPInterface & | nlpSi, | |
bool | createContinuousSolver = true | |||
) |
Initialize, read options and create appropriate bonmin setup using initialized tminlp.
Definition at line 128 of file BonBonminSetup.cpp.
References Bonmin::B_BB, Bonmin::BabSetupBase::gatherParametersValues(), getAlgorithm(), initializeBBB(), initializeBHyb(), Bonmin::BabSetupBase::options_, and Bonmin::BabSetupBase::use().
Algorithm Bonmin::BonminSetup::getAlgorithm | ( | ) |
Get the algorithm used.
Definition at line 535 of file BonBonminSetup.cpp.
References algo_, Bonmin::Dummy, and Bonmin::BabSetupBase::options_.
Referenced by BM_lp::compute_lower_bound(), BM_lp::generate_cuts_in_lp(), initialize(), BM_tm::initialize_core(), BM_lp::initialize_new_search_tree_node(), BM_lp::initialize_solver_interface(), initializeBHyb(), BM_lp::load_problem(), BM_lp::select_branching_candidates(), BM_lp::test_feasibility(), and BM_lp::unpack_module_data().
void Bonmin::BonminSetup::registerMilpCutGenerators | ( | Ipopt::SmartPtr< Bonmin::RegisteredOptions > | roptions | ) | [static, protected] |
Register standard MILP cut generators.
Definition at line 141 of file BonBonminSetup.cpp.
References Bonmin::RegisteredOptions::BonminCategory.
Referenced by registerAllOptions().
void Bonmin::BonminSetup::addMilpCutGenerators | ( | ) | [protected] |
Add milp cut generators according to options.
Definition at line 214 of file BonBonminSetup.cpp.
References Bonmin::BabSetupBase::cutGenerators_, and Bonmin::BabSetupBase::options_.
Referenced by initializeBHyb().
void Bonmin::BonminSetup::initializeBBB | ( | ) | [protected] |
Initialize a plain branch-and-bound.
Definition at line 326 of file BonBonminSetup.cpp.
References Bonmin::BabSetupBase::addSos(), Bonmin::BabSetupBase::branchingMethod_, Bonmin::BabSetupBase::continuousSolver_, Bonmin::BabSetupBase::CURVATURE_ESTIMATOR, Bonmin::OsiTMINLPInterface::ignoreFailures(), Bonmin::BabSetupBase::intParam_, Bonmin::BabSetupBase::LP_STRONG_BRANCHING, Bonmin::BabSetupBase::MinReliability, Bonmin::BabSetupBase::MOST_FRACTIONAL, Bonmin::BabSetupBase::NLP_STRONG_BRANCHING, Bonmin::BabSetupBase::nonlinearSolver_, Bonmin::BabSetupBase::NumberStrong, Bonmin::BabSetupBase::options_, Bonmin::BabSetupBase::OSI_SIMPLE, Bonmin::BabSetupBase::OSI_STRONG, Bonmin::BonChooseVariable::passInMessageHandler(), Bonmin::BabSetupBase::QP_STRONG_BRANCHING, Bonmin::BabSetupBase::RANDOM, Bonmin::BabSetupBase::RELIABILITY_BRANCHING, Bonmin::BonChooseVariable::setOnlyPseudoWhenTrusted(), Bonmin::BabSetupBase::setPriorities(), Bonmin::BabSetupBase::SpecialOption, and Bonmin::BabSetupBase::STRONG_BRANCHING.
Referenced by initialize().
void Bonmin::BonminSetup::initializeBHyb | ( | bool | createContinuousSolver = false |
) | [protected] |
Initialize a branch-and-cut with some OA.
Definition at line 429 of file BonBonminSetup.cpp.
References addMilpCutGenerators(), Bonmin::B_Ecp, Bonmin::B_Hyb, Bonmin::B_OA, Bonmin::B_QG, Bonmin::BabSetupBase::BabLogLevel, Bonmin::OsiTMINLPInterface::clone(), Bonmin::BabSetupBase::continuousSolver_, Bonmin::BabSetupBase::cutGenerators_, Bonmin::OsiTMINLPInterface::extractLinearRelaxation(), getAlgorithm(), Bonmin::OsiTMINLPInterface::getOuterApproximation(), Bonmin::BabSetupBase::heuristics_, Bonmin::BabSetupBase::intParam_, Bonmin::BabSetupBase::lpMessageHandler_, Bonmin::BabSetupBase::nonlinearSolver_, Bonmin::BabSetupBase::options_, Bonmin::OaDecompositionBase::passInMessageHandler(), Bonmin::OaNlpOptim::passInMessageHandler(), Bonmin::BabSetupBase::RELIABILITY_BRANCHING, and Bonmin::DummyHeuristic::setNlp().
Referenced by initialize().
Algorithm Bonmin::BonminSetup::algo_ [private] |
Definition at line 73 of file BonBonminSetup.hpp.
Referenced by BonminSetup(), getAlgorithm(), and initialize().