Bonmin::StrongBranchingSolver Class Reference

This class is the base class for a solver that can be used in BonOsiSolverInterface to perform the strong branching solves. More...

#include <BonStrongBranchingSolver.hpp>

Inheritance diagram for Bonmin::StrongBranchingSolver:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 StrongBranchingSolver (OsiTMINLPInterface *solver)
 Constructor from solver.
StrongBranchingSolveroperator= (const StrongBranchingSolver &rhs)
 Assignment operator.
 StrongBranchingSolver (const StrongBranchingSolver &rhs)
 Copy constructor.
virtual ~StrongBranchingSolver ()
 Destructor.
virtual void markHotStart (OsiTMINLPInterface *tminlp_interface)=0
 Called to initialize solver before a bunch of strong branching solves.
virtual TNLPSolver::ReturnStatus solveFromHotStart (OsiTMINLPInterface *tminlp_interface)=0
 Called to solve the current TMINLP (with changed bound information).
virtual void unmarkHotStart (OsiTMINLPInterface *tminlp_interface)=0
 Called after all strong branching solves in a node.

Protected Member Functions

SmartPtr< Journalist > & Jnlst ()
SmartPtr< OptionsList > & Options ()
SmartPtr< RegisteredOptions > & RegOptions ()

Private Member Functions

 StrongBranchingSolver ()
 Default Constructor, forbiden for some reason.

Private Attributes

SmartPtr< Journalist > jnlst_
SmartPtr< OptionsList > options_
SmartPtr< Bonmin::RegisteredOptionsreg_options_
int bb_log_level_

Detailed Description

This class is the base class for a solver that can be used in BonOsiSolverInterface to perform the strong branching solves.

Definition at line 17 of file BonStrongBranchingSolver.hpp.


Constructor & Destructor Documentation

Bonmin::StrongBranchingSolver::StrongBranchingSolver ( OsiTMINLPInterface solver  ) 

Constructor from solver.

Definition at line 11 of file BonStrongBranchingSolver.cpp.

References bb_log_level_, jnlst_, Bonmin::TNLPSolver::journalist(), Bonmin::TNLPSolver::options(), options_, Bonmin::OsiTMINLPInterface::prefix(), reg_options_, Bonmin::TNLPSolver::roptions(), and Bonmin::OsiTMINLPInterface::solver().

Bonmin::StrongBranchingSolver::StrongBranchingSolver ( const StrongBranchingSolver rhs  ) 

Copy constructor.

Definition at line 23 of file BonStrongBranchingSolver.cpp.

References bb_log_level_, jnlst_, options_, and reg_options_.

Bonmin::StrongBranchingSolver::~StrongBranchingSolver (  )  [virtual]

Destructor.

Definition at line 43 of file BonStrongBranchingSolver.cpp.

Bonmin::StrongBranchingSolver::StrongBranchingSolver (  )  [private]

Default Constructor, forbiden for some reason.


Member Function Documentation

StrongBranchingSolver & Bonmin::StrongBranchingSolver::operator= ( const StrongBranchingSolver rhs  ) 

Assignment operator.

Definition at line 32 of file BonStrongBranchingSolver.cpp.

References bb_log_level_, jnlst_, options_, and reg_options_.

Referenced by Bonmin::QpBranchingSolver::operator=(), Bonmin::LpBranchingSolver::operator=(), and Bonmin::CurvBranchingSolver::operator=().

virtual void Bonmin::StrongBranchingSolver::markHotStart ( OsiTMINLPInterface tminlp_interface  )  [pure virtual]

Called to initialize solver before a bunch of strong branching solves.

Implemented in Bonmin::CurvBranchingSolver, Bonmin::LpBranchingSolver, and Bonmin::QpBranchingSolver.

virtual TNLPSolver::ReturnStatus Bonmin::StrongBranchingSolver::solveFromHotStart ( OsiTMINLPInterface tminlp_interface  )  [pure virtual]

Called to solve the current TMINLP (with changed bound information).

Implemented in Bonmin::CurvBranchingSolver, Bonmin::LpBranchingSolver, and Bonmin::QpBranchingSolver.

virtual void Bonmin::StrongBranchingSolver::unmarkHotStart ( OsiTMINLPInterface tminlp_interface  )  [pure virtual]

Called after all strong branching solves in a node.

Implemented in Bonmin::CurvBranchingSolver, Bonmin::LpBranchingSolver, and Bonmin::QpBranchingSolver.

SmartPtr<Journalist>& Bonmin::StrongBranchingSolver::Jnlst (  )  [inline, protected]

Definition at line 44 of file BonStrongBranchingSolver.hpp.

References jnlst_.

Referenced by Bonmin::QpBranchingSolver::markHotStart(), and Bonmin::CurvBranchingSolver::markHotStart().

SmartPtr<OptionsList>& Bonmin::StrongBranchingSolver::Options (  )  [inline, protected]

Definition at line 48 of file BonStrongBranchingSolver.hpp.

References options_.

Referenced by Bonmin::QpBranchingSolver::markHotStart(), and Bonmin::CurvBranchingSolver::markHotStart().

SmartPtr<RegisteredOptions>& Bonmin::StrongBranchingSolver::RegOptions (  )  [inline, protected]

Definition at line 52 of file BonStrongBranchingSolver.hpp.

References reg_options_.

Referenced by Bonmin::QpBranchingSolver::markHotStart().


Member Data Documentation

SmartPtr<Journalist> Bonmin::StrongBranchingSolver::jnlst_ [private]

Definition at line 60 of file BonStrongBranchingSolver.hpp.

Referenced by Jnlst(), operator=(), and StrongBranchingSolver().

SmartPtr<OptionsList> Bonmin::StrongBranchingSolver::options_ [private]

Definition at line 61 of file BonStrongBranchingSolver.hpp.

Referenced by operator=(), Options(), and StrongBranchingSolver().

SmartPtr<Bonmin::RegisteredOptions> Bonmin::StrongBranchingSolver::reg_options_ [private]

Definition at line 62 of file BonStrongBranchingSolver.hpp.

Referenced by operator=(), RegOptions(), and StrongBranchingSolver().

int Bonmin::StrongBranchingSolver::bb_log_level_ [private]

Definition at line 64 of file BonStrongBranchingSolver.hpp.

Referenced by operator=(), and StrongBranchingSolver().


The documentation for this class was generated from the following files:
Generated on Tue Mar 30 03:14:40 2010 by  doxygen 1.4.7