Go to the documentation of this file.
8 #ifndef CbcBranchDecision_H
9 #define CbcBranchDecision_H
26 class OsiChooseVariable;
57 double changeUp,
int numberInfeasibilitiesUp,
58 double changeDown,
int numberInfeasibilitiesDown)
69 double *changeUp,
int *numberInfeasibilitiesUp,
70 double *changeDown,
int *numberInfeasibilitiesDown,
71 double objectiveValue);
virtual double getBestCriterion() const
CbcBranchDecision & operator=(const CbcBranchDecision &rhs)
Assignment is illegal.
virtual int bestBranch(CbcBranchingObject **objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue)
Compare N branching objects.
virtual ~CbcBranchDecision()
Destructor.
virtual int betterBranch(CbcBranchingObject *thisOne, CbcBranchingObject *bestSoFar, double changeUp, int numberInfeasibilitiesUp, double changeDown, int numberInfeasibilitiesDown)=0
Compare two branching objects.
CbcModel * model_
Pointer to model.
virtual void setBestCriterion(double)
Sets or gets best criterion so far.
virtual int whichMethod()
Says whether this method can handle both methods - 1 better, 2 best, 3 both.
OsiChooseVariable * chooseMethod() const
CbcBranchingObject * object_
Simple Branch and bound class.
CbcModel * cbcModel() const
Model.
Abstract branching object base class Now just difference with OsiBranchingObject.
CbcBranchDecision()
Default Constructor.
virtual void generateCpp(FILE *)
Create C++ lines to get to current state.
virtual CbcBranchDecision * clone() const =0
Clone.
Information required while the node is live.
void setChooseMethod(const OsiChooseVariable &method)
Set (clone) chooseMethod.
virtual void saveBranchingObject(OsiBranchingObject *)
Saves a clone of current branching object.
virtual void initialize(CbcModel *model)=0
Initialize e.g. before starting to choose a branch at a node.
OsiChooseVariable * chooseMethod_
virtual void updateInformation(OsiSolverInterface *, const CbcNode *)
Pass in information on branch just done.