sets: Dmus/1..14/; Inputs/1..3/: v; Outputs/1..4/: u; DxI(Dmus,Inputs): X; DxO(Dmus,Outputs): Y; endsets data: X = 1177000 187000 794000 1137000 2157000 5473000 970000 1565000 7128000 620000 454000 2094000 2055000 1974000 7903000 492000 536000 2171000 850000 874000 6030000 326000 385000 3115000 1248146 1728000 4462000 1222000 1576000 11192000 785660 1917000 1835000 492000 455000 1631000 1403000 1379000 4322000 511000 420000 2736000; Y = 2000 26000 42000 122000 110000 241000 519000 626000 98000 176000 213000 881000 24000 41000 117000 274000 37000 253000 330000 744000 28000 52000 224000 333000 170000 107000 108000 644000 240000 48000 360000 321000 184000 180000 579000 532000 33000 142000 456000 710000 62000 286000 133000 129000 36000 53000 247000 270000 67000 175000 331000 729000 71000 55000 237000 304000; enddata k=1; max = @sum(Outputs(r): Y(k,r)*u(r)); @for(Dmus(j): @sum(Outputs(r): Y(j,r)*u(r)) - @sum(Inputs(i): X(j,i)*v(i)) <= 0; ); @sum(Inputs(i): X(k,i)*v(i)) = 1; @for(Inputs(i): v(i) >= 0.0; ); @for(Outputs(r): u(r) >= 0.0; );