int GRBcomputeIIS ( GRBmodel *model )

Compute an Irreducible Inconsistent Subsystem (IIS). An IIS is a subset of the constraints and variable bounds of the original model. If all constraints in the model except those in the IIS are removed, the model is still infeasible. However, further removing any one member of the IIS produces a feasible result.

This routine populates the IISConstr, IISGenConstr, IISQConstr, IISSOS, IISLB, and IISUB attributes. You can also obtain information about the results of the IIS computation by writing a .ilp format file (see GRBwrite). This file contains only the IIS from the original model.

Note that this routine can be used to compute IISs for both continuous and MIP models.

Return value:

A non-zero return value indicates that a problem occurred while computing the IIS. Refer to the Error Code table for a list of possible return values. Details on the error can be obtained by calling GRBgeterrormsg.


model: The infeasible model. This routine will return an error if the input model is feasible.

Important note:

This routine only reports whether the computation ran into an error. Query the IISConstr, IISGenConstr, IISQConstr, IISSOS, IISLB, or IISUB attributes to determine the result of the computation (see the Attributes section for more information on querying attributes).

Example usage:

  error = GRBcomputeIIS(model);