1 foundations of distributed algorithmic mechanism design joan feigenbaum yale university jf

37
1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University http://www.cs.yale.edu/~jf

Post on 19-Dec-2015

221 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

1

Foundations of Distributed Algorithmic Mechanism Design

Joan FeigenbaumYale University

http://www.cs.yale.edu/~jf

Page 2: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

2

Two Views of Multi-agent Systems

CS ECON

Focus is on Computational & Communication Efficiency

Agents are Obedient, Faulty, or Byzantine

Focus is on Incentives

Agents are Strategic

Page 3: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

3

Secure, Multiparty Function Evaluation

. . .

t 1

t 2

t 3t

n-1

t n

O = O (t 1, …, t

n)

• Each i learns O.• No i can learn anything about t

j

(except what he can infer from t i and O).

Page 4: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

4

SMFE Literature

• Agents 1, … , n are obedient or byzantine.

• Obedient agents limited to probabilistic polynomial time. (Sometimes, byzantine agents too.)

• Typical assumption: at most n/3 byzantine agents

• Typical successful protocol: − All obedient agents learn O .

− No byzantine agent learns O or t

j for an obedient j.

Page 5: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

5

Internet Computation

• Both incentives and computational and communication efficiency matter.

• “Ownership, operation, and use by numerous independent self-interested parties give the Internet the characteristics of an economy as well as those of a computer.”

DAMD: “Distributed Algorithmic Mechanism Design”

Page 6: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

6

Outline

• DAMD definitions and notation

• Short example: Multicast cost sharing

• General open questions

• Long example: Interdomain routing

Page 7: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

7

Definitions and Notation

t 1 t

n

Agent 1 Agent n

Mechanism

. . .

p 1 a

1 p na

n

O(Private) types: t

1, …, t n

Strategies: a 1, …, a

n

Payments: p i = p

i (a

1, …, a n)

Output: O = O (a 1, …, a

n)

Valuations: v i = v

i (t

i, O)

Utilities: u i = v

i + p

i

(Choose a i to maximize u

i.)

Page 8: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

8

“Strategyproof” Mechanism

For all i, t i, a

i, and a –i = (a

1, …, a i-1, a

i+i, …, a n)

v i

(t i, O (a

–i, t i)) + p

i (a

–i, t i)

v i

(t i, O (a

–i, a i)) + p

i (a

–i, a i)

• “Truthfulness”• “Dominant Strategy Solution Concept”

Nisan-Ronen ’99: Polynomial time O ( ) and p

i ( )

Page 9: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

9

Example: Task Allocation

Input: Tasks z1, …, zk

Agent i ’s type: t = (t1, …, t

k )

(tj is the minimum time in which i can complete z

j)

Feasible outputs: Z = Z 1 Z

2 … Z n

(Z i is the set of tasks assigned to agent i)

Valuations: v i

(t , Z) = − tj

Goal: Minimize max tj

i

i

i

i

i

i

zj Z

i

zj Z

iiZ

i

Page 10: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

10

Nisan-Ronen Min-Work Mechanism

O (a1, …, an ): Assign zj to agent with smallest aj

p i (a

1, …, a n ) = min a

j

[NR99]: Strategyproof, n-Approximation

Open Questions:

• Average case(s)?

• Distributed algorithm for Min-Work?

i

i’i i’zj Z

i

Page 11: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

11

Distributed AMD [FPS ’00]

Agents 1, …, n

Interconnection network T

Numerical input {c1, … cm}

O (|T |) messages total

O (1) messages per link

Polynomial time local computation

Maximum message size is

polylog (n, |T |) and poly ( ||cj|| ).

“Good network complexity”

j=1

m

Page 12: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

12

Multicast Cost SharingMechanism-Design Problem

3 3

1 5 25

1,2 3,0

1,26,710

Users’ typesLink costs

Source

Which users receive the multicast?

Receiver Set

Cost Shares

How much does each receiver pay?

Page 13: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

13

