Check the following, integer problem:
NMaximize[{3*0.5*(80 - P)*Subscript[Q, 1]*z1 +
2*0.5*(125 - P)*Subscript[Q, 2]*z2 +
1*0.5*(180 - 2*P)*Subscript[Q, 3]*z3,
Subscript[Q, 1] == (80 - P) y1,
Subscript[Q, 2] == (100 - 0.8 P) y2,
Subscript[Q, 3] == (90 - 0.5 P) y3, 20 <= P <= 90, 1 >= y1 >= 0,
1 >= y2 >= 0, 1 >= y3 >= 0, 3 >= y1 + y2 + y3 >= 2, 1 >= z1 >= 0,
1 >= z2 >= 0, 1 >= z3 >= 0, z1 + z2 + z3 == 1,
3 <= y1 + y2 + y3 + z1 + z2 + z3 <= 4, y1 + y2 + y3 + z2 <= 3,
y1 + y2 + y3 + z3 <= 3, Subscript[Q, 1] >= 0, Subscript[Q, 2] >= 10,
Subscript[Q, 3] >= 10, {y1, y2, y3, z1, z2, z3} \[Element]
Integers}, {P, Subscript[Q, 2], Subscript[Q, 3], Subscript[Q, 1],
y1, y2, y3, z1, z2, z3}]
Mathematica fails to find the optimal solution, which is
P->20, Q2->84, Q3->80, Y2->1, Y3->1, Z2->1
LINGO finds the global optimal solution automatically. I have tried with all methods provided in tutorial, but it did not help, unless I increased the lower bound to about Q2 > 60
and Q3 >60
.
Any help?