You can change the MIP Tolerance options for CPLEX by choosing CPLEX parameters from the Options menu and then pressing the MIP Tolerance tab. This will display the dialog box shown below:
Figure 4.49: The MIP Tolerance Tab in CPLEX Options Dialog Box
Option Name | MPL Name | Solver Param | ParamNr | Type | Default | Min | Max |
---|---|---|---|---|---|---|---|
Upper Cutoff | MipUpperCutoff | CutUp | 2007 | real | 1e75 | -MAXREAL | MAXREAL |
Lower Cutoff | MipLowerCutoff | CutLo | 2006 | real | -1e75 | -MAXREAL | MAXREAL |
Objective Differences | MipObjectDifference | ObjDif | 2019 | real | 0 | -MAXREAL | MAXREAL |
Relative Object Diff | MipRelObjectDifference | RelObjDif | 2022 | real | 0 | 0 | 1 |
Relative Gap | MipRelativeGap | EpGap | 2009 | real | 1e-4 | 0 | 1 |
Absolute Gap | MipAbsoluteGap | EpAGap | 2008 | real | 1e-6 | 0 | 1e20 |
Integrality Tolerance | MipIntegerTol | EpInt | 2010 | real | 1e-5 | 1e-9 | 1 |
Backtrack Factor | MipBacktrackTol | BtTol | 2002 | real | 0.01 | 0 | 1 |
Used to cut off any nodes that have an objective value above the upper cutoff value, when the problem is a minimization problem. On a continued mixed integer optimization, the smaller of this value and the updated cutoff found during optimization will be used during the next mixed integer optimization. A too-restrictive value for the upper cutoff parameter may result in no integer solutions being found.
Used to cut off any nodes that have an objective value below the lower cutoff value, when the problem is a maximization problem. On a continued mixed integer optimization, the larger of this value and the updated cutoff found during optimization will be used during the next mixed integer optimization. A too-restrictive value for the lower cutoff option may result in no integer solutions being found.
The objective difference value is used to update the cutoff each time a mixed integer solution is found. This absolute value will be subtracted from (added to) the newly found integer objective value when minimizing (maximizing). This forces the mixed integer optimization to ignore integer solutions that are not at least this amount better than the one found so far. The objective difference value can be adjusted to improve problem solving efficiency by limiting the number of nodes; however, setting this option at a value other than zero (the default) can cause some integer solutions, including the true integer optimum, to be missed. Negative values for this option will result in some integer solutions that are worse than or the same as those previously generated, but will not necessarily result in the generation of all possible integer solutions.
The relative objective difference value is used to update the cutoff each time a mixed integer solution is found. The value is multiplied by the absolute value of the integer objective and subtracted from (added to) the newly found integer objective when minimizing (maximizing). This forces the mixed integer optimization to ignore integer solutions that are not at least this amount better than the one found so far. The relative objective difference option can be adjusted to improve problem solving efficiency by limiting the number of nodes; however, setting this parameter at a value other than zero (the default) can cause some integer solutions, including the true integer optimum, to be missed. If both relative objective difference and objective difference are nonzero, the value of the objective difference will be used.
The relative tolerance on the gap between the best integer objective and the objective of the best node remaining.
The absolute tolerance on the gap between the best integer objective and the objective of the best node remaining.
The integrality tolerance specifies the amount by which an integer variable can be different than an integer and still be considered feasible.
The Backtracking factor controls how often backtracking is done during the branching process. At each node, CPLEX compares the objective function value or estimated integer objective value to these values at parent nodes; the backtracking parameter dictates how much relative degradation is tolerated before backtracking. Allowable values are any positive number. Low values tend to increase the amount of backtracking, which makes the search process more of a pure best-bound search. Higher values, greater than 1.0, tend to decrease backtracking, making the search more of a pure depth-first search. While the default value is good for many models, increased backtracking (lower values) often pays off on models that have expensive sub-problems.