370 likes | 513 Views
Foundations of Distributed Algorithmic Mechanism Design. Joan Feigenbaum Yale University. http://www.cs.yale.edu/~jf. Two Views of Multi-agent Systems. CS. ECON. Focus is on Incentives. Focus is on Computational & Communication Efficiency. Agents are Strategic. Agents are
E N D
Foundations of Distributed Algorithmic Mechanism Design Joan Feigenbaum Yale University http://www.cs.yale.edu/~jf
Two Views of Multi-agent Systems CS ECON Focus is on Incentives Focus is on Computational & Communication Efficiency Agents are Strategic Agents are Obedient, Faulty, or Byzantine
. . . tn-1 t3 tn t2 t1 Secure, Multiparty Function Evaluation O= O(t1, …, tn) • Each i learns O. • No i can learn anything about tj • (except what he can infer from tiand O).
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 obedientagents learn O. • − No byzantineagent learns Oor • tj for an obedientj.
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”
Outline • DAMD definitions and notation • Short example: Multicast cost sharing • General open questions • Long example: Interdomain routing
. . . Agent 1 Agent n p1 a1 an pn Mechanism Definitions and Notation t1 tn O Output: O = O(a1,…, an) Valuations: vi = vi(ti, O) Utilities: ui =vi +pi (Private) types: t1, …, tn Strategies: a1, …, an Payments: pi = pi(a1, …, an) (Choose ai to maximize ui.)
“Strategyproof” Mechanism For all i, ti, ai, and a–i = (a1, …, ai-1, ai+i, …, an) vi(ti,O(a–i,ti))+pi(a–i,ti) vi(ti,O(a–i,ai))+pi(a–i,ai) • “Truthfulness” • “Dominant Strategy Solution Concept” Nisan-Ronen ’99: Polynomial time O( ) and pi( )
Example: Task Allocation Input: Tasks z1, …, zk Agent i’s type: t = (t1, …, tk) (tj is the minimum time in which i can complete zj) Feasible outputs: Z = Z1 Z2 … Zn (Zi is the set of tasks assigned to agent i) Valuations: vi(t,Z) = − tj Goal: Minimize maxtj i i i i i i zjZi i zjZi Z i
Nisan-Ronen Min-Work Mechanism O(a1, …, an): Assignzj to agent with smallest aj i pi(a1, …, an) = min aj i’ zjZi i i’ [NR99]: Strategyproof, n-Approximation • Open Questions: • Average case(s)? • Distributed algorithm for Min-Work?
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|| ). m j=1 “Good network complexity”
Multicast Cost SharingMechanism-Design Problem Receiver Set Source Which users receive the multicast? 3 3 1,2 3,0 1 5 5 2 Cost Shares How much does each receiver pay? 10 6,7 1,2 Users’ types Link costs
Two Natural Mechanisms • Marginal cost • Strategyproof • Efficient • Good network complexity • Shapley value • Group-strategyproof • Budget-balanced • Minimum worst-case efficiency loss • Bad network complexity
Marginal Cost Receiver set: R* = arg max NW(R) R NW(R) ti –C(T(R)) iR Cost shares: { 0 if i R* ti – [NW(R*( t)) – NW(R*( t |i0))] o.w. pi = Computable with two (short) messages per link and two (simple) calculations per node. [FPS ’00]
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 ti pi, for all i R* Any distributed algorithm that computes it must send (n) bits over (|T|) links in the worst case. [FKSS ’02]
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.
Open Question: More (Realistic)Distributed Algorithmic Mechanisms Caching P2P file sharing Interdomain Routing Distributed Task Allocation Overlay Networks
Open Question: Strategic Modeling In each DAMD problem, which agents are Obedient Strategic [ Byzantine ] [ Faulty ] ?
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]
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 . . . p1 t1 tn pn FOR i 1 to n SIMULATE i to COMPUTEai O O(a1, …, an);p p(a1, …, an) O Note: Loss of privacy Shift of computational load
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?
Open Question: Can IndirectMechanisms be More Efficient w.r.tComputation or Communication? • Mechanism computation • Agent computation • Communication
Interdomain-RoutingMechanism-design Problem WorldNet Qwest UUNET Sprint Agents: Transit ASs Inputs:Transit costs Outputs: Routes, Payments
Agents’ types: Per-packet costs {ck} Outputs: {route(i, j)} {pk} Payments: Problem Statement (Unknown) global parameter: Traffic matrix [Tij] Objectives: • Lowest-cost paths (LCPs) • Strategyproofness • “BGP-based” distributed algorithm
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 pl dG|cl= - dG|cl=0 Hershberger-Suri, 2001 • Compute m payments as quickly as 1
Our Formulation vs. NR, HS • Nodes, not links, are the strategic agents. • All (source, destination) pairs • Distributed “BGP-based” algorithm Advantages: • More realistic model • Deployable via small changes to BGP
Notation • LCPs described by indicator function: { 1 if k is on the LCP from i to j, when cost vector is c 0 otherwise Ik(c; i,j) • cΙ (c1, c2, … ,, …, cn) k
pij pij k k A Unique VCG Mechanism Theorem 1: 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 i,j = ckIk(c; i, j)+ [Ir(cΙ; i, j)cr - Ir(c; i, j)cr] k r r
k k k k pij pij pij pij Features of this Mechanism • Payments have a very simple dependence on traffic Tij: • payment pk is the sum of per-packet prices . • Price is 0ifk is not on LCP between i, j. • Costck 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).
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: LCP cost LCP Dest. AS1 AS3 AS5 AS1 3 AS2 AS7 AS2 2 Entire paths are stored, not just next hop.
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: Advertise modified routes Receive routes from neighbors Update routing table • Complexity measures: − Number of stages required for convergence • − Total communication
j a i d b k k pij pij Towards Distributed Price Computation =ck+Cost(P-k(c; i,j))–Cost(P(c; i,j)) • LCPs to destination j form a tree tree edge non-tree edge . • Use data from i’s neighbors a,b,d to compute
k k pij pij Constructing k-avoiding Paths Three possible cases for P-k(c; i, j): j i’s neighbor on the path is (a) parent (b) child (d) unrelated k a i b d In each case, a relation to neighbor’s LCP or price, e.g., (b) =+cb+ci k pbj • is the minimum of these values.
k pij 3 pi1 5 pi1 A “BGP-based” Algorithm LCP cost LCP and path prices Dest. cost AS3 AS5 AS1 c(i,1) AS1 c1 • 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.
Performance of Algorithm d = maxi,j||P(c; i, j)|| d’ = maxi,j,k||P-k(c; i, j)|| Theorem 2: 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).
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?
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.44 Maximum node price: 9 90% of prices were 1 or 2 Overcharging is not a major problem! How do VCG prices interact with AS-graph formation?