580 likes | 723 Views
A Network Pricing Game for Selfish Traffic. Written by Éva Tardos, Ara Hayapetyan and Tom Wexler . Presented by Hila Pochter Credit to Tom Wexler for providing some of the slides. Overview. Introduce the game Prove the existence of a Nash equilibrium Bound the price of anarchy Questions.
E N D
A Network Pricing Game for Selfish Traffic Written by Éva Tardos, Ara Hayapetyan and Tom Wexler Presented by Hila Pochter Credit to Tom Wexler for providing some of the slides
Overview • Introduce the game • Prove the existence of a Nash equilibrium • Bound the price of anarchy • Questions
Overview • Introduce the game • Prove the existence of a Nash equilibrium • Bound the price of anarchy • Questions
moo The “Tragedy of the Commons” Common Pasture Common Pasture Common Pasture Common Pasture
Introduction • We want to study about the internet • The internet is built and controlled by a large number of service providers who seek to maximize their own profit by charging users for using their services • The users want to optimize over the price and quality of service • And all of them are selfish!!!
Our model • A network containing 2 nodes : s and t with k parallel links. Each link i is controlled by a distinct player which charges a price pi for using his link. Price list 10$ 8$ 2$ 6$ s t
Latency • Link i has alatency (delay) functionli(x) , indicating the delay experienced by a volume of x traffic using i. • We will focus on strictly increasing linear latency function, i.e. li(x)=aix+bi where ai>0 and bi≥0
Disutility • User experience in routing flow through link i depends on the sum of the price and latency. We will call it the disutility. • If player i charges pi and fi volume of flow uses link i, then the flow experiences the disutility of pi+li(fi) • The traffic is selfish so it will not route along one link if it can switch to another one an incur a lower disutility => all traffic will experience the same disutility
Disutility Curve • u(x) which we call the disutility curve measures the disutility that will be tolerated by a volume of x flow. • By definition u(x) is decreasing and concave. For ease of exposition we will assume that it is strictly decreasing.
Our Model-Properties • A price vector p induces a flow vector f satisfying the following properties: • For any i,j if fi>0 then li(fi)+pi≤ lj(fj)+pj • If fi>0 the li(fi)+pi=u(Σjfj) • And in English: • No traffic can decrease its disutility by rerouting • The disutility experienced by any traffic must match the disutility that is tolerated by the total flow.
The Player Profit • Each player i selects a price pi for his link. These prices, together with the latencies and the demand curve, induce a unique flow fi on each link. Players seek to maximize their profit πi=pi·fi.
One Player Example s t • 1 link, disutility curve u(x) and latency ℓ1(x). • Player sets a price p1. • Disutility = ℓ1(x) + p1. • Flow f1 piles on link until disutility matches u(x). • Player gathers profit p1 from traffic. ℓ1(x) + p1 u(x) disutility p1 ℓ1(x) p1 p1 f1 volume
Our Model-continue • We can think of this game as a 2 stage game. • The edge players set prices pi on the edges • The traffic routes itself selfishly from the source to the sink, where the rate of flow is dictated by the disutility curve. • The flows that would be produced in the second stage are unique, so we will focus on the first stage assuming that the players will anticipate the flow resulting from their chosen prices.
An instance of the network pricing game with 2 players p1=1 {l1(x)=x} p2=2 {l2(x)=2x+1} We know that: 1. d=p1+l1(f1) =p2+l2(f2) 2. d=u(f1+f2) In order to know the flow we should solve those equations 1+f1=2+2f2+1 => f1=2f2+2 3+2f2=9-(f1+f2)2 u(x)=9-x2 disutility volume
An instance of the network pricing game with 2 players-continue • We will solve the equation and get the solution : • f1=2.26 • f2=0.13 • d=f1+1=3.26 disutility u(x)=9-x2 d p1 p2 volume
Measuring Social Welfare We could just useSipi... ... but this ignores users! User surplus is the extra utility of routed traffic. We take social cost to be player profit + user surplus. U(p) = Σiπi+0∫F (u(x)-d)dx p1 p2 disutility volume
Let's Play! What will happen if we will change a player’s price?
u(x) d pi li(x) fi Example- Player i decides to increase his price After Before disutility disutility d u(x) d pi’ pi li(x) fi’ fi volume volume
Example- Player i decides to decrease his price Before After u(x) disutility disutility d d u(x) d pi pi’ pi li(x) li(x) fi’ fi volume volume fi
Lemma • Let p1, . . . , pk be a price vector with associated flow vector f1, . . , fk. Assume that the first player increases her price to p1‘> p1 while the others keep their prices unchanged. Denote the new flow vector by f1’, . . . , fk’. If f1 > 0, then, 1. f1’ < f1, 2. fi‘≥ fi, for all i ≠1. 3. F’≤ F, where F = Σi fi and F’= Σi fi’ • The symmetric claim holds if player 1 reduces her price.
disutility u(x) d volume Proof Of Part 1- f1’ < f1 • By contradiction: • suppose f1’≥f1 • p1’>p1 =>the disutility must strictly increase to d’ • fi>0, i≠1. li(fi) + pi < d’ =>fi’>fi • But this implies that both the disutility and total flow have increased, which is a contradiction. d=p1+l(f1) u(x) is strictly decreasing so if F increases u(x) must decrease!!! F
u(x) d pi disutility li(x) fi volume Proof Of Part 2- fi‘≥ fi, for all i ≠1 • In contradiction: • suppose fi’<fi ,i ≠1. Since pi is unchanged and latencies are strictly increasing, the disutility must strictly decrease. • All links i ≠1 that carried flow must now carry less flow. • f1’<f1 & fi’<fi =>F’<F • But then both the disutility and the total flow have decreased, which is a contradiction. u(x) is strictly decreasing so if it decreases, F must increase!
u(x) disutility d volume Proof Of Part 3 - F’≤ F • We proved that fi‘≥ fi, for all i ≠1. • The disutility can only increase ( because flow might been added without a change in the price) • Thus the total volume of flow can only decrease. u(x) is strictly decreasing so u(x) increase it mean that the total flow decreased F
So What Have we proved? • We have just proved that for each i ,fi(p) is a non increasing function. • When the link price increases we get less flow. • When the link price decreases we get more flow.
Overview • Introduce the game • Prove the existence of a Nash equilibrium • Bound the price of anarchy • Questions
Existence of Pure Nash Equilibrium-Definitions • We say that a set of prices p is at Nash equilibriumif, by changing a single price pito pi’, the resulting flow f’ does not give player i a larger profit (πi’=pi’ fi’) • We say that a player is contentif she has no incentive to deviatefrom her current price.
The Best Response Function • Let’s define the best response function β:Rk→ Rk. • This function maps a price vector p to another price vector p’, such that pi’ maximizes player i’s profit assuming all other players price as in p. • We define player i’s best response to be pi = 0 if there is no price at which i can derive a positive profit.
Existence of Pure Nash Equilibrium-proof sketch • we will prove that β(p) is well defined and continuous. • Since there is a maximum price P such that any player charging above P gathers no profit (for example u(0)) , we can restrict our attention on β(·) to the convex and compact region [0, P]k. • Thus we can apply Brouwer’s fixed point theorem to finish the proof.
Brouwer’s fixed point theorem • Let f: S →S be a continuous function from a non-empty, compact, convex set into itself, then there is a such that (i.e. x* is a fixed point of function f ). • If we prove that we can use this theorem on β(p), we will prove that between 0 and P there is a fixed point of function β(p), which means a Nash Equilibrium!!!
What do we need to do? Step 1: Prove that β(p) is well defined ( a player’s best response is unique). Step 2: Prove that β(p) is continuous
Proof that β(p) is well defined • Suppose in contradiction that the best response for player i is not unique – p’i>p’’i • According to the first lemmaf’i<f’’i andF’<F’’. • Let v’ and v’’ the right and left slope of u(.) at F’ and F’’. By concavity of u(.), v’≥v’’ u(x) v’ disutility v’’ F’ F’’ volume
Proof that β(p) is well defined-continue • Lemma- Define v− and v+ respectively as the left and right derivatives (slopes) of the disutility curve at F. We will assume that v− and v+ are both well defined (note that they are both negative). If player i is content, then the following two conditions must hold:
Proof that β(p) is well defined-continue • Since p’iand p’’iare best responses for player i we can apply the lemma: a contradiction! Remember that p’i>p’’i f’i<f’’I v’≥v’’
Proof that β(p) is continuous • We will prove that fi(pi) (the amount of flow routed through link ias a function of pi, assuming all other prices in p are fixed) is continuous for any i. • Then it is easy to see that πiis continuous function of pi (πi =pif(pi)) • The continuity of βis a direct consequence of the continuity of π(.)
u(x) d pi li(x) fi proof that fi(pi)is continuous for any p fi(pi+ε)<fi(pi)- Δ li(fi(pi)- Δ)=l(fi(pi))-L Choose ε<L d’ <l(fi(pi))-L+pi+ ε< d • In contradiction: fi(p) disutility f Δ p pi volume
Overview • Introduce the game • Prove the existence of a Nash equilibrium • Bound the price of anarchy • Questions
Price of Anarchy • Let’s define the price of anarchy of this game. If p is the set of prices that maximizes the social utility, then the price of anarchyis the maximum possible ratio of where the prices p range over the possible equilibrium prices and p* is the set of prices that maximizes social utility.
Reminder • The definition of the social utility in this game is U(p) = Σiπi+0∫F (u(x)-d)dx
Bound the price of anarchy • In the article the price of anarchy is bound by 5.064, which means that the social utility of the optimal solution is at most 5.064 the social utility achieved by any Nash equilibrium. • In order to do that they define a new disutility function that doesn’t decrease the price of anarchy.
Lemma • Define a new disutility curve: • Then prices p are also Nash equilibrium given this truncated demand curve , and the price of anarchy of this instance has not decreased
Proof that the NE stays NE with w(x) • No player has an incentive to decrease his price since it would increase the total flow and thus yield a flow vector that was achievable under u(x). • No player has an incentive to increase his price since the potential gain of such a move is smaller that it was with u(x).
Proof that PoAtrunc ≥PoA • Define p* and p the prices of the optimum and the Nash equilibriumwho maximized PoA. • Define x= 0∫F(u(x)-d)dx while F and d are the ones from the Nash equilibrium with the original disutility function. x is the traffic utility. • Then This is the social utility with w(x)
u(x) d Bound the price of anarchy-continue • With the new disutility function the equilibrium doesn’t have traffic utility. Now, in the modified game they bound the social utility of the optimal solution solely against the player profit in the Nash Equilibrium disutility w(x) volume F
pi pi Steep and Shallow Players • Lets partition the players to 2 groups according to the slope of their latencies. • Steep player • Shallow player
Bound the price of anarchy-continue • Claim : There can be at most 1 shallow player • Proof: suppose i is a shallow player. we know that So Steep shallow
Dealing with Steep Players • To bound a steep players profit, ignore other players. • These lines bound whatOPT can gather from player i. Player i can get any taller box. Therefore, i at NE must gather nearly optimal profit. pi
u(x) d Bound the price of anarchy for Steep Player • Claim: if the player is steep the optimal value is bounded by 1.125. • Proof: Lets j be a steep player. • Lets find the flow that maximize πj =pjfj since pj=(d-ajf-bj) then πj (f) =(d-ajf-bj)fj so πj (f)’=(d-bj)-2ajf . We get: disutility w(x) volume F
Bound the price of anarchy for Steep Player -continue • From that we get • Since we get the maximum profit if • We can see now that we get • In the same way you get • So the optimal social cost for a steep player is at most 1.25 the social cost in the Nash equilibrium
Bound the price of anarchy -continue • In the article they consider 2 cases regarding the shallow player latency. In both cases they show that the contribution of the shallow player to the optimal solution can be bounded by at most 4 times the sum of the profit in a Nash Equilibrium • By summing over the contribution of the steep and shallow players we see that the total price of anarchy is bounded by 5.125. • By Optimizing they get PoA of 5.064.
Extensions • Price of Anarchy bound needs convexity, not linearity. NE does need the linearity. • If latencies are convex & pure NE exist, PoA ≤ 4.65. • If ℓi(0) = 0 for all players i, PoA ≤ 3.125. [Acemoglu & Ozdaglar ’05] • If ℓi(0) = 0 for all players i, and disutility curve is a box,PoA ≤ 1.2.