Balanced allocations (extended abstract)

Suppose that we sequentially place n balls into n boxes by putting each ball into a randomly chosen box. It is well known that when we are done, the fullest box has with high probability lnn/lnlnn(1 + o(1)) balls in it. Suppose instead, that for each ball we choose two boxes at random and place the ball into the one which is less full at the time of placement. We show that with high probability, the fullest box contains only lnlnn/ln2 + O(1) balls - exponentially less than before. Furthermore, we show that a similar gap exists in the infinite process, where at each step one ball, chosen uniformly at random, is deleted, and one ball is added in the manner above. We discuss consequences of this and related theorems for dynamic resource allocation, hashing, and on-line load balancing.

[1]  Richard M. Karp,et al.  An optimal algorithm for on-line bipartite matching , 1990, STOC '90.

[2]  Yossi Azar,et al.  Competitive routing of virtual circuits with unknown duration , 1994, SODA '94.

[3]  Gaston H. Gonnet,et al.  Expected Length of the Longest Probe Sequence in Hash Code Searching , 1981, JACM.

[4]  Volker Stemann,et al.  Parallel balanced allocations , 1996, SPAA '96.

[5]  Yossi Azar On-line Load Balancing , 1996, Online Algorithms.

[6]  Noga Alon,et al.  The Probabilistic Method , 2015, Fundamentals of Ramsey Theory.

[7]  Alan M. Frieze,et al.  Balanced Allocations for Tree-Like Inputs , 1995, Inf. Process. Lett..

[8]  R.M. Karp, M. Luby, F. Meyer auf der Hei Efficient PRAM simulation on a distributed memory machine , 1996 .

[9]  Friedhelm Meyer auf der Heide,et al.  Efficient PRAM simulation on a distributed memory machine , 1992, STOC '92.

[10]  Yossi Azar,et al.  The competitiveness of on-line assignments , 1992, SODA '92.

[11]  Yossi Azar,et al.  Throughput-competitive on-line routing , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[12]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[13]  Norman L. Johnson,et al.  Urn models and their application , 1977 .

[14]  Michael Mitzenmacher,et al.  Load Balancing and Density Dependent Jump Markov Processes EXTENDED ABSTRACT , 1996, FOCS 1996.

[15]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[16]  Steven J. Phillips,et al.  Online load balancing and network flow , 1993, STOC.

[17]  Micah Adler,et al.  Parallel randomized load balancing , 1995, STOC '95.

[18]  Andrei Z. Broder,et al.  Multilevel adaptive hashing , 1990, SODA '90.

[19]  Amos Fiat,et al.  On-line load balancing with applications to machine scheduling and virtual circuit routing , 1993, STOC.

[20]  Friedhelm Meyer auf der Heide,et al.  Dynamic perfect hashing: upper and lower bounds , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[21]  I. Olkin,et al.  Inequalities: Theory of Majorization and Its Applications , 1980 .

[22]  Michael Mitzenmacher,et al.  Load balancing and density dependent jump Markov processes , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[23]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[24]  Bala Kalyanasundaram,et al.  On-Line Load Balancing of Temporary Tasks , 1993, J. Algorithms.