Dip
0.92.4
|
#include <AlpsDecompTreeNode.h>
Public Member Functions | |
AlpsDecompTreeNode () | |
Default constructor. More... | |
virtual | ~AlpsDecompTreeNode () |
Destructor. More... | |
bool | checkIncumbent (AlpsDecompModel *model, const DecompSolution *decompSol) |
AlpsTreeNode * | createNewTreeNode (AlpsNodeDesc *&desc) const |
Create a new node based on given desc. More... | |
int | chooseBranchingObject (AlpsModel *model) |
To be defined. More... | |
int | process (bool isRoot=false, bool rampUp=false) |
Performing the bounding operation. More... | |
std::vector< CoinTriple < AlpsNodeDesc *, AlpsNodeStatus, double > > | branch () |
Takes the explicit description of the current active node and creates the children's descriptions, which contain information about how the branching is to be done. More... | |
![]() | |
AlpsTreeNode () | |
virtual | ~AlpsTreeNode () |
bool | operator< (const AlpsTreeNode &compNode) |
AlpsNodeDesc * | modifyDesc () |
Access the desc so that can modify it. More... | |
AlpsNodeDesc * | getDesc () const |
void | setDesc (AlpsNodeDesc *desc) |
AlpsKnowledgeBroker * | getKnowledgeBroker () const |
Functions to access/set the knwoledge broker. More... | |
void | setKnowledgeBroker (AlpsKnowledgeBroker *kb) |
void | removeChild (AlpsTreeNode *&child) |
Remove the pointer to given child from the list of children. More... | |
void | addChild (AlpsTreeNode *&child) |
Add a child to the list of children for this node. More... | |
void | removeDescendants () |
Removes all the descendants of the node. More... | |
AlpsNodeStatus | getStatus () const |
Query/set the current status. More... | |
void | setStatus (const AlpsNodeStatus stat) |
Query/set the current status. More... | |
bool | isCandidate () const |
Query functions about specific stati. More... | |
bool | isEvaluated () const |
Query functions about specific stati. More... | |
bool | isPregnant () const |
Query functions about specific stati. More... | |
bool | isBranched () const |
Query functions about specific stati. More... | |
bool | isFathomed () const |
Query functions about specific stati. More... | |
bool | isDiscarded () const |
Query functions about specific stati. More... | |
bool | isActive () const |
Query/set node in-process indicator. More... | |
void | setActive (const bool yesno) |
Query/set node in-process indicator. More... | |
AlpsNodeIndex_t | getIndex () const |
Query/set node identifier (unique within subtree). More... | |
void | setIndex (const AlpsNodeIndex_t index) |
Query/set node identifier (unique within subtree). More... | |
int | getDepth () const |
Query/set what depth the search tree node is at. More... | |
void | setDepth (const int depth) |
Query/set what depth the search tree node is at. More... | |
double | getSolEstimate () const |
Query/set the solution estimate of the node. More... | |
void | setSolEstimate (double est) |
Query/set the solution estimate of the node. More... | |
double | getQuality () const |
Query/set the quality of the node. More... | |
void | setQuality (double quality) |
Query/set the quality of the node. More... | |
int | getNumChildren () const |
Query/set what the number of children. More... | |
void | setNumChildren (const int numChildren) |
Query/set what the number of children. More... | |
void | modifyNumChildren (const int s) |
Query/set what the number of children. More... | |
AlpsTreeNode * | getChild (const int i) const |
Query/set pointer to the ith child. More... | |
void | setChild (const int i, AlpsTreeNode *node) |
Returns a const pointer to the ith child. More... | |
AlpsTreeNode * | getParent () const |
Get/set subtree. More... | |
void | setParent (AlpsTreeNode *parent) |
Get/set subtree. More... | |
AlpsNodeIndex_t | getParentIndex () const |
Get/set the index of the parent of the node. More... | |
void | setParentIndex (AlpsNodeIndex_t index) |
Get/set the index of the parent of the node. More... | |
int | getExplicit () const |
Get/set the indication of whether the node has full or differencing description. More... | |
void | setExplicit (int fp) |
Get/set the indication of whether the node has full or differencing description. More... | |
virtual void | convertToExplicit () |
Convert explicit description to difference, and vise-vesa. More... | |
virtual void | convertToRelative () |
Convert explicit description to difference, and vise-vesa. More... | |
int | getSentMark () const |
Various marks used in parallel code. More... | |
void | setSentMark (const int tf) |
Various marks used in parallel code. More... | |
![]() | |
AlpsKnowledge () | |
virtual | ~AlpsKnowledge () |
KnowledgeType | getType () |
void | setType (KnowledgeType t) |
virtual AlpsEncoded * | encode () const |
This method should encode the content of the object and return a pointer to the encoded form. More... | |
virtual AlpsReturnStatus | encode (AlpsEncoded *encoded) |
Pack into a encode object. More... | |
virtual AlpsKnowledge * | decode (AlpsEncoded &encoded) const |
This method should decode and return a pointer to a brand new object, i.e., the method must create a new object on the heap from the decoded data instead of filling up the object for which the method was invoked. More... | |
AlpsEncoded * | getEncoded () const |
Get/set encoded. More... | |
void | setEncoded (AlpsEncoded *e) |
Private Attributes | |
std::string | m_classTag |
class tag for debugging More... | |
std::vector< std::pair< int, double > > | downBranchLB_ |
std::vector< std::pair< int, double > > | downBranchUB_ |
std::vector< std::pair< int, double > > | upBranchLB_ |
std::vector< std::pair< int, double > > | upBranchUB_ |
Additional Inherited Members | |
![]() | |
bool | active_ |
The subtree own this node. More... | |
AlpsNodeIndex_t | index_ |
The unique index of the tree node (across the whole search tree). More... | |
int | depth_ |
The depth of the node (in the whole tree – the root is at depth 0). More... | |
double | solEstimate_ |
The solution estimate. More... | |
double | quality_ |
The quality of this node. More... | |
AlpsTreeNode * | parent_ |
The parent of the tree node. More... | |
AlpsNodeIndex_t | parentIndex_ |
The index of parent of the tree node. More... | |
int | numChildren_ |
The number of children. More... | |
AlpsTreeNode ** | children_ |
int | explicit_ |
Indicate whether the node description is explicit(1) or relative(0). More... | |
AlpsNodeDesc * | desc_ |
The actual description of the tree node. More... | |
AlpsNodeStatus | status_ |
The current status of the node. More... | |
AlpsKnowledgeBroker * | knowledgeBroker_ |
A pointer to the knowledge broker of the process where this node is processed. More... | |
int | sentMark_ |
Various mark used in splitting and passing subtrees. More... | |
![]() | |
KnowledgeType | type_ |
Definition at line 27 of file AlpsDecompTreeNode.h.
|
inline |
Default constructor.
Definition at line 39 of file AlpsDecompTreeNode.h.
|
inlinevirtual |
Destructor.
Definition at line 48 of file AlpsDecompTreeNode.h.
bool AlpsDecompTreeNode::checkIncumbent | ( | AlpsDecompModel * | model, |
const DecompSolution * | decompSol | ||
) |
|
virtual |
Create a new node based on given desc.
Implements AlpsTreeNode.
int AlpsDecompTreeNode::chooseBranchingObject | ( | AlpsModel * | model | ) |
To be defined.
??
int AlpsDecompTreeNode::process | ( | bool | isRoot = false , |
bool | rampUp = false |
||
) |
Performing the bounding operation.
std::vector< CoinTriple<AlpsNodeDesc*, AlpsNodeStatus, double> > AlpsDecompTreeNode::branch | ( | ) |
Takes the explicit description of the current active node and creates the children's descriptions, which contain information about how the branching is to be done.
The stati of the children are AlpsNodeStatusCandidate.
|
private |
class tag for debugging
Definition at line 30 of file AlpsDecompTreeNode.h.
|
private |
Definition at line 32 of file AlpsDecompTreeNode.h.
|
private |
Definition at line 33 of file AlpsDecompTreeNode.h.
|
private |
Definition at line 34 of file AlpsDecompTreeNode.h.
|
private |
Definition at line 35 of file AlpsDecompTreeNode.h.