Querying approximate shortest paths in anisotropic regions Siu-Wing Cheng (HKUST) Hyeon-Suk Na (Soongsil University) Antoine Vigneron (INRA Jouy-en-Josas) Yajun Wang (HKUST) The weighted region problem cost = weight × length t w=1 w=2 s Shortest path The weighted region problem cost = weight × length t w=1 w=2 s Shortest path The weighted region problem • Triangulation with n vertices • Each face has a weight • Find an approximate shortest path with cost at most 1 + times the minimum s t No (strongly polynomial) FPTAS is known No (strongly polynomial) FPTAS is known Known results: polynomial in n, 1/, and other parameters. No (strongly polynomial) FPTAS is known Known results: polynomial in n, 1/, and other parameters. • ρ: maximum weight/ minimum weight • θ: minimum angle in the triangulation No (strongly polynomial) FPTAS is known Known results: polynomial in n, 1/, and other parameters. • ρ: maximum weight/ minimum weight • θ: minimum angle in the triangulation Known results • Mitchell and Papadimitriou (1987): O(n8 log(nN ρ/)) • Aleksandrov, Maheshwari, and Sacks: √ O(Cn/ × polylog(n, 1/)), C depends on ρ, θ and other parameters. • Sun and Reif: O(C 0 n/ × polylog(n, 1/)), C 0 depends on θ, other parameters, but not ρ. • Cheng et al. (2007): O(n3 ρ/ × polylog(n, ρ, 1/)) Query problem s Query problem Build a data structure s Query problem Build a data structure Given a query point q, find a (1 + ε)-approximation of the cost of the shortest path from s to q. q s Query problem Build a data structure Given a query point q, find a (1 + ε)-approximation of the cost of the shortest path from s to q. q s Query problem Build a data structure Given a query point q, find a (1 + ε)-approximation of the cost of the shortest path from s to q. q s Output an approximate shortest path in time linear in its size Previous results Aleksandrov et al.: Space and preprocessing time depend on several parameters including n, ε, ρ and θ. Previous results Aleksandrov et al.: Space and preprocessing time depend on several parameters including n, ε, ρ and θ. Applies to polyhedral surfaces Previous results Aleksandrov et al.: Space and preprocessing time depend on several parameters including n, ε, ρ and θ. Applies to polyhedral surfaces Our results Query time: O(log(ρn/ε)) Space: O(ρ2 n4 /ε2 log(ρn/ε)) Preprocessing time: O(ρ2 n4 /ε2 log2 (ρn/ε)) Previous results Aleksandrov et al.: Space and preprocessing time depend on several parameters including n, ε, ρ and θ. Applies to polyhedral surfaces Our results Query time: O(log(ρn/ε)) Space: O(ρ2 n4 /ε2 log(ρn/ε)) Preprocessing time: O(ρ2 n4 /ε2 log2 (ρn/ε)) Applies to anisotropic distance functions Convex distance function Unit ball B: set of points at distance 6 1 from O B O Convex distance function Unit ball B: set of points at distance 6 1 from O B O x + λB x y dB (x, y) = λ Convex distance function Unit ball B: set of points at distance 6 1 from O B O x + λB x y dB (x, y) = λ Shortest path is a straight line segment Model One convex distance function per face 1 B 1/ρ Model One convex distance function per face 1 B 1/ρ Speed is in interval [1/ρ, 1] Model One convex distance function per face 1 B 1/ρ Speed is in interval [1/ρ, 1] Cost of a length ` path is in [`, ρ`]. Exemple of a non-polygonal shortest path s t Exemple of a non-polygonal shortest path s t Exemple of a non-polygonal shortest path s t There exists a rectifiable (=finite length) shortest path Exemple of a non-polygonal shortest path s t There exists a rectifiable (=finite length) shortest path There exists a (1 + ε)-approximate shortest path with O(ρn2 /ε) edges. Static (non query) algorithm t s Static (non query) algorithm Circle with radius ρ d(s, t) and center s t s Static (non query) algorithm Circle with radius ρ d(s, t) and center s t s Steiner points with uniform spacing δ = 1/poly(ρ, n, 1/ε) Static (non query) algorithm Circle with radius ρ d(s, t) and center s t s Steiner points with uniform spacing δ = 1/poly(ρ, n, 1/ε) Observation δ s q Observation δ s q shortest path Observation δ approximate shortest path s q shortest path Observation δ approximate shortest path s q shortest path Observation δ approximate shortest path s q shortest path additive error at most δ Observation (1 + ε) approximation when q is in an annulus q t s radius ratio=poly(ρ, n, 1/ε) Answering queries within the annulus Additively weighted Voronoi diagram s Answering queries within the annulus Additively weighted Voronoi diagram s Weight= cost of approximate shortest path Answering queries within the annulus Additively weighted Voronoi diagram s q Weight= cost of approximate shortest path Answering queries within the annulus Additively weighted Voronoi diagram s q Weight= cost of approximate shortest path Answering queries within the annulus Additively weighted Voronoi diagram s q Weight= cost of approximate shortest path Answering queries within the annulus Additively weighted Voronoi diagram s q Weight= cost of approximate shortest path Overview For each vertex vi , we construct a data structure for the annulus with radius ri = d(s, vi )/2ρ and Ri =poly(ρ, n, 1/ε)d(s, vi ) Overview For each vertex vi , we construct a data structure for the annulus with radius ri = d(s, vi )/2ρ and Ri =poly(ρ, n, 1/ε)d(s, vi ) q vi s ri Ri Overview For each vertex vi , we construct a data structure for the annulus with radius ri = d(s, vi )/2ρ and Ri =poly(ρ, n, 1/ε)d(s, vi ) q vi s ri Ri We handle the neighborhood of s through scaling Overview For each vertex vi , we construct a data structure for the annulus with radius ri = d(s, vi )/2ρ and Ri =poly(ρ, n, 1/ε)d(s, vi ) q vi We handle the neighborhood of s through scaling s ri Ri We handle the empty space (if any) through scaling and perturbation Close range queries v1 q s Close range queries q0 q s v1 Close range queries q0 q s v1 Close range queries q0 q s v1 Between two annuli q s Between two annuli q s Between two annuli Perturbation ϕ maps black points 7→ blue points and q 7→ q 0 q q0 s Between two annuli Find approx shortest path in data structure for the blue subdivision q q0 s Between two annuli Find approx shortest path in data structure for the blue subdivision Clip the path q q0 s Between two annuli Find approx shortest path in data structure for the blue subdivision Clip the path Apply ϕ−1 q q0 s Between two annuli Find approx shortest path in data structure for the blue subdivision Clip the path Apply ϕ−1 q q s 0 Go straight to s Conclusion We can also handle obstacles Conclusion We can also handle obstacles 2 point queries? Conclusion We can also handle obstacles 2 point queries?
© Copyright 2025 Paperzz