![]() |
OR-Tools
8.0
|
This class stores parameter settings for LP and MIP solvers.
Some parameters are marked as advanced: do not change their values unless you know what you are doing!
For developers: how to add a new parameter:
TODO(user): store the parameter values in a protocol buffer instead. We need to figure out how to deal with the subtleties of the default values.
Definition at line 1358 of file linear_solver.h.
Public Types | |
| enum | DoubleParam { RELATIVE_MIP_GAP = 0, PRIMAL_TOLERANCE = 1, DUAL_TOLERANCE = 2 } |
| Enumeration of parameters that take continuous values. More... | |
| enum | IntegerParam { PRESOLVE = 1000, LP_ALGORITHM = 1001, INCREMENTALITY = 1002, SCALING = 1003 } |
| Enumeration of parameters that take integer or categorical values. More... | |
| enum | PresolveValues { PRESOLVE_OFF = 0, PRESOLVE_ON = 1 } |
| For each categorical parameter, enumeration of possible values. More... | |
| enum | LpAlgorithmValues { DUAL = 10, PRIMAL = 11, BARRIER = 12 } |
| LP algorithm to use. More... | |
| enum | IncrementalityValues { INCREMENTALITY_OFF = 0, INCREMENTALITY_ON = 1 } |
| Advanced usage: Incrementality options. More... | |
| enum | ScalingValues { SCALING_OFF = 0, SCALING_ON = 1 } |
| Advanced usage: Scaling options. More... | |
Public Member Functions | |
| MPSolverParameters () | |
| The constructor sets all parameters to their default value. More... | |
| void | SetDoubleParam (MPSolverParameters::DoubleParam param, double value) |
| Sets a double parameter to a specific value. More... | |
| void | SetIntegerParam (MPSolverParameters::IntegerParam param, int value) |
| Sets a integer parameter to a specific value. More... | |
| void | ResetDoubleParam (MPSolverParameters::DoubleParam param) |
| Sets a double parameter to its default value (default value defined in MPSolverParameters if it exists, otherwise the default value defined in the underlying solver). More... | |
| void | ResetIntegerParam (MPSolverParameters::IntegerParam param) |
| Sets an integer parameter to its default value (default value defined in MPSolverParameters if it exists, otherwise the default value defined in the underlying solver). More... | |
| void | Reset () |
| Sets all parameters to their default value. More... | |
| double | GetDoubleParam (MPSolverParameters::DoubleParam param) const |
| Returns the value of a double parameter. More... | |
| int | GetIntegerParam (MPSolverParameters::IntegerParam param) const |
| Returns the value of an integer parameter. More... | |
Static Public Attributes | |
| static const double | kDefaultDoubleParamValue = -1.0 |
| static const int | kDefaultIntegerParamValue = -1 |
| static const double | kUnknownDoubleParamValue = -2.0 |
| static const int | kUnknownIntegerParamValue = -2 |
| static const double | kDefaultRelativeMipGap = 1e-4 |
| static const double | kDefaultPrimalTolerance |
| static const double | kDefaultDualTolerance = 1e-7 |
| static const PresolveValues | kDefaultPresolve |
| static const IncrementalityValues | kDefaultIncrementality |
| enum DoubleParam |
Enumeration of parameters that take continuous values.
Definition at line 1361 of file linear_solver.h.
| enum IncrementalityValues |
Advanced usage: Incrementality options.
| Enumerator | |
|---|---|
| INCREMENTALITY_OFF | Start solve from scratch. |
| INCREMENTALITY_ON | Reuse results from previous solve as much as the underlying solver allows. |
Definition at line 1407 of file linear_solver.h.
| enum IntegerParam |
Enumeration of parameters that take integer or categorical values.
Definition at line 1377 of file linear_solver.h.
| enum LpAlgorithmValues |
LP algorithm to use.
| Enumerator | |
|---|---|
| DUAL | Dual simplex. |
| PRIMAL | Primal simplex. |
| BARRIER | Barrier algorithm. |
Definition at line 1397 of file linear_solver.h.
| enum PresolveValues |
For each categorical parameter, enumeration of possible values.
| Enumerator | |
|---|---|
| PRESOLVE_OFF | Presolve is off. |
| PRESOLVE_ON | Presolve is on. |
Definition at line 1389 of file linear_solver.h.
| enum ScalingValues |
Advanced usage: Scaling options.
| Enumerator | |
|---|---|
| SCALING_OFF | Scaling is off. |
| SCALING_ON | Scaling is on. |
Definition at line 1419 of file linear_solver.h.
The constructor sets all parameters to their default value.
Definition at line 1825 of file linear_solver.cc.
| double GetDoubleParam | ( | MPSolverParameters::DoubleParam | param | ) | const |
Returns the value of a double parameter.
Definition at line 1954 of file linear_solver.cc.
| int GetIntegerParam | ( | MPSolverParameters::IntegerParam | param | ) | const |
Returns the value of an integer parameter.
Definition at line 1973 of file linear_solver.cc.
| void Reset | ( | ) |
Sets all parameters to their default value.
Definition at line 1944 of file linear_solver.cc.
| void ResetDoubleParam | ( | MPSolverParameters::DoubleParam | param | ) |
Sets a double parameter to its default value (default value defined in MPSolverParameters if it exists, otherwise the default value defined in the underlying solver).
Definition at line 1898 of file linear_solver.cc.
| void ResetIntegerParam | ( | MPSolverParameters::IntegerParam | param | ) |
Sets an integer parameter to its default value (default value defined in MPSolverParameters if it exists, otherwise the default value defined in the underlying solver).
Definition at line 1919 of file linear_solver.cc.
| void SetDoubleParam | ( | MPSolverParameters::DoubleParam | param, |
| double | value | ||
| ) |
Sets a double parameter to a specific value.
Definition at line 1835 of file linear_solver.cc.
| void SetIntegerParam | ( | MPSolverParameters::IntegerParam | param, |
| int | value | ||
| ) |
Sets a integer parameter to a specific value.
Definition at line 1856 of file linear_solver.cc.
|
static |
Definition at line 1428 of file linear_solver.h.
|
static |
Definition at line 1442 of file linear_solver.h.
|
static |
Definition at line 1444 of file linear_solver.h.
|
static |
Definition at line 1429 of file linear_solver.h.
|
static |
Definition at line 1443 of file linear_solver.h.
|
static |
Definition at line 1441 of file linear_solver.h.
|
static |
Definition at line 1440 of file linear_solver.h.
|
static |
Definition at line 1432 of file linear_solver.h.
|
static |
Definition at line 1433 of file linear_solver.h.