bard721.gms : Practical Bilevel Optimization Example 7.2.1

Description

Example from Chapter 7, example 7.2.1, page 275

John F. Bard, Practical Bilevel Optimization: Algorithms and Applications,
Kluwer Academic Publishers, Dordrecht, 1998.

Contributor: Jan-H. Jagla, January 2009


Small Model of Type : BP


Category : GAMS EMP library


Main file : bard721.gms

$title Practical Bilevel Optimization Example 7.2.1 (BARD721,SEQ=5)

$ontext

Example from Chapter 7, example 7.2.1, page 275

John F. Bard, Practical Bilevel Optimization: Algorithms and Applications,
Kluwer Academic Publishers, Dordrecht, 1998.

Contributor: Jan-H. Jagla, January 2009

$offtext

positive variables x1,x2,y; variables objout,objin;
equations defout,defin;

defout.. objout =e= 1/2*sqr(x1-4/5) + 1/2*sqr(x2-1/5) + 1/2*sqr(y-1);
defin..  objin  =e= 1/2*sqr(y) - y - x1*y + 2*x2*y;

x1.up = 1; x2.up=1; y.up = 1;

model bard / all /;

$echo bilevel x1 x2 min objin y defin > "%emp.info%"

solve bard us emp min objout;

*Note: The subsolver used by EMP might not find the global solution
parameter solution(*,*);
solution('x1','book') = 0.8;  solution('x1','model') = x1.l;
solution('x2','book') = 0.2;  solution('x2','model') = x2.l;
solution('y' ,'book') = 1  ;  solution('y' ,'model') =  y.l;
display solution;