Selfish Load Balancing

Load balancing games on identical and uniformly related machines with makespan as (nonutilitarian) social cost; expected cost formula for mixed profiles (20.1); existence of pure equilibria via lexicographically decreasing load vectors; PoA 2 - 2/(m+1) for pure equilibria on identical machines (tight); max-weight best response converges in n steps; PoA Theta(log m / log log m) for pure equilibria on related machines via the inverse gamma function and the layered lower-bound construction; LPT computes a pure equilibrium, PTAS plus Nashification; fully mixed equilibria and balls into bins (Proposition 20.11); the fully mixed Nash equilibrium conjecture is false; PoA Theta(log m / log log m) for mixed equilibria on identical machines via a weighted Chernoff bound; PoA Theta(log m / log log log m) for mixed equilibria on related machines

· 26 min read · 5,152 words

Motivation: servers without a scheduler

Load balancing is fundamental whenever tasks share resources. The classical version is an optimization problem: assign tasks to machines so the busiest machine is as lightly loaded as possible. But in, say, an Internet file-download service, each user picks the least-loaded server for itself, and nobody enforces a global assignment.

IntuitionThe central question

If every task is placed by a selfish agent seeking the least-loaded machine, how much worse is the busiest machine than under an optimal schedule — with identical or differently fast machines, and with or without randomized play?

This chapter differs from the rest of Part III in two ways:

FeatureWhy it matters
Makespan objective (a max, not a sum)nonutilitarian; captures efficiency and fairness together
Mixed equilibria analyzed as well as pureexplicitly measures the damage from uncoordinated randomization

The model

Makespan scheduling on uniformly related machines. There are machines [m][m] with speeds s1,…,sms_1,\dots,s_m and tasks [n][n] with weights w1,…,wnw_1,\dots,w_n. An assignment is A:[n]→[m]A : [n]\to[m].

DefinitionLoad and makespan

ℓj=∑i: A(i)=jwisj,cost(A)=max⁡j∈[m]ℓj.\ell_j = \sum_{i:\,A(i) = j} \frac{w_i}{s_j}, \qquad \mathrm{cost}(A) = \max_{j\in[m]} \ell_j.

Identical machines means s1=⋯=sm=1s_1 = \dots = s_m = 1.

The game

Agent ii controls task ii, and its pure strategies are the machines [m][m]. Under assignment AA, agent ii pays ℓA(i)\ell_{A(i)}. Social cost is the makespan.

Mixed strategies. Let pij=Pr⁡[A(i)=j]p_i^j = \Pr[A(i) = j] and xij=1[A(i)=j]x_i^j = \mathbb{1}[A(i) = j]. The profile P=(pij)P = (p_i^j) induces a random assignment.

FormulaExpected load, social cost, and expected cost to an agent

E[ℓj]=∑iwi pijsj,cost(P)=E[max⁡jℓj],\mathbb{E}[\ell_j] = \sum_{i} \frac{w_i\,p_i^j}{s_j}, \qquad \mathrm{cost}(P) = \mathbb{E}\Big[\max_j \ell_j\Big], cij=E[ℓj∣A(i)=j]=wi+∑k≠iwkpkjsj=E[ℓj]+(1−pij)wisj.(20.1)c_i^j = \mathbb{E}[\ell_j \mid A(i) = j] = \frac{w_i + \sum_{k\ne i} w_k p_k^j}{s_j} = \mathbb{E}[\ell_j] + (1 - p_i^j)\frac{w_i}{s_j}. \tag{20.1}
ComponentDetail
Signaturecij:profiles→R≥0c_i^j : \text{profiles} \to \mathbb{R}_{\ge 0}
Domaineveryone’s mixing probabilities
Codomainthe load agent ii expects to experience if it lands on machine jj
Not the same asE[ℓj]\mathbb{E}[\ell_j]: agent ii‘s own weight is certainly there, but only counted with weight pijp_i^j in the average

WarningYour cost exceeds the machine’s average load

Unless pij=1p_i^j = 1, cij>E[ℓj]c_i^j > \mathbb{E}[\ell_j]. You always see yourself on the machine. This gap drives several constructions below.

PropositionProposition 20.1 — mixed equilibrium

PP is a Nash equilibrium iff for all i,ji, j: pij>0⇒cij≤cikp_i^j > 0 \Rightarrow c_i^j \le c_i^k for every kk. Agents put probability only on machines minimizing their expected cost.

PropositionProposition 20.2 — pure equilibrium

AA is a pure Nash equilibrium iff ciA(i)≤cikc_i^{A(i)} \le c_i^k for all i,ki, k: no task can lower its cost by moving alone.

Mixed equilibria exist by Nash’s theorem. Pure ones exist too, and are reached by improvement steps:

PropositionProposition 20.3 — pure equilibria always exist

Every load balancing game has a pure Nash equilibrium.

ProofImprovement steps lexicographically decrease the sorted load vector

Step 1: The potential. Sort loads in decreasing order, (λ1,…,λm)(\lambda_1,\dots,\lambda_m).

Step 2: One improvement step. A task moves from the machine at sorted position jj to the one at position kk. Necessarily k>jk > j: it moves to a less-loaded machine. Machine jj‘s load drops. Machine kk‘s new load is still below λj\lambda_j, since otherwise the move wouldn’t help.

The key step: the number of machines with load ≥λj\ge \lambda_j strictly decreases, and all loads above λj\lambda_j are unchanged. So the sorted vector gets lexicographically smaller. There are finitely many assignments, so improvement steps end at a pure equilibrium.

