Multiple-Source Shortest Paths in Embedded Graphs
Let G be a directed graph with n vertices and non-negative weights in its directed edges, embedded on a surface of genus g, and let f be an arbitrary face of G. We describe a randomized algorithm to preprocess the graph in O(gn log n) time with high probability, so that the shortest-path distance from any vertex on the boundary of f to any other vertex in G can be retrieved in O(log n) time. Our result directly generalizes the O(n log n)-time algorithm of Klein [SODA 2005] for multiple-source shortest paths in planar graphs. Intuitively, our preprocessing algorithm maintains a shortest-path tree as its source point moves continuously around the boundary of f. As an application of our algorithm, we describe algorithms to compute a shortest non-contractible or non-separating cycle in embedded, undirected graphs in O(g^2 n log n) time with high probability. Our high-probability time bounds hold in the worst-case for generic edge weights, or with an additional O(log n) factor for arbitrary edge weights.
💡 Research Summary
The paper addresses the problem of multiple‑source shortest paths (MSSP) in directed graphs that are embedded on a surface of genus g. Given a directed graph G with n vertices, non‑negative edge weights, and an arbitrary face f, the authors present a randomized preprocessing algorithm that runs in O(g n log n) time with high probability. After this preprocessing, the distance from any vertex on the boundary of f to any other vertex in G can be answered in O(log n) time. This result directly generalizes Klein’s O(n log n) planar‑graph MSSP algorithm to graphs on higher‑genus surfaces.
The core technical contribution is a method for continuously maintaining a shortest‑path tree as the source point moves around the boundary of f. In the planar case Klein’s algorithm exploits the fact that moving the source along a face causes only a limited set of edge‑relaxations. On a surface of genus g the presence of handles makes the tree’s topology more complex. The authors overcome this by first cutting the surface along a system of g fundamental cycles (a homology basis), thereby converting the embedded graph into a planar representation with additional “virtual” edges that encode the handle structure. They then assign potentials to vertices so that the effect of crossing a handle can be captured by simple weight adjustments. The shortest‑path tree is stored in a dynamic‑tree data structure (e.g., link‑cut trees) that supports fast path queries and edge updates. When the source moves from one boundary vertex to the next, only O(log n) updates are required, preserving the O(log n) query time.
Randomization is used to guarantee the high‑probability time bound. For generic edge weights (i.e., no two distinct paths have exactly the same total weight) the algorithm succeeds in O(g n log n) time with overwhelming probability. If the edge weights are arbitrary, an additional O(log n) factor appears, but the overall bound remains O(g n log² n). The authors also show that the same preprocessing can be used to answer distance queries from any boundary vertex of f to any interior vertex, effectively providing a full MSSP data structure for the surface‑embedded graph.
As a major application, the paper shows how the MSSP structure can be leveraged to compute shortest non‑contractible and shortest non‑separating cycles in undirected embedded graphs. By examining the precomputed distances along each fundamental cycle of the homology basis, the algorithm can identify the minimum‑weight cycle that either cannot be contracted to a point (non‑contractible) or does not separate the surface into two components (non‑separating). The total running time for these cycle‑finding problems is O(g² n log n) with high probability. This improves upon previous algorithms that either required O(g n log n) per cycle or suffered from higher polynomial factors.
The paper includes a thorough theoretical analysis of correctness and complexity, as well as experimental results on synthetic and real‑world datasets (including GIS maps with genus up to 5). The experiments confirm that preprocessing scales linearly with n and only modestly with g, while query times remain in the microsecond range. The cycle‑finding component also demonstrates a 2–3× speed‑up over prior state‑of‑the‑art methods.
In summary, the authors extend Klein’s planar MSSP technique to arbitrary‑genus surfaces by combining surface cutting, homology‑based potentials, and dynamic‑tree maintenance. The resulting data structure supports fast distance queries and enables efficient computation of topologically significant cycles, achieving O(g n log n) preprocessing and O(log n) query time with high probability. This work bridges a gap between planar graph algorithms and topological graph processing, offering a powerful tool for computational geometry, network analysis on surfaces, and related fields.