Fréchet Distance for Curves, Revisited [chapter]

Boris Aronov, Sariel Har-Peled, Christian Knauer, Yusu Wang, Carola Wenk
2006 Lecture Notes in Computer Science  
We revisit the problem of computing Fréchet distance between polygonal curves under L 1 , L 2 , and L ∞ norms, focusing on discrete Fréchet distance, where only distance between vertices is considered. We develop efficient algorithms for two natural classes of curves. In particular, given two polygonal curves of n vertices each, a ε-approximation of their discrete Fréchet distance can be computed in roughly O(nκ 3 log n/ε 3 ) time in three dimensions, if one of the curves is κ-bounded.
more » ... y, only a κ-approximation algorithm was known. If both curves are the socalled backbone curves, which are widely used to model protein backbones in molecular biology, we can ε-approximate their Fréchet distance in near linear time in two dimensions, and in roughly O(n 4/3 log nm) time in three dimensions. In the second part, we propose a pseudo-output-sensitive algorithm for computing Fréchet distance exactly. The complexity of the algorithm is a function of a quantity we call the number of switching cells, which is quadratic in the worst case, but tends to be much smaller in practice. Alt et al. [AG95] present an algorithm to compute the Fréchet distance between two polygonal curves of n and m vertices, respectively, in time O(nm log 2 (nm)). Improving this roughly quadratictime solution for general curves seems to be hard, and so far, no algorithm, exact or approximate, with running time significantly smaller than O(nm) has been found for this problem for general curves.Since the Fréchet distance essentially requires computing a correspondence between the two curves, it has some resemblance to the edit distance problem (which asks for the best alignment of two strings), for which no substantially subquadratic algorithm is known either. On the other hand, another similarity measure, the Hausdorff distance, can be computed faster in the plane and approximated efficiently in higher dimensions. Unfortunately, Hausdorff distance does not reflect curve similarity well (see Figure 1 (a) for an example). Alt et al. [AKW04] showed that the Hausdorff distance and the Fréchet distance are the same for a pair of closed convex curves. They also showed that the two measures are closely related for κ-bounded curves. Roughly speaking, for any two points p, q on a κ-bounded curve τ , τ (p, q), the subcurve from p to q, is contained within some neighborhood of p and q with size roughly κ||p − q|| (see Figure 1 (b); precise definition is introduced later). Alt et al. showed that the Fréchet distance between any two κ-bounded curves is bounded by κ + 1 times the Hausdorff distance between them. This leads to a κ-approximation algorithm for the Fréchet distance for any pair of κ-bounded curves, and they also developed an algorithm to compute the reparametrizations of input curves that realize this approximation (see the definitions below). The algorithm runs is O((n + m) log 2 (n + m)2 α(n+m) ) time in two dimensions. In three or higher dimensions, the time complexity is dominated by the computation of Hausdorff distance between the curves. Not much is known about the Fréchet distance for other types of curves. In fact, even for x-monotone curves in three dimensions, no known algorithm runs in substantially subquadratic time. The problem of minimizing Fréchet distance under various classes of transformations has also been studied [AKW01, Wen02]. However, even in two dimensions, the exact algorithm takes roughly O(n 6 ) time for computing the best Fréchet distance under translations, and roughly O(n 8 ) time under rigid motions. Approximation algorithms have been studied [CM05, Wen02], but practical solutions remain elusive. The basic building block of those algorithms, as well as one of the bottlenecks, is the computation (or approximation) of the Fréchet distance between curves π and σ. There is a slightly simpler version of the Fréchet distance, the discrete Fréchet distance, which only consider vertices of polygonal curves. Its computation takes Θ(n 2 ) time and space using dynamic programming [EM94], and no substantially subquadratic algorithm is known either. Fréchet distance has also been extended to graphs (maps) [AERW03], to piecewise smooth curves [Rot05], to simple polygons [BBW06] and to surfaces [AB05]. Finally, Fréchet distance was used as the similarity measure for morphing [EGHM01] between curves, and for high-dimensional approximate nearest neighbor search [Ind02] . It was also used for efficient curve simplification [AHMW05].
doi:10.1007/11841036_8 fatcat:ex4of3d7ajhhrisrx6qz5nxufq