∎

RemarkConsequence: price of stability is 1

Start improvement steps from an optimal assignment. No step raises the makespan, so they end at a pure equilibrium that is also optimal. So only the price of anarchy is interesting here.

RemarkIt’s a routing game

Load balancing is weighted atomic selfish routing on mm parallel links with linear costs cj(x)=x/sjc_j(x) = x/s_j (see routing-games; compare Theorem 18.15 on affine weighted instances). What differs is the objective: max rather than sum. (This connection is my gloss.)

Worked example: two machines, weights 2, 2, 1, 1

ExampleOptimal, worst pure, and a worse mixed equilibrium

Two identical machines. Tasks: two large (weight 2) and two small (weight 1).

Optimum: one large and one small per machine. Makespan 3.

Worst pure equilibrium: both large tasks on machine 1 (load 4), both small on machine 2 (load 2).

  • A small task moving would face 4+1=54 + 1 = 5.
  • A large task moving would face 2+2=42 + 2 = 4, no improvement.

So this is an equilibrium with makespan 4. Makespan ≥5\ge 5 can’t be an equilibrium: the other machine would have load ≤1\le 1, and any task would move there.

Fully mixed equilibrium: every task picks each machine with probability 12\tfrac12. Then E[ℓj]=3\mathbb{E}[\ell_j] = 3, and by (20.1):

  • a large task expects 3+12⋅2=43 + \tfrac12\cdot 2 = 4 on either machine;
  • a small task expects 3+12⋅1=3.53 + \tfrac12\cdot 1 = 3.5 on either.

By symmetry this is an equilibrium. Over the 16 equally likely outcomes:

Makespan3456
# outcomes4642
cost(P)=116(3⋅4+4⋅6+5⋅4+6⋅2)=4.25>4.\mathrm{cost}(P) = \tfrac{1}{16}(3\cdot4 + 4\cdot6 + 5\cdot4 + 6\cdot2) = 4.25 > 4.

Mixed equilibria can be worse than every pure one.

Price of anarchy

DefinitionDefinition 20.4 — price of anarchy

For the class G(m)\mathcal{G}(m) of instances with mm machines:

PoA(m)=max⁡G∈G(m) max⁡P∈Nash(G)cost(P)opt(G).\mathrm{PoA}(m) = \max_{G\in\mathcal{G}(m)}\ \max_{P\in\mathrm{Nash}(G)} \frac{\mathrm{cost}(P)}{\mathrm{opt}(G)}.

The four variants restrict G(m)\mathcal{G}(m) to identical speeds or not, and Nash(G)\mathrm{Nash}(G) to pure profiles or not.

NotePure or mixed?

  • Pure fits systems where agents repeatedly make improvement moves until they settle.
  • Mixed fits one-shot play.
  • Mixed upper bounds are more robust, because mixed equilibria include the pure ones.

Pure equilibria, identical machines

Price of anarchy

The analysis mirrors Graham’s greedy list-scheduling bound of 2−1/m2 - 1/m, and comes out slightly better.

TheoremTheorem 20.5 — PoA 2−2m+12 - \frac{2}{m+1}

Every pure equilibrium on mm identical machines has cost(A)≤(2−2m+1) opt(G).\mathrm{cost}(A) \le \Big(2 - \frac{2}{m+1}\Big)\,\mathrm{opt}(G).

ProofEvery other machine is at least half as full as the busiest

Step 1: The smallest task on the busiest machine. Let j∗j^* have maximum load and i∗i^* be its lightest task. WLOG j∗j^* holds at least two tasks; otherwise cost(A)=wi∗≤opt\mathrm{cost}(A) = w_{i^*} \le \mathrm{opt}. So wi∗≤12cost(A)w_{i^*} \le \tfrac12\mathrm{cost}(A).

Step 2: The equilibrium condition. If some machine j≠j∗j\ne j^* had ℓj<ℓj∗−wi∗\ell_j < \ell_{j^*} - w_{i^*}, task i∗i^* would move there. So ℓj≥ℓj∗−wi∗≥12cost(A).\ell_j \ge \ell_{j^*} - w_{i^*} \ge \tfrac12\mathrm{cost}(A).

Step 3: Average-load lower bound on OPT.

opt(G)≥∑iwim=∑jℓjm≥cost(A)+(m−1)12cost(A)m=(m+1) cost(A)2m.\mathrm{opt}(G) \ge \frac{\sum_i w_i}{m} = \frac{\sum_j \ell_j}{m} \ge \frac{\mathrm{cost}(A) + (m-1)\tfrac12\mathrm{cost}(A)}{m} = \frac{(m+1)\,\mathrm{cost}(A)}{2m}.

Step 4: Rearrange. cost(A)≤2mm+1 opt=(2−2m+1) opt\mathrm{cost}(A) \le \frac{2m}{m+1}\,\mathrm{opt} = (2 - \frac{2}{m+1})\,\mathrm{opt}.

∎

NoteTight (Exercise 20.2)

For every mm, an instance with 2m2m tasks reaches exactly 2−2m+12 - \frac{2}{m+1}. The two-machine example above is the case m=2m = 2: 4/34/3.

Convergence of best responses

The problem. Improvement steps always converge, but if convergence takes forever, a good equilibrium is of little use.

DefinitionMax-weight best-response policy

An agent is satisfied if it can’t lower its cost by moving. Repeatedly activate a heaviest unsatisfied agent and let it move to a least-loaded machine.

TheoremTheorem 20.6 — at most one activation per agent