Two Natural Mechanisms

Group-strategyproof

Budget-balanced

Minimum worst-case efficiency loss

Bad network complexity

Strategyproof

Efficient

Good network complexity

Shapley value

Marginal cost

Page 14: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

14

Marginal Cost

Receiver set: R* = arg max NW(R)R

NW(R) t i – C(T(R))

i R

Cost shares:

p i =

0 if i R*

t i – [NW( R*( t ) ) – NW( R*( t |i 0) )] o.w. {

Computable with two (short) messages per linkand two (simple) calculations per node. [FPS ’00]

Page 15: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

15

Shapley Value

Cost shares: c(l) is shared equally by all receivers downstream of l. (Non-receivers pay 0.)

Receiver set: Biggest R* such that t i p

i , for all i R*

Any distributed algorithm that computes it mustsend (n) bits over (|T |) links in the worst case. [FKSS ’02]

Page 16: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

16

Group-Strategyproof, BB Cost Sharing

“Representative Hard Problem” to solve on the Internet

Hard if it must be solved:• By a distributed algorithm• Computationally efficiently• Incentive compatibly

Becomes easy if one requirement is dropped.

Open Question: Find other representative hard problems.

Page 17: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

17

Open Question: More (Realistic)Distributed Algorithmic Mechanisms

Caching

P2P file sharing

Interdomain Routing

Distributed Task Allocation

Overlay Networks

Page 18: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

18

Open Question: Strategic Modeling

In each DAMD problem, which agents are

Obedient

Strategic

[ Byzantine ]

[ Faulty ] ?

Page 19: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

19

Open Question: What about “provably hard” DAMD problems?

• AMD approximation is subtle; can destroy strategyproofness

• “Feasibly dominant strategies” [NR ’01]

• “Strategically faithful” approximation [FKSS ’01]

• “Tolerable manipulability” [FKSS ’01]

Page 20: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

20

Revelation Principle

If there is a mechanism (O, p) that implements a design goal, then there is one that does so truthfully.

. . . Agent 1 Agent n

FOR i 1 to n

SIMULATE i to COMPUTE a i

O O (a 1, …, a

n); p p (a 1, …, a

n)

p 1 t

1 p nt

n

ONote: Loss of privacy Shift of computational load

Page 21: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

21

Open Question: Design Privacy-Preserving DAMs

• Cannot simply “compose” a DAM with a standard SMFE protocol.

− (n) obedient agents

− Unacceptable network complexity

− Agents don’t “know” each other.

• New SMFE techniques?

Page 22: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

22

Open Question: Can IndirectMechanisms be More Efficient w.r.tComputation or Communication?

• Mechanism computation

• Agent computation

• Communication

Page 23: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

23

Interdomain-RoutingMechanism-design Problem

Inputs: Transit costs

Outputs: Routes, Payments

Qwest

Sprint

UUNET

WorldNet

Agents: Transit ASs

Page 24: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

24

Problem Statement

• Strategyproofness• “BGP-based” distributed algorithm

• Lowest-cost paths (LCPs)

Per-packet costs {ck } Agents’ types:

{route(i, j)}Outputs:

(Unknown) global parameter: Traffic matrix [Tij]

{pk}Payments:

Objectives:

Page 25: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

25

Previous Work

Nisan-Ronen, 1999

• Single (source, destination) pair• Links are the strategic agents• “Private type” of l is cl• (Centralized) strategyproof, polynomial-time mechanism

Hershberger-Suri, 2001

pl dG|cl= - dG|cl=0

• Compute m payments as quickly as 1

Page 26: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

26

Our Formulation vs. NR, HS

• Nodes, not links, are the strategic agents.

• All (source, destination) pairs

• Distributed “BGP-based” algorithm

More realistic model

Advantages:

Deployable via small changes to BGP

Page 27: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

27

Notation

• LCPs described by indicator function:

1 if k is on the LCP from i to j, when cost vector is c 0 otherwise

• c Ι (c1, c2, … ,, …, cn)

{Ik(c; i,j)

k

Page 28: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

28

A Unique VCG Mechanism

For a biconnected network, if LCP routes are always chosen, there is a unique strategyproof mechanism that gives no payment to nodes that carry no transit traffic. The payments are of the form

pk = Tij , where

= ck Ik(c; i, j) + [ Ir(c Ι ; i, j ) cr - Ir(c; i, j ) cr ]

Theorem 1:

pijk

r r

i,j

pijk k

Page 29: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

29

Features of this Mechanism

• Payments have a very simple dependence on traffic Tij :

payment pk is the sum of per-packet prices .

• Price is 0 if k is not on LCP between i, j.

• Cost ck is independent of i and j, but price depends on i and j.

• Price is determined by cost of min-cost path from i to j not passing through k (min-cost “k-avoiding” path).

pijk

pijk

pijk

pijk

Page 30: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

30

BGP-based Computational Model (1)

• Follow abstract BGP model of Griffin and Wilfong:

Network is a graph with nodes corresponding to ASes and bidirectional links; intradomain-routing issues are ignored.

• Each AS has a routing table with LCPs to all other nodes:

Entire paths are stored, not just next hop.

Dest. LCP LCP cost

AS3 AS5 3AS1AS1

AS7 AS2 2AS2

Page 31: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

31

BGP-based Computational Model (2)

• An AS “advertises” its routes to its neighbors in the AS graph, whenever its routing table changes.

• The computation of a single node is an infinite sequence of stages:

Receive routes from neighbors

Update routing table

Advertise modified routes

• Complexity measures: − Number of stages required for convergence − Total communication

Page 32: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

32

Towards Distributed Price Computation

= ck + Cost ( P-k(c; i,j) ) – Cost ( P(c; i,j) )

• LCPs to destination j form a tree

• Use data from i ’s neighbors a,b,d to compute

tree edge

non-tree edge

j

a

bdi

.

pijk

pijk

Page 33: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

33

Constructing k-avoiding Paths

Three possible cases for P-k(c; i, j):

j

a

bdi

k

i ’s neighbor on the path is (a) parent (b) child (d) unrelated

In each case, a relation to neighbor’s LCP or price, e.g., (b) = + cb + ci

is the minimum of these values.

pijk pbj

k

pijk

Page 34: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

34

A “BGP-based” Algorithm

AS3 AS5

c(i,1) AS1 c1

Dest. cost LCP and path prices LCP cost

AS1

• LCPs are computed and advertised to neighbors.• Initially, all prices are set to .• Each node repeats: − Receive LCP costs and path prices from neighbors. − Recompute path prices. − Advertise changed prices to neighbors.

Final state: Node i has accurate values.pijk

pi1 3 pi1

5

Page 35: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

35

Performance of Algorithm

d’ = maxi,j,k || P-k ( c; i, j ) ||

d = maxi,j || P ( c; i, j ) ||

Our algorithm computes the VCG prices correctly, uses routing tables of size O(nd) (a constant factor increase over BGP), and converges in at most (d + d’) stages (worst-case additive penalty of d’ stages over the BGP convergence time).

Theorem 2:

Page 36: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

36

Open Question: Strategy in Computation

• Mechanism is strategyproof : ASes have no incentive to lie about ck’s.

• However, payments are computed by the strategic agents themselves. How do we reconcile the strategic model with the computational model?

• “Quick fix” : Digital Signatures [Mitchell, Sami, Talwar, Teague]

Is there a way to do this without a PKI?

Page 37: 1 Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University jf

37

Open Question: Overcharging

• In the worst case, path price can be arbitrarily higher than path cost [Archer&Tardos, 2002].

• This is a general problem wiith VCG mechanisms.

• Statistics from a real AS graph, with unit costs:

Mean node price : 1.44Maximum node price: 990% of prices were 1 or 2

How do VCG prices interact with AS-graph formation?

Overcharging is not a major problem!