Go to the documentation of this file.
10 #include "OsiRowCut.hpp"
11 #include "CoinPackedMatrix.hpp"
39 virtual double infeasibility(
const OsiBranchingInformation *info,
140 virtual void print();
virtual ~CbcCutBranchingObject()
Destructor.
int preferredWay() const
If -1 down always chosen first, +1 up always, 0 normal.
virtual void feasibleRegion()=0
For the variable(s) referenced by the object, look at the current solution and set bounds to match th...
OsiRowCut up_
Cut for the up arm (way_ = 1)
virtual double branch()=0
Execute the actions required to branch, as specified by the current state of the branching object,...
CbcCutBranchingObject()
Default constructor.
bool canFix_
True if one way can fix variables.
virtual double branch()
Sets the bounds for variables or adds a cut depending on the current arm of the branch and advances t...
CbcCutBranchingObject & operator=(const CbcCutBranchingObject &rhs)
Assignment operator.
Define a cut branching class.
virtual CbcBranchObjType type() const
Return the type (an integer identifier) of this.
virtual CbcRangeCompare compareBranchingObject(const CbcBranchingObject *brObj, const bool replaceIfOverlap=false)
Compare the this with brObj.
Simple Branch and bound class.
virtual void print() const
Print something about branch - only if log level high.
virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
Creates a branching object.
virtual double infeasibility(const OsiBranchingInformation *info, int &preferredWay) const
Infeasibility.
Abstract branching object base class Now just difference with OsiBranchingObject.
virtual int compareOriginalObject(const CbcBranchingObject *brObj) const
Compare the original object of this with the original object of brObj.
CbcModel * model() const
Return model.
virtual void resetBounds(const OsiSolverInterface *)
Reset variable bounds to their original values.
virtual void resetBounds()
Reset original upper and lower bound values from the solver.
OsiRowCut down_
Cut for the down arm (way_ = -1)
virtual bool boundBranch() const
Return true if branch should fix variables.
virtual CbcBranchingObject * clone() const
Clone.
CbcBranchCut & operator=(const CbcBranchCut &rhs)
virtual void feasibleRegion()
Set bounds to contain the current solution.
virtual CbcBranchingObject * preferredNewFeasible() const
Given a valid solution (with reduced costs, etc.), return a branching object which would give a new f...
CbcModel * model() const
Return model.
virtual void print()
Print something about branch - only if log level high.
virtual CbcObject * clone() const
Clone.
virtual bool boundBranch() const
Return true if branch created by object should fix variables.
virtual CbcBranchingObject * notPreferredNewFeasible() const
Given a valid solution (with reduced costs, etc.), return a branching object which would give a new f...