Fréchet distance

In mathematics, the Fréchet distance is a measure of similarity between curves that takes into account the location and ordering of the points along the curves. It is named after Maurice Fréchet.

Intuitive definition

Imagine a man traversing a finite curved path while walking his dog on a leash, with the dog traversing a separate one. Assume that the dog varies its speed to keep as much slack in its leash as possible: the Fréchet distance between the two curves is the length of the shortest leash sufficient for both to traverse their separate paths. Note that the definition is symmetric with respect to the two curves—the Frechet distance would be the same if the dog was walking its owner.

Formal definition

Let $S$ be a metric space. A curve $A$ in $S$ is a continuous map from the unit interval into $S$ , i.e., $A:[0,1]\rightarrow S$ . A reparameterization $\alpha$ of $[0,1]$ is a continuous, non-decreasing, surjection $\alpha :[0,1]\rightarrow [0,1]$ .

Let $A$ and $B$ be two given curves in $S$ . Then, the Fréchet distance between $A$ and $B$ is defined as the infimum over all reparameterizations $\alpha$ and $\beta$ of $[0,1]$ of the maximum over all $t\in [0,1]$ of the distance in $S$ between $A(\alpha (t))$ and $B(\beta (t))$ . In mathematical notation, the Fréchet distance $F(A,B)$ is

$F(A,B)=\inf _{\alpha ,\beta }\,\,\max _{t\in [0,1]}\,\,{\Bigg \{}d{\Big (}A(\alpha (t)),\,B(\beta (t)){\Big )}{\Bigg \}}$ where $d$ is the distance function of $S$ .

Informally, we can think of the parameter $t$ as "time". Then, $A(\alpha (t))$ is the position of the dog and $B(\beta (t))$ is the position of the dog's owner at time $t$ (or vice versa). The length of the leash between them at time $t$ is the distance between $A(\alpha (t))$ and $B(\beta (t))$ . Taking the infimum over all possible reparametrizations of $[0,1]$ corresponds to choosing the walk along the given paths where the maximum leash length is minimized. The restriction that $\alpha$ and $\beta$ be non-decreasing means that neither the dog nor its owner can backtrack.

The Fréchet metric takes into account the flow of the two curves because the pairs of points whose distance contributes to the Fréchet distance sweep continuously along their respective curves. This makes the Fréchet distance a better measure of similarity for curves than alternatives, such as the Hausdorff distance, for arbitrary point sets. It is possible for two curves to have small Hausdorff distance but large Fréchet distance.

The Fréchet distance and its variants find application in several problems, from morphing and handwriting recognition to protein structure alignment. Alt and Godau were the first to describe a polynomial-time algorithm to compute the Fréchet distance between two polygonal curves in Euclidean space, based on the principle of parametric search. The running time of their algorithm is $O(mn\cdot \log(mn))$ for two polygonal curves with m and n segments.

The free-space diagram Free-space diagram of the red and the blue curve. In contrast to the definition in the text, which uses the parameter interval [0,1] for both curves, the curves are parameterized by arc length in this example.

An important tool for calculating the Fréchet distance of two curves is the free-space diagram, which was introduced by Alt and Godau. The free-space diagram between two curves for a given distance threshold ε is a two-dimensional region in the parameter space that consist of all point pairs on the two curves at distance at most ε:

$D_{\varepsilon }(A,B):=\{\,(\alpha ,\beta )\in [0,1]^{2}\mid d(A(\alpha ),B(\beta ))\leq \varepsilon \,\}$ The Fréchet distance $F(A,B)$ is at most ε if and only if the free-space diagram $D_{\varepsilon }(A,B)$ contains a path from the lower left corner to the upper right corner, which is monotone both in the horizontal and in the vertical direction.

Variants

The weak Fréchet distance is a variant of the classical Fréchet distance without the requirement that the endpoints move monotonically along their respective curves — the dog and its owner are allowed to backtrack to keep the leash between them short. Alt and Godau describe a simpler algorithm to compute the weak Fréchet distance between polygonal curves, based on computing minimax paths in an associated grid graph.

The discrete Fréchet distance, also called the coupling distance, is an approximation of the Fréchet metric for polygonal curves, defined by Eiter and Mannila. The discrete Fréchet distance considers only positions of the leash where its endpoints are located at vertices of the two polygonal curves and never in the interior of an edge. This special structure allows the discrete Fréchet distance to be computed in polynomial time by an easy dynamic programming algorithm.

When the two curves are embedded in a metric space other than Euclidean space, such as a polyhedral terrain or some Euclidean space with obstacles, the distance between two points on the curves is most naturally defined as the length of the shortest path between them. The leash is required to be a geodesic joining its endpoints. The resulting metric between curves is called the geodesic Fréchet distance. Cook and Wenk describe a polynomial-time algorithm to compute the geodesic Fréchet distance between two polygonal curves in a simple polygon.

If we further require that the leash must move continuously in the ambient metric space, then we obtain the notion of the homotopic Fréchet distance between two curves. The leash cannot switch discontinuously from one position to another — in particular, the leash cannot jump over obstacles, and can sweep over a mountain on a terrain only if it is long enough. The motion of the leash describes a homotopy between the two curves. Chambers et al. describe a polynomial-time algorithm to compute the homotopic Fréchet distance between polygonal curves in the Euclidean plane with obstacles.

Examples

The Fréchet distance between two concentric circles of radius $r_{1}$ and $r_{2}$ respectively is $|r_{1}-r_{2}|.$ The longest leash is required when the owner stands still and the dog travels to the opposite side of the circle ($r_{1}+r_{2}$ ), and the shortest leash when both owner and dog walk at a constant angular velocity around the circle ($|r_{1}-r_{2}|$ ).