480 likes | 489 Views
This article discusses the concept of nonatomic selfish routing games in directed graphs, where cost functions and commodities are considered. It examines the traffic flow and equilibrium conditions, social cost, weaknesses of the model, and the routing optima theorem. Examples of Pigou's example and Braess's paradox are explored, along with the concept of capacity augmentation and its impact on equilibrium and social costs. The theorem and proof of capacity augmentation are also presented.
E N D
Routing Games ECON 425/563 & CPSC 455/555 9/30/2008
Nonatomic Selfish Routing • Directed graph G=(V,E)
Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) 0 3x2 x+4 1 x(x+1)
Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) 0 3x2 s x+4 t 1 x(x+1)
Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) • Traffic ri 0 3x2 s x+4 t 1 x(x+1) r = 1
Nonatomic Selfish Routing 2/3 • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) • Traffic ri • Flow f: iPi R+where Piis all (si,ti) paths • Feasible if all traffic is routed • Equilibrium if cP(f) cP’(f) for all P,P’Pi, where P has positive flow 0 3x2 s x+4 t 1 x 1/3 r = 1
Nonatomic Selfish Routing 2/3 • Directed graph G=(V,E) • Cost functions ce(increasing) • Commodities (si,ti) • Traffic ri • Flow f: iPi R+where Piis all (si,ti) paths • Feasible if all traffic is routed • Equilibrium if cP(f) cP’(f) for all si-ti paths P,P’ with positive flow • Social cost: c(f) = iPPicP(f) · f(P) 0 3x2 s x+4 t 1 x 1/3 r = 1
Nonatomic Selfish Routing 2/3 0 3x2 • Models • Network traffic (latency) • Physical traffic • Other? s x+4 t 1 x r = 1 1/3 • Weaknesses • Source routing • Atomicity • Mixed strategies
Routing Optima Theorem: Let f * = minf c( f ). If ce(x)·x is convex, DxcP(x)·xx=fP* DxcP’(x)·xx=fP’*for all P,P’ Pi, fP*> 0.
Routing Optima Theorem: Let f * = minf c( f ). If ce(x)·x is convex, DxcP(x)·xx=fP* DxcP’(x)·xx=fP’*for all P,P’ Pi, fP*> 0. Example: cP(x) = 1DxcP(x)·x = 1DxcP(x)·xx=1/2= 1 1 P 1/2 s t 1/2 cP’(x) = xDxcP’(x)·x = 2xDxcP’(x)·xx=1/2= 1 P’ x r = 1
Price of Anarchy • Equilibria do not in general optimize social welfare • Prisoner’s Dilemma • Tragedy of the Commons • How bad can equilibria outcome be? Let f * be the optimal flow. Let f be highest-cost equilibrium. Let measure the “price of anarchy.” = c( f ) / c( f*)
Pigou’s Example 1 s t x r = 1
Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 s t x r = 1 1
Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 • Optimal outcome: c( f*) = 3/4 1/2 s t 1/2 x r = 1 1
Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 • Optimal outcome: c( f*) = 3/4 • Price of anarchy: = 4/3 1/2 s t 1/2 x r = 1 1
Braess’s Paradox 1 x t s x 1 r = 1
Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2
Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2
Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2 c( f ) = 2
Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2 c( f ) = 2 Adding edges can make equilibria worse.
Capacity Augmentation 1 r = 1 s t 1 x c( f ) = 1
Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f) = 1 c( f*) = 7/4
Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f) = 1 c( f*) = 7/4
Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f ) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f) c( f*)
Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Theorem 1b: Let c’(f) = c(f/2)/2. c’( f ) c( f *)
Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Theorem 1b: Let c’(f) = c(f/2)/2. c’( f ) c( f *) 1/2 1 r = 1 r’ = 1 1/2 s t s t 1 1/2 x/4 x c’( f) = 1/4 c( f*) = 3/4
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*)
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) ce( fe) fe fe traffic fe traffic
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ece( fe) fe = c( f ) ce c’e cost cost ce( fe) ce( fe) ce( fe) fe fe traffic fe traffic
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ece( fe) fe = c( f )
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ece( fe) fe = c( f ) 2. Let di be the (equal) path costs for commodity i. c’( f *) = i PPic’P( fP*) fP* i PPicP( fP) fP* = i 2ridi= 2 c( f )
Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f) c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ece( fe) fe = c( f ) 2. Let di be the (equal) path costs for commodity i. c’( f *) = i PPic’P( fP*) fP* i PPicP( fP) fP* = i 2ridi= 2 c( f ) 3. c( f*) c’( f*) - c( f ) (1) 2 c( f ) - c( f ) (2) = c( f )
Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e.
Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 s t 1 x
Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 • Proof: • Let he(x) = 0xce(y) dy.Let (f) = ehe(fe). s t 1 x
Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 • Proof: • Let he(x) = 0xce(y) dy.Let (f) = ehe(fe). • Observe that he(x) is convex and Dxhe(x) =ce(x). As with optima, is minimized when ce(fe) ce’(fe’), if fe>0. These conditions are exactly the equilibrium conditions. s t 1 x
Price of Anarchy Theorem (Pigou bound): Let C be a nonempty set of cost functions. The price of anarchy is at most the Pigou bound:(C) = supcC supy,z0 z c(z) y c(y) + (z-y)c(z)
Price of Anarchy Theorem (Pigou bound): Let C be a nonempty set of cost functions. The price of anarchy is at most the Pigou bound:(C) = supcC supy,z0 z c(z) y c(y) + (z-y)c(z) 1 1 r = 1 r = 1 z-y s t s t z y x x
Price of AnarchyLinear functions z c(z) y c(y) + (z-y)c(z) (C) = supcC supy,z0
Price of AnarchyLinear functions z c(z) y c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b
Price of AnarchyLinear functions z c(z) y c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b)
Price of AnarchyLinear functions z c(z) y c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b) -z (az+b)(2ay-ab) f’(y) = = 0 y=z/2 (y (ay+b) + (z-y)(az+b))2
Price of AnarchyLinear functions z c(z) y c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b) -z (az+b)(2ay-ab) f’(y) = = 0 y=z/2 (y (ay+b) + (z-y)(az+b))2 4az+b 4/3 f(z/2) = 3az+4b
Other questions • Design good networks • Detect Braess’s paradox • Design mechanism to achieve social optimum • Confluent flows