A Truthful 2-approximation Mechanism for the Steiner Tree Problem.

Slides:



Advertisements
Similar presentations
Combinatorial Auction
Advertisements

The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
6.896: Topics in Algorithmic Game Theory Lecture 21 Yang Cai.
Algorithmic Mechanism Design: an Introduction VCG-mechanisms for some basic network optimization problems: The Minimum Spanning Tree problem Guido Proietti.
1 Discrete Structures & Algorithms Graphs and Trees: III EECE 320.
The selfish-edges Shortest-Path problem. The selfish-edges SP problem Input: an undirected graph G=(V,E) such that each edge is owned by a distinct selfish.
1 The TSP : Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell ( )
Combinatorial Algorithms
Lectures on Network Flows
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Local Connection Game. Introduction Introduced in [FLMPS,PODC’03] A LCG is a game that models the creation of networks two competing issues: players want.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
SECOND PART: Algorithmic Mechanism Design. Mechanism Design MD is a subfield of economic theory It has a engineering perspective Designs economic mechanisms.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
The selfish-edges Minimum Spanning Tree (MST) problem.
Combinatorial Auction. Conbinatorial auction t 1 =20 t 2 =15 t 3 =6 f(t): the set X  F with the highest total value the mechanism decides the set of.
CS/SS 241a presentation California Institute of Technology1 False-Name-Proof Mechanisms for hiring a team Mahyar Salek Joint work with Atsushi Iwasaki,
Near-Optimal Network Design with Selfish Agents By Elliot Anshelevich, Anirban Dasgupta, Eva Tardos, Tom Wexler STOC’03 Presented by Mustafa Suleyman CIFTCI.
Group Strategyproofness and No Subsidy via LP-Duality By Kamal Jain and Vijay V. Vazirani.
SECOND PART: Algorithmic Mechanism Design. Mechanism Design MD is a subfield of economic theory It has a engineering perspective Designs economic mechanisms.
SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Second case study: Network Creation Games (a.k.a. Local Connection Games)
Tirgul 13 Today we’ll solve two questions from last year’s exams.
Near-Optimal Network Design With Selfish Agents Elliot Anshelevich, Anirban Dasgupta, Éva Tardos, Tom Wexler STOC’03, June 9–11, 2003, San Diego, California,
Approximation Algorithms
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
Design and Analysis of Computer Algorithm September 10, Design and Analysis of Computer Algorithm Lecture 5-2 Pradondet Nilagupta Department of Computer.
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
V. V. Vazirani. Approximation Algorithms Chapters 3 & 22
Algorithms for Network Optimization Problems This handout: Minimum Spanning Tree Problem Approximation Algorithms Traveling Salesman Problem.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
SECOND PART: Algorithmic Mechanism Design. Mechanism Design Find correct rules/incentives.
MST Many of the slides are from Prof. Plaisted’s resources at University of North Carolina at Chapel Hill.
1 The TSP : NP-Completeness Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell.
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Approximating the Minimum Degree Spanning Tree to within One from the Optimal Degree R 陳建霖 R 宋彥朋 B 楊鈞羽 R 郭慶徵 R
UNC Chapel Hill Lin/Foskey/Manocha Minimum Spanning Trees Problem: Connect a set of nodes by a network of minimal total length Some applications: –Communication.
Algorithmic Mechanism Design: an Introduction Approximate (one-parameter) mechanisms, with an application to combinatorial auctions Guido Proietti Dipartimento.
The Minimum Spanning Tree (MST) problem in graphs with selfish edges.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Projects Network Theory VLSI PSM 1. Network 1. Steiner trees
The Shortest Path problem in graphs with selfish edges.
The Shortest-Path problem in graphs with selfish-edges.
Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28.
Spanning tree Lecture 4.
Combinatorial Auction. A single item auction t 1 =10 t 2 =12 t 3 =7 r 1 =11 r 2 =10 Social-choice function: the winner should be the guy having in mind.
One-parameter mechanisms, with an application to the SPT problem.
Local Connection Game. Introduction Introduced in [FLMPS,PODC’03] A LCG is a game that models the creation of networks two competing issues: players want.
Second case study: Network Creation Games (a.k.a. Local Connection Games)
Network Formation Games. NFGs model distinct ways in which selfish agents might create and evaluate networks We’ll see two models: Global Connection Game.
Algorithm Design and Analysis June 11, Algorithm Design and Analysis Pradondet Nilagupta Department of Computer Engineering This lecture note.
Midwestern State University Minimum Spanning Trees Definition of MST Generic MST algorithm Kruskal's algorithm Prim's algorithm 1.
Network Formation Games. NFGs model distinct ways in which selfish agents might create and evaluate networks We’ll see two models: Global Connection Game.
Voronoi Graph Voronoi region Vor(p) (p in set S) Voronoi Graph VOR(S)
Lectures on Network Flows
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
CS 583 Analysis of Algorithms
Network Formation Games
Minimum Spanning Tree Algorithms
The Shortest-Path problem in graphs with selfish-edges
Lecture 14 Shortest Path (cont’d) Minimum Spanning Tree
Combinatorial Auction
Combinatorial Auction
Combinatorial Auction
Combinatorial Auction
Lecture 13 Shortest Path (cont’d) Minimum Spanning Tree
Minimum Spanning Trees
Presentation transcript:

