Download presentation
Presentation is loading. Please wait.
1
A Unified Approach to Approximating Resource Allocation and Scheduling Amotz Bar-Noy.……...AT&T and Tel Aviv University Reuven Bar-Yehuda….Technion IIT Ari Freund……………Technion IIT Seffi Naor…………….Bell Labs and Technion IIT Baruch Schieber…...…IBM T.J. Watson Slides and paper at: http://www.cs.technion.ac.il/~reuven
2
Summery of Results: Discrete Single Machine Scheduling Bar-Noy, Guha, Naor and Schieber STOC 99: 1/2 Non Combinatorial* Berman, DasGupta, STOC 00: 1/2 This Talk, STOC 00(Independent) 1/2 Bandwidth Allocation Albers, Arora, Khanna SODA 99: O(1) for |Activity i |=1* Uma, Phillips, Wein SODA 00: 1/4 Non combinatorial. This Talk STOC 00 (Independent) 1/3 for w 1/2 This Talk STOC 00 (Independent) 1/5 for w 1 Parallel Unrelated Machines: Bar-Noy, Guha, Naor and Schieber STOC 99: 1/3 Berman, DasGupta STOC 00: 1/2 This Talk, STOC 00(Independent) 1/2
3
Summery of Results: Continuous Single Machine Scheduling Bar-Noy, Guha, Naor and Schieber STOC 99: 1/3 Non Combinatorial Berman, DasGupta STOC 00: 1/2·(1- ) This Talk, STOC 00: (Independent) 1/2·(1- ) Bandwidth Allocation Uma, Phillips, Wein SODA 00: 1/6 Non combinatorial This Talk, STOC 00 (Independent) 1/3 ·(1- ) for w 1/2 1/5 ·(1- ) for w 1 Parallel unrelated machines: Bar-Noy, Guha, Naor and Schieber STOC 99: 1/4 Berman, DasGupta STOC 00: 1/2·(1- ) This Talk, STOC 00: (Independent) 1/2·(1- )
4
Summery of Results: and more… General Off-line Caching Problem Albers, Arora, Khanna SODA 99: O(1) Cache_Size += O(Largest_Page) O(log(Cache_Size+Max_Page_Penalty)) This Talk, STOC 00: 4 Ring topology: Transformation of approx ratio from line to ring topology 1/ 1/( +1+ ) Dynamic storage allocation (contiguous allocation): Previous results: none for throughput maximization Previous results Kierstead 91 for resource minimization: 6 This paper: 1/35 for throughput max using the result for resource min.
5
The Local-Ratio Technique: Basic definitions The Local-Ratio Technique: Basic definitions Given a profit [penalty] vector p. Maximize[Minimize] p·x Subject to:feasibility constraints F(x) x is r-approximation if F(x) and p·x [ ] r · p·x* An algorithm is r-approximation if for any p, F it returns an r-approximation
6
The Local-Ratio Theorem: The Local-Ratio Theorem: x is an r-approximation with respect to p 1 x is an r-approximation with respect to p- p 1 x is an r-approximation with respect to p Proof: ( For maximization) p 1 · x r × p 1 * p 2 · x r × p 2 * p · x r × ( p 1 *+ p 2 *) r × ( p 1 + p 2 )*
7
Special case: Optimization is 1-approximation Special case: Optimization is 1-approximation x is an optimum with respect to p 1 x is an optimum with respect to p- p 1 x is an optimum with respect to p
8
A Local-Ratio Schema for Maximization[Minimization] problems: A Local-Ratio Schema for Maximization[Minimization] problems: Algorithm r-ApproxMax[Min]( Set, p ) If Set = Φ then return Φ ; If I Set p(I) 0 then return r-ApproxMax( Set-{I}, p ) ; [ If I Set p(I)=0 then return {I} r-ApproxMin( Set-{I}, p ) ; ] Define “good” p 1 ; REC = r-ApproxMax[Min]( S, p- p 1 ) ; If REC is not an r-approximation w.r.t. p 1 then “fix it”; return REC;
9
The Local-Ratio Theorem: Applications Applications to some optimization algorithms (r = 1): ( MST) Minimum Spanning Tree (Kruskal) MST ( SHORTEST-PATH) s-t Shortest Path (Dijkstra) SHORTEST-PATH (LONGEST-PATH) s-t DAG Longest Path (Can be done with dynamic programming)(LONGEST-PATH) (INTERVAL-IS) Independents-Set in Interval Graphs Usually done with dynamic programming)(INTERVAL-IS) (LONG-SEQ) Longest (weighted) monotone subsequence (Can be done with dynamic programming)(LONG-SEQ) ( MIN_CUT) Minimum Capacity s,t Cut (e.g. Ford, Dinitz) MIN_CUT Applications to some 2-Approximation algorithms: (r = 2) ( VC) Minimum Vertex Cover (Bar-Yehuda and Even) VC ( FVS) Vertex Feedback Set (Becker and Geiger) FVS ( GSF) Generalized Steiner Forest (Williamson, Goemans, Mihail, and Vazirani) GSF ( Min 2SAT) Minimum Two-Satisfibility (Gusfield and Pitt) Min 2SAT ( 2VIP) Two Variable Integer Programming (Bar-Yehuda and Rawitz) 2VIP ( PVC) Partial Vertex Cover (Bar-Yehuda) PVC ( GVC) Generalized Vertex Cover (Bar-Yehuda and Rawitz) GVC Applications to some other Approximations: ( SC) Minimum Set Cover (Bar-Yehuda and Even) SC ( PSC) Partial Set Cover (Bar-Yehuda) PSC ( MSP) Maximum Set Packing (Arkin and Hasin) MSP Applications Resource Allocation and Scheduling : ….
10
Maximum Independent Set in Interval Graphs Maximum Independent Set in Interval Graphs Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 time Maximize s.t. For each instance I: For each time t:
11
Maximum Independent Set in Interval Graphs: How to select P 1 to get optimization? Maximum Independent Set in Interval Graphs: How to select P 1 to get optimization? Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 Î time Let Î be an interval that ends first; 1 if I in conflict with Î For all intervals I define: p 1 (I) = 0 else For every feasible x: p 1 ·x 1 Every Î- maximal is optimal. For every Î- maximal x: p 1 ·x 1 P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0
12
Maximum Independent Set in Interval Graphs: An Optimization Algorithm Maximum Independent Set in Interval Graphs: An Optimization Algorithm Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 Î time Algorithm MaxIS( S, p ) If S = Φ then return Φ ; If I S p(I) 0 then return MaxIS( S - {I}, p); Let Î S that ends first; I S define: p 1 (I) = p(Î) (I in conflict with Î) ; IS = MaxIS( S, p- p 1 ) ; If IS is Î- maximal then return IS else return IS {Î}; P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P 1 =P (Î )
13
Maximum Independent Set in Interval Graphs: Running Example Maximum Independent Set in Interval Graphs: Running Example P(I 1 ) = 5 -5 P(I 4 ) = 9 -5 -4 P(I 3 ) = 5 -5 P(I 2 ) = 3 -5 P(I 6 ) = 6 -4 -2 P(I 5 ) = 3 -4 -5 -4 -2
14
Single Machine Scheduling : Single Machine Scheduling : Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 ????????????? time Maximize s.t. For each instance I: For each time t: For each activity A: Bar-Noy, Guha, Naor and Schieber STOC 99: 1/2 LP Berman, DasGupta, STOC 00: 1/2 This Talk, STOC 00(Independent) 1/2
15
Single Machine Scheduling: How to select P 1 to get ½-approximation ? Single Machine Scheduling: How to select P 1 to get ½-approximation ? Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 Î time Let Î be an interval that ends first; 1 if I in conflict with Î For all intervals I define: p 1 (I) = 0 else For every feasible x: p 1 ·x 2 Every Î- maximal is 1/2-approximation For every Î- maximal x: p 1 ·x 1 P1=1P1=1P1=1P1=1P1=1P1=1P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=1P1=1 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0 P1=0P1=0P1=0P1=0 P1=0P1=0
16
Single Machine Scheduling: The ½-approximation Algorithm Single Machine Scheduling: The ½-approximation Algorithm Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 Î time Algorithm MaxIS( S, p ) If S = Φ then return Φ ; If I S p(I) 0 then return MaxIS( S - {I}, p); Let Î S that ends first; I S define: p 1 (I) = p(Î) (I in conflict with Î) ; IS = MaxIS( S, p- p 1 ) ; If IS is Î- maximal then return IS else return IS {Î};
17
Activity9 Activity8 Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 I w(I) s(I) e(I) time Maximize s.t. For each instance I: For each time t: For each activity A: Bandwidth Allocation Bandwidth Allocation Albers, Arora, Khanna SODA 99: O(1) |A i |=1* Uma, Phillips, Wein SODA 00: 1/4 LP. This Talk 1/3 for w 1/2 and 1/5 for w 1
18
Bandwidth Allocation for w 1/2 How to select P 1 to get 1/3-approximation? Bandwidth Allocation for w 1/2 How to select P 1 to get 1/3-approximation? Activity9 Activity8 Î Activity7 Activity6 Activity5 Activity4 Activity3 Activity2 Activity1 I w(I) s(I) e(I) time 1 if I in the same activity of Î For all intervals I define: p 1 (I) = 2*w(I) if I in time conflict with Î 0 else For every feasible x: p 1 ·x 3 Every Î- maximal is 1/3-approximation For every Î- maximal x: p 1 ·x 1
19
Bandwidth Allocation The 1/5-approximation for any w 1 Bandwidth Allocation The 1/5-approximation for any w 1 Activity9 Activity8 w > ½ Activity7 w > ½ w > ½ Activity6 Activity5 w > ½ Activity4 Activity3 w > ½ w > ½ Activity2 Activity1 w > ½ w > ½ w > ½ Algorithm: 1. GRAY = Find 1/2-approximation for gray (w>1/2) intervals; 2. COLORED = Find 1/3-approximation for colored intervals 3. Return the one with the larger profit Analysis: If GRAY* 40%OPT then GRAY 1/2(40%OPT)=20%OPT else COLORED* 60%OPT thus COLORED 1/3(60%OPT)=20%OPT
20
Continuous Scheduling Single Machine Scheduling (w=1) Bar-Noy, Guha, Naor and Schieber STOC 99: 1/3 Non Combinatorial Berman, DasGupta STOC 00: 1/2·(1- ) This Talk, STOC 00: (Independent) 1/2·(1- ) Bandwidth Allocation Uma, Phillips, Wein SODA 00: 1/6 Non combinatorial This Talk, STOC 00 (Independent) 1/3 ·(1- ) for w 1/2 1/5 ·(1- ) for w 1 s(I) e(I) { w(I)w(I) d(I)
21
If currant p(I 1 ) original p(I 1 ) then delete I 1 else Split I 2 = (s 2,e 2 ] to I 21 =(s 2, s 1 +d 1 ] and I 22 =(s 1 +d 1,e 2 ] Continuous Scheduling: Split and Round Profit (Loose additional (1- ) factor) Continuous Scheduling: Split and Round Profit (Loose additional (1- ) factor) d(I 1 ) d(I 2 ) d(I 1 ) d(I 2 ) I 11 I 12 I 21 I 22
22
d d d d d d d d d d Parallel Unrelated Machines: Continous Bar-Noy, Guha, Naor and Schieber STOC 99: 1/3 1/4 Berman, DasGupta STOC 00: 1/2 1/2·(1- ) This Talk, STOC 00(Independent) 1/2 1/2·(1- )
23
Parallel unrelated machines: c d d d d h h h c c c k A A i i i k
24
Parallel unrelated machines: 1/5-approximation (not in the paper) Each machine resource 1 p 1 (Red ) = p 1 (orange ) = 1; p 1 (Yellow ) = 2width; p 1 (All others) = 0; Parallel unrelated machines: 1/5-approximation (not in the paper) Each machine resource 1 p 1 (Red ) = p 1 (orange d ) = 1; p 1 (Yellow d ) = 2width; p 1 (All others) = 0; c d d d d d d d h h h c c c k A A i i i k
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.