#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 38 of file OSDipBlockBearcatSolver.h.
OSDipBlockBearcatSolver::OSDipBlockBearcatSolver | ( | ) |
Default Constructor.
Definition at line 27 of file OSDipBlockBearcatSolver.cpp.
Referenced by OSDipBlockBearcatSolver::Factory::create().
OSDipBlockBearcatSolver::OSDipBlockBearcatSolver | ( | OSInstance * | osinstance, | |
OSOption * | osoption | |||
) |
Create the solver with the instance.
Definition at line 33 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 149 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 334 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 205 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 318 of file OSDipBlockBearcatSolver.cpp.
References ErrorClass::errormsg.
Definition at line 44 of file OSDipBlockBearcatSolver.h.
Definition at line 48 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), and qrouteCost().
Definition at line 49 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 50 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), and solve().
Definition at line 51 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and solve().
Definition at line 52 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_u |
Definition at line 54 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_v |
Definition at line 55 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 56 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 57 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
double** OSDipBlockBearcatSolver::m_g |
Definition at line 58 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), and ~OSDipBlockBearcatSolver().
Definition at line 60 of file OSDipBlockBearcatSolver.h.
Referenced by OSDipBlockBearcatSolver(), qrouteCost(), solve(), and ~OSDipBlockBearcatSolver().
std::vector<IndexValuePair*> OSDipBlockBearcatSolver::m_primalVals |
Definition at line 63 of file OSDipBlockBearcatSolver.h.
Referenced by solve(), and ~OSDipBlockBearcatSolver().