A Truthful 2-approximation Mechanism for the Steiner Tree Problem

The Steiner Tree problem INPUT: Undirected, weighted graph G=(V,E,c) N  V: set of terminal nodes OUTPUT: a tree T spanning N of minimum total cost, i.e., which minimizes c(T)=  e  T c(e)

An example a b c N={a,b,c} T: optimal Steiner tree T

About Steiner Tree problem It is NP-hard It is approximable within 1.55 Robins, Zelikovsky (2000)

Steiner Tree game Each edge e is controlled by a selfish agent A e Only A e knows t e (weight of the edge e) We want to compute a “good” solution w.r.t. the true costs We do it by designing a mechanism Our mechanism: Asks each agent to report her cost Computes a solution using an output algorithm g( ٠ ) Hands payments p e to each agent A e using some payment function p

More formally Feasible solutions: F: set of all trees in G spanning N Type of agent A e :  e : weight of edge e Intuition:  e is the cost A e incurs whenever she uses e A e ’s valuation of T  F: v e (  e,T)=  e if e  E(T), 0 otherwise SCF: minimum Steiner tree of G=(V,E,  ) with terminals N

How to design a truthful mechanism for the problem? Notice that: the (true) total weight of a feasible T is:  e  E v e (  e,T) the problem is utilitarian! …VCG mechanisms apply

VCG mechanism M= : g(r): arg min x  F  j v j (r j,x) p e (x): for each e  E: p e =  j≠e v j (r j,g(r - e )) -  j≠e v j (r j,x) g(r) should compute an optimal solution!!! What to do? …we look for (approximated) one-parameter mechanisms! L. Gualà, G. Proietti, A Truthful (2-2/k)-Approximation Mechanism for the Steiner Tree Problem with k Terminals, COCOON’05

Our goal: to design a mechanism satisfying: 1. g( ٠ ) is monotone 2. Solution returned by g( ٠ ) is a “good” solution, i.e. an approximated solution 3. g( ٠ ) and p( ٠ ) computable in polynomial time

A 2-approximation algorithm 1. Build the weighted complete graph D with node set N 1. For every pair of nodes in N, w(a,b):= d G (a,b) 2. Compute an MST M of D 3. Expand any edge of M with the corresponding shortest path. This defines a subgraph H of G 4. Return any feasible tree T which is a subgraph of H

An example a bc N={a,b,c} a bc D

An example a bc N={a,b,c} a bc D M

An example a bc N={a,b,c} a bc D M H

An example a bc N={a,b,c} a bc D M T

The algorithm is a 2-approximation algorithm for the Steiner tree problem, i.e. it returns a solution with cost at most twice the cost of the optimal solution. Theorem [Takahashi, Matsuyama,’80] Is the algorithm monotone?..good question! It depends on Steps 3 and 4

Definition of g( ٠ ) We modify the 2-apx algorithm in order to garantee 1. Monotonicity 2. Efficiency w.r.t. the computation to the threshold values Idea: we can guarantee an acyclic expansion of M

High level description of g( ٠ ) 1.Compute D; M=MST(D) 2.Let r be any terminal node. T=({r},  ). N(T)={r} 3.At each step g(٠) reaches a new terminal node b (until N(T)=N) 1.Choose an edge (a,b) of M s.t. a  N(T) and b  N(T) 2.Try to expand (a,b) whithout forming cycles 3.If this is not possible, look for an edge (a’,b) of D s.t. 1.(a’,b) admits an acyclic expansion 2.a’  N(T) 3.w(a’,b)=w(a,b) 4.M=M\{(a,b)}  {(a’,b)} 5.Expand (a’,b); N(T) = N(T)  {b} 4.Return T and M

