Document Sample

How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Claire Mathieu, Warren Schudy Brown University Thanks to: Nir Ailon, Marek Karpinski, and Eli Upfal (for useful discussions) Cora Borradaile, Aparna Das, Micha Elsner, Dave McClosky, Fabio Vandin, and Matt Wronka (for useful comments on practice talks) Feedback arc set in tournaments A BC C D 1 upset Best …B Worst • FAS problem: minimize number of upsets • NP-hard [Ailon Charikar Newman ’05, Alon ’06, Charbit Thomassè Yeo ‘07] • Applications – Ranking by pairwise comparisons – Kemeny rank aggregation (Animating…) Algorithms for FAS-T • Slater and Alway 1961 – Heuristic algorithm • Fernandez de la Vega ’96, Arora Frieze Kaplan ’96 and many others – small additive error COST n 2 OPT • Ailon Charikar Newman ‘05 – Quicksort 3 approx COST 3 OPT – LP + quicksort 2.5 approx • Coppersmith Fleischer Rudra ‘06 – Sort by Wins 5-approx • Our Main Result: a PTAS for FAS-T: COST 1 OPT Aside: FAS in general graphs D A B C • Log n log log n approx [Seymour ‘95, Even, Noar, Rao, Schieber ‘95] • At least as hard as vertex cover, which cannot be approximated better than 1.36 [Karp ’72, Dinur ‘02] Outline • Intro • Algorithm • Analysis • Application (Kemeny Rank Aggregation) Towards our algorithm (1/6) • An easy instance: when there is an ordering with zero upsets This means David beat Charlie 1 win 0 wins A C B D B D A C 3 wins 2 wins Wins: 3 2 1 0 Algorithm 1: Sort by Wins 5-approx [CFR] Towards our algorithm (2/6) • A difficult instance for sort by wins A B C D E E D C B A 2 2 2 2 2 2 2 2 2 2 OPT Sort by Wins • Cost Θ(n²), so additive approx Θ(εn²) works! • Algorithm 2: return better of additive approximation and sort by wins Towards our algorithm (3/6) • A hard instance for Algorithm 2: E D C B A A B C D E F J G H I J H Sorted by wins: 7 7 7 7 7 4 3 1 1 1 Additive Approx • Algorithm 3: Sort by wins. Recursively divide in two until Cost=Ω(n²), then run additive approximation (Animating…) Towards our algorithm (4/6) • A hard instance for algorithm 3: Uh-oh, we just “committed” ourselves to paying 3 but OPT=2 Sorted by A B C D E F G H I J wins: 8 8 7 6 5 4 3 2 1 1 • Algorithm 4: like Algorithm 3 but divide into two parts of random sizes (Animating…) Towards our algorithm (5/6) Sorted by wins A B C D E F G H I J K L M N O Uh-oh, with constant probability we commit to paying Θ(n) n / 5 OPT (Animating…) Towards our algorithm (6/6) n/5 A B C D E F G H I J K L M N O • Final ingredient: after sorting by wins do single vertex move local optimization (Animating…) Our algorithm Algorithm: • Sort by Wins • Single vertex moves • Result ordering: loc • ImproveRec(all) E D C B A A B D E F G H I J 7 7 7 7 6 3 3 3 2 0 ImproveRec(vertex set S): If (Cost(S, loc )≤Θ(ε²|S|²)) Etc… Choose k at random between 1 and |S| Recurse on the first k vertices of S Recurse on the other vertices else Run additive approx. Θ(ε³|S|²) on S (Animating…) Outline • Intro • Algorithm • Analysis • Application (Kemeny Rank Aggregation) Proof plan • After first divide step “commit” to putting some vertices before others. For talk, will show there is a good ordering good “consistent” with the first divide step Lemma 1 : C ( good ) C ( * ) O# second - order pairs of vertices C ( loc ) Lemma 2 : E# second - order pairs O C ( loc ) n 2 Defined later Lemmas • Therefore C ( loc ) E C ( ) C ( ) O good * n 2 loc C ( ) O C ( loc ) O C ( * ) Non-Stopping condition Constant-factor approx Example 1 For this section of talk, “align” permutations. It is cheaper to put A to the left of B,C,D than to Ignore this detail. the right k A ( A * ( A)) A loc loc B C D A E F Input to ImproveRec : loc A B C D E F Optimal : * B C F D A E loc (u ) if u is split good (u ) * good A B C F D E (u ) otherwise whereu is split if k is between loc (u) and * (u) Same S.V.M. but extra F, so C good C * 1 (Animating…) Example 2 k loc A B C D E * E A C B D good Local optimality of loc A B C D E implies C( good ' ) C( good ) and C( * ) C( good ' ) good ' E A B C D Example 3 k loc A B C D E F * B E C A D F Local optimality of loc good implies C( good ) C( * ) 1 A B E C D F Second order pairs are the root of all evil error Definition: {u,v} are second order pair if u and v are alternating and at least one of them is split A B C D E F AFAF alternating, A split Ex. 1 loc -> {A, F} 2nd order pair * B C F D A E Recall C good C * 1 Ex. 2 loc A B C D E EBBE not alternating -> {B, E} not 2nd order pair * E A C B D Recall C good C * A B C D E F AEAE alternating, A split Ex. 3 loc -> {A, E} 2nd order pair * B E C A D F Recall C good C * 1 Ex. 3’ loc A B C D E F AEAE alternating, neither split -> {A, E} not 2nd order pair * B E C A D F good * (Example 2 again) Bounding C ( good ) C ( ) (1/2) * B loc A C B D E E E A B C D loc Abusing notation π good * π π π π loc B loc loc E π loc which suggests loc A B C D E C π good C π * * C C C C T loc loc loc loc E A C B D B E good A B C D E In general : T 1u split C loc C u 1u split C loc loc wv C u loc wv u u w,v 1u split C C 0 loc uv loc u uv u v C π good C π* C π good C π* T (by local optimality) C π C π 1u split C π good uv * uv loc uv C πu loc uv u ,v 1v split C π C π loc uv loc v uv Bound this Bounding C ( good ) C ( * ) (2/2) From previous slide C π good C π* C π u ,v good C π 1u split C π uv * uv loc uv 1v split C π C πu loc uv loc uv C πv loc uv good B A E C D • If {u,v} second-order pair, bound by 3 * B C E A D • Otherwise, show zero by cases: loc A B C D E – e.g. {E,D} (Neither split) • Proof: by def’ns C( good )D,E C( * )D,E C loc A C B D E and 1E split 1D split 0 – e.g. {C,D} (u<u<v<v pattern) A loc B C A D E • Proof: edge {D,C} oriented same way in all orderings so terms cancel – e.g. {C,A} (u<v<v<u pattern) • Proof: C( good ) A,C C( * ) A,C C( loc ) A,C C( A ) A,C loc and C π loc AC C πC AC loc (Animating…) Outline • Intro • Algorithm • Analysis – Lemma 1 : C ( good ) C ( * ) O# 2nd - order pairs C ( loc ) – Lemma 2 : E# second - order pairs O C ( ) loc n2 • Application (Kemeny Rank Aggregation) Bounding E# s.o. pairs (1/2) * B C E A D loc A B C D E • Def’n: F loc u * u u F 3 111 2 E# second order pairs Pr u split # v : u,v alternatin g u | loc (u ) * (u ) | Pr u split n # v : u,v alternatin g O F (see paper) E# secondorder pairs | loc (u ) * (u ) | n F F O F O n u Bounding E# s.o. pairs (2/2) * B C E A D loc A B C D E • Claim: F 2C ( loc ) 2C ( * ) 4C ( loc ) • Proof: – [Diaconis and Graham ’77]: F {{x, y} : x and y in different orders in loc and *} 2 – If the pair are in different orders, at least one of the orders has to pay for the pair (This is where the restriction to tournament graphs helps) Reminder: overall proof Lemma 1 : C ( good ) C ( * ) # second - order pairs of vertices C ( loc ) Lemma 2 : E# second - order pairs O C ( loc ) n 2 Lemmas C ( loc ) E C ( good ) C ( ) O * n 2 loc C ( ) O C ( loc ) O C ( * ) Non-Stopping condition Constant-factor approx Questions on proof? Outline • Intro • Algorithm • Analysis • Application (Kemeny Rank Aggregation) An application to voting • Kemeny Rank Aggregation: (1959) A>B>C C>A>B A>C>B – Voters submit rankings of candidates A C A C A C – Translate rankings into tournaments B B B 1 – Add those tournaments together A 2 C 0 1 3 2 B 0 – Find feedback arc set of resulting weighted tourney 1 1 B A C 2 2 3 – Nice properties, e.g. ranks Condorcet winner first [Young & Levenglick ’78, Young ‘95] • Our PTAS generalizes to this! Open Question • Real rankings often have ties, e.g. restaurant guides with ratings 1-5 A: 5 C: 4 B: 5 D: 3 • Exists 1.5-approx [Ailon 07]; is there a PTAS? A C D B

DOCUMENT INFO

Shared By:

Categories:

Tags:

Stats:

views: | 3 |

posted: | 3/2/2012 |

language: | English |

pages: | 27 |

OTHER DOCS BY wanghonghx

How are you planning on using Docstoc?
BUSINESS
PERSONAL

By registering with docstoc.com you agree to our
privacy policy and
terms of service, and to receive content and offer notifications.

Docstoc is the premier online destination to start and grow small businesses. It hosts the best quality and widest selection of professional documents (over 20 million) and resources including expert videos, articles and productivity tools to make every small business better.

Search or Browse for any specific document or resource you need for your business. Or explore our curated resources for Starting a Business, Growing a Business or for Professional Development.

Feel free to Contact Us with any questions you might have.