Game Theory and Networking Tutorial
Download
Report
Transcript Game Theory and Networking Tutorial
Network Routing Problem
S2
B
A
S1
R1
D
R2
S3
C
E
R3
Input:
network topology, link metrics, and traffic matrix
Output:
set of routes to carry traffic
Network Routing: Classical
Approach
Routing as optimization problem
e.g., minimum total delay in network
focus on global network performance (social optimal)
performance of individual user not important
Centralized or distributed algorithms
e.g., link state or distance vector
Passive users
users are oblivious to routing decisions
Network Routing: Game-Theoretic
Approach
Routing as game between users
users determine route
decision based solely on individual performance
(selfish routing)
strongly dependent on other users’ decisions
Non-cooperative game (non-zero sum)
users compete for network resources
Equilibrium point of operation
Nash equilibrium point (NEP)
Selfish Network Routing
Advantages
no need of centralized control or global agreement
on routing algorithm
individual user’s performance considered
greater adaptability
• changes in user demands or changes in network conditions
Disadvantages
multiple equilibria (eq. selection problem)
convergence to equilibrium
no network-wide optimality at equilibrium
• cost of “selfish routing”
user’s must have detailed knowledge of network
Applications of Game Theory to
Network Routing
Competitive routing in multiuser communication networks
A. Orda, R. Rom and N. Shimkin
IEEE/ACM Transactions on Networking, 1 (5) 1993
How bad is selfish routing?
T. Roughgarden and E. Tardos
Journal of the ACM, 49 (2) 2002
Selfish routing with atomic players
T. Roughgarden
ACM/SIAM Symp. on Discrete Algorithms (SODA) 2005
Simple Model: Network of
Parallel Links
R1
S1
S2
S3
A
B
R2
S4
R3
R4
set of users share a set of parallel links
each user has fixed demand (data rate)
users decide how to split demand across links
minimize individual cost
link has a load dependent cost (e.g., delay)
Network of Parallel Links
L {1,, L}
set of users: I {1,, I}
set of parallel links:
each user has a fixed demand (data rate):
r
user splits its demand across links
i
flow of user i on link l: f l
flow configuration of user i:
system flow configuration:
f ( f ,, f )
i
i
1
i
L
f ( f ,, f )
1
feasible configurations
satisfy nonnegative and demand constraints
I
i
User’s Cost Function
Cost function of user i: C ( f )
cost depends on flow configuration of all users
i
Assumptions on cost function
i
sum of user-link cost function: C ( f )
Cli ( f l )
lL
can be infinite
i
f
convex in l
i
when finite, continuously differentiable in Cl
at least one user with infinite cost can change its flow
configuration to have finite cost
• aggregate demand must be less than aggregate link capacity
Very mild conditions on cost function
The Game
Users individually decide their flow configuration
goal is to minimize its own cost
Nash Equilibrium Point (NEP)
system flow configuration such that no user can reduce
their cost by changing its flow allocation
~
~1
~I
f ( f ,..., f ) F is a NEP if for all i, the following
holds:
~
~
~
C i ( f ) min {C i ( f 1 ,..., f i ,..., f I )}
f i F i
No user can reduce their cost by
rerouting their own flow
The Issues
Existence of NEP
is at least one NEP guaranteed to always exist
Uniqueness of NEP
under which conditions (if any) do we have a single
NEP
Convergence to (and stability of) NEP
play dynamics that lead to a NEP
System properties at the NEP
e.g., how does users divide allocate their flows
Existence of NEP
N-person convex game [Rosen65]
joint strategy set is convex, closed and bounded
each player’s payoff function is convex in their own
strategy
existence of NEP proven by Katutani fixed point
theorem
Can also show using Kuhn-Tucker conditions
necessary and sufficient for system flow
configuration to be a NEP
Uniqueness of NEP
Uniqueness of NEP only under a type of cost
functions (type-A functions)
cost function has two parameters: user’s i and
aggregate of all others
monotonically increasing in each parameter
still very general (e.g., M/M/1 delay function)
Proof by contradiction using Kuhn-Tucker
conditions
System has a single operating point
System Properties at NEP
Assume all users share same type-A cost
function
but users can have different demands
Monotonicity of link usage
user with higher demand uses more of each and
every link used
a user with higher demand uses more links
Higher capacity links receive more users
does not hold in general, only under yet another
type of cost function (which still captures M/M/1)
Intuitive but assuring properties
Dynamical System
Simple case study
two-users sharing two parallel links
S1
A
S2
B
R1
R2
Dynamical model: Elementary Stepwise System
Users take turns in updating their flow
configuration
• measure load on links, adjust its flow to minimize cost
i
fl (n)
flow of user i on link l at step n
Convergence to NEP
Let
f denote unique NEP of game
*
Initialize system with any feasible flow
configuration: f(0)
Convergence to NEP guaranteed
lim f (n) f
*
n
Framework used in proof
in general
limited
not aplicable
to two link, two user structure
General Topology
S2
B
A
S1
R1
D
R2
S3
C
E
R3
Users decide how to split their demands over
possible paths
users know network topology (directed graph)
Existence and Uniqueness of NEP
Existence of NEP
same
argument as before (N-person convex game)
No unique NEP for type-A cost functions
shown by counterexample
Uniqueness shown only under very strict
conditions for cost function
not very interesting networking scenarios
Analysis of general network in this modeling
framework is much harder
The “Price of Anarchy”
Equilibria of non-cooperative games usually
inefficient
e.g., prisoner’s dilemma
Pareto optimal usually not a NEP
Quantify inefficiency in terms of a global
objective
“price of anarchy” (coordination versus competition)
Price of Anarchy =
of a Game
objective function value at NEP
optimal objective function value
if multiple NEP exists, take sup (or inf) over NEP set
Cost of Selfish Routing
How does total cost compare?
flow allocation at a NEP
optimal flow allocation
Total cost of flow configuration:
C ( f ) cl ( f l ) f l
lL
where cl (.) is load dependent link cost function
e.g., link delay
Example (1/4)
r1 = 0.5
r2 = 0.5
cl1 ( x) x
S1
S2
A
B
R2
cl2 ( x) 1
flow configuration cost
C ( f ) cl1 ( fl1 ) f l1 cl2 ( f l2 ) fl2 fl1 fl2
2
optimal flow allocation
f * ( fl1* , fl2* ) (0.5,0.5)
C( f ) 0.75 3 / 4
*
can be realized with
f 1 (0.25,0.25) , f 2 (0.25,0.25)
R1
Example (2/4)
r1 = 0.5
r2 = 0.5
cl1 ( x) x
S1
A
S2
B
cl2 ( x) 1
R1
R2
But this is not NEP…
Cost of a flow configuration to user i
Ci ( f ) cl1 ( fl1 ) fl1i cl2 ( fl2 ) fl2i fl1 fl1i fl2i
C ( f ) 0.5 * 0.25 0.25 0.375
i
*
By rerouting traffic user 1 (or 2) can reduce its
cost:
f ' (0.3,0.2)
C1 ( f ' ) 0.55* 0.3 0.2 0.365
1
lower
cost!
Example (3/4)
r1 = 0.5
r2 = 0.5
cl1 ( x) x
S1
A
S2
B
cl2 ( x) 1
NEP given by
R1
R2
f (0.5,0) , f (0.5,0)
1
2
link 1 is a dominant strategy (link 2 never used)
Cost to user i at NEP
higher
cost!
C ( f ) 0.5
Total cost of NEP configuration
i
C( f ) 1
higher
cost
Example (4/4)
r1 = 0.5
r2 = 0.5
cl1 ( x) x
S1
S2
A
B
cl2 ( x) 1
R1
R2
Optimal cost:
C( f * ) 3 / 4
NEP cost: C ( f ) 1
1
4
Price of Anarchy: C ( f )
*
C( f ) 3 / 4 3
Thm:[Roughgarden/Tardos00] POA of selfish
routing w/affine cost functions is at most 4/3
for any network topology and traffic matrix!
Another example (non-linear cost)…
r1 = 0.5
r2 = 0.5
cl1 ( x) x
S1
S2
d
A
B
cl2 ( x) 1
R1
R2
NEP: both users only use link 1
cost is 1
Optimal: 1-ε for link 1 and ε for link 2
ε depends on d, but is small for large d
cost ≈ 0
Price of anarchy can be arbitrarily large
goes to infinity as d goes to infinity
So how bad is selfish routing?
It depends...
cost functions, network topology, traffic matrix,
user demands, etc.
In reality, not so bad
achieves close to optimal cost in Internet-like
environments (simulation study)
Another positive (and nice) result:
Thm:[Roughgarden/Tardos00] selfish routing is no
worst than the optimal routing of twice as much
traffic
for any cost function, network topology and traffic
matrix!
Title
Congestion Control Problem
S2
B
A
S1
R1
D
R2
S3
C
E
R3
Input:
network topology, routes, link characteristics,
traffic matrix
Output:
set of data rates to be used
Congestion Control: Classical
Approach
Congestion control as optimization problem
match user’s demand to network capacity and
achieve some fairness among users
focus on global network performance (social optimal)
performance of individual user not important
Centralized or distributed algorithms
e.g., TCP, max-min fairness
Passive users
users are oblivious to congestion decisions
Congestion Control: GameTheoretic Approach
Congestion control as game between users
users determine their own data rates
decision based solely on individual performance
Non-cooperative game (non-zero sum)
users compete for network resources
Equilibrium point of operation
Nash equilibrium point (NEP)
Key Assumption: A higher sending rate do not
necessarily yields better performance for user
Routing Games vs Congestion
Control Games
Routing games
users determine
network routes
multi-path routing
and traffic splitting
is possible
users’ data rates
are given and must
be routed
Congestion games
users determine
their data rate
network routes are
given (single path)
Applications of Game Theory to
Congestion Control
Making greed work in networks: a game-theoretic
analysis of switch service disciplines
S. Shenker
IEEE/ACM Transactions on Networking, 3 (6) 1995
An evolutionary game-theoretic approach to congestion
control
D. Menasché, D. Figueiredo, E. de Souza e Silva
Performance Evaluation, 62 (1-4) 2005
Simple Model: Single Bottleneck
Link
S1
S2
S3
S4
R1
R2
R3
R4
set of users share a bottleneck link
users decide their data rates
maximize individual performance
user’s performance depends on link load
e.g., quality of service provided by link
Single Bottleneck Link
Users determine sending rate: ri
Link modeled as M/M/1 queue
unit capacity
packet scheduling policy
Scheduling policy induces average queue
length for each user
ci : avg. queue length of user i
User’s utility function
U i (ri , ci )
strictly increasing in ri
strictly decreasing in c i
convex and derivable everywhere
Scheduling Policy
Determined by system operator
Allocation function
P
i
C (r )
scheduling policy P induces an avg. queue length for
each user given all user’s data rate
FIFO example
FIFO
i
C
(r )
ri
1 j rj
Must satisfy some constraints
aggregate average queue size same as M/M/1
Allocation function can be realized by
different service disciplines
Fair Share Allocation
Allocate service capacity fairly among user’s
demand
user’s requesting less obtain higher priority
Implemented through a priority queueing
algorithm
Priority Level
User
A
B
C
D
1
r1
-
-
-
2
3
4
r1
r1
r1
r2 - r1
r2 - r1
r2 - r1
-
-
r3 - r2
r3 - r2
r4 - r3
Assume:
r1 < … < rN
fraction of
traffic gets
lower
priority
MAC: Set of Monotonic Allocation
Functions
Consider a set of possible allocation functions
Ci
0 :
ri
ri
increases,
ci increases
Ci
0 :
rj
rj
increases,
ci does not decrease
Ci
0 at
rj
o
r Ci
rj
0
for all r
with rk rok
Includes all typical service disciplines
FIFO, LIFO, PS, fair share allocation
The Problem Investigated
Relationship between NEP and service
disciplines (MAC functions)
Which service disciplines yield good NEP?
Properties of NEP of a given MAC
efficiency
fairness
convergence to equilibrium
user protection
System designer can select service
discipline that yields good equilibrium
Efficiency of NEP
Efficiency in terms of Pareto optimal
no global objective function of system outcome
Pareto optimal outcome:
no other outcome is preferred by all users
Thm:[Shenker95] There is no allocation function
in MAC such that every NEP is Pareto optimal
Under some additional constraints fair share
is always efficient
constrained users’ utility function
symmetric rate vector
Uniqueness of NEP
Allocation functions can induce multiple NEP
undesirable since users cannot coordinate
Thm:[Shenker95]
Fair share mechanism always has a unique NEP
Fair share is the only allocation function that
always yields a unique NEP
Convergence to Equilibrium
Dynamics through a generalized hill climbing
algorithm
users eliminate strategies that always perform
worst
system converges to a reduced set of strategies
Different from best-response dynamics
Thm:[Shenker95]
With the fair share mechanism, all generalized
hill climbing algorithm converges to the NEP
Convergence is also fast (superlinear) and stable
Title
Application to Multimedia Traffic
R1
R2
R3
R4
S1
r1
r2
r3
Users share common bottleneck link
User’s choose data rate to be sent by source
only few data rates available
Utility given by “perceived” quality
Investigate dynamics and convergence
using evolutionary game theory
Why Evolutionary Game Theory
Model how users
change their strategy
Users are not perfect:
stochastic dynamics,
myopic, etc
Which NEP will be
achieved (if more than
one exists)
Efficiency of selected
NEP
Evolutionary
Game Theory
Entities of Model and Interactions
yields perceived
quality to
Users
(strategy set)
performance
metric feeds
QoS Model
(E-model or other)
choice of strategies
causes impact on
Link model
(M/M/1/k or other)
Two-layer Markovian Model
users’
actions
link
perf.
layer 1
0, 3
1, 2
2, 1
3, 0
layer 2
QoS of
each user
QoS of
QoS of
QoS of
each user each user each user
States and Users Utility
(i )
l : number of users selecting strategy l in state
n
M
: number of data rates available to users
(i )
1
(i )
l
(i )
m
(i )
M
n ,, n ,, n , n
U (l, si )
: state
si
: utility function of strategy l in state
No constraints on users’ utility function
should be defined for every state
si
si
Transition Matrix
(i )
1
(i )
l
(i )
m
(i )
M
n ,, n ,, n , n
n1( j ) ,, nl( j ) 1,, nm( j ) 1, nM( j )
nl(i ) (U (m, s j ) U (l , si )) if U (l , s j ) U (l , si )
(i )
otherwise
nl
Transitions determined by QoS in each state
rate of change proportional to gain
transitions can reduce QoS (users make errors)
Markov chain is ergodic
Main Problem Investigated
Assume:
t , 0
System in steady state
Users make no mistakes
States that have
non-negligible
steady state
probability
States that
correspond to NEP
What is the relationship?
Proposition 1
If a state has nonnegligible steady
state probability
under the condition
that this state is
contained in a quasiabsorbing set
This state is
also a NEP
Proposition 2
If a state is
a NEP
proof via simple
counter-example
This state also has
non-negligible
steady state
probability
Summary of Results
States with non-negligible SS probability
are NEP
correspond
to “stable” states
Some NEP are not stable
system
dynamics cannot converge on them
Still possible to have multiple stable NEP
not
clear where system will converge
state with highest probability?
Title
Title