Randomized Parallel Algorithms for Combinatorial Optimization

  • Sanguthevar Rajasekaran
  • José D. P. Rolim


In this paper we show some important randomization techniques for the parallel processing of discrete problems. In particular, we present several parallel randomized algorithms frequently used for sorting, packet routing, shortest paths problems, matching problems, depth first search, minimum cost spanning trees, and maximal independent set problems. We also discuss the connection between randomization and approximation, showing how randomization yields approximate solutions and we illustrate this connection by means of network flow problems.


Perfect Match Parallel Algorithm Weighted Graph Disjoint Path Queue Size 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Ajtai, J. Komlós and E. Szemerédi, An O(n log n) sorting network, Proc. 15th Annual ACM STOC, 1983, pp. 1–9.Google Scholar
  2. [2]
    N. Alon and J. H. Spencer, The Probabilistic Method, (WileyInterscience Publication, 1992 ).zbMATHGoogle Scholar
  3. [3]
    A. Aggarwal, R. J. Anderson, A random NC algorithm for depth first search, Proc. 19th Annual ACM STOC, 1987, pp. 325–334.Google Scholar
  4. [4]
    R. J. Anderson, A parallel algorithm for the maximal path problem, Combinatorica 7 (3), 1987, pp. 400–415.Google Scholar
  5. [5]
    L. Babai, F. L. Levin, and M. Szegedy, Checking computation in poly-logarithmic time, Proc. 23rd Annual ACM STOC, 1991, pp. 21–28.Google Scholar
  6. [6]
    K. E. Batcher, Sorting networks and their applications, Proc. Spring Joint Computer Conference 32, (AFIPS Press, 1968 ), pp. 307–314.Google Scholar
  7. [7]
    P. Beame and J. Hastad, Optimal bounds for decision problems on the CRCW PRAM, Proc. 19th Annual ACM STOC, 1987, pp. 83–93.Google Scholar
  8. [8]
    G. E. Blelloch, C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J. Smith, and M. Zagha, A comparison of sorting algorithms for the connection machine CM-2, Proc. 3rd Annual ACM Symposium on Parallel Algorithms and Architectures, 1991.Google Scholar
  9. [9]
    B. Bollobas, Random Graphs, (Academic Press, 1985 ).zbMATHGoogle Scholar
  10. [10]
    A. Clementi, L. Kucera, and J. Rolim, A note on parallel randomized algorithms for searching problems, to appear in DIMACS Series in Discrete Mathematics and Theoretical Computer Sciences, (American Mathematical Society, 1994 ).Google Scholar
  11. [11]
    E. Cohen, Polylog-time and near-linear work approximation scheme for undirected shortest paths, Proc. 26th Annual ACM STOC, 1994, pp. 16–26.Google Scholar
  12. [12]
    R. Cole, Parallel merge sort, SIAM J. Comp, 17 (4), 1988, pp. 770–785.CrossRefzbMATHGoogle Scholar
  13. [13]
    R. Cole, P. Klein, and R. Tarjan, Finding minimum spanning forests in logarithmic time and linear work using random sampling, Proc. Eighth Annual Symposium on Parallel Algorithms and Architectures, 1996, pp. 243–250.Google Scholar
  14. [14]
    D. Coppersmith, P. Raghavan, and M. Tompa, Parallel graph algorithms that are efficient on average, Proc. 28th Annual IEEE FOCS, 1987, pp. 260–269.Google Scholar
  15. [15]
    L. Csanky, Fast parallel matrix inversion algorithms, SIAM J. Comp 5, 1976, pp. 618–623.CrossRefzbMATHMathSciNetGoogle Scholar
  16. [16]
    R. E. Cypher and C. G. Plaxton, Deterministic sorting in nearly logarithmic time on the hypercube and related computers, Proc. 22nd Annual ACM STOC, 1990, pp. 193–203.Google Scholar
  17. [17]
    P. Erdos and A. Renyi, On random graphs I, Publ. Math. Debrecen 6, 1959, pp. 290–297.MathSciNetGoogle Scholar
  18. [18]
    L. R. Ford and D. R. Fulkerson, Flows in Networks, (Princeton University Press, 1962 ).zbMATHGoogle Scholar
  19. [19]
    W. D. Frazer and A. C. McKellar, Samplesort: a sampling approach to minimal storage tree sorting, Journal of the ACM, 17 (3), 1970, pp. 496–507.CrossRefzbMATHMathSciNetGoogle Scholar
  20. [20]
    Z. Galil, and V. Pan, Improved processor bounds for algebraic and combinatorial problems in RNC, Proc. 26th Annual IEEE FOCS, 1985, pp. 490–495.Google Scholar
  21. [21]
    R. K. Ghosh and G. P. Bhattacharjee, A parallel search algorithm for directed acyclic graphs, BIT 24, 1984, pp. 134–150.CrossRefzbMATHMathSciNetGoogle Scholar
  22. [22]
    R. Greenlaw, Polynomial completeness and parallel computation, in J. H. Reif (ed.) Synthesis of Parallel Algorithms, (Morgan-Kaufmann Publishers, 1993 ).Google Scholar
  23. [23]
    J. Gil, Y. Matias, and U. Vishkin, Towards a theory of nearly constant time parallel algorithms, Proc. 32nd Annual IEEE FOCS, 1991, pp. 698–710.Google Scholar
  24. [24]
    W. L. Hightower, J. F. Prins, and J. H. Reif, Implementation of randomized sorting on large parallel machines, Proc. 4th Annual ACM Symposium on Parallel Algorithms and Architectures, 1992, pp. 158–167.Google Scholar
  25. [25]
    C. A. R. Hoare, Quicksort, Computer Journal 5, 1962, pp. 10–15.CrossRefzbMATHMathSciNetGoogle Scholar
  26. [26]
    E. Horowitz, S. Sahni, and S. Rajasekaran, Computer Algorithms, (W. H. Freeman Press, 1998 ).Google Scholar
  27. [27]
    J. Já Já, An Introduction to Parallel Algorithms, (Addison-Wesley Publishers, 1992 ).Google Scholar
  28. [28]
    C. Kaklamanis and D. Krizanc, Optimal sorting on mesh-connected processor arrays, Proc. 4th Annual ACM Symposium on Parallel Algorithms and Architectures, 1992, pp. 50–59.Google Scholar
  29. [29]
    D. R. Karger, P. N. Klein, and R. E. Tarjan, A randomized linear-time algorithm to find minimum spanning trees, Journal of the ACM 42 (2), 1995, pp. 321–328.CrossRefzbMATHMathSciNetGoogle Scholar
  30. [30]
    R. M. Karp and A. Wigderson, A fast parallel algorithm for the maximal independent set problem, Journal of the ACM 32, 1985, pp. 762–773.CrossRefzbMATHMathSciNetGoogle Scholar
  31. [31]
    R. M. Karp, E. Upfal, and A. Wigderson, Constructing a maximum matching is in random NC. Combinatorica 6(1), 1986, pp. 35–48. A preliminary version also appeared in Proc. 17th Annual ACM STOC,1985.CrossRefzbMATHMathSciNetGoogle Scholar
  32. [32]
    R. M. Karp and V. Ramachandran, Parallel algorithms for shared-memory machines, in J. van Leeuwen (ed.) Handbook of Theoretical Computer Science, ( Elsevier Science, 1990 ), Vol. A, Chapter 17.Google Scholar
  33. [33]
    R. Karp, An introduction to randomized algorithms, Discr. Appl. Math 34, 1991, pp. 165–201.CrossRefzbMATHMathSciNetGoogle Scholar
  34. [34]
    M. Kaufmann, S. Torsten, and J. Sibeyn, Derandomizing algorithms for routing and sorting on meshes, Proc. 5th Annual ACM SIAM Symposium on Discrete Algorithms, 1994, pp. 669–679.Google Scholar
  35. [35]
    D. Kavvadias, G. E. Pantziou, P. G. Spirakis, and C. D. Zaroliagis, Hammock-on-ears decomposition: a technique for the efficient parallel solution of shortest paths and other problems, Proc. 19th MFCS, LNCS 841, 1994, pp. 462–472.MathSciNetGoogle Scholar
  36. [36]
    P. N. Klein and S. Sairam, A parallel randomized approximation scheme for shortest paths, Proc. 24th Annual ACM STOC, 1992, pp. 750–758.Google Scholar
  37. [37]
    P. N. Klein and S. Sairam, A linear-processor polylog-time algorithm for shortest paths in planar graphs, Proc. 34th Annual IEEE FOCS, 1994, pp. 259–270.Google Scholar
  38. [38]
    L. Kučera, Expected behavior of graph coloring algorithms, Proc. Fundamentals in Computation Theory, LNCS 56, 1984, pp. 447–451.Google Scholar
  39. [39]
    M. Kunde, Block gossiping on grids and tori: sorting and routing match the bisection bound deterministically, Proc. European Symposium on Algorithms, 1993, pp. 272–283.Google Scholar
  40. [40]
    T. Leighton, Introduction to Parallel Algorithms and Architectures: Arrays-Trees-Hypercube, (Morgan-Kaufmann Publishers, 1992 ).Google Scholar
  41. [41]
    T. Leighton, Tight bounds on the complexity of parallel sorting, IEEE Transactions on Computers C34 (4), 1985, pp. 344–354.CrossRefzbMATHMathSciNetGoogle Scholar
  42. [42]
    L. Lovasz, On determinants, matchings and random algorithm, in L. Budach (ed.) Fundamentals of Computing Theory, ( Berlin, AkademiaVerlag, 1979 ).Google Scholar
  43. [43]
    M. Luby, A simple parallel algorithm for the maximal independent set problem, SIAM J. Comp. 15, 1986, pp. 1036–1053. (Also in Proc. 17th Annual ACM STOC).Google Scholar
  44. [44]
    Y. Ma, S. Sen, and D. Scherson, The distance bound for sorting on mesh connected processor arrays is tight, Proc. 26th Annual IEEE FOCS, 1986, pp. 255–263.Google Scholar
  45. [45]
    S. Micali and V. V. Vazirani, An \(O(\sqrt {\left| V \right|} \left| E \right|)\)algorithm for finding maximum matching in general graphs, Proc. 21st Annual IEEE FOCS, 1980, pp. 17–27.Google Scholar
  46. [46]
    K. Mulmuley, U. V. Vazirani, and V. V. Vazirani, Matching is as easy as matrix inversion, Combinatorica 7, 1987, pp. 105–113. (Also in Proc. 19th Annual ACM STOC, 1987, pp. 345–354.)Google Scholar
  47. [47]
    D. Nassimi and S. Sahni, Parallel permutation and sorting algorithms and a new generalized connection network, Journal of the ACM 29 (3), 1982, pp. 642–667.CrossRefzbMATHMathSciNetGoogle Scholar
  48. [48]
    M. Nigam and S Sahni, Sorting n2 numbers on n x n meshes, Proc. International Parallel Processing Symposium, 1993, pp. 73–78.Google Scholar
  49. [49]
    S. Nikoletseas, K. Palem, P. Spirakis, and M. Yung, Short vertex disjoint paths and multiconnectivity in random graphs: reliable networks for computing, Proc. 21st ICALP, LNCS, 1994, pp. 508–519.Google Scholar
  50. [50]
    V. Pan, Fast and efficient algorithms for the exact inversion of integer matrices, Proc. Fifth Annual Symposium on Foundations of Software Technology and Theoretical Computer Science, 1985, pp. 504–521.Google Scholar
  51. [51]
    G. Pantziou, P. Spirakis, and C. Zaroliagis, Coloring random graphs efficiently in parallel through adaptive techniques, CTI TR-90.10.25, Comp. Techn. Institute, Patras. Also presented in the ALCOM Workshop on Graphs Algorithms, Data Structures and Computational Geometry, Berlin, October, 1990.Google Scholar
  52. [52]
    P. M. Pardalos, S. Rajasekaran, editors, Advances in Randomized Parallel Computing, (Kluwer Academic Press, 1998 ).Google Scholar
  53. [53]
    F. Preparata, New parallel sorting schemes, IEEE Transactions on Computers C27 (7), 1978, pp. 669–673.CrossRefzbMATHMathSciNetGoogle Scholar
  54. [54]
    P. Raghavan and C. D. Thompson, Provably good routing in graphs: regular arrays, Proc. 17th Annual ACM STOC, 1985, pp. 79–87.Google Scholar
  55. [55]
    S. Rajasekaran, A simple parallel sorting algorithm, Technical Report 26, Dept. of CISE, University of Florida, 1997.Google Scholar
  56. [56]
    S. Rajasekaran, Basic algorithms on parallel optical models of computing, in P. M. Pardalos (ed.) Parallel Processing of Discrete Problems, (Springer-Verlag, 1998 ).Google Scholar
  57. [57]
    S. Rajasekaran, kk routing, kk sorting, and cut through routing on the mesh, Journal of Algorithms 19, 1995, pp. 361–382.CrossRefzbMATHMathSciNetGoogle Scholar
  58. [58]
    S. Rajasekaran, Sorting and selection on interconnection networks, DI-MACS Series in Discrete Mathematics and Theoretical Computer Science 21, 1995, pp. 275–296.MathSciNetGoogle Scholar
  59. [59]
    S. Rajasekaran and J. H. Reif, Optimal and sub-logarithmic time randomized parallel sorting algorithms, SIAM J. Comp, 18 (3), 1989, pp. 594–607.CrossRefzbMATHMathSciNetGoogle Scholar
  60. [60]
    S. Rajasekaran and Th. Tsantilas, Optimal routing algorithms for mesh connected processor arrays, Algorithmica 8, 1992, pp. 21–38.CrossRefzbMATHMathSciNetGoogle Scholar
  61. [61]
    A. G. Ranade, How to emulate shared memory, Proc. 28th Annual IEEE FOCS, 1987, pp. 185–192.Google Scholar
  62. [62]
    E. Reghbati and D. Corniel, Parallel computations in graph theory, SIAM J. Comp 7, 1978, pp. 230–237.CrossRefzbMATHGoogle Scholar
  63. [63]
    J. H. Reif, Depth first search is inherently sequential, Information processing Letters 20, 1985, pp. 229–234.CrossRefzbMATHMathSciNetGoogle Scholar
  64. [64]
    J. H. Reif and L. G. Valiant, A logarithmic time sort for linear size networks, Journal of the ACM 34 (1), 1987, pp. 60–76.CrossRefMathSciNetGoogle Scholar
  65. [65]
    R. Reischuk, Probabilistic parallel algorithms for sorting and selection, SIAM J. Comp 14 (2), 1985, pp. 396–409.CrossRefzbMATHMathSciNetGoogle Scholar
  66. [66]
    C. Schnorr and A. Shamir, An optimal sorting algorithm for mesh-connected computers, Proc. 18th Annual ACM STOC, 1986, pp. 255–263.Google Scholar
  67. [67]
    J.T. Schwartz, Fast probabilistic algorithms for verification of polynomial identities, Journal of the ACM 27 (4), 1980, pp. 701–717.CrossRefzbMATHGoogle Scholar
  68. [68]
    M. Serna and P. G. Spirakis, Tight RNC approximations to max flow, Proc. 8th Annual STAGS, LNCS 480, 1991, pp. 118–126.MathSciNetGoogle Scholar
  69. [69]
    J. R. Smith, Parallel algorithms for depth first searches I: planar graphs, SIAM J. Comp 15 (3), 1986, pp. 814–830.CrossRefzbMATHGoogle Scholar
  70. [70]
    T. M. Stricker, Supporting the hypercube programming model on mesh architectures (A fast sorter for iWarp tori), Proc. 4th Annual ACM Symposium on Parallel Algorithms and Architectures, 1992, pp. 148–157.Google Scholar
  71. [71]
    C. D. Thompson and H. T. Kung, Sorting on a mesh connected parallel computer, Communications of the ACM 20 (4), 1977, pp. 263–271.CrossRefzbMATHMathSciNetGoogle Scholar
  72. [72]
    W. T. Tutte, The factorization of linear graphs, J. London Math. Soc. 22, 1947, pp. 107–111.CrossRefzbMATHMathSciNetGoogle Scholar
  73. [73]
    J. Ullmann and M. Yannakakis, High probability parallel transitive closure algorithms, SIAM J. Comp 20, 1991, pp. 100–125.CrossRefGoogle Scholar
  74. [74]
    E. Urland, Experimental tests of efficient shortest paths heuristics for random graphs on the CM-2, Technical Report 71, University of Geneva, August, 1994.Google Scholar
  75. [75]
    L. G. Valiant, A scheme for fast parallel communication, SIAM J. Comp 11, 1982, pp. 350–361.CrossRefzbMATHMathSciNetGoogle Scholar
  76. [76]
    L. G. Valiant and G. J. Brebner, Universal schemes for parallel communication, Proc. 13th Annual ACM STOC, 1981, pp. 263–277.Google Scholar
  77. [77]
    J. van Leeuwen, Graph Algorithms, in J. van Leeuwen (ed.) Handbook of Theoretical Computer Science, ( Elsevier Science, 1990 ), Vol. A, 10.Google Scholar

Copyright information

© Kluwer Academic Publishers 1998

Authors and Affiliations

  • Sanguthevar Rajasekaran
    • 1
  • José D. P. Rolim
    • 2
  1. 1.Department of Computer and Information Science and EngineeringUniversity of FloridaGainesvilleUSA
  2. 2.Centre Universitaire d’InformatiqueUniversity of GenevaSwitzerland

Personalised recommendations