|
|
virtual void | setAway (const double value) |
| Set away, the minimum distance from being integer used for selecting rows for cut generation; all rows whose pivot variable should be integer but is more than away from integrality will be selected; Default: 0.05. More...
|
|
double | getAway () const |
| Get value of away. More...
|
|
virtual void | setLUB (const double value) |
| Set the value of LUB, value considered large for the absolute value of a lower or upper bound on a variable; Default: 1000. More...
|
|
double | getLUB () const |
| Get the value of LUB. More...
|
|
void | setEPS_ELIM (const double value) |
| Set the value of EPS_ELIM, epsilon for values of coefficients when eliminating slack variables; Default: 1e-12. More...
|
|
double | getEPS_ELIM () const |
| Get the value of EPS_ELIM. More...
|
|
virtual void | setEPS_RELAX_ABS (const double eps_ra) |
| Set EPS_RELAX_ABS. More...
|
|
double | getEPS_RELAX_ABS () const |
| Get value of EPS_RELAX_ABS. More...
|
|
virtual void | setEPS_RELAX_REL (const double eps_rr) |
| Set EPS_RELAX_REL. More...
|
|
double | getEPS_RELAX_REL () const |
| Get value of EPS_RELAX_REL. More...
|
|
virtual void | setMAXDYN (double value) |
|
double | getMAXDYN () const |
| Get the value of MAXDYN. More...
|
|
virtual void | setMAXDYN_LUB (double value) |
|
double | getMAXDYN_LUB () const |
| Get the value of MAXDYN_LUB. More...
|
|
virtual void | setEPS_COEFF_LUB (const double value) |
| Set the value of EPS_COEFF_LUB, epsilon for values of coefficients for variables with absolute value of lower or upper bound larger than LUB; Default: 1e-13. More...
|
|
double | getEPS_COEFF_LUB () const |
| Get the value of EPS_COEFF_LUB. More...
|
|
virtual void | setMINVIOL (double value) |
| Set the value of MINVIOL, the minimum violation for the current basic solution in a generated cut. More...
|
|
double | getMINVIOL () const |
| Get the value of MINVIOL. More...
|
|
virtual void | setUSE_INTSLACKS (int value) |
| Set the value of USE_INTSLACKS. More...
|
|
int | getUSE_INTSLACKS () const |
| Get the value of USE_INTSLACKS. More...
|
|
virtual void | setUSE_CG2 (int value) |
| Set the value of USE_CG2. More...
|
|
int | getUSE_CG2 () const |
| Get the value of USE_CG2. More...
|
|
virtual void | setNormIsZero (const double value) |
| Set the value of normIsZero, the threshold for considering a norm to be 0; Default: 1e-5. More...
|
|
double | getNormIsZero () const |
| Get the value of normIsZero. More...
|
|
virtual void | setMinReduc (const double value) |
| Set the value of minReduc, threshold for relative norm improvement for performing a reduction; Default: 0.05. More...
|
|
double | getMinReduc () const |
| Get the value of minReduc. More...
|
|
virtual void | setMaxTab (const double value) |
| Set the maximum allowed value for (mTab * mTab * CoinMax(mTab, nTab)) where mTab is the number of rows used in the combinations and nTab is the number of continuous non basic variables. More...
|
|
double | getMaxTab () const |
| Get the value of maxTab. More...
|
|
|
| CglRedSplitParam (const double lub=1000.0, const double eps_elim=1e-12, const double eps_relax_abs=1e-8, const double eps_relax_rel=0.0, const double max_dyn=1e8, const double max_dyn_lub=1e13, const double eps_coeff_lub=1e-13, const double min_viol=1e-7, const int use_int_slacks=0, const int use_cg2=0, const double norm_zero=1e-5, const double min_reduc=0.05, const double away=0.05, const double max_tab=1e7) |
| Default constructor. More...
|
|
| CglRedSplitParam (const CglParam &source, const double lub=1000.0, const double eps_elim=1e-12, const double eps_relax_abs=1e-8, const double eps_relax_rel=0.0, const double max_dyn=1e8, const double max_dyn_lub=1e13, const double eps_coeff_lub=1e-13, const double min_viol=1e-7, const int use_int_slacks=0, const int use_cg2=0, const double norm_zero=1e-5, const double min_reduc=0.05, const double away=0.05, const double max_tab=1e7) |
| Constructor from CglParam. More...
|
|
| CglRedSplitParam (const CglRedSplitParam &source) |
| Copy constructor. More...
|
|
virtual CglRedSplitParam * | clone () const |
| Clone. More...
|
|
virtual CglRedSplitParam & | operator= (const CglRedSplitParam &rhs) |
| Assignment operator. More...
|
|
virtual | ~CglRedSplitParam () |
| Destructor. More...
|
|
virtual void | setINFINIT (const double inf) |
| Set INFINIT. More...
|
|
double | getINFINIT () const |
| Get value of INFINIT. More...
|
|
virtual void | setEPS (const double eps) |
| Set EPS. More...
|
|
double | getEPS () const |
| Get value of EPS. More...
|
|
virtual void | setEPS_COEFF (const double eps_c) |
| Set EPS_COEFF. More...
|
|
double | getEPS_COEFF () const |
| Get value of EPS_COEFF. More...
|
|
virtual void | setMAX_SUPPORT (const int max_s) |
| Set MAX_SUPPORT. More...
|
|
int | getMAX_SUPPORT () const |
| Get value of MAX_SUPPORT. More...
|
|
| CglParam (const double inf=COIN_DBL_MAX, const double eps=1e-6, const double eps_c=1e-5, const int max_s=COIN_INT_MAX) |
| Default constructor. More...
|
|
| CglParam (const CglParam &) |
| Copy constructor. More...
|
|
CglParam & | operator= (const CglParam &rhs) |
| Assignment operator. More...
|
|
virtual | ~CglParam () |
| Destructor. More...
|
|
|
|
double | LUB |
| Value considered large for the absolute value of lower or upper bound on a variable. More...
|
|
double | EPS_ELIM |
| Epsilon for value of coefficients when eliminating slack variables. More...
|
|
double | EPS_RELAX_ABS |
| Value added to the right hand side of each generated cut to relax it. More...
|
|
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 constraint. More...
|
|
double | MAXDYN |
|
double | MAXDYN_LUB |
|
double | EPS_COEFF_LUB |
| Epsilon for value of coefficients for variables with absolute value of lower or upper bound larger than LUB. More...
|
|
double | MINVIOL |
| Minimum violation for the current basic solution in a generated cut. More...
|
|
int | USE_INTSLACKS |
| Use integer slacks to generate cuts if USE_INTSLACKS = 1. Default: 0. More...
|
|
int | USE_CG2 |
| Use second way to generate a mixed integer Gomory cut (see methods generate_cgcut()) and generate_cgcut_2()). More...
|
|
double | normIsZero |
| Norm of a vector is considered zero if smaller than normIsZero; Default: 1e-5. More...
|
|
double | minReduc |
| Minimum reduction in percent that must be achieved by a potential reduction step in order to be performed; Between 0 and 1, default: 0.05. More...
|
|
double | away_ |
| Use row only if pivot variable should be integer but is more than away_ from being integer. More...
|
|
double | maxTab_ |
| Maximum value for (mTab * mTab * CoinMax(mTab, nTab)). More...
|
|
double | INFINIT |
|
double | EPS |
|
double | EPS_COEFF |
|
int | MAX_SUPPORT |
| Maximum number of non zero coefficients in a generated cut; Default: COIN_INT_MAX. More...
|
|
Class collecting parameters the Reduced-and-split cut generator.
Parameters of the generator are listed below. Modifying the default values for parameters other than the last four might result in invalid cuts.
- LUB: Value considered large for the absolute value of a lower or upper bound on a variable. See method setLUB().
- MAXDYN: Maximum ratio between largest and smallest non zero coefficients in a cut. See method setMAXDYN().
- MAXDYN_LUB: Maximum ratio between largest and smallest non zero coefficients in a cut involving structural variables with lower or upper bound in absolute value larger than LUB. Should logically be larger or equal to MAXDYN. See method setMAXDYN_LUB().
- EPS_ELIM: Precision for deciding if a coefficient is zero when eliminating slack variables. See method setEPS_ELIM().
- EPS_COEFF_LUB: Precision for deciding if a coefficient of a generated cut is zero when the corresponding variable has a lower or upper bound larger than LUB in absolute value. See method setEPS_COEFF_LUB().
- MINVIOL: Minimum violation for the current basic solution in a generated cut. See method setMINVIOL().
- USE_INTSLACKS: Use integer slacks to generate cuts. (not implemented). See method setUSE_INTSLACKS().
- USE_CG2: Use alternative formula to generate a mixed integer Gomory cut (see methods CglRedSPlit::generate_cgcut() and CglRedSPlit::generate_cgcut_2()). See method setUSE_CG2().
- normIsZero: Norm of a vector is considered zero if smaller than this value. See method setNormIsZero().
- minReduc: Reduction is performed only if the norm of the vector is reduced by this fraction. See method setMinReduc().
- away: Look only at basic integer variables whose current value is at least this value from being integer. See method setAway().
- maxTab: Controls the number of rows selected for the generation. See method setMaxTab().
Definition at line 61 of file CglRedSplitParam.hpp.