Download - How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Transcript
Page 1: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

How to Rank with Fewer Errors

A PTAS for Minimum Feedback Arc Set in Tournaments

Claire Mathieu, Warren Warren SchudySchudy

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)

Page 2: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Feedback arc set in Feedback arc set in tournamentstournaments

•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

A

B

C DA B C D

1 upset

(Animating…)

Best … Worst

Page 3: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Algorithms for FAS-TAlgorithms for FAS-T

• Slater and Alway 1961– Heuristic algorithm

• Fernandez de la Vega ’96, Arora Frieze Kaplan ’96 and many others– small additive error

• Ailon Charikar Newman ‘05– Quicksort 3 approx– LP + quicksort 2.5 approx

• Coppersmith Fleischer Rudra ‘06– Sort by Wins 5-approx

• Our Main Result: a PTAS for FAS-T:

OPTCOST 1

OPTnCOST 2

OPTCOST 3

Page 4: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Aside: FAS in general Aside: FAS in general graphsgraphs

•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]

A B C D

Page 5: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

OutlineOutline

• Intro

•Algorithm

•Analysis

•Application (Kemeny Rank Aggregation)

Page 6: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Towards our algorithm (1/6)Towards our algorithm (1/6)• An easy instance: when there is an

ordering with zero upsets

B D A C

1 win

Algorithm 1: Sort by Wins5-approx [CFR]

A

B

C

D

3 wins

0 wins

2 wins

This means David beat

Charlie

23 1 0Wins:

Page 7: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Towards our algorithm (2/6)Towards our algorithm (2/6)

• A difficult instance for sort by wins

• Cost Θ(n²), so additive approx Θ(εn²) works!• Algorithm 2: return better of additive

approximation and sort by wins

Sort by Wins

A B C D2 2 2 2

E2

E D C B2 2 2 2

A2

OPT

Page 8: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Towards our algorithm (3/6)Towards our algorithm (3/6)

• A hard instance for Algorithm 2:

• Algorithm 3: Sort by wins. Recursively divide in two until Cost=Ω(n²), then run additive approximation

E F G HA B C D I J7 4 3 17 7 7 7 1 1AE D C B F G J I H

Sorted by wins:

Additive Approx

(Animating…)

Page 9: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Towards our algorithm (4/6)Towards our algorithm (4/6)

• Algorithm 4: like Algorithm 3 but divide into two parts of random sizes

E F G HA B C D I J5 4 3 28 8 7 6 1 1

Uh-oh, we just “committed” ourselves to paying 3 but

OPT=2

• A hard instance for algorithm 3:

Sorted by wins:

(Animating…)

Page 10: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Towards our algorithm (5/6)Towards our algorithm (5/6)

E F G HA B C D I J

OPTn 5/

K L M N OSorted by wins

Uh-oh, with constant probability we commit to paying Θ(n)

(Animating…)

Page 11: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

E F GA B C D I J

5/n

K L M N OHH

• Final ingredient: after sorting by wins do single vertex move local optimization

Towards our algorithm (6/6)Towards our algorithm (6/6)

(Animating…)

Page 12: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Our algorithmOur algorithmAlgorithm:• Sort by Wins• Single vertex moves• Result ordering: • ImproveRec(all)

ImproveRec(vertex set S):If (Cost(S, )≤Θ(ε²|S|²))

Choose k at random between 1 and |S|Recurse on the first k vertices of SRecurse on the other vertices

elseRun additive approx. Θ(ε³|S|²) on S

E F G HA B C D I J6 3 3 37 7 7 7 2 0AE D C B

Etc…

loc

loc

(Animating…)

Page 13: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

OutlineOutline

• Intro

•Algorithm

•Analysis

•Application (Kemeny Rank Aggregation)

Page 14: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Proof planProof plan• After first divide step “commit” to putting some

vertices before others. For talk, will show there is a good ordering “consistent” with the first divide step

• Therefore

verticesof pairsorder -second #)()( :1 Lemma * OCC good

