OsiObject for complementarity constraints
.
More...
#include <CouenneComplObject.hpp>


Public Member Functions | |
| CouenneComplObject (CouenneCutGenerator *c, CouenneProblem *p, exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst, int sign) | |
| Constructor with information for branching point selection strategy. | |
| CouenneComplObject (exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst, int sign) | |
| Constructor with lesser information, used for infeasibility only. | |
| ~CouenneComplObject () | |
| Destructor. | |
| CouenneComplObject (const CouenneComplObject &src) | |
| Copy constructor. | |
| virtual CouenneObject * | clone () const |
| Cloning method. | |
| virtual double | infeasibility (const OsiBranchingInformation *info, int &way) const |
| compute infeasibility of this variable, |w - f(x)| (where w is the auxiliary variable defined as 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 way) const |
| create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object | |
Private Attributes | |
| int | sign_ |
| -1 if object is for xi * xj <= 0 +1 if object is for xi * xj <= 0 0 if object is for xi * xj = 0 (classical) | |
OsiObject for complementarity constraints
.
Associated with two variables
and
, branches with either
or
Definition at line 22 of file CouenneComplObject.hpp.
| CouenneComplObject::CouenneComplObject | ( | CouenneCutGenerator * | c, | |
| CouenneProblem * | p, | |||
| exprVar * | ref, | |||
| Bonmin::BabSetupBase * | base, | |||
| JnlstPtr | jnlst, | |||
| int | sign | |||
| ) |
Constructor with information for branching point selection strategy.
Definition at line 18 of file CouenneComplObject.cpp.
| CouenneComplObject::CouenneComplObject | ( | exprVar * | ref, | |
| Bonmin::BabSetupBase * | base, | |||
| JnlstPtr | jnlst, | |||
| int | sign | |||
| ) |
Constructor with lesser information, used for infeasibility only.
Definition at line 30 of file CouenneComplObject.cpp.
| Couenne::CouenneComplObject::~CouenneComplObject | ( | ) | [inline] |
Destructor.
Definition at line 37 of file CouenneComplObject.hpp.
| CouenneComplObject::CouenneComplObject | ( | const CouenneComplObject & | src | ) |
Copy constructor.
Definition at line 37 of file CouenneComplObject.cpp.
| virtual CouenneObject* Couenne::CouenneComplObject::clone | ( | ) | const [inline, virtual] |
Cloning method.
Reimplemented from Couenne::CouenneObject.
Definition at line 43 of file CouenneComplObject.hpp.
| double CouenneComplObject::infeasibility | ( | const OsiBranchingInformation * | info, | |
| int & | way | |||
| ) | const [virtual] |
compute infeasibility of this variable, |w - f(x)| (where w is the auxiliary variable defined as w = f(x)
Reimplemented from Couenne::CouenneObject.
Definition at line 44 of file CouenneComplObject.cpp.
| double CouenneComplObject::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 Couenne::CouenneObject.
Definition at line 95 of file CouenneComplObject.cpp.
| OsiBranchingObject * CouenneComplObject::createBranch | ( | OsiSolverInterface * | solver, | |
| const OsiBranchingInformation * | info, | |||
| int | way | |||
| ) | const [virtual] |
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object
Reimplemented from Couenne::CouenneObject.
Definition at line 117 of file CouenneComplObject.cpp.
int Couenne::CouenneComplObject::sign_ [private] |
-1 if object is for xi * xj <= 0 +1 if object is for xi * xj <= 0 0 if object is for xi * xj = 0 (classical)
Definition at line 64 of file CouenneComplObject.hpp.
1.6.1