Cbc
2.10.10
|
#include <CbcTreeLocal.hpp>
Public Member Functions | |
CbcTreeVariable () | |
CbcTreeVariable (CbcModel *model, const double *solution, int range=10, int typeCuts=0, int maxDiversification=0, int timeLimit=1000000, int nodeLimit=1000000, bool refine=true) | |
CbcTreeVariable (const CbcTreeVariable &rhs) | |
CbcTreeVariable & | operator= (const CbcTreeVariable &rhs) |
virtual | ~CbcTreeVariable () |
virtual CbcTree * | clone () const |
Clone. More... | |
virtual void | generateCpp (FILE *fp) |
Create C++ lines to get to current state. More... | |
Heap access and maintenance methods | |
virtual CbcNode * | top () const |
Return the top node of the heap. More... | |
virtual void | push (CbcNode *x) |
Add a node to the heap. More... | |
virtual void | pop () |
Remove the top node from the heap. More... | |
![]() | |
CbcTree () | |
Default Constructor. More... | |
CbcTree (const CbcTree &rhs) | |
Copy constructor. More... | |
CbcTree & | operator= (const CbcTree &rhs) |
= operator More... | |
virtual | ~CbcTree () |
Destructor. More... | |
void | setComparison (CbcCompareBase &compare) |
Set comparison function and resort heap. More... | |
virtual CbcNode * | bestNode (double cutoff) |
Gets best node and takes off heap. More... | |
virtual void | rebuild () |
Rebuild the heap. More... | |
virtual int | size () const |
Return size. More... | |
CbcNode * | operator[] (int i) const |
Return a node pointer. More... | |
CbcNode * | nodePointer (int i) const |
Return a node pointer. More... | |
void | realpop () |
void | fixTop () |
After changing data in the top node, fix the heap. More... | |
void | realpush (CbcNode *node) |
virtual void | cleanTree (CbcModel *model, double cutoff, double &bestPossibleObjective) |
Prune the tree using an objective function cutoff. More... | |
CbcNode * | bestAlternate () |
Get best on list using alternate method. More... | |
virtual double | getBestPossibleObjective () |
Get best possible objective function in the tree. More... | |
void | resetNodeNumbers () |
Reset maximum node number. More... | |
int | maximumNodeNumber () const |
Get maximum node number. More... | |
void | setNumberBranching (int value) |
Set number of branches. More... | |
int | getNumberBranching () const |
Get number of branches. More... | |
void | setMaximumBranching (int value) |
Set maximum branches. More... | |
int | getMaximumBranching () const |
Get maximum branches. More... | |
unsigned int * | branched () const |
Get branched variables. More... | |
int * | newBounds () const |
Get bounds. More... | |
double | lastObjective () const |
Last objective in branch-and-cut search tree. More... | |
int | lastDepth () const |
Last depth in branch-and-cut search tree. More... | |
int | lastUnsatisfied () const |
Last number of objects unsatisfied. More... | |
void | addBranchingInformation (const CbcModel *model, const CbcNodeInfo *nodeInfo, const double *currentLower, const double *currentUpper) |
Adds branching information to complete state. More... | |
void | increaseSpace () |
Increase space for data. More... | |
Other stuff | |
CbcNode * | localNode_ |
double * | bestSolution_ |
double * | savedSolution_ |
int | saveNumberSolutions_ |
OsiRowCut | cut_ |
OsiRowCut | fixedCut_ |
CbcModel * | model_ |
double * | originalLower_ |
double * | originalUpper_ |
int | range_ |
int | typeCuts_ |
int | maxDiversification_ |
int | diversification_ |
bool | nextStrong_ |
double | rhs_ |
double | savedGap_ |
double | bestCutoff_ |
int | timeLimit_ |
int | startTime_ |
int | nodeLimit_ |
int | startNode_ |
int | searchType_ |
bool | refine_ |
int | createCut (const double *solution, OsiRowCut &cut) |
Create cut - return -1 if bad, 0 if okay and 1 if cut is everything. More... | |
virtual bool | empty () |
Test if empty *** note may be overridden. More... | |
virtual void | endSearch () |
We may have got an intelligent tree so give it one more chance. More... | |
void | reverseCut (int state, double bias=0.0) |
Other side of last cut branch (if bias==rhs_ will be weakest possible) More... | |
void | deleteCut (OsiRowCut &cut) |
Delete last cut branch. More... | |
void | passInSolution (const double *solution, double solutionValue) |
Pass in solution (so can be used after heuristic) More... | |
int | range () const |
void | setRange (int value) |
int | typeCuts () const |
void | setTypeCuts (int value) |
int | maxDiversification () const |
void | setMaxDiversification (int value) |
int | timeLimit () const |
void | setTimeLimit (int value) |
int | nodeLimit () const |
void | setNodeLimit (int value) |
bool | refine () const |
void | setRefine (bool yesNo) |
Additional Inherited Members | |
![]() | |
std::vector< CbcNode * > | nodes_ |
Storage vector for the heap. More... | |
CbcCompare | comparison_ |
Sort predicate for heap ordering. More... | |
int | maximumNodeNumber_ |
Maximum "node" number so far to split ties. More... | |
int | numberBranching_ |
Size of variable list. More... | |
int | maximumBranching_ |
Maximum size of variable list. More... | |
double | lastObjective_ |
Objective of last node pushed on tree. More... | |
int | lastDepth_ |
Depth of last node pushed on tree. More... | |
int | lastUnsatisfied_ |
Number unsatisfied of last node pushed on tree. More... | |
unsigned int * | branched_ |
Integer variables branched or bounded top bit set if new upper bound next bit set if a branch. More... | |
int * | newBound_ |
New bound. More... | |
Definition at line 215 of file CbcTreeLocal.hpp.
CbcTreeVariable::CbcTreeVariable | ( | ) |
CbcTreeVariable::CbcTreeVariable | ( | CbcModel * | model, |
const double * | solution, | ||
int | range = 10 , |
||
int | typeCuts = 0 , |
||
int | maxDiversification = 0 , |
||
int | timeLimit = 1000000 , |
||
int | nodeLimit = 1000000 , |
||
bool | refine = true |
||
) |
CbcTreeVariable::CbcTreeVariable | ( | const CbcTreeVariable & | rhs | ) |
|
virtual |
CbcTreeVariable& CbcTreeVariable::operator= | ( | const CbcTreeVariable & | rhs | ) |
|
virtual |
Create C++ lines to get to current state.
Reimplemented from CbcTree.
|
virtual |
Return the top node of the heap.
Reimplemented from CbcTree.
|
virtual |
Add a node to the heap.
Reimplemented from CbcTree.
|
virtual |
Remove the top node from the heap.
Reimplemented from CbcTree.
int CbcTreeVariable::createCut | ( | const double * | solution, |
OsiRowCut & | cut | ||
) |
Create cut - return -1 if bad, 0 if okay and 1 if cut is everything.
|
virtual |
Test if empty *** note may be overridden.
Reimplemented from CbcTree.
|
virtual |
We may have got an intelligent tree so give it one more chance.
Reimplemented from CbcTree.
void CbcTreeVariable::reverseCut | ( | int | state, |
double | bias = 0.0 |
||
) |
Other side of last cut branch (if bias==rhs_ will be weakest possible)
void CbcTreeVariable::deleteCut | ( | OsiRowCut & | cut | ) |
Delete last cut branch.
void CbcTreeVariable::passInSolution | ( | const double * | solution, |
double | solutionValue | ||
) |
Pass in solution (so can be used after heuristic)
|
inline |
Definition at line 281 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 286 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 291 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 296 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 301 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 306 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 311 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 316 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 321 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 326 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 331 of file CbcTreeLocal.hpp.
|
inline |
Definition at line 336 of file CbcTreeLocal.hpp.
|
private |
Definition at line 344 of file CbcTreeLocal.hpp.
|
private |
Definition at line 346 of file CbcTreeLocal.hpp.
|
private |
Definition at line 348 of file CbcTreeLocal.hpp.
|
private |
Definition at line 350 of file CbcTreeLocal.hpp.
|
private |
Definition at line 352 of file CbcTreeLocal.hpp.
|
private |
Definition at line 354 of file CbcTreeLocal.hpp.
|
private |
Definition at line 356 of file CbcTreeLocal.hpp.
|
private |
Definition at line 358 of file CbcTreeLocal.hpp.
|
private |
Definition at line 360 of file CbcTreeLocal.hpp.
|
private |
Definition at line 362 of file CbcTreeLocal.hpp.
|
private |
Definition at line 364 of file CbcTreeLocal.hpp.
|
private |
Definition at line 366 of file CbcTreeLocal.hpp.
|
private |
Definition at line 368 of file CbcTreeLocal.hpp.
|
private |
Definition at line 370 of file CbcTreeLocal.hpp.
|
private |
Definition at line 372 of file CbcTreeLocal.hpp.
|
private |
Definition at line 374 of file CbcTreeLocal.hpp.
|
private |
Definition at line 376 of file CbcTreeLocal.hpp.
|
private |
Definition at line 378 of file CbcTreeLocal.hpp.
|
private |
Definition at line 380 of file CbcTreeLocal.hpp.
|
private |
Definition at line 382 of file CbcTreeLocal.hpp.
|
private |
Definition at line 384 of file CbcTreeLocal.hpp.
|
private |
Definition at line 386 of file CbcTreeLocal.hpp.
|
private |
Definition at line 388 of file CbcTreeLocal.hpp.