|
| CglLandPSimplex (const OsiSolverInterface &si, const CglLandP::CachedData &cached, const CglLandP::Parameters ¶ms, Validator &validator) |
| Usefull onstructor. More...
|
|
| ~CglLandPSimplex () |
| Destructor. More...
|
|
void | cacheUpdate (const CglLandP::CachedData &cached, bool reducedSpace=0) |
| Update cached information in case of basis change in a round. More...
|
|
bool | resetSolver (const CoinWarmStartBasis *basis) |
| reset the solver to optimal basis More...
|
|
bool | optimize (int var, OsiRowCut &cut, const CglLandP::CachedData &cached, const CglLandP::Parameters ¶ms) |
| Perfom pivots to find the best cuts. More...
|
|
bool | generateMig (int row, OsiRowCut &cut, const CglLandP::Parameters ¶ms) |
| Find Gomory cut (i.e. More...
|
|
int | generateExtraCuts (const CglLandP::CachedData &cached, const CglLandP::Parameters ¶ms) |
| Find extra constraints in current tableau. More...
|
|
int | generateExtraCut (int i, const CglLandP::CachedData &cached, const CglLandP::Parameters ¶ms) |
| Generate a constrainte for a row of the tableau different from the source row. More...
|
|
void | genThisBasisMigs (const CglLandP::CachedData &cached, const CglLandP::Parameters ¶ms) |
|
int | insertAllExtr (OsiCuts &cs, CoinRelFltEq eq) |
| insert all extra cuts in cs. More...
|
|
void | setLogLevel (int level) |
|
void | setSi (OsiSolverInterface *si) |
|
void | freeSi () |
|
Cuts & | extraCuts () |
|
void | loadBasis (const OsiSolverInterface &si, std::vector< int > &M1, std::vector< int > &M2, int k) |
|
int | getNumCols () const |
|
int | getNumRows () const |
|
const CoinWarmStartBasis * | getBasis () const |
|
const int * | getNonBasics () const |
|
const int * | getBasics () const |
|
void | outPivInfo (int ncuts) |
|
|
bool | changeBasis (int incoming, int leaving, int direction, bool modularize) |
| Perform a change in the basis (direction is 1 if leaving variable is going to ub, 0 otherwise) More...
|
|
int | fastFindCutImprovingPivotRow (int &direction, int &gammaSign, double tolerance, bool flagPositiveRows) |
| Find a row which can be used to perform an improving pivot the fast way (i.e., find the leaving variable). More...
|
|
int | rescanReducedCosts (int &direction, int &gammaSign, double tolerance) |
| Rescan reduced costs tables. More...
|
|
int | fastFindBestPivotColumn (int direction, int gammaSign, double pivotTol, double rhsTol, bool reducedSpace, bool allowNonImproving, double &bestSigma, bool modularize) |
| Find the column which leads to the best cut (i.e., find incoming variable). More...
|
|
int | findBestPivot (int &leaving, int &direction, const CglLandP::Parameters ¶ms) |
| Find incoming and leaving variables which lead to the most violated adjacent normalized lift-and-project cut. More...
|
|
double | computeCglpObjective (const TabRow &row, bool modularize=false) const |
| Compute the objective value of the Cglp for given row and rhs (if strengthening shall be applied row should have been modularized). More...
|
|
double | strengthenedIntersectionCutCoef (int i, double alpha_i, double beta) const |
| return the coefficients of the strengthened intersection cut takes one extra argument seens needs to consider variable type. More...
|
|
double | newRowCoefficient (int j, double gamma) const |
| return the coefficient of the new row (combining row_k + gamma row_i). More...
|
|
void | createIntersectionCut (TabRow &row, OsiRowCut &cut) const |
| Create the intersection cut of row k. More...
|
|
double | normalizationFactor (const TabRow &row) const |
| Compute the normalization factor of the cut. More...
|
|
void | scaleCut (OsiRowCut &cut, double factor) const |
| Scale the cut by factor. More...
|
|
void | createMIG (TabRow &row, OsiRowCut &cut) const |
| Create strenghtened row. More...
|
|
void | pullTableauRow (TabRow &row) const |
| Get the row i of the tableau. More...
|
|
void | adjustTableauRow (int var, TabRow &row, int direction) |
| Adjust the row of the tableau to reflect leaving variable direction. More...
|
|
void | resetOriginalTableauRow (int var, TabRow &row, int direction) |
| reset the tableau row after a call to adjustTableauRow More...
|
|
double | getLoBound (int index) const |
| Get lower bound for variable or constraint. More...
|
|
double | getUpBound (int index) const |
| Get upper bound for variable or constraint. More...
|
|
double | getColsolToCut (int index) const |
| Access to value in solution to cut (indexed in reduced problem) More...
|
|
bool | isGtConst (int index) const |
|
void | setColsolToCut (int index, double value) |
| Access to value in solution to cut (indexed in reduced problem) More...
|
|
CoinWarmStartBasis::Status | getStatus (int index) const |
| Get the basic status of a variable (structural or slack). More...
|
|
bool | isInteger (int index) const |
| Say if variable index by i in current tableau is integer. More...
|
|
void | computeWeights (CglLandP::LHSnorm norm, CglLandP::Normalization type, CglLandP::RhsWeightType rhs) |
| Compute normalization weights. More...
|
|
double | normedCoef (double a, int ii) const |
| Evenutaly multiply a by w if normed_weights_ is not empty. More...
|
|
void | printTableau (std::ostream &os) |
| print the tableau of current basis. More...
|
|
void | printEverything () |
| Print everything . More...
|
|
void | printTableauLateX (std::ostream &os) |
| print the tableau of current basis. More...
|
|
void | printRowLateX (std::ostream &os, int i) |
|
void | printCutLateX (std::ostream &os, int i) |
|
void | printCglpBasis (std::ostream &os=std::cout) |
| Print CGLP basis corresponding to current tableau and source row. More...
|
|
void | get_M1_M2_M3 (const TabRow &row, std::vector< int > &M1, std::vector< int > &M2, std::vector< int > &M3) |
| Put variables in M1 M2 and M3 according to their sign. More...
|
|
void | eliminate_slacks (double *vec) const |
| Put a vector in structural sapce. More...
|
|
|
double | computeCglpRedCost (int direction, int gammaSign, double tau) |
| Compute the reduced cost of Cglp. More...
|
|
double | computeRedCostConstantsInRow () |
| Compute the value of sigma and thau (which are constants for a row i as defined in Mike Perregaard thesis. More...
|
|
double | computeCglpObjective (double gamma, bool strengthen, TabRow &row) |
| Compute the objective value of the Cglp with linear combintation of the two rows by gamma. More...
|
|
double | computeCglpObjective (double gamma, bool strengthen) |
| Compute the objective value of the Cglp with linear combintation of the row_k_ and gamma row_i_. More...
|
|
int | findCutImprovingPivotRow (int &direction, int &gammaSign, double tolerance) |
| Find a row which can be used to perform an improving pivot return index of the cut or -1 if none exists (i.e., find the leaving variable). More...
|
|
int | findBestPivotColumn (int direction, double pivotTol, bool reducedSpace, bool allowDegeneratePivot, bool modularize) |
| Find the column which leads to the best cut (i.e., find incoming variable). More...
|
|
int | plotCGLPobj (int direction, double gammaTolerance, double pivotTol, bool reducedSpace, bool allowDegenerate, bool modularize) |
|