2 research outputs found

    Balanced Allocation on Dynamic Hypergraphs

    Get PDF

    Balanced Allocation on Hypergraphs

    Full text link
    We consider a variation of balls-into-bins which randomly allocates mm balls into nn bins. Following Godfrey's model (SODA, 2008), we assume that each ball tt, 1≀t≀m1\le t\le m, comes with a hypergraph H(t)={B1,B2,…,Bst}\mathcal{H}^{(t)}=\{B_1,B_2,\ldots,B_{s_t}\}, and each edge B∈H(t)B\in\mathcal{H}^{(t)} contains at least a logarithmic number of bins. Given dβ‰₯2d\ge 2, our dd-choice algorithm chooses an edge B∈H(t)B\in \mathcal{H}^{(t)}, uniformly at random, and then chooses a set DD of dd random bins from the selected edge BB. The ball is allocated to a least-loaded bin from DD, with ties are broken randomly. We prove that if the hypergraphs H(1),…,H(m)\mathcal{H}^{(1)},\ldots, \mathcal{H}^{(m)} satisfy a \emph{balancedness} condition and have low \emph{pair visibility}, then after allocating m=Θ(n)m=\Theta(n) balls, the maximum number of balls at any bin, called the \emph{maximum load}, is at most log⁑dlog⁑n+O(1)\log_d\log n+O(1), with high probability. The balancedness condition enforces that bins appear almost uniformly within the hyperedges of H(t)\mathcal{H}^{(t)}, 1≀t≀m1\le t\le m, while the pair visibility condition measures how frequently a pair of bins is chosen during the allocation of balls. Moreover, we establish a lower bound for the maximum load attained by the balanced allocation for a sequence of hypergraphs in terms of pair visibility, showing the relevance of the visibility parameter to the maximum load. In Godfrey's model, each ball is forced to probe all bins in a randomly selected hyperedge and the ball is then allocated in a least-loaded bin. Godfrey showed that if each H(t)\mathcal{H}^{(t)}, 1≀t≀m1\le t\le m, is balanced and m=O(n)m=O(n), then the maximum load is at most one, with high probability. However, we apply the power of dd choices paradigm, and only query the load information of dd random bins per ball, while achieving very slow growth in the maximum load
    corecore