set Points; param x{Points}; param y{Points}; var a1; var a0; var z{Points}; minimize obj: sum{i in Points} z[i]; s.t. c1{i in Points}: z[i] >= y[i]-(a1*x[i]+a0); s.t. c2{i in Points}: z[i] >= -y[i]+(a1*x[i]+a0); data; set Points := 1 2 3 4 5 6 7 8 9 10; param: x y := 1 1 5 2 2 4 3 3 7 4 4 6 5 5 5 6 6 8 7 7 10 8 8 7 9 9 9 10 10 11 ;