Expanding (a,b) An edge (a,b) admits an acyclic expansion w.r.t. a current tree T if there is a shortest path  =P G (a,b) s.t.  [a,x] is already in the current tree  [x,b] passes through no node of T (except x) Notation Let e’=(a’,b’)  E(M) Removing e’ splits M into two subtrees N(a’): the node set of the subtree containig a’ N(b’): remaining nodes C M (a’,b’): non-tree edges crossing the cut (N(a’),N(b’))

Expanding (a,b) 1. Let  =P G (a,b); 2. Let x be the first node of T encountered along  (traversing  from b to a) 3. Let (a’,b’) be any edge of the current M s.t.: a’,b’  N(T)  ’=P T (a’,b’) passes through x a  N(a’) 4. N(T)=N(T)  {b}; T=T   [x,b]; 5. if (a  a’) then M=M\{(a,b)}  {(a’,b)}

Correctness (sketch) T is acyclic At any time M is an MST of D we have to show that the expanding step is correct There are 2 cases: a=a’ a  a’

Case 1 (a’=a) a b c da c d b a’ b’ a’b’ x M T   =P G (a,b)  ’=P T (a,x)   [x,b] is an alternative shortest path from a to b we expands (a,b) with  ’ (acyclic expansion)

Case 2 (a’  a) a b c da c d b x  a’ b’ a’ b’ it must be d G (a,x)=d G (a’,x)  ’=P T (a’,x)   [x,b] is a shortest path from a’ to b …and we expands (a’,b) with  ’ (acyclic expansion) we swap (a,b) and (a’,b) in M…  w(a,b)=w(a’,b) T M

The algorithm g( ) is monotone Lemma proof It suffices to prove that any non-selected edge e it still non-selected when A e raises her bid Notice: e does not belong to any shortest path selected in M Thus, if A e raises her bid, the only edges in D which increase their weight are edges in E(D)\E(M) …M remains an MST of D… …the solution computed by g() is the same and e is not selected

How much can A e raise her bid before exiting from the computed solution? Computing the payments …we have to pay each selected edge e as its threshold value

a b b’’b’ a’a’’ e a’ a’’ a b’ b b’’ M T P G (a’,b’) P G (a’’,b’’) P G (a,b) w(a,b) w(a’,b’) w(a’’,b’’) A e raises her bid of  b e +be+be +be+be (a’,b’) becomes lighter than (a,b) Example 1

e a’ a’’ a a’ a’’ a b’ b b’’ b’ b b’’ M T w(a’,b’) w(a,b)+  b e w(a’’,b’’)+  b e g( ٠ ) selects (a’,b’) and e exits form the solution Example 1

a b b’’b’ a’a’’ e a’ a’’ a b’ b b’’ M T P G (a’,b’) P G (a’’,b’’) P G (a,b) w(a,b) w(a’,b’) w(a’’,b’’) A e raises her bid of  b e P G-e (a,b) becomes shorter than P G (a,b) Example 2 (a,b) is still a lightest edge crossing the cut d G-e (a,b) +be+be

a b b’’b’ a’a’’ e a’ a’’ a b’ b b’’ M T P G (a’,b’) P G (a’’,b’’) P G-e (a,b) d G-e (a,b) w(a’,b’) w(a’’,b’’) +be+be g( ٠ ) still selects (a,b) but e exits from the solution Example 2

…more formally… The threshold for e w.r.t. the edge (a,b)  Im(e) is defined as =b e + min {(d G-e (a,b) – d G (a,b)), (swap (a,b) (e) – d G (a,b))} swap (a,b) (e)= min {d G-e (a’,b’)} (a’,b’)  C M (a,b) ee (a,b) ee where The image of e on M Im(e)={(a,b)  E(M) | e  P T (a,b)}

Threshold of e  e = max { } i=1,..,h If Im(e)={(a 1,b 1 ), …, (a h,b h )} ee (a i,b i ) Easy to see:  e can be computed in polynomial time

The running time of the mechanism is O((n+k 2 )m log  (m,n). The space used is O(n 2 ). Theorem