Multiway Simple Cycle Separators and I/O-Efficient Algorithms for Planar Graphs

We revisit I/O-efficient solutions to a number of fundamental problems on planar graphs: single-source shortest paths, topological sorting, and computing strongly connected components. Existing I/O-efficient solutions to these problems pay for I/O efficiency using excessive computation time in internal memory, thereby completely negating the performance gain achieved by minimizing the number of disk accesses. In this paper, we show how to make these algorithms simultaneously efficient in internal and external memory so they achieve I/O complexity O(sort(N)) and take O(N log N) time in internal memory, where sort(N) is the number of I/Os needed to sort N items in external memory. The key, and the main technical contribution of this paper, is a multiway version of Miller's simple cycle separator theorem. We show how to compute these separators in linear time in internal memory, and using O(sort(N)) I/Os and O(N log N) (internal-memory computation) time in external memory.

[1]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[2]  R. Tarjan,et al.  A Separator Theorem for Planar Graphs , 1977 .

[3]  Francis Y. L. Chin,et al.  Efficient parallel algorithms for some graph problems , 1982, CACM.

[4]  Gary L. Miller,et al.  Finding Small Simple Cycle Separators for 2-Connected Planar Graphs , 1986, J. Comput. Syst. Sci..

[5]  Greg N. Frederickson,et al.  Fast Algorithms for Shortest Paths in Planar Graphs, with Applications , 1987, SIAM J. Comput..

[6]  Edward F. Grove,et al.  External-memory graph algorithms , 1995, SODA '95.

[7]  Hristo Djidjev,et al.  Linear Algorithms for Partitioning Embedded Graphs of Bounded Genus , 1996, SIAM J. Discret. Math..

[8]  Philip N. Klein,et al.  Faster Shortest-Path Algorithms for Planar Graphs , 1997, J. Comput. Syst. Sci..

[9]  Norbert Zeh,et al.  An External Memory Data Structure for Shortest Path Queries , 1999, COCOON.

[10]  Norbert Zeh,et al.  I/O-optimal algorithms for planar graphs using separators , 2002, SODA '02.

[11]  Norbert Zeh,et al.  I/O-efficient strong connectivity and depth-first search for directed planar graphs , 2003, 44th Annual IEEE Symposium on Foundations of Computer Science, 2003. Proceedings..

[12]  Norbert Zeh,et al.  I/O-efficient topological sorting of planar DAGs , 2003, SPAA '03.

[13]  Lars Arge,et al.  Simplified External Memory Algorithms for Planar DAGs , 2004, SWAT.

[14]  Lars Arge,et al.  On external-memory MST, SSSP and multi-way planar graph separation , 2004, J. Algorithms.

[15]  Philip N. Klein,et al.  Multiple-source shortest paths in planar graphs , 2005, SODA '05.

[16]  Jeffrey Scott Vitter,et al.  Algorithms and Data Structures for External Memory , 2008, Found. Trends Theor. Comput. Sci..

[17]  Norbert Zeh,et al.  I/O-Efficient Planar Separators , 2008, SIAM J. Comput..

[18]  Philip N. Klein,et al.  Shortest paths in directed planar graphs with negative lengths: A linear-space O(n log2 n)-time algorithm , 2010, TALG.