param m := 3; # number of inputs param n := 5; # number of outputs param d := 100; # number of DMU's param a {1..d, 1..n}, default Uniform01(); param b {1..d, 1..m}, default Uniform01(); var y {1..m} >= 0; var x {1..n} >= 0; param k0 within {1..d}; maximize ydist: sum{j in 1..n} a[k0,j]*x[j] / sum{i in 1..m} b[k0,i]*y[i]; subject to one_sided {k in 1..d}: sum {j in 1..n} a[k,j]*x[j] <= sum {i in 1..m} b[k,i]*y[i]; #option solver '/u/rvdb/lp/loqo/bkup/3.04/loqo'; #option solver loqo; #option solver minos; #option loqo_options "timing=1 pred_corr=0 mufactor=0 verbose=2 iterlim=50"; #option minos_options "timing=1"; for {k in 1..d} { let k0 := k; let {j in 1..n} x[j] := 100; let {i in 1..m} y[i] := 100; let {kk in 1..d} one_sided[kk] := 100; solve; }