Branching object for unordered cliques. More...
#include <CbcBranchActual.hpp>
Public Member Functions | |
CbcCliqueBranchingObject () | |
CbcCliqueBranchingObject (CbcModel *model, const CbcClique *clique, int way, int numberOnDownSide, const int *down, int numberOnUpSide, const int *up) | |
CbcCliqueBranchingObject (const CbcCliqueBranchingObject &) | |
CbcCliqueBranchingObject & | operator= (const CbcCliqueBranchingObject &rhs) |
Assignment operator. | |
virtual CbcBranchingObject * | clone () const |
Clone. | |
virtual | ~CbcCliqueBranchingObject () |
virtual double | branch () |
Does next branch and updates state. | |
virtual void | print () |
Print something about branch - only if log level high. | |
virtual int | type () const |
Return the type (an integer identifier) of this . | |
virtual int | compareOriginalObject (const CbcBranchingObject *brObj) const |
Compare the original object of this with the original object of brObj . | |
virtual CbcRangeCompare | compareBranchingObject (const CbcBranchingObject *brObj, const bool replaceIfOverlap=false) |
Compare the this with brObj . | |
Private Attributes | |
const CbcClique * | clique_ |
data | |
unsigned int | downMask_ [2] |
downMask - bit set to fix to weak bounds, not set to leave unfixed | |
unsigned int | upMask_ [2] |
upMask - bit set to fix to weak bounds, not set to leave unfixed |
Branching object for unordered cliques.
Intended for cliques which are long enough to make it worthwhile but <= 64 members. There will also be ones for long cliques.
Variable_ is the clique id number (redundant, as the object also holds a pointer to the clique.
Definition at line 714 of file CbcBranchActual.hpp.
CbcCliqueBranchingObject::CbcCliqueBranchingObject | ( | ) |
CbcCliqueBranchingObject::CbcCliqueBranchingObject | ( | CbcModel * | model, | |
const CbcClique * | clique, | |||
int | way, | |||
int | numberOnDownSide, | |||
const int * | down, | |||
int | numberOnUpSide, | |||
const int * | up | |||
) |
CbcCliqueBranchingObject::CbcCliqueBranchingObject | ( | const CbcCliqueBranchingObject & | ) |
virtual CbcCliqueBranchingObject::~CbcCliqueBranchingObject | ( | ) | [virtual] |
CbcCliqueBranchingObject& CbcCliqueBranchingObject::operator= | ( | const CbcCliqueBranchingObject & | rhs | ) |
Assignment operator.
Reimplemented from CbcBranchingObject.
virtual CbcBranchingObject* CbcCliqueBranchingObject::clone | ( | ) | const [virtual] |
Clone.
Implements CbcBranchingObject.
virtual double CbcCliqueBranchingObject::branch | ( | ) | [virtual] |
Does next branch and updates state.
Implements CbcBranchingObject.
virtual void CbcCliqueBranchingObject::print | ( | ) | [virtual] |
Print something about branch - only if log level high.
virtual int CbcCliqueBranchingObject::type | ( | ) | const [inline, virtual] |
Return the type (an integer identifier) of this
.
Implements CbcBranchingObject.
Definition at line 757 of file CbcBranchActual.hpp.
virtual int CbcCliqueBranchingObject::compareOriginalObject | ( | const CbcBranchingObject * | brObj | ) | const [virtual] |
Compare the original object of this
with the original object of brObj
.
Assumes that there is an ordering of the original objects. This method should be invoked only if this
and brObj are of the same type. Return negative/0/positive depending on whether this
is smaller/same/larger than the argument.
virtual CbcRangeCompare CbcCliqueBranchingObject::compareBranchingObject | ( | const CbcBranchingObject * | brObj, | |
const bool | replaceIfOverlap = false | |||
) | [virtual] |
Compare the this
with brObj
.
this
and brObj
must be os the same type and must have the same original object, but they may have different feasible regions. Return the appropriate CbcRangeCompare value (first argument being the sub/superset if that's the case). In case of overlap (and if replaceIfOverlap
is true) replace the current branching object with one whose feasible region is the overlap.
const CbcClique* CbcCliqueBranchingObject::clique_ [private] |
data
Definition at line 781 of file CbcBranchActual.hpp.
unsigned int CbcCliqueBranchingObject::downMask_[2] [private] |
downMask - bit set to fix to weak bounds, not set to leave unfixed
Definition at line 783 of file CbcBranchActual.hpp.
unsigned int CbcCliqueBranchingObject::upMask_[2] [private] |
upMask - bit set to fix to weak bounds, not set to leave unfixed
Definition at line 785 of file CbcBranchActual.hpp.