Minimizing Response time in Broadcast Scheduling - PowerPoint PPT Presentation

1 / 95
About This Presentation
Title:

Minimizing Response time in Broadcast Scheduling

Description:

Minimizing Response time in Broadcast Scheduling Nikhil Bansal Don Coppersmith and Maxim Sviridenko Problem Statement Collection of pages 1,2, ,n at a broadcast ... – PowerPoint PPT presentation

Number of Views:140
Avg rating:3.0/5.0
Slides: 96
Provided by: lili120
Category:

less

Transcript and Presenter's Notes

Title: Minimizing Response time in Broadcast Scheduling


1
Minimizing Response time in Broadcast Scheduling
Nikhil Bansal

Don Coppersmith and Maxim Sviridenko
2
Problem Statement
  • Collection of pages 1,2,,n at a broadcast
    server (satellite)
  • Requests r1,,rm Request ri page
    pi, arrival time ai
  • Many requests may arrive at a time slot.
  • Server transmits 1 page per time slot.
  • Page p broadcast at time t, satisfies all
    outstanding requests for p that arrived at time
    ltt
  • Given a schedule, let bi denote when ri is
    satisfied
  • Response Time bi ai
  • Goal Find broadcast schedule to
  • Minimize average response time (?i (bi ai)) / m

3
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
t0
1,1,2
3
2,3
Requests
Total Response Time
4
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1
5
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1
6
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1 3 1
7
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1 3 1 2 9
8
Problem Statement
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
3
t0
1,1,2
3
2,3
Requests
Avg1.5
Total Response Time 1 1 1 3 1 2 9
9
  • NP-Hard Erlebach, Hall 02
  • Resource augmentation Can transmit sgt1 pages
    per time slot.
  • s-speed, c-approx If maxI Algs(I)/Opt1(I)
    c
  • 3-speed, 3-approx
    Kalyanasundaram et al 00
  • 6-speed, 1-approx Erlebach,
    Hall 02
  • 2-speed, 2-approx 4-speed, 1-approx Gandhi
    et al 02
  • 2-speed, 1-approx Gandhi et al
    02
  • (1?)-speed, O(1/?)-approx B., Charikar,
    Khanna, Naor 05
  • Resource augmentation vs No speed-up
  • Requests (1,2) ( 3,4) (5,6)
  • Speed 2 Avg resp time O(1) Speed 1
    O(n)

10
  • NP-Hard Erlebach, Hall 02
  • Resource augmentation Can transmit sgt1 pages
    per time slot.
  • s-speed, c-approx If maxI Algs(I)/Opt1(I)
    c
  • 3-speed, 3-approx
    Kalyanasundaram et al 00
  • 6-speed, 1-approx Erlebach,
    Hall 02
  • 2-speed, 2-approx 4-speed, 1-approx Gandhi
    et al 02
  • 2-speed, 1-approx Gandhi et al
    02
  • (1?)-speed, O(1/?)-approx B., Charikar,
    Khanna, Naor 05
  • Without speedup Trivial O(n) approximation,
    Round Robin
  • O(n1/2) approximation B.,
    Charikar, Khanna, Naor 05
  • O(log2n/log log n) approximation B.,
    Coppersmith, Sviridenko 06

11
Previous Work (Online Case)
  • Round Robin Trivial O(n) competitive
  • Most outstanding requests , Longest Wait First
    ?
  • Any deterministic alg ?(n) competitive
    Kalyanasundaram et al 00
  • Any randomized alg ?(n1/2)- competitive
  • B-Equi 4-speed,
    4-competitive Edmonds, Pruhs 02
  • Longest Wait First 6-speed, O(1)-compet.
    Edmonds, Pruhs 04
  • Minimize Max resp time O(1) approx Bartal,
    Muthukrishnan 00
  • Throughput Maximization 3/4 approx Gandhi et
    al 02

12
In this talk
  • Average Response time minimization Offline
    Setting
  • a) 3-speed, 3-approximation
  • b) (1?)-speed, O(1/?)-approximation
  • 1-speed, O(n1/2) approximation
  • c) O(log2 n/ log log n) approximation
  • (all via a natural LP relaxation)

13
The IP Formulation
  • Key decision variable
  • Whether page p transmitted at time t ?
  • How to express response time of a request ?

14
Time-indexed IP formulation
ntp requests for page p that arrive at time t
15
LP Solution
  • probability page p broadcast at t
  • probability, request for p at t, satisfied
    at tgtt

