Description
Example to illustrate disjunctions with multiple terms and logic propositions. Aldo Vecchietti, LogMIP User's Manual, 2007, http://www.logmip.ceride.gov.ar/files/pdfs/logmip_manual.pdf Keywords: extended mathematical programming, disjunctive programming, logical constraints
Small Model of Type : EMP
Category : GAMS Model library
Main file : logmip2.gms
$title LogMIP User's Manual Example 2 (LOGMIP2,SEQ=335)
$onText
Example to illustrate disjunctions with multiple terms and logic
propositions.
Aldo Vecchietti, LogMIP User's Manual, 2007,
http://www.logmip.ceride.gov.ar/files/pdfs/logmip_manual.pdf
Keywords: extended mathematical programming, disjunctive programming, logical
constraints
$offText
Positive Variable c, x1, x2;
Variable z;
Binary Variable y1, y2, y3;
Equation obj, e1, e2, e3, e4, e5, e6;
obj.. z =e= c + 2*x1 + x2;
e1.. -x1 + x2 + 2 =l= 0;
e2.. c =e= 5;
e3.. -x2 + 2 =l= 0;
e4.. c =e= 7;
e5.. x1 - x2 =l= 1;
e6.. x1 =e= 0;
x1.up = 5;
x2.up = 5;
c.up = 7;
Logic Equation l1, l2, l3;
l1.. y1 -> not y3;
l2.. y2 -> not y3;
l3.. y3 -> not y2;
Model m / all /;
$onEcho > "%lm.info%"
default indic
disjunction y1 e1 e2 elseif y2 e3 e4
disjunction y3 e5 else e6
* optional, if not set LOGMIP will find the modeltype suitable
modeltype mip
$offEcho
option emp = logmip, mip = cplex;
solve m using emp minimizing z;