Presentation is loading. Please wait.

Presentation is loading. Please wait.

How bad is selfish routing? מאת ליאור עזרא. 027256569 עפ " י מאמר של חווה טרדוס וטים גן - מחוספס.

Similar presentations


Presentation on theme: "How bad is selfish routing? מאת ליאור עזרא. 027256569 עפ " י מאמר של חווה טרדוס וטים גן - מחוספס."— Presentation transcript:

1 How bad is selfish routing? מאת ליאור עזרא. 027256569 עפ " י מאמר של חווה טרדוס וטים גן - מחוספס.

2 The problem:  We are given: Network. Rate of traffic between nodes. Latency time.  We should route the traffic such that the sum of all travel time is minimized.  Difficult aspect: when link traverse is load-dependent.

3 Assumptions: Finding optimal routing is difficult or even impossible. No network regulations. Users are purely selfish, but not malicious. Users know the links congestions. In other words: Network routing is no- cooperative game and the routes form Nash-Equilibrium. Most of the time each user/agent controls negligible fraction of the traffic.

4 Brass ’ s Paradox: Consider the following network: When 1 (divided to many fractions and agents) unit of flow need to be routed. In the upper network, Nash equilibrium Which is the optimal flow is half of the traffic goes up and half down. Total latency time is 1+0.5=1.5 In the lower network, we added 0 edge. The new optimal flow does not change, but Nash ’ s flow is: s- >v->w->t. And the total latency is 1+1=2 s v w t x1 1 x s v w t x1 1 x 0

5 Model: Directed network Graph G=(V,E); V-vertex, E-edges. K source-destination vertex pairs {s 1,t 1 }.. {s k,t k }. φ i is a set of simple φ = U i φ i. φ i is a set of simple s i -t i path. φ = U i φ i. A flow f: φ -> fe = ri – The rate - the amount of flow from si to ti. f is feasible if for all i Each edge e has latency function le(); The latency of path p with flow s is : le is non-negative, continuous and non-decreasing. The cost C(f) of flow f is: The Cost ca also be written as

6 Flows and Nash equilibrium, definition Flows behave “ selfishly ” and “ greedily ” : Definition: A flow f in G is at Nash equilibrium if for all i є{1,..., k}, P 1, P 2 є P i, and δ є[0, f P1 ], we have l P1 (f) <= l P2 ( ƒ ), where ƒ p is: If P=P 1 f p - δ If P=P 2 f p + δ Else f p And of course we let δ ->0

7 Flows and Nash equilibrium Lemma 1: A flow f is at Nash equilibrium if and only if for every i є {1,..., k} and P 1,P 2 єP i with f P1 > 0, l P1 (f) <= l P2 (f). Conclusion: if f is at Nash equilibrium then the latencies of all paths from si to ti (that have positive flow), Li(f), are equal. Lemma 2: If f is feasible flow at Nash equilibrium then The definition correspond to pure strategy since every agent is negligible fraction from the traffic.

8 Optimal flow We should find the minimum of Subject to (NLP) : fp>=0 Where c e (f e )=l e (f e )f e This is a non-linear program (NLP).

9 Local optimal flow We expect a flow to be locally optimal if and only if moving flow from one path to another increase the total flow. In other words the gradient on any path from si-ti should be no greater then any other path ’ s gradient from si-ti. By applying Karush-Kuhn-Tucker Theorem we know that local optima coincide global optima in convex function. Let φ Lemma 3: A flow f is optimal for a convex program of the form (NLP) if and only if for every i є {1,..., k} and P 1,P 2 є φ i with f P1 > 0, c’ P1 (f) = c’ P2 (f). We can see the similarity to Nash equilibrium. Optimal flow can be regarded as an Nash equilibrium with respect to latency function c’. Lemma 4: A network G with continuous, non-decreasing latency functions admits a feasible flow at Nash equilibrium. Moreover, if f, f’ are flows at Nash equilibrium, then C(f) = C’(f).

10 General latency function For network G admitting an optimal flow f* and a flow at Nash equilibrium f, we denote the ratio C(f)/C(f*) by ρ = ρ(G, r, l); Braess ’ s paradox : ρ = 2/1.5 = 4/3. In this new simple example: Nash-(0,1), optimal – ( ½, ½ ) -> ρ=1/0.75=4/3. If the function is not linear, X^k. optimal flow assign (k+1)^(-1/k) on the lower link. The total latency is 1-k*(k+1)^[(k+1)/k], that tends to 0 if k-> ∞. We will consider what happens if we increase the r. when r>=1, 1 unit of flow will be routed in the lower link and r-1 in the upper. We will show that the optimal flow ’ s latency of 2*r is not less then the latency at Nash equilibrium with rate r. 1 X

11 General latency function Theorem: If f is a flow at Nash equilibrium for (G, r, l) and f* is feasible for (G, 2r, l), then C(f) <= C(f*). Proof: Suppose we have f, f*. The cost of the flow is We will define a close latency that can easily lower bound the cost: ĺ e (x) = l e (f e ) if x<f e l e (x)if x>=f e

12 General latency function We compare f* under ĺ to the original l (C(f*)). For any edge e, ĺ e (x) - l e (x) is zero for x >= f e and bounded above by l e (f e ) for x < f e, so x[ĺ e (x) - l e (x)] <= l e (f e )f e. : On the other hand, if f 0 denotes the zero flow in G, then by construction ĺ P (f 0 ) >=L i (f) for any path p. and therefore ĺ P (f*)>=L i (f) for each path P. The cost of f* with respect to ĺ can be bounded below: Which leads to: That can be generalized: if f is Nash eq’ at (G,r,l) and f* at (g,(1+δ),l) then C(f)<=C(f*)/ δ.

13 Linear latency: Linear latency: l e (f e ) = a e f e +b e for a e,b e >=0. The total latency is Σ e a e f e ^2+b e f e. Since a e >=0 then (NLP) is convex. And l e *(f e ) is 2a e f e +b e. Lemma 5: Let (G, r, l) be an instance with edge latency functions l e =a e x + b e for each e є E. Then: φ (a) a flow f is at Nash equilibrium in G if and only if for each i and P,P i є φ i with f P > 0, φ (b) a flow f* is (globally) optimal in G if and only if for each i and P,P i є φ i with f P* > 0 Conclusion: Let G be a network in which each edge latency function e is of the form l e (f e ) = a e x. Then for any rate vector r, a flow feasible for (G, r,l) is optimal if and only if it is at Nash equilibrium.

14 Linear latency: Lemma 6: Suppose (G, r, l) has linear latency functions and f is a flow at Nash equilibrium. Then, (a) the flow f/2 is optimal for (G, r/2, l) (b) the marginal cost of increasing the flow on a path P with respect to f/2 equals the latency of P with respect to f. Proof (b): If edge e has latency function l e (x) = a e x + b e then e has marginal cost function l e *(x) = 2a e x + b e. Thus, l e *(f e /2) = l e (f e ) for each edge e and hence l p * (f/2) = l p (f) for each path P.

15 Linear latency: Lemma 7: Suppose (G, r, l) is an instance with linear latency functions for which f* is an optimal flow. Let L i * (f*) be the minimum marginal cost of increasing flow on an si-ti path with respect to f*. Then for any δ > 0, a feasible flow for the problem instance (G, (1+δ)r, l) has cost at least Proof: fix δ > 0, suppose f is feasible for (G,(1+δ)r,l). f e may be smaller or larger then f e *. x l e (x) = a e x^2+b e x implies that: l e (f e )f e >= l e (f e *)f e * + (f e - f e *) l e * (f e *). (f e - f e *)l e *(f e *) is a bound to the cost of changing the flow value (if f e >f e * it underestimate the increasing, and if f e <f e * it overestimate the decreasing) Since L i * (f*) is minimal (unless f p *=0), we obtain:

16 Linear latency: Theorem: If (G, r, l) has linear latency functions, then ρ (G, r, l) = 4/3. Proof: f-Nash equilibrium flow. Li(f) is latency on si-ti so f/2 is optimal solution to (G, r/2,l), and L i *(f/2) = L i (f) (lemma 6). Now we will lower bound f/2:

17 Extensions We have some Drawback in practice: agents can often only evaluate path latency approximately, rather than exactly. We typically expect to encounter a finite number of agents, each controlling a strictly positive amount of flow.

18 Extensions(1) We can ’ t expect agents to evaluate latency with arbitrary precision. We estimate that agents can distinguish between latencies that differ in more than 1+ε, we change definition: Definition: A flow f in G is ε-approximate Nash equilibrium if for all iє{1,..., k}, P 1, P 2 є P i, and δ є[0, f P1 ], we have l P1 (f) <= (1+ε) l P2 ( ƒ ), where ƒ p is: If P=P 1 f p - δ If P=P 2 f p + δ Else f p Lemma 8: A flow f is at ε-approximate Nash equilibrium if and only if for every i є {1,..., k} and P 1,P 2 єP i with f P1 > 0, l P1 (f) <= (1+ε) l P2 (f). Conclusion: if f is at ε-approximate Nash equilibrium for (G,r,l) and f* is feasible for (G,2r,l) the C(f)<=(1+ε)C(f*)

19 Extensions(2) In practice we don ’ t have infinite number of agents,but finitely many agents, each of whom controls a strictly positive amount of flow. we allow an agent to split flow along any number of paths. The changes are: k agents. We assume that agent i intends to send ri units of flow from source si to destination ti. We call the instance (G,r,l) finite splittable. φ i -> R A flow f now consists of k functions, with one function f(i) : φ i -> R For a flow f, we denote by Ci(f). A flow f is at Nash equilibrium if and only if for each i, f(i) minimizes Ci(f) given f(j) for j != i. If f is at Nash equilibrium for the finite splittable instance (G, r, l), and f* is feasible for the finite splittable instance (G, 2r, l), then C(f)<=C(f*).

20 Extensions(3) – unsplittable flow A flow f (now consisting only of k paths) is at Nash equilibrium if and only if for each i, agent i routes its flow on a path minimizing P (f), given the paths chosen by the other k - 1 agents. Example: 2 agents, optimal: 1-(s,v,t), 2-(s,w,t) total cost less then 4, (it also Nash) Nash: 1-(s,v,w,t) 2- (s,t). Cost defends on ε, unlimited.

21 Extensions(3) – unsplittable flow A flow f (now consisting only of k paths) is at Nash equilibrium if and only if for each i, agent i routes its flow on a path minimizing P (f), given the paths chosen by the other k - 1 agents. Example: 2 agents, optimal: 1-(s,v,t), 2-(s,w,t) total cost less then 4, (it also Nash) Nash: 1-(s,v,w,t) 2- (s,t). Cost defends on ε, unlimited.

22 Extensions(3) – unsplittable flow This example was very bad for routing, because routing a strictly positive amount of additional flow on an edge may increase the latency of that edge by an arbitrarily large amount. If the largest possible change in edge latency resulting from a single agent rerouting its flow is not too large, we can conclude: Theorem: Suppose f is at Nash equilibrium in the finite unsplittable instance (G, r, l), and for some α < 2, we have l e (x+r i ) <= α l e (x) for all agents i є {1,..., k}, edges e є E, and x є [0,sum(rj : j!=i) ]. Then for any flow f* feasible for (G, 2r, l), C(f) <= α C(f*).


Download ppt "How bad is selfish routing? מאת ליאור עזרא. 027256569 עפ " י מאמר של חווה טרדוס וטים גן - מחוספס."

Similar presentations


Ads by Google