Alps
2.0.2
|
Abstract branching decision base class. More...
#include <AbcBranchBase.h>
Public Member Functions | |
AbcBranchDecision () | |
Default Constructor. More... | |
virtual | ~AbcBranchDecision () |
Destructor. More... | |
virtual AbcBranchDecision * | clone () const =0 |
Clone. More... | |
virtual void | initialize (AbcModel *model)=0 |
Initialize e.g. before starting to choose a branch at a node. More... | |
virtual int | betterBranch (int thisOne, int bestSoFar, double changeUp, int numberInfeasibilitiesUp, double changeDown, int numberInfeasibilitiesDown)=0 |
Compare two branching objects (current just integer variables). More... | |
virtual int | bestBranch (AbcModel *model, int *objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue) |
Compare N branching objects. More... | |
AbcBranchDecision () | |
Default Constructor. More... | |
virtual | ~AbcBranchDecision () |
Destructor. More... | |
virtual AbcBranchDecision * | clone () const =0 |
Clone. More... | |
virtual void | initialize (AbcModel *model)=0 |
Initialize e.g. before starting to choose a branch at a node. More... | |
virtual int | betterBranch (int thisOne, int bestSoFar, double changeUp, int numberInfeasibilitiesUp, double changeDown, int numberInfeasibilitiesDown)=0 |
Compare two branching objects (current just integer variables). More... | |
virtual int | bestBranch (AbcModel *model, int *objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue) |
Compare N branching objects. More... | |
AbcBranchDecision () | |
Default Constructor. More... | |
virtual | ~AbcBranchDecision () |
Destructor. More... | |
virtual AbcBranchDecision * | clone () const =0 |
Clone. More... | |
virtual void | initialize (AbcModel *model)=0 |
Initialize e.g. before starting to choose a branch at a node. More... | |
virtual int | betterBranch (int thisOne, int bestSoFar, double changeUp, int numberInfeasibilitiesUp, double changeDown, int numberInfeasibilitiesDown)=0 |
Compare two branching objects (current just integer variables). More... | |
virtual int | bestBranch (AbcModel *model, int *objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue) |
Compare N branching objects. More... | |
Private Member Functions | |
AbcBranchDecision & | operator= (const AbcBranchDecision &rhs) |
Assignment is illegal. More... | |
AbcBranchDecision & | operator= (const AbcBranchDecision &rhs) |
Assignment is illegal. More... | |
AbcBranchDecision & | operator= (const AbcBranchDecision &rhs) |
Assignment is illegal. More... | |
Abstract branching decision base class.
In the abstract, an AbcBranchDecision object is expected to be able to compare two possible branching choices.
The betterBranch() method is the crucial routine. It is expected to be able to compare two integer variables.
Definition at line 54 of file AbcBranchBase.h.
AbcBranchDecision::AbcBranchDecision | ( | ) |
Default Constructor.
|
virtual |
Destructor.
AbcBranchDecision::AbcBranchDecision | ( | ) |
Default Constructor.
|
virtual |
Destructor.
AbcBranchDecision::AbcBranchDecision | ( | ) |
Default Constructor.
|
virtual |
Destructor.
|
pure virtual |
Clone.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Initialize e.g. before starting to choose a branch at a node.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Compare two branching objects (current just integer variables).
Return nonzero if branching using thisOne
is better than branching using bestSoFar
.
If bestSoFar
is NULL, the routine should return a nonzero value. This routine is used only after strong branching.
It is now reccommended that bestBranch is used - see below. This has been left for compatibility.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
virtual |
Compare N branching objects.
Return index of best and sets way of branching in chosen object.
This routine is used only after strong branching. This is reccommended version as it can be more sophisticated
|
private |
Assignment is illegal.
|
pure virtual |
Clone.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Initialize e.g. before starting to choose a branch at a node.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Compare two branching objects (current just integer variables).
Return nonzero if branching using thisOne
is better than branching using bestSoFar
.
If bestSoFar
is NULL, the routine should return a nonzero value. This routine is used only after strong branching.
It is now reccommended that bestBranch is used - see below. This has been left for compatibility.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
virtual |
Compare N branching objects.
Return index of best and sets way of branching in chosen object.
This routine is used only after strong branching. This is reccommended version as it can be more sophisticated
|
private |
Assignment is illegal.
|
pure virtual |
Clone.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Initialize e.g. before starting to choose a branch at a node.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
pure virtual |
Compare two branching objects (current just integer variables).
Return nonzero if branching using thisOne
is better than branching using bestSoFar
.
If bestSoFar
is NULL, the routine should return a nonzero value. This routine is used only after strong branching.
It is now reccommended that bestBranch is used - see below. This has been left for compatibility.
Implemented in AbcBranchDefaultDecision, AbcBranchDefaultDecision, and AbcBranchDefaultDecision.
|
virtual |
Compare N branching objects.
Return index of best and sets way of branching in chosen object.
This routine is used only after strong branching. This is reccommended version as it can be more sophisticated
|
private |
Assignment is illegal.