- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# CglValidator Class Reference

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

`#include <CglLandPValidator.hpp>`

List of all members.

## Public Types
| NoneAccepted = 0
| 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
enum | RejectionsReasons { NoneAccepted = 0, SmallViolation, SmallCoefficient, BigDynamic, DenseCut, EmptyCut, DummyEnd }
| Reasons for rejecting a cut. More...
## Public Member Functions
| CglValidator (double maxFillIn=1., double maxRatio=1e8, double minViolation=0, bool scale=false)
| Constructor with default values.
int | cleanCut (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par) const
| Clean an OsiCut.
int | cleanCut2 (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par) const
| Clean an OsiCut by another method.
int | operator() (OsiRowCut &aCut, const double *solCut, const OsiSolverInterface &si, const CglParam &par) const
| 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)
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?
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 20 of file CglLandPValidator.hpp.

## Member Enumeration Documentation

enum CglValidator::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 24 of file CglLandPValidator.hpp.

## Constructor & Destructor Documentation

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

Constructor with default values.

## Member Function Documentation

int CglValidator::cleanCut | ( | OsiRowCut & | aCut,
|  | const double * | solCut,
|  | const OsiSolverInterface & | si,
|  | const CglParam & | par |
| ) |  |  | const

Clean an OsiCut.

int CglValidator::cleanCut2 | ( | OsiRowCut & | aCut,
|  | const double * | solCut,
|  | const OsiSolverInterface & | si,
|  | const CglParam & | par |
| ) |  |  | const

Clean an OsiCut by another method.

Referenced by operator()().

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

Call the cut cleaner.

Definition at line 45 of file CglLandPValidator.hpp.

References cleanCut2().

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

Definition at line 49 of file CglLandPValidator.hpp.

References maxFillIn_.

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

Definition at line 50 of file CglLandPValidator.hpp.

References maxRatio_.

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

Definition at line 51 of file CglLandPValidator.hpp.

References minViolation_.

double CglValidator::getMaxFillIn | ( |  | ) | `[inline]`

Definition at line 55 of file CglLandPValidator.hpp.

References maxFillIn_.

double CglValidator::getMaxRatio | ( |  | ) | `[inline]`

Definition at line 56 of file CglLandPValidator.hpp.

References maxRatio_.

double CglValidator::getMinViolation | ( |  | ) | `[inline]`

Definition at line 57 of file CglLandPValidator.hpp.

References minViolation_.

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

Definition at line 60 of file CglLandPValidator.hpp.

References rejections_.

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

Definition at line 61 of file CglLandPValidator.hpp.

References rejections_.

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

Definition at line 62 of file CglLandPValidator.hpp.

References numRejected_.

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

Definition at line 63 of file CglLandPValidator.hpp.

References numRejected_.

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

## Member Data Documentation

double CglValidator::maxFillIn_`[private]`

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

Definition at line 67 of file CglLandPValidator.hpp.

Referenced by getMaxFillIn(), and setMaxFillIn().

double CglValidator::maxRatio_`[private]`

max ratio between smallest and biggest coefficient

Definition at line 69 of file CglLandPValidator.hpp.

Referenced by getMaxRatio(), and setMaxRatio().

double CglValidator::minViolation_`[private]`

minimum violation for accepting a cut

Definition at line 71 of file CglLandPValidator.hpp.

Referenced by getMinViolation(), and setMinViolation().

bool CglValidator::scale_`[private]`

Do we do scaling?

Definition at line 73 of file CglLandPValidator.hpp.

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

Strings explaining reason for rejections.

Definition at line 75 of file CglLandPValidator.hpp.

Referenced by failureString().

std::vector<int> CglValidator::numRejected_`[mutable, private]`

Number of cut rejected for each of the reasons.

Definition at line 77 of file CglLandPValidator.hpp.

Referenced by numRejected().

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

- /home/coin/SVN-release/Cgl-0.53.1/Cgl/src/CglLandP/CglLandPValidator.hpp