On identical machines, from any assignment, the max-weight best-response policy reaches a pure equilibrium after each agent has been activated at most once.

ProofA satisfied agent is only threatened by lighter arrivals

Step 1: Two facts for identical machines.

  • An agent is satisfied iff the load of the other tasks on its machine is minimal.
  • A best response never lowers the minimum machine load. The machine left behind still has load above the target machine’s old load.

So a satisfied agent can become unsatisfied only if someone moves onto its machine.

Step 2: Someone moves onto ii‘s machine. Agent kk, activated after ii, moves to j∗j^*, where ii sits. Max-weight order gives wk≤wiw_k \le w_i. With loads ℓ\ell measured just after the move, kk‘s best-response property gives ℓj∗≤ℓj+wk≤ℓj+wi∀j.\ell_{j^*} \le \ell_j + w_k \le \ell_j + w_i \quad \forall j.

The key step: ℓj+wi\ell_j + w_i is what ii would pay by moving to jj. So ii is still satisfied. Hence once an agent has best-responded, it never needs to move again.

∎

WarningOrder matters

Activating a minimum-weight unsatisfied agent can take exponentially many steps, even on identical machines (Even-Dar et al.).


With different speeds, the loss is no longer constant, but it grows very slowly.

DefinitionThe inverse gamma function

Γ(k)=(k−1)!\Gamma(k) = (k-1)! for positive integers kk, and Γ−1(m)=Θ ⁣(log⁡mlog⁡log⁡m).\Gamma^{-1}(m) = \Theta\!\left(\frac{\log m}{\log\log m}\right).

Upper bound

TheoremTheorem 20.7 — PoA O(log⁡m/log⁡log⁡m)O(\log m/\log\log m)

Every pure equilibrium on uniformly related machines has cost(A)=O ⁣(log⁡mlog⁡log⁡m)opt(G)\mathrm{cost}(A) = O\!\left(\frac{\log m}{\log\log m}\right) \mathrm{opt}(G).

Setup. Let c=⌊cost(A)/opt(G)⌋c = \lfloor \mathrm{cost}(A)/\mathrm{opt}(G)\rfloor. Sort machines by speed, s1≥⋯≥sms_1 \ge \dots \ge s_m, into the list LL. For k=0,…,c−1k = 0,\dots,c-1, let LkL_k be the longest prefix of LL in which every machine has load ≥k⋅opt\ge k\cdot\mathrm{opt}. So L0=LL_0 = L, and the prefixes shrink as kk grows.

IntuitionThe layered picture

Heavily loaded machines must be the fast ones: a heavy task sitting on a slow, busy machine would jump to a fast, lightly loaded one. Each layer Lk+1L_{k+1} holds weight that the optimum must spread over the next layer LkL_k. That forces LkL_k to have at least k+1k+1 times as many machines, and the factorial growth caps the number of layers.

ProofThe recurrence ∣Lk∣≥(k+1)∣Lk+1∣|L_k| \ge (k+1)|L_{k+1}|, and its solution

Step 1: ∣Lc−1∣≥1|L_{c-1}| \ge 1. Suppose not, so machine 1 (the fastest) has load <(c−1) opt< (c-1)\,\mathrm{opt}. Take a task ii on a machine with load ≥c opt\ge c\,\mathrm{opt}. Moving to machine 1 costs <(c−1) opt+wis1≤c opt,< (c-1)\,\mathrm{opt} + \frac{w_i}{s_1} \le c\,\mathrm{opt}, since wi/s1≤optw_i/s_1 \le \mathrm{opt}: OPT must put ii somewhere, at best on the fastest machine. This contradicts equilibrium.

Step 2 (Lemma 20.8): tasks in Lk+1L_{k+1} are in LkL_k under OPT. Let qq be the fastest machine outside LkL_k, so ℓq<k opt\ell_q < k\,\mathrm{opt}. Take a task ii with A(i)∈Lk+1A(i) \in L_{k+1}, so ℓA(i)≥(k+1) opt\ell_{A(i)} \ge (k+1)\,\mathrm{opt}. If wi≤sq optw_i \le s_q\,\mathrm{opt}, moving to qq would cost ℓq+wisq<(k+1) opt≤ℓA(i),\ell_q + \frac{w_i}{s_q} < (k+1)\,\mathrm{opt} \le \ell_{A(i)}, contradicting equilibrium. So wi>sq optw_i > s_q\,\mathrm{opt}. Any machine j∉Lkj \notin L_k has sj≤sqs_j \le s_q, so placing ii there gives load >opt> \mathrm{opt}. Hence OPT puts ii in LkL_k.

Step 3: Count weight. Machines in Lk+1L_{k+1} carry weight ≥(k+1) opt sj\ge (k+1)\,\mathrm{opt}\,s_j each. OPT must fit all of it on LkL_k at load ≤opt\le \mathrm{opt}:

∑j∈Lk+1(k+1) opt sj≤∑j∈Lkopt sj  ⇒  ∑j∈Lk+1k sj≤∑j∈Lk∖Lk+1sj.\sum_{j\in L_{k+1}} (k+1)\,\mathrm{opt}\,s_j \le \sum_{j\in L_k} \mathrm{opt}\,s_j \;\Rightarrow\; \sum_{j\in L_{k+1}} k\,s_j \le \sum_{j\in L_k\setminus L_{k+1}} s_j.

