Finding an Irreducible Infeasible Set (nlpse07)
/***************************************************************/
/* */
/* S A S S A M P L E L I B R A R Y */
/* */
/* NAME: nlpse07 */
/* TITLE: Finding an Irreducible Infeasible Set (nlpse07) */
/* PRODUCT: OR */
/* SYSTEM: ALL */
/* KEYS: OR */
/* PROCS: OPTMODEL */
/* DATA: */
/* */
/* SUPPORT: UPDATE: */
/* REF: */
/* MISC: Example 7 from the Nonlinear Programming Solver */
/* chapter of Mathematical Programming. */
/* */
/***************************************************************/
proc optmodel;
/* declare variables */
var x{1..3} >= 0;
/* upper bound on variable x[3] */
x[3].ub = 3;
/* objective function */
min f = x[1]^4 + x[2]^4 + x[3]^4;
/* constraints */
con c1: x[1] + x[2] >= 10;
con c2: x[1] + x[3] <= 4;
con c3: 4 <= x[2] + x[3] <= 5;
con c4: x[1]^2 + x[3] <= 5;
solve with nlp / iis = on;
print x.status;
print c1.status c2.status c3.status;
quit;
proc optmodel;
/* declare variables */
var x{1..3} >= 0;
/* upper bound on variable x[3] */
x[3].ub = 3;
/* objective function */
min f = x[1]^4 + x[2]^4 + x[3]^4;
/* constraints */
con c1: x[1] + x[2] >= 10;
con c2: x[1] + x[3] <= 4;
con c3: 4 <= x[2] + x[3] <= 5;
con c4: x[1]^2 + x[3] <= 5;
/* relax upper bound on constraint c3 */
c3.ub = constant('BIG');
solve with nlp / iis = on;
print x.status;
print c1.status c2.status c3.status;
quit;