Bcps 0.94.5
Loading...
Searching...
No Matches
Public Member Functions | List of all members
BcpsSubTree Class Reference

This class is the data structure for storing a subtree within BCPS. More...

#include <BcpsSubTree.h>

+ Inheritance diagram for BcpsSubTree:
+ Collaboration diagram for BcpsSubTree:

Public Member Functions

 BcpsSubTree ()
 
virtual ~BcpsSubTree ()
 
BcpsConstraintPool * getConstraintPool () const
 
BcpsVariablePool * getVariablePool () const
 
- Public Member Functions inherited from AlpsSubTree
 AlpsSubTree ()
 
 AlpsSubTree (AlpsKnowledgeBroker *kb)
 
virtual ~AlpsSubTree ()
 
AlpsTreeNode * activeNode ()
 
void setActiveNode (AlpsTreeNode *activeNode)
 
void createChildren (AlpsTreeNode *parent, std::vector< CoinTriple< AlpsNodeDesc *, AlpsNodeStatus, double > > &children, AlpsNodePool *kidNodePool=NULL)
 
AlpsTreeNode * getRoot () const
 
void setRoot (AlpsTreeNode *r)
 
AlpsNodePool * nodePool ()
 
AlpsNodePool * diveNodePool ()
 
void setNodePool (AlpsNodePool *np)
 
void changeNodePool (AlpsNodePool *np)
 
double getBestKnowledgeValue () const
 
AlpsTreeNode * getBestNode () const
 
AlpsKnowledgeBroker * getKnowledgeBroker () const
 
void setKnowledgeBroker (AlpsKnowledgeBroker *kb)
 
double getQuality () const
 
double getSolEstimate () const
 
double calculateQuality ()
 
int nextIndex ()
 
int getNextIndex () const
 
void setNextIndex (int next)
 
int getNumNodes () const
 
void setNodeSelection (AlpsSearchStrategy< AlpsTreeNode * > *nc)
 
AlpsSubTree * splitSubTree (int &returnSize, int size=10)
 
virtual AlpsReturnStatus exploreSubTree (AlpsTreeNode *root, int nodeLimit, double timeLimit, int &numNodesProcessed, int &numNodesBranched, int &numNodesDiscarded, int &numNodesPartial, int &depth)
 
AlpsReturnStatus exploreUnitWork (bool leaveAsIt, int unitWork, double unitTime, AlpsExitStatus &solStatus, int &numNodesProcessed, int &numNodesBranched, int &numNodesDiscarded, int &numNodesPartial, int &depth, bool &betterSolution)
 
virtual int rampUp (int minNumNodes, int requiredNumNodes, int &depth, AlpsTreeNode *root=NULL)
 
virtual AlpsEncoded * encode () const
 
virtual AlpsKnowledge * decode (AlpsEncoded &encoded) const
 
virtual AlpsSubTree * newSubTree () const
 
void clearNodePools ()
 
void nullRootActiveNode ()
 
bool doDive ()
 
void reset ()
 
virtual AlpsEncoded * encode () const
 
virtual AlpsReturnStatus encode (AlpsEncoded *encoded)
 
AlpsTreeNode * getRoot () const
 
void setRoot (AlpsTreeNode *r)
 
AlpsNodePool * nodePool ()
 
AlpsNodePool * diveNodePool ()
 
void setNodePool (AlpsNodePool *np)
 
void changeNodePool (AlpsNodePool *np)
 
double getBestKnowledgeValue () const
 
AlpsTreeNode * getBestNode () const
 
AlpsKnowledgeBroker * getKnowledgeBroker () const
 
void setKnowledgeBroker (AlpsKnowledgeBroker *kb)
 
double getQuality () const
 
double getSolEstimate () const
 
double calculateQuality ()
 
int nextIndex ()
 
int getNextIndex () const
 
void setNextIndex (int next)
 
int getNumNodes () const
 
void setNodeSelection (AlpsSearchStrategy< AlpsTreeNode * > *nc)
 
AlpsSubTree * splitSubTree (int &returnSize, int size=10)
 
virtual AlpsReturnStatus exploreSubTree (AlpsTreeNode *root, int nodeLimit, double timeLimit, int &numNodesProcessed, int &numNodesBranched, int &numNodesDiscarded, int &numNodesPartial, int &depth)
 
AlpsReturnStatus exploreUnitWork (bool leaveAsIt, int unitWork, double unitTime, AlpsExitStatus &solStatus, int &numNodesProcessed, int &numNodesBranched, int &numNodesDiscarded, int &numNodesPartial, int &depth, bool &betterSolution)
 
virtual int rampUp (int minNumNodes, int requiredNumNodes, int &depth, AlpsTreeNode *root=NULL)
 
virtual AlpsEncoded * encode () const
 
virtual AlpsKnowledge * decode (AlpsEncoded &encoded) const
 
virtual AlpsSubTree * newSubTree () const
 
void clearNodePools ()
 
void nullRootActiveNode ()
 
bool doDive ()
 
void reset ()
 
virtual AlpsEncoded * encode () const
 
virtual AlpsReturnStatus encode (AlpsEncoded *encoded)
 
- Public Member Functions inherited from AlpsKnowledge
 AlpsKnowledge ()
 
virtual ~AlpsKnowledge ()
 
KnowledgeType getType ()
 
void setType (KnowledgeType t)
 
virtual AlpsEncoded * encode () const
 
virtual AlpsReturnStatus encode (AlpsEncoded *encoded)
 
virtual AlpsKnowledge * decode (AlpsEncoded &encoded) const
 
AlpsEncoded * getEncoded () const
 
void setEncoded (AlpsEncoded *e)
 

Additional Inherited Members

- Protected Member Functions inherited from AlpsSubTree
void removeDeadNodes (AlpsTreeNode *&node)
 
void replaceNode (AlpsTreeNode *oldNode, AlpsTreeNode *newNode)
 
void fathomAllNodes ()
 
- Protected Attributes inherited from AlpsSubTree
AlpsTreeNode * root_
 
AlpsNodePool * nodePool_
 
AlpsNodePool * diveNodePool_
 
AlpsSearchStrategy< AlpsTreeNode * > * diveNodeRule_
 
AlpsTreeNode * activeNode_
 
double quality_
 
AlpsKnowledgeBroker * broker_
 
- Protected Attributes inherited from AlpsKnowledge
KnowledgeType type_
 

Detailed Description

This class is the data structure for storing a subtree within BCPS.

The biggest addition to the fields that already exist withink ALPS is the storage for the global list of objects that are active within that subtree. Initally, this will be implemeted as a std::set, but later on should be changed to something more efficient such as a hash table or something like that.

Definition at line 42 of file BcpsSubTree.h.

Constructor & Destructor Documentation

◆ BcpsSubTree()

BcpsSubTree::BcpsSubTree ( )
inline

Definition at line 49 of file BcpsSubTree.h.

◆ ~BcpsSubTree()

virtual BcpsSubTree::~BcpsSubTree ( )
inlinevirtual

Definition at line 54 of file BcpsSubTree.h.

Member Function Documentation

◆ getConstraintPool()

BcpsConstraintPool * BcpsSubTree::getConstraintPool ( ) const
inline

Definition at line 60 of file BcpsSubTree.h.

◆ getVariablePool()

BcpsVariablePool * BcpsSubTree::getVariablePool ( ) const
inline

Definition at line 65 of file BcpsSubTree.h.


The documentation for this class was generated from the following file: