Presentation is loading. Please wait.

Presentation is loading. Please wait.

Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003.

Similar presentations


Presentation on theme: "Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003."— Presentation transcript:

1 Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003

2 Shuchi Chawla, Carnegie Mellon University 2 The Routing Problem Have: An underlying network; Requests arrive in succession Want: A “distributed” routing algorithm minimizing congestion Congestion = max e (flow on edge e) Congestion = 2

3 Shuchi Chawla, Carnegie Mellon University 3 The Routing Problem Have: An underlying network; Requests arrive in succession Want: A “distributed” routing algorithm minimizing congestion Congestion = max e (flow on edge e) Congestion = 1 In hindsight:

4 Shuchi Chawla, Carnegie Mellon University 4 The Routing Problem Have: An underlying network; Requests arrive in succession Want: A “distributed” routing algorithm minimizing congestion Congestion = max e (flow on edge e) Congestion = 2 Competitive Ratio = 2 (cost of routing)

5 Shuchi Chawla, Carnegie Mellon University 5 Oblivious vs. Adaptive Routing  Adaptive Routing: For every request, pick a route based on all previously seen requests log-competitive centralized & distributed algos  Oblivious Routing: Pick a route for every possible request in the beginning, and use it throughout Advantages - Easy to implement (hard-code routes) - Distributed

6 Shuchi Chawla, Carnegie Mellon University 6 Oblivious Routing Algorithms  [Borodin Hopcroft ’85]: Deterministic algorithms perform very poorly  Solution: Randomized algorithms For every request, output a probability distribution on paths  a flow Henceforth, A Routing  A collection of unit flows (one for each request) Congestion = 1.5

7 Shuchi Chawla, Carnegie Mellon University 7 Oblivious Routing Algorithms  Until recently, good randomized algorithms known only for special graphs Lattices, Hypercubes [ValiantBrebner’81, Leighton’92]  [Racke’02]: For every graph, 9 an oblivious routing with congestion less than O(log 3 n) x OPT  Can we find it? [Azar et al’03]: Polytime algo to find an oblivious routing that has minimum worst case congestion In particular, achieve Racke’s bound “Min-Max Optimal Routing”

8 Shuchi Chawla, Carnegie Mellon University 8 The Min-Max Optimal Routing  Given graph G, and D – the set of demands with optimal (hindsight) congestion = 1  Min-Max Optimal Routing  G = argmin r max D (congestion of r on d) Worst case congestion of r  Azar et al find this routing in poly-time  Racke shows that in every graph, congestion of  G = O(log 3 n)

9 Shuchi Chawla, Carnegie Mellon University 9 Can we do better?  Suppose we do not get the worst case demands… - Do not want to optimize over the entire set D - In hindsight if the possible set of demands is D’, we want r * = argmin r max D’ (cong. of r on d)  Formally: Every day we get demands d t Want to minimize the objective  t (cong. of r on d t ) i.e., want congestion to always be low, but only on the observed demands d t ; not the entire set D but, allow it to be high very occasionally

10 Shuchi Chawla, Carnegie Mellon University 10 Online Oblivious Routing  Observe and serve demands every day  Each morning, pick an “Oblivious Routing of the day” based on previous demands  Based on observed trends, “adjust” the routing to better suit the observed traffic  Still oblivious – we pick the routing every day without knowing the future demands Cost(r) =  t (cong. of r on d t ) Cost(ALG) =  t (cong. of r t on d t )

11 Shuchi Chawla, Carnegie Mellon University 11 The Static Optimal Routing  Optimal Routing for the given set of demands r * = argmin r Cost(r) (Not allowed to change over time, unlike the algorithm)  We want ALG to be almost as good as the Static Optimal Routing Cost(ALG) = (1+  ) Cost(r * ) + (small factors)  Note: Min-Max Opt may not be competitive!  Static Opt is at least as good as the Min-Max Opt, but can be much better!

12 Shuchi Chawla, Carnegie Mellon University 12 An online learning problem  Picking a good routing is similar to playing a repeated game against an adversary that supplies demands  Similar to machine learning problem of competing against the best “expert” Too many experts (feasible routings); traditional ML algorithms do not work Use the structure of the problem to design an efficient algorithm – LP based

13 Shuchi Chawla, Carnegie Mellon University 13 Routing and Linear Programming  For given demands d, and routing r, congestion on edge e = d.r(e) We want min r 2 R max e d.r(e) or min t : t ¸ d.r(e) 8 e  R is a convex polyhedron: r should satisfy inflow=outflow at every node (except source and sink)  Therefore, given demands, the best flow is given by a linear program  How about Min-Max Opt flow? min t : t ¸ d.r(e) 8 e,d [Azar et al]: Ellipsoid with a separation oracle – compute worst case demands at every step

14 Shuchi Chawla, Carnegie Mellon University 14 Online Oblivious Routing and Online LP  Online Linear Programming At every step, pick a point x t from convex set F Receive linear cost function g t cost at step t = g t (x t )  Online Oblivious Routing At every step, pick a point r t from R Receive demands d t cost at step t = max e d t.r t (e)

15 Shuchi Chawla, Carnegie Mellon University 15 Online Oblivious Routing and Online LP  Online Linear Programming At every step, pick a point x t from convex set F Receive linear cost function g t cost at step t = g t (x t )  Online Oblivious Routing At every step, pick a point r t from R Receive demands d t and edge e t cost at step t = d t.r t (e t ) Worst congested edge

16 Shuchi Chawla, Carnegie Mellon University 16  Knowing the edge e t only hurts us OPT’s flow on edge e t is smaller than its congestion ALG’s flow on edge e t is equal to its congestion OPT’s cost decreases, while ALG’s stays the same Online Oblivious Routing and Online LP

17 Shuchi Chawla, Carnegie Mellon University 17 Solving the Online Linear Program  Based on the work of [Zinkevich’03] and [Kalai-Vempala’02]  At every step: 1. Gradient Descent Move against the cost vector gradient y t+1 = x t -  c t (Natural Learning Strategy) 2. Projection If y t+1 is infeasible, orthogonally project it back to R x t+1 = argmin x 2 R |y t+1 -x| (We use Semi-Definite Programming)

18 Shuchi Chawla, Carnegie Mellon University 18 Solving the Online Linear Program  We get the following guarantee: Cost(ALG) · Cost(OPT) + n 3  T  After n 6 /  2 steps, Cost(ALG) · (1+  ) Cost(OPT)

19 Shuchi Chawla, Carnegie Mellon University 19 Extensions and Open Problems  Change the routing every  days the rate of convergence slows down by factor of   Add extra constraints to the LP: No individual day’s cost should exceed some prespecified value No individual day’s cost should cross twice the Min-Max Opt cost  Avoid using the SDP Open! Purely combinatorial greedy algorithm

20 Shuchi Chawla, Carnegie Mellon University 20 Questions?


Download ppt "Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003."

Similar presentations


Ads by Google