How a conflict differs from an IIS

Distinguishes a conflict from an irreducibly inconsistent set (IIS).

In some ways a conflict resembles an irreducibly inconsistent set (IIS). Detection of an IIS among the constraints of a model is a standard methodology in the published literature. Both the CPLEX conflict refiner and the IIS methodology attempt to identify an infeasible subproblem of a provably infeasible model.

However, a conflict is more general than an IIS. The IIS methodology is applicable only to continuous LP models, (including those obtained from a continuous QP by removing the quadratic objective terms). In contrast, the conflict refiner is capable of doing its work on all continuous and discrete problem types that CPLEX supports, except for those with explicit second order cone constraints.

Also, you can specify one or more groups of constraints for a conflict; a group will either be present together in the conflict, or else will not be part of it at all.

You can also assign a numeric preference to a constraint or to groups of constraints. In the case of an infeasible model that has more than one possible conflict, the preferences you assign will guide the tool toward detecting the conflict you want. Preferences allow you to specify aspects of the model that may otherwise be difficult to encode.

While the conflict refiner usually will deliver a smaller set of constraints to consider than using the IIS methodology will, the methods are different enough that the reverse can sometimes be true. In general, the conflict refiner can be thought of as usually doing everything the IIS methodology can, and often more. In fact, you might think of the conflict refiner as an extension and generalization of the IIS methodology.