Step 4: Compare speeds. Let s∗s^* be the slowest speed in Lk+1L_{k+1}. Machines in Lk+1L_{k+1} are at least that fast, and those in Lk∖Lk+1L_k\setminus L_{k+1} at most that fast. So k ∣Lk+1∣ s∗≤∣Lk∖Lk+1∣ s∗k\,|L_{k+1}|\,s^* \le |L_k\setminus L_{k+1}|\,s^*, i.e. ∣Lk∣≥(k+1)∣Lk+1∣|L_k| \ge (k+1)|L_{k+1}|.

Step 5: Solve. m=∣L0∣≥1⋅2⋯(c−1)⋅∣Lc−1∣≥(c−1)!=Γ(c)m = |L_0| \ge 1\cdot2\cdots(c-1)\cdot|L_{c-1}| \ge (c-1)! = \Gamma(c). So c≤Γ−1(m)c \le \Gamma^{-1}(m).

∎

Matching lower bound

TheoremTheorem 20.9 — PoA Ω(log⁡m/log⁡log⁡m)\Omega(\log m/\log\log m)

For every mm there is an instance with n≤mn \le m tasks and a pure equilibrium with cost ≥(12Γ−1(m)−2−o(1))opt(G)\ge \big(\tfrac12\Gamma^{-1}(m) - 2 - o(1)\big) \mathrm{opt}(G).

ExampleThe layered construction

Let q=Γ−1(m/3)−1≥Γ−1(m)−2−o(1)q = \Gamma^{-1}(m/3) - 1 \ge \Gamma^{-1}(m) - 2 - o(1). Build groups G0,…,GqG_0,\dots,G_q:

Group# machinesspeedtasks per machine (weight)load
GkG_kq!/k!q!/k!2k2^kkk tasks of weight 2k2^kkk

Fits in mm machines: ∑kq!/k!≤3⋅q!=3 Γ(q+1)≤m\sum_k q!/k! \le 3\cdot q! = 3\,\Gamma(q+1) \le m, using ∑k1/k!≤e<3\sum_k 1/k! \le e < 3. Spare machines get speed 1 and no tasks.

It’s an equilibrium. A task in GkG_k pays kk.

  • Moving to GjG_j with j≥kj \ge k: load already ≥k\ge k, so no gain.
  • Moving to GjG_j with j<kj < k: new load j+2k−j≥j+(k−j+1)=k+1j + 2^{k-j} \ge j + (k-j+1) = k+1, using 2t≥t+12^t \ge t+1.
  • Spare machines behave like G0G_0 (load 2k≥k+12^k \ge k+1).

Its cost is qq.

OPT ≤2\le 2. Shift each group’s tasks down one level. GkG_k holds k⋅q!/k!=q!/(k−1)!=∣Gk−1∣k\cdot q!/k! = q!/(k-1)! = |G_{k-1}| tasks, so each machine of Gk−1G_{k-1} gets exactly one task, of weight 2k2^k on speed 2k−12^{k-1}: load 2.

graph LR
  GQ["G_q: q tasks each, load q"] -->|"OPT shifts tasks down"| GQ1["G_q-1"]
  GQ1 -->|"shift down"| DOTS["..."]
  DOTS -->|"shift down"| G0["G_0: load 2 each in OPT"]

IntuitionWhy the construction is stable

Every task sits in a coordinated but locally optimal spot. Moving down to a slower group costs at least one more unit of load. The only way to balance is a coordinated shift of all tasks one level down, which no single agent can do.

Computing pure equilibria

On related machines, it is open whether a short sequence of improvement steps always exists, and whether one can be found efficiently. A centralized algorithm does work:

AlgorithmLPT (largest processing time first)

Insert tasks in nonincreasing weight order, each on a machine minimizing its cost at insertion time.

TheoremTheorem 20.10 — LPT outputs a pure equilibrium

On uniformly related machines, LPT computes a pure Nash equilibrium.

ProofInduction on insertions; later tasks are lighter

Suppose the partial assignment of tasks 1..t−11..t-1 is an equilibrium. Task tt joins machine j∗j^*. Only tasks already on j∗j^* could become unhappy. Let i<ti < t be one of them. With loads ℓ\ell after inserting tt, and wt≤wiw_t \le w_i:

ℓj∗≤ℓj+wtsj≤ℓj+wisj∀j.\ell_{j^*} \le \ell_j + \frac{w_t}{s_j} \le \ell_j + \frac{w_i}{s_j} \quad\forall j.

The first inequality holds because tt chose j∗j^* to minimize its cost. The right-hand side is ii‘s cost of moving to jj, so ii stays satisfied.

∎

AlgorithmGuaranteeEquilibrium?
LPT, identical43−13m\frac43 - \frac{1}{3m} (Graham)yes
LPT, related53\frac53 (Friesen)yes
PTAS (Hochbaum–Shmoys), related1+ϵ1+\epsilonnot necessarily
PTAS + Nashification (Feldmann et al.)1+ϵ1+\epsilonyes

DefinitionNashification

Efficiently transform any assignment into a Nash equilibrium without increasing the makespan. Combined with the PTAS, it gives a (1+ϵ)(1+\epsilon)-optimal pure equilibrium in polynomial time. (Exact optimum is NP-hard even on identical machines.)


Mixed equilibria, identical machines

Fully mixed equilibria and balls into bins

DefinitionFully mixed profile

Every agent puts positive probability on every machine. On identical machines, the unique fully mixed Nash equilibrium is pij=1/mp_i^j = 1/m.

For unit tasks on identical machines, (20.1) gives every agent the same expected cost on every machine, cij=n/m+(1−1/m)c_i^j = n/m + (1 - 1/m). This is exactly balls into bins (compare inefficiency-of-equilibria). The optimal makespan is ⌈n/m⌉\lceil n/m\rceil.