For request (p,t), contribution to LP
0.2
0.6
0.0
0.3
0.6
p3
0.5
0.1
0.3
0.2
0.1
p2
starting t t1, until 1
unit of page p seen
0.2
0.5
0.3
0.8
0.3
p1
request for green
16
Idea for 3-speed, 3-approximation
  • For each page p, mark intervals where cumulative
    amount of page transmitted by LP 1/3

If can ensure that one transmission of page p
during each such interval gt 3
approximation Simple greedy algorithm (EDF
type) ensures this.
17
More careful analysis for 2-speed
  • For each page p, mark intervals where cumulative
    amount of page transmitted by LP 1/2

Even if one transmission within each
interval Some requests may end up paying much
more than LP. Some additional ideas give
2-speed, O(1) approx
18
Idea for O(n1/2) approx
  • probability page p broadcast at t
  • probability, request for p at t, satisfied
    at tgtt

For request (p,t), contribution to LP
Observation If transmit p at t with prob
, Expected response time contribution to LP

0.2
0.6
0.0
0.3
0.6
0.5
0.1
0.3
0.2
0.1
starting t t1, until 1
unit of page p seen
0.2
0.5
0.3
0.8
0.3
request for green
19
Idea for O(n1/2) approx
  • Simple observation
  • Consider page p, choose ? 2 0,1) uniformly at
    random
  • Mark times where cumulative page p transmitted
    thus far first becomes i? for i0,1,2,

For any request for p E?cost LP cost
?
1?
2?
Pr p scheduled at time t
20
Rounding Procedure (Tentative)
  • For each page p, choose ?p 2 0,1) u.a.r
  • Tentative Schedule Schedule p wherever
    cumulative amount first exceeds i ?p, for
    i0,1,


E of tentative pages at any time 1 E cost
of tentative schedule Opt LP cost.
21
Tentative ! Proper Schedule
Greedily assign tentatively scheduled pages to
a free time slot in the future
Tentative transmission at t, pushed ahead by
Backlog(t) Will show Backlog(t) O(n1/2) on
average
22
Analysis
  • Backlog(t) maxxltt Tentative pages in x,t)
    (t-x)

t
23
Analysis
  • Backlog(t) maxxltt Tentative pages in x,t)
    (t-x)
  • Ebacklog(t) O(n1/2)
  • If (1?)-speed, EBacklog(t) O(1/?)

In interval Jx,t, if LP has l(p) amount of
page p, then tentative schedule has d l(p) e w/
prob frac(l(p))
or b l(p) c w/ prob 1-
frac(l(p)) Size(J) ?p l(p) Tentative pages
in J Size(J) O(n1/2) Standard
deviation

24
Overview
  • Good Pseudo-schedule (each request satisfied
    locally).
  • But, Independent rounding for each page p.
  • Backlog O(n1/2) when pages 1n merged.

25
Attempt 1
  • Why choose the offset ?p independently for each
    page p.
  • Perhaps a better dependent way?
  • No. An ½ integral LP instance with O(n1/2)
    backlog no matter what offsets chosen.
  • Intuitively, choosing offsets is not useful
    because
  • choice of ?p determines all future transmissions
    of page p.

26
  • Need to abandon locality!

27
Idea for improved approximation
  • Relax the locality requirement for tentative
    schedules
  • Ensure that combining individual schedules for
    each page does not produce a large backlog.

28
When can we violate locality?
Suppose transmit here
0.5
0.5
0.5
0.5
Region1
Region 2
Non-local Requests here not satisfied locally.
However Not a problem if If region 1 and
region 2 had similar of requests for page
p Problem only if Much fewer requests in
region 2 than region 1
29
Blocks
  • For each page p, partition time into Blocks
    B(p,i)
  • Can choose offset ?(p,i) for B(p,i) u.a.r in
    0,1

t
t
B(p,i1)
B(p,i)
Expected cost for any request 3 wait in LP
30
Semi-Local Schedules
In each block B(p,i), LP transmits ¼ log(Tn)
units of page p
?(p,1)
?(p,2)
?(p,3)
?(p,1)
?(p,2)
  • In each block B(p,i) if choose offset ?(p,i)
    u.a.r 2 0,1
  • Tentative (semi-local) Schedule Cost 3 times
    Opt cost

