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

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.

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:

Generated on 5 Apr 2015 by  doxygen 1.6.1