Fréchet Distance for Curves, Revisited
$\renewcommand{\Re}{{\rm I\!\hspace{-0.025em} R}} \newcommand{\eps}{\varepsilon} \newcommand{\SetX}{\mathsf{X}} \newcommand{\VorX}[1]{\mathcal{V} \pth{#1}} \newcommand{\Polygon}{\mathsf{P}} \newcommand{\Space}{\overline{\mathsf{m}}} \newcommand{\pth}[2][\!]{#1\left({#2}\right)}$ We revisit the problem of computing Fréchet distance between polygonal curves under L1, L2, 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 $\eps$-approximation of their discrete Fréchet distance can be computed in roughly $O(nκ^3\log n/\eps^3)$ time in three dimensions, if one of the curves is \emph{κ-bounded}. Previously, only a κ-approximation algorithm was known. If both curves are the so-called \emph{\backbone~curves}, which are widely used to model protein backbones in molecular biology, we can $\eps$-approximate their Fréchet distance in near linear time in two dimensions, and in roughly O(n4/3lognm) 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 \emph{\bwnumber{}}, which is quadratic in the worst case, but tends to be much smaller in practice.