Bonmin::BonminSetup Class Reference

#include <BonBonminSetup.hpp>

Inheritance diagram for Bonmin::BonminSetup:

Inheritance graph
[legend]
Collaboration diagram for Bonmin::BonminSetup:

Collaboration graph
[legend]
List of all members.

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 BabSetupBaseclone () const
 virtual copy constructor.
virtual BabSetupBaseclone (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_

Detailed Description

Definition at line 24 of file BonBonminSetup.hpp.


Constructor & Destructor Documentation

Bonmin::BonminSetup::BonminSetup (  ) 

Default constructor.

Definition at line 48 of file BonBonminSetup.cpp.

Referenced by clone().

Bonmin::BonminSetup::BonminSetup ( const BonminSetup other  ) 

Copy constructor.

Definition at line 51 of file BonBonminSetup.cpp.

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.


Member Function Documentation

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().


Member Data Documentation

Algorithm Bonmin::BonminSetup::algo_ [private]

Definition at line 73 of file BonBonminSetup.hpp.

Referenced by BonminSetup(), getAlgorithm(), and initialize().


The documentation for this class was generated from the following files:
Generated on Thu Oct 8 03:08:49 2009 by  doxygen 1.4.7