17 #include "DecompApp.h"
18 #include "DecompParam.h"
24 #include "OSInstance.h"
88 const int * rowsPart);
98 const double * redCostX,
99 const double convexDual,
100 std::list<DecompVar*> & vars);
106 const double tolZero);
115 std::cout <<
"INSIDE OSDip DECOMP DESTRUCTOR" << std::endl;
116 std::vector<OSDipBlockSolver*>::iterator vit;
bool APPisUserFeasible(const double *x, const int n_cols, const double tolZero)
DecompConstraintSet * m_modelC
The model constraint systems used for different algos.
std::map< int, DecompConstraintSet * > m_modelR
const std::string m_classTag
Class id tag (for log / debugging).
void createModelMasterOnlys2(std::vector< int > &masterOnlyCols)
std::vector< OSDipBlockSolver * > m_osDipBlockSolver
m_osDipBlockSolver is a vector OSDipBlockSolvers
OSDipParam m_appParam
Application specific parameters.
void initializeApp(UtilParameters &utilParam)
Initialize application.
void createModels()
Create model parts.
std::set< int > m_blockVarsAll
m_blockVarsAll is the set of all variables that appear in a block
std::map< int, DecompConstraintSet * > m_modelMasterOnly
The model constraint system used master only vars.
OSDipApp(UtilParameters &utilParam)
Default constructor.
void createModelPart(DecompConstraintSet *model, const int nRowsPart, const int *rowsPart)
std::vector< OSInstance * > m_blockOSInstances
m_blockOSInstances is a vector with an osinstance for each block
double * m_objective
The model objective coefficients (original space).
int generateCuts(const double *x, DecompCutList &newCuts)
OS_DipInterface m_osInterface
the OS interface
std::vector< std::set< int > > m_blockVars
m_blockVars is a vector with the set of variables for each block
DecompSolverStatus solveRelaxed(const int whichBlock, const double *redCostX, const double convexDual, std::list< DecompVar * > &vars)
Solve the relaxed problem.
std::set< int > m_coreConstraintIndexes
m_coreConstraintIndexes is the set core constraint indexes
OSDipFactoryInitializer * factoryInit
int generateInitVars(DecompVarList &initVars)
std::vector< std::string > m_blockFactories
m_blockFactories is a vector solver factory for each block
void fint fint fint real fint real * x