param N := 20;

var x{1..N};

minimize f:
sum {i in 1..5} ((x[i]+10*x[i+5])^2+5*(x[i+10]-x[i+15])^2+(x[i+5]-2*x[i+10])^4+10*(x[i]-x[i+15])^4);

data;
var x:=
1	3
2	3
3	3
4	3
5	3
6	-1
7	-1
8	-1
9	-1
10	-1
11	0
12	0
13	0
14	0
15	0
16	1	
17	1
18	1
19	1
20	1;

solve;

display x;
