#include <CouenneComplBranchingObject.hpp>
Inheritance diagram for CouenneComplBranchingObject:
Public Member Functions | |
CouenneComplBranchingObject (OsiSolverInterface *solver, const OsiObject *originalObject, JnlstPtr jnlst, expression *var, expression *var2, int way, CouNumber brpoint, bool doFBBT, bool doConvCuts) | |
Constructor. | |
CouenneComplBranchingObject (const CouenneComplBranchingObject &src) | |
Copy constructor. | |
virtual OsiBranchingObject * | clone () const |
cloning method | |
virtual double | branch (OsiSolverInterface *solver=NULL) |
Execute the actions required to branch, as specified by the current state of the branching object, and advance the object's state. | |
Protected Attributes | |
expression * | variable2_ |
use CouenneBranchingObject::variable_ as the first variable to set to 0, and this one as the second |
Branching on such an object x_1 x_2 = 0 is performed by setting either x_1=0 or x_2=0
Definition at line 22 of file CouenneComplBranchingObject.hpp.
CouenneComplBranchingObject::CouenneComplBranchingObject | ( | OsiSolverInterface * | solver, | |
const OsiObject * | originalObject, | |||
JnlstPtr | jnlst, | |||
expression * | var, | |||
expression * | var2, | |||
int | way, | |||
CouNumber | brpoint, | |||
bool | doFBBT, | |||
bool | doConvCuts | |||
) |
Constructor.
Get a variable as an argument and set value_ through a call to operator () of that exprAux.
Definition at line 30 of file CouenneComplBranchingObject.cpp.
References J_BRANCHING(), CouenneBranchingObject::jnlst_, variable2_, and CouenneBranchingObject::variable_.
Referenced by clone().
CouenneComplBranchingObject::CouenneComplBranchingObject | ( | const CouenneComplBranchingObject & | src | ) | [inline] |
virtual OsiBranchingObject* CouenneComplBranchingObject::clone | ( | ) | const [inline, virtual] |
cloning method
Reimplemented from CouenneBranchingObject.
Definition at line 43 of file CouenneComplBranchingObject.hpp.
References CouenneComplBranchingObject().
double CouenneComplBranchingObject::branch | ( | OsiSolverInterface * | solver = NULL |
) | [virtual] |
Execute the actions required to branch, as specified by the current state of the branching object, and advance the object's state.
Returns change in guessed objective on next branch
Reimplemented from CouenneBranchingObject.
Definition at line 55 of file CouenneComplBranchingObject.cpp.
References t_chg_bounds::CHANGED, CouenneBranchingObject::doConvCuts_, CouenneBranchingObject::doFBBT_, J_BRANCHING(), CouenneBranchingObject::jnlst_, t_chg_bounds::setLower(), t_chg_bounds::setUpper(), CouenneBranchingObject::simulate_, sparse2dense(), variable2_, and CouenneBranchingObject::variable_.
expression* CouenneComplBranchingObject::variable2_ [protected] |
use CouenneBranchingObject::variable_ as the first variable to set to 0, and this one as the second
Definition at line 57 of file CouenneComplBranchingObject.hpp.
Referenced by branch(), and CouenneComplBranchingObject().