Local search
From Adaptive Population based Simplex
Basic local search (l0)
The idea is to perform a random search "around" a good point, but only if the current point is worse than average, i.e. if f(xi)N>C. In that case, the process is the following:
- Compute the maximum distance ρ between xbest and all the other individuals of the population.
- Select the xl position at random in the hypersphere of centre xbest and of radius ρ. The basic random choice makes use of two distributions, an uniform one, and a non-uniform one (see below).
If xl is better than xi, decrease the population cost
C←C−f(xi)+f(xl)
If xl is better than the best ever found (i.e. Best), set Best=xl.
Random choice
The distribution that is used is itself selected at random (uniform distribution) between two ones:
- the uniform one. The components of the direction vector follow the normalised Gaussian distribution, and the radius is r=ρ∗rand(0,1)1D
- a non uniform one (more dense near to the centre). Here the radius is simply r=ρ∗rand(0,1).