PropositionProposition 20.11 — maximum occupancy

Throwing nn balls uniformly and independently into mm bins, the expected maximum occupancy is Θ ⁣(ln⁡mln⁡ ⁣(1+mnln⁡m)).\Theta\!\left(\frac{\ln m}{\ln\!\big(1 + \frac{m}{n}\ln m\big)}\right).

RegimeExpected maxRatio to n/mn/m
n≥mlog⁡mn \ge m\log mΘ(n/m)\Theta(n/m)O(1)O(1)
n≤m1−ϵn \le m^{1-\epsilon}Θ(1)\Theta(1)O(1)O(1)
n=mn = mΘ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m)Θ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m), the worst case

TheoremTheorem 20.12 — PoA Ω(log⁡m/log⁡log⁡m)\Omega(\log m/\log\log m), mixed, identical

With n=mn = m unit tasks, the fully mixed equilibrium has cost Θ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m), while OPT =1= 1.

The fully mixed Nash equilibrium conjecture is false

WarningMaximum randomization ≠ worst equilibrium

It is natural to guess that the fully mixed equilibrium, which randomizes the most, is always the worst. It isn’t.

ExampleCounterexample

m=22km = 2^{2k}, so m\sqrt m and log⁡m\log m are integers.

  • m\sqrt m large tasks of weight 1.
  • (m−m)log⁡m(m - \sqrt m)\log m small tasks of weight 1/log⁡m1/\log m.

Fully mixed equilibrium: m≤m1−ϵ\sqrt m \le m^{1-\epsilon} large balls give O(1)O(1) per bin. About mlog⁡mm\log m small balls give O(log⁡m)O(\log m) per bin, times weight 1/log⁡m1/\log m, which is O(1)O(1). So the makespan is O(1)O(1).

Segregated equilibrium: large tasks uniform over group A (the first m\sqrt m machines), small tasks uniform over group B (the rest).

  • Large task: cost on A is 1+(1−1/m)<21 + (1 - 1/\sqrt m) < 2; on B it is 1+1=21 + 1 = 2. It prefers A.
  • Small task: cost on B is <1+1/log⁡m< 1 + 1/\log m; on A it is 1+1/log⁡m1 + 1/\log m. It prefers B.

So this is an equilibrium, with m\sqrt m balls into m\sqrt m bins in group A, giving makespan Θ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m). That is a factor Θ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m) worse than the fully mixed equilibrium.

IntuitionWhy concentration beats spreading

Collisions hurt most when balls and bins are equal in number. The segregated equilibrium creates exactly that regime among the heavy tasks, while the fully mixed one drowns them in too many bins.

Upper bound

TheoremTheorem 20.13 — PoA O(log⁡m/log⁡log⁡m)O(\log m/\log\log m), mixed, identical

Every mixed equilibrium on identical machines has cost(P)=O ⁣(log⁡mlog⁡log⁡m)opt(G)\mathrm{cost}(P) = O\!\left(\frac{\log m}{\log\log m}\right) \mathrm{opt}(G).

The proof has two steps: (1) bound the maximum expected load; (2) show the expected maximum exceeds it by at most O(log⁡m/log⁡log⁡m)O(\log m/\log\log m).

LemmaLemma 20.14 — weighted Chernoff bound

If X1,…,XNX_1,\dots,X_N are independent with values in [0,z][0,z] and X=∑XiX = \sum X_i, then Pr⁡[X≥t]≤(e E[X]t)t/z.\Pr[X \ge t] \le \left(\frac{e\,\mathbb{E}[X]}{t}\right)^{t/z}.

NoteCited

See Mitzenmacher–Upfal (2005) for derivations.

ProofExpected loads are small, and tails are Chernoff-thin

Step 1: Maximum expected load. Adapt Theorem 20.5, with i∗i^* the lightest task having positive probability on a machine j∗j^* of maximum expected load, and expected loads throughout. This gives E[ℓj]≤(2−2m+1)opt<2 opt\mathbb{E}[\ell_j] \le (2 - \frac{2}{m+1})\mathrm{opt} < 2\,\mathrm{opt} for all jj.

Step 2: Tail of one machine. Every task weighs at most opt. By Lemma 20.14,

Pr⁡[ℓj≥t]≤(2e optt)t/opt.\Pr[\ell_j \ge t] \le \left(\frac{2e\,\mathrm{opt}}{t}\right)^{t/ \mathrm{opt}}.

Step 3: Pick the threshold. Let τ=2 opt ln⁡mln⁡ln⁡m\tau = 2\,\mathrm{opt}\,\frac{\ln m}{\ln\ln m}. For large mm, eln⁡ln⁡mln⁡m≤1ln⁡m\frac{e\ln\ln m}{\ln m} \le \frac{1}{\sqrt{\ln m}} and ≤e−1\le e^{-1}, so

Pr⁡[ℓj≥τ+x]≤(1ln⁡m)2ln⁡m/ln⁡ln⁡me−x/opt=1m e−x/opt.\Pr[\ell_j \ge \tau + x] \le \Big(\tfrac{1}{\sqrt{\ln m}}\Big)^{2\ln m/ \ln\ln m} e^{-x/\mathrm{opt}} = \frac{1}{m}\,e^{-x/\mathrm{opt}}.

Step 4: Integrate with a union bound.

