# LAP::Validator Class Reference

Class to validate or reject a cut. More...

`#include <CglLandPValidator.hpp>`

List of all members.

## Public Types
enum | RejectionsReasons { NoneAccepted = 0, SmallViolation, SmallCoefficient, BigDynamic, DenseCut, EmptyCut, DummyEnd }
| Reasons for rejecting a cut. More...
## Public Member Functions
| Validator (double maxFillIn=1., double maxRatio=1e8, double minViolation=0, bool scale=false, double rhsScale=1)
| Constructor with default values.
int | cleanCut (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par, const double *colLower, const double *colUpper)
| Clean an OsiCut.
int | cleanCut2 (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par, const double *colLower, const double *colUpper)
| Clean an OsiCut by another method.
int | operator() (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par, const double *colLower, const double *colUpper)
| Call the cut cleaner.
const std::string & | failureString (RejectionsReasons code) const
const std::string & | failureString (int code) const
int | numRejected (RejectionsReasons code) const
int | numRejected (int code) const
set functions
void | setMaxFillIn (double value)
void | setMaxRatio (double value)
void | setMinViolation (double value)
void | setRhsScale (double v)
get functions
double | getMaxFillIn ()
double | getMaxRatio ()
double | getMinViolation ()
## Static Private Member Functions
static void | fillRejectionReasons ()
## Private Attributes
double | maxFillIn_
| max percentage of given formulation fillIn should be accepted for cut fillin.
double | maxRatio_
| max ratio between smallest and biggest coefficient
double | minViolation_
| minimum violation for accepting a cut
bool | scale_
| Do we do scaling?
double | rhsScale_
| Scale of right-hand-side.
std::vector< int > | numRejected_
| Number of cut rejected for each of the reasons.
## Static Private Attributes
static std::vector< std::string > | rejections_
| Strings explaining reason for rejections.

## Detailed Description

Class to validate or reject a cut.

Definition at line 26 of file CglLandPValidator.hpp.

## Member Enumeration Documentation

enum LAP::Validator::RejectionsReasons

Reasons for rejecting a cut.

Enumerator:

  NoneAccepted |
  SmallViolation | Violation of the cut is too small.
  SmallCoefficient | There is a small coefficient we can not get rid off.
  BigDynamic | Dynamic of coefficinet is too important.
  DenseCut | cut is too dense
  EmptyCut | After cleaning cut has become empty.
  DummyEnd | dummy

Definition at line 30 of file CglLandPValidator.hpp.

## Constructor & Destructor Documentation

LAP::Validator::Validator | ( | double | maxFillIn = `1.`,
|  | double | maxRatio = `1e8`,
|  | double | minViolation = `0`,
|  | bool | scale = `false`,
|  | double | rhsScale = `1` |
| ) |  |  |

Constructor with default values.

## Member Function Documentation

int LAP::Validator::cleanCut | ( | OsiRowCut & | aCut,
|  | const double * | solCut,
|  | const OsiSolverInterface & | si,
|  | const CglParam & | par,
|  | const double * | colLower,
|  | const double * | colUpper |
| ) |  |  |

Clean an OsiCut.

int LAP::Validator::cleanCut2 | ( | OsiRowCut & | aCut,
|  | const double * | solCut,
|  | const OsiSolverInterface & | si,
|  | const CglParam & | par,
|  | const double * | colLower,
|  | const double * | colUpper |
| ) |  |  |

Clean an OsiCut by another method.

int LAP::Validator::operator() | ( | OsiRowCut & | aCut,
|  | const double * | solCut,
|  | const OsiSolverInterface & | si,
|  | const CglParam & | par,
|  | const double * | colLower,
|  | const double * | colUpper |
| ) |  |  | `[inline]`

Call the cut cleaner.

Definition at line 55 of file CglLandPValidator.hpp.

void LAP::Validator::setMaxFillIn | ( | double | value | ) | `[inline]`

Definition at line 62 of file CglLandPValidator.hpp.

void LAP::Validator::setMaxRatio | ( | double | value | ) | `[inline]`

Definition at line 66 of file CglLandPValidator.hpp.

void LAP::Validator::setMinViolation | ( | double | value | ) | `[inline]`

Definition at line 70 of file CglLandPValidator.hpp.

void LAP::Validator::setRhsScale | ( | double | v | ) | `[inline]`

Definition at line 75 of file CglLandPValidator.hpp.

double LAP::Validator::getMaxFillIn | ( |  | ) | `[inline]`

Definition at line 82 of file CglLandPValidator.hpp.

double LAP::Validator::getMaxRatio | ( |  | ) | `[inline]`

Definition at line 86 of file CglLandPValidator.hpp.

double LAP::Validator::getMinViolation | ( |  | ) | `[inline]`

Definition at line 90 of file CglLandPValidator.hpp.

const std::string& LAP::Validator::failureString | ( | RejectionsReasons | code | ) | const`[inline]`

Definition at line 96 of file CglLandPValidator.hpp.

const std::string& LAP::Validator::failureString | ( | int | code | ) | const`[inline]`

Definition at line 100 of file CglLandPValidator.hpp.

int LAP::Validator::numRejected | ( | RejectionsReasons | code | ) | const`[inline]`

Definition at line 104 of file CglLandPValidator.hpp.

int LAP::Validator::numRejected | ( | int | code | ) | const`[inline]`

Definition at line 108 of file CglLandPValidator.hpp.

static void LAP::Validator::fillRejectionReasons | ( |  | ) | `[static, private]`

## Member Data Documentation

double LAP::Validator::maxFillIn_`[private]`

max percentage of given formulation fillIn should be accepted for cut fillin.

Definition at line 115 of file CglLandPValidator.hpp.

double LAP::Validator::maxRatio_`[private]`

max ratio between smallest and biggest coefficient

Definition at line 117 of file CglLandPValidator.hpp.

double LAP::Validator::minViolation_`[private]`

minimum violation for accepting a cut

Definition at line 119 of file CglLandPValidator.hpp.

bool LAP::Validator::scale_`[private]`

Do we do scaling?

Definition at line 121 of file CglLandPValidator.hpp.

double LAP::Validator::rhsScale_`[private]`

Scale of right-hand-side.

Definition at line 123 of file CglLandPValidator.hpp.

std::vector<std::string> LAP::Validator::rejections_`[static, private]`

Strings explaining reason for rejections.

Definition at line 125 of file CglLandPValidator.hpp.

std::vector<int> LAP::Validator::numRejected_`[private]`

Number of cut rejected for each of the reasons.

Definition at line 127 of file CglLandPValidator.hpp.

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

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