|
Cbc
2.10.5
|
#include <CbcTreeLocal.hpp>
Inheritance diagram for CbcTreeVariable:
Collaboration diagram for CbcTreeVariable: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... | |
Other stuff | |
| 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) |
Public Member Functions inherited from CbcTree | |
| 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... | |
Private Attributes | |
| 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_ |
Additional Inherited Members | |
Protected Attributes inherited from CbcTree | |
| 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.
1.8.5