Cgl 0.59.7

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

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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:
94 enum RowSelectionStrategy{
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 */
102 RS3,
103 /* Same as RS0 but with greedy algorithm */
104 RS4,
105 /* Same as RS1 but with greedy algorithm */
106 RS5,
107 /* Same as RS2 but with greedy algorithm */
108 RS6,
109 /* Pick rows with smallest angle in the space of integer and working
110 continuous nonbasics */
111 RS7,
112 /* Pick rows with smallest angle in the space of working
113 continuous nonbasics */
114 RS8,
115 /* Use all strategies */
116 RS_ALL,
117 /* Use best ones - that is, RS8 and RS7 */
118 RS_BEST
119 };
120
122 enum ColumnSelectionStrategy{
123 /* C-3P */
124 CS1, CS2, CS3,
125 /* C-5P */
126 CS4, CS5, CS6, CS7, CS8,
127 /* I-2P-2/3 */
128 CS9, CS10,
129 /* I-2P-4/5 */
130 CS11, CS12,
131 /* I-2P-1/2 */
132 CS13, CS14,
133 /* I-3P */
134 CS15, CS16, CS17,
135 /* I-4P */
136 CS18, CS19, CS20, CS21,
137 /* Use all strategies up to this point */
138 CS_ALL,
139 /* Use best strategies (same effect as CS_ALL, because it turns out that
140 using all strategies is the best thing to do) */
141 CS_BEST,
142 /* Optimize over all continuous nonbasic columns; this does not give
143 good results, but we use it for testing Lift & Project + RedSplit */
144 CS_ALLCONT,
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.*/
149 CS_LAP_NONBASICS
150 };
151
154 enum ColumnScalingStrategy{
155 /* No scaling */
156 SC_NONE,
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 */
159 SC_LINEAR,
160 /* Multiply by min(factor,|xbar[i]|) */
161 SC_LINEAR_BOUNDED,
162 /* Multiply by min(factor,log(|xbar[i]|)) */
163 SC_LOG_BOUNDED,
164 /* Multiply all new nonbasics by factor */
165 SC_UNIFORM,
166 /* Multiply only nonzero coefficients by factor */
167 SC_UNIFORM_NZ
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
255 virtual void addColumnSelectionStrategy(ColumnSelectionStrategy value);
257 inline std::vector<ColumnSelectionStrategy> getColumnSelectionStrategy() const {return columnSelectionStrategy_;}
259 inline void resetColumnSelectionStrategy(){columnSelectionStrategy_.clear();}
260
263 virtual void addRowSelectionStrategy(RowSelectionStrategy value);
265 inline std::vector<RowSelectionStrategy> getRowSelectionStrategy() const {return rowSelectionStrategy_;};
267 inline void resetRowSelectionStrategy() {rowSelectionStrategy_.clear();}
268
273 virtual void addNumRowsReductionLAP(int value);
275 inline std::vector<int> getNumRowsReductionLAP() const {return numRowsReductionLAP_;}
277 inline void resetNumRowsReductionLAP() {numRowsReductionLAP_.clear();}
278
280 virtual void addColumnSelectionStrategyLAP(ColumnSelectionStrategy value);
282 inline std::vector<ColumnSelectionStrategy> getColumnSelectionStrategyLAP() const {return columnSelectionStrategyLAP_;}
284 inline void resetColumnSelectionStrategyLAP(){columnSelectionStrategyLAP_.clear();}
285
288 virtual void addRowSelectionStrategyLAP(RowSelectionStrategy value);
290 inline std::vector<RowSelectionStrategy> getRowSelectionStrategyLAP() const {return rowSelectionStrategyLAP_;};
292 inline void resetRowSelectionStrategyLAP() {rowSelectionStrategyLAP_.clear();}
293
296 virtual void setColumnScalingStrategyLAP(ColumnScalingStrategy value);
298 inline ColumnScalingStrategy getColumnScalingStrategyLAP() const {return columnScalingStrategyLAP_; };
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
413 double EPS_RELAX_ABS;
414
418 double EPS_RELAX_REL;
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
432 int USE_INTSLACKS;
433
436 double normIsZero_;
437
439 double minNormReduction_;
440
442 int maxSumMultipliers_;
443
446 double normalization_;
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
472 ColumnScalingStrategy columnScalingStrategyLAP_;
473
475 double columnScalingBoundLAP_;
476
478 double timeLimit_;
479
481 int maxNumCuts_;
482
484 int maxNumComputedCuts_;
485
487 int maxNonzeroesTab_;
488
490 int skipGomory_;
491
493 };
494
495 #endif
CglRedSplit2Param::setMAX_SUPP_REL
void setMAX_SUPP_REL(double value)
Maximum relative support of the cutting planes.
CglRedSplit2Param::RS_ALL
Definition: CglRedSplit2Param.hpp:116
CglRedSplit2Param::MINVIOL
double MINVIOL
Minimum violation for the current basic solution in a generated cut.
Definition: CglRedSplit2Param.hpp:426
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::RS7
Definition: CglRedSplit2Param.hpp:111
CglRedSplit2Param::getColumnSelectionStrategy
std::vector< ColumnSelectionStrategy > getColumnSelectionStrategy() const
get the value
Definition: CglRedSplit2Param.hpp:257
CglRedSplit2Param::MAXDYN
double MAXDYN
Definition: CglRedSplit2Param.hpp:422
CglRedSplit2Param::CS19
Definition: CglRedSplit2Param.hpp:136
CglParam.hpp
CglRedSplit2Param::CS16
Definition: CglRedSplit2Param.hpp:134
CglRedSplit2Param::CS21
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::CS6
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::setEPS_RELAX_REL
virtual void setEPS_RELAX_REL(double eps_rr)
Set EPS_RELAX_REL.
CglRedSplit2Param::MAX_SUPP_REL
double MAX_SUPP_REL
Maximum support - relative part of the formula.
Definition: CglRedSplit2Param.hpp:429
CglRedSplit2Param::SC_LOG_BOUNDED
Definition: CglRedSplit2Param.hpp:163
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::CS20
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::operator=
virtual CglRedSplit2Param & operator=(const CglRedSplit2Param &rhs)
Assignment operator.
CglRedSplit2Param::skipGomory_
int skipGomory_
Skip simple Gomory cuts.
Definition: CglRedSplit2Param.hpp:490
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::CS2
Definition: CglRedSplit2Param.hpp:124
CglRedSplit2Param::getEPS_ELIM
double getEPS_ELIM() const
Get the value of EPS_ELIM.
Definition: CglRedSplit2Param.hpp:185
CglRedSplit2Param::getMaxNonzeroesTab
int getMaxNonzeroesTab() const
get the value
Definition: CglRedSplit2Param.hpp:324
CglRedSplit2Param::CS_ALLCONT
Definition: CglRedSplit2Param.hpp:144
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::setTimeLimit
virtual void setTimeLimit(double value)
Set the value of the time limit for cut generation (in seconds)
CglRedSplit2Param::RS8
Definition: CglRedSplit2Param.hpp:114
CglRedSplit2Param::getUSE_INTSLACKS
int getUSE_INTSLACKS() const
Get the value of USE_INTSLACKS.
Definition: CglRedSplit2Param.hpp:222
CglRedSplit2Param::setColumnScalingStrategyLAP
virtual void setColumnScalingStrategyLAP(ColumnScalingStrategy value)
Set the value for columnScalingStrategyLAP, which sets the way nonbasic columns that are basic in the...
CglRedSplit2Param::getMAXDYN
double getMAXDYN() const
Get the value of MAXDYN.
Definition: CglRedSplit2Param.hpp:201
CglRedSplit2Param::RS_BEST
Definition: CglRedSplit2Param.hpp:118
CglRedSplit2Param
Class collecting parameters the Reduced-and-split cut generator.
Definition: CglRedSplit2Param.hpp:88
CglRedSplit2Param::SC_LINEAR
Definition: CglRedSplit2Param.hpp:159
CglRedSplit2Param::columnSelectionStrategy_
std::vector< ColumnSelectionStrategy > columnSelectionStrategy_
Column selection method.
Definition: CglRedSplit2Param.hpp:456
CglRedSplit2Param::columnSelectionStrategyLAP_
std::vector< ColumnSelectionStrategy > columnSelectionStrategyLAP_
Column selection method for Lift &amp; Project.
Definition: CglRedSplit2Param.hpp:465
CglRedSplit2Param::rowSelectionStrategy_
std::vector< RowSelectionStrategy > rowSelectionStrategy_
Row selection method.
Definition: CglRedSplit2Param.hpp:459
CglRedSplit2Param::CS_ALL
Definition: CglRedSplit2Param.hpp:138
CglRedSplit2Param::CS5
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::USE_INTSLACKS
int USE_INTSLACKS
Use integer slacks to generate cuts if USE_INTSLACKS = 1. Default: 0.
Definition: CglRedSplit2Param.hpp:432
CglRedSplit2Param::resetRowSelectionStrategy
void resetRowSelectionStrategy()
reset
Definition: CglRedSplit2Param.hpp:267
CglRedSplit2Param::resetNumRowsReductionLAP
void resetNumRowsReductionLAP()
reset
Definition: CglRedSplit2Param.hpp:277
CglRedSplit2Param::CS_LAP_NONBASICS
Definition: CglRedSplit2Param.hpp:149
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::CS8
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::~CglRedSplit2Param
virtual ~CglRedSplit2Param()
Destructor.
CglRedSplit2Param::ColumnScalingStrategy
ColumnScalingStrategy
Scaling strategies for new nonbasic columns for Lift &amp; Project; &quot;factor&quot; is the value of columnScalin...
Definition: CglRedSplit2Param.hpp:154
CglRedSplit2Param::CS15
Definition: CglRedSplit2Param.hpp:134
CglRedSplit2Param::getNumRowsReductionLAP
std::vector< int > getNumRowsReductionLAP() const
get the value
Definition: CglRedSplit2Param.hpp:275
CglRedSplit2Param::CS14
Definition: CglRedSplit2Param.hpp:132
CglRedSplit2Param::setMaxSumMultipliers
virtual void setMaxSumMultipliers(int value)
Set the value of maxSumMultipliers; Default: 10.
CglRedSplit2Param::getRowSelectionStrategy
std::vector< RowSelectionStrategy > getRowSelectionStrategy() const
get the value
Definition: CglRedSplit2Param.hpp:265
CglRedSplit2Param::getNumRowsReduction
std::vector< int > getNumRowsReduction() const
get the value
Definition: CglRedSplit2Param.hpp:250
CglRedSplit2Param::getColumnSelectionStrategyLAP
std::vector< ColumnSelectionStrategy > getColumnSelectionStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:282
CglRedSplit2Param::getNormIsZero
double getNormIsZero() const
Get the value of normIsZero.
Definition: CglRedSplit2Param.hpp:228
CglRedSplit2Param::getMAX_SUPP_REL
double getMAX_SUPP_REL() const
Definition: CglRedSplit2Param.hpp:217
CglRedSplit2Param::setMinNormReduction
virtual void setMinNormReduction(double value)
Set the value of minNormReduction; Default: 0.1.
CglRedSplit2Param::maxNumCuts_
int maxNumCuts_
Maximum number of returned cuts.
Definition: CglRedSplit2Param.hpp:481
CglRedSplit2Param::getMaxSumMultipliers
int getMaxSumMultipliers() const
Get the value of maxSumMultipliers.
Definition: CglRedSplit2Param.hpp:238
CglRedSplit2Param::getMINVIOL
double getMINVIOL() const
Get the value of MINVIOL.
Definition: CglRedSplit2Param.hpp:207
CglRedSplit2Param::rowSelectionStrategyLAP_
std::vector< RowSelectionStrategy > rowSelectionStrategyLAP_
Row selection method for Lift &amp; Project.
Definition: CglRedSplit2Param.hpp:468
CglRedSplit2Param::RS2
Definition: CglRedSplit2Param.hpp:99
CglRedSplit2Param::setMAX_SUPP_ABS
void setMAX_SUPP_ABS(int value)
Maximum absolute support of the cutting planes.
Definition: CglRedSplit2Param.hpp:211
CglRedSplit2Param::addColumnSelectionStrategy
virtual void addColumnSelectionStrategy(ColumnSelectionStrategy value)
Add the value of columnSelectionStrategy.
CglParam::MAX_SUPPORT
int MAX_SUPPORT
Maximum number of non zero coefficients in a generated cut; Default: COIN_INT_MAX.
Definition: CglParam.hpp:88
CglRedSplit2Param::EPS_ELIM
double EPS_ELIM
Epsilon for value of coefficients when eliminating slack variables.
Definition: CglRedSplit2Param.hpp:409
CglRedSplit2Param::setMaxNumCuts
virtual void setMaxNumCuts(int value)
Set the value for the maximum number of cuts that can be returned.
CglRedSplit2Param::SC_LINEAR_BOUNDED
Definition: CglRedSplit2Param.hpp:161
CglParam::setMAX_SUPPORT
virtual void setMAX_SUPPORT(const int max_s)
Set MAX_SUPPORT.
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::setMAXDYN
virtual void setMAXDYN(double value)
CglRedSplit2Param::ColumnSelectionStrategy
ColumnSelectionStrategy
Column selection strategies; again, look them up in the paper.
Definition: CglRedSplit2Param.hpp:122
CglRedSplit2Param::getEPS_RELAX_ABS
double getEPS_RELAX_ABS() const
Get value of EPS_RELAX_ABS.
Definition: CglRedSplit2Param.hpp:190
CglRedSplit2Param::setSkipGomory
virtual void setSkipGomory(int value)
Set the value of skipGomory: should we skip simple Gomory cuts, i.e.
CglRedSplit2Param::CS17
Definition: CglRedSplit2Param.hpp:134
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.
CglParam
Class collecting parameters for all cut generators.
Definition: CglParam.hpp:22
CglRedSplit2Param::getMAX_SUPP_ABS
int getMAX_SUPP_ABS() const
Definition: CglRedSplit2Param.hpp:212
CglRedSplit2Param::getAway
double getAway() const
Get value of away.
Definition: CglRedSplit2Param.hpp:178
CglRedSplit2Param::addRowSelectionStrategyLAP
virtual void addRowSelectionStrategyLAP(RowSelectionStrategy value)
Set the value for rowSelectionStrategyLAP, which changes the way we choose the rows for the reduction...
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::getTimeLimit
double getTimeLimit() const
get the value
Definition: CglRedSplit2Param.hpp:308
CglRedSplit2Param::CS11
Definition: CglRedSplit2Param.hpp:130
CglRedSplit2Param::RS1
Definition: CglRedSplit2Param.hpp:96
CglRedSplit2Param::resetRowSelectionStrategyLAP
void resetRowSelectionStrategyLAP()
reset
Definition: CglRedSplit2Param.hpp:292
CglRedSplit2Param::RS5
Definition: CglRedSplit2Param.hpp:106
CglRedSplit2Param::getMaxNumComputedCuts
int getMaxNumComputedCuts() const
get the value
Definition: CglRedSplit2Param.hpp:318
CglRedSplit2Param::CS10
Definition: CglRedSplit2Param.hpp:128
CglRedSplit2Param::setColumnScalingBoundLAP
virtual void setColumnScalingBoundLAP(double value)
Set the value for the bound in the column scaling factor.
CglRedSplit2Param::CS7
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::SC_NONE
Definition: CglRedSplit2Param.hpp:156
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::getColumnScalingStrategyLAP
ColumnScalingStrategy getColumnScalingStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:298
CglRedSplit2Param::CS9
Definition: CglRedSplit2Param.hpp:128
CglRedSplit2Param::getMaxNumCuts
int getMaxNumCuts() const
get the value
Definition: CglRedSplit2Param.hpp:313
CglRedSplit2Param::CS1
Definition: CglRedSplit2Param.hpp:124
CglRedSplit2Param::getColumnScalingBoundLAP
double getColumnScalingBoundLAP() const
get the value
Definition: CglRedSplit2Param.hpp:303
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
CglRedSplit2Param::RS4
Definition: CglRedSplit2Param.hpp:104
CglRedSplit2Param::clone
virtual CglRedSplit2Param * clone() const
Clone.
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::setNormIsZero
virtual void setNormIsZero(double value)
Set the value of normIsZero, the threshold for considering a norm to be 0; Default: 1e-5...
CglRedSplit2Param::CS13
Definition: CglRedSplit2Param.hpp:132
CglRedSplit2Param::maxNumComputedCuts_
int maxNumComputedCuts_
Maximum number of computed cuts.
Definition: CglRedSplit2Param.hpp:484
CglRedSplit2Param::setNormalization
virtual void setNormalization(double value)
Set the value of normalization; Default: 0.0001.
CglRedSplit2Param::maxNonzeroesTab_
int maxNonzeroesTab_
Maximum number of nonzeroes in tableau row for reduction.
Definition: CglRedSplit2Param.hpp:487
CglRedSplit2Param::CS4
Definition: CglRedSplit2Param.hpp:126
CglRedSplit2Param::normIsZero_
double normIsZero_
Norm of a vector is considered zero if smaller than normIsZero; Default: 1e-5.
Definition: CglRedSplit2Param.hpp:436
CglRedSplit2Param::SC_UNIFORM_NZ
Definition: CglRedSplit2Param.hpp:167
CglRedSplit2Param::getEPS_RELAX_REL
double getEPS_RELAX_REL() const
Get value of EPS_RELAX_REL.
Definition: CglRedSplit2Param.hpp:195
CglRedSplit2Param::minNormReduction_
double minNormReduction_
Minimum reduction to accept a new row.
Definition: CglRedSplit2Param.hpp:439
CglRedSplit2Param::CS_BEST
Definition: CglRedSplit2Param.hpp:141
CglRedSplit2Param::RS3
Definition: CglRedSplit2Param.hpp:102
CglRedSplit2Param::getNormalization
double getNormalization() const
Get the value of normalization.
Definition: CglRedSplit2Param.hpp:243
CglRedSplit2Param::RS6
Definition: CglRedSplit2Param.hpp:108
CglRedSplit2Param::numRowsReductionLAP_
std::vector< int > numRowsReductionLAP_
Maximum number of rows to use for the reduction during Lift &amp; Project.
Definition: CglRedSplit2Param.hpp:462
CglRedSplit2Param::getMinNormReduction
double getMinNormReduction() const
Get the value of normIsZero.
Definition: CglRedSplit2Param.hpp:233
CglRedSplit2Param::CS18
Definition: CglRedSplit2Param.hpp:136
CglRedSplit2Param::getRowSelectionStrategyLAP
std::vector< RowSelectionStrategy > getRowSelectionStrategyLAP() const
get the value
Definition: CglRedSplit2Param.hpp:290
CglRedSplit2Param::columnScalingBoundLAP_
double columnScalingBoundLAP_
Minimum value for column scaling (Lift &amp; Project only)
Definition: CglRedSplit2Param.hpp:475
CglRedSplit2Param::addColumnSelectionStrategyLAP
virtual void addColumnSelectionStrategyLAP(ColumnSelectionStrategy value)
Add the value of columnSelectionStrategyLAP.
CglRedSplit2Param::timeLimit_
double timeLimit_
Time limit.
Definition: CglRedSplit2Param.hpp:478
CglRedSplit2Param::resetColumnSelectionStrategyLAP
void resetColumnSelectionStrategyLAP()
reset
Definition: CglRedSplit2Param.hpp:284
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::setMaxNumComputedCuts
virtual void setMaxNumComputedCuts(int value)
Set the value for the maximum number of cuts that can be computed.
CglRedSplit2Param::numRowsReduction_
std::vector< int > numRowsReduction_
Maximum number of rows to use for the reduction of a given row.
Definition: CglRedSplit2Param.hpp:453
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::CS12
Definition: CglRedSplit2Param.hpp:130
CglRedSplit2Param::resetNumRowsReduction
void resetNumRowsReduction()
reset
Definition: CglRedSplit2Param.hpp:252
CglRedSplit2Param::RowSelectionStrategy
RowSelectionStrategy
Enumerations for parameters.
Definition: CglRedSplit2Param.hpp:94
CglRedSplit2Param::getSkipGomory
int getSkipGomory() const
get the value
Definition: CglRedSplit2Param.hpp:332
CglRedSplit2Param::resetColumnSelectionStrategy
void resetColumnSelectionStrategy()
reset
Definition: CglRedSplit2Param.hpp:259
CglRedSplit2Param::maxSumMultipliers_
int maxSumMultipliers_
Maximum sum of the vector of row multipliers to generate a cut.
Definition: CglRedSplit2Param.hpp:442
CglRedSplit2Param::CS3
Definition: CglRedSplit2Param.hpp:124
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::SC_UNIFORM
Definition: CglRedSplit2Param.hpp:165