# Minimize doesn't give result / takes very long

I am stuck with a minimization problem:

FullSimplify[
Assuming[a1 >= 0 && a2 >= 0 && w1 >= 0 & w2 >= 0 && b1 > 0 &&
b2 > 0 && 0 <= α1 < 1 && 0 <= α2 < 1 && P1 > 0 &&
P2 > 0 ,
Minimize[w1 + w2 + (
b1 (2 b1 + 4 P1 + 2 a2 α1 - 6 P α1 -
a2 α1^2 + 2 P1 α1^2))/(-2 + α1)^2 + (
b2 (2 b2 + 4 P2 + 2 a1 α2 - 6 P α2 -
a1 α2^2 + 2 P2 α2^2))/(-2 + α2)^2, {w1 +
b1*a1 - (a1 - ((1 - α1) *
P1 + α1 *((a1 + a2)/2)))^2 >= 0,
w2 + b2*a2 - (a2 - ((1 - α2) *
P2 + α2 *((a2 + a1)/2)))^2 >= 0},  {w1, w2, a1,
a2, b1, b2}, Reals]]]


Is there any possibility to yield a solution in this case? Even after running approximately an hour, there is no output yet.

• Try NMinimize, maybe. This problem seems complicated enough that an analytic solution is either impossible or unlikely to be useful. In addition, it is probably necessary to put your constraints as equations inside NMinimize, rather than in an enclosing Assuming construct. Jan 6, 2017 at 22:22

## 1 Answer

I would do this numerically, since it very unlikely you will get an analytic expression. Of course, you will need to choose values for the undefined parameters. Since

0 <= α1 < 1
0 <= α2 < 1
P1 > 0
P2 > 0


I have chosen some values:

With[{P1 = 1, P2 = 2, α1 = 0.5, α2 = 0.5, P = 1},
NMinimize[{
w1 + w2 + (b1 (2 b1 + 4 P1 + 2 a2 α1 - 6 P α1 - a2 α1^2 + 2 P1 α1^2))/(-2 + α1)^2 + (b2 (2 b2 + 4 P2 + 2 a1 α2 - 6 P α2 - a1 α2^2 + 2 P2 α2^2))/(-2 + α2)^2,
w1 + b1*a1 - (a1 - ((1 - α1)*P1 + α1*((a1 + a2)/2)))^2 >= 0,
w2 + b2*a2 - (a2 - ((1 - α2)*P2 + α2*((a2 + a1)/2)))^2 >= 0,
a1 >= 0, a2 >= 0, w1 >= 0, w2 >= 0, b1 > 0, b2 > 0
},
{w1, w2, a1, a2, b1, b2},
Reals]
]


The output is quick:

{2.25268*10^-8, {w1 -> 0., w2 -> 2.25268*10^-8, a1 -> 1.24999, a2 -> 1.74998, b1 -> 0., b2 -> 0.}}

• Indeed, I didn't find a better way than doing it numerically. However, how can it be that the output for variables b1 -> 0., b2 -> 0 is zero, which obviously violates the constraints in the program above which state b1 > 0, b2 > 0 ? Jan 7, 2017 at 9:06
• It just means that the minimum is where b1, b2 is as close to 0 as you can numerically resolve. Just think of the smallest machine-precision real number larger than 0 or something. Jan 7, 2017 at 10:09