31
Semi-Local Schedules
We will form a semi-local tentative schedule by
choosing offsets ?(p,i) for each block B(p,i)
?(p,1)
?(p,2)
?(p,3)
?(p,1)
?(p,2)
But, we will not do it randomly. Though low
cost, it has high ?(n1/2) backlog, when all
pages combined.
32
Issue to address
  • How to determine offsets ?(p,i) ?
  • Will solve a sequence of LPs
  • Can choose offsets such that
  • 1) Cost of pseudo-schedule 3 OPT
  • 2) Backlog O( log2 (Tn))
  • Will imply 3 OPT log2 (Tn)
    approximation

33
Basic Idea
  • Original LP constraint
  • For each time unit, 1 cumulative unit of page
    transmitted.
  • Relax it Suppose only want 10 units of page in
    each group of 10 time units.
  • If solution integral Great!
    Backlog lt 20

10
20
30
34
Basic Idea
  • Original LP constraint
  • For each time unit, 1 cumulative unit of page
    transmitted.
  • Relax it Suppose only want 10 units of page in
    each group of 10 time units.
  • If only 50 variables integral Still Great!
  • Recurse Backlog lt 20
    log T

10
20
30
35
LP for choosing offsets
What offset ?(p,i) to choose for block B(p,i)
? Assume ?(p,i) 2 j?
j1,2,,1/? Define variable x(p,i,j) s.t.
x(p,i,j) 1 iff ?(p,i) j? Let
R(B(p,i,j)) contribution to total cost if
?(p,i) is j? (coefficients of objective
function)
36
LP for choosing offsets
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1 8
    Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,t) x(p,i,j) 1 8 time t
  • c(p,i,j,t) 1 iff offset j? for B(p,i)
    implies page p at time t
  • Number of constraints Blocks time units
  • A LP soln with Blocks time units
    non-zero vars
  • If some x(p,i,j) fractional, 2 non-zero
    variables for B(p,i)
  • Suppose time units lt Blocks/2 50
    good blocks
  • Blocks ¼ (Tn)/ log (Tn)

37
Main Idea Relax Constraints
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1
    8 Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,H) x(p,i,j) Size(H) 8
    intervals H
  • c(p,i,j,H) units of page p in H if choose
    offset j for B(p,i)

H Intervals of 5 log (Tn) time slots
50 of blocks have an x(p,i,j)1 Remove these
blocks and Repeat for O(log (Tn)) steps ...
38
Overview of Algorithm
  • Each recursion adds O(log (Tn)) to backlog
  • Final solution 3 Opt O(log2 (Tn))
  • Can improve overall guarantee slightly to
  • O(log2 (Tn)/log log (Tn))
  • Can show wlog T poly (n)

39
Concluding Remarks
  • Best known integrality gap 1.027
  • Open Is there an O(1) approximation?
  • Online Case
  • Best known 4-speed, 4-competitive Edmonds,
    Pruhs 02
  • Is there a (1?)-speed, O(1)-competitive
    algorithm?

40
  • Questions?

41
At least 50 blocks removed
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1
    8 Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,H) x(p,i,j) Size(H) 8
    intervals H
  • constraints blocks intervals
  • (Tn)/log(Tn) (Tn)/ 5
    log(Tn)
  • f i constraints (Basic LP soln)
  • f/2 i blocks
  • i blocks 2 intervals 0.5 blocks

i variables set to 1 f non-zero fractional
variables
42
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
1
2
3
Day 0
43
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 0
Day 1
Total Wait 2
44
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 0
Day 1
Day 2
Total Wait 2 6
45
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 1
Day 2
Total Wait 2 6 6
46
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 4 Visit Town 1
Day 1
Day 2
Total Wait 2 6 6 9
47
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 4 Visit Town 1
Day 1
Day 2
Avg. Wait (2 6 6 9)/ 14
48
Traveling Repairman with release times
  • Collection of requests r1,,rm
  • Request ri ( Vertex vi , time ti )
  • A vertex may submit more than 1 request.
  • If repairmen visits v at time t it satisfies all
    outstanding requests at v made before time t.
  • Goal Minimize average waiting time to satisfy
    request.
  • Considerably harder!
  • Very restricted case All distances are 1.
  • Also referred to as broadcast scheduling problem.

