Discrete Fréchet Distance Oracles

Boris Aronov,Tsuri Farhana,Matthew J. Katz,Indu Ramesh
2024-04-05
Abstract:It is unlikely that the discrete Fréchet distance between two curves of length $n$ can be computed in strictly subquadratic time. We thus consider the setting where one of the curves, $P$, is known in advance. In particular, we wish to construct data structures (distance oracles) of near-linear size that support efficient distance queries with respect to $P$ in sublinear time. Since there is evidence that this is impossible for query curves of length $\Theta(n^\alpha)$, for any $\alpha > 0$, we focus on query curves of (small) constant length, for which we are able to devise distance oracles with the desired bounds.
Computational Geometry
What problem does this paper attempt to address?
The main problem that this paper attempts to solve is to design an efficient data structure (distance oracle) for quickly calculating the discrete Fréchet distance between a query polygonal curve \(Q\) and the path from vertex \(u\) to vertex \(v\) in a given geometric graph \(G\). Specifically, the paper focuses on how to construct a compact data structure during the pre - processing stage, so that given the query curve \(Q\) and two vertices \(u, v\), it can efficiently calculate the minimum discrete Fréchet distance between \(Q\) and the set of paths \(P_G(u, v)\) from \(u\) to \(v\) in \(G\), denoted as \(\text{ddF}(Q, P_G(u, v))\). ### Main Contributions 1. **For Polygonal Curves**: - When the query curve \(Q\) is a small curve with a constant length (usually 2 to 4 vertices), the paper proposes several data structures that can support sub - linear - time queries within near - linear space. - Specifically, for query curves with lengths of 1, 2, 3, and 4, the queries can be completed in \(O(\log^3 n)\), \(O(\log^3 n)\), \(O(\log^4 n)\) and \(O^*(\sqrt{n})\) time respectively. 2. **For Tree Structures**: - The paper constructs a discrete Fréchet distance oracle for trees by decomposing the tree into heavy paths and using the above - mentioned data structures for polygonal curves. - For query curves with lengths of 1, 2, 3, and 4, the queries can be completed in \(O(\log^3 n)\), \(O(\log^3 n)\), \(O(\log^4 n)\) and \(O^*(\sqrt{n})\) time respectively, and the required spaces are \(O(n\log n)\) and \(O^*(n)\) respectively. 3. **For Local Graphs**: - The paper defines a new class of geometric graphs - \(t\)-local graphs and proves that this class of graphs strictly contains geometric spanners. - For 1 - local graphs, the paper constructs a data structure that can handle line - segment queries in \(O^*(\sqrt{n})\) time. ### Key Techniques - **Heavy Path Decomposition**: Decompose the tree into heavy paths so that the path between any two points can be represented as the connection of at most \(O(\log n)\) heavy paths. - **Dynamic Programming**: Use the dynamic programming method to gradually calculate the discrete Fréchet distance between sub - paths, thereby reducing redundant calculations. - **Data Structure Optimization**: Accelerate the query process by constructing efficient range - search data structures (such as disk - range - search and ring - range - search). ### Conclusion The paper successfully solves the problem of efficiently calculating the discrete Fréchet distance in a given geometric graph. In particular, when the length of the query curve is short, it can significantly improve the query efficiency. These results are of great value in multiple application fields (such as map matching, path planning, etc.).