I am stuck with this problem. I thought of trying to first solve the problem with weak inequalities for all the constraints using Kuhn Tucker conditions, and checking for solutions at which the constraints for $s$ and $t$ are slack. It is getting very messy, though. Am I on the right track or not?
Asked
Active
Viewed 1,549 times
1 Answers
1
First, forget about the strict inequalities for now -- if the maximum turns out to be on $s=0$ or $t=0$, there will simply be no solution.
You can simplify the objective function a bit by making the substitution $$s = (1+x+y)^2 \bar{s}^2$$ $$t = (1+x+y)^2 \bar{t}^2.$$ This will lead to extremely unpleasant KKT conditions which Mathematica can solve exactly to yield \begin{align*} x = y &= \frac{1}{600}\left(-251 + \sqrt{2401 + 150000\sqrt{2}}\right)\\ s = t &= \frac{\left(49 + \sqrt{2401 + 150000\sqrt{2}}\right)^2}{4500000}, \end{align*} with objective value $\approx 0.34$. Now to check the boundary cases:
- $s\to \infty$ or $t\to \infty$: clearly the objective diverges to $-\infty$.
- $x\to \infty$: diverges to $-\infty$ unless $s=0$, in which case the maximum is 25 at $t=2500, y=0$.
- $y\to \infty$: clearly the same case as the previous one.
- $x = 0$: besides the $t=0$ case already analyzed above, there is a new critical point (again, extremely unpleasant to write down) with objective value $\approx 0.33$.
- $y=0$: same as above.
So, your problem has no maximum: the objective approaches a least upper bound of $25$ at $t=2500, y=0$, and $s\to 0$.
user7530
- 49,280
-
Thanks a lot! Could you please tell me what made you make those substitutions for $s$ and $t$? And did you then optimize wrt $\bar s$ and $\bar t$ instead of $s$ and $t$? – bitter-sweet Jun 05 '16 at 06:34
-
@bitter-sweet It eliminates both two inequality constraints and replaces some square roots with polynomial expressions. And yes, of course. – user7530 Jun 05 '16 at 15:44
-
Thanks again. What is the problem with directly telling Mathematica to solve the optimization problem using NMaximize? Would be great if you could shed light on this. Also, I finally got enough reputation points to upvote your answer :) – bitter-sweet Jun 05 '16 at 16:09
-
@bitter-sweet NMinimize will find a local minimum. If that's all you need, it works great. – user7530 Jun 05 '16 at 21:07
-
I need a global max. I assume you mean that NMaximize would churn out a local max only when a global max doesn't exist, as in this case. Anyway, at (x, y, s, t)≈(0, 352.551, 2499.96, 5.01411×10^-7), the objective func has a value ≈25.0004. Mathematica gave me this and I verified it. So 25 isn't an upper bound. Any idea what's going on? – bitter-sweet Jun 06 '16 at 05:18
-
@bitter-sweet are you sure the extra .0004 isn't numerical error? Check again with higher precision. – user7530 Jun 06 '16 at 09:09
-
hmmm ok. t is very close to 0 here, so it must be the same as the case that you have analyzed. It's the first time I'm learning what mathematica does and doesn't do. Thanks for the help. – bitter-sweet Jun 06 '16 at 12:33
-
ok one more thing- if I include s=0 and t=0 in the domain, then the function does indeed have a global max of 25, right? – bitter-sweet Jun 06 '16 at 12:37
-
@bitter-sweet yes. – user7530 Jun 06 '16 at 16:43
