200 likes | 340 Views
Optimal Backlog in the Plane. joint work with Jukka Suomela. Valentin Polishchuk. Sensor Field. Data Constantly Flows In. Flow changes over time unpredictably. Total Flow Rate = 1 over all sensors. Data Stored at Local Card. Needs to be gathered before card is overfull.
E N D
Optimal Backlog in the Plane joint work with Jukka Suomela Valentin Polishchuk
Data Constantly Flows In Flow changes over time unpredictably Total Flow Rate = 1 over all sensors
Data Stored at Local Card • Needs to be gathered before card is overfull Cheaper to store data locally and gather than to transmit [Mathur, Desnoyers, Ganesan, Shenoy, Diao, ’06,’07] bandwidth is enough to report amount of data not to transmit
Maintenance Man • How large a memory card is needed? • What path to take?
Formally… • Set of “cups” • Adversary • pours water into cups • total rate 1 • Player • empties cups • moves with speed 1 • Player’s objective: min max amount of water (backlog) in any cup at any time • Adversary can guarantee Ω(D) ½ ½ D Online: Player doesn’t know how water will be distributed in the future
Our Result A strategy for the playerO(D) backlog Doesn’t depend on how water is poured cups positions number of cups • Adversary can guarantee Ω(D) ½ ½ D
Related Work • Geometric TSP • same rate at each cup, const over time • Data gathering [Falck,Floréen,Kaski,Kohonen,Orponen’04] • wireless communication • Our setting • physically visit sensors
Discrete Version • Cups at vertices of a graph • Timesteps • adversary pours total 1 of water • player moves along an edge • Regular nxn grid [Bender,Fekete,Kröller,Liberatore,Mitchell,P,S‘07] • O(n √ log log n)
Abstract Version • n cups • not on a graph nor in the plane • Timesteps • adversary pours total 1 of water • player empties any cup • Deamortization [Dietz,Sleator’87] • Empty-the-fullest: Hn
An Extension: (τ,k)-game • n cups • not on a graph nor in the plane • Timesteps • adversary pours total τ of water • player empties k fullest cups • After r steps • backlog in any cup is ≤ Hr •τ/ k • independent of n
Partition the Time τ0 = 10 D τ1 = 100 D …τi = 10i+1 D… τN = 10N+1 D • Into small intervals • And into larger intervals • And LARGER • … 0 time τ0 = 10 D τ1 = 10 τ0 τ2 = 10 τ1
Coroutine i (i = 0…N) τi • Invoked at times that are multiples of τi • Plays (τi,ki)-game with water after 10Lτi Empty ki fullest cups (and return back) ki= 25i * * * time ℓτi t =10Lτi + ℓτi 10Lτi Coroutines j>i are suspended Integer L , 1 ≤ ℓ≤ 10
For Example τ5 • Empty k5 = 255 cups, fullest with water after20τ5 * * * time 3τ5 20τ5 t =23τ5 Coroutines 6 (and higher) suspended
Global View τ0 = 10 D τ0 = 10 D τ1 = 100 D …τi = 10i+1 D… τN = 10N+1 D k0 = 1 k1 = 25 …ki = 25i… kN = 25N • Coroutine 0 (all other suspended) • Coroutine 1 (2 and higher suspended) • Coroutine 2 (3 and higher suspended) time τ1 = 10 τ0 τ2 = 10 τ1 Is there enough time to run as scheduled? Backlog?
Few’s Lemma τ0 = 10 D τ1 = 100 D …τi = 10i+1 D… τN = 10N+1 D k0 = 1 k1 = 25 …ki = 25i… kN = 25N • Any set of m2 pts in the plane • Tour of length 5mD (D – diameter of the set) • Coroutine i returns in 5i+1D time τi τi = 10i+1D > 1005i+1D + 1015iD + 1025i-1D + … + 10i51D
Backlog ℓN-1τN-1 ≤ H10τN/kN + H10τN-1/kN-1 ε + H10τN-1/kN-1 +…+ (τN,kN)-game for ℓN-1 rounds Coroutine N (τN-1,kN-1)-game for 10 rounds Coroutine N-1 τ0 = 10 D τ1 = 100 D …τi = 10i+1 D… τN = 10N+1 D k0 = 1 k1 = 25 …ki = 25i… kN = 25N Coroutine N-1 ℓN-1-1 rounds τi/ki = (2/5)i • 10D time O(D) ℓNτN ℓNτN + ℓN-1τN-1 + … + ℓ1τ1 + ℓ0τ0 + ε=tℓN , ℓN-1 , … , ℓ1 , 1≤ℓi ≤ 10, ε≤ τ0
Conclusion • O(D) backlog • In the plane • Continuous time • Doesn’t depend on • Adversary moves • Shape of the cup set • Number of cups
Open • Scalability with the number of players • 4 players: divide into 4 parts • diameter halves • backlog halves Better than ½ ?