xternal_miniisc.c
Go to the documentation of this file.
30/*--+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
36 * This code uses Benders decomposition to solve the Minimum IIS-Cover Problem (MinIISC). Here, one is given an
37 * infeasible linear system and wants to compute a subsystem of smallest size whose removal leaves a feasible
38 * subsystem. This corresponds to removing at least one constraint from each irreducible infeasible subsystem (IIS).
55 * We begin with a subset of IISs and solve the above set covering problem (using SCIP as a MIP solver). We then check
56 * whether the resulting vector \f$y^*\f$ corresponds to an IIS-cover. If this is the case, we are done. Otherwise, we
57 * check for an uncovered IIS and add its inequality to the set covering problem. We then repeat the process.
59 * Checking for an uncovered IIS can be done using a so-called alternative polyhedron. We explain the approach for the case
60 * in which the linear system is \f$Dx \leq d\f$ where \f$D\f$ is an \f$m \times n\f$ matrix. The alternative polyhedron
65 * Gleeson and Ryan [1990] proved that the vertices of this polyhedron are in 1-to-1 correspondence with the IISs of the
66 * original system. If we are then given the solution \f$y^* \in \{0,1\}^m\f$ from the set covering problem, we can
71 * A vertex of this polyhedron corresponds to an IIS is the system remaining from \f$D x \leq d\f$ when the inequalities
80 * - The master problem can be solved approximately (using a gap limit) or using a stall limit (the final MIP has to be
84 * The input to the code should be an infeasible linear program (the objective is ignored) in any format that SCIP can