Describe/define the area of a scalar field that can be reached by local search

82 Views Asked by At

Lets assume I have a scalar field (which is a space, which describes a density. For my publication I want to properly define a certain area in this scalar field. The idea is this: Lets start with any point in the space and apply a local search optimization algorithm (e.g. hill climbing) to the point until I converge. The area I am interested in is the set of all points from which I can start the local search method and still converge to the same point in space.

I thought about using the vector field, which is the derivative of the scalar field, in the definition and use some notion of "reachablility". But I am not quite sure on how express this concise. Maybe the derivative is not required to be mentioned. I thought about using some sort of sense of "density-connectedness", where the vectors connect all the points with each other that can be reached, following the vectors - but this is obviously not yet very polished.

Btw: Mean shift would be an implementation of a local search (which is not hill climbing) if the scalar field is constructed using a kernel density estimation.


My goal is to define a cluster for mean shift and similar methods such that it is algorithm independent. If possible even not in Euclidean but in general metric space. Currently my definition is:

Given an Euclidean space for which points a density based on given data objects, which are elements of the Euclidean space, can be calculated. Then a cluster mode is a local maxima of the respective density function. Then the cluster mode is a sink for the conservative vector field of the density function (the vector field that is made up from the gradients of the density function at the points in the Euclidean space). Then, a cluster is a connected component (maximal connected subset) of the Euclidean space, which elements are in the same basin of attraction for the same cluster mode.

1

There are 1 best solutions below

9
On BEST ANSWER

The term that you are looking for is a basin of attraction.

Dynamical Systems

In broad terms, a dynamical system is a family of functions $\{f_t\}$, where the index or parameter $t$ can be taken to be either the integers or the reals. This family of functions must satisfy the property that $$ f_s \circ f_t = f_{s+t} $$ for any appropriate $s$ and $t$ (and, while this is implied by the previous relation, $f_0 = \operatorname{id}$). A dynamical system indexed by the integers is a discrete dynamical system, while a system indexed by the reals is a continuous dynamical system.

Discrete dynamical systems can be thought of as iterative processes. For example, Newton's method can be thought of as a discrete dynamical system: suppose that $u : \mathbb{C} \to \mathbb{C}$ is a continuously differentiable function and that we want to find some value $x$ such that $u(x) = 0$. Fix some initial guess, say $x_0$. Then recursively define $$ x_{n+1} := x_n - \frac{u(x_n)}{u'(x_n)}. $$ It is known that for almost every initial value $x_0$, there will be some $x_{\infty}$ such that $x_n \to x_{\infty}$ and $u(x_\infty) = 0.$ To understand this as a discrete time dynamical system, define the map $$ f : \mathbb{C} \to \mathbb{C} : x \mapsto x - \frac{u(x)}{u'(x)}. $$ This function $f$ "generates" a discrete time dynamical system, where $f_t$ is the $t$-iterate, i.e. $$ f_t := f^t = \underbrace{f\circ f \circ \dotsb \circ f}_{\text{$t$ times}}, $$ where $t$ is a (nonnegative) integer.

Newton's Method as a Dynamical System

Recall that the motivation behind Newton's method is finding the zeros of functions. We know that for almost any initial value, this dynamical system will be attracted to some zero (that is, the iterates will converge to a zero), but if a function has multiple zeros, it is not obvious which zero a sequence of iterates will limit towards. For example, consider the polynomial function $$ u(x) = x^3 + 1. $$ This function has three zeros in $\mathbb{C}$: $x = -1$ and $x = \mathrm{e}^{\pm i\pi / 3}$. Given an initial point $x_0 \in \mathbb{C}$, which of these three roots will be the limit of the dynamical system, applied to that point? Thinking backwards, what is the set of points which are "attracted to" each of the three roots? This set of points is the basin of attraction. More formally:

Definition: Let $\{f_t\}$ be a dynamical system, and suppose that $x^*$ is a point such that $f_t(x^*) = x^*$ for all $t$ (that is, suppose that $x^*$ is a fixed point of the system). The basin of attraction of $x^*$ is the set of points $$ \left\{ x \ \middle|\ \lim_{t\to\infty} f_t(x) = x^* \right\}. $$

I bring up the example of Newton's method because I have spilled some ink on that topic previously in my life, and because it is an example that should be familiar to most people who have taken an introductory course in calculus. However, the same framework can be used to describe the "hill climbing method" as a dynamical system.

Hill Climbing as a Dynamical System

When thinking of the hill climbing method as a dynamical system, we would like to say that the system is composed of iterates of the "hill climbing map" (i.e. a single step in the algorithm), and the fixed points are (local) optima. If $x^*$ is some kind of maximum, then the set of points which are "reached" by the hill climbing algorithm is, in the language developed above, the basin of attraction of that maximum.

While this language is not entirely consistent with the theory of dynamical systems outlined above (since the step-size decreases with $t$, we are likely to lose the property $f_s \circ f_t = f_{s+t}$), we might think of the hill climbing method as a kind of "nonautonomous" dynamical system. The same basic theory and vocabulary applies.

In short, it is entirely reasonable to refer to the set of points whose iterates (under the hill climbing function) limit to a particular value the basin of attraction of that value.