$ontext We model a QVI example LunSSVI1 taken from the following paper: QVILIB: A library of quasi-variational inequality test problems, Francisco Facchinei, Christian Kanzow, and Simone Sagratella, 2012 Our framework finds a solution. Contributor: Youngdae Kim (06.19.2017) $offtext set agent, plant; alias(agent,aa); alias(plant,nn); parameter c, A(agent,plant), b(agent,plant), u0, u(agent,plant), d, P, l; $if not exist qvi_lunssvi1.gdx $error "qvi_lunssvi1.gdx does not exist" $gdxin qvi_lunssvi1 $loadidx c A b u0 u d P l $gdxin positive variables y0, y(agent,plant); y0.up = u0; y.up(agent,plant) = u(agent,plant); equations F0, F(agent,plant), demand; $macro energy (sum((aa,nn), y(aa,nn))) F0.. P =N= 0; F(agent,plant).. c*sqr(energy) - P + 2*c*energy*sum(nn, y(agent,nn)) + A(agent,plant)*y(agent,plant) + b(agent,plant) =N= 0; demand.. y0 + sum((agent,plant), y(agent,plant)) - d =E= 0; model lunssvi1 / F0, F, demand /; file empinfo / '%emp.info%' /; putclose empinfo 'qvi F0 y0 F y demand'; solve lunssvi1 using emp; display y0.l, y.l;