# relative MIP gap tolerance

Sets a relative tolerance on the gap between the best integer objective and the objective of the best node remaining.

## Purpose

Relative MIP gap tolerance

API | Parameter Name | Name prior to V12.6.0 |
---|---|---|

C | CPXPARAM_MIP_Tolerances_MIPGap | CPX_PARAM_EPGAP |

C++ | IloCplex::Param::MIP::Tolerances::MIPGap | EpGap (double) |

Java | IloCplex.Param.MIP.Tolerances.MIPGap | EpGap (double) |

.NET | Cplex.Param.MIP.Tolerances.MIPGap | EpGap (double) |

OPL | epgap | |

Python | parameters.mip.tolerances.mipgap | mip.tolerances.mipgap |

MATLAB | Cplex.Param.mip.tolerances.mipgap | mip.tolerances.mipgap |

Interactive | mip tolerances mipgap | mip tolerances mipgap |

Identifier | 2009 | 2009 |

## Description

When the value

`|bestbound-bestinteger|/(1e-10+|bestinteger|) `

falls below the value of this parameter, the mixed integer optimization is stopped.

For example, to instruct CPLEX to stop as soon as it has found a feasible integer solution proved to be within five percent of optimal, set the relative MIP gap tolerance to 0.05.

Given the above value (or any other suitable metric) used to assess the relative gap, a few situations require careful assessment of whether this metric is the most suitable one for controlling when to terminate the MIP optimization. First, for a MIP where the best node and best integer value have opposing signs, the gap may not move monotonically. Once the signs of these two values are the same, monotonicity of the gap will occur. With opposing signs, consider adding a constant term to the objective so that the best bound value starts at zero and always has the same sign as the best integer. However, keep in mind that, more generally, adding large constant terms to the objective can alter the point in the mixed integer optimization at which the relative MIP gap is satisfied. In such cases, the absolute MIP gap or other termination criteria may be more useful.

Values

Any number
from 0.0 to 1.0; **default**: 1e-04.