MathGroup Archive 2012

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

Search the Archive

NMinimize Method suboptions

  • To: mathgroup at
  • Subject: [mg124153] NMinimize Method suboptions
  • From: "Oleksandr Rasputinov" <oleksandr_rasputinov at>
  • Date: Wed, 11 Jan 2012 04:22:55 -0500 (EST)
  • Delivered-to:

Dear all

I am fitting some experimental data using NonlinearModelFit. The model and  
constraints can lead to some difficulty with convergence so I am using the  
NMinimize method as follows:

fit = NonlinearModelFit[
  data, {model, constr}, {pars}, var,
  Weights -> 1/errors^2,
  Method -> {NMinimize,
   Method -> {"DifferentialEvolution",
    "PostProcess" -> {FindMinimum, Method -> "QuasiNewton"}

(The Method suboption for the FindMinimum value of the "PostProcess"  
option is undocumented, but the fact of its existence is obvious. In this  
case, BFGS a.k.a. "QuasiNewton" is very effective for final refinement of  
the differential evolution results.)

My questions are as follows:

1. We know that some possible values for the "PostProcess" option are  
"KKT", "InteriorPoint", and FindMinimum (with the undocumented Method  
suboption giving access to a rather wide range of possibilities). Are  
there any others? And is there any difference between the option values  
"InteriorPoint" and {FindMinimum, Method -> "InteriorPoint"}?

2. For the "DifferentialEvolution" method, the documentation states that  
recombination is according to Storn and Price's rand/1 scheme. Are any  
other schemes implemented? (In my opinion, there are not that many others  
worth using, with the notable exceptions of best/2 and MDE5 [Thangaraj et  
al., Appl. Math. Comp. 216 (2), 532 (2010)], which can significantly  
outperform rand/1. This is particularly noticeable if the selection method  
is also slightly modified so that rather than using a tournament approach,  
the fitness values of all individuals are sorted and the best half of the  
combined previous generation and mutant population is kept for the next  
generation. However, this selection method does not work well with the  
rand/1 scheme, which is probably why nobody else uses it as far as I know.)

Thanks for any answers,


O. R.

  • Prev by Date: Re: Question about typesetting
  • Next by Date: Re: The domain parameter of Reduce[]
  • Previous by thread: Booelan matrices for ordering and sorting
  • Next by thread: Re: NMinimize Method suboptions