Loading...
Searching...
No Matches
CglLandP Class Reference

`#include <CglLandP.hpp>`

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

## Classes

class | Parameters
| Class storing parameters. More...
class | NoBasisError
class | SimplexInterfaceError
struct | CachedData
| Some informations that will be changed by the pivots and that we want to keep. More...

## 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.
Public Member Functions inherited from CglCutGenerator
| CglCutGenerator ()
| Default constructor.
| CglCutGenerator (const CglCutGenerator &)
| Copy constructor.
CglCutGenerator & | operator= (const CglCutGenerator &rhs)
| Assignment operator.
virtual | ~CglCutGenerator ()
| Destructor.
virtual std::string | generateCpp (FILE *)
| Create C++ lines to set the generator in the current state.
virtual void | refreshSolver (OsiSolverInterface *)
| This can be used to refresh any information.
int | getAggressiveness () const
| Get Aggressiveness - 0 = neutral, 100 is normal root node.
void | setAggressiveness (int value)
| Set Aggressiveness - 0 = neutral, 100 is normal root node.
void | setGlobalCuts (bool trueOrFalse)
| Set whether can do global cuts.
bool | canDoGlobalCuts () const
| Say whether can do global cuts.
virtual bool | mayGenerateRowCutsInTree () const
| Returns true if may generate Row cuts in tree (rather than root node).
virtual int | maximumLengthOfCutInTree () const
| Return maximum length of cut in tree.

## Friends

class | LAP::CglLandPSimplex
class | CftCglp
void | CglLandPUnitTest (OsiSolverInterface *si, const std::string &mpsDir)

## Generate Cuts

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.
virtual void | generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo())
| Generate cuts for the model data contained in si.
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 ()
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.

## Additional Inherited Members

int | aggressive_
| Aggressiveness - 0 = neutral, 100 is normal root node.
bool | canDoGlobalCuts_
| True if can do global cuts i.e. no general integers.

## Detailed Description

Definition at line 49 of file CglLandP.hpp.

## Member Enumeration Documentation

## SelectionRules

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.

## ExtraCutsMode

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.

## SeparationSpaces

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.

## Normalization

enum CglLandP::Normalization

Normalization.

Enumerator
Unweighted |
WeightRHS |
WeightLHS |
WeightBoth |

Definition at line 82 of file CglLandP.hpp.

## LHSnorm

enum CglLandP::LHSnorm

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

Definition at line 90 of file CglLandP.hpp.

## RhsWeightType

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() [1/2]

CglLandP::CglLandP | ( | const CglLandP::Parameters & | params = CglLandP::Parameters(),
|  | const LAP::Validator & | validator = LAP::Validator() )

Constructor for the class.

## ~CglLandP()

CglLandP::~CglLandP | ( |  | ) |

Destructor.

## CglLandP() [2/2]

CglLandP::CglLandP | ( | const CglLandP & | source | ) |

Copy constructor.

## Member Function Documentation

## operator=()

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

Assignment operator.

## clone()

CglCutGenerator * CglLandP::clone | ( |  | ) | const

virtual

Clone function.

Implements CglCutGenerator.

## generateCuts()

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.

## needsOptimalBasis()

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.

## validator()

LAP::Validator & CglLandP::validator | ( |  | ) |

inline

Definition at line 202 of file CglLandP.hpp.

## setLogLevel()

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.

## parameter()

Parameters & CglLandP::parameter | ( |  | ) |

inline

Definition at line 229 of file CglLandP.hpp.

## scanExtraCuts()

void CglLandP::scanExtraCuts | ( | OsiCuts & | cs,
|  | const double * | colsol ) const

private

## getSortedFractionals()

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.

## getSortedFractionalIndices()

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 Symbol Documentation

## LAP::CglLandPSimplex

friend class LAP::CglLandPSimplex

friend

Definition at line 53 of file CglLandP.hpp.

## CftCglp

friend class CftCglp

friend

Definition at line 54 of file CglLandP.hpp.

## CglLandPUnitTest

void CglLandPUnitTest | ( | OsiSolverInterface * | si,
|  | const std::string & | mpsDir )

friend

## Member Data Documentation

## params_

Parameters CglLandP::params_

private

Definition at line 238 of file CglLandP.hpp.

## cached_

CachedData CglLandP::cached_

private

Cached informations about problem.

Definition at line 283 of file CglLandP.hpp.

## handler_

CoinMessageHandler* CglLandP::handler_

private

message handler

Definition at line 285 of file CglLandP.hpp.

## messages_

CoinMessages CglLandP::messages_

private

messages

Definition at line 287 of file CglLandP.hpp.

## validator_

LAP::Validator CglLandP::validator_

private

cut validator

Definition at line 289 of file CglLandP.hpp.

## numrows_

int CglLandP::numrows_

private

number of rows in the original problems.

Definition at line 291 of file CglLandP.hpp.

## numcols_

int CglLandP::numcols_

private

number of columns in the original problems.

Definition at line 293 of file CglLandP.hpp.

## originalColLower_

double* CglLandP::originalColLower_

private

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

Definition at line 295 of file CglLandP.hpp.

## originalColUpper_

double* CglLandP::originalColUpper_

private

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

Definition at line 297 of file CglLandP.hpp.

## canLift_

bool CglLandP::canLift_

private

Flag to say if cuts can be lifted.

Definition at line 299 of file CglLandP.hpp.

## extraCuts_

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:

- Cgl/src/CglLandP/CglLandP.hpp