Introduction Game Theory 2007

2008. Peter van Emde Boas
SELFISH AGENTS ON THE INTERNET
© Peter van Emde Boas
© Peter van Emde Boas
Noam Nisan
Algorithms for Selfish Agents
Mechanism Design for Distributed Computing
Proc. STACS’99, Springer LNCS 1563, pp 1

15
Invited paper. See also STOC’99 and SOFSEM 2000
Amir Ronen
Introduction Game Theory 2007

2008. Peter van Emde Boas
The Internet according to
Nissan & Ronen
Distributed Computation by a
Network
of
Agents
Agents
are
Unreliable
and
Uncontrolable
; not
Byzantine
but
Selfish
:
Game Theoretical Solution
for Controling
their Behavior.
Introduction Game Theory 2007

2008. Peter van Emde Boas
The Internet as seen by a
Game Theoretician
Distributed Computation by a
Network
of
Agents
Agents
are
Unreliable
and
Uncontrolable
; not
Byzantine
but
Selfish
:
Quisque sibi proximus....
Game Theoretical Solution
for Controling
this Zoo.
© Scott Adams
© Scott Adams
© the Games Workshop
© the Games Workshop
© the Games Workshop
© the Games Workshop
Introduction Game Theory 2007

2008. Peter van Emde Boas
Sample Scenarios
•
Resource Allocation
–
Disc Space, Processing Power,
Bandwidth, .....
•
Routing
–
Trafic density, Bandwidth, Congestion
•
Electronic Trade
–
Auctions, Leveraging, Brokering
Introduction Game Theory 2007

2008. Peter van Emde Boas
Approach
•
Joint Work
Nissan
&
Ronen
•
Based on
Mechanism Design
•
Solutions based on
Known
Mechanisms
•
Related to Applications of Game
Theory in
Distributed AI
(
Agents
) and
Theory of
Communications Networks
Introduction Game Theory 2007

2008. Peter van Emde Boas
Model
n
Players
:
1, ... , n
:
Agents
Each Agent has a
private input
t
i
: its
Type
, and an
reported
input
t
i
’
or
action
a
i
Output Specification
:
F: t = ( , t
i
, ) => o
W
㨠
set of
allowed
outcomes
.
Valuations
v
i
(t
i
,o)
of outcome for the agents
Objective function
g: W => R
which must be
optimized
Payments
p
i
which are added yielding
Utilities
:
u
i
= v
i
(t
i
,o) + p
i
Introduction Game Theory 2007

2008. Peter van Emde Boas
Mechanism
The
Mechanism
M
has as
inputs
the
reported types
t
i
’
or actions
a
i
It
computes
an
outcome
o =
o( , t
i
’, )
and
payments
p
i
( , t
i
’
, )
[
o( , a
i
, )
and
p
i
( , a
i
, )
].
The agents score their utilities:
u
i
:= v
i
(o( , a
i
, ), t
i
) + p
i
( , a
i
, )
So the Mechanism generates for every tuple of types
a Game
This mechanism should have
Dominating Strategies
:
whatever the inputs are
all players in the resulting game
possess a
Dominating Strategy
. Moreover the output
should be
allowed
and
minimize
the
Objective Function
.
Then it is called an
implementation
or
solution
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Domination Conditions
a
: tuple of actions
( ,a
i
, )
a

i
: tuple of actions
( ,a
i
, )
of the remaining agents.
(a

i
,a
i
)
: tuple of actions decomposed with agent
i
playing
her
dominating strategy
.
(a

i
,a
i
’)
: tuple of actions with an alternative for agent
i
The
dominating
strategies a
i
satisfy (for all agents i)
u
i
= v
i
(o(a

i
,a
i
), t
i
) + p
i
(a

i
,a
i
) ≥ u
i
’ = v
i
(o(a

i
, a
i
’), t
i
) + p
i
(a

i
, a
i
’)
o p
i
o’ p
i
’
Introduction Game Theory 2007

2008. Peter van Emde Boas
Examples
In the examples presented
actions
amount to
reporting
a type
. Subsequently the
mechanism
computes an
outcome
and
payments
to the agents.
What must be shown is that the outcome is
allowed
assuming that the agents report
truthfully
. Moreover
a single agent
can not
improve its utility
by reporting
a
lie
......
It doesn’t make a difference whether the others
report the truth or a lie
.
Maximum
: serving the most valuable client
Threshold
: caching some object provided there is
enough interest in it.
Shortest Path
: how to pay the cable

owners
Introduction Game Theory 2007

2008. Peter van Emde Boas
Truthful Implementation
The action of an agent consists of
reporting its type
,
more specifically its
true type
.
Playing the truth
is the
dominating strategy
FACT:
If there exists a mechanism then there exists
also a Truthful Implementation
.
Proof:
Just simulate the hypothetical implementation
based on the actions derived from the reported types
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Maximum
Agents are
clients
asking to be
served
.
Each client
ascribes
value
T
i
to being served.
The mechanism must serve the client with the
highest value
. However the clients may lie by
reporting
T
i
’ ≠ T
i
The solution evidently will
serve the client who
reports the highest value
, but a which price??
Non Solutions
:
Free Service
(payment
0
)
This will invite all clients to
exagerate
Full Payment
(
p
i
= T
i
’
) ; this will invite clients to
underreport
, leading potentially to selection
of the wrong one.....
Introduction Game Theory 2007

2008. Peter van Emde Boas
Solution of Maximum
Serve the client reporting the highest value and charge
him the value reported by the second highest client
.
This is the so

