Abstract
Basic Parallel Algorithms in Graph Theory. We discuss some of the more common machine models for parallel computation and their variants, as well as some relevant basic results from parallel complexity theory. We then describe a few of the very basic and fundamental “tricks” and techniques to obtain efficient parallel algorithms. Finally, we survey work on parallel algorithms for a number of graph theoretic problems.
AMS Subject Classifications: 68E10, 68Q10.
Zusammenfassung
Fundamentale Parallelalgoritbmeo in der Grapbeotbeorie. Wir diskutieren einige der gebrätuchlicheren Maschinenmodelle und ihre Varianten für Parallelrechnung, sowie einige wichtige und grundlegende Resultate aus der parallelen Komplexitätstheorie. Anschließend beschreiben wir eine Auswahl von elementaren und wichtigen “Tricks” und Methoden für effiziente parallele Algorithmen. Zum Schiuß geben wir einen Überblick über parallele Algorithmen für eine Reihe graphentheoretischer Probleme.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
K. Abrahamson and N. Dadoun and D. G. Kirkpatrick and T. Przytycka. A simple parallel tree contraction algorithm. Technical Report 87–30, Department of Computer Science, University of British Columbia, Vancouver; August 1987.
A. Aggarwal and R. J. Anderson. A random NC algorithm for depth first search. Combinatorica, 8(1): 1–12, 1988.
A. Aggarwal and R. J. Anderson and M.-Y. Kao. Parallel depth-first search in general directed graphs. In Proceedings of the 21st Annual ACM Symposium on Theory of Computing (Seattle, Washington, May 15–17, 1989), pages 297–308, 1989.
A. V. Aho and J. E. Hopcroft and J. D. Ullman. The design and analysis of computer algorithms. Addison-Wesley 1974.
N. Alon and L. Babai and A. Itai. A fast and simple randomized parallel algorithm for the maximal independent set problem. J. Algorithms, 7(4): 567–583, 1986.
R. Anderson and E. W. Mayr. Parallelism and the maximal path problem. Inf. Process. Lett., 24 (2): 121–126, 1987..
R. J. Anderson and G. L. Miller. Deterministic parallel list ranking. In Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 81–90, 1988.
Arvind, et al. The Tagged Token Date Flow Architecture. Technical Memo 229, Laboratory of Computer Science, MIT, 1983.
M. Atallah and U. Vishkin. Finding Euler tours in parallel. J. Comput. Syst. Sci., 29(3): 330–337, 1984.
B. Awerbuch and A. Israeli and Y. Shiloach. Finding Euler circuits in logarithmic parallel time. In Proceedings of the 16th Ann. ACM Symposium on Theory of Computing (Washington, D. C), pages 249–257, 1984.
B. Awerbuch and Y. Shiloach. New connectivity and MSF algorithms for shuffle-exchange network and PRAM. IEEE Trans. Comput., C-36 (10): 1158–1163, 1987.
F. Bauernöppel and H. Jung. Fast parallel vertex colouring. In L. Budach, editor, Proceedings of the International Conference on Fundamentals of Computation Theory (Cottbus, GDR), pages 28–35. LNCS 199, Berlin, Heidelberg, New York, Tokyo: Springer-Verlag, 1985.
A. A. Bertpssi and M. A. Bonucelli. Some parallel algorithms on interval graphs. Discrete Appl. Math., 76: 101–111, 1987.
A. Borodin. On relating time and space to size and depth. SIAM J. Comput, 6(4): 733–744, 1977.
J. F. Boyar and H. J. Karloff. Coloring planar graphs in parallel. J. Algorithms, S(4):470–479, 1987.
A. Chandra, D. Kozen, and L. Stockmeyer. Alternation. J. ACM, 28(1): 114–133, 1981.
A. K. Chandra and L. J. Stockmeyer and U. Vishkin. A complexity theory for unbounded fan-in parallelism. In Proceedings of the 23rd Ann. IEEE Symposium on Foundations of Computer Science (Chicago, IL), pages 1–13, 1982.
N. Chandrasekharan and S. S. Iyengar. NC algorithms for recognizing chordal graphs and k-trees. Technical Report 86–020, Department of Computer Science, Louisiana State University, 1986.
F. Y. Chin and J. Lam and I. Chen. Efficient parallel algorithms for some graph problems. Commun. ACM, 25(9): 659–665, 1982.
M. Chrobak and M. Yung. Fast parallel and sequential algorithms for edge-coloring planar graphs (extended abstract). In J. H. Reif, editor, Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 11–23. LNCS 319, New York, Berlin, Heidelberg: Springer-Verlag, 1988.
R. Cole. Parallel merge sort. In Proceedings of the 27th Ann. IEEE Symposium on Foundations of Computer Science (Toronto, Canada), pages 511–516, 1986.
R. Cole and U. Vishkin. Deterministic coin tossing with applications to optimal parallel list ranking. Inf. Control, 70(1):32–53, 1986.
R. Cole and U. Vishkin. Approximate and exact parallel scheduling with applications to list, tree, and graph problems. In Proceedings of the 27th Ann. IEEE Symposium on Foundations of Computer Science (Toronto, Canada), pages 478–491, 1986.
R. Cole and U. Vishkin. Optimal parallel algorithms for expression tree evaluation and list ranking. In Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 91–100 1988.
R. Cole and U. Vishkin. Faster optimal parallel prefix sums and list ranking. Inf. Comput., 81 (3): 334–352, 1989.
E. Dahlhaus and M. Karpinski. The matching problem for strongly chordal graphs is in NC. Technical Report 855, Institut für Informatik, Universitat Bonn, 1986.
E. Dahlhaus and M. Karpinski. Parallel construction of perfect matchings and Hamiltonian cycles on dense graphs. Technical Report. Institut für Informatik, Universitat Bonn, 1987.
J. Dennis. Data Flow Supercomputers. Computer, 18:42–56, 1980.
D. M. Eckstein. Simultaneous memory access. Technical Report TR-79–6, Computer Science Department, Iowa State University, Ames, Iowa, 1979.
A. Edenbrandt. Chordal graph recognition is in NC. Inf. Process. Lett., 24: 239–241, 1987.
S. Fortune and J. Wyllie. Parallelism in random access machines. In Proceedings of the 10th Ann. ACM Symposium on Theory of Computing (San Diego, CA), pages 114–118, 1978.
D. Fussel and V. Ramachandran and R. Thurimella. Finding triconnected components by local replacements. In G. Ausiello, M. Dezani-Ciancaglimi, S. Ronchi Delia Rocca, editors, Proceedings of the 16th International Colloquium on Automata, Languages and Programming (Stresa, Italy, July 1989), pages 379–393. LNCS 372, Berlin Heidelberg New York: Springer-Verlag, 1989.
Z. Galil. Sequential and parallel algorithms for finding maximum matchings in graphs. Ann. Rev. Comput. Sci., 1: 197–224, 1986.
H. Gazit. An optimal randomized parallel algorithm for finding connected components in a graph. In Processings of the 27th Ann. IEEE Symposium on Foundations of Computer Science (Toronto, Canada), pages 492–501, 1986.
H. Gazit and G. L. Miller and S.-H. Teng. Optimal tree contraction in the EREW model. In Tewksbury, Stuart K. and Bradley W. Dickinson and Stuart C. Schwartz, editors, Concurrent Computations: Algorithms, Architecture, and Technology, pages 139–156, Plenum Press, 1988.
A. M. Gibbons and A. Israeli and W. Rytter. Parallel O(logn) time edge-colouring of trees and Halin graphs. Inf. Process. Lett., 27 (1): 43–51, 1988.
A. Gibbons and W. Rytter. A fast parallel algorithm for optimal edge-colouring of outerplanar graphs. Research Report RR80, Department of Computer Science, University of Warwick, 1986.
A. Gibbons and W. Rytter. An optimal parallel algorithm for dynamic expression evaluation and its applications. In Proceedings of the Symposium on Foundations of Software Technology and Theoretical Computer Science, pages 453–469, 1986.
A. V. Goldberg and S. A. Plotkin. Parallel (Delta + l)-coloring of constant-degree graphs. Inf. Process. Lett., 25 (4): 241–245, 1987.
A. Goldberg and S. Plotkin and G. Shannon. Parallel symmetry-breaking in sparse graphs. In Proceedings of the 19th Annual ACM Symposium on Theory of Computing (New York City, May 25–27, 1987), pages 315–324, 1987.
M. Goldberg and T. Spencer. A new parallel algorithm for the maximal independent set problem. SIAM J. Comput., 18 (2): 419–427, 1989.
L. Goldschlager. The monotone and planar circuit value problems are log-space complete for 8P. SIGACT News, 9 (2): 25–29, 1977.
L. Goldschlager. A unified approach to models of synchronous parallel machines. In Proceedings of the 10th Ann. ACM Symposium on Theory of Computing (San Diego, CA), pages 89–94, 1978.
D. Y. Grigoriev and M. Karpinski. The matching problem for bipartite graphs with polynomially bounded permanents is in NC. In Proceedings of the 28th Ann. IEEE Symposium on Foundations of Computer Science (Los Angeles, CA, October 12–14, 1987), pages 166–172, 1987.
J. R. Guard and I. Watson and J. R. W. Glauert. A multi-layered data flow computer architecture. Technical Report, Univ. Manchester, 1978.
T. Hagerup and M. Chrobak and K. Diks. Optimal parallel 5-colouring of planar graphs. SIAM J. Comput., 18 (2): 288–300, 1989.
X. He. Efficient parallel and sequential algorithms for 4-coloring perfect planar graphs. Technical Report 87–14, Department of Computer Science, State University of New York at Buffalo, 1987.
X. He and Y. Yesha. Parallel recognition and decomposition of two terminal series parallel graphs. Inf. Comput., 75 (1): 15–38, 1987.
D. Helmbold and E. Mayr. Two processor scheduling is in NC. SIAM J. Comput., 16 (4): 747–759, 1987.
D. Helmbold and E. Mayr. Applications of parallel scheduling to perfect graphs. In Tinhofer, G., Schmidt, G., editors, Proceedings of the International Workshop WG ’86, Bernried, FRG, June 1986. Graph-Theoretic Concepts in Computer Science, pages 188–203. LNCS 246, Berlin Heidelberg: Springer-Verlag, 1987.
D. Helmbold and E. Mayr. Applications of parallel scheduling algorithms to families of perfect graphs. This issue
C. Hewitt and H. Baker. Laws for communicating parallel processes. AI Working Paper 134A, A. I. Laboratory, MIT, May 1977.
W. D. Hillis. The Connection Machine. MIT Press, Cambridge MA, 1985.
D. S. Hirschberg and A. K. Chandra and D. V. Sarwate. Computing connected components on parallel computers. Commun. ACM 22: 461–464, 1979.
A. Israeli and A. Itai. A fast and simple randomized parallel algorithm for maximal matching. Inf. Process. Lett., 22 (2): 77–80, 1986.
A. Israeli and Y. Shiloach. An improved parallel algorithm for maximal matching. Inf. Process. Lett. 22 (2): 57–60, 1986.
A. Kanevsky and V. Ramachandran. Improved algorithms for graph four-connectivity. In Proceedings of the 28th Ann. IEEE Symposium on Foundations of Computer Science (Los Angeles, CA, October 12–14, 1987), pages 252–259, 1987.
H. J. Karloff. A Las Vegas RNC algorithm for maximum matching. Combinatorica, 6(4): 387–392, 1986.
H. J. Karloff and D. B. Shmoys. Efficient parallel algorithms for edge coloring problems. J. Algorithms, 8(1): 39–52, 1987.
R. M. Karp and E. Upfal and A. Wigderson. Constructing a perfect matching is in random NC. Combinatorica, 6 (1): 35–48, 1986.
R. M. Karp and A. Wigderson. A fast parallel algorithm for the maximal independent set problem. J. ACM, 32(4): 762–773, 1985.
P. N. Klein. Efficient parallel algorithms for chordal graphs. In Proceedings of the 29th Ann. IEEE Symposium on Foundations of Computer Science (White Plains, NY, October 24–26, 1988), pages 150–161, 1988.
P. N. Klein and J. H. Reif. An efficient parallel algorithm for planarity. In Proceedings of the 27th Ann. IEEE Symposium on Foundations of Computer Science (Toronto, Canada), pages 465–477, 1986.
D. E. Knuth. The art of computer programming, Vol. 3: Sorting and searching. Addison-Wesley, Reading, MA, 1973.
S. R. Kosaraju and A. L. Delcher. Optimal parallel evaluation of tree-structured computations by ranking (extended abstract). In J. H. Reif, editor, Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 101–110. LNCS 319, New York, Berlin, Heidelberg: Springer-Verlag, 1988.
V. Koubek and J. Krsnakova. Parallel algorithms for connected components in a graph. In L. Budach, editor, Proceedings of the International Conference on Fundamentals of Computation Theory (Cottbus, GDR), pages 208–217. LNCS 199, Berlin, Heidelberg, New York, Tokyo: Springer- Verlag, 1985.
D. Kozen and U. V. Vazirani and V. V. Vazirani. NC algorithms for comparability graphs, interval graphs and testing for unique perfect matching. In Proceedings Fifth Conference on Foundations of Software Technology and Theoretical Computer Science, pages 496–503. LNCS 206, Berlin-Heidelberg-New York: Springer-Verlag,1985.
L. Kucera. Parallel computation and conflicts in memory access. Inf. Process. Lett., 14(2): 93–96, 1982.
R. Ladner. The circuit value problem is log-space complete for P. SIGACT News, 7(1): 583–590, 1975.
R. Ladner and M. Fischer. Parallel prefix computation. J. ACM, 27(4): 831–838, 1980.
C. E. Leiserson. Area-efficient graph layouts (for VLSI). In Proceedings of the 21st Ann. IEEE Symposium on Foundations of Computer Science, pages 270–281, 1980.
G. Lev and N. Pippenger and L. G. Valiant. A fast parallel algorithm for routing in permutation networks. IEEE Trans. Comput., C-30 (2): 93–100, 1981.
L. Lovász. Computing ears and branchings in parallel. In Proceedings of the 26th Ann. IEEE Symposium on Foundations of Computer Science (Portland, OR), pages 464–467, 1985.
M. Luby. A simple parallel algorithm for the maximal independent set problem. SIAM J. Comput., 5 (4): 1036–1042, 1986.
Y. Maon and B. Schieber and U. Vishkin. Parallel ear decomposition search (EDS) and stnumbering in graphs. Theor. Comput. Sci., 47 (3): 277–298, 1986.
C. A. Mead and L. A. Conway. Introduction to VLSI systems. Reading, Mass.: Addison-Wesley, 1980.
R. Metcalfe and D. Boggs. Ethernet: Distributed packet switching for local computer networks. Commun. ACM, 79: 395–404. 1976.
G. L.Miller and V. Ramachandran. Efficient parallel ear decomposition with applications. Manuscript, MSRI, Berkeley, 1986.
G. L. Miller and V. Ramachandran. A new graph triconnectivity algorithm and its parallelization. In Proceedings of the 19th Annual ACM Symposium on Theory of Computing (New York City, May 25–27, 1987), pages 335–344, 1987.
G. Miller and J. Reif. Parallel tree contraction and its application. In Proceedings of the 26th Ann. IEEE Symposium on Foundations of Computer Science (Portland, OR), pages 478–489. 1985.
A. Moitra and R. Johnson. Parallel algorithms for maximum matching and other problems on interval graphs. Technical Report 88–927, Department of Computer Science, Cornell University, 1988.
K. Mulmuley and U. V. Vazirani and V. V. Vazirani. Matching is as easy as matrix inversion. Combinatorica, 7 (1): 105–120, 1987.
J. Naor. A fast parallel coloring of planar graphs with five colors. Inf. Process. Lett., 25 (1): 51–53, 1987.
J. Naor and M. Naor and A. A. Schäffer. Fast parallel algorithms for chordal graphs. SIAM J. Comput, 18 (2): 327–349, 1989.
D. Nath and S. N. Maheshwari. Parallel algorithms for the connected components and minimal spanning tree problems. Inf. Process. Lett., 74 (1): 7–11, 1982.
G. Pfister. The architecture of the IBM research parallel processor prototype (RP3). Technical Report RC 11210 Computer Science, IBM Yorktown Heights, 1985.
N. Pippenger. On simultaneous resource bounds. In Proceedings of the 20th Ann. IEEE Symposium on Foundations of Computer Science (San Juan, PR), pages 307–311, 1979.
V. Pratt and L. Stockmeyer. A characterization of the power of vector machines. J. Comput. Syst. Sci, 12: 198–221, 1976.
F. Preparata and J. Vuillemin. The cube-connected-cycles: A versatile network for parallel computation. In Proceedings of the 20th Ann. IEEE Symposium on Foundations of Computer Science (San Juan, PR), pages 140–147, 1979.
V. Ramachandran. Fast parallel algorithms for reducible flow graphs. In Tewksbury, Stuart K. and Bradley W. Dickinson and Stuart C. Schwartz, editors, Concurrent Computations: Algorithms, Architecture, and Technology, pages 117–138, Plenum Press, 1988.
V. Ramachandran and U. Vishkin. Efficient parallel triconnectivity in logarithmic time (extended abstract). In J. H. Reif, editor, Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 33–42. LNCS 319, New York, Berlin, Heidelberg: Springer-Verlag, 1988.
J. H. Reif. Depth-first search is inherently sequential. Inf. Process. Lett., 20 (5): 229–234, 1985.
W. L. Ruzzo. Tree-size bounded alternation. J. Comput. Syst. Sri., 21 (2): 218–235, 1980.
W. L. Ruzzo. On uniform circuit complexity. J. Comput. Syst. Sci., 22 (3): 365–383, 1981.
C. Savage and J. Ja’Ja. Fast efficient parallel algorithms for some graph problems. SIAM J. Comput., 10 (4): 682–691, 1981.
B. Schieber and U. Vishkin. On finding lowest common ancestors: Simplification and parallelization (extended abstract). In J. H. Reif, editor, Proceedings of the 3rd Aegean Workshop on Computing: VLSI Algorithms and Architectures, AWOC 88. Corfu, Greece, June/July 1988, pages 111–123. LNCS 319, New York, Berlin, Heidelberg: Springer Verlag, 1988.
J. Schwartz. Ultracomputers. ACM Transactions on Programming Languages and Systems, 2 (4): 484–521, 1980.
C. Seitz. The cosmic cube. CACM, 28(1): 22–33, 1985.
H. J. Siegel. A model of SIMD machines and a comparison of various interconnection networks. IEEE Trans. Comput. C-28: 907–917, 1979.
J. R. Smith. Parallel algorithms for depth-first searches. I Planar graphs. SIAM J. Comput., 15 (3): 814–830, 1986.
L. J. Stockmeyer and U. Vishkin. Simulation of parallel random access machines by circuits. SIAM J. Comput., 13 (2): 409–422, 1984.
R. E. Tarjan. Efficiency of a good but not linear set union algorithm. J. ACM, 22: 215–225, 1975.
R. E. Tarjan and U. Vishkin. An efficient parallel biconnectivity algorithm. SIAM J. Comput., 14 (4): 862–874, 1985.
C. D. Thompson. Generalized connection networks for parallel processor interconnection. IEEE Trans. Comput, C-27: 1119–1125, 1978.
Y. H. Tsin and F. Y. Chin. Efficient parallel algorithms for a class of graph theoretic problems. SIAM J. Comput, 13(3): 580–599, 1984.
V. V. Vazirani. NC algorithms for computing the number of perfect matchings in K 3 3-free graphs and related problems. Technical Report, Computer Science Department, Cornell University, 1987.
U. Vishkin. Implementation of simultaneous memory address access in models that forbid it. J. Algorithms, 4 (1): 45–50, 1983.
I. Wegener. The complexity of Boolean functions. Stuttgart: B. G. Teubner; New York: Wiley, 1987.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1990 Springer-Verlag
About this chapter
Cite this chapter
Mayr, E.W. (1990). Basic Parallel Algorithms in Graph Theory. In: Tinhofer, G., Mayr, E., Noltemeier, H., Syslo, M.M. (eds) Computational Graph Theory. Computing Supplementum, vol 7. Springer, Vienna. https://doi.org/10.1007/978-3-7091-9076-0_4
Download citation
DOI: https://doi.org/10.1007/978-3-7091-9076-0_4
Publisher Name: Springer, Vienna
Print ISBN: 978-3-211-82177-0
Online ISBN: 978-3-7091-9076-0
eBook Packages: Springer Book Archive