Skip to main content
Log in

An adaptive and cost-optimal parallel algorithm for minimum spanning trees

Ein adaptiver und kostenoptimaler Parallel-Algorithmus für Minimalgerüste

  • Short Communications
  • Published:
Computing Aims and scope Submit manuscript

Abstract

A parallel algorithm is described for computing the minimum spanning tree of an undirected, connected and weighted graph withn vertices. We assume a shared-memory single-instruction-stream, multiple-data-stream model of computation which does not allow read or write conflicts. The algorithm is adaptive in the sense that it usesn 1−e processors and runs inO(n 1+e) time wheree lies between 0 and 1 and depends on the number of available processors. In view of the obvious Ω(n 2) lower bound on the number of operations required to compute a minimum spanning tree, the algorithm is also cost-optimal.

Zusammenfassung

Wir beschreiben einen Parallel-Algorithmus, der ein Minimalgerüst für einen ungerichteten, zusammenhängenden bewerteten Graphen mitn-Knoten ermittelt. Das zugrunde liegende Rechnermodell ist ein Mehrprozessorsystem mit gemeinsamem Speicher, das vielfachen Datentransfer erlaubt und von einer einzigen Zentraleinheit kontrolliert wird. Lese- oder Schreibkonflikte des Systems sollen ausgeschlossen sein. — Der Algorithmus paßt sich an die Zahl der verfügbaren Prozessoren an. Mitn 1−e-Prozessoren läuft er in der ZeitO(n 1+e), wobeie zwischen null und eins liegt. Der Algorithmus ist kostenoptimal, da die Berechnung des Minimalgerüsts Ω(n 2) Operationen benötigt.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

