#include <CglLandP.hpp>
Classes | |
struct | CachedData |
Some informations that will be changed by the pivots and that we want to keep. More... | |
class | NoBasisError |
class | Parameters |
Class storing parameters. More... | |
class | SimplexInterfaceError |
Public Types | |
enum | SelectionRules { mostNegativeRc, bestPivot, initialReducedCosts } |
enum | ExtraCutsMode { none, AtOptimalBasis, WhenEnteringBasis, AllViolatedMigs } |
enum | SeparationSpaces { Fractional = 0, Fractional_rc, Full } |
Space where cuts are optimized. More... | |
enum | Normalization { Unweighted = 0, WeightRHS, WeightLHS, WeightBoth } |
Normalization. More... | |
enum | LHSnorm { L1 = 0, L2, SupportSize, Infinity, Average, Uniform } |
enum | RhsWeightType { Fixed = 0, Dynamic } |
RHS weight in normalization. More... | |
Public Member Functions | |
CglLandP (const CglLandP::Parameters ¶ms=CglLandP::Parameters(), const LAP::Validator &validator=LAP::Validator()) | |
Constructor for the class. | |
~CglLandP () | |
Destructor. | |
CglLandP (const CglLandP &source) | |
Copy constructor. | |
CglLandP & | operator= (const CglLandP &rhs) |
Assignment operator. | |
CglCutGenerator * | clone () const |
Clone function. | |
virtual bool | needsOptimalBasis () const |
Return true if needs optimal basis to do cuts. | |
LAP::Validator & | validator () |
void | setLogLevel (int level) |
set level of log for cut generation procedure : | |
Parameters & | parameter () |
Generate Cuts | |
virtual void | generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo()) const |
Generate cuts for the model data contained in si. | |
Private Member Functions | |
void | scanExtraCuts (OsiCuts &cs, const double *colsol) const |
int | getSortedFractionals (CoinPackedVector &xFrac, const CachedData &data, const CglLandP::Parameters ¶ms) const |
Retrieve sorted integer variables which are fractional in the solution. | |
void | getSortedFractionalIndices (std::vector< int > &indices, const CachedData &data, const CglLandP::Parameters ¶ms) const |
Retrieve sorted integer variables which are fractional in the solution. | |
Private Attributes | |
Parameters | params_ |
CachedData | cached_ |
Cached informations about problem. | |
CoinMessageHandler * | handler_ |
message handler | |
CoinMessages | messages_ |
messages | |
LAP::Validator | validator_ |
cut validator | |
int | numrows_ |
number of rows in the original problems. | |
int | numcols_ |
number of columns in the original problems. | |
double * | originalColLower_ |
Original lower bounds for the problem (for lifting cuts). | |
double * | originalColUpper_ |
Original upper bounds for the problem (for lifting cuts). | |
bool | canLift_ |
Flag to say if cuts can be lifted. | |
OsiCuts | extraCuts_ |
Store some extra cut which could be cheaply generated but do not cut current incumbent. | |
Friends | |
class | LAP::CglLandPSimplex |
class | CftCglp |
void | CglLandPUnitTest (OsiSolverInterface *si, const std::string &mpsDir) |
Definition at line 54 of file CglLandP.hpp.
mostNegativeRc |
select most negative reduced cost |
bestPivot |
select best possible pivot. |
initialReducedCosts |
Select only those rows which had initialy a 0 reduced cost. |
Definition at line 63 of file CglLandP.hpp.
Definition at line 69 of file CglLandP.hpp.
Space where cuts are optimized.
Fractional | |
Fractional_rc |
Use fractional space only for computing reduced costs. |
Full |
Work in full space. |
Definition at line 77 of file CglLandP.hpp.
Normalization.
Definition at line 84 of file CglLandP.hpp.
enum CglLandP::LHSnorm |
Definition at line 91 of file CglLandP.hpp.
RHS weight in normalization.
Definition at line 100 of file CglLandP.hpp.
CglLandP::CglLandP | ( | const CglLandP::Parameters & | params = CglLandP::Parameters() , |
|
const LAP::Validator & | validator = LAP::Validator() | |||
) |
Constructor for the class.
CglLandP::~CglLandP | ( | ) |
Destructor.
CglLandP::CglLandP | ( | const CglLandP & | source | ) |
Copy constructor.
CglCutGenerator* CglLandP::clone | ( | ) | const [virtual] |
Clone function.
Implements CglCutGenerator.
virtual void CglLandP::generateCuts | ( | const OsiSolverInterface & | si, | |
OsiCuts & | cs, | |||
const CglTreeInfo | info = CglTreeInfo() | |||
) | const [virtual] |
Generate cuts for the model data contained in si.
The generated cuts are inserted into and returned in the collection of cuts cs.
Implements CglCutGenerator.
virtual bool CglLandP::needsOptimalBasis | ( | ) | const [inline, virtual] |
Return true if needs optimal basis to do cuts.
Reimplemented from CglCutGenerator.
Definition at line 202 of file CglLandP.hpp.
LAP::Validator& CglLandP::validator | ( | ) | [inline] |
Definition at line 206 of file CglLandP.hpp.
References validator_.
void CglLandP::setLogLevel | ( | int | level | ) | [inline] |
set level of log for cut generation procedure :
Definition at line 216 of file CglLandP.hpp.
References handler_.
Parameters& CglLandP::parameter | ( | ) | [inline] |
Definition at line 231 of file CglLandP.hpp.
References params_.
void CglLandP::scanExtraCuts | ( | OsiCuts & | cs, | |
const double * | colsol | |||
) | const [private] |
int CglLandP::getSortedFractionals | ( | CoinPackedVector & | xFrac, | |
const CachedData & | data, | |||
const CglLandP::Parameters & | params | |||
) | const [private] |
Retrieve sorted integer variables which are fractional in the solution.
Return the number of variables.
void CglLandP::getSortedFractionalIndices | ( | std::vector< int > & | indices, | |
const CachedData & | data, | |||
const CglLandP::Parameters & | params | |||
) | const [private] |
Retrieve sorted integer variables which are fractional in the solution.
Return the number of variables.
friend class LAP::CglLandPSimplex [friend] |
Definition at line 58 of file CglLandP.hpp.
friend class CftCglp [friend] |
Definition at line 59 of file CglLandP.hpp.
void CglLandPUnitTest | ( | OsiSolverInterface * | si, | |
const std::string & | mpsDir | |||
) | [friend] |
Parameters CglLandP::params_ [private] |
Definition at line 239 of file CglLandP.hpp.
Referenced by parameter().
CachedData CglLandP::cached_ [mutable, private] |
Cached informations about problem.
Definition at line 278 of file CglLandP.hpp.
CoinMessageHandler* CglLandP::handler_ [private] |
CoinMessages CglLandP::messages_ [private] |
messages
Definition at line 282 of file CglLandP.hpp.
LAP::Validator CglLandP::validator_ [private] |
int CglLandP::numrows_ [mutable, private] |
number of rows in the original problems.
Definition at line 286 of file CglLandP.hpp.
int CglLandP::numcols_ [mutable, private] |
number of columns in the original problems.
Definition at line 288 of file CglLandP.hpp.
double* CglLandP::originalColLower_ [mutable, private] |
Original lower bounds for the problem (for lifting cuts).
Definition at line 290 of file CglLandP.hpp.
double* CglLandP::originalColUpper_ [mutable, private] |
Original upper bounds for the problem (for lifting cuts).
Definition at line 292 of file CglLandP.hpp.
bool CglLandP::canLift_ [mutable, private] |
Flag to say if cuts can be lifted.
Definition at line 294 of file CglLandP.hpp.
OsiCuts CglLandP::extraCuts_ [mutable, private] |
Store some extra cut which could be cheaply generated but do not cut current incumbent.
Definition at line 296 of file CglLandP.hpp.