Cgl  0.60.7
CglRedSplit2Param.hpp
Go to the documentation of this file.
1 // Name: CglRedSplit2Param.hpp
2 // Author: Giacomo Nannicini
3 // Singapore University of Technology and Design
4 // Singapore
5 // email: nannicini@sutd.edu.sg
6 // Date: 03/09/09
7 //-----------------------------------------------------------------------------
8 // Copyright (C) 2010, Giacomo Nannicini and others. All Rights Reserved.
9 
10 #ifndef CglRedSplit2Param_H
11 #define CglRedSplit2Param_H
12 
13 #include "CglParam.hpp"
14 #include <vector>
15 
18 
87 
88 class CglRedSplit2Param : public CglParam {
89 
90 public:
95  /* Pick rows that introduce the fewest nonzeroes on integer nonbasics */
96  RS1,
97  /* Pick rows that introduce the fewest nonzeroes on the set of working
98  continuous nonbasics */
99  RS2,
100  /* Pick rows that introduce the fewest nonzeroes on both integer and
101  working continuous nonbasics */
103  /* Same as RS0 but with greedy algorithm */
105  /* Same as RS1 but with greedy algorithm */
107  /* Same as RS2 but with greedy algorithm */
109  /* Pick rows with smallest angle in the space of integer and working
110  continuous nonbasics */
112  /* Pick rows with smallest angle in the space of working
113  continuous nonbasics */
115  /* Use all strategies */
117  /* Use best ones - that is, RS8 and RS7 */
119  };
120 
123  /* C-3P */
125  /* C-5P */
127  /* I-2P-2/3 */
129  /* I-2P-4/5 */
131  /* I-2P-1/2 */
133  /* I-3P */
135  /* I-4P */
137  /* Use all strategies up to this point */
139  /* Use best strategies (same effect as CS_ALL, because it turns out that
140  using all strategies is the best thing to do) */
142  /* Optimize over all continuous nonbasic columns; this does not give
143  good results, but we use it for testing Lift & Project + RedSplit */
145  /* Lift & Project specific strategy: only select variables which
146  are nonbasic in the tableau but are basic in the point to cut
147  off. This strategy cannot be used outside L&P. It is not very
148  effective even with L&P, but is left here for testing.*/
150  };
151 
155  /* No scaling */
157  /* Multiply by |xbar[i]| where xbar[i] is the value of the
158  corresponding component of the point that we want to cut off */
160  /* Multiply by min(factor,|xbar[i]|) */
162  /* Multiply by min(factor,log(|xbar[i]|)) */
164  /* Multiply all new nonbasics by factor */
166  /* Multiply only nonzero coefficients by factor */
168  };
169 
176  virtual void setAway(double value);
178  inline double getAway() const {return away_;}
179 
183  void setEPS_ELIM(double value);
185  double getEPS_ELIM() const {return EPS_ELIM;}
186 
188  virtual void setEPS_RELAX_ABS(double eps_ra);
190  inline double getEPS_RELAX_ABS() const {return EPS_RELAX_ABS;}
191 
193  virtual void setEPS_RELAX_REL(double eps_rr);
195  inline double getEPS_RELAX_REL() const {return EPS_RELAX_REL;}
196 
197  // Set the maximum ratio between largest and smallest non zero
198  // coefficients in a cut. Default: 1e6.
199  virtual void setMAXDYN(double value);
201  inline double getMAXDYN() const {return MAXDYN;}
202 
205  virtual void setMINVIOL(double value);
207  inline double getMINVIOL() const {return MINVIOL;}
208 
211  inline void setMAX_SUPP_ABS(int value) {setMAX_SUPPORT(value);}
212  inline int getMAX_SUPP_ABS() const {return MAX_SUPPORT;}
213 
216  inline void setMAX_SUPP_REL(double value);
217  inline double getMAX_SUPP_REL() const {return MAX_SUPP_REL;}
218 
220  virtual void setUSE_INTSLACKS(int value);
222  inline int getUSE_INTSLACKS() const {return USE_INTSLACKS;}
223 
226  virtual void setNormIsZero(double value);
228  inline double getNormIsZero() const {return normIsZero_;}
229 
231  virtual void setMinNormReduction(double value);
233  inline double getMinNormReduction() const {return minNormReduction_;}
234 
236  virtual void setMaxSumMultipliers(int value);
238  inline int getMaxSumMultipliers() const {return maxSumMultipliers_;}
239 
241  virtual void setNormalization(double value);
243  inline double getNormalization() const {return normalization_;}
244 
248  virtual void addNumRowsReduction(int value);
250  inline std::vector<int> getNumRowsReduction() const {return numRowsReduction_;}
252  inline void resetNumRowsReduction() {numRowsReduction_.clear();}
253 
257  inline std::vector<ColumnSelectionStrategy> getColumnSelectionStrategy() const {return columnSelectionStrategy_;}
260 
263  virtual void addRowSelectionStrategy(RowSelectionStrategy value);
265  inline std::vector<RowSelectionStrategy> getRowSelectionStrategy() const {return rowSelectionStrategy_;};
268 
273  virtual void addNumRowsReductionLAP(int value);
275  inline std::vector<int> getNumRowsReductionLAP() const {return numRowsReductionLAP_;}
278 
282  inline std::vector<ColumnSelectionStrategy> getColumnSelectionStrategyLAP() const {return columnSelectionStrategyLAP_;}
285 
290  inline std::vector<RowSelectionStrategy> getRowSelectionStrategyLAP() const {return rowSelectionStrategyLAP_;};
293 
299 
301  virtual void setColumnScalingBoundLAP(double value);
303  inline double getColumnScalingBoundLAP() const {return columnScalingBoundLAP_;};
304 
306  virtual void setTimeLimit(double value);
308  inline double getTimeLimit() const {return timeLimit_;}
309 
311  virtual void setMaxNumCuts(int value);
313  inline int getMaxNumCuts() const {return maxNumCuts_;}
314 
316  virtual void setMaxNumComputedCuts(int value);
318  inline int getMaxNumComputedCuts() const {return maxNumComputedCuts_;}
319 
322  virtual void setMaxNonzeroesTab(int value);
324  inline int getMaxNonzeroesTab() const {return maxNonzeroesTab_;}
325 
330  virtual void setSkipGomory(int value);
332  inline int getSkipGomory() const {return skipGomory_;}
333 
335 
338  CglRedSplit2Param(bool use_default_strategies = true,
342  double eps = 1e-12,
343  double eps_coeff = 1e-11,
344  double eps_elim = 0.0,
345  double eps_relax_abs = 1e-11,
346  double eps_relax_rel = 1e-13,
347  double max_dyn = 1e6,
348  double min_viol = 1e-3,
349  int max_supp_abs = 1000,
350  double max_supp_rel = 0.1,
351  int use_int_slacks = 0,
352  double norm_zero = 1e-5,
353  double minNormReduction = 0.1,
354  int maxSumMultipliers = 10,
355  double normalization = 0.0001,
356  double away = 0.005,
357  double timeLimit = 60,
358  int maxNumCuts = 10000,
359  int maxNumComputedCuts = 10000,
360  int maxNonzeroesTab = 1000,
361  double columnScalingBoundLAP = 5.0,
362  int skipGomory = 1);
363 
368  CglRedSplit2Param(const CglParam &source,
369  bool use_default_strategies = true,
370  double eps_elim = 0.0,
371  double eps_relax_abs = 1e-11,
372  double eps_relax_rel = 1e-13,
373  double max_dyn = 1e6,
374  double min_viol = 1e-3,
375  double max_supp_rel = 0.1,
376  int use_int_slacks = 0,
377  double norm_zero = 1e-5,
378  double minNormReduction = 0.1,
379  int maxSumMultipliers = 10,
380  double normalization = 0.0001,
381  double away = 0.005,
382  double timeLimit = 60,
383  int maxNumCuts = 10000,
384  int maxNumComputedCuts = 10000,
385  int maxNonzeroesTab = 1000,
386  double columnScalingBoundLAP = 5.0,
387  int skipGomory = 1);
388 
390  CglRedSplit2Param(const CglRedSplit2Param &source);
391 
393  virtual CglRedSplit2Param* clone() const;
394 
396  virtual CglRedSplit2Param& operator=(const CglRedSplit2Param &rhs);
397 
399  virtual ~CglRedSplit2Param();
401 
402 protected:
403 
406 
409  double EPS_ELIM;
410 
414 
419 
420  // Maximum ratio between largest and smallest non zero
421  // coefficients in a cut. Default: 1e6.
422  double MAXDYN;
423 
426  double MINVIOL;
427 
429  double MAX_SUPP_REL;
430 
433 
436  double normIsZero_;
437 
440 
443 
447 
450  double away_;
451 
453  std::vector<int> numRowsReduction_;
454 
456  std::vector<ColumnSelectionStrategy> columnSelectionStrategy_;
457 
459  std::vector<RowSelectionStrategy> rowSelectionStrategy_;
460 
462  std::vector<int> numRowsReductionLAP_;
463 
465  std::vector<ColumnSelectionStrategy> columnSelectionStrategyLAP_;
466 
468  std::vector<RowSelectionStrategy> rowSelectionStrategyLAP_;
469 
473 
476 
478  double timeLimit_;
479 
482 
485 
488 
491 
493 };
494 
495 #endif
CglRedSplit2Param::RowSelectionStrategy
RowSelectionStrategy
Enumerations for parameters.
Definition: CglRedSplit2Param.hpp:94
CglRedSplit2Param::setColumnScalingStrategyLAP
virtual void setColumnScalingStrategyLAP(ColumnScalingStrategy value)
Set the value for columnScalingStrategyLAP, which sets the way nonbasic columns that are basic in the...
CglRedSplit2Param::maxSumMultipliers_
int maxSumMultipliers_
Maximum sum of the vector of row multipliers to generate a cut.
Definition: CglRedSplit2Param.hpp:442
CglRedSplit2Param::CS14
@ CS14
Definition: CglRedSplit2Param.hpp:132
CglRedSplit2Param::getMaxNonzeroesTab
int getMaxNonzeroesTab() const
get the value
Definition: CglRedSplit2Param.hpp:324
CglRedSplit2Param::CS21
@ CS21
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::addNumRowsReduction
virtual void addNumRowsReduction(int value)
Set the value of numRowsReduction, max number of rows that are used for each row reduction step.
CglRedSplit2Param::columnSelectionStrategyLAP_
std::vector< ColumnSelectionStrategy > columnSelectionStrategyLAP_
Column selection method for Lift & Project.
Definition: CglRedSplit2Param.hpp:465
CglRedSplit2Param::getRowSelectionStrategyLAP
std::vector< RowSelectionStrategy > getRowSelectionStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:290
CglRedSplit2Param::setMAX_SUPP_REL
void setMAX_SUPP_REL(double value)
Maximum relative support of the cutting planes.
CglRedSplit2Param::RS7
@ RS7
Definition: CglRedSplit2Param.hpp:111
CglParam
Class collecting parameters for all cut generators.
Definition: CglParam.hpp:22
CglRedSplit2Param::resetNumRowsReductionLAP
void resetNumRowsReductionLAP()
reset
Definition: CglRedSplit2Param.hpp:277
CglRedSplit2Param::CS6
@ CS6
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::CS_ALL
@ CS_ALL
Definition: CglRedSplit2Param.hpp:138
CglRedSplit2Param::numRowsReduction_
std::vector< int > numRowsReduction_
Maximum number of rows to use for the reduction of a given row.
Definition: CglRedSplit2Param.hpp:453
CglRedSplit2Param::away_
double away_
Use row only if pivot variable should be integer but is more than away_ from being integer.
Definition: CglRedSplit2Param.hpp:450
CglRedSplit2Param::CglRedSplit2Param
CglRedSplit2Param(bool use_default_strategies=true, double eps=1e-12, double eps_coeff=1e-11, double eps_elim=0.0, double eps_relax_abs=1e-11, double eps_relax_rel=1e-13, double max_dyn=1e6, double min_viol=1e-3, int max_supp_abs=1000, double max_supp_rel=0.1, int use_int_slacks=0, double norm_zero=1e-5, double minNormReduction=0.1, int maxSumMultipliers=10, double normalization=0.0001, double away=0.005, double timeLimit=60, int maxNumCuts=10000, int maxNumComputedCuts=10000, int maxNonzeroesTab=1000, double columnScalingBoundLAP=5.0, int skipGomory=1)
Default constructor.
CglRedSplit2Param::MAXDYN
double MAXDYN
Definition: CglRedSplit2Param.hpp:422
CglRedSplit2Param::~CglRedSplit2Param
virtual ~CglRedSplit2Param()
Destructor.
CglRedSplit2Param::CS15
@ CS15
Definition: CglRedSplit2Param.hpp:134
CglRedSplit2Param::MAX_SUPP_REL
double MAX_SUPP_REL
Maximum support - relative part of the formula.
Definition: CglRedSplit2Param.hpp:429
CglRedSplit2Param::resetColumnSelectionStrategy
void resetColumnSelectionStrategy()
reset
Definition: CglRedSplit2Param.hpp:259
CglRedSplit2Param::getEPS_ELIM
double getEPS_ELIM() const
Get the value of EPS_ELIM.
Definition: CglRedSplit2Param.hpp:185
CglRedSplit2Param::setEPS_RELAX_REL
virtual void setEPS_RELAX_REL(double eps_rr)
Set EPS_RELAX_REL.
CglRedSplit2Param::setMINVIOL
virtual void setMINVIOL(double value)
Set the value of MINVIOL, the minimum violation for the current basic solution in a generated cut.
CglRedSplit2Param::setMaxSumMultipliers
virtual void setMaxSumMultipliers(int value)
Set the value of maxSumMultipliers; Default: 10.
CglRedSplit2Param::getMAX_SUPP_ABS
int getMAX_SUPP_ABS() const
Definition: CglRedSplit2Param.hpp:212
CglRedSplit2Param::addNumRowsReductionLAP
virtual void addNumRowsReductionLAP(int value)
Set the value of numRowsReductionLAP, max number of rows that are used for each row reduction step du...
CglRedSplit2Param::CS_ALLCONT
@ CS_ALLCONT
Definition: CglRedSplit2Param.hpp:144
CglRedSplit2Param::USE_INTSLACKS
int USE_INTSLACKS
Use integer slacks to generate cuts if USE_INTSLACKS = 1. Default: 0.
Definition: CglRedSplit2Param.hpp:432
CglRedSplit2Param::getMaxSumMultipliers
int getMaxSumMultipliers() const
Get the value of maxSumMultipliers.
Definition: CglRedSplit2Param.hpp:238
CglRedSplit2Param::setMinNormReduction
virtual void setMinNormReduction(double value)
Set the value of minNormReduction; Default: 0.1.
CglRedSplit2Param::EPS_RELAX_REL
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 ...
Definition: CglRedSplit2Param.hpp:418
CglRedSplit2Param::SC_LOG_BOUNDED
@ SC_LOG_BOUNDED
Definition: CglRedSplit2Param.hpp:163
CglRedSplit2Param::CS5
@ CS5
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::CS17
@ CS17
Definition: CglRedSplit2Param.hpp:134
CglRedSplit2Param::addColumnSelectionStrategy
virtual void addColumnSelectionStrategy(ColumnSelectionStrategy value)
Add the value of columnSelectionStrategy.
CglRedSplit2Param::EPS_ELIM
double EPS_ELIM
Epsilon for value of coefficients when eliminating slack variables.
Definition: CglRedSplit2Param.hpp:409
CglRedSplit2Param::operator=
virtual CglRedSplit2Param & operator=(const CglRedSplit2Param &rhs)
Assignment operator.
CglRedSplit2Param::skipGomory_
int skipGomory_
Skip simple Gomory cuts.
Definition: CglRedSplit2Param.hpp:490
CglRedSplit2Param::columnSelectionStrategy_
std::vector< ColumnSelectionStrategy > columnSelectionStrategy_
Column selection method.
Definition: CglRedSplit2Param.hpp:456
CglRedSplit2Param::rowSelectionStrategy_
std::vector< RowSelectionStrategy > rowSelectionStrategy_
Row selection method.
Definition: CglRedSplit2Param.hpp:459
CglRedSplit2Param::SC_UNIFORM
@ SC_UNIFORM
Definition: CglRedSplit2Param.hpp:165
CglRedSplit2Param::CS8
@ CS8
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::addRowSelectionStrategy
virtual void addRowSelectionStrategy(RowSelectionStrategy value)
Set the value for rowSelectionStrategy, which changes the way we choose the rows for the reduction st...
CglRedSplit2Param::getMaxNumComputedCuts
int getMaxNumComputedCuts() const
get the value
Definition: CglRedSplit2Param.hpp:318
CglRedSplit2Param::setTimeLimit
virtual void setTimeLimit(double value)
Set the value of the time limit for cut generation (in seconds)
CglRedSplit2Param::CS16
@ CS16
Definition: CglRedSplit2Param.hpp:134
CglRedSplit2Param::SC_LINEAR
@ SC_LINEAR
Definition: CglRedSplit2Param.hpp:159
CglRedSplit2Param::ColumnScalingStrategy
ColumnScalingStrategy
Scaling strategies for new nonbasic columns for Lift & Project; "factor" is the value of columnScalin...
Definition: CglRedSplit2Param.hpp:154
CglRedSplit2Param::getSkipGomory
int getSkipGomory() const
get the value
Definition: CglRedSplit2Param.hpp:332
CglRedSplit2Param::setEPS_RELAX_ABS
virtual void setEPS_RELAX_ABS(double eps_ra)
Set EPS_RELAX_ABS.
CglRedSplit2Param::setUSE_INTSLACKS
virtual void setUSE_INTSLACKS(int value)
Set the value of USE_INTSLACKS.
CglRedSplit2Param::getNormIsZero
double getNormIsZero() const
Get the value of normIsZero.
Definition: CglRedSplit2Param.hpp:228
CglRedSplit2Param::resetRowSelectionStrategy
void resetRowSelectionStrategy()
reset
Definition: CglRedSplit2Param.hpp:267
CglRedSplit2Param::getNumRowsReductionLAP
std::vector< int > getNumRowsReductionLAP() const
get the value
Definition: CglRedSplit2Param.hpp:275
CglRedSplit2Param::maxNumCuts_
int maxNumCuts_
Maximum number of returned cuts.
Definition: CglRedSplit2Param.hpp:481
CglRedSplit2Param::CS11
@ CS11
Definition: CglRedSplit2Param.hpp:130
CglRedSplit2Param::rowSelectionStrategyLAP_
std::vector< RowSelectionStrategy > rowSelectionStrategyLAP_
Row selection method for Lift & Project.
Definition: CglRedSplit2Param.hpp:468
CglRedSplit2Param::setMAX_SUPP_ABS
void setMAX_SUPP_ABS(int value)
Maximum absolute support of the cutting planes.
Definition: CglRedSplit2Param.hpp:211
CglRedSplit2Param::getMAX_SUPP_REL
double getMAX_SUPP_REL() const
Definition: CglRedSplit2Param.hpp:217
CglRedSplit2Param::RS_BEST
@ RS_BEST
Definition: CglRedSplit2Param.hpp:118
CglRedSplit2Param::RS1
@ RS1
Definition: CglRedSplit2Param.hpp:96
CglParam::MAX_SUPPORT
int MAX_SUPPORT
Maximum number of non zero coefficients in a generated cut; Default: COIN_INT_MAX.
Definition: CglParam.hpp:86
CglRedSplit2Param::setMaxNumCuts
virtual void setMaxNumCuts(int value)
Set the value for the maximum number of cuts that can be returned.
CglRedSplit2Param::getEPS_RELAX_ABS
double getEPS_RELAX_ABS() const
Get value of EPS_RELAX_ABS.
Definition: CglRedSplit2Param.hpp:190
CglRedSplit2Param::getEPS_RELAX_REL
double getEPS_RELAX_REL() const
Get value of EPS_RELAX_REL.
Definition: CglRedSplit2Param.hpp:195
CglRedSplit2Param::getAway
double getAway() const
Get value of away.
Definition: CglRedSplit2Param.hpp:178
CglRedSplit2Param::getTimeLimit
double getTimeLimit() const
get the value
Definition: CglRedSplit2Param.hpp:308
CglRedSplit2Param::CS7
@ CS7
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::setAway
virtual void setAway(double value)
Set away, the minimum distance from being integer used for selecting rows for cut generation; all row...
CglRedSplit2Param
Class collecting parameters the Reduced-and-split cut generator.
Definition: CglRedSplit2Param.hpp:88
CglParam.hpp
CglRedSplit2Param::setEPS_ELIM
void setEPS_ELIM(double value)
Set the value of EPS_ELIM, epsilon for values of coefficients when eliminating slack variables; Defau...
CglRedSplit2Param::setMAXDYN
virtual void setMAXDYN(double value)
CglRedSplit2Param::ColumnSelectionStrategy
ColumnSelectionStrategy
Column selection strategies; again, look them up in the paper.
Definition: CglRedSplit2Param.hpp:122
CglRedSplit2Param::RS2
@ RS2
Definition: CglRedSplit2Param.hpp:99
CglRedSplit2Param::CS1
@ CS1
Definition: CglRedSplit2Param.hpp:124
CglRedSplit2Param::getUSE_INTSLACKS
int getUSE_INTSLACKS() const
Get the value of USE_INTSLACKS.
Definition: CglRedSplit2Param.hpp:222
CglRedSplit2Param::SC_LINEAR_BOUNDED
@ SC_LINEAR_BOUNDED
Definition: CglRedSplit2Param.hpp:161
CglRedSplit2Param::RS6
@ RS6
Definition: CglRedSplit2Param.hpp:108
CglRedSplit2Param::maxNumComputedCuts_
int maxNumComputedCuts_
Maximum number of computed cuts.
Definition: CglRedSplit2Param.hpp:484
CglRedSplit2Param::getColumnScalingStrategyLAP
ColumnScalingStrategy getColumnScalingStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:298
CglRedSplit2Param::getMAXDYN
double getMAXDYN() const
Get the value of MAXDYN.
Definition: CglRedSplit2Param.hpp:201
CglRedSplit2Param::resetRowSelectionStrategyLAP
void resetRowSelectionStrategyLAP()
reset
Definition: CglRedSplit2Param.hpp:292
CglRedSplit2Param::getMaxNumCuts
int getMaxNumCuts() const
get the value
Definition: CglRedSplit2Param.hpp:313
CglRedSplit2Param::getColumnSelectionStrategyLAP
std::vector< ColumnSelectionStrategy > getColumnSelectionStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:282
CglRedSplit2Param::CS4
@ CS4
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::setSkipGomory
virtual void setSkipGomory(int value)
Set the value of skipGomory: should we skip simple Gomory cuts, i.e.
CglRedSplit2Param::CS_BEST
@ CS_BEST
Definition: CglRedSplit2Param.hpp:141
CglRedSplit2Param::columnScalingStrategyLAP_
ColumnScalingStrategy columnScalingStrategyLAP_
Column scaling strategy for the nonbasics columns that were basic in the point that we want to cut of...
Definition: CglRedSplit2Param.hpp:472
CglParam::setMAX_SUPPORT
virtual void setMAX_SUPPORT(const int max_s)
Set MAX_SUPPORT.
CglRedSplit2Param::SC_NONE
@ SC_NONE
Definition: CglRedSplit2Param.hpp:156
CglRedSplit2Param::addRowSelectionStrategyLAP
virtual void addRowSelectionStrategyLAP(RowSelectionStrategy value)
Set the value for rowSelectionStrategyLAP, which changes the way we choose the rows for the reduction...
CglRedSplit2Param::RS3
@ RS3
Definition: CglRedSplit2Param.hpp:102
CglRedSplit2Param::CS18
@ CS18
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::EPS_RELAX_ABS
double EPS_RELAX_ABS
Value added to the right hand side of each generated cut to relax it.
Definition: CglRedSplit2Param.hpp:413
CglRedSplit2Param::normIsZero_
double normIsZero_
Norm of a vector is considered zero if smaller than normIsZero; Default: 1e-5.
Definition: CglRedSplit2Param.hpp:436
CglRedSplit2Param::columnScalingBoundLAP_
double columnScalingBoundLAP_
Minimum value for column scaling (Lift & Project only)
Definition: CglRedSplit2Param.hpp:475
CglRedSplit2Param::timeLimit_
double timeLimit_
Time limit.
Definition: CglRedSplit2Param.hpp:478
CglRedSplit2Param::getColumnSelectionStrategy
std::vector< ColumnSelectionStrategy > getColumnSelectionStrategy() const
get the value
Definition: CglRedSplit2Param.hpp:257
CglRedSplit2Param::setMaxNumComputedCuts
virtual void setMaxNumComputedCuts(int value)
Set the value for the maximum number of cuts that can be computed.
CglRedSplit2Param::setMaxNonzeroesTab
virtual void setMaxNonzeroesTab(int value)
Set the value for the maximum number of nonzeroes in a row of the simplex tableau for the row to be c...
CglRedSplit2Param::setColumnScalingBoundLAP
virtual void setColumnScalingBoundLAP(double value)
Set the value for the bound in the column scaling factor.
CglRedSplit2Param::setNormalization
virtual void setNormalization(double value)
Set the value of normalization; Default: 0.0001.
CglRedSplit2Param::CS9
@ CS9
Definition: CglRedSplit2Param.hpp:128
CglRedSplit2Param::getMinNormReduction
double getMinNormReduction() const
Get the value of normIsZero.
Definition: CglRedSplit2Param.hpp:233
CglRedSplit2Param::SC_UNIFORM_NZ
@ SC_UNIFORM_NZ
Definition: CglRedSplit2Param.hpp:167
CglRedSplit2Param::RS5
@ RS5
Definition: CglRedSplit2Param.hpp:106
CglRedSplit2Param::CS13
@ CS13
Definition: CglRedSplit2Param.hpp:132
CglRedSplit2Param::CS3
@ CS3
Definition: CglRedSplit2Param.hpp:124
CglRedSplit2Param::CS10
@ CS10
Definition: CglRedSplit2Param.hpp:128
CglRedSplit2Param::getNormalization
double getNormalization() const
Get the value of normalization.
Definition: CglRedSplit2Param.hpp:243
CglRedSplit2Param::normalization_
double normalization_
Normalization factor for the norm of lambda in the quadratic minimization problem that is solved duri...
Definition: CglRedSplit2Param.hpp:446
CglRedSplit2Param::RS4
@ RS4
Definition: CglRedSplit2Param.hpp:104
CglRedSplit2Param::setNormIsZero
virtual void setNormIsZero(double value)
Set the value of normIsZero, the threshold for considering a norm to be 0; Default: 1e-5.
CglRedSplit2Param::resetColumnSelectionStrategyLAP
void resetColumnSelectionStrategyLAP()
reset
Definition: CglRedSplit2Param.hpp:284
CglRedSplit2Param::MINVIOL
double MINVIOL
Minimum violation for the current basic solution in a generated cut.
Definition: CglRedSplit2Param.hpp:426
CglRedSplit2Param::maxNonzeroesTab_
int maxNonzeroesTab_
Maximum number of nonzeroes in tableau row for reduction.
Definition: CglRedSplit2Param.hpp:487
CglRedSplit2Param::getColumnScalingBoundLAP
double getColumnScalingBoundLAP() const
get the value
Definition: CglRedSplit2Param.hpp:303
CglRedSplit2Param::RS8
@ RS8
Definition: CglRedSplit2Param.hpp:114
CglRedSplit2Param::resetNumRowsReduction
void resetNumRowsReduction()
reset
Definition: CglRedSplit2Param.hpp:252
CglRedSplit2Param::getRowSelectionStrategy
std::vector< RowSelectionStrategy > getRowSelectionStrategy() const
get the value
Definition: CglRedSplit2Param.hpp:265
CglRedSplit2Param::clone
virtual CglRedSplit2Param * clone() const
Clone.
CglRedSplit2Param::CS19
@ CS19
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::getMINVIOL
double getMINVIOL() const
Get the value of MINVIOL.
Definition: CglRedSplit2Param.hpp:207
CglRedSplit2Param::getNumRowsReduction
std::vector< int > getNumRowsReduction() const
get the value
Definition: CglRedSplit2Param.hpp:250
CglRedSplit2Param::CS2
@ CS2
Definition: CglRedSplit2Param.hpp:124
CglRedSplit2Param::minNormReduction_
double minNormReduction_
Minimum reduction to accept a new row.
Definition: CglRedSplit2Param.hpp:439
CglRedSplit2Param::addColumnSelectionStrategyLAP
virtual void addColumnSelectionStrategyLAP(ColumnSelectionStrategy value)
Add the value of columnSelectionStrategyLAP.
CglRedSplit2Param::CS20
@ CS20
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::CS_LAP_NONBASICS
@ CS_LAP_NONBASICS
Definition: CglRedSplit2Param.hpp:149
CglRedSplit2Param::CS12
@ CS12
Definition: CglRedSplit2Param.hpp:130
CglRedSplit2Param::numRowsReductionLAP_
std::vector< int > numRowsReductionLAP_
Maximum number of rows to use for the reduction during Lift & Project.
Definition: CglRedSplit2Param.hpp:462
CglRedSplit2Param::RS_ALL
@ RS_ALL
Definition: CglRedSplit2Param.hpp:116