# CglLandP Class Reference

`#include <CglLandP.hpp>`

Inheritance diagram for CglLandP:
[legend]
Collaboration diagram for CglLandP:
[legend]

List of all members.

## 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 &params=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())
| 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 &params) const
| Retrieve sorted integer variables which are fractional in the solution.
void | getSortedFractionalIndices (std::vector< int > &indices, const CachedData &data, const CglLandP::Parameters &params) 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)

## Detailed Description

Definition at line 49 of file CglLandP.hpp.

## Member Enumeration Documentation

enum CglLandP::SelectionRules

Enumerator:

  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 58 of file CglLandP.hpp.

enum CglLandP::ExtraCutsMode

Enumerator:

  none | Generate no extra cuts.
  AtOptimalBasis | Generate cuts from the optimal basis.
  WhenEnteringBasis | Generate cuts as soon as a structural enters the basis.
  AllViolatedMigs | Generate all violated Mixed integer Gomory cuts in the course of the optimization.

Definition at line 65 of file CglLandP.hpp.

enum CglLandP::SeparationSpaces

Space where cuts are optimized.

Enumerator:

  Fractional |
  Fractional_rc | Use fractional space only for computing reduced costs.
  Full | Work in full space.

Definition at line 74 of file CglLandP.hpp.

enum CglLandP::Normalization

Normalization.

Enumerator:

  Unweighted |
  WeightRHS |
  WeightLHS |
  WeightBoth |

Definition at line 82 of file CglLandP.hpp.

enum CglLandP::LHSnorm

Enumerator:

  L1 |
  L2 |
  SupportSize |
  Infinity |
  Average |
  Uniform |

Definition at line 90 of file CglLandP.hpp.

enum CglLandP::RhsWeightType

RHS weight in normalization.

Enumerator:

  Fixed |
  Dynamic | 2 * current number of constraints.

Definition at line 100 of file CglLandP.hpp.

## Constructor & Destructor Documentation

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.

## Member Function Documentation

CglLandP& CglLandP::operator= | ( | const CglLandP & | rhs | ) |

Assignment operator.

Reimplemented from CglCutGenerator.

CglCutGenerator* CglLandP::clone | ( |  | ) | const`[virtual]`

Clone function.

Implements CglCutGenerator.

virtual void CglLandP::generateCuts | ( | const OsiSolverInterface & | si,
|  | OsiCuts & | cs,
|  | const CglTreeInfo | info = `CglTreeInfo()` |
| ) |  |  | `[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 197 of file CglLandP.hpp.

LAP::Validator& CglLandP::validator | ( |  | ) | `[inline]`

Definition at line 202 of file CglLandP.hpp.

void CglLandP::setLogLevel | ( | int | level | ) | `[inline]`

set level of log for cut generation procedure :

0. for none
1. for log at begin and end of procedure + at some time interval
2. for log at every cut generated

Definition at line 213 of file CglLandP.hpp.

Parameters& CglLandP::parameter | ( |  | ) | `[inline]`

Definition at line 229 of file CglLandP.hpp.

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.

## Friends And Related Function Documentation

friend class LAP::CglLandPSimplex`[friend]`

Definition at line 53 of file CglLandP.hpp.

friend class CftCglp`[friend]`

Definition at line 54 of file CglLandP.hpp.

void CglLandPUnitTest | ( | OsiSolverInterface * | si,
|  | const std::string & | mpsDir |
| ) |  |  | `[friend]`

## Member Data Documentation

Parameters CglLandP::params_`[private]`

Definition at line 238 of file CglLandP.hpp.

CachedData CglLandP::cached_`[private]`

Cached informations about problem.

Definition at line 283 of file CglLandP.hpp.

CoinMessageHandler* CglLandP::handler_`[private]`

message handler

Definition at line 285 of file CglLandP.hpp.

CoinMessages CglLandP::messages_`[private]`

messages

Definition at line 287 of file CglLandP.hpp.

LAP::Validator CglLandP::validator_`[private]`

cut validator

Definition at line 289 of file CglLandP.hpp.

int CglLandP::numrows_`[private]`

number of rows in the original problems.

Definition at line 291 of file CglLandP.hpp.

int CglLandP::numcols_`[private]`

number of columns in the original problems.

Definition at line 293 of file CglLandP.hpp.

double* CglLandP::originalColLower_`[private]`

Original lower bounds for the problem (for lifting cuts).

Definition at line 295 of file CglLandP.hpp.

double* CglLandP::originalColUpper_`[private]`

Original upper bounds for the problem (for lifting cuts).

Definition at line 297 of file CglLandP.hpp.

bool CglLandP::canLift_`[private]`

Flag to say if cuts can be lifted.

Definition at line 299 of file CglLandP.hpp.

OsiCuts CglLandP::extraCuts_`[private]`

Store some extra cut which could be cheaply generated but do not cut current incumbent.

Definition at line 301 of file CglLandP.hpp.

The documentation for this class was generated from the following file:

- /home/coin/svn-release/Alps-1.5.2/Cgl/src/CglLandP/CglLandP.hpp