37#ifndef __BB_PARA_NODES_MERGER_H__
38#define __BB_PARA_NODES_MERGER_H__
50class BbParaDiffSubproblem;
145 int inNBoundChangesOfBestNode,
Base class for instance data.
Class for the difference between instance and subproblem.
double mergeNodeTime
accumulate time to make a merged node
double getMergeNodeTime()
getter of mergeNodeTime
double generateMergeNodesCandidatesTime
accumulate time to generate merge nodes candidates
double getGenerateMergeNodesCandidatesTime()
getter of generateMergeNodesCandidatesTime
BbParaMergeNodeInfo * mergeInfoHead
head of BbParaMergeNodeInfo list
int nBoundChangesOfBestNode
bound changes of the best node
double getAddingNodeToMergeStructTime()
getter of addingNodeToMergeStructTime
void deleteMergeNodeInfo(BbParaMergeNodeInfo *mNode)
delete merge node info
int mergeNodes(BbParaNode *node, BbParaNodePool *paraNodePool)
make a merge node
int varIndexRange
variable index range
ParaParamSet * paraParamSet
pointer to ParaParamSet object
BbParaMergeNodeInfo * mergeInfoTail
tail of BbParaMergeNodeInfo list times
BbParaFixedValue ** varIndexTable
variable indices table.
double regenerateMergeNodesCandidatesTime
accumulate time to regenerate merge nodes candidates
void generateMergeNodesCandidates(ParaComm *paraComm, ParaInitiator *paraInitiator)
generate merge nodes candidates
BbParaInstance * instance
pointer to ParaInstance object
double getRegenerateMergeNodesCandidatesTime()
getter of regenerateMergeNodesCandidatesTime
ParaTimer * paraTimer
normal timer used
BbParaNodesMerger(int inVarIndexRange, int inNBoundChangesOfBestNode, ParaTimer *inParaTimer, BbParaInstance *inParaInstance, ParaParamSet *inParaParamSet)
double addingNodeToMergeStructTime
accumulate time to add Node to merge struct
void regenerateMergeNodesCandidates(BbParaNode *node, ParaComm *paraComm, ParaInitiator *paraInitiator)
regenerate merge nodes candidates
void addNodeToMergeNodeStructs(BbParaNode *node)
add a node to nodes merger
Base class of communicator object.
static ScipParaInitiator * paraInitiator
struct BbParaFixedValue_ * BbParaFixedValuePtr
Base class of initiator that maintains original problem and incumbent solution.
Parameter set for UG framework.
BbParaFixedValue * next
point next ParaFixedValue struct
BbParaFixedVariable * head
point the head of the ParaFixedVariable
BbParaFixedVariable * tail
point the tail of the ParaFixedVarialbe
double value
value for a fixed variable
BbParaMergeNodeInfo * mnode
pointer to merge node info struct to which this info is belonging
BbParaFixedVariable * prev
pointer to the previous node which has the same fixed value
BbParaFixedVariable * next
pointer to the next node which has the same fixed value
int index
index of the variable among all solvers
int nSameValue
the number of same value fixed variables in the following nodes
Merge node information struct.
@ PARA_MERGE_CHECKING_TO_OTHER_NODE
checking possibility to merge with the other nodes
@ PARA_CANNOT_MERGE
cannot merge to the other node
@ PARA_DELETED
this node is deleted
@ PARA_MERGED_RPRESENTATIVE
representative node for merging
@ PARA_MERGING
in merging process
@ PARA_MERGED_TO_OTHER_NODE
merged to the other node
BbParaDiffSubproblem * mergedDiffSubproblem
merged DiffSubproblem, in case this node is merged and this is the head */
BbParaMergeNodeInfo * mergedTo
pointer to merge node info to which this node is merged */
int nMergedNodes
the number of merged nodes with this node.
BbParaDiffSubproblem * origDiffSubproblem
original DiffSubproblem */
int keyIndex
The fixedVar of this index can reach all merging nodes.
BbParaNode * paraNode
BbParaNode corresponding to this ParaMergeModeInfo */.
BbParaMergeNodeInfo * next
pointer to the next ParaMergeNodeInfo */
BbParaFixedVariable * fixedVariables
array of fixed variable info
int nSameValueVariables
the number of fixed values which are the same as those of the merged node
enum UG::BbParaMergeNodeInfo_::@0 status
status of this ParaMargeNodeInfo
int nFixedVariables
the number of fixed variables
merged node list element stract
BbParaMergedNodeListElement * next
pointer to the next ParaMergedNodeListElement
BbParaNode * node
pointer to BbParaNode object
int idxInFixedVariabes
index in the fixedVariables array
BbParaFixedVariable * fixedVariable
pointer to the fixedVariable