cost(P)=∫0∞Pr⁡[max⁡jℓj≥t]dt≤τ+∫0∞∑jPr⁡[ℓj≥τ+x] dx≤τ+∫0∞e−x/optdx=τ+opt.\mathrm{cost}(P) = \int_0^\infty \Pr\Big[\max_j\ell_j \ge t\Big]dt \le \tau + \int_0^\infty\sum_j \Pr[\ell_j \ge \tau + x]\,dx \le \tau + \int_0^\infty e^{-x/\mathrm{opt}}dx = \tau + \mathrm{opt}.

The key step: the mm machines each contribute a tail of 1/m1/m beyond τ\tau, so the union bound costs only an additive opt.

∎


This case combines both effects: a layered speed structure and collisions. The combination costs only a little more.

TheoremTheorem 20.15 — PoA O(log⁡m/log⁡log⁡log⁡m)O(\log m/\log\log\log m)

Every mixed equilibrium on uniformly related machines has cost(P)=O ⁣(log⁡mlog⁡log⁡log⁡m)opt(G)\mathrm{cost}(P) = O\!\left(\frac{\log m}{\log\log\log m}\right) \mathrm{opt}(G).

Setup. Normalize opt=1\mathrm{opt} = 1. Let c=⌊max⁡jE[ℓj]⌋c = \lfloor\max_j\mathbb{E}[\ell_j]\rfloor.

  1. Layers with expected loads. Define prefixes LkL_k as in Theorem 20.7 but using E[ℓj]≥k\mathbb{E}[\ell_j] \ge k. The same recurrence gives c≤Γ−1(m)c \le \Gamma^{-1}(m). Set C=max⁡{c+1,ln⁡mln⁡ln⁡m}=Θ(ln⁡mln⁡ln⁡m)C = \max\{c+1, \frac{\ln m}{\ln\ln m}\} = \Theta(\frac{\ln m}{\ln\ln m}).
  2. Split each machine’s tasks. Tj(1)T_j^{(1)} are tasks with pij≥14p_i^j \ge \frac14, and Tj(2)T_j^{(2)} are those with pij∈(0,14)p_i^j \in (0,\frac14). Correspondingly ℓj=ℓj(1)+ℓj(2)\ell_j = \ell_j^{(1)} + \ell_j^{(2)}.
DerivationHigh-probability tasks are deterministic-ish ℓj(1)≤∑i∈Tj(1)wisj≤4∑i∈Tj(1)wi pijsj=4 E[ℓj(1)]≤4C.(20.2)\ell_j^{(1)} \le \sum_{i\in T_j^{(1)}}\frac{w_i}{s_j} \le 4\sum_{i\in T_j^{(1)}} \frac{w_i\,p_i^j}{s_j} = 4\,\mathbb{E}[\ell_j^{(1)}] \le 4C. \tag{20.2}

This holds with certainty: each such task counts at most 4×4\times its expected contribution.

For Tj(2)T_j^{(2)} we need Chernoff, which needs a weight bound. Group the machines as Gk=Lk∖Lk+1G_k = L_k\setminus L_{k+1} (and Gc−1=Lc−1G_{c-1} = L_{c-1}), and let s(k)s(k) be the fastest speed in GkG_k.

LemmaLemma 20.16 — speeds double every two layers

s(k+2)≥2 s(k)s(k+2) \ge 2\,s(k) for 0≤k≤c−40 \le k \le c-4.

ProofA light task on a deep layer would escape to GkG_k

Step 1: A light task deep in the layers. Some task ii with wi≤s(k+2)w_i \le s(k+2) has positive probability on a machine in Lk+3L_{k+3}. OPT must move expected load off Lk+3L_{k+3}, onto machines no faster than s(k+2)s(k+2), and only light enough tasks fit there at load ≤1\le 1.

Step 2: Its equilibrium cost is ≥k+3\ge k+3, since it is in the support of a machine with expected load ≥k+3\ge k+3.

Step 3: If speeds didn’t double. Suppose s(k)>s(k+2)/2s(k) > s(k+2)/2. On the fastest machine of GkG_k, whose expected load is <k+1< k+1, task ii would pay <k+1+wis(k)<k+1+2wis(k+2)≤k+3.< k + 1 + \frac{w_i}{s(k)} < k + 1 + \frac{2w_i}{s(k+2)} \le k + 3. That contradicts equilibrium.

∎

LemmaLemma 20.17 — low-probability tasks are light

For i∈Tj(2)i \in T_j^{(2)}: wi≤12 sjw_i \le 12\,s_j.

ProofCompare with a machine two layers up

Let j∈Gkj \in G_k. Since E[ℓj]≥k\mathbb{E}[\ell_j] \ge k and 1−pij≥341 - p_i^j \ge \frac34, cij≥k+3wi4sj.c_i^j \ge k + \frac{3w_i}{4s_j}.

Case k≥c−3k \ge c-3. If wi>12sjw_i > 12 s_j, then cij>k+9≥c+6c_i^j > k + 9 \ge c + 6. But ii can go to the fastest machine for about c+O(1)c + O(1): its expected load is <c+1< c+1, plus at most wi/s1≤1w_i/s_1 \le 1. This contradicts equilibrium.

Case k≤c−4k \le c-4. Let qq be the fastest machine of Gk+2G_{k+2}. By Lemma 20.16, sq≥2s(k)≥2sjs_q \ge 2s(k) \ge 2s_j, so ciq≤k+3+wi2sjc_i^q \le k + 3 + \frac{w_i}{2s_j}. Equilibrium (pij>0p_i^j > 0) gives cij≤ciqc_i^j \le c_i^q:

k+3wi4sj≤k+3+wi2sj  ⇒  wi≤12 sj.k + \frac{3w_i}{4s_j} \le k + 3 + \frac{w_i}{2s_j} \;\Rightarrow\; w_i \le 12\,s_j.

∎

ProofTheorem 20.15 — assemble

Step 1: Chernoff for ℓj(2)\ell^{(2)}_j. Each summand lies in [0,12][0, 12] and E[ℓj(2)]≤C\mathbb{E}[\ell^{(2)}_j] \le C, so Pr⁡[ℓj(2)≥αC]≤(e/α)αC/12\Pr[\ell_j^{(2)} \ge \alpha C] \le (e/\alpha)^{\alpha C/12}.

Step 2: Threshold. Let τ=24 C ln⁡ln⁡mln⁡ln⁡ln⁡m=Θ(ln⁡mln⁡ln⁡ln⁡m)\tau = 24\,C\,\frac{\ln\ln m}{\ln\ln\ln m} = \Theta(\frac{\ln m}{\ln\ln\ln m}). For large mm, the base is at most (ln⁡ln⁡m)−1/2(\ln\ln m)^{-1/2} and at most e−2e^{-2}. Together with C≥ln⁡mln⁡ln⁡mC \ge \frac{\ln m}{\ln\ln m}, this gives Pr⁡[ℓj(2)≥τ+x]≤1m e−x/6.\Pr[\ell_j^{(2)} \ge \tau + x] \le \frac1m\,e^{-x/6}.

Step 3: Union bound and integrate. E[max⁡jℓj(2)]≤τ+6\mathbb{E}[\max_j\ell_j^{(2)}] \le \tau + 6. (20.3)

Step 4: Combine.

cost(P)=E[max⁡jℓj]≤max⁡jℓj(1)+E[max⁡jℓj(2)]≤4C+τ+6=O ⁣(log⁡mlog⁡log⁡log⁡m).\mathrm{cost}(P) = \mathbb{E}\Big[\max_j\ell_j\Big] \le \max_j \ell_j^{(1)} + \mathbb{E}\Big[\max_j\ell_j^{(2)}\Big] \le 4C + \tau + 6 = O\!\left(\frac{\log m}{\log\log\log m}\right).

∎

IntuitionWhy only log⁡log⁡m/log⁡log⁡log⁡m\log\log m/\log\log\log m more

The layering already caps expected loads at C≈log⁡m/log⁡log⁡mC \approx \log m/\log\log m. Collisions then add a balls-into-bins factor. But with expected loads already that large (many balls per bin, in Proposition 20.11 terms), the extra factor is only Θ(log⁡log⁡m/log⁡log⁡log⁡m)\Theta(\log\log m/\log\log\log m).

TheoremTheorem 20.18 — matching lower bound

For every mm there is an instance with n≤mn \le m tasks and a mixed equilibrium with cost(P)=Ω ⁣(log⁡mlog⁡log⁡log⁡m)opt(G)\mathrm{cost}(P) = \Omega\!\left(\frac{\log m}{\log\log\log m}\right) \mathrm{opt}(G).

ProofRandomize the middle layer of the Theorem 20.9 construction

Step 1: Randomize one group. Take k=⌈q/2⌉k = \lceil q/2\rceil and M=∣Gk∣=q!/k!≥(q/2)q/2M = |G_k| = q!/k! \ge (q/2)^{q/2}, so log⁡M=Θ(qlog⁡q)=Θ(log⁡m)\log M = \Theta(q\log q) = \Theta(\log m). The kMkM tasks of GkG_k (each of weight 2k2^k) now pick a machine of GkG_k uniformly. Everything else stays as in AA.

Step 2: Still an equilibrium. A randomized task expects cij=k+(1−1M)<k+1c_i^j = k + (1 - \frac1M) < k+1 on GkG_k, and moving to another group costs ≥k+1\ge k+1 (Theorem 20.9).

Step 3: Cost. OPT is still 2. The makespan is at least the maximum occupancy among GkG_k‘s machines: N=kMN = kM balls into MM bins. By Proposition 20.11,

Θ ⁣(ln⁡Mln⁡(1+1kln⁡M))=Θ ⁣(log⁡mlog⁡log⁡log⁡m),\Theta\!\left(\frac{\ln M}{\ln(1 + \frac1k\ln M)}\right) = \Theta\!\left(\frac{\log m}{\log\log\log m}\right),

since k=Θ(log⁡m/log⁡log⁡m)k = \Theta(\log m/\log\log m) makes 1kln⁡M=Θ(log⁡log⁡m)\frac1k\ln M = \Theta(\log\log m).

∎


Summary

ImportantTable 20.1 — price of anarchy of load balancing games

IdenticalUniformly related
Pure2−2m+12 - \frac{2}{m+1}Θ ⁣(log⁡mlog⁡log⁡m)\Theta\!\left(\frac{\log m}{\log\log m}\right)
MixedΘ ⁣(log⁡mlog⁡log⁡m)\Theta\!\left(\frac{\log m}{\log\log m}\right)Θ ⁣(log⁡mlog⁡log⁡log⁡m)\Theta\!\left(\frac{\log m}{\log\log\log m}\right)

All bounds are tight. Apart from pure/identical, the price of anarchy grows only sublogarithmically in mm. This gives a first game-theoretic explanation of why uncoordinated systems share resources fairly efficiently.