2

)()(pairsorder -second # :2 Lemma

n

CCO

locloc E

)()(

)()(

)()(

*

2*

COCO

Cn

COCC

loc

locloc

good

E

good

Defined later Lemmas

Non-Stopping condition Constant-factor approx

Page 15: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Example 1Example 1

BB CC FF DD EE

loc :ImproveRec Input to

* :Optimal

AA BB CC

good

locA

locA AA ))(( *

kk

DD EE FF

BB CC FF DD AA EE

AA

BB CC DD AA EE FF

1 so

F, extrabut S.V.M. Same* CC good

For this section of talk, “align” permutations.

Ignore this detail.

otherwise)(

is if)()(

* u

splituuu

locgood

)( and )(between is if is where

*loc uuksplitu

It is cheaper to put A to the left of B,C,D than to

the right

(Animating…)

Page 16: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Example 2Example 2

loc

*

good

kk

AA BB CC DD EE

EE AA CC BB DD

AA BB CC DD EE

'good EE AA BB CC DD)'C()C( and

)C()'C( implies

of optimality Local

good*

goodgood

loc

Page 17: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Example 3Example 3

loc

*

good

kk

AA BB CC DD EE FF

BB EE CC AA DD FF

AA BB EE CC DD FF 1)C()C( implies of optimality Local

*good loc

Page 18: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Second order pairsSecond order pairs

Ex. 1

BB CC FF DD AA EE

AA BB CC DD EE FF

AA BB CC DD EE

EE AA CC BB DD

AA BB CC DD EE FF

BB EE CC AA DD FF

Ex. 2

Ex. 3

loc

*

loc*

loc

*

1 Recall * CC good

* Recall CC good

1 Recall * CC good

AFAF alternating, A split-> {A, F} 2nd order pair

EBBE not alternating-> {B, E} not 2nd order pair

AEAE alternating, A split-> {A, E} 2nd order pair

AA BB CC DD EE FF

BB EE CC AA DD FF

Ex. 3’ loc* * good

AEAE alternating, neither split-> {A, E} not 2nd order pair

Definition: {u,v} are second order pair if u and v are alternating and at least one of them is split

are the root of all evilare the root of all evil errorerror

Page 19: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Bound this

Bounding (1/2)Bounding (1/2)

TCC

πCπC

ππ ππππ

locE

locB

good

loclocE

loclocB

*good

locloc

*

C C

suggestswhich

notation Abusing

loc

*

good

AA BB CC DD EE

EE AA CC BB DD

AA BB CC DD EE

AA CC BB DD EElocB

EE AA BB CC DDlocE

0Csplit

Csplit Csplit :generalIn

loc

,

locloc

u vuv

locuuv

u vwwv

locuwv

u

locu

Cu

CuCuT

1

11

uvlocvuv

loc

vuuv

locuuv

locuv

*uv

good

*good*good

πCπCv

πCπCuπCπC

TπCπCπCπC

split

split

)optimality local(by

,

1

1

(Example 2 again))()( * CC good

Page 20: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

BB CC EE AA DD

BB AA EE CC DD

AA BB CC DD EE

AA CC BB DD EE

BB CC AA DD EE

uv

locvuv

loc

vuuv

locuuv

locuv

*uv

good

*good

πCπCvπCπCuπCπC

πCπC

split split

slide previous From

,

11

• If {u,v} second-order pair, bound by 3

• Otherwise, show zero by cases:– e.g. {E,D} (Neither split)

• Proof: by def’ns and

– e.g. {C,D} (u<u<v<v pattern)• Proof: edge {D,C} oriented same

way in all orderings so terms cancel

– e.g. {C,A} (u<v<v<u pattern)• Proof:

and

loc

*

EDED ,*

,good )C()C(

0split split DE 11

good

CACACACA ,locA,

loc,

*,

good )C()C()C()C(

locC

locA

AClocCAC

loc πCπC

Bounding (2/2)Bounding (2/2))()( * CC good

(Animating…)

Page 21: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

OutlineOutline

• Intro

•Algorithm

•Analysis–

•Application (Kemeny Rank Aggregation)

pairsorder -2 #)()( :1 Lemma nd* OCC good

2

)()(pairsorder -second # :2 Lemma

n

CCO

locloc E

Page 22: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Bounding (1/2)Bounding (1/2)

•Def’n: u

loc uuF *

loc AA BB CC DD EE

BB CC EE AA DD*

21113 F

galternatin : #split Prpairsorder second # u,vvuuE

n

uuu

loc |)()(|split Pr

*

paper) (see galternatin : # FOu,vv

n

FFOFO

n

uu

u

loc |)()(|pairsorder second #

*E

pairs s.o. #E

Page 23: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

•Claim: •Proof:

– [Diaconis and Graham ’77]:

– 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)

)(4)(2)(2 * locloc CCCF

} and in ordersdifferent in and :},{{2* locyxyxF

loc AA BB CC DD EE

BB CC EE AA DD*Bounding (2/2)Bounding (2/2) pairs s.o. #E

Page 24: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Reminder: overall proofReminder: overall proof

verticesof pairsorder -second #)()( :1 Lemma * CC good

2

)()(pairsorder -second # :2 Lemma

n

CCO

locloc E

)()(

)()(

)()(

*

2*

COCO

Cn

COCC

loc

locloc

good

E

Lemmas

Non-Stopping condition Constant-factor approx

Questions on proof?

Page 25: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

OutlineOutline

• Intro

•Algorithm

•Analysis

•Application (Kemeny Rank Aggregation)

Page 26: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

An application to votingAn application to voting• Kemeny Rank Aggregation:

(1959) – Voters submit rankings of candidates

– Translate rankings into tournaments

– Add those tournaments together

– Find feedback arc set of resulting weighted tourney

– Nice properties, e.g. ranks Condorcet winner first [Young & Levenglick ’78, Young ‘95]

• Our PTAS generalizes to this!

A>B>C

A

B

C

C>A>B

A

B

C

A>C>B

A

B

C

A

B

C2

1

2103

A BC2

1

2

10

3

Page 27: How to Rank with Fewer Errors A PTAS for Minimum Feedback Arc Set in Tournaments Warren Schudy Claire Mathieu, Warren Schudy Brown University Thanks to:

Open QuestionOpen Question•Real rankings often have ties,

e.g. restaurant guides with ratings 1-5

•Exists 1.5-approx [Ailon 07]; is there a PTAS?

A

BC

A: 5 C: 4B: 5 D: 3

D