49
Broadcast Scheduling Problem
  • Collection of pages 1,2,,n at a broadcast
    server (satellite)
  • Requests r1,,rm Request ri page
    pi, arrival time ai
  • Many requests may arrive at a time slot.
  • Server transmits 1 page per time slot.
  • Page p broadcast at time t, satisfies all
    outstanding requests for p that arrived at time
    ltt
  • If request ri satisfied at bi
    Response Time bi ai
  • Goal Find broadcast schedule to
  • Minimize average response time (?i (bi ai)) / m

50
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
t0
1,1,2
3
2,3
Requests
Total Response Time
51
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1
52
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1
53
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1 3 1
54
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
3
t0
1,1,2
3
2,3
Requests
Total Response Time 1 1 1 3 1 2 9
55
Example
  • Response Time of ri bi ai
  • bi time ri satisfied ai arrival
    time of ri
  • Broadcasting page p at time t satisfies all
    outstanding requests for p that arrive at ltt.

Pages 1,2,3
1
2
3
3
t0
1,1,2
3
2,3
Requests
Avg1.5
Total Response Time 1 1 1 3 1 2 9
56
  • NP-Hard Erlebach, Hall 02
  • Resource augmentation Can transmit sgt1 pages
    per time slot.
  • s-speed, c-approx If maxI Algs(I)/Opt1(I)
    c
  • 3-speed, 3-approx
    Kalyanasundaram et al 00
  • 6-speed, 1-approx Erlebach,
    Hall 02
  • 2-speed, 2-approx 4-speed, 1-approx Gandhi
    et al 02
  • 2-speed, 1-approx Gandhi et al
    02
  • (1?)-speed, O(1/?)-approx B., Charikar,
    Khanna, Naor 05
  • Without speedup Trivial O(n) approximation,
    Round Robin
  • O(n1/2) approximation B.,
    Charikar, Khanna, Naor 05
  • O(log2n/log log n) approximation B.,
    Coppersmith, Sviridenko

57
Previous Work (Online Case)
  • Any deterministic alg ?(n) competitive
    Kalyanasundaram et al 00
  • Any randomized alg ?(n1/2)- competitive
  • B-Equi 4-speed, 4-competitive
    Edmonds, Pruhs 02
  • Longest Wait First 6-speed, O(1) compet.
    Edmonds, Pruhs 04

58
In this talk
  • Approximation Algorithms without Resource
    Augmentation.
  • a) O(n1/2) approximation B., Charikar,
    Khanna, Naor 05
  • b) O(log2 n/ log log n) approximation B.,
    Coppersmith, Sviridenko

59
Time-indexed IP formulation
ntp requests for page p that arrive at time t
60
LP Solution
  • amount of page p broadcast at t
  • request for p at t, amount satisfied at tgtt

For request (p,t), contribution to LP
0.2
0.6
0.0
0.3
0.6
p3
0.5
0.1
0.3
0.2
0.1
p2
starting t t1, until 1
unit of page p seen
0.2
0.5
0.3
0.8
0.3
p1

t
t1
t2
request for green
61
LP Solution
  • amount of page p broadcast at t
  • request for p at t, amount satisfied at tgtt

For request (p,t), contribution to LP
p3
0.2
0.6
0.0
0.3
0.6
p2
0.5
0.1
0.3
0.2
0.1
starting t t1, until 1
unit of page p seen
p1
0.2
0.5
0.3
0.8
0.3

t
t1
t2
request for green
62
Rounding Procedure
First obtain a tentative schedule. May assign
more than one page to a time slot.
63
Rounding Procedure
First obtain a tentative schedule. May assign
more than one page to a time slot.
Greedily assign tentatively scheduled pages to
a free time slot in the future
Final Cost Cost of tentative schedule
distance moved
64
Rounding Procedure (Tentative)
  • Consider page p, choose ? 2 0,1) uniformly at
    random
  • Mark times where cumulative page p transmitted
    thus far in LP solution first becomes i?
    for i0,1,2,

?
1?
2?
65
Rounding Procedure (Tentative)
  • Consider page p, choose ? 2 0,1) uniformly at
    random
  • Mark times where cumulative page p transmitted
    thus far in LP solution first becomes i?
    for i0,1,2,

For request (p,t), contribution to LP
Pr p scheduled at time t
0.2
0.5
0.3
0.8
0.3
request for green
For any request for page p E?cost LP cost
66
Rounding Procedure (Tentative)
  • For each page p, choose ?p 2 0,1) u.a.r
  • Tentative Schedule Schedule p wherever
    cumulative amount first exceeds i ?p, for
    i0,1,


