#include <branchrule.h>
Inheritance diagram for ABA_BRANCHRULE:

Public Member Functions | |
| ABA_BRANCHRULE (ABA_MASTER *master) | |
| virtual | ~ABA_BRANCHRULE () |
| virtual int | extract (ABA_SUB *sub)=0 |
| virtual void | extract (ABA_LPSUB *lp) |
| Should modify the linear programming relaxation |lp| in order to determine the quality of the branching rule in a linear programming based branching rule selection. | |
| virtual void | unExtract (ABA_LPSUB *lp) |
| virtual bool | branchOnSetVar () |
| Should indicate if the branching is performed by setting a binary variable. | |
| virtual void | initialize (ABA_SUB *sub) |
| The function initialize is a virtual dummy function doing nothing. It is called from the constructor of the subproblem and can be used to perform initializations of the branching rule that can be only done after the generation of the subproblem. | |
Protected Attributes | |
| ABA_MASTER * | master_ |
| ABA_MASTER | *master_ A pointer to the corresponding master of the optimization. |
Definition at line 63 of file branchrule.h.
| ABA_BRANCHRULE::ABA_BRANCHRULE | ( | ABA_MASTER * | master | ) |
The constructor.
| master | A pointer to the corresponding master of the optimization. |
| virtual ABA_BRANCHRULE::~ABA_BRANCHRULE | ( | ) | [virtual] |
The destructor.
| virtual int ABA_BRANCHRULE::extract | ( | ABA_SUB * | sub | ) | [pure virtual] |
Modifies a subproblem by setting the branching variable.
1 If a contradiction occurs.
| sub | The subproblem being modified. |
Implemented in ABA_BOUNDBRANCHRULE, ABA_CONBRANCHRULE, ABA_SETBRANCHRULE, and ABA_VALBRANCHRULE.
| virtual void ABA_BRANCHRULE::extract | ( | ABA_LPSUB * | lp | ) | [virtual] |
Should modify the linear programming relaxation |lp| in order to determine the quality of the branching rule in a linear programming based branching rule selection.
The default implementation does nothing except writing a warning to the error stream. If a derived concrete branching rule should be used in LP-based branching rule selection then this function has to be redefined.
| lp | A pointer to a the linear programming relaxtion of a a subproblem. |
Reimplemented in ABA_BOUNDBRANCHRULE, ABA_CONBRANCHRULE, ABA_SETBRANCHRULE, and ABA_VALBRANCHRULE.
| virtual void ABA_BRANCHRULE::unExtract | ( | ABA_LPSUB * | lp | ) | [virtual] |
Should undo the modifictions of the linear programming relaxtion |lp|.
This function has to be redefined in a derived class, if also extract(ABA_LPSUB*) is redefined there.
| lp | A pointer to a the linear programming relaxtion of a a subproblem. |
Reimplemented in ABA_BOUNDBRANCHRULE, ABA_CONBRANCHRULE, ABA_SETBRANCHRULE, and ABA_VALBRANCHRULE.
| virtual bool ABA_BRANCHRULE::branchOnSetVar | ( | ) | [virtual] |
Should indicate if the branching is performed by setting a binary variable.
This is only required as in the current version of the GNU-compiler run time type information is not satisfactorily implemented.
Reimplemented in ABA_SETBRANCHRULE.
| virtual void ABA_BRANCHRULE::initialize | ( | ABA_SUB * | sub | ) | [virtual] |
The function initialize is a virtual dummy function doing nothing. It is called from the constructor of the subproblem and can be used to perform initializations of the branching rule that can be only done after the generation of the subproblem.
| sub | A pointer to the subproblem that should be used for the initialization.} |
Reimplemented in ABA_CONBRANCHRULE.
ABA_MASTER* ABA_BRANCHRULE::master_ [protected] |
Definition at line 157 of file branchrule.h.
1.5.1