Base class of Calculation state in a ParaSolver. More...
#include <bbParaCalculationState.h>
Public Member Functions | |
BbParaCalculationState () | |
Default Constructor. More... | |
BbParaCalculationState (double inCompTime, double inRootTime, int inNSolved, int inNSent, int inNImprovedIncumbent, int inTerminationState, int inNSolvedWithNoPreprocesses, int inNSimplexIterRoot, double inAverageSimplexIter, int inNTransferredLocalCuts, int inMinTransferredLocalCuts, int inMaxTransferredLocalCuts, int inNTransferredBendersCuts, int inMinTransferredBendersCuts, int inMaxTransferredBendersCuts, int inNRestarts, double inMinIisum, double inMaxIisum, int inMinNii, int inMaxNii, double inDualBound, int inNSelfSplitNodesLeft) | |
Constructor. More... | |
virtual | ~BbParaCalculationState () |
Destructor. More... | |
double | getRootTime () |
getter of root node computing time More... | |
int | getNRestarts () |
getter of the number of restart occurred in solving a subproblem More... | |
double | getAverageNodeCompTimeExcpetRoot () |
getter of average computing time of a node except root node More... | |
int | getNSent () |
getter of the number of nodes transferred from the subproblem solving More... | |
int | getNImprovedIncumbent () |
getter of the number of improved incumbents during solving the subproblem More... | |
int | getTerminationState () |
getter of the termination state for solving the subproblem More... | |
int | getNSolvedWithNoPreprocesses () |
getter of the number of solved nodes in the case that a node is solved without presolving. This is an experimental routine only used for SCIP parallelization More... | |
double | getDualBoundValue () |
getter of the final dual bound value More... | |
double | getNSelfSplitNodesLeft () |
getter of the number of self-split nodes left More... | |
std::string | toString () |
stringfy BbParaCalculationState More... | |
std::string | toSimpleString () |
stringfy BbParaCalculationState (simple string version) More... | |
Public Member Functions inherited from ParaCalculationState | |
ParaCalculationState () | |
Default Constructor. More... | |
ParaCalculationState (double inCompTime, int inNSolved, int inTerminationState) | |
Constructor. More... | |
virtual | ~ParaCalculationState () |
Destructor. More... | |
double | getCompTime () |
getter of computing time of a subproblem More... | |
int | getNSolved () |
geeter of the number of tasks solved in a subproblem More... | |
int | getTerminationState () |
getter of the termination state for solving the subproblem More... | |
virtual std::string | toString ()=0 |
stringfy ParaCalculationState More... | |
virtual std::string | toSimpleString ()=0 |
stringfy ParaCalculationState (simple string version) More... | |
virtual void | send (ParaComm *comm, int destination, int tag)=0 |
send this object to destination More... | |
virtual void | receive (ParaComm *comm, int source, int tag)=0 |
send this object to destination More... | |
Protected Attributes | |
double | rootTime |
computation time of the root node More... | |
int | nSent |
the number of ParaNodes sent More... | |
int | nImprovedIncumbent |
the number of improved solution generated in this ParaSolver More... | |
int | nSolvedWithNoPreprocesses |
number of nodes solved when it is solved with no preprocesses More... | |
int | nSimplexIterRoot |
number of simplex iteration at root node More... | |
double | averageSimplexIter |
average number of simplex iteration except root node More... | |
int | nTransferredLocalCuts |
number of local cuts transferred from a ParaNode More... | |
int | minTransferredLocalCuts |
minimum number of local cuts transferred from a ParaNode More... | |
int | maxTransferredLocalCuts |
maximum number of local cuts transferred from a ParaNode More... | |
int | nTransferredBendersCuts |
number of benders cuts transferred from a ParaNode More... | |
int | minTransferredBendersCuts |
minimum number of benders cuts transferred from a ParaNode More... | |
int | maxTransferredBendersCuts |
maximum number of benders cuts transferred from a ParaNode More... | |
int | nRestarts |
number of restarts More... | |
double | minIisum |
minimum sum of integer infeasibility More... | |
double | maxIisum |
maximum sum of integer infeasibility More... | |
int | minNii |
minimum number of integer infeasibility More... | |
int | maxNii |
maximum number of integer infeasibility More... | |
double | dualBound |
final dual bound value More... | |
int | nSelfSplitNodesLeft |
number of self-split nodes left More... | |
Protected Attributes inherited from ParaCalculationState | |
double | compTime |
computation time of this ParaTask More... | |
int | nSolved |
the number of tasks solved More... | |
int | terminationState |
indicate whether if this computation is terminationState or not. 0: no, 1: terminationState meaning can be defined in derived class More... | |
Base class of Calculation state in a ParaSolver.
Definition at line 52 of file bbParaCalculationState.h.
Default Constructor.
Definition at line 79 of file bbParaCalculationState.h.
BbParaCalculationState | ( | double | inCompTime, |
double | inRootTime, | ||
int | inNSolved, | ||
int | inNSent, | ||
int | inNImprovedIncumbent, | ||
int | inTerminationState, | ||
int | inNSolvedWithNoPreprocesses, | ||
int | inNSimplexIterRoot, | ||
double | inAverageSimplexIter, | ||
int | inNTransferredLocalCuts, | ||
int | inMinTransferredLocalCuts, | ||
int | inMaxTransferredLocalCuts, | ||
int | inNTransferredBendersCuts, | ||
int | inMinTransferredBendersCuts, | ||
int | inMaxTransferredBendersCuts, | ||
int | inNRestarts, | ||
double | inMinIisum, | ||
double | inMaxIisum, | ||
int | inMinNii, | ||
int | inMaxNii, | ||
double | inDualBound, | ||
int | inNSelfSplitNodesLeft | ||
) |
Constructor.
inCompTime | computation time of this ParaNode |
inRootTime | computation time of the root node |
inNSolved | the number of nodes solved |
inNSent | the number of ParaNodes sent |
inNImprovedIncumbent | the number of improved solution generated in this ParaSolver |
inTerminationState | indicate whether if this computation is terminationState or not. 0: no, 1: terminationState |
inNSolvedWithNoPreprocesses | number of nodes solved when it is solved with no preprocesses |
inNSimplexIterRoot | number of simplex iteration at root node |
inAverageSimplexIter | average number of simplex iteration except root node |
inNTransferredLocalCuts | number of local cuts transferred from a ParaNode |
inMinTransferredLocalCuts | minimum number of local cuts transferred from a ParaNode |
inMaxTransferredLocalCuts | maximum number of local cuts transferred from a ParaNode |
inNTransferredBendersCuts | number of benders cuts transferred from a ParaNode |
inMinTransferredBendersCuts | minimum number of benders cuts transferred from a ParaNode |
inMaxTransferredBendersCuts | maximum number of benders cuts transferred from a ParaNode |
inNRestarts | number of restarts |
inMinIisum | minimum sum of integer infeasibility |
inMaxIisum | maximum sum of integer infeasibility |
inMinNii | minimum number of integer infeasibility |
inMaxNii | maximum number of integer infeasibility |
inDualBound | final dual Bound value |
inNSelfSplitNodesLeft | number of self-split nodes left |
Definition at line 107 of file bbParaCalculationState.h.
|
virtual |
Destructor.
Definition at line 158 of file bbParaCalculationState.h.
double getAverageNodeCompTimeExcpetRoot | ( | ) |
getter of average computing time of a node except root node
Definition at line 187 of file bbParaCalculationState.h.
References ParaCalculationState::compTime, ParaCalculationState::nSolved, and BbParaCalculationState::rootTime.
Referenced by BbParaLoadCoordinator::processRacingRampUpTagCompletionOfCalculation(), BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
double getDualBoundValue | ( | ) |
getter of the final dual bound value
Definition at line 245 of file bbParaCalculationState.h.
References BbParaCalculationState::dualBound.
Referenced by BbParaLoadCoordinator::processRacingRampUpTagCompletionOfCalculation(), BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
int getNImprovedIncumbent | ( | ) |
getter of the number of improved incumbents during solving the subproblem
Definition at line 214 of file bbParaCalculationState.h.
References BbParaCalculationState::nImprovedIncumbent.
int getNRestarts | ( | ) |
getter of the number of restart occurred in solving a subproblem
Definition at line 177 of file bbParaCalculationState.h.
References BbParaCalculationState::nRestarts.
Referenced by BbParaLoadCoordinator::processRacingRampUpTagCompletionOfCalculation(), BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
double getNSelfSplitNodesLeft | ( | ) |
getter of the number of self-split nodes left
Definition at line 255 of file bbParaCalculationState.h.
References BbParaCalculationState::nSelfSplitNodesLeft.
Referenced by BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
int getNSent | ( | ) |
getter of the number of nodes transferred from the subproblem solving
Definition at line 204 of file bbParaCalculationState.h.
References BbParaCalculationState::nSent.
Referenced by BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
int getNSolvedWithNoPreprocesses | ( | ) |
getter of the number of solved nodes in the case that a node is solved without presolving. This is an experimental routine only used for SCIP parallelization
Definition at line 235 of file bbParaCalculationState.h.
References BbParaCalculationState::nSolvedWithNoPreprocesses.
Referenced by BbParaLoadCoordinator::processTagCompletionOfCalculation().
double getRootTime | ( | ) |
getter of root node computing time
Definition at line 167 of file bbParaCalculationState.h.
References BbParaCalculationState::rootTime.
Referenced by BbParaLoadCoordinator::processRacingRampUpTagCompletionOfCalculation(), BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
int getTerminationState | ( | ) |
getter of the termination state for solving the subproblem
Definition at line 224 of file bbParaCalculationState.h.
References ParaCalculationState::terminationState.
Referenced by BbParaLoadCoordinator::processRacingRampUpTagCompletionOfCalculation(), BbParaLoadCoordinator::processTagCompletionOfCalculation(), and BbParaLoadCoordinator::processTagSelfSlpitNodeCalcuationState().
|
virtual |
stringfy BbParaCalculationState (simple string version)
Implements ParaCalculationState.
Definition at line 292 of file bbParaCalculationState.h.
References BbParaCalculationState::averageSimplexIter, ParaCalculationState::compTime, BbParaCalculationState::dualBound, BbParaCalculationState::maxIisum, BbParaCalculationState::maxNii, BbParaCalculationState::minIisum, BbParaCalculationState::minNii, BbParaCalculationState::nImprovedIncumbent, BbParaCalculationState::nRestarts, BbParaCalculationState::nSelfSplitNodesLeft, BbParaCalculationState::nSent, BbParaCalculationState::nSimplexIterRoot, ParaCalculationState::nSolved, and BbParaCalculationState::rootTime.
|
virtual |
stringfy BbParaCalculationState
Implements ParaCalculationState.
Definition at line 265 of file bbParaCalculationState.h.
References ParaCalculationState::compTime, BbParaCalculationState::nImprovedIncumbent, BbParaCalculationState::nSent, ParaCalculationState::nSolved, and ParaCalculationState::terminationState.
|
protected |
average number of simplex iteration except root node
Definition at line 60 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
final dual bound value
Definition at line 72 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getDualBoundValue(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
maximum sum of integer infeasibility
Definition at line 69 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
maximum number of integer infeasibility
Definition at line 71 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
maximum number of benders cuts transferred from a ParaNode
Definition at line 66 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
maximum number of local cuts transferred from a ParaNode
Definition at line 63 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
minimum sum of integer infeasibility
Definition at line 68 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
minimum number of integer infeasibility
Definition at line 70 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
minimum number of benders cuts transferred from a ParaNode
Definition at line 65 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
minimum number of local cuts transferred from a ParaNode
Definition at line 62 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
the number of improved solution generated in this ParaSolver
Definition at line 57 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getNImprovedIncumbent(), BbParaCalculationStateTh::receive(), BbParaCalculationState::toSimpleString(), and BbParaCalculationState::toString().
|
protected |
number of restarts
Definition at line 67 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getNRestarts(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
number of self-split nodes left
Definition at line 73 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getNSelfSplitNodesLeft(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
the number of ParaNodes sent
Definition at line 56 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getNSent(), BbParaCalculationStateTh::receive(), BbParaCalculationState::toSimpleString(), and BbParaCalculationState::toString().
|
protected |
number of simplex iteration at root node
Definition at line 59 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().
|
protected |
number of nodes solved when it is solved with no preprocesses
Definition at line 58 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getNSolvedWithNoPreprocesses(), and BbParaCalculationStateTh::receive().
|
protected |
number of benders cuts transferred from a ParaNode
Definition at line 64 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
number of local cuts transferred from a ParaNode
Definition at line 61 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), and BbParaCalculationStateTh::receive().
|
protected |
computation time of the root node
Definition at line 55 of file bbParaCalculationState.h.
Referenced by BbParaCalculationStateMpi::createDatatype(), BbParaCalculationStateTh::createDatatype(), BbParaCalculationState::getAverageNodeCompTimeExcpetRoot(), BbParaCalculationState::getRootTime(), BbParaCalculationStateTh::receive(), and BbParaCalculationState::toSimpleString().