the santa claus problem (maximizing the minimum load on unrelated machines)
DESCRIPTION
The Santa Claus Problem (Maximizing the minimum load on unrelated machines). Nikhil Bansal (IBM) Maxim Sviridenko (IBM). The Santa Claus Problem. m kids n toys [ n ¸ m] Kid i has value p ij ( ¸ 0) for toy j Toys distributed among kids - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/1.jpg)
1
The Santa Claus Problem(Maximizing the minimum load on unrelated machines)
Nikhil Bansal (IBM)
Maxim Sviridenko (IBM)
![Page 2: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/2.jpg)
2
The Santa Claus Problem
m kids n toys [ n ¸ m]
Kid i has value pij (¸ 0) for toy j
Toys distributed among kids
Happiness of kid i = Sum of pij of toys it gets (additive utilities)
Goal: Maximize mini=1,…,m Happiness(i)(Given target T, ensure every kid has happiness ¸ T)
Natural notion of fair allocation,proposed in game theoretic setting by [Lipton et al 04]
![Page 3: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/3.jpg)
3
Problem definition
Scheduling Problem (unrelated machine scheduling)
Kid (i) = Machine Toy (j) = Job
pij = processing time of job j on machine i.
Goal: Maximize the minimum load (will use this terminology )
Restricted assignment case:
Job has same size
Can only be placed on subset of machines ( pij 2 {pj,0} )
![Page 4: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/4.jpg)
4
Approximation Algorithms
An efficient (polynomial time) algorithm that is comparable to optimum solution on every input I
approximation algorithm A
1) A(I) · Opt(I) for every instance I
2) A runs in time polynomial in size of I
![Page 5: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/5.jpg)
5
Previous work (Makespan minimization)Extensive work on minimizing makespan (max. load)(our problem is maximize min load)
2-approx for unrelated parallel machines (arbitrary pij)and restricted assignment [Lenstra Shmoys Tardos 90]
Lots of work on various other special cases…
![Page 6: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/6.jpg)
6
Previous Work (max min problem)If n = m : Matching techniques (poly time)
(n-m+1) approximation [Bezakova Dani 05]
Can achieve Opt – pmax [Bezakova Dani 05]
(pmax = maxij pij bad approx if Opt ¼ pmax)
(1-1/k) fraction of machines get ¸ Opt/k [Golovin 05]
Restricted Assignment Setting: pij 2 {pj, 0}
Big/small good case (pj 2 {1,X} ) : O(n1/2) [Golovin 05]
No < 2 approx, unless P=NP (follows from LST 90)
![Page 7: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/7.jpg)
7
LP Formulation: 1Assignment Formulation: xij =1 if job j on machine i
Max T
j pij xij ¸ T 8 i 2 Machines (machine load >= T)
i xij · 1 8 j 2 Jobs (a job used at most once)
Valid Integer programming formulation (xij 2 {0,1})
LP relaxation useless: Infinite Gap
m machines, 1 job of size x (on all machines)
LP: x/m IP = 0 Big jobs trick LP.
![Page 8: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/8.jpg)
8
Job Truncation Idea (Lenstra, Shmoys, Tardos)In schedule w/ value T, can truncate sizes to T
p’ij = min(pij,T)
j p’ij xij ¸ T 8 machines i
i xij · 1 8 jobs j
Good News: T – pmax [Bezakova Dani 05]
pmax = max job size
T
Find largest T for which LP is feasible
![Page 9: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/9.jpg)
9
Job Truncation for max min ?Bad news: (m) gap (even for restricted assignment case)
Instance: m small jobs, numbered 1,2,…,m
Job i : size 1 on machine i, and size 0 elsewhere
m-1 bigs jobs (size m on every machine)
m=31 2
1 2 3
M1
LP: m
IP: 1M2 M3
Small jobs
Big jobs
![Page 10: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/10.jpg)
10
Configuration LP
Target solution value T.
Set of jobs S is valid configuration for machine i, if
size of S on i is ¸ T Let C(i) = all valid sets for i
Variable for each valid configuration S for machine i
1 config. per machine
Job used · once
![Page 11: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/11.jpg)
11
Exponentially many variablesSeparation oracle for dual : knapsack problem.
1/2 1/4 1/4 0.4 0.6
Each machine assigned 1 unit of configurations
Each job has at most 1 unit of appearances
T
View of Configuration LP solution
Width = amount of configuration
![Page 12: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/12.jpg)
12
Our Results
1) O( log log m / log log log m) approximation for restricted assignment case (pij 2 {pj,0} )
(previous best n-m+1, LST LP has (m) gap)
(m1/2), (n1/2) integrality gap for configuration LP
when pij arbitrary
![Page 13: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/13.jpg)
13
This Talk
Restricted Assignment case:
1) Describe O(log n / log log n) approx (randomized rounding)
2) Improvement to
![Page 14: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/14.jpg)
14
Restricted Assignment: Basic ProblemOpt – pmax known: Hard case when pmax ¼ Opt
Assume jobs of size Opt (big) or 1 (small)
One big job suffices to load a machine.
Basic Problem: Match big jobs to machines s.t. remaining machines can be loaded with small jobs.
1 2 3 4
Pink on 1 Green on 4Good !
![Page 15: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/15.jpg)
15
Restricted Assignment: Basic ProblemOpt – pmax known: Hard case when pmax ¼ Opt
Assume jobs of size Opt (big) or 1 (small)
One big job suffices to load a machine.
Basic Problem: Match big jobs to machines s.t. remaining machines can be loaded with small jobs.
1 2 3 4
Pink on 2 Green on 4 Bad !
![Page 16: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/16.jpg)
16
Main Idea of Proof
Transform LP solution to more structured one (only O(1) loss). (Pseudo) Rounding Procedure: Match big jobs to machines,and place smalls on remaining machines 1) Load on each machine Opt2) Small jobs used up to times.
Easy but key Fact: Place smalls s.t. each machine has load Opt/)
How small can we make ??
![Page 17: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/17.jpg)
17
Structural LemmaMachines
Big Jobs
![Page 18: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/18.jpg)
18
Structural Lemma
1) |Ji | = |Mi| -1.
2) Ji can be placed on any |Mi|-1 machines in Mi.
M1 M3M2
J1 J2 J3
Machines
Big Jobs
![Page 19: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/19.jpg)
19
Proof Sketch: Structural Lemma
machines
Big jobs
0.3 0.5 Remove cycles,Tree with leaves as machines
![Page 20: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/20.jpg)
20
Reduced Problem
In each group choose 1 machine to place smalls (bigs handled automatically)
For each group: We have one unit of small configurations distributed among the machines.
M1
.4 .3 .3.2 .5 .3 .1 .5 .4J1
![Page 21: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/21.jpg)
21
Reduced Problem
Randomized rounding: View these as probabilities. Choose a machine (to place smalls) at random for each group.
Fractional congestion: O(1)Chernoff Bounds: Worst case congestion O(log n / log log n)
M1
.4 .3 .3.2 .5 .3 .1 .5 .4J1
![Page 22: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/22.jpg)
22
Congestion with Outliers
Do not care about worst case congestion.
Suppose throw away 50% small jobs from each machine, and get low congestion on remaining jobs.
Congestion with outliers problem
We show: Can throw away small fraction from each machine, and get congestion
![Page 23: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/23.jpg)
23
First attempts
Randomized Rounding with alterations: Job occurs O(1) times in expectation. Throw away high frequency jobs
Problem: Correlation!
Power of many choices: Choose O(1) sets at random instead of 1, and then pick best. Does not work either…
![Page 24: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/24.jpg)
24
Our Approach
Reduce Congestion with outliers to worst case congestion minimization on small sets.
Random restriction of small jobss.t. each set has ¼ polylog m jobs
Find low worst case congestion solution on this instance.
Key result: Whp, solution with low congestion on restricted instance is also low congestion with outliers on original instance.
![Page 25: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/25.jpg)
25
Small sets have low worst case congestionTheorem [Leighton Lu Rao Srinivasan 01]:
If sets of size k can get O(log k / log log k) congestion.
Non-trivial: Repeated application of Lovasz Local Lemma
In our setting k = polylog (m), gives
approximation
![Page 26: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/26.jpg)
26
Concluding Remarks
Huge gaps remain in our understanding.
Arbitrary pij : O(n) approx, vs. hardness factor of 2
Can we use the (n1/2) integrality gap instance to show better hardness?
For restricted assignment, is the right answer O(1) ?
Suffices to prove congestion with outliers property.
![Page 27: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/27.jpg)
27
Questions ?
![Page 28: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/28.jpg)
28
Attempt 1
For each Ci, choose sets at random,
Throw away elements with high congestion
(hopefully not too many)
Bad when sets correlated
Either Sil = Si’l’ or Sil Å Si’l’ = ;
If one element congested,Whole set congested.
Whp congestion log m / log log m )
![Page 29: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/29.jpg)
29
Correlated Sets
Independent sets : Random works wellCorrelated sets: Other techniques
Need to be more subtle.
Either Sil = Si’l’ or Sil Å Si’l’ = ;
Fractional Matching Between Sets & super-machines
Can find perfect machingCongestion = 1 !!
![Page 30: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/30.jpg)
30
Fact (Leighton et al 2001)
If each set has cardinality polylog m, then can find a choice of sets s.t. congestion = O( log log m / log log log m)
[Constructive version of Lovasz Local Lemma](intuitively, low dependence between sets)
In our case: Sets have big cardinality, but allow throwing elements out.
![Page 31: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/31.jpg)
31
Bad choices
Call a choice of sets bad, if no matter how you delete upto 50% elements, congestion ¸ c log log m / log log log m.
Main Result: Good choice always exists and can be found in poly time.
Given a good choice of sets, the elements to throw can be found via a max flow problem. (proof skipped)
![Page 32: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/32.jpg)
32
AlgorithmTake a random sample of elements.Consider restriction of sets of these elementsEach set has about poly log m jobs.
Choose sets with O(log log m/ log log log m) congestion (Leighton et al)
Theorem: The same choice of sets works for original set system.
Proof: For every bad choice of sets in original system => high congestion in sampled system.
Naïve counting does not work. Exponentially many choices of sets.Notion of core of a bad choice function. VC-dimension type arguments.
![Page 33: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/33.jpg)
33
Configuration LP is strong !
Example: m-1 bigs jobs (size m on every machine)
m small jobs, call then 1,2,…,m
Small Job i has size 1 on machine i and 0 elsewhere.
IP Opt =1 Configuration LP infeasible for T > 1.
Feasible configuration for any machine i
(has to contain a big)
Infeasible: m machines but only m-1 big jobs.
b b
s
![Page 34: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/34.jpg)
34
Robustness of Small JobsRecall: Assignment LP gives T – pmax
Suppose pmax < T/10 (integral solution: T – T/10)
Suppose xij only satisfy a relaxed inequality
j pij xij ¸ T 8 machines ii xij · 1 8 jobs j
j pij xij ¸ Ti xij · 3
Can still round it toT/3 - pmax
![Page 35: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/35.jpg)
35
Big jobs are not robust3 machines. 1 job of size T.
Opt = 0 Relaxed LP has value T.
(big jobs are delicate)
We will transform LP solution (get more structure)
s.t. Small jobs can occur upto O(1) times.
After Rounding: Match big jobs to machines,
and smalls on remaining machines
1) Load on each machine T
2) Small used up to times.
![Page 36: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/36.jpg)
36
An easy case
Suppose big jobs occupy < 3/4 of any machine. Great!
Hard case: If 1- o(1) machine used by bigs, very little by smalls.
.01.33 .33 .33
1/2 1/4 1/4 1/2 1/4 1/4
![Page 37: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/37.jpg)
37
Structural Lemma
100 machines form this group.
99 Big jobs (can be placed “anywhere” on these)
One unit of small configurations.
.01.33 .33 .33 .01.33 .33 .33 .01.33 .33 .33
![Page 38: The Santa Claus Problem (Maximizing the minimum load on unrelated machines)](https://reader036.vdocuments.net/reader036/viewer/2022081504/56814a67550346895db7846e/html5/thumbnails/38.jpg)
38
Can ignore bigs
.01.33 .33 .33 .01.33 .33 .33 .01.33 .33 .33Super-machine
Choose one “configuration” from each super-machine