called
Vickrey Auction
.
Claim
:
Reporting the Truth is a Dominating Strategy
.
Proof
: Supose Client
i
is not the highest client.
If Client
i
is
not served
, then his
utility
u
i
= 0
and remains
so unless he
outbids
the highest client
k
at value
T
k
.
But then he
pays
T
k
resulting in utility
T
i

T
k
≤ 0
.
Similarly the highest client has no influence on the price
paid, unless he
underreports
so much that he looses
both
service
and the
positive utility
collected by being served.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Threshold
Object
X
should be
loaded in cache
, provided the
agents using the system ascribe
together
more value to
it being loaded than a
cost

price
C
. The
value
ascribed by agent
i
equals
T
i
. However each agent
may declare a value
T
i
’ ≠ T
i
Evidently object
X
is cached whenever
S
T
i
’ ≥ C
, but
at
which prices
to the agents ?
Non Solutions
:
Share the cost:
p
i
=

C/n
.
This will invite every agent
with
T
i
≥ C/n
to
declare
C
and so make
certain
that
X
is cached.
Proportional pricing:
This invites
underreporting
,
possibly resulting in the decision not to cache....
Introduction Game Theory 2007

2008. Peter van Emde Boas
Solution of Treshold
Each Client pays the
difference
between the cost
C
and the
total value ascribed
to
X
by the
others
. In case
this difference is
negative
(
the others already enforce
that X is loaded
)
nothing
is paid.
p
i
=

max(C

S
k≠i
T
k
, 0 )
This is the so

called
Clarke Tax
.
Analysis
: as long as the
resulting decision
is
unaffected
by a
lie
by agent
i
his
payment
remains
constant
.
If by the
lie
X
is
not loaded
, agent
i
looses his (
positive
)
utility; If by exageration
X
gets loaded agent
i
pays
C

S
k≠i
T
k
, an amount
exceeding
his value
T
i
, which
yields a
negative
utility.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Shortest Paths
Agents own
edges
in the (
bi

connected
) network. Each
edge
e
creates
expenses
t
e
for being used to its owner.
A connection between
source
x
and
sink
y
must
be established at
minimum cost
.
Cost
=
sum of edge
costs along the path
, denoted
D(G)
.
Evidently, after having been informed about the
claimed
edge costs
t
e
’
, the
Mechanism
will compute a
shortest
path
in the reported graph, at cost
D(G’)
. Which
rewards
should be granted to the edge owners ?
Answer
: the owner of edge
e
obtains payment
0
if
e
is
not used
in the selected path. Otherwise she will
collect
D(G
\
{e})

[ D(G’)

t
e
’ ]
; read this to be the
reduction
in the
total cost to the others
for using
e
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Analysis Shortetst Paths
A
lie
by the owner of
e
which leaves the shortest path
unaffected
won’t change the reward and utility
for this owner.
Exagerating
the cost so much that
e
is removed
only
occurs
when the
difference
t
e
’

t
e
≥ D(G
\
{e})

D(G)
≥
0
;
(
otherwise
e
wouldn’t belong to the true shortest path).
Consider the utility
u
e
granted to the owner of
e
, had she
been
truthful
. We have:
u
e
= D(G
\
{e})

(D(G)

t
e
)

t
e
= D(G
\
{e})

D(G) ≥ 0
;
Since
e
is removed by the
lie
the resulting utility becomes
zero
. So
nothing
is gained by the
lie
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Analysis Shortetst Paths
Underreporting
the cost so much that
e
is
inserted
in the
shortest path means that the
difference
t
e

t
e
’ ≥ D(G)

D(G
\
{e})
≥
0
;
(
otherwise
e
already would belong to the shortest path).
Consider the utility
u
e
granted to the owner of
e
, had she
been
truthful
. We have:
u
e
= 0 ≥ D(G
\
{e})

D(G) = D(G
\
{e})

(D(G)

t
e
)

t
e
=
D(G’
\
{e})

(D(G’)

t
e
’)

t
e
. This is exactly the
utility
for the
owner of
e
collected by her
lie
, so the result of her
lie
is
not positive
. Again
nothing
is gained by the
lie
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Morale
These examples are all examples of so

called
Vickrey

Groves

Clarke (VGC) Mechanisms
:
Objective function
G(o,t) =
S
†
v
i
(o,t
i
)
, and
allowed outcomes
are those maximizing the
objective function.
Payments
p
k
:=
S
i≠k
v
i
(o,t
i
) + h
k
(t

k
)
Theorem
:
VGC Mechanisms are truthful
.
Introduction Game Theory 2007

2008. Peter van Emde Boas
Analysis
Suppose that the claim is false and consider a
counterexample.
t: true types , d: reported types , i: an agent,
d
i
’ an alternative move for this agent. WLOG t
k
= d
k
for k ≠ i
u
i
= v
i
(o(d

i
,t
i
), t
i
) + p
i
(o( d

i
, t
i
), t
i
) <
u
i
’ = v
i
(o(d

i
, d
i
’), t
i
) + p
i
(o( d

i
, d
i
’), d
i
’) =
v
i
(o(d

i
, d
i
’), t
i
) + p
i
(o( d

i
, d
i
’), t
i
)
which for the given VGC mechanism amounts to:
S
v
k
(o(d

i
,t
i
), t
k
) + h
i
(d

i
) <
S
v
k
(o(d

i
,d
i
’), t
k
) + h
i
(d

i
)
but then the mechanism has failed to produce an allowed
solution.....
Introduction Game Theory 2007

2008. Peter van Emde Boas
Loose Ends
How are we ever going to
compute
the rewards in
our mechanisms
efficiently
??
The definition requires us to solve
n
instances
of the
optimization problem
in order to tweak the
system into correctly solving a
single
instance....
VGC mechanisms and the problems tackled using
them, are only the beginning....
Comments 0
Log in to post a comment