|
| | 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) |
| |