8 #ifndef CbcSimpleIntegerPseudoCost_H
9 #define CbcSimpleIntegerPseudoCost_H
28 double downPseudoCost,
double upPseudoCost);
Abstract branching object base class Now just difference with OsiBranchingObject. ...
void setDownPseudoCost(double value)
Set down pseudo cost.
double upPseudoCost_
Up pseudo cost.
Define a single integer class.
void setUpPseudoCost(double value)
Set up pseudo cost.
Define a single integer class but with pseudo costs.
double upDownSeparator_
Up/down separator If >0.0 then do first branch up if value-floor(value) >= this value.
double infeasibility() const
Return infeasibility.
virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
Creates a branching object.
CbcSimpleIntegerPseudoCost & operator=(const CbcSimpleIntegerPseudoCost &rhs)
virtual CbcObject * clone() const
Clone.
int preferredWay() const
If -1 down always chosen first, +1 up always, 0 normal.
Abstract Base Class for describing an interface to a solver.
CbcSimpleIntegerPseudoCost()
virtual ~CbcSimpleIntegerPseudoCost()
virtual double downEstimate() const
Return "down" estimate (default 1.0e-5)
void setUpDownSeparator(double value)
Set up down separator.
double downPseudoCost_
data
CbcModel * model() const
Return model.
double upDownSeparator() const
Up down separator.
int method_
Method - 0 - normal - return min (up,down) 1 - if before any solution return CoinMax(up,down) 2 - if before branched solution return CoinMax(up,down) 3 - always return CoinMax(up,down)
virtual double upEstimate() const
Return "up" estimate.
double upPseudoCost() const
Up pseudo cost.
double downPseudoCost() const
Down pseudo cost.
int method() const
method - see below for details
Simple Branch and bound class.
void setMethod(int value)
Set method.
double breakEven() const
Breakeven e.g 0.7 -> >= 0.7 go up first.