# mittelman.mod OOR2-AN-20-7 # AMPL coding: H. Mittelman var Y{i in 1..20} >=0, <=1, binary; minimize obj: 10*Y[5]*Y[7]*Y[12]*Y[13]*Y[18]*Y[19]*Y[20] + 7*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] + 1*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] + 12*Y[3]*Y[4]*Y[11]*Y[15] + 8*Y[6]*Y[7]*Y[11]*Y[16] + 3*Y[6]*Y[7]*Y[12]*Y[18]*Y[20] + 1*Y[12]*Y[13]*Y[18]*Y[20] + 5*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] + 3*Y[1]*Y[2]*Y[15]*Y[16]; s.t. ineq1: 3*Y[5]*Y[7]*Y[12]*Y[13]*Y[18]*Y[19]*Y[20] - 12*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] - 8*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] + 1*Y[3]*Y[4]*Y[11]*Y[15] - 7*Y[1]*Y[2]*Y[15]*Y[16] + 2*Y[17]*Y[18]*Y[19]*Y[20] <= -2; s.t. ineq2: 1*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] - 10*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] - 5*Y[6]*Y[7]*Y[11]*Y[16] + 1*Y[6]*Y[7]*Y[12]*Y[18]*Y[20] + 7*Y[12]*Y[13]*Y[18]*Y[20] + 1*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] <= -1; s.t. ineq3: 5*Y[5]*Y[7]*Y[12]*Y[13]*Y[18]*Y[19]*Y[20] - 3*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] - 1*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] - 2*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] + 1*Y[17]*Y[18]*Y[19]*Y[20] <= -1; s.t. ineq4: -5*Y[5]*Y[7]*Y[12]*Y[13]*Y[18]*Y[19]*Y[20] + 3*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] + 1*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] + 2*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] - 1*Y[17]*Y[18]*Y[19]*Y[20] <= 1; s.t. ineq5: -4*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] - 2*Y[3]*Y[4]*Y[11]*Y[15] - 5*Y[6]*Y[7]*Y[12]*Y[18]*Y[20] + 1*Y[12]*Y[13]*Y[18]*Y[20] - 9*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] - 2*Y[1]*Y[2]*Y[15]*Y[16] <= -3; s.t. ineq6: 9*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] - 12*Y[3]*Y[4]*Y[11]*Y[15] - 7*Y[6]*Y[7]*Y[11]*Y[16] + 6*Y[6]*Y[7]*Y[12]*Y[18]*Y[20] + 2*Y[5]*Y[13]*Y[18]*Y[19]*Y[20] - 15*Y[1]*Y[2]*Y[15]*Y[16] + 3*Y[17]*Y[18]*Y[19]*Y[20] <= -7; s.t. ineq7: -8*Y[5]*Y[7]*Y[12]*Y[13]*Y[18]*Y[19]*Y[20] + 5*Y[1]*Y[2]*Y[3]*Y[4]*Y[11]*Y[15] + 2*Y[3]*Y[4]*Y[6]*Y[7]*Y[11] - 7*Y[3]*Y[4]*Y[11]*Y[15] - 1*Y[6]*Y[7]*Y[11]*Y[16] - 5*Y[12]*Y[13]*Y[18]*Y[20] - 10*Y[1]*Y[2]*Y[15]*Y[16] <= -1; data; let{i in 1..20} Y[i] := 0.5; ## # ... Bob Daniel's solution (f* = 13) ## fix Y[1] := 0; ## fix Y[2] := 0; ## fix Y[3] := 1; ## fix Y[4] := 1; ## fix Y[5] := 0; ## fix Y[6] := 1; ## fix Y[7] := 1; ## fix Y[8] := 0; ## fix Y[9] := 0; ## fix Y[10] := 0; ## fix Y[11] := 1; ## fix Y[12] := 0; ## fix Y[13] := 0; ## fix Y[14] := 0; ## fix Y[15] := 1; ## fix Y[16] := 0; ## fix Y[17] := 0; ## fix Y[18] := 0; ## fix Y[19] := 0; ## fix Y[20] := 0;