MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: NMinimize InitialPoints BUGREPORT ?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg60239] Re: NMinimize InitialPoints BUGREPORT ?
  • From: "Ray Koopman" <koopman at sfu.ca>
  • Date: Thu, 8 Sep 2005 04:53:20 -0400 (EDT)
  • References: <dfm7h0$h8e$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

lupos wrote:
> hi Mathematica support,
> this posting is a Mathematica 5.1
> bug report for NMinimize especially its InitialPoints Option.
>
> As can be seen from the example below the InitialPoints seem to be
> intermixed if the name of the parameters in this case S, R respectivly
> S, T are not in alphabetical order. everything behaves well as long the
> paramteres are in alphabetical sequence such as {S, T}. if we choose
> the paramters as {S, R} the initial values for the parameters get
> erroneously intermixed.
> watch the very first printed line after the invocation of NMinimize.
> once the initial value for S gets 1. (ok)
> and once the initial value for S gets 2. (error)
>
> note that this happens with all NMinimize methods not only the
> NelderMead method.
>
>
> In[1] :=
> f[v1_, v2_] := v1^2 + (v2 - 10)^2
>
>
>
> In[19]:=
> NMinimize[f[S, T], {S, T}, MaxIterations -> 1,
> EvaluationMonitor :> Print["S ", S, " T ", T],
> Method -> {NelderMead, InitialPoints -> {{1, 2}}}]
>
> >From In[19] := S 1. T 2.
> >From In[19] := S - 0.936293 T 0.280416
> >From In[19] := S 0.448605 T 0.161768
> >From In[19] := S - 0.384898 T 2.11865
> >From In[19] := S - 0.801649 T 3.09709
> >From In[19] := S - 0.801649 T 3.09709
> >From In[19] := S - 0.801649 T 3.09709
> >From In[19] := S 0. T 10.
> >From In[19] := S 0. T 10.
> >From In[19] := S - 0.801649 T 3.09709
>
> Out[19] = {0., {S -> 0., T -> 10.}}
>
>
>
> In[21]:=
> NMinimize[f[S, R], {S, R}, MaxIterations -> 1,
> EvaluationMonitor :> Print["S ", S, " R ", R],
> Method -> {NelderMead, InitialPoints -> {{1, 2}}}]
>
> >From In[21] := S 2. R 1.
> >From In[21] := S 0.280416 R - 0.936293
> >From In[21] := S 0.161768 R 0.448605
> >From In[21] := S 1.88135 R 2.3849
> >From In[21] := S 2.68182 R 4.04549
> >From In[21] := S 2.68182 R 4.04549
> >From In[21] := S 2.68182 R 4.04549
> >From In[21] := S 0. R 10.
> >From In[21] := S 0. R 10.
> >From In[21] := S 2.68182 R 4.04549
>
> Out[21] = {0., {R -> 10., S -> 0.}}
>
>
>
> regards robert

5.2 has a similar bug: with {S,R} it appears to get the initial point
correct, but otherwise follows the same solution path as 5.1.

In[1]:= $Version
Out[1]= 5.2 for Mac OS X (June 20, 2005)

In[2]:= f[v1_, v2_] := v1^2 + (v2 - 10)^2

In[3]:= NMinimize[f[S, T], {S, T}, MaxIterations -> 1,
EvaluationMonitor :> Print["S ", S, " T ", T],
Method -> {NelderMead, InitialPoints -> {{1, 2}}}]

S 1. T 2.
S -0.936293 T 0.280416
S 0.448605 T 0.161768
S -0.384898 T 2.11865
S -0.801649 T 3.09709
S -0.801649 T 3.09709
S -0.801649 T 3.09709
S 0. T 10.
S 0. T 10.
S -0.801649 T 3.09709
S -0.801649 T 3.09709
S 0. T 10.
S 0. T 10.

Out[3]= {0.,{S->0.,T->10.}}

In[4]:= NMinimize[f[S, R], {S, R}, MaxIterations -> 1,
EvaluationMonitor :> Print["S ", S, " R ", R],
Method -> {NelderMead, InitialPoints -> {{1, 2}}}]

S 1. R 2.
S 0.280416 R -0.936293
S 0.161768 R 0.448605
S 0.881352 R 3.3849
S 1.18182 R 5.54549
S 1.18182 R 5.54549
S 1.18182 R 5.54549
S 0. R 10.
S 0. R 10.
S 1.18182 R 5.54549
S 1.18182 R 5.54549
S 0. R 10.
S 0. R 10.

Out[4]= {0.,{R->10.,S->0.}}


  • Prev by Date: Re: Maximising a sum of matrix elements
  • Next by Date: Re: Re: Maximising a sum of matrix elements
  • Previous by thread: NMinimize InitialPoints BUGREPORT ?
  • Next by thread: Re: NMinimize InitialPoints BUGREPORT ?