E of tentative pages at any time 1 E cost
of tentative schedule Opt LP cost.
67
Tentative ! Proper Schedule
Greedily assign tentatively scheduled pages to
a free time slot in the future
Tentative transmission at t, pushed ahead by
Backlog(t) Backlog(t) ?(n1/2) on average
68
Analysis
  • Backlog at time t
  • No more than b, if every interval t-x,t has at
    most xb pages assigned to it.

t
69
Expected Backlog ?(n1/2)
Consider interval t-x,t If LP schedules l(p)
amount of page p, Tentative schedule has d l(p)
e w/ prob frac(l(p))
or b l(p) c w/ prob 1-
frac(l(p)) Example If LP sends 10.3
units of page 1, tentative schedule
has 11 pages with prob 0.3
10 pages with prob 0.7 x
?p l(p) Interval t-x,t has x O(n1/2)
pages (standard deviation)

70
Overview Local Schedules
  • Tentative Schedule Each request, satisfied
    locally
  • Random offset ?p for page p Backlog
    O(n1/2)
  • Unfortunately, there are examples where any
    local schedule has backlog ?(n1/2)
  • Local schedules very restricted.

0.2
0.5
0.3
0.8
0.3
request for green
71
How does this apply here?
  • We reduced our problem to determining
  • offset \alpha(p,i) for each block B(p,i)
  • Write an LP to determine \alpha(p,i)
  • Suppose \alpha
  • x(p,i,j)
  • Block B(p,i) contains at most 2 log T units of
    page p.
  • So, number of blocks \geq T/2\log T
  • Need 1 offset per block,

72
How to choose the offsets?
  • Suppose we partition time into intervals of size
    3.
  • Tentative schedule with Property Any interval of
    size 3 is assigned at most 3 transmissions.
  • Then Backlog at most 6.


73
LP for choosing offsets
Write an LP for choosing offsets for each block
B(p,i) x(p,i,j) 1 If offset j/(nT)2 for
block B(p,i) j 2 1,(nT)2 Partition
time into intervals with 5 log (Tn) time slots
each. Constraint Each interval has exactly 5
log (Tn) pages assigned in
the tentative schedule. Constraints lt Number of
blocks / 2 gt More than 50 blocks have some
x(p,i,j)1.
74
Overview of Algorithm
  • Solve the LP.
  • Remove the blocks that have x(p,i,j)1.
  • Shrink the problem.
  • O(log (Tn)) iterations of the process
  • Each step adds O(log (Tn)) to the backlog.
  • Final solution 3 Opt O(log2 (Tn))
  • Can remove dependence on T.
  • And improve guarantee to O(log2 (n)/log log (n))

75
Concluding Remarks
  • Best known integrality gap 28/27 ¼ 1.037
  • Open Is there an O(1) approximation?

76
  • Questions?

77
Our Approach
  • For each page p, partition time into blocks
    B(p,i)
  • Cumulative page p broadcast during B(p,i) 2
    log(Tn) ,2 log(Tn)
  • We will choose offsets ?(p,i) 2 0,1 for each
    B(p,i), such that
  • Cost of pseudo schedule lt 3 LP cost
  • Any interval of size t has t O(log2 n), t
    O(log2 n)
  • pages assigned in the pseudo-schedule


B(p,i1)
B(p,i)
78
LP for choosing offsets
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1 8
    Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,t) x(p,i,j) 1 8 time t
  • c(p,i,j,t) 1 iff offset j? for B(p,i)
    implies page p at time t
  • Choosing each offset uniformly (x(p,i,j) ? )
  • Feasible with value lt 3 LP1 cost
  • If solution integral we would be done! Backlog
    0

79
Main Idea Relax Constraints
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1
    8 Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,H) x(p,i,j) Size(H) 8
    intervals H
  • c(p,i,j,H) units of page p in H if choose
    offset j for B(p,i)
  • Relax constraints

Intervals of 5 log (Tn) time slots
If integral solution, then Backlog O(log
(Tn)) Can show 50 of blocks have an
x(p,i,j)1 Remove these blocks and Repeat for
O(log (Tn)) steps ...
80
Our Approach
  • For each page p, partition time into blocks
    B(p,i)
  • Schedule is local within each block B(p,i)
  • We will choose offsets ?(p,i) 2 0,1 for each
    B(p,i), such that
  • Cost of pseudo schedule lt 3 LP cost
  • Any interval of size t has t O(log2 (Tn)),
    t O(log2 (Tn))
  • pages assigned in the pseudo-schedule


