Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Problem with NMaximize
Replies: 11   Last Post: Jun 28, 2008 5:58 AM

 Messages: [ Previous | Next ]
 DrMajorBob Posts: 102 Registered: 4/2/08
Re: Problem with NMaximize
Posted: Jun 27, 2008 6:20 AM

NSolve and NMaximize generally use a kind of secant search, using previous
attempts to extrapolate to a new and (hopefully) better one.
Unfortunately, extrapolation can easily carry us from feasible points to
infeasible ones. If you can formulate the problem so that infeasaible
points can't exist (or can't be reached by extrapolation), you avoid a lot
of trouble.

Anyway, why maximize log-likelihood, when you could maximize the
likelihood itself? If THAT turns out to be negative at an intermediate
step, it's not a problem, since you're not taking a logarithm of it.

We generally speak of log-likelihood because of its use in an asymptotic
chi-square test, but that's not always relevant when choosing optimum
parameters.

Bobby

On Thu, 26 Jun 2008 13:45:57 -0500, ramiro <ramiro.barrantes@uvm.edu>
wrote:

> Thank you very much for your responses, Bobby and Jean-Marc. I did try
> changing the parametrization (thanks Bobby!) and I got an answer.
> However, let me try again with a hopefully more clear example, as I
> don't understand why this doesn't work, in particular, I don't
> understand why is it evaluating negative numbers if I am putting as a
> constraint that it shouldn't?
>
>
> Sample likelihood,
>
> In[196]:=
> logLikelihood1[t1_?NumberQ, t2_?NumberQ, t3_?NumberQ, t4_?NumberQ,
> t5_?NumberQ, t6_?NumberQ, t7_?NumberQ, t8_?NumberQ, t9_?NumberQ,
> t10_?NumberQ, t11_?NumberQ, t12_?NumberQ] :=
> Log[0.00001712341312000713` t1 + 5.648647024829866`*^-6 t10 +
> 8.90597537441381`*^-6 t11 + 1.9727284288726167`*^-6 t12 +
> 4.102725237468317`*^-6 t2 + 3.7864902508468615`*^-6 t3 +
> 9.215772325326653`*^-7 t4 + 0.000057161484895917856` t5 +
> 0.000012892953334779516` t6 + 8.646320198720343`*^-6 t7 +
> 5.877910295858781`*^-6 t8 + 1.6837835562631724`*^-6 t9];
>
> Another version (without the NumberQ)...
>
> In[197]:=
> logLikelihood2[t1_, t2_, t3_, t4_, t5_, t6_, t7_, t8_, t9_, t10_,
> t11_, t12_] :=
> Log[0.00001712341312000713` t1 + 5.648647024829866`*^-6 t10 +
> 8.90597537441381`*^-6 t11 + 1.9727284288726167`*^-6 t12 +
> 4.102725237468317`*^-6 t2 + 3.7864902508468615`*^-6 t3 +
> 9.215772325326653`*^-7 t4 + 0.000057161484895917856` t5 +
> 0.000012892953334779516` t6 + 8.646320198720343`*^-6 t7 +
> 5.877910295858781`*^-6 t8 + 1.6837835562631724`*^-6 t9];
>
> In[198]:= NMaximize[{logLikelihood1[t1, t2, t3, t4, t5, t6, t7, t8,
> t9, t10, t11, t12], t1 > 0, t2 > 0, t3 > 0, t4 > 0, t5 > 0, t6 > 0,
> t7 > 0, t8 > 0, t9 > 0, t10 > 0, t11 > 0, t12 > 0,
> t1 + t10 + t11 + t12 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 ==
> 1}, {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12}]
>
> During evaluation of In[198]:= NMaximize::nrnum: The function value \
> 15.7729-3.14159 I is not a real number at \
> {t1,t10,t11,t12,t2,t3,t4,t5,t6,t7,<<2>>} = {-0.490249,<<9>>,<<2>>}. \

> >>
>
> Out[198]= {-13.2945, {t1 -> 2.10942*10^-15, t10 -> -2.22045*10^-16,
> t11 -> -2.22045*10^-16, t12 -> -2.22045*10^-16,
> t2 -> -1.11022*10^-16, t3 -> -2.22045*10^-16, t4 -> -2.22045*10^-16,
> t5 -> -6.93889*10^-18, t6 -> -2.22045*10^-16,
> t7 -> -1.11022*10^-16, t8 -> -4.44089*10^-16, t9 -> 1.}}
>
> In[199]:= NMaximize[{logLikelihood2[t1, t2, t3, t4, t5, t6, t7, t8,
> t9, t10, t11, t12], t1 > 0, t2 > 0, t3 > 0, t4 > 0, t5 > 0, t6 > 0,
> t7 > 0, t8 > 0, t9 > 0, t10 > 0, t11 > 0, t12 > 0,
> t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12 ==
> 1}, {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12}]
>
> During evaluation of In[199]:= NMaximize::nrnum: The function value \
> 15.7729-3.14159 I is not a real number at \
> {t1,t10,t11,t12,t2,t3,t4,t5,t6,t7,<<2>>} = {-0.490249,<<9>>,<<2>>}. \

> >>
>
> Out[199]= {-13.2945, {t1 -> 2.10942*10^-15, t10 -> -2.22045*10^-16,
> t11 -> -2.22045*10^-16, t12 -> -2.22045*10^-16,
> t2 -> -1.11022*10^-16, t3 -> -2.22045*10^-16, t4 -> -2.22045*10^-16,
> t5 -> -6.93889*10^-18, t6 -> -2.22045*10^-16,
> t7 -> -1.11022*10^-16, t8 -> -4.44089*10^-16, t9 -> 1.}}
>

--
DrMajorBob@longhorns.com

Date Subject Author
6/26/08 Ramiro Barrantes-Reynolds
6/27/08 Jean-Marc Gulliet
6/27/08 ramiro
6/27/08 DrMajorBob
6/27/08 DrMajorBob
6/27/08 Jean-Marc Gulliet
6/28/08 mante
6/28/08 Bill Rowe
6/28/08 Daniel Lichtblau