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

The Fréchet distance between two curves is the minimum length of a leash required to connect a dog and its owner, constrained on two separate paths, as they walk without backtracking along their respective curves from one endpoint to the other. The definition is symmetric with respect to the two curves. Imagine a dog walking along one curve and the dog's owner walking along the other curve, connected by a leash. Both walk continuously along their respective curve from the prescribed start point to the prescribed end point of the curve. Both may vary their speed, and even stop, at arbitrary positions and for arbitrarily long periods of time. However, neither can backtrack. The Fréchet distance between the two curves is the length of the shortest leash (not the shortest leash that is sufficient for all walks, but the shortest leash of all the leashes) that is sufficient for traversing both curves in this manner.

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[1] and handwriting recognition[2] to protein structure alignment.[3] Alt and Godau[4] were the first to describe a polynomial-time algorithm to compute the Fréchet distance between two polygonal curves in Euclidean space. 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

example of a free-space diagram
Free-space diagram of for 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.[4] 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))\le\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 which 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[4] describe a simpler algorithm to compute the weak Fréchet distance between polygonal curves.

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.[5] 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.[1][6][7] Cook and Wenk[6] 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[8] 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.[8] 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|).

References

  1. 1.0 1.1 Efrat, Alon; Guibas, Leonidas J.; Har-Peled, Sariel; Mitchell, Joseph S. B.; Murali, T. M. (2002), "New similarity measures between polylines with applications to morphing and polygon sweeping", Discrete and Computational Geometry 28 (4): 535–569, doi:10.1007/s00454-002-2886-1.
  2. Sriraghavendra, R.; Karthik, K.; Bhattacharyya, Chiranjib (2007), "Fréchet distance based approach for searching online handwritten documents", Proc. 9th International Conference on Document Analysis and Recognition (ICDAR '07), pp. 461–465, doi:10.1109/ICDAR.2007.121.
  3. Minghui, Jiang; Ying, Xu; Binhai, Zhu (2008), "Protein structure-structure alignment with discrete Fréchet distance", Journal of Bioinformatics and Computational Biology 6 (1): 51–64, doi:10.1142/S0219720008003278, PMID 18324745.
  4. 4.0 4.1 4.2 Alt, Helmut; Godau, Michael (1995), "Computing the Fréchet distance between two polygonal curves", International Journal of Computational Geometry and Applications 5 (1–2): 75–91, doi:10.1142/S0218195995000064.
  5. Eiter, Thomas; Mannila, Heikki (1994), Computing discrete Fréchet distance, Tech. Report CD-TR 94/64, Christian Doppler Laboratory for Expert Systems, TU Vienna, Austria.
  6. 6.0 6.1 Cook, Atlas F., IV; Wenk, Carola (2008), Geodesic Fréchet distance with polygonal obstacles, Tech. Report CS-TR-2008-0010, University of Texas at San Antonio.
  7. Maheshwari, Anil; Yi, Jiehua (2005), "On computing Fréchet distance of two paths on a convex polyhedron", Proc. 21st European Workshop on Computational Geometry, pp. 41–44.
  8. 8.0 8.1 Chambers, Erin Wolf; Colin de Verdière, Éric; Erickson, Jeff; Lazard, Sylvain; Lazarus, Francis; Thite, Shripad (2009), "Homotopic Fréchet distance between curves, or Walking your dog in the woods in polynomial time", Computational Geometry: Theory and Applications 43 (3): 295–311, doi:10.1016/j.comgeo.2009.02.008.

Further reading