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

Slides:



Advertisements
Similar presentations
Online Multi-Commodity Flow with High Demands Guy Even EE School, Tel-Aviv University Moti Medina EE School, Tel-Aviv University.
Advertisements

Impact of Interference on Multi-hop Wireless Network Performance Kamal Jain, Jitu Padhye, Venkat Padmanabhan and Lili Qiu Microsoft Research Redmond.
Incremental Linear Programming Linear programming involves finding a solution to the constraints, one that maximizes the given linear function of variables.
Price Of Anarchy: Routing
C&O 355 Mathematical Programming Fall 2010 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
Introduction to Algorithms
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Approximation Algorithms for Capacitated Set Cover Ravishankar Krishnaswamy (joint work with Nikhil Bansal and Barna Saha)
How Bad is Selfish Routing? By Tim Roughgarden Eva Tardos Presented by Alex Kogan.
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
Dynamic Wavelength Allocation in All-optical Ring Networks Ori Gerstel and Shay Kutten Proceedings of ICC'97.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
1 EL736 Communications Networks II: Design and Algorithms Class8: Networks with Shortest-Path Routing Yong Liu 10/31/2007.
Semi-Definite Algorithm for Max-CUT Ran Berenfeld May 10,2005.
1 Online and Stochastic Survivable Network Design Ravishankar Krishnaswamy Carnegie Mellon University joint work with Anupam Gupta and R. Ravi.
Approximation Algoirthms: Semidefinite Programming Lecture 19: Mar 22.
Oblivious Routing for the L p -norm Matthias Englert Harald Räcke 1.
Approximation Algorithm: Iterative Rounding Lecture 15: March 9.
Network Design Adam Meyerson Carnegie-Mellon University.
Online Algorithms for Network Design Adam Meyerson UCLA.
Single Sink Edge Installation Kunal Talwar UC Berkeley.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Theory of Data Flow and Random Placement.
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
EDA (CS286.5b) Day 6 Partitioning: Spectral + MinCut.
Shuchi Chawla, Carnegie Mellon University Static Optimality and Dynamic Search Optimality in Lists and Trees Avrim Blum Shuchi Chawla Adam Kalai 1/6/2002.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
Online Function Tracking with Generalized Penalties Marcin Bieńkowski Institute of Computer Science, University of Wrocław, Poland Stefan Schmid Deutsche.
1/24 Algorithms for Generalized Caching Nikhil Bansal IBM Research Niv Buchbinder Open Univ. Israel Seffi Naor Technion.
Integrality Gaps for Sparsest Cut and Minimum Linear Arrangement Problems Nikhil R. Devanur Subhash A. Khot Rishi Saket Nisheeth K. Vishnoi.
Approximation Algorithms for Stochastic Combinatorial Optimization Part I: Multistage problems Anupam Gupta Carnegie Mellon University.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
Internet Traffic Engineering by Optimizing OSPF Weights Bernard Fortz (Universit é Libre de Bruxelles) Mikkel Thorup (AT&T Labs-Research) Presented by.
Competitive On-Line Admission Control and Routing By: Gabi Kliot Presentation version.
Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003.
June 10, 2003STOC 2003 Optimal Oblivious Routing in Polynomial Time Harald Räcke Paderborn Edith Cohen AT&T Labs-Research Yossi Azar Amos Fiat Haim Kaplan.
Oblivious Routing: Tuba Yilmaz & Rajiv Iyer (Prof. Dana Randall - CS 6550) 1.
online convex optimization (with partial information)
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Randomized Online Algorithm for Minimum Metric Bipartite Matching Adam Meyerson UCLA.
Linear Programming Data Structures and Algorithms A.G. Malamos References: Algorithms, 2006, S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani Introduction.
Distributed Algorithms Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization WorkshopDistributed Algorithms1.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Approximation Algorithms for Path-Planning Problems with Nikhil Bansal, Avrim Blum and Adam Meyerson Shuchi Chawla Carnegie Mellon University.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Approximation Algorithms for Path-Planning Problems with Nikhil Bansal, Avrim Blum and Adam Meyerson Shuchi Chawla.
Frequency Capping in Online Advertising Moran Feldman Technion Joint work with: Niv Buchbinder,The Open University of Israel Arpita Ghosh,Yahoo! Research.
1 Slides by Yong Liu 1, Deep Medhi 2, and Michał Pióro 3 1 Polytechnic University, New York, USA 2 University of Missouri-Kansas City, USA 3 Warsaw University.
Approximation Algorithms for Path-Planning Problems Nikhil Bansal, Avrim Blum, Shuchi Chawla and Adam Meyerson Carnegie Mellon University.
Correlation Clustering Nikhil Bansal Joint Work with Avrim Blum and Shuchi Chawla.
The Price of Routing Unsplittable Flow Yossi Azar Joint work with B. Awerbuch and A. Epstein.
Approximation Algorithms Duality My T. UF.
Approximation Algorithms based on linear programming.
New Algorithms for Disjoint Paths Problems Sanjeev Khanna University of Pennsylvania Joint work with Chandra Chekuri Bruce Shepherd.
Impact of Interference on Multi-hop Wireless Network Performance
Better Algorithms for Better Computers
Traveling Salesman Problems Motivated by Robot Navigation
Approximation Algorithms for Path-Planning Problems
The minimum cost flow problem
Static Optimality and Dynamic Search Optimality in Lists and Trees
A Polynomial-time Tree Decomposition for Minimizing Congestion
James B. Orlin Presented by Tal Kaminker
Chapter 6. Large Scale Optimization
CSCI B609: “Foundations of Data Science”
Graph Partitioning Problems
Dynamic and Online Algorithms for Set Cover
Randomized Online Algorithm for Minimum Metric Bipartite Matching
Chapter 6. Large Scale Optimization
Presentation transcript:

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

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

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:

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)

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

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

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)  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”

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)

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 occassionally

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 )

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!

Shuchi Chawla, Carnegie Mellon University 12 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

Shuchi Chawla, Carnegie Mellon University 13 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)

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 and edge e t cost at step t = d t.r t (e t ) Worst congested edge

Shuchi Chawla, Carnegie Mellon University 15  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

Shuchi Chawla, Carnegie Mellon University 16 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 F |y t+1 -x| (We use Semi-Definite Programming)

Shuchi Chawla, Carnegie Mellon University 17 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)

Shuchi Chawla, Carnegie Mellon University 18 Extensions  Change the routing every  days the rate of convergence slows down by a 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

Shuchi Chawla, Carnegie Mellon University 19 Questions?

Shuchi Chawla, Carnegie Mellon University 20 Can we do any better?  As time progresses, observe trends in traffic  Perhaps “adjust” the routing periodically to better suit the observed traffic  Still oblivious – we adjust the routing without seeing any future demands “Online Oblivious Routing”

Shuchi Chawla, Carnegie Mellon University 21 The online setting  Every morning, pick “oblivious routing of the day”  Use this for traffic throughout the day  At the end of the day, modify routing according to traffic seen during the day  Compare against the “static” optimal routing --  not allowed to change every day

Shuchi Chawla, Carnegie Mellon University 22 The online setting  T days  Demands on day i ! d i  Congestion of routing r i on day i C(r i,d i ) = max e (r i.d i )  Cost of algorithm on day i = C(r i,d i )/C OPT (d i ) Congestion of optimal offline routing for d i  Total cost =  T (cost on day i) Old definition of competitive ratio

Shuchi Chawla, Carnegie Mellon University 23 The online setting  Cost of algorithm on day i = competitive ratio of r i on d i  Total cost of algorithm =  T (cost on day i)   = argmin r  T (c. r. of r on d i )  We want cost(ALG) · (1+  ) cost(  ) + O(poly)  Racke’s result shows that cost(  ) · O(Tlog 3 n)

Shuchi Chawla, Carnegie Mellon University 24 Routing as Online Convex Programming  Online Convex 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 )  The Routing Problem At every step, pick a point r t from F Receive demands d t cost at step t = ( max e d t.r t (e) )/ C OPT (d t ) set of all feasible routings

Shuchi Chawla, Carnegie Mellon University 25 Routing as Online Convex Programming  Online Convex 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 )  The Routing Problem At every step, pick a point r t from F Receive demands d t and edge e t cost at step t = ( d t.r t (e t ) )/ C OPT (d t ) set of all feasible routings

Shuchi Chawla, Carnegie Mellon University 26 Routing as Online Convex Programming  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 ALG’s new cost is higher than its original c. r.

Shuchi Chawla, Carnegie Mellon University 27 Why Gradient Descent?  Natural “learning” strategy  \sum_t y^t.c^t = \sum_t y^{t-1}-\eta c^{t-1}

Shuchi Chawla, Carnegie Mellon University 28 The Projection Step  x t+1 = argmin x 2 F |y t+1 -x|  Quadratic Program => We cannot solve this exactly  Using SDP (Ellipsoid algorithm), solve it to within a (1+  )-approximation

Shuchi Chawla, Carnegie Mellon University 29 Putting it all together  gradient descent gives us blah  Projection gives us blah  => we converge in blah time etc

Shuchi Chawla, Carnegie Mellon University 30  simplifying assumption:  henceforth assume that the in hindsight routing has congestion 1. so comp ratio = congestion of routing

Shuchi Chawla, Carnegie Mellon University 31 Routing Algorithms  [1985] deterministic routing is bad  solution: randomized algorithms  == prob distribution on paths  == a flow since congestion is a linear function

Shuchi Chawla, Carnegie Mellon University 32 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) flow Congestion = 1.5 A Routing  A collection of flows (one for each pair of nodes)

Shuchi Chawla, Carnegie Mellon University 33 The Oblivious Routing Problem  Determine a routing before seeing requests Congestion A (D) optimal offline cong  Competitive ratio = max D All-knowing adversary any  How well can we do without knowing the demands?  Easy to implement (hard-code routes)  Distributed

Shuchi Chawla, Carnegie Mellon University 34 special case algorithms  awerbuch et al’s work  lattice etc

Shuchi Chawla, Carnegie Mellon University 35 How good is an Oblivious Routing?  [Racke‘02] There exists an oblivious routing that is log 3 n competitive  Can we find it?  [Azar’03] We can find in polynomial time an oblivious routing that is as good as the best oblivious routing In particular, achieve Racke’s bound Use the Ellipsoid method