103 virtual void setAway(
double value);
212 double eps_coeff = 1e-11,
214 double eps_relax_abs = 1e-11,
215 double eps_relax_rel = 1e-13,
216 double max_dyn = 1e6,
217 double min_viol = 1e-4,
218 int max_supp_abs = 1000,
219 double max_supp_rel = 0.1,
221 bool use_int_slacks =
false,
222 bool check_duplicates =
false,
223 bool integral_scale_cont =
false,
224 bool enforce_scaling =
true);
229 double eps_elim = 1e-12,
230 double eps_relax_abs = 1e-11,
231 double eps_relax_rel = 1e-13,
232 double max_dyn = 1e6,
233 double min_viol = 1e-4,
234 double max_supp_rel = 0.1,
236 bool use_int_slacks =
false,
237 bool check_duplicates =
false,
238 bool integral_scale_cont =
false,
239 bool enforce_scaling =
true);
double getAway() const
Get value of away.
void setMaxSupportAbs(int value)
Alias for consistency with our naming scheme.
bool getCHECK_DUPLICATES() const
Get the value of CHECK_DUPLICATES.
void setCheckDuplicates(bool value)
Aliases.
void setEpsElim(double value)
Aliases.
double EPS_RELAX_REL
For a generated cut with right hand side rhs_val, EPS_RELAX_EPS * fabs(rhs_val) is used to relax the ...
double getMAX_SUPPORT_REL() const
Get the value of MINVIOL.
virtual void setUSE_INTSLACKS(bool value)
Set the value of USE_INTSLACKS.
int getMaxSupportAbs() const
CleaningProcedure getCLEAN_PROC() const
Get the value of CLEAN_PROC.
bool USE_INTSLACKS
Use integer slacks to generate cuts if USE_INTSLACKS = 1.
double getMaxSupportRel() const
double getEpsRelaxAbs() const
virtual void setEPS_RELAX_REL(double value)
Set EPS_RELAX_REL.
CglGMIParam(double eps=1e-12, double away=0.005, double eps_coeff=1e-11, double eps_elim=0, double eps_relax_abs=1e-11, double eps_relax_rel=1e-13, double max_dyn=1e6, double min_viol=1e-4, int max_supp_abs=1000, double max_supp_rel=0.1, CleaningProcedure clean_proc=CP_CGLLANDP1, bool use_int_slacks=false, bool check_duplicates=false, bool integral_scale_cont=false, bool enforce_scaling=true)
Default constructor.
void setMinViol(double value)
Aliases.
virtual void setMAXDYN(double value)
virtual void setENFORCE_SCALING(bool value)
Set the value of ENFORCE_SCALING.
virtual void setEPS_ELIM(double value)
Set the value of EPS_ELIM, epsilon for values of coefficients when eliminating slack variables; Defau...
virtual void setEPS(const double eps)
Set EPS.
virtual void setEPS_COEFF(const double eps_c)
Set EPS_COEFF.
double getEpsRelaxRel() const
CleaningProcedure getCleaningProcedure() const
bool ENFORCE_SCALING
Should we discard badly scaled cuts (according to the scaling procedure in use)? If false...
CleaningProcedure CLEAN_PROC
Which cleaning procedure should be used?
Class collecting parameters for the GMI cut generator.
void setEnforceScaling(bool value)
Aliases.
int MAX_SUPPORT
Maximum number of non zero coefficients in a generated cut; Default: COIN_INT_MAX.
void setAWAY(double value)
Aliases.
virtual void setMINVIOL(double value)
Set the value of MINVIOL, the minimum violation for the current basic solution in a generated cut...
virtual void setAway(double value)
Set AWAY, the minimum distance from being integer used for selecting rows for cut generation; all row...
virtual void setMAX_SUPPORT(const int max_s)
Set MAX_SUPPORT.
virtual ~CglGMIParam()
Destructor.
virtual void setEPS_RELAX_ABS(double value)
Set EPS_RELAX_ABS.
double MAX_SUPPORT_REL
Maximum support relative to number of columns.
virtual CglGMIParam & operator=(const CglGMIParam &rhs)
Assignment operator.
void setMaxDyn(double value)
Aliases.
int getMAX_SUPPORT_ABS() const
double MAXDYN
Maximum ratio between largest and smallest non zero coefficients in a cut.
Class collecting parameters for all cut generators.
void setIntegralScaleCont(bool value)
Aliases.
double getEPS_ELIM() const
Get the value of EPS_ELIM.
void setEpsRelaxRel(double value)
Aliases.
void setEpsCoeff(double value)
Epsilon for zeroing out coefficients.
double getMINVIOL() const
Get the value of MINVIOL.
double getEPS_RELAX_REL() const
Get value of EPS_RELAX_REL.
double getMinViol() const
void setEpsRelaxAbs(double value)
Aliases.
bool getEnforcescaling() const
virtual void setCHECK_DUPLICATES(bool value)
Set the value of CHECK_DUPLICATES.
double getEpsElim() const
double EPS_RELAX_ABS
Value added to the right hand side of each generated cut to relax it.
double getEpsCoeff() const
bool getIntegralScaleCont() const
virtual CglGMIParam * clone() const
Clone.
bool getCheckDuplicates() const
int getUseIntSlacks() const
double MINVIOL
Minimum violation for the current basic solution in a generated cut.
bool getENFORCE_SCALING() const
Get the value of ENFORCE_SCALING.
void setUseIntSlacks(bool value)
Aliases.
bool getINTEGRAL_SCALE_CONT() const
Get the value of INTEGRAL_SCALE_CONT.
void setCleanProc(CleaningProcedure value)
Aliases.
virtual void setMAX_SUPPORT_REL(double value)
Set the value of MAX_SUPPORT_REL, the factor contributing to the maximum support relative to the numb...
double EPS_ELIM
Epsilon for value of coefficients when eliminating slack variables.
void setEps(double value)
Epsilon for comparing numbers.
double getMAXDYN() const
Get the value of MAXDYN.
double getEPS_RELAX_ABS() const
Get value of EPS_RELAX_ABS.
double getInfinity() const
void setMaxSupportRel(double value)
Aliases.
int getMaxSupport() const
bool INTEGRAL_SCALE_CONT
Should we try to rescale cut coefficients on continuous variables so that they become integral...
bool getUSE_INTSLACKS() const
Get the value of USE_INTSLACKS.
virtual void setCLEAN_PROC(CleaningProcedure value)
Set the value of CLEAN_PROC.
void setMaxSupport(int value)
Maximum support of the cutting planes.
virtual void setINTEGRAL_SCALE_CONT(bool value)
Set the value of INTEGRAL_SCALE_CONT.
double AWAY
Use row only if pivot variable should be integer but is more than AWAY from being integer...
virtual void setINFINIT(const double inf)
Set INFINIT.
void setInfinity(double value)
Aliases for parameter get/set method in the base class CglParam.
bool CHECK_DUPLICATES
Check for duplicates when adding the cut to the collection?