Nelder Mead Method

Manopt.NelderMeadFunction
NelderMead(M, F [, p])

perform a nelder mead minimization problem for the cost function F on the manifold M. If the initial population p is not given, a random set of points is chosen.

This algorithm is adapted from the Euclidean Nelder-Mead method, see https://en.wikipedia.org/wiki/Nelder–Mead_method and http://www.optimization-online.org/DB_FILE/2007/08/1742.pdf.

Input

  • M – a manifold $\mathcal M$
  • F – a cost function $F:\mathcal M→ℝ$ to minimize
  • population – (n+1 random_point(M)) an initial population of $n+1$ points, where $n$ is the dimension of the manifold M.

Optional

  • stopping_criterion – (StopAfterIteration(2000)) a StoppingCriterion
  • α – (1.) reflection parameter ($α > 0$)
  • γ – (2.) expansion parameter ($γ$)
  • ρ – (1/2) contraction parameter, $0 < ρ ≤ \frac{1}{2}$,
  • σ – (1/2) shrink coefficient, $0 < σ ≤ 1$
  • retraction_method – (ExponentialRetraction) the rectraction to use
  • inverse_retraction_method - (LogarithmicInverseRetraction) an inverse retraction to use.

and the ones that are passed to decorate_options for decorators.

Note

The manifold M used here has to either provide a mean(M, pts) or you have to load Manifolds.jl to use its statistics part.

Output

  • either x the last iterate or the complete options depending on the optional keyword return_options, which is false by default (hence then only x is returned).
source
Manopt.NelderMead!Function
NelderMead(M, F [, p])

perform a Nelder Mead minimization problem for the cost function F on the manifold M. If the initial population p is not given, a random set of points is chosen. If it is given, the computation is done in place of p.

For more options see NelderMead.

source

Options

Manopt.NelderMeadOptionsType
NelderMeadOptions <: Options

Describes all parameters and the state of a Nealer-Mead heuristic based optimization algorithm.

Fields

The naming of these parameters follows the Wikipedia article of the Euclidean case. The default is given in brackets, the required value range after the description

  • population – an Array{point,1} of $n+1$ points $x_i$, $i=1,…,n+1$, where $n$ is the dimension of the manifold.
  • stopping_criterion – (StopAfterIteration(2000)) a StoppingCriterion
  • α – (1.) reflection parameter ($α > 0$)
  • γ – (2.) expansion parameter ($γ > 0$)
  • ρ – (1/2) contraction parameter, $0 < ρ ≤ \frac{1}{2}$,
  • σ – (1/2) shrink coefficient, $0 < σ ≤ 1$
  • x – (p[1]) - a field to collect the current best value
  • retraction_methodExponentialRetraction() the rectraction to use, defaults to the exponential map
  • inverse_retraction_method - LogarithmicInverseRetraction an inverse_retraction(M,x,y) to use.

Constructors

NelderMead(M,stop, retr; α=1. , γ=2., ρ=1/2, σ=1/2)

construct a Nelder-Mead Option with a set of dimension(M)+1 random points.

NelderMead(p, stop retr; α=1. , γ=2., ρ=1/2, σ=1/2)

construct a Nelder-Mead Option with a set p of points

source