Go to the documentation of this file.
36 #include "OsiRowCut.hpp"
93 int createCut(
const double * solution, OsiRowCut & cut);
124 return maxDiversification_;
128 maxDiversification_ = value;
160 double * bestSolution_;
162 double * savedSolution_;
164 int saveNumberSolutions_;
172 double * originalLower_;
174 double * originalUpper_;
180 int maxDiversification_;
182 int diversification_;
259 int createCut(
const double * solution, OsiRowCut & cut);
290 return maxDiversification_;
294 maxDiversification_ = value;
326 double * bestSolution_;
328 double * savedSolution_;
330 int saveNumberSolutions_;
338 double * originalLower_;
340 double * originalUpper_;
346 int maxDiversification_;
348 int diversification_;
virtual void pop()
Remove the top node from the heap.
virtual ~CbcTreeVariable()
void setTypeCuts(int value)
virtual bool empty()
Test if empty *** note may be overridden.
CbcTreeVariable(CbcModel *model, const double *solution, int range=10, int typeCuts=0, int maxDiversification=0, int timeLimit=1000000, int nodeLimit=1000000, bool refine=true)
int maxDiversification() const
int createCut(const double *solution, OsiRowCut &cut)
Create cut - return -1 if bad, 0 if okay and 1 if cut is everything.
virtual CbcTree * clone() const
Clone.
void passInSolution(const double *solution, double solutionValue)
Pass in solution (so can be used after heuristic)
virtual void generateCpp(FILE *fp)
Create C++ lines to get to current state.
CbcTreeLocal(const CbcTreeLocal &rhs)
virtual void endSearch()
We may have got an intelligent tree so give it one more chance.
int maxDiversification() const
void reverseCut(int state, double bias=0.0)
Other side of last cut branch (if bias==rhs_ will be weakest possible)
void setNodeLimit(int value)
virtual void pop()
Remove the top node from the heap.
virtual void push(CbcNode *x)
Add a node to the heap.
int createCut(const double *solution, OsiRowCut &cut)
Create cut - return -1 if bad, 0 if okay and 1 if cut is everything.
virtual void push(CbcNode *x)
Add a node to the heap.
Simple Branch and bound class.
void setTypeCuts(int value)
virtual void endSearch()
We may have got an intelligent tree so give it one more chance.
Using MS heap implementation.
virtual CbcTree * clone() const
Clone.
virtual void generateCpp(FILE *fp)
Create C++ lines to get to current state.
void setRefine(bool yesNo)
void setMaxDiversification(int value)
CbcTreeLocal & operator=(const CbcTreeLocal &rhs)
Information required while the node is live.
void reverseCut(int state, double bias=0.0)
Other side of last cut branch (if bias==rhs_ will be weakest possible)
CbcTreeLocal(CbcModel *model, const double *solution, int range=10, int typeCuts=0, int maxDiversification=0, int timeLimit=1000000, int nodeLimit=1000000, bool refine=true)
void deleteCut(OsiRowCut &cut)
Delete last cut branch.
CbcTreeVariable & operator=(const CbcTreeVariable &rhs)
virtual bool empty()
Test if empty *** note may be overridden.
void setMaxDiversification(int value)
virtual CbcNode * top() const
Return the top node of the heap.
virtual CbcNode * top() const
Return the top node of the heap.
void setTimeLimit(int value)
void setRefine(bool yesNo)
void passInSolution(const double *solution, double solutionValue)
Pass in solution (so can be used after heuristic)
void setNodeLimit(int value)
void setTimeLimit(int value)
void deleteCut(OsiRowCut &cut)
Delete last cut branch.
CbcTreeVariable(const CbcTreeVariable &rhs)