References

  1. Horowitz, E., Sahni, S.: Fundamentals of Computer Algorithms, pp. 174–183. Rockville, Maryland: Computer Science Press 1978.

    Google Scholar 

  2. Levitt, K. N., Kautz, W. H.: Cellular arrays for the solution of graph problems. Communications of the ACM15, 789–801 (1972).

    Google Scholar 

  3. Goodman, S. E., Hedetniemi, S. T.: Introduction to the Design and Analysis of Algorithms, pp. 265–269. New York: McGraw-Hill 1977.

    Google Scholar 

  4. Savage, C.: Parallel Algorithms for Graph Theoretic Problems. Ph. D. Thesis, CSL Report ATC-4, Coordinated Science Laboratory, University of Illinois, August 1977.

  5. Ja'Ja', J.: Graph connectivity problems on parallel computers. Technical Report CS-78-05, Department of Computer Science, Pennsylvania State University, University Park, Pennsylvania, 1978.

    Google Scholar 

  6. Bentley, J. L.: A parallel algorithm for constructing minimum spanning trees. Journal of Algorithms1, 51–59 (1980).

    Google Scholar 

  7. Deo, N., Yoo, Y. B.: Parallel algorithms for the minimum spanning tree problem. Proceedings of the 1981 International Conference of Parallel Processing, Bellaire, Michigan, August 1981, pp. 188–189. (See also Technical Report CS-81-072, Computer Science Department, Washington State University, Pullman, Washington, March 1981.)

  8. Savage, C.: A systolic data structure chip for connectivity problems. In: VLSI systems and computations (Kung, H. T., Sproull, R., Steele, G., eds.). Rockville, Maryland: Computer Science Press 1981.

    Google Scholar 

  9. Savage, C., Ja'Ja', J.: Fast, efficient parallel algorithms for some graph problems. SIAM Journal of Computing10, 682–691 (1981).

    Google Scholar 

  10. Chin, F. Y., Lam, J., Chen, I.-N.: Efficient parallel algorithms for some graph problems. Communications of the ACM25, 659–665 (1982).

    Google Scholar 

  11. Hambrusch, S. E.: The Complexity of Graph Problems on VLSI. Ph.D. Dissertation, Department of Computer Science, Pennylvania State University, University Park, Pennsylvania, 1982.

    Google Scholar 

  12. Hirschberg, D. S.: Parallel graph algorithms without memory conflicts. Proceedings of the 20th Annual Allerton Conference on Communication, Control, and Computing, Monticello, Illinois, October 1982, pp. 257–263.

  13. Kucera, L.: Parallel computation and conflicts in memory access. Information Processing Letters14, 93–96 (1982).

    Google Scholar 

  14. Nath, D., Maheshwari, S. N.: Parallel algorithms for the connected components and minimal spanning tree problems. Information Processing Letters14, 7–11 (1982).

    Google Scholar 

  15. Reif, J. H., Spirakis, P.: The expected time complexity of parallel graph and digraph algorithms. Technical Report RT-11-82, Aiken Computation Laboratory, Harvard University, 1982.

  16. Atallah, M. J.: Algorithms for VLSI Networks of Processors. Ph.D. Dissertation, Department of Electrical Engineering and Computer Science, The Johns Hopkins University, Baltimore, Maryland, 1983.

    Google Scholar 

  17. Awerbuch, B., Shiloach, Y.: New connectivity and MSF algorithms for ultracomputer and PRAM. Proceedings of the 1983 International Conference on Parallel Processing, Bellaire, Michigan, August 1983, pp. 175–179.

  18. Gallager, R. G., Humblet, P. A., Spira, P. M.: A distributed algorithm for minimum-weight spanning trees. ACM Transactions on Programming Languages and Systems5, 66–77 (1983).

    Google Scholar 

  19. Hirschberg, D. S., Volper, D. J.: A parallel solution for the minimum spanning tree problem. Proceedings of the 17th Annual Conference on Information Sciences and Systems, Baltimore, Maryland, March 1983, pp. 680–684.

  20. Hochschild, P. H., Mayr, E. W., Siegel, A. R.: Techniques for solving graph problems in parallel environments. Proceedings of the 24th Annual Symposium on Foundations of Computer Science, Tucson, Arizona, November 1983, pp. 351–359.

  21. Megiddo, N.: Applying parallel computation algorithms in the design of serial algorithms. Journal of the ACM30, 852–865 (1983).

    Google Scholar 

  22. Nath, D., Maheshwari, S. N., Bhatt, P. C. P.: Efficient VLSI networks for parallel processing based on orthogonal trees. IEEE Transactions on Computers C-32, 569–581(1983).

    Google Scholar 

  23. Yoo, Y. B.: Parallel Processing for Some Network Optimization Problems. Ph.D. Thesis, Department of Computer Science, Washington State University, Pullman, Washington, 1983.

    Google Scholar 

  24. Atallah, M. J., Kosaraju, S. R.: Graph problems on a mesh-connected processor array. Journal of the ACM31, 649–667 (1984).

    Google Scholar 

  25. Quinn, M. J., Deo, N.: Parallel graph algorithms. Technical Report CS-82-098, Computer Science Department, Washington State University, Pullman, Washington, April 1984.

    Google Scholar 

  26. Kwan, S. C.,Ruzzo, W. L.: Adaptive parallel algorithms for finding minimum spanning trees. Proceedings of the 1984 International Conference on Parallel Processing, Bellaire, Michigan, August 1984, pp. 439–443.

  27. Flynn, M. J.: Very high-speed computing systems. Proceedings of the IEEE54, 1901–1909 (1966).

    Google Scholar 

  28. Hirschberg, D. S.: Fast parallel sorting algorithms. Communications of the ACM21, 657–661 (1978).

    Google Scholar 

  29. Akl, S. G.: An optimal algorithm for parallel selection. Information Processing Letters19, 47–50 (1984).

    Google Scholar 

  30. Akl, S. G.: Optimal parallel algorithms for computing convex hulls and for sorting. Computing33, 1–11 (1984).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was supported by the Natural Sciences and Engineering Research Council of Canada under grant NSERC-A3336 (Technical Report No. 85-164).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Akl, S.G. An adaptive and cost-optimal parallel algorithm for minimum spanning trees. Computing 36, 271–277 (1986). https://doi.org/10.1007/BF02240073

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02240073

CR Categories and Subject Descriptors

General term

Key words

Navigation