param n := 9;

param l {i in 1..n};
param u {i in 1..n};

var x {i in 1..n} >= l[i], <= u[i], := l[i] + ( u[i] - l[i] ) * Uniform01();

minimize obj:
	-9*x[1] - 15*x[2] + 6*x[3] + 16*x[4] + 10*(x[5]+x[6]);
subject to R1:
	x[7]*x[8] + 2*x[5] - 2.5*x[1] <= 0;
subject to R2:
	x[7]*x[9] + 2*x[6] - 1.5*x[2] <= 0;
subject to R3:
	3*x[3] + x[4] - x[7]*(x[8]+x[9]) = 0;
subject to R4:
	x[8] + x[9] - x[3] - x[4] = 0;
subject to R5:
	x[1] - x[8] - x[5] = 0;
subject to R6:
	x[2] - x[9] - x[6] = 0;

data;

param l := 
      1 0.0
      2 0.0
      3 0.0
      4 0.0
      5 0.0
      6 0.0
      7 0.0
      8 0.0
      9 0.0;

param u := 
      1 600.0
      2 200.0
      3 500.0
      4 500.0
      5 500.0
      6 500.0
      7 500.0
      8 500.0
      9 500.0;
