#include <OSDipBlockBearcatSolver.h>
Inheritance diagram for OSDipBlockBearcatSolver:
Public Member Functions | |
double | qrouteCost (const int &k, const int &l, double *c, int *kountVar) |
virtual void | solve (double *cost, std::vector< IndexValuePair * > *solIndexValPair, double *optVal) |
virtual void | solve (double *cost, std::string *osrl) |
OSDipBlockBearcatSolver () | |
Default Constructor. | |
OSDipBlockBearcatSolver (OSInstance *osinstance, OSOption *osoption) | |
Create the solver with the instance. | |
~OSDipBlockBearcatSolver () | |
Default destructor. | |
Public Attributes | |
OSInstance * | m_osinstance |
OSOption * | m_osoption |
OSResult * | m_osresult |
int | m_numberOfVar |
int | m_numHubs |
int | m_numNodes |
int | m_totalDemand |
int | m_minDemand |
int * | m_demand |
double ** | m_u |
double ** | m_v |
int ** | m_px |
int ** | m_tx |
double ** | m_g |
int * | m_varIdx |
std::vector< IndexValuePair * > | m_primalVals |
Classes | |
class | Factory |
Definition at line 36 of file OSDipBlockBearcatSolver.h.
OSDipBlockBearcatSolver::OSDipBlockBearcatSolver | ( | ) |
Default Constructor.
Definition at line 25 of file OSDipBlockBearcatSolver.cpp.
Referenced by OSDipBlockBearcatSolver::Factory::create().
OSDipBlockBearcatSolver::OSDipBlockBearcatSolver | ( | OSInstance * | osinstance, | |
OSOption * | osoption | |||
) |
Create the solver with the instance.
Definition at line 31 of file OSDipBlockBearcatSolver.cpp.
References ErrorClass::errormsg, OSOption::getSolverOptions(), OSInstance::getVariableNumber(), m_demand, m_g, m_minDemand, m_numberOfVar, m_numHubs, m_numNodes, m_osinstance, m_osoption, m_px, m_totalDemand, m_tx, m_u, m_v, m_varIdx, OSDipBlockSolver::m_whichBlock, osinstance, and osoption.
OSDipBlockBearcatSolver::~OSDipBlockBearcatSolver | ( | ) |
Default destructor.
Definition at line 147 of file OSDipBlockBearcatSolver.cpp.
References m_demand, m_g, m_numNodes, m_primalVals, m_px, m_tx, m_u, m_v, and m_varIdx.
double OSDipBlockBearcatSolver::qrouteCost | ( | const int & | k, | |
const int & | l, | |||
double * | c, | |||
int * | kountVar | |||
) |
Definition at line 332 of file OSDipBlockBearcatSolver.cpp.
References m_demand, m_g, m_minDemand, m_numHubs, m_numNodes, m_px, m_tx, m_u, m_v, m_varIdx, and OSDBL_MAX.
Referenced by solve().
void OSDipBlockBearcatSolver::solve | ( | double * | cost, | |
std::vector< IndexValuePair * > * | solIndexValPair, | |||
double * | optVal | |||
) | [virtual] |
Calculate the function value given the current variable values. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this OSnLNode class.
cost | -- an input value: pointer to the objective function (reduced) coefficients. | |
sv | -- a return value: sparse vector with the optimal column | |
optVal | -- a return value: the optimal solution value of the subproblem |
Implements OSDipBlockSolver.
Definition at line 203 of file OSDipBlockBearcatSolver.cpp.
References ErrorClass::errormsg, IndexValuePair::idx, m_minDemand, m_primalVals, m_totalDemand, m_varIdx, OSDipBlockSolver::m_whichBlock, OSDBL_MAX, qrouteCost(), and IndexValuePair::value.
void OSDipBlockBearcatSolver::solve | ( | double * | cost, | |
std::string * | osrl | |||
) | [virtual] |
Calculate the function value given the current variable values. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this OSnLNode class.
cost | -- an input value: pointer to the objective function (reduced) coefficients. | |
osrl | -- a return value: an osrl string |
Implements OSDipBlockSolver.
Definition at line 316 of file OSDipBlockBearcatSolver.cpp.
References ErrorClass::errormsg.
Definition at line 42 of file OSDipBlockBearcatSolver.h.
Definition at line 46 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), and qrouteCost().
Definition at line 47 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 48 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), and solve().
Definition at line 49 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and solve().
Definition at line 50 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_u |
Definition at line 52 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_v |
Definition at line 53 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 54 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 55 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_g |
Definition at line 56 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 58 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), solve(), and ~OSDipBlockBearcatSolver().
std::vector<IndexValuePair*> OSDipBlockBearcatSolver::m_primalVals |
Definition at line 61 of file OSDipBlockBearcatSolver.h.
Referenced by solve(), and ~OSDipBlockBearcatSolver().