NoteOpen problems and directions

  • Short improvement sequences on related machines. Does one always exist from every assignment, and can it be found efficiently? The author considers this central, since equilibria matter only if they are reached quickly.
  • Other dynamics: strategic or coordinated rules, or evolutionary dynamics (Chapter 29), converging fast to exact or approximate equilibria.
  • Richer models: realistic cost functions, other social costs.
  • Coordination mechanisms (Christodoulou et al.): design machine scheduling policies so that selfishness hurts less. Simple policies cut the PoA from logarithmic to constant (see inefficiency-of-equilibria).

Quick reference

ObjectStatementNote
Loadℓj=∑A(i)=jwi/sj\ell_j = \sum_{A(i)=j} w_i/s_jmakespan =max⁡jℓj= \max_j\ell_j
Expected cost (20.1)cij=E[ℓj]+(1−pij)wi/sjc_i^j = \mathbb{E}[\ell_j] + (1-p_i^j)w_i/s_jexceeds E[ℓj]\mathbb{E}[\ell_j] unless p=1p = 1
Props 20.1–20.2support ⊆ cost-minimizing machinesmixed / pure
Prop 20.3pure equilibria existsorted loads decrease lexicographically
PoS=1= 1improvement steps from OPT
Example (2, 2, 1, 1)OPT 3, worst pure 4, fully mixed 4.25mixed can be worse
Thm 20.5pure, identical: ≤2−2m+1\le 2 - \frac{2}{m+1}tight (Exercise 20.2)
Thm 20.6max-weight best response: each agent moves at most oncemin-weight: exponential
Γ−1(m)\Gamma^{-1}(m)Θ(log⁡m/log⁡log⁡m)\Theta(\log m/\log\log m)Γ(k)=(k−1)!\Gamma(k) = (k-1)!
Thm 20.7pure, related: O(log⁡m/log⁡log⁡m)O(\log m/\log\log m)∣Lk∣≥(k+1)∣Lk+1∣\lvert L_k\rvert \ge (k+1)\lvert L_{k+1}\rvert
Lemma 20.8tasks on Lk+1L_{k+1} lie in LkL_k under OPTheavy tasks need fast machines
Thm 20.9matching lower boundgroups q!/k!q!/k! at speed 2k2^k
Thm 20.10LPT gives a pure equilibrium5/35/3 related, 4/3−1/(3m)4/3 - 1/(3m) identical
Nashificationany assignment → equilibrium, same makespan+ PTAS ⇒ (1+ϵ)(1+\epsilon)
Fully mixedpij=1/mp_i^j = 1/m, unique on identical machinesballs into bins
Prop 20.11max occupancy Θ(ln⁡m/ln⁡(1+mnln⁡m))\Theta\big(\ln m/\ln(1 + \frac mn\ln m)\big)worst at n=mn = m
Thm 20.12mixed, identical: Ω(log⁡m/log⁡log⁡m)\Omega(\log m/\log\log m)
FMNE conjecturefalsesegregated large/small tasks
Lemma 20.14Pr⁡[X≥t]≤(e EX/t)t/z\Pr[X\ge t] \le (e\,\mathbb{E}X/t)^{t/z}weighted Chernoff
Thm 20.13mixed, identical: O(log⁡m/log⁡log⁡m)O(\log m/\log\log m)max⁡E<2\max\mathbb{E} < 2 opt, then Chernoff + union
Lemmas 20.16–20.17speeds double every 2 layers; wi≤12sjw_i \le 12s_j for p<1/4p < 1/4
Thm 20.15mixed, related: O(log⁡m/log⁡log⁡log⁡m)O(\log m/\log\log\log m)4C+τ+64C + \tau + 6
Thm 20.18matching lower boundrandomize layer q/2q/2

Facts to keep to hand

  • Two independent sources of inefficiency. Coordinated but local: pure equilibria on related machines are local optima under single-task moves, and the layered speed structure costs log⁡m/log⁡log⁡m\log m/\log\log m. Uncoordinated collisions: mixed equilibria cost the balls-into-bins factor log⁡m/log⁡log⁡m\log m/\log\log m. Their combination costs only an extra log⁡log⁡m/log⁡log⁡log⁡m\log\log m/\log\log\log m.
  • Every mixed upper bound has the same two steps. First bound the maximum expected load by rerunning the pure argument with expectations. Then bound expected maximum / maximum expected with a weighted Chernoff bound plus a union bound. The union bound is affordable because each machine’s tail beyond τ\tau is ≤1/m\le 1/m.
  • Chernoff needs a weight cap, and the cap comes from equilibrium. On identical machines it is w≤optw \le \mathrm{opt}. On related machines, tasks with p≥1/4p \ge 1/4 are bounded deterministically, and those with p<1/4p < 1/4 are light (w≤12sjw \le 12s_j) because Lemma 20.16’s doubling offers a cheaper machine two layers up.
  • Every pure upper bound is “a light task would move.” Theorem 20.5: the lightest task on the busiest machine. Theorem 20.7 and Lemma 20.8: tasks on deep layers must be heavy relative to faster free machines, and that forces factorial growth of the layers.
  • Your own weight is always on your machine. The (1−pij)wi/sj(1-p_i^j)w_i/s_j term in (20.1) creates the example’s 4.25, keeps the segregated equilibrium stable, and makes randomized tasks in Theorem 20.18 pay <k+1< k+1.
  • Maximum randomization is not the worst case. Concentrating equally many heavy balls and bins beats spreading everything.
  • Order matters for best responses. Heaviest-first converges in nn steps on identical machines, lightest-first can take exponential time, and on related machines the question is open. Offline, LPT is heaviest-first by design and yields an equilibrium.

References

← All notes