B(p,i1)
B(p,i)
81
Analysis
  • Backlog(t) maxxltt Tentative pages in x,t)
    (t-x)
  • trivial
  • x last time when backlog
    0

t
82
Idea for O(n1/2) approx
  • amount of page p broadcast at t
  • request for p at t, amount satisfied at tgtt

For request (p,t), contribution to LP
Observation If transmit p at t with prob
, Expected response time contribution to LP

0.2
0.6
0.0
0.3
0.6
0.5
0.1
0.3
0.2
0.1
starting t t1, until 1
unit of page p seen
0.2
0.5
0.3
0.8
0.3
request for green
83
Main Idea Relax Constraints
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1
    8 Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,H) x(p,i,j) Size(H) 8
    intervals H
  • c(p,i,j,H) units of page p in H if choose
    offset j for B(p,i)
  • Relax constraints

Intervals of 5 log (Tn) time slots
If integral solution, then Backlog O(log
(Tn)) Can show 50 of blocks have an
x(p,i,j)1 Remove these blocks and Repeat for
O(log (Tn)) steps ...
84
LP for choosing offsets
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1 8
    Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,t) x(p,i,j) 1 8 time t
  • c(p,i,j,t) 1 iff offset j? for B(p,i)
    implies page p at time t
  • Choosing each offset uniformly (x(p,i,j) ? )
  • Feasible with value lt 3 LP1 cost
  • If solution integral we would be done! Backlog
    0

85
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
1
2
3
Day 0
86
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 0
Day 1
Total Wait 2
87
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 0
Day 1
Day 2
Total Wait 2 6
88
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 1
Day 2
Total Wait 2 6 6
89
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 4 Visit Town 1
Day 1
Day 2
Total Wait 2 6 6 9
90
Cable Repair Problem
Repairman serves n towns requests arrive
arbitrarily Can visit exactly 1 town a day Can
serve all outstanding requests, in that town
Goal Minimize average wait
Day 1 Visit Town 1
1
2
3
Day 2 Visit Town 3
Day 3 Visit Town 2
Day 0
Day 4 Visit Town 1
Day 1
Day 2
Avg. Wait (2 6 6 9)/ 14
91
Idea for 3-speed, 3-approximation
  • For each page p, mark intervals where cumulative
    amount of page transmitted by LP 1/3

If can ensure that one transmission of page p
during each such interval gt 3
approximation Simple greedy algorithm (EDF
type) ensures this.
92
More careful analysis for 2-speed
  • For each page p, mark intervals where cumulative
    amount of page transmitted by LP 1/2

Even if one transmission within each
interval Some requests may end up paying much
more than LP. Some additional ideas give
2-speed, O(1) approx
93
At least 50 blocks removed
  • Minimize ?p ?i ?j R(B(p,i,j)) x(p,i,j)
  • ?j x(p,i,j) 1
    8 Blocks B(p,i)
  • ?p ?i ?j c(p,i,j,H) x(p,i,j) Size(H) 8
    intervals H
  • constraints blocks intervals
  • (Tn)/log(Tn) (Tn)/ 5
    log(Tn)
  • f i constraints (Basic LP soln)
  • f/2 i blocks
  • i blocks 2 intervals 0.5 blocks

i variables set to 1 f non-zero fractional
variables
94
Local Approach gt Backlog ?(n1/2)
  • If requests satisfied locally gt above type of
    solutions only
  • All choices for offsets are bad
  • A1,,An ½ 1,2,,n Ai n/2
  • For any -1,1 coloring ? of 1,2,,n some
    Ai ? gt n1/2

0.5
0.5
0.5
0.5
Half Integral LP
Even Slots
95
Defining blocks
r(p,t) LP wait time for request for page p,
that arrives at t
r(p,t) 2 r(p,t) for all t in tail
of B(p,i)
Tail of B(p,i)
t
B(p,i)
B(p,i1)
Tail of B(p,i) Interval when last 1 unit of
page p transmitted by LP
Every interval that transmits gt log(Tn) units
of p, has such t.
Intuitively, allows us to move request arriving
at t to t.
Write a Comment
User Comments (0)
About PowerShow.com