cs270 lecture 2 path routing another problem
play

CS270: Lecture 2. Path Routing. Another problem. Given G = ( V , E - PowerPoint PPT Presentation

CS270: Lecture 2. Path Routing. Another problem. Given G = ( V , E ) , ( s 1 , t 1 ) ,..., ( s k , t k ) , find a set of k paths assign one Given G = ( V , E ) , ( s 1 , t 1 ) ,..., ( s k , t k ) , find a set of k paths connecting unit of


  1. CS270: Lecture 2. Path Routing. Another problem. Given G = ( V , E ) , ( s 1 , t 1 ) ,..., ( s k , t k ) , find a set of k paths assign one Given G = ( V , E ) , ( s 1 , t 1 ) ,..., ( s k , t k ) , find a set of k paths connecting unit of “toll” to edges to maximize total toll for connecting pairs. s i and t i and minimize max load on any edge. s 2 s 2 Admin: Check Piazza. Today: 1 s 3 s 3 1 Assign 11 on each of 11 edges. 11 1 Value: 3 ————— 1 11 3 + 3 11 + 3 11 = 9 s 1 Toll paid: ◮ Finish Path Routing. 11 11 11 s 1 t 1 1 1 1 1 t 1 Can we do better? ◮ ???? 11 11 11 2 1 1 Value: 2 2 11 1 Assign 1 / 2 on these two edges. t 3 11 t 3 Toll paid: 1 2 + 1 2 + 1 2 = 3 1 2 11 t 2 t 2 Terminology Toll problem. Toll: Terminology. Given G = ( V , E ) , ( s 1 , t 1 ) ,..., ( s k , t k ) , find a set of k paths assign one unit of “toll” to edges to maximize total toll for connecting pairs. s 2 Routing: Paths p 1 , p 2 ,..., p k , p i connects s i and t i . d ( e ) - toll assigned to edge e . Congestion of edge, e : c ( e ) Note: ∑ e d ( e ) = 1. d ( p ) - total toll assigned to path p . s 3 1 Assign 11 on each of 11 edges. number of paths in routing that contain e . d ( u , v ) - total assigned to shortest path between u and v . 11 + 3 3 11 + 3 11 = 9 s 1 Total toll: d ( x ) - polymorpic polymorphic 11 Congestion of routing: maximum congestion of any edge. 1 t 1 x could be edge, path, or pair. Can we do better? 1 2 Find routing that minimizes congestion (or maximum congestion.) 2 Assign 1 / 2 on these two edges. t 3 Total toll: 1 2 + 1 2 + 1 2 = 3 2 t 2

  2. Toll is lower bound on Path Routing. Algorithm. How good is equilibrium? 2 c ( e ) Path is routed along shortest path and d ( e ) = ∑ e ′ 2 c ( e ′ ) . For e with c ( e ) ≤ c max − 2log m ; 2 c ( e ) ≤ 2 c max − 2log m = 2 cmax Assign tolls according to routing. m 2 . From before: ≥ ∑ d ( s i , t i ) = ∑ How to route? Shortest paths! c opt d ( e ) c ( e ) Max bigger than minimum weighted average: e max e c ( e ) ≥ ∑ e c ( e ) d ( e ) i Assign routing according to tolls. ∑ e ′ 2 c ( e ′ ) c ( e ) = ∑ e 2 c ( e ) c ( e ) 2 c ( e ) Total length is total congestion: = ∑ Let c t = c max − 2log m . How to assign tolls? Higher tolls on congested edges. ∑ e c ( e ) d ( e ) = ∑ i d ( p i ) ∑ e 2 c ( e ) e Toll: d ( e ) = ∝ 2 c ( e ) . ∑ e d ( e ) = 1. ∑ e : c ( e ) > c t 2 c ( e ) c ( e ) Each path, p i , in routing has length d ( p i ) ≥ d ( s i , t i ) . ≥ ∑ e : c ( e ) > c t 2 c ( e ) + ∑ e : c ( e ) ≤ c t 2 c ( e ) Equilibrium: The shortest path routing has has d ( e ) ∝ 2 c ( e ) . c ( e ) ≥ ∑ d ( p i ) ≥ ∑ c ( e ) d ( e ) = ∑ max d ( s i , t i ) . ( c t ) ∑ e : c ( e ) > c t 2 c ( e ) e e ≥ i i “The routing is stable, the tolls are stable.” ( 1 + 1 m ) ∑ e : c ( e ) > c t 2 c ( e ) Routing: each path p i in routing is a shortest path w.r.t d ( · ) A toll solution is lower bound on any routing solution. ( c t ) = c max − 2log m ≥ Tolls: ...where d ( e ) is defined w.r.t. to current routing. 1 + 1 ( 1 + 1 Any routing solution is an upper bound on a toll solution. m ) m Subtlety here due to ∑ e d ( e ) = 1. Or c max ≤ ( 1 + 1 m ) c opt + 2log m . (Almost) within additive term of 2log m of optimal! Getting to equilibrium. An algorithm! Tuning... Repeat: reroute any path that is off by a factor of 3. (Note: d ( e ) recomputed every rerouting.) Maybe no equilibrium! p : w ( p ) = X Approximate equilibrium: ⇒ w ′ ( p ) = X / 2 − 1 for c ( e ) = Each path is routed along a path with length Replace d ( e ) = ( 1 + ε ) c ( e ) . within a factor of 3 of the shortest path and d ( e ) ∝ 2 c ( e ) . Replace factor of 3 by ( 1 + 2 ε ) + 1 for c ( e ) s i t i c max ≤ ( 1 + 2 ε ) c opt + 2log m / ε . . (Roughly) p ′ : w ( p ′ ) ≤ X / 3 Lose a factor of three at the beginning. c opt ≥ ∑ i d ( s i , t i ) ≥ 1 3 ∑ e d ( p i ) = 1 ⇒ w ′ ( p ′ ) ≤ 2 X / 3 3 ∑ e d ( e ) c ( e ) = Fractional paths? Potential function: ∑ e w ( e ) , w ( e ) = 2 c ( e ) We obtain c max = 3 ( 1 + 1 m ) c opt + 2log m . Moving path: This is worse! Divides w ( e ) along long path (with w ( p ) of X ) by two. What do we gain? Multiplies w ( e ) along shorter ( w ( p ) ≤ X / 3) path by two. − X 2 + X 3 = − X 6 . Potential function decreases. = ⇒ termination and existence.

  3. Revisit Equilibrium. Algorithm:exact? Geometrical view. Solution Pair: ( { p i } , d (˙ )) . Toll Solution Value: ∑ i d ( s i , t i ) . Path Routing Value: max e c ( e ) . Toll player assigns toll on only maximally congested edges. s t Routing player routes on only cheapest paths. Routing R uses shortest paths. Summation Switch d ( e ) ≥ 0. Only Toll on max congestion. ∑ e d ( e ) = 1 ∑ e 2 c ( e ) max e c ( e ) = ∑ ∑ d ( s i , t i ) d ( p i ) Not shortest when tolls on top. i i Hmmm... = ∑ c ( e ) d ( e ) Uh oh? e x = . 5 Route half a unit on both! Smooth: use ∑ e 2 c ( e ) as a proxy for max e c ( e ) . ∑ = c ( e ) d ( e ) Hey! Fractional! e : d ( e ) > 0 Minimize new function. Use previous algorithms but route two paths between each pair. ∑ Gradient descent. = d ( e )( max c ( e )) e Stepsize=1. Back and forth! e : d ( e ) > 0 Half integral! Stepsize=.5. Back and forth ...but closer to minimum. = c ( e ) max Optimality: ( 3 ) C max + 2log m / 2. e Additive factor shrinking! Any routing solution value ≥ Any toll solution value. The 3 can be made ( 1 + ε ) using different base! Both these solutions are optimal!!!!! Complementary slackness. Why all the mess before? To get an algorithm! Wrap up. Dueling players: Toll player raises tolls on congested edges. Congestion player avoids tolls. Converges to near optimal solution! A lower bound is “necessary” (natural), and helpful (mysterious?)! Geometric View: Smooth. Gradient Descent. Stepsize.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend