Download presentation
Presentation is loading. Please wait.
1
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
2
Overview Introduce the game Prove the existence of a Nash equilibrium
Bound the price of anarchy Questions
3
Overview Introduce the game Prove the existence of a Nash equilibrium
Bound the price of anarchy Questions
4
The “Tragedy of the Commons”
Common Pasture Common Pasture Common Pasture Common Pasture moo
5
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!!!
6
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$ $ 2$ $ s t
7
Latency Link i has a latency (delay) function li(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
8
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
9
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.
10
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. Explain why the flows are unique
11
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.
12
One Player Example 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. s t ℓ1(x) + p1 u(x) disutility p1 p1 ℓ1(x) p1 f1 volume
13
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.
14
An instance of the network pricing game with 2 players
{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
15
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
16
Measuring Social Welfare
We could just use Si pi... ... 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 Pay attention that the social utility is not equal to the players profit like in other games we learned!!! volume
17
Let's Play! What will happen if we will change a player’s price?
18
Example- Player i decides to increase his price
After Before pi li(x) fi u(x) d disutility disutility d u(x) d pi’ pi li(x) fi’ fi volume volume
19
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
20
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.
21
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) Suppose in contradiction that the flow on link 1 does not decrease. Then, since the price increased, the disutility must strictly increase. Consider any other link that had positive flow. This link now has smaller disutility, and since the price has not changed, must carry more flow. But this implies that both the disutility and total flow have increased, which is a contradiction. u(x) d volume disutility u(x) is strictly decreasing so if F increases u(x) must decrease!!! F
22
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. pi li(x) fi u(x) d volume disutility Suppose in contradiction that some link i ≠1 loses flow. Since pi is unchanged and latencies are strictly increasing, the disutility must strictly decrease. This implies that all links that carried flow must now carry less flow. Since we know that link 1 loses flow, the total flow decreases. 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!
23
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) d volume disutility u(x) is strictly decreasing so u(x) increase it mean that the total flow decreased F
24
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.
25
Overview Introduce the game Prove the existence of a Nash equilibrium
Bound the price of anarchy Questions
26
Existence of Pure Nash Equilibrium-Definitions
We say that a set of prices p is at Nash equilibrium if, by changing a single price pi to pi’, the resulting flow f’ does not give player i a larger profit (πi’=pi’ fi’) We say that a player is content if she has no incentive to deviate from her current price.
27
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.
28
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.
29
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!!!
30
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
31
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 lemma f’i<f’’i and F’<F’’. Let v’ and v’’ the right and left slope of u(.) at F’ and F’’. By concavity of u(.), v’≥v’’ u(x) disutility v’ v’’ F’ F’’ volume
32
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: Lemma- Let p be the price vector chosen by the players and f be the corresponding flow vector, with total flow F. 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), though they do not have to be equal. If player i is content, then the following two conditions must hold:
33
Proof that β(p) is well defined-continue
Since p’i and p’’i are best responses for player i we can apply the lemma: a contradiction! Remember that p’i>p’’i f’i<f’’I v’≥v’’
34
Proof that β(p) is continuous
We will prove that fi(pi) (the amount of flow routed through link i as a function of pi, assuming all other prices in p are fixed) is continuous for any i. Then it is easy to see that πi is continuous function of pi (πi =pif(pi)) The continuity of β is a direct consequence of the continuity of π(.)
35
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) pi li(x) fi u(x) d f disutility Δ For some price vector p let pi be a point of discontinuity of fi(·). Let f be the flow vector corresponding to the prices p with player i charging pi. Assume without loss of generality that fi(·) is upper-discontinuous at pi. Then there exists a small Δ> 0 such that for any ε> 0, if player i increases pi by ε , the flow going through the ith link will decrease by at least Δ (notice that it must decrease). Since latencies are strictly monotone, the loss of at least Δ flow decreases the latency on link i by at least some L > 0. Choose ε < L. Then if player i selects a price of pi + ε, the resulting latency will more than offset the increase in price. Thus the disutility will strictly decrease, contradicting the first lemma. p pi volume
36
Overview Introduce the game Prove the existence of a Nash equilibrium
Bound the price of anarchy Questions
37
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 anarchy is 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. Pay attention. This is a big U which mean the social utility, not the disutility curve!!! U(p) = Σiπi+0∫F (u(x)-d)dx
38
Reminder The definition of the social utility in this game is
U(p) = Σiπi+0∫F (u(x)-d)dx
39
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 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.
40
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
41
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).
42
Proof that PoAtrunc ≥PoA
Define p* and p the prices of the optimum and the Nash equilibrium who 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 Define p and p* the prices of the optimum and a Nash equilibrium in the game. Let p*trunc and ptrunc be the prices of anarchy of the optimum and a Nash equilibrium in a game with the truncated disutility function Define x= 0∫F(u(x)-d)dx while F and d are the ones from the Nash equilibrium with the original disutility function Then This is the social utility with w(x)
43
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 u(x) d disutility w(x) volume F
44
Steep and Shallow Players
Lets partition the players to 2 groups according to the slope of their latencies. Steep player Shallow player pi pi
45
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
46
Dealing with Steep Players
To bound a steep players profit, ignore other players. These lines bound what OPT can gather from player i. Player i can get any taller box. Therefore, i at NE must gather nearly optimal profit. pi
47
Bound the price of anarchy for Steep Player
Claim: if the player is steep the optimal value is bounded by 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: Consider a steep player j. As in the proof of Lemma 3.2, we can argue that the optimal solution can not gather more value than j by charging more than pj , as then the player could selfishly do the same. Thus we only need to consider how the optimal solution might benefit by having p j < pj . By assumption, aj 1 2 pj fj . The maximum feasible rectangle (corresponding to gathered utility) that is bounded above by u(x) and below by `j(x) has an area of 1.125j , which is achieved when aj = 1 by setting a price of 3 4pj and inducing a flow of 3 2 fj . Thus nearly all players gather almost as much utility as they would in an optimal solution. S j bj > `i(fi) + pi/2, and let S+ consist of all remaining steep players, as shown in Figure 4(b). Define F- and F+ to be the total flow carried by all players in S- and S+ respectively at equilibrium. By Lemma 3.3, we know that for any player j 2 S+, pj (d - bj)/2, and hence the total profit of all players in S+ is at least piF+/4. Furthermore, we can argue that S- must be small, as if it was very large, player i would have an incentive to undercut all the players in S-. In particular, we claim that F- 3fi. Otherwise, player i would have an incentive to charge a quarter of her current price. Due to u(x) d disutility w(x) volume F
48
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
49
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 By Optimizing they get PoA of
50
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 ≤ [Acemoglu & Ozdaglar ’05] If ℓi(0) = 0 for all players i, and disutility curve is a box, PoA ≤ 1.2.
51
Lower Bound the Price Of Anarchy
Look at a one player game with disutility curve And l(x)=0. The maximal profit will be obtained by charging a price of 1 gaining a social utility of 1. The optimal solution can gather a social value of 1.5 by charging 0. disutility 1 2 u(x) Π=f*p=(2-p)*p Π’=2p-p2 therefore p=1 give maximum profit OPT NE volume
52
The lower bound is 1.5!!!
53
Thank You for your attention!
Any questions?
54
A network Pricing Game with concave latency with no Pure Nash
Lets look at the 2 player game: Assume in contradiction that we have a Nash equilibrium with disutility d. but player 1 could get a profit of 2/3 by charging 1 but then player 1 will charge d-ε and all the flow will go through its link and get a heigher profit- no Nash
55
Bounding the Shallow Player
Case 1: Steep players gathering very little profit. The shallow player could undercut and gather more. Now, shallow player gathers nearly the max possible. p1 disutility volume
56
Bounding the Shallow Player
Case 2: Steep players gather a lot of profit. Player 1 can’t gather much more than the steep players: charge against them! p1 disutility volume
57
Bounding the Shallow Player
Typically, we have a combination of case 1 and 2. Can still bound what player 1 could gather in OPT against all players in NE. p1 disutility volume
58
U(p*)-x ≤U(OPTtrunc) The maximal part any price vector can lose in social utility by changing the disutility function to w(x) is x!!! x d disutility volume
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.