#include <CouenneVarObject.hpp>
Inheritance diagram for CouenneVarObject:
Public Member Functions | |
CouenneVarObject (CouenneProblem *p, exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst) | |
Constructor with information for branching point selection strategy. | |
CouenneVarObject (const CouenneVarObject &src) | |
Copy constructor. | |
~CouenneVarObject () | |
Destructor. | |
virtual OsiObject * | clone () const |
Cloning method. | |
virtual double | infeasibility (const OsiBranchingInformation *info, int &way) const |
compute infeasibility of this variable x as the sum/min/max of all infeasibilities of auxiliaries w whose defining function depends on x |w - f(x)| | |
virtual double | checkInfeasibility (const OsiBranchingInformation *info) const |
compute infeasibility of this variable, |w - f(x)|, where w is the auxiliary variable defined as w = f(x) | |
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *, const OsiBranchingInformation *, int) const |
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object | |
virtual double | feasibleRegion (OsiSolverInterface *, const OsiBranchingInformation *) const |
fix nonlinear coordinates of current integer-nonlinear feasible solution | |
virtual bool | isCuttable () const |
are we on the bad or good side of the expression? | |
Protected Member Functions | |
CouNumber | computeBranchingPoint (const OsiBranchingInformation *info, int &bestWay, const CouenneObject *&criticalObject) const |
Method computing the branching point. |
Definition at line 20 of file CouenneVarObject.hpp.
CouenneVarObject::CouenneVarObject | ( | CouenneProblem * | p, | |
exprVar * | ref, | |||
Bonmin::BabSetupBase * | base, | |||
JnlstPtr | jnlst | |||
) |
CouenneVarObject::CouenneVarObject | ( | const CouenneVarObject & | src | ) | [inline] |
CouenneVarObject::~CouenneVarObject | ( | ) | [inline] |
virtual OsiObject* CouenneVarObject::clone | ( | ) | const [inline, virtual] |
Cloning method.
Reimplemented from CouenneObject.
Reimplemented in CouenneVTObject.
Definition at line 38 of file CouenneVarObject.hpp.
References CouenneVarObject().
virtual double CouenneVarObject::infeasibility | ( | const OsiBranchingInformation * | info, | |
int & | way | |||
) | const [virtual] |
compute infeasibility of this variable x as the sum/min/max of all infeasibilities of auxiliaries w whose defining function depends on x |w - f(x)|
TODO: suggest way
Reimplemented from CouenneObject.
Reimplemented in CouenneVTObject.
virtual double CouenneVarObject::checkInfeasibility | ( | const OsiBranchingInformation * | info | ) | const [virtual] |
compute infeasibility of this variable, |w - f(x)|, where w is the auxiliary variable defined as w = f(x)
Reimplemented from CouenneObject.
virtual OsiBranchingObject* CouenneVarObject::createBranch | ( | OsiSolverInterface * | , | |
const OsiBranchingInformation * | , | |||
int | ||||
) | const [virtual] |
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object
Reimplemented from CouenneObject.
virtual double CouenneVarObject::feasibleRegion | ( | OsiSolverInterface * | , | |
const OsiBranchingInformation * | ||||
) | const [virtual] |
fix nonlinear coordinates of current integer-nonlinear feasible solution
Reimplemented from CouenneObject.
virtual bool CouenneVarObject::isCuttable | ( | ) | const [virtual] |
CouNumber CouenneVarObject::computeBranchingPoint | ( | const OsiBranchingInformation * | info, | |
int & | bestWay, | |||
const CouenneObject *& | criticalObject | |||
) | const [protected] |
Method computing the branching point.