SLIDE 1 From Social Choice to Computational Social Choice
J´ erˆ
LAMSADE CNRS – Universit´ e Paris-Dauphine Hybris-8 Dresden, November 29, 2016
SLIDE 2 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 3 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 4 Social choice theory
◮ Social choice: designing and analysing methods for collective
decision making
◮ Some examples of social choice problems:
◮ elections ◮ deciding where and when to have dinner altogether tonight ◮ Doodle polls (find a date for a meeting) ◮ in a divorce settlement: deciding how to divide the bank
account, who will have the children’s custody, who keeps the stereo and who keeps the cat.
◮ in a high school: deciding who gets which class and who
teaches when
◮ in a jury: agreeing on a verdict.
SLIDE 5 Social choice theory
◮ Social choice: designing and analysing methods for collective
decision making
◮ Some examples of social choice problems:
◮ elections ◮ deciding where and when to have dinner altogether tonight ◮ Doodle polls (find a date for a meeting) ◮ in a divorce settlement: deciding how to divide the bank
account, who will have the children’s custody, who keeps the stereo and who keeps the cat.
◮ in a high school: deciding who gets which class and who
teaches when
◮ in a jury: agreeing on a verdict
aggregating preferences
SLIDE 6 Social choice theory
◮ Social choice: designing and analysing methods for collective
decision making
◮ Some examples of social choice problems:
◮ elections ◮ deciding where and when to have dinner altogether tonight ◮ Doodle polls (find a date for a meeting) ◮ in a divorce settlement: deciding how to divide the bank
account, who will have the children’s custody, who keeps the stereo and who keeps the cat.
◮ in a high school: deciding who gets which class and who
teaches when
◮ in a jury: agreeing on a verdict
aggregating preferences vs. aggregating opinions/beliefs
SLIDE 7 Social choice theory
◮ Social choice: designing and analysing methods for collective
decision making
◮ Some examples of social choice problems:
◮ elections ◮ deciding where and when to have dinner altogether tonight ◮ Doodle polls (find a date for a meeting) ◮ in a divorce settlement: deciding how to divide the bank
account, who will have the children’s custody, who keeps the stereo and who keeps the cat.
◮ in a high school: deciding who gets which class and who
teaches when
◮ in a jury: agreeing on a verdict
aggregating preferences vs. aggregating opinions/beliefs
◮ aggregate ranked lists of web pages given by different search
engines (?)
SLIDE 8 Social choice theory
◮ Formally:
- 1. a set of agents N = {1, ..., n};
- 2. a set of alternatives X = {x1, . . . , xm};
- 3. each agent i has some preferences on the alternatives
⇒ choosing a socially preferred alternative
◮ Some important subdomains of social choice:
◮ Voting: agents (voters) express their preferences on
alternatives (candidates) and must choose one collectively.
SLIDE 9 Social choice theory
◮ Formally:
- 1. a set of agents N = {1, ..., n};
- 2. a set of alternatives X = {x1, . . . , xm};
- 3. each agent i has some preferences on the alternatives
⇒ choosing a socially preferred alternative
◮ Some important subdomains of social choice:
◮ Voting: agents (voters) express their preferences on
alternatives (candidates) and must choose one collectively.
◮ Fair division: agents express their preferences over
combinations of resources they may receive and an allocation must be found.
SLIDE 10 Social choice theory
◮ Formally:
- 1. a set of agents N = {1, ..., n};
- 2. a set of alternatives X = {x1, . . . , xm};
- 3. each agent i has some preferences on the alternatives
⇒ choosing a socially preferred alternative
◮ Some important subdomains of social choice:
◮ Voting: agents (voters) express their preferences on
alternatives (candidates) and must choose one collectively.
◮ Fair division: agents express their preferences over
combinations of resources they may receive and an allocation must be found.
◮ Matching: match agents (possibly of several types) to each
- ther while taking their preferences into account.
More generally: group formation.
SLIDE 11 Social choice theory
◮ Formally:
- 1. a set of agents N = {1, ..., n};
- 2. a set of alternatives X = {x1, . . . , xm};
- 3. each agent i has some preferences on the alternatives
⇒ choosing a socially preferred alternative
◮ Some important subdomains of social choice:
◮ Voting: agents (voters) express their preferences on
alternatives (candidates) and must choose one collectively.
◮ Fair division: agents express their preferences over
combinations of resources they may receive and an allocation must be found.
◮ Matching: match agents (possibly of several types) to each
- ther while taking their preferences into account.
More generally: group formation.
◮ Judgment aggregation: agents express their opinion on the
truth of each of a number of propositions; one must come up with a consistent collective judgment.
SLIDE 12
Social choice theory
◮ each agent i has some preferences on the alternatives
Usual models for preferences:
◮ cardinal preferences: each agent has a utility function
u : X → I R
◮ ordinal preferences: each agent has a preference relation on
X (most common assumption in social choice)
◮ dichotomous preferences: each agent has a partition
{Good, Bad} of X
◮ more sophisticated models: semi-orders, interval orders, fuzzy
preferences, etc.
SLIDE 13 A very rough history of social choice
- 1. end of 18th century: early stage, with Condorcet and Borda
(two talks at the first Hybris workshop, in 1789)
- 2. 1951: birth of modern social choice
◮ results are mainly axiomatic (economics/mathematics) ◮ impossibility theorems: incompatibility of a small set of
seemingly innocuous conditions, such as Arrow’s theorem: With at least 3 alternatives, an aggregation function satisfies unanimity and independence of irrelevant alternatives if and only if it is a dictatorship.
◮ computational issues are neglected
- 3. early 90’s: computer scientists come into play
⇒ Computational social choice
SLIDE 14
What is computational social choice?
Tow research streams: from computer science to social choice Using computational notions and techniques (mainly from Artificial Intelligence, Operations Research, Theoretical Computer Science) for solving complex collective decision making problems. from social choice to computer science Using social choice concepts and procedures for solving questions arising in CS/AI application domains:
◮ managing societies of autonomous agents ◮ ranking systems for internet search engines ◮ group recommendation systems ◮ etc.
SLIDE 15 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 16 Aggregation functions, resolute and irresolute rules
- 1. a finite set of voters/agents A = {1, ..., n};
- 2. a finite set of candidates/alternatives X;
- 3. a profile = a preference relation (= linear order) on X for
each agent P = (V1, . . . , Vn) = (≻1, . . . , ≻n) Vi (or ≻i) = vote expressed by voter i.
- 4. Pn set of all profiles.
Resolute social choice rule (or: resolute voting rule) P → f (P) ∈ X: collectively preferred candidate Irresolute social choice rule (or: irresolute voting rule) P → F(P) ∈ 2X \ {∅}: set of collectively preferred candidates, or co-winners. Only one of them will be the final winner; the rule does not specify which one. Aggregation function P → H(P) = collective preference relation over X
SLIDE 17 Resolute vs. irresolute rules
Why do we need irresolute rules?
◮ m = 2 candidates a, b ◮ obvious choice = majority ◮ P consists of n = 2k votes: k : a ≻ b and k : b ≻ a (perfect
tie)
◮ with irresolute rules: not a problem
F(P) = {a, b}
◮ with resolute rules: we need a tie-breaking mechanism
◮ give up neutrality: use a predefined priority relation on
candidates (e.g. preference for status quo, for the oldest candidate etc.)
◮ give up anonymity: use a predefined strict relation on voters or
sets of voters (e.g. priority given to the chair’s vote)
Remark: unless for some specific cases of (m, n), no voting rule satisfies both neutrality and anonymity.
SLIDE 18
Resolute vs. irresolute rules
The usual way of defining voting rules:
◮ we first define an irresolute rule F ◮ a resolute rule is implicitly defined from F by using a
tie-breaking priority
◮ usual assumption: break neutrality ◮ F + tie-breaking priority > over X → F> voting rule ◮ F>(P) = max(>, F(P))
Example:
◮ P = a ≻ b, b ≻ a ◮ Maj irresolute rule: Maj(P) = {a, b} ◮ Maja>b and Majb>a resolute rules ◮ Maja>b(P) = a
In the rest of the talk, we usually define irresolute rules, and resolute rules are defined implicitly by a tie-breaking priority.
SLIDE 19 Majority
When there are only two candidates a and b, the only “reasonable” irresolute rule is majority: Maj(V1, . . . , Vn) = {a} if a strict majority of voters prefer a to b {b} if a strict majority of voters prefer b to a {a, b}
Exact characterization of majority in (May, 1952).
◮ Anonymity: voters should be treated symmetrically ◮ Neutrality: candidates should be treated symmetrically ◮ Positive Responsiveness: if a (sole or tied) winner receives
increased support, then she should become the sole winner. May’s Theorem (1952) An irresolute rule for two candidates satisfies anonymity, neutrality and positive responsiveness if and only if it is Maj.
SLIDE 20 FAQ
Q: Why don’t we allow voters to express indifferences? A: most voting rules can be easily and naturally generalised to profiles consisting of weak orders (instead of linear orders). We just don’t do that today because we don’t have enough time. Q: Why don’t we allow voters to express incomparabilities? A: this is less easy. Later in the talk we’ll talk about voting with profiles consisting of partial orders, even if our interpretation then won’t be that voters are indifferent but that we have an incomplete knowledge
Q: Wouldn’t be simpler to ask voters to give numbers? A: sometimes, yes; in most cases, no. Numbers raise the issue of interpersonal comparison (is my 7 really better than your 6?), and it is sometimes difficult for voters to report numbers. Back on this later.
SLIDE 21
Voting
◮ P = (V1, . . . , Vn) voting profile ◮ Vi = linear order over X = vote expressed by voter i.
Here is a 100-voter profile over X = {a, b, c, d, e} 33 votes: a ≻ b ≻ c ≻ d ≻ e 16 votes: b ≻ d ≻ c ≻ e ≻ a 3 votes: c ≻ d ≻ b ≻ a ≻ e 8 votes: c ≻ e ≻ b ≻ d ≻ a 18 votes: d ≻ e ≻ c ≻ b ≻ a 22 votes: e ≻ c ≻ b ≻ d ≻ a Who should be elected?
SLIDE 22
Voting with more than three candidates
Generalizing simple majority: pairwise majority given any two alternatives x, y ∈ X, use simple majority to determine whether the group prefers x to y or vice versa. Does this work? Sometimes yes: 33 votes: a ≻ b ≻ c ≻ d ≻ e 16 votes: b ≻ d ≻ c ≻ e ≻ a 3 votes: c ≻ d ≻ b ≻ a ≻ e 8 votes: c ≻ e ≻ b ≻ d ≻ a 18 votes: d ≻ e ≻ c ≻ b ≻ a 22 votes: e ≻ c ≻ b ≻ d ≻ a associated majority graph a b c d e
SLIDE 23
Voting with more than three candidates
Generalizing simple majority: pairwise majority given any two alternatives x, y ∈ X, use simple majority to determine whether the group prefers x to y or vice versa. Does this work? Sometimes yes: 33 votes: a ≻ b ≻ c ≻ d ≻ e 16 votes: b ≻ d ≻ c ≻ e ≻ a 3 votes: c ≻ d ≻ b ≻ a ≻ e 8 votes: c ≻ e ≻ b ≻ d ≻ a 18 votes: d ≻ e ≻ c ≻ b ≻ a 22 votes: e ≻ c ≻ b ≻ d ≻ a associated majority graph a b c d e Collective preference relation: c ≻ b ≻ d ≻ e ≻ a Winner: c
SLIDE 24
Voting with more than three candidates
Generalizing simple majority: pairwise majority given any two alternatives x, y ∈ X, use simple majority to determine whether the group prefers x to y or vice versa. Does this work? Sometimes no: 33 votes: a ≻ b ≻ d ≻ c ≻ e 16 votes: b ≻ d ≻ c ≻ e ≻ a 3 votes: c ≻ d ≻ b ≻ a ≻ e 8 votes: c ≻ e ≻ b ≻ d ≻ a 18 votes: d ≻ e ≻ c ≻ b ≻ a 22 votes: e ≻ c ≻ b ≻ d ≻ a associated majority graph a b c d e
SLIDE 25
Voting with more than three candidates
Generalizing simple majority: pairwise majority given any two alternatives x, y ∈ X, use simple majority to determine whether the group prefers x to y or vice versa. Does this work? Sometimes no: 33 votes: a ≻ b ≻ d ≻ c ≻ e 16 votes: b ≻ d ≻ c ≻ e ≻ a 3 votes: c ≻ d ≻ b ≻ a ≻ e 8 votes: c ≻ e ≻ b ≻ d ≻ a 18 votes: d ≻ e ≻ c ≻ b ≻ a 22 votes: e ≻ c ≻ b ≻ d ≻ a associated majority graph a b c d e Collective preference relation: {b ≻ d ≻ c ≻ b ≻ ...} ≻ e ≻ a; Winner: ?
SLIDE 26
Condorcet winner
◮ N(x, y) = #{i, x ≻i y} number of voters who prefer x to y. ◮ x Condorcet winner if for all y = x, N(x, y) > n 2
a b c d e c Condorcet winner a b c d e no Condorcet winner
◮ sometimes there is no Condorcet winner ◮ when there is a Condorcet winner, it is unique ◮ a rule is Condorcet-consistent if it outputs the Condorcet
winner whenever there is one.
SLIDE 27 Single-peakedness
◮ O : x1 > x2 > . . . > xn voter-independent axis on which
alternatives are located.
◮ left-right axis (election of the next French president)
M´ elenchon > Jadot > Hollande > Bayrou > Fillon > Le Pen
◮ numerical axis (number of breaks during the tutorial):
0 > 1 > 2 > 3
◮ peak(≻) preferred alternative according to ≻. ◮ ≻ is single-peaked with respect to O if for all x, y :
◮ if x < y < peak(≻) then y ≻ x ◮ if peak(≻) < x < y then x ≻ y
◮ ≻1, . . . , ≻n single-peaked with respect to O if every ≻i is.
◮ P = 1 ≻ 2 ≻ 0 ≻ 3,
2 ≻ 3 ≻ 0 ≻ 1, 0 ≻ 1 ≻ 2 ≻ 3
◮ Q = 1 ≻ 2 ≻ 0 ≻ 3,
2 ≻ 3 ≻ 1 ≻ 0, 0 ≻ 1 ≻ 2 ≻ 3
◮ Are P and Q single-peaked?
SLIDE 28 Single-peakedness
◮ Black’s theorem: if P is single-peaked then
◮ the pairwise majority relation associated with P is transitive ◮ if n is odd, then P has is a Condorcet winner, which is
the median of {peak(≻1), . . . , peak(≻n)}
◮ Example:
◮ Q = 1 ≻ 2 ≻ 0 ≻ 3,
2 ≻ 3 ≻ 1 ≻ 0, 0 ≻ 1 ≻ 2 ≻ 3
◮ collective preference: 1 ≻ 2 ≻ 0 ≻ 3 ◮ Condorcet winner: 1
◮ So far: everything is ok when
◮ we have only two alternatives ◮ (more generally) P is single-peaked
◮ What can we do when |X| ≥ 3 and P is not single-peaked?
SLIDE 29 Arrow’s theorem
What can we do when |X| ≥ 3 and P is not single-peaked? We would like to have a way of aggregating preferences (and/or to select a set of cowinners) satisfying some desirable conditions.
◮ Condition 1: unrestricted domain (UR)
F maps every collection of linear orders ≻1, . . . , ≻n into a collective linear order ≻c
◮ no domain restriction such as single-peakedness ◮ no ties, no incomparabilities, no randomization
◮ Condition 2: Pareto efficiency
for any x, y ∈ X, if for every i we have x ≻i y then x ≻c y
◮ also called unanimity: if everyone prefers x to y, so does the
group
SLIDE 30 Arrow’s theorem
◮ Condition 3: independence of irrelevant alternatives (IIA)
◮ Let P = ≻1, . . . , ≻n, Q = ≻′
1, . . . , ≻′ n, F(P) =
≻c, F(Q) = ≻′
- c. If for every i we have
x ≻i y if and only if x ≻′
i y
then x ≻c y if and only if x ≻′
c y
(The collective preference between two alternatives x and y depends only on the individual preferences between x and y.)
◮ Condition 4: nondictatorship
◮ It is not the case that there exists a voter i such that for every
profile P = ≻1, . . . , ≻n we have F(P) = ≻i.
Arrow’s theorem (1951) If |X| ≥ 3, there exists no aggregation function satisfying conditions 1, 2, 3 and 4.
SLIDE 31 Arrow’s theorem: reformulation for irresolute voting rules
An irresolute rule F is
◮ Pareto-efficient if for all P = ≻1, . . . , ≻n and x, y ∈ X:
if for every i we have x ≻i y then y / ∈ F(P) (no Pareto-dominated alternative should be a cowinner).
◮ independence of losing alternatives (ILA) if for all
P = ≻1, . . . , ≻n, P′ = ≻′
1, . . . , ≻′ n, and x, y ∈ X:
(a) for all i, x ≻i y ⇔ x ≻′
i y,
(b) x ∈ F(P) and (c) y / ∈ F(P) imply (d) y / ∈ F(P′).
(If x wins in P, y loses in P, and the relative order of x and y is the same in every vote of P and P′, then y must lose in P′.)
◮ nondictatorial if it is not the case that there exists a voter i
such that for every profile P, F(P) = {top(≻i)}. Arrow’s theorem, voting version (Taylor, 2005) If |X| ≥ 3, no irresolute voting rule satisfies Pareto-efficiency, ILA and nondictatorship.
SLIDE 32 Escaping Arrow’s theorem
◮ Relaxing nondictatorship is not considered an option ◮ Relaxing the unrestricted domain property
◮ (1) domain restriction such as single-peakedness ◮ (2) output a collective preference relation with cycles or
incomparabilities
◮ (3) different input (numerical or dichotomous preferences)
◮ Relaxing Pareto-efficiency
◮ Exercise: define a voting rule satisfying all properties except
Pareto.
◮ not really interesting.
◮ (4) Relaxing IIA
◮ lots of interesting voting rules satisfying all properties except
IIA.
◮ Exercise: define a few such voting rules.
SLIDE 33 Escaping Arrow’s theorem
◮ Relaxing nondictatorship is not considered an option ◮ Relaxing the unrestricted domain property
◮ (1) domain restriction such as single-peakedness ◮ (2) output a collective preference relation with cycles or
incomparabilities
◮ (3) different input (such as numerical preferences)
◮ Relaxing Pareto-efficiency
◮ Exercise: define a voting rule satisfying all properties except
Pareto.
◮ not really interesting.
◮ (4) Relaxing IIA
◮ lots of interesting voting rules satisfying all properties except
IIA.
◮ Exercise: define a few such voting rules.
SLIDE 34 Escaping Arrow’s theorem: dichotomous preferences Approval voting
◮ approval vote = a subset of (approved) candidates A ⊆ X ◮ approval profile = a collection of approval votes
P = A1, . . . , An
◮ Winner(s): candidate(s) approved most often.
◮ X = {a, b, c, d, e} ◮ n = 5 ◮ P = {a, c}, {b, c, d}, ∅, {a, b, c, d, e}, {d} ◮ c and d approved by 3 voters: a and b by 2 voters; e by 1. ◮ cowinners: {c, d}
◮ Arrow’s theorem does not apply.
SLIDE 35 Escaping Arrow’s theorem: numerical preferences
◮ profile: P = u1, . . . , un, ui : X → L utility function, L
linearly ordered scale.
◮ tripadvisor scale: L = {1, . . . , 5} ◮ EasyChair scale: L = {strong reject, weak reject, borderline,
weak accept, strong accept}
◮ ⋆ aggregation function on L ◮ winner(s): maximize ⋆(u1(x), . . . , un(x)) ◮ Arrow’s theorem does not apply.
SLIDE 36
Escaping Arrow’s theorem: numerical preferences Range voting
◮ voters evaluate alternatives using numbers (the higher, the
more preferred)
◮ the global score of an alternative is the sum of all scores ◮ the winner is the alternative with the highest global score ◮ candidates: X = {a, b, c} ◮ n = 3 voters ◮ voter 1: a → 90; b → 60; c → 30 ◮ voter 2: a → 60; b → 70; c → 40 ◮ voter 3: a → 0; b → 30; c → 100 ◮ global scores: a → 150; b → 160; c → 170 ◮ winner: d.
SLIDE 37
Escaping Arrow’s theorem: numerical preferences Range voting
◮ Similar to range voting, except that the sum of the scores
given by a voter must have a fixed value
Majority judgment (Balinski and Laraki, 2010)
◮ Similar to range voting, except that the global score is not the
sum of all scores but the median
SLIDE 38
Subsets, numbers, or rankings?
◮ dichotomous preferences:
+ simple – weak expressivity (cannot express intensities of preference)
◮ numerical preferences:
+ very expressive – interpersonal comparison of preference (does a 7 given by me mean the same thing as a 7 given by you?) – difficulty of elicitation
◮ ordinal preferences:
+ good expressivity trade-off – Arrow’s theorem. + can be escaped by relaxing ILA: define specific voting/aggregation rules and see how good they are.
SLIDE 39 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Other issues
SLIDE 40
Informational basis of voting rules and SWFs
◮ the informational basis of F is the minimal necessary
information I(P) from the profile P to determine F(P)
◮
? : I(P) = ∅ for all P
SLIDE 41
Informational basis of voting rules and SWFs
◮ the informational basis of F is the minimal necessary
information I(P) from the profile P to determine F(P)
◮ constant rules: I(P) = ∅ for all P ◮
? : I(P) = Vj for some j.
SLIDE 42
Informational basis of voting rules and SWFs
◮ the informational basis of F is the minimal necessary
information I(P) from the profile P to determine F(P)
◮ constant rules: I(P) = ∅ for all P ◮ dictatorial rules, among others: I(P) = Vj for some j.
SLIDE 43 Informational basis of voting rules and SWFs
◮ the informational basis of F is the minimal necessary
information I(P) from the profile P to determine F(P)
◮ constant rules: I(P) = ∅ for all P ◮ dictatorial rules, among others: I(P) = Vj for some j. ◮ rank-based rules:
◮ I(P): for each i and x, N(x, P, i) number of votes Vi that
rank x in position i
◮ positional scoring rules (such as Borda) and a few others
◮ rules based on the majority graph:
◮ I(P) = MP = directed graph containing x → y if and only if a
majority of votes in P prefers x to y
◮ (Condorcet winner), Copeland, Slater, top cycle, etc.
◮ rules based on the weighted majority graph:
◮ I(P) = WP
x, y → WP(x, y) = numbers of votes in P that prefer x to y
◮ maximin, Kemeny, Borda, etc.
◮ other rules.
SLIDE 44 Informational basis, 1: rank-based rules
Positional scoring rules
◮ m candidates ◮ fixed list of m integers s1 ≥ . . . ≥ sm, with s1 > sm ◮ if voter i ranks candidate x in position j then scorei(x) = sj ◮ winner(s): candidate(s) maximizing
s(x) =
n
scorei(x) Three important examples: plurality s1 = 1, s2 = . . . = sm = 0. (Informational basis: N(x, P, 1) for all x.) antiplurality (or veto) s1 = s2 = . . . = sm−1 = 1, sm = 0 (more generally) k-approval s1 = . . . = sk = 1, sk+1 = . . . = sm = 0. 1-approval = plurality; (m − 1)-approval = veto Borda s1 = m − 1, s2 = m − 2, . . . sm = 0
SLIDE 45
Informational basis, 1: rank-based rules
Positional scoring rules 33 a ≻ b ≻ c ≻ d ≻ e 16 b ≻ d ≻ c ≻ e ≻ a 3 c ≻ d ≻ b ≻ a ≻ e 8 c ≻ e ≻ b ≻ d ≻ a 18 d ≻ e ≻ c ≻ b ≻ a 22 e ≻ c ≻ b ≻ d ≻ a
◮ plurality: a → 33, b → 16, c → 11, d → 18, e → 22
winner: a
◮ Borda:
a → (33 × 4) + (3 × 1) = 135 b → 247; c → 244; d → 192; e → 182
winner: b
◮ antiplurality: a → 36, b → 100, c → 100, d → 100, e → 64
cowinners: b, c, d
◮ 3-approval: a → 33, b → 82, c → 100, d → 37, e → 48
winner: c
SLIDE 46
Informational basis, 1: rank-based rules
Bucklin
◮ Sk(P, x) = number of voters who rank x in the first k
positions
◮ k∗ = min{k, there exists a x such that Sk(P, x) > n 2} ◮ Bucklin winner(s) = k∗-approval winner(s)
33 a ≻ b ≻ c ≻ d ≻ e 16 b ≻ d ≻ c ≻ e ≻ a 3 c ≻ d ≻ b ≻ a ≻ e 8 c ≻ e ≻ b ≻ d ≻ a 18 d ≻ e ≻ c ≻ b ≻ a 22 e ≻ c ≻ b ≻ d ≻ a
◮ k∗ = 3 ◮ Bucklin winner: c
SLIDE 47
Informational basis, 2: majority graph
pairwise majority given any two alternatives x, y ∈ X, x is majority-preferred to y if a majority of votes in P prefers x to y: x ≻maj
P
y MP = {x → y|x ≻maj
P
y}
◮ x Condorcet winner if MP contains x → y for all y = x.
a b c d e c Condorcet winner a b c d e no Condorcet winner
◮ sometimes there is no Condorcet winner ◮ when there is a Condorcet winner, it is unique ◮ a rule is Condorcet-consistent if it outputs the Condorcet
SLIDE 48
Informational basis, 2: majority graph
◮ MP majority graph associated with P ◮ A voting rule F is based on the majority graph if
F(P) = f (MP) for some function f .
◮ For the sake of simplicity, we assume an odd number of
voters; in this case the majority graph is a complete asymmetric graph: a tournament. Copeland
◮ C(x) = number of candidates y such that MP contains
x − → y.
◮ Copeland winner(s): maximize(s) C.
a b c d e C(a) = 0 C(b) = 3 C(c) = 3 C(d) = 3 C(e) = 1 b ∼ c ∼ d ≻ e ≻ a
SLIDE 49
Informational basis, 2: majority graph
◮ MP majority graph associated with P ◮ A voting rule F is based on the majority graph if
F(P) = f (MP) for some function f .
◮ For the sake of simplicity, we assume an odd number of
voters; in this case the majority graph is a complete asymmetric graph: a tournament. Slater
◮ distance between two rankings = number of disagreeing pairs ◮ Slater ranking for P = ranking minimising distance to MP ◮ Slater winner: best candidate in some Slater ranking
a b c d e c winner (plus two others)
SLIDE 50
Informational basis, 3: weighted majority graph
◮ P profile ◮ WP(x, y) = #{i, x ≻i y} − #{i, y ≻i x} number of voters
who prefer x to y minus number of voters who prefer x to y (pairwise majority matrix / weighted majority graph)
◮ A voting rule F is based on the weighted majority graph if
F(P) = g(WP) for some function g.
SLIDE 51
Informational basis, 3: weighted majority graph
◮ P profile ◮ WP(x, y) = #{i, x ≻i y} − #{i, y ≻i x} number of voters
who prefer x to y minus number of voters who prefer x to y (pairwise majority matrix / weighted majority graph)
◮ A voting rule F is based on the weighted majority graph if
F(P) = g(WP) for some function g. Maximin
◮ maximize Sm(x) = miny=x WP(x, y)
WP a b c d e Sm(.) a −34 −34 −34 −30 −34 b +34 −2 +58 +4 −2 c +34 +2 −34 +20 −34 d +34 −58 +34 +40 −58 e +30 −4 −20 −40 −40 Winner: b
SLIDE 52 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 53 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of NP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 54 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 55 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 56 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 57 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 58 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 59 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 60 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 61 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 62 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 63 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e
SLIDE 64 Informational basis, 3: weighted majority graph
Ranked Pairs
- 1. G := graph with X as vertices and no edge.
- 2. order the pairs (x, y) by non-increasing order of WP(x, y),
using some tie-breaking priority when necessary
- 3. take the first pair (x, y) in the list
- 4. if adding x −
→ y to G does not produce any cycle then add it to G
- 5. remove (x, y) from the list
- 6. iterate until the graph is complete
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 a b c d e winner: b
SLIDE 65
Informational basis, 3: weighted majority graph
Kemeny
◮ for two rankings R, R′; dK(R, R′) = number of (x, y) on
which R and R′ disagree
◮ dK(R, V1, . . . , Vn) = i=1,...,n dK(R, Vi) ◮ Kemeny consensus = ranking R∗ minimizing
dK(R∗, V1, . . . , Vn)
◮ Kemeny winner = candidate ranked first in a Kemeny
consensus
SLIDE 66
Informational basis, 3: weighted majority graph
Kemeny Equivalent definition:
◮ for any ranking R define K(R) = (x,y)∈R WP(x, y) ◮ x ≻ y in R corresponds to WP(x, y) “agreements minus
disagreements”
◮ R∗ is a Kemeny consensus iff K(R∗) is maximum.
WP a b c d e a −34 −34 −34 −30 b +34 −2 +58 +4 c +34 +2 −34 +20 d +34 −58 +34 +40 e +30 −4 −20 −40 K(b ≻ d ≻ c ≻ e ≻ a) = 286 (maximum value) Kemeny winner: b
SLIDE 67
Informational basis, 3: weighted majority graph
Borda, again
◮ maximize Sb(x) = y=x WP(x, y)
WP a b c d e Sb(.) a −34 −34 −34 −30 −132 b +34 −2 +58 +4 +94 c +34 +2 −34 +20 +22 d +34 −58 +34 +40 +50 e +30 −4 −20 −40 −34
SLIDE 68
Informational basis, 4: Other
Plurality with runoff
◮ let x, y the two candidates with the highest plurality score
(use tie-breaking rule if necessary)
◮ winner: majority winner between x and y ◮ informational basis: MV + {N(x, V , 1)|x ∈ A}
SLIDE 69
Informational basis, 4: Other
Single transferable vote (STV) Repeat x := candidate ranked first by the fewest voters; eliminate x from all ballots {votes for x transferred to the next best remaining candidate} Until there remains a single candidate;
◮ when there are only 3 candidates, STV coincides with plurality
with runoff.
SLIDE 70
Informational basis, 4: Other
Single transferable vote (STV) 33 a ≻b ≻c ≻d ≻e 16 b ≻d ≻c ≻e ≻a 3 c ≻d ≻b ≻a ≻e 8 c ≻e ≻b ≻d ≻a 18 d ≻e ≻c ≻b ≻a 22 e ≻c ≻b ≻d ≻a 33 a ≻b ≻d ≻e 16 b ≻d ≻e ≻a 3 d ≻b ≻a ≻e 8 e ≻b ≻d ≻a 18 d ≻e ≻b ≻a 22 e ≻b ≻d ≻a 33 a ≻d ≻e 16 d ≻e ≻a 3 d ≻a ≻e 8 e ≻d ≻a 18 d ≻e ≻a 22 e ≻d ≻a 33 a ≻d 16 d ≻a 3 d ≻a 8 d ≻a 18 d ≻a 22 d ≻a d ≻ a ≻ e ≻ b ≻ c
SLIDE 71
Informational basis, 4: Other
Dodgson
◮ elementary change: swap of two adjacent candidates in a
voter’s ranking
◮ Dodgson score of a candidate x: minimal number of
elementary changes needed to make x the Condorcet winner
◮ Dodgson winner(s): the candidate(s) with the smallest
Dodgson score
◮ variant for social welfare functions
Dodgson score of a ranking R: minimal number of elementary changes needed to obtain R as majority graph
◮ Informational basis; quite complicated.
SLIDE 72 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Other issues
SLIDE 73
Voting rules: some important properties
◮ Anonymity: all voters treated equally
Formally: the winner does not change if we apply a permutation of the voters.
SLIDE 74
Voting rules: some important properties
◮ Anonymity ◮ Neutrality: all candidates treated equally .
Formally: if the winner is x and we apply a permutation σ of the candidates’ names then the resulting winner will be σ(x).
SLIDE 75
Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency: the Condorcet winner is elected
whenever there is one.
SLIDE 76 Properties of voting rules: Condorcet-consistency
◮ Copeland, Slater, maximin, ranked pairs, Kemeny, Dodgson:
all Condorcet-consistent
◮ No positional scoring rule is Condorcet-consistent (Fishburn,
73) 6 a ≻ b ≻ c 3 c ≻ a ≻ b 4 b ≻ a ≻ c 4 b ≻ c ≻ a Without loss of generality, let s3 = 0.
◮ S(a) = 6s1 + 7s2 ◮ S(b) = 8s1 + 6s2 ◮ S(b) − S(a) = 2s1 − s2 = s1 + (s1 − s2) > 0 ◮ S(b) > S(a) whatever the value of s1 and s2 ◮ but a is a Condorcet winner!
◮ Plurality with runoff and STV are not Condorcet-consistent
(prove it!)
SLIDE 77
Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency ◮ Pareto-efficiency: if every voter prefers x to y then y cannot
be a winner.
SLIDE 78 Properties of voting rules: Pareto-efficiency
◮ a positional scoring rule is Pareto-efficient if its scoring vector
does not have two identical non-null values
◮ plurality, Borda: yes ◮ k-approval for k > 2, and in particular veto: no
◮ Copeland, Slater, maximin, ranked pairs, Kemeny, Dodgson:
yes
SLIDE 79 Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency ◮ Pareto-efficiency ◮ Monotonicity: if the winner for profile P is x and P′ is
- btained from P by raising x in a vote without changing
anything else, then the winner for P′ is still x.
SLIDE 80 Properties of voting rules: monotonicity
◮ positional scoring rules: yes ◮ Copeland, Slater, maximin, Kemeny, ranked pairs, Dodgson:
yes
◮ plurality with runoff and STV: no!
8 a ≻ b ≻ c 7 b ≻ c ≻ a 6 c ≻ a ≻ b
◮ finalists a, b; ◮ winner a ◮ two voters change their vote from b ≻ c ≻ a to a ≻ b ≻ c
10 a ≻ b ≻ c 5 b ≻ c ≻ a 6 c ≻ a ≻ b
◮ finalists a, c ◮ winner c
SLIDE 81
Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency ◮ Pareto-efficiency ◮ Monotonicity ◮ Participation if the winner for profile P is x and
P′ = P ∪ {≻n+1}, then the winner for P′ is either x, or a candidate y such that y ≻n+1 x.
SLIDE 82
Properties of voting rules: participation
◮ positional scoring rules: yes ◮ for m ≥ 4, no Condorcet-consistent rule satisfies participation
(Moulin, 86) Proof for maximin: 3 a ≻ d ≻ c ≻ b 3 a ≻ d ≻ b ≻ c 5 d ≻ c ≻ b ≻ a 4 b ≻ c ≻ a ≻ d Sm(a) = WP(a, c) = −3; b, d : −5; c : −7; maximin winner: a 3 a ≻ d ≻ c ≻ b 3 a ≻ d ≻ b ≻ c 5 d ≻ c ≻ b ≻ a 4 b ≻ c ≻ a ≻ d 4 c ≻ a ≻ b ≻ d Sm(a) = −7; Sm(b) = −5; etc. maximin winner: b The four new voters had rather stayed home! Also called no-show paradox
◮ STV, plurality with runoff: no
SLIDE 83
Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency ◮ Pareto-efficiency ◮ Monotonicity ◮ Participation ◮ Reinforcement (or consistency): if P and Q are two profiles
(on disjoint electorates) and x is the winner for P and the winner for Q, then it is also the winner for P ∪ Q.
SLIDE 84
Properties of voting rules: reinforcement
◮ positional scoring rules: yes ◮ if m ≥ 3 then no Condorcet-consistent rule satisfies
reinforcement (Young, 75)
◮ STV, plurality with runoff: no
SLIDE 85
Properties of voting rules: reinforcement
Reinforcement is in fact a key property of positional scoring rules. Continuity if electorate N1 elects x and electorate N2 does not, adding sufficiently many replicates of N1 to N2 leads to elect x Axiomatic characterisation of positional scoring rules (Young, 75): an irresolute voting rule is a positional scoring rule if and only if it satisfies anonymity, neutrality, reinforcement, and continuity.
SLIDE 86
Voting rules: some important properties
◮ Anonymity ◮ Neutrality ◮ Condorcet-consistency ◮ Pareto-efficiency ◮ Monotonicity ◮ Participation ◮ Reinforcement (or consistency) ◮ Clone-proofness: assume a candidate x is “cloned” into
several candidates (ranked contiguously in every vote). If the winner was not x then the new winner remains the same; if it was x then it is now one of the clones of x.
SLIDE 87
Properties of voting rules: clone-proofness
◮ most rules (including all positional scoring rules) are not
clone-proof
◮ but ranked pairs is clone-proof
SLIDE 88 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 89
Computing voting rules: easy rules
What is the complexity of winner determination for the voting rules we have seen so far?
◮ scoring rules, plurality with runoff, approval: O(nm) ◮ Copeland, maximin, STV(∗), ranked pairs∗, O(nm2).
But some voting rules are NP-hard...
SLIDE 90 Computing: parallel universes
(*) How do we handle ties in STV and ranked pairs? STVT ties are broken immediately using a tie-breaking priority T: polynomial STVPU exploring all possibilities and possible use tie-breaking at the very last moment: NP-complete 4 a ≻ d ≻ b ≻ c 3 b ≻ c ≻ d ≻ a 2 c ≻ d ≻ a ≻ b 2 d ≻ b ≻ c ≻ a Tie-breaking : a > b > d > c
◮ break ties immediately: c
eliminated, then b, winner: d
◮ parallel universes:
◮ branch 1 (above): winner: d ◮ branch 2: d eliminated, then
c, winner: a
◮ cowinners {a, d}, winner: a.
◮ Conitzer, Rognlie and Xia (09): winner determination for
STVPU is NP-complete.
◮ Brill and Fischer (12): winner determination for parallel
universe ranked pairs is NP-complete.
SLIDE 91
Computing voting rules: Kemeny
Recall: Kemeny is based on the weighted majority graph. 4 a ≻ b ≻ c 3 b ≻ c ≻ a 2 c ≻ a ≻ b N a b c a − 6 4 b 3 − 7 c 5 2 − Computing d(a ≻ b ≻ c, ≻1, . . . , ≻9):
◮ 3 voters disagree with a ≻ b ◮ 5 voters disagree with a ≻ c ◮ 2 voters disagree with b ≻ c ◮ hence
d(a ≻ b ≻ c, ≻1, . . . , ≻9) = 10. Kemeny scores: abc acb bac bca cab cba 10 15 13 12 14 17 Kemeny consensus: abc; Kemeny winner: a
SLIDE 92
Computing voting rules: Kemeny
◮ NP-hard (Bartholdi et al., 89; Hudry, 89) ◮ exact complexity: deciding whether a candidate is a Kemeny
winner is ΘP
2 -complete (Hemaspaandra et al., 04) ◮ a 4/3-approximation algorithm based on linear programming
(Ailon et al., 08)
◮ good heuristics
SLIDE 93 Computing voting rules
Dodgson:
◮ deciding whether x is a Dodgson winner is ΘP 2 -complete
(Hemaspaandra, Hemaspaandra & Rothe, 97)
◮ Caragiannis, Kaklamanis, Karanikolas & Procaccia (10):
socially desirable approximations of Dodgson.
◮ Example: monotonic approximations = voting rules:
◮ satisfying monotonicity ◮ close enough to Dodgson ◮ computable in polynomial time ◮ the approximation of a voting rule is a new voting rule that
may be interesting per se!
Slater:
◮ straightforward reduction from feedback arc set ◮ Slater’s rule is NP-hard (but maybe not in NP), even under
the restriction that pairwise ties cannot occur
SLIDE 94
Computing voting rules: Banks
◮ MP majority graph induced by P: ◮ maximal subtournament of MP: maximal subset of X such
that the restriction of MP to X is transitive.
◮ x is a Banks winner if x is undominated in some maximal
subtournament of MP.
◮ deciding whether x is a Banks winner is NP-complete
(Woeginger, 2003)
◮ however, it is possible to find an arbitrary Banks winner in
polynomial time (Hudry, 2004) A := {x} where x is an arbitrary candidate; repeat find y such that the restriction of MP to A ∪ {y} is cycle-free; add y to A until it is no longer possible to do so; return the maximal element in A
SLIDE 95
Computing voting rules
Discussion
◮ winner determination is in P: easy to compute
positional scoring rules, Bucklin, Copeland, maximin, plurality with runoff, STVT, ranked pairsT, and others
◮ winner determination is NP-complete: not easy to compute
but easy to verify a solution using a succinct certificate
not so many: Banks, STVPU, ranked pairsPU
◮ winner determination is beyond NP: not even easy to verify.
Kemeny, Young, Dodgson (and probably Slater), and others
SLIDE 96 Is there a life after NP-hardness?
◮ efficient computation: design algorithms that do as well as
possible, possibly using heuristics, or translations into well-known frameworks (such as integer linear programming).
◮ fixed-parameter complexity: isolate the components of the
problem and find the main cause(s) of hardness
◮ approximation: design algorithms that produce a (generally
suboptimal) result, with some performance guarantee.
◮ The approximation of a voting rule is a new voting rule that
may be interesting per se.
SLIDE 97 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 98
Voting in combinatorial domains
Key question: structure of the set X of candidates. Example 1 choosing a common menu: X = {asparagus risotto, foie gras} × {roasted chicken, vegetable curry} × {white wine, red wine} Example 2 multiple referendum: a local community has to decide on several interrelated issues (should we build a swimming pool or not? should we build a tennis court or not?) Example 3 recruiting committee (3 positions, 6 candidates): X = {A | A ⊆ {a, b, c, d, e, f }, |A| ≤ 3}. Combinatorial domains:
◮ P = {X1, . . . , Xp} set of variables, or issues; ◮ X = D1 × ... × Dp ◮ for each i, Di is a finite value domain for variable Xi
SLIDE 99 Voting in combinatorial domains
◮ Two binary variables:
◮ S (build a new swimming pool or npt) ◮ T (build a new tennis court or not)
◮ 5 voters with their preferences:
voters 1 and 2 ST ≻ ST ≻ ST ≻ ST voters 3 and 4 ST ≻ ST ≻ ST ≻ ST voter 5 ST ≻ ST ≻ ST ≻ ST
SLIDE 100 Voting in combinatorial domains
◮ Two binary variables:
◮ S (build a new swimming pool or npt) ◮ T (build a new tennis court or not)
◮ 5 voters with their preferences:
voters 1 and 2 ST ≻ ST ≻ ST ≻ ST voters 3 and 4 ST ≻ ST ≻ ST ≻ ST voter 5 ST ≻ ST ≻ ST ≻ ST
◮ Problem 1: voters 1-4 feel ill at ease reporting a preference on
{S, S} and {T, T}
SLIDE 101 Voting in combinatorial domains
◮ Two binary variables:
◮ S (build a new swimming pool or npt) ◮ T (build a new tennis court or not)
◮ 5 voters with their preferences:
voters 1 and 2 ST ≻ ST ≻ ST ≻ ST voters 3 and 4 ST ≻ ST ≻ ST ≻ ST voter 5 ST ≻ ST ≻ ST ≻ ST
◮ Problem 1: voters 1-4 feel ill at ease reporting a preference on
{S, S} and {T, T}
◮ Problem 2: suppose they do so by an “optimistic” projection
◮ voters 1, 2 and 5: S; voters 3 and 4: S ⇒ decision = S; ◮ voters 3,4 and 5: T; voters 1 and 2: T ⇒ decision = T.
Alternative ST is chosen although it is the worst alternative for all but one voter!
◮ Several classes of methods for solving this problem.
SLIDE 102
Voting in combinatorial domains
How should such a vote be conducted? Problem: preferential dependencies between variables (“I want to build the swimming pool only if the tennis court is not built”) make it impossible to decompose in to a vote on every variable.
SLIDE 103 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
SLIDE 104 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
- 2. ask voters to report only a small part of their preference
relation and appply a voting rule that needs this information
- nly, such as plurality: (often) catastrophical results
SLIDE 105 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
- 2. ask voters to report only a small part of their preference
relation and appply a voting rule that needs this information
- nly, such as plurality: (often) catastrophical results
- 3. ask voters their preferred alternative(s) and complete them
automatically using a predefined distance: domain restriction + computational complexity.
SLIDE 106 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
- 2. ask voters to report only a small part of their preference
relation and appply a voting rule that needs this information
- nly, such as plurality: (often) catastrophical results
- 3. ask voters their preferred alternative(s) and complete them
automatically using a predefined distance: domain restriction + computational complexity.
- 4. sequential voting: decide on variables one after the other;
broadcast the outcome for a variable before eliciting the votes
- n the next one: domain restriction or not so good results.
SLIDE 107 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
- 2. ask voters to report only a small part of their preference
relation and appply a voting rule that needs this information
- nly, such as plurality: (often) catastrophical results
- 3. ask voters their preferred alternative(s) and complete them
automatically using a predefined distance: domain restriction + computational complexity.
- 4. sequential voting: decide on variables one after the other;
broadcast the outcome for a variable before eliciting the votes
- n the next one: domain restriction or not so good results.
- 5. use a compact preference representation language in which
the preferences are represented in a concise way: high elicitation + computational cost.
SLIDE 108 Voting in combinatorial domains: possible solutions
- 1. ask voters to specify their preference relation by ranking all
alternatives explicitly: inacceptable elicitation burden if more than 3 or 4 variables variables.
- 2. ask voters to report only a small part of their preference
relation and appply a voting rule that needs this information
- nly, such as plurality: (often) catastrophical results
- 3. ask voters their preferred alternative(s) and complete them
automatically using a predefined distance: domain restriction + computational complexity.
- 4. sequential voting: decide on variables one after the other;
broadcast the outcome for a variable before eliciting the votes
- n the next one: domain restriction or not so good results.
- 5. use a compact preference representation language in which
the preferences are represented in a concise way: high elicitation + computational cost. Conclusion: if we want to avoid bad results, impose a domain restriction and/or pay a high communication + computation cost.
SLIDE 109 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 110
Manipulation and strategyproofness
◮ Manipulation: a coalition of voters report insincere preferences
so as to elect a better candidate.
◮ Example: F = plurality with runoff
2 + 6 a ≻ b ≻ c 4 c ≻ b ≻ a 5 b ≻ a ≻ c 1st round: c eliminated 2nd round: b elected
SLIDE 111
Manipulation and strategyproofness
◮ Manipulation: a coalition of voters report insincere preferences
so as to elect a better candidate.
◮ Example: F = plurality with runoff
2 + 6 a ≻ b ≻ c 4 c ≻ b ≻ a 5 b ≻ a ≻ c 1st round: c eliminated 2nd round: b elected 2 c ≻ a ≻ b 6 a ≻ b ≻ c 4 c ≻ b ≻ a 5 b ≻ a ≻ c 1st round: b eliminated 2nd round: a elected
◮ Is this a specific flaw of plurality with runoff?
SLIDE 112
Manipulation and strategyproofness
◮ Manipulation: a coalition of voters report insincere preferences
so as to elect a better candidate.
◮ Example: F = plurality with runoff
2 + 6 a ≻ b ≻ c 4 c ≻ b ≻ a 5 b ≻ a ≻ c 1st round: c eliminated 2nd round: b elected 2 c ≻ a ≻ b 6 a ≻ b ≻ c 4 c ≻ b ≻ a 5 b ≻ a ≻ c 1st round: b eliminated 2nd round: a elected
◮ Is this a specific flaw of plurality with runoff? ◮ Unfortunately no...
Gibbard and Satterthwaite’s theorem (73/75) If |X| ≥ 3, any nondictatorial, surjective voting rule is manipulable for some profiles.
SLIDE 113 Escaping Gibbard and Satterthwaite
One solution for nearly escaping Gibbard and Satterthwaite: Computational barrier
◮ make manipulation hard to compute. ◮ the harder it is to find a manipulation, the
better the voting rule
◮ (similar approach in cryptography)
Given a voting rule r: Input vote r, a set of m candidates X, a candidate x ∈ X, votes of voters 1, . . . , k < n Question is it possible for voters k + 1, . . . , n to cast their votes so that the winner is x? First papers on the topic: Bartholdi, Tovey & Trick (89); and lots
SLIDE 114 Complexity of manipulation
◮ Manipulating the Borda rule by a single voter
◮ 4 voters:
a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d d ≻ c ≻ b ≻ a ≻ e
◮ Current Borda scores
a → 10 b → 10 c → 8 d → 7 e → 5
Can the last voter find a vote so that the winner is ... a?
SLIDE 115 Complexity of manipulation
◮ Manipulating the Borda rule by a single voter
◮ 4 voters:
a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d d ≻ c ≻ b ≻ a ≻ e
◮ Current Borda scores
a → 10 b → 10 c → 8 d → 7 e → 5
Can the last voter find a vote so that the winner is ... a? b?
SLIDE 116 Complexity of manipulation
◮ Manipulating the Borda rule by a single voter
◮ 4 voters:
a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d d ≻ c ≻ b ≻ a ≻ e
◮ Current Borda scores
a → 10 b → 10 c → 8 d → 7 e → 5
Can the last voter find a vote so that the winner is ... a? b? c?
SLIDE 117 Complexity of manipulation
◮ Manipulating the Borda rule by a single voter
◮ 4 voters:
a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d d ≻ c ≻ b ≻ a ≻ e
◮ Current Borda scores
a → 10 b → 10 c → 8 d → 7 e → 5
Can the last voter find a vote so that the winner is ... a? b? c? d?
SLIDE 118 Complexity of manipulation
◮ Manipulating the Borda rule by a single voter
◮ 4 voters:
a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d d ≻ c ≻ b ≻ a ≻ e
◮ Current Borda scores
a → 10 b → 10 c → 8 d → 7 e → 5
Can the last voter find a vote so that the winner is ... a? b? c? d? e?
SLIDE 119 Complexity of manipulation
◮ Manipulating the Borda rule by two voters
◮ Borda + tie-breaking priority a > b > c > d > e. ◮ Current Borda scores:
a → 12 b → 10 c → 9 d → 9 e → 4 f → 1
◮ Is there a constructive manipulation by two voters for e?
SLIDE 120
Complexity of manipulation
Existence of a manipulation for the Borda rule:
◮ for a single voter : in P ◮ for a coalition of at least two voters : NP-complete
SLIDE 121
Complexity of manipulation
Number of manipulators 1 at least 2 Copeland P NP-complete STV NP-complete NP-complete veto P P cup P P maximin P NP-complete ranked pairs NP-complete NP-complete Bucklin P P Borda P NP-complete (and yet others)
SLIDE 122
Complexity of manipulation
An important concern:
◮ a worst-case NP-hardness results only says that sometimes
(maybe rarely), computing a manipulation will be hard
◮ negative results about the average hardness of manipulation
Results about the frequency of manipulability (under some specific assumptions on the distribution of profiles)
◮ k = size of the manipulating coalition ◮ if k ≪ √n then it is highly likely that there is no manipulation; ◮ if k ≫ √n then it is highly likely that there is a manipulation.
SLIDE 123 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 124
Voting with incomplete preferences
Or more precisely: incomplete knowledge of the voters’ preferences voters 1, 2, 3, 4 : c ≻ b ≻ d ≻ a voters 5, 6, 7, 8 : a ≻ b ≻ d ≻ c voter 9 : ? ≻ ? ≻ ? ≻ ?
◮ if the rule is Borda:
a : 12 + ? b : 16 + ? c : 12 + ? d : 8 + ?
◮ if the rule is plurality:
a : 4 + ? b : 0 + ? c : 4 + ? d : 0 + ?
SLIDE 125
Possible and necessary winners
More generally:
◮ for each voter: Pi is a partial order on the set of candidates. ◮ P = P1, . . . , Pn incomplete profile ◮ completion of P: voting profile
T = T1, . . . , Tn where each Ti is a linear order extending Pi.
◮ F (resolute) voting rule ◮ c is a possible winner if there exists a completion of P for
which c is elected.
◮ c is a necessary winner if c is elected in every completion of
P.
Konczak & L (05); Walsh (07); Xia & Conitzer (08) . . .
SLIDE 126
Possible and necessary winners
voter 1 voter 2 voter 3 incomplete preferences a b c a b c a b completions a b c a c b b a c b c a c b a c a b 6 profile completions: abc, bac, cab abc, bca, cab abc, cba, cab acb, bac, cab acb, bca, cab acb, cba, cab
SLIDE 127
Possible and necessary winners
◮ c possible winner if there exists a completion of P in which c
is elected.
◮ c necessary winner if c is elected in every completion of P.
plurality with Borda a ≻ b, a ≻ c b ≻ a c ≻ a ≻ b tie-br. b > a > c idem abc cba cab c c abc bca cab b(ac) b(ac) abc bac cab b(ac) a acb cba cab c c acb bca cab b(ac) c acb bac cab c a
◮ possible plurality winners: {b, c}. ◮ Possible Borda winners: {a, b, c} ◮ no necessary winner (both for Borda and plurality)
SLIDE 128
Possible and necessary winners
◮ c possible winner if there exists a completion of P in which c
is elected.
◮ c necessary winner if c is elected in every completion of P.
we learn plurality with Borda a ≻ b, a ≻ c b ≻ a ≻ c c ≻ a ≻ b tie-br. b > a > c idem abc cba cab c c abc bca cab b(ac) b(ac) abc bac cab b(ac) a acb cba cab c c acb bca cab b(ac) c acb bac cab c a
◮ possible plurality winners: {b, c}. ◮ necessary Borda winner: a
SLIDE 129 Possible and necessary winners
In which contexts do we get such incomplete preferences?
- 1. Missing votes
- 2. Missing candidates
- 3. Incomplete lists
- 4. Truncated ballots
SLIDE 130 Possible and necessary winners
In which contexts do we get such incomplete preferences? Missing votes n − k voters have reported a full ranking; the other k have not reported anything. voter 1 . . . voter n-k voter n-k+1 . . . voter n
. .
. .
. . . ∅
Strategic interpretation:
◮ x is a possible winner if the last k voters have a way of casting their
votes such that x wins: constructive manipulation for x.
◮ x is a necessary winner if the last k voters have no way of casting
their votes such that x does not win: no destructive manipulation against x.
SLIDE 131
Possible winners: new candidates
In which contexts do we get such incomplete preferences? New candidates The voters have expressed their votes on a set of candidates, and then some new candidates come in.
◮ Doodle: agents vote on a first set of dates, and then new
dates become possible
◮ Recruiting committee: a preliminary vote is done before the
last applicants are interviewed voter 1 voter 2 . . . voter n c a b b c a . . . b a c (d, e?) (d, e?) . . . (d, e?)
SLIDE 132
Possible winners: new candidates
◮ (For reasonable voting rules) all new candidates must be
possible winners.
◮ Who among the initial candidates can win? ◮ 12 voters; initial candidates : X = {a, b, c}; one new
candidate y.
◮ plurality with tie-breaking priority a > b > c > y ◮ Who are the possible winners?
a 5 b 4 c 3 y initial scores (before y is taken into account)
SLIDE 133
Possible winners: new candidates
◮ (For reasonable voting rules) all new candidates must be
possible winners.
◮ Who among the initial candidates can win? ◮ 12 voters; initial candidates : X = {a, b, c}; one new
candidate y.
◮ plurality with tie-breaking priority a > b > c > y ◮ Who are the possible winners?
a 5 → 5 b 4 → 4 c 3 → 3 y → 0 nobody votes for y
SLIDE 134
Possible winners: new candidates
◮ (For reasonable voting rules) all new candidates must be
possible winners.
◮ Who among the initial candidates can win? ◮ 12 voters; initial candidates : X = {a, b, c}; one new
candidate y.
◮ plurality with tie-breaking priority a > b > c > y ◮ Who are the possible winners?
a 5 → 3 b 4 → 4 c 3 → 3 y → 2 2 who voted for a now vote for y
SLIDE 135
Possible winners: new candidates
◮ (For reasonable voting rules) all new candidates must be
possible winners.
◮ Who among the initial candidates can win? ◮ 12 voters; initial candidates : X = {a, b, c}; one new
candidate y.
◮ plurality with tie-breaking priority a > b > c > y ◮ Who are the possible winners?
a 5 → 2 b 4 → 2 c 3 → 3 y → 5 3 who voted for a and 2 who voted for b now vote for y, who wins! c cannot win
SLIDE 136
Possible winners: new candidates
◮ (For reasonable voting rules) all new candidates must be
possible winners.
◮ Who among the initial candidates can win? ◮ 12 voters; initial candidates : X = {a, b, c}; two new
candidates y1, y2
◮ plurality with tie-breaking priority a > b > c > y1 > y2 ◮ Who are the possible winners?
a 5 2 b 4 2 c 3 3 c wins y 3 y′ 2
◮ characterization and computation of possible winners for
many voting rules Chevaleyre, L, Maudet and Monnot (2010); Xia, L and Monnot (2011); Chevaleyre, L, Maudet, Monnot and Xia
SLIDE 137
Possible winners: truncated ballots
In which contexts do we get such incomplete preferences? Incomplete lists The voters rank only the candidates they know (the films they have seen, the candidates they have interviewed etc.) voter 1 voter 2 . . . voter n c a b d a . . . c e d f
SLIDE 138 Possible winners: truncated ballots
In which contexts do we get such incomplete preferences? Truncated ballots The voters are asked to rank only their top k candidates (to limit the amount of communication) voter 1 voter 2 . . . voter n
. . .
SLIDE 139
Possible winners: truncated ballots
◮ plurality: k = 1 is enough for the true winner to be
determined!
◮ Borda, tie-breaking priority a > b > c > d > e
voter 1 voter 2 voter 3 a ? b ? c ?
◮ possible winners: all ◮ no necessary winner
SLIDE 140
Possible winners: truncated ballots
◮ plurality: k = 1 is enough for the true winner to be
determined!
◮ Borda, tie-breaking priority a ⊲ b ⊲ c ⊲ d ⊲ e
voter 1 voter 2 voter 3 a d ? b d ? c d ?
◮ possible winners: a, b, c, d ◮ no necessary winner
SLIDE 141
Possible winners: truncated ballots
◮ plurality: k = 1 is enough for the true winner to be
determined!
◮ Borda, tie-breaking priority a ⊲ b ⊲ c ⊲ d ⊲ e
voter 1 voter 2 voter 3 a d e ? b d a ? c d b ?
◮ d necessary winner ◮ stop!
Kalech, Kraus, Kaminka and Goldman (2011); Baumeister, Faliszewski, L and Rothe (2012); and more papers.
SLIDE 142
Communication complexity of voting rules
◮ Communication problem: n agents have to compute a
function f (x1, . . . , xn); the input is distributed among them (initially, agent 1 knows only x1, . . . , and agent n knows xn).
◮ Protocol: binary tree where each node is labelled with an
agent and an action policy specifying a bit the agent should communicate, depending on her knowledge.
◮ Informally: a protocol is similar to an algorithm, with
instructions replaced by communication actions, those actions being based on the agents’ private information.
◮ A key reference: E. Kushilevitz and N. Nisan, Communication
complexity, Cambridge University Press, 1997.
SLIDE 143 Communication complexity of voting rules
◮ Voting rule
F : Pn → X A voting rule does not specify how the votes are elicited from the voters by the central authority.
◮ Protocol for a voting rule F
Communication protocol for computing F(V1, . . . , Vn), given that Vi is the private information of agent (voter) i.
◮ Communication complexity of a voting rule r: minimum cost
SLIDE 144
Communication complexity of voting rules
A protocol for any voting rule F: step 1 every voter i sends Vi to the central authority ֒ → n log(p!) bits step 2 [the central authority sends back the name of the winner to all voters] ֒ → n log p bits Corollary The communication complexity of an arbitrary voting rule r is at most n. log(p!)[+n log p] From now on, we shall ignore step 2.
SLIDE 145 Communication complexity of voting rules
Example 1: plurality A simple protocol: voters send the name of their most preferred candidate to the central authority ֒ → n log p bits Corollary The communication complexity of plurality is at most
SLIDE 146
Communication complexity of voting rules
Obtaining a lower bound: via the fooling set technique. Details on request (off-line) Proposition: the communication complexity of plurality with runoff is in Θ(n. log p) (Conitzer & Sandholm, 05)
SLIDE 147
Communication complexity of voting rules
Example 2: plurality with runoff. A protocol: step 1 voters send the name of their most preferred candidate to the central authority ֒ → n log p bits step 2 the central authority sends the names of the two finalists to the voters ֒ → 2n log p bits step 3 voters send the name of their preferred finalist to the central authority ֒ → n bits total n(3 log p + 1) bits (in the worst case) Corollary: the communication complexity of plurality with runoff is in O(n. log p). The lower bound matches: Proposition: the communication complexity of plurality with runoff is in Θ(n. log p) (Conitzer & Sandholm, 05)
SLIDE 148 Communication complexity of voting rules
Example 3: Single Transferable Vote (STV): a protocol step 1 voters send their most preferred candidate to the central authority (C) ֒ → n log p bits step 2 let x be the candidate to be eliminated. All voters who had x ranked first receive a message from C asking them to send the name of their next preferred
- candidate. There were at most n
p such voters
֒ → 2n
p log p bits
step 3 similarly with the new candidate y to be eliminated. At most
n p−1 voters voted for y
֒ → 2
n p−1 log p bits
etc. total ≤ 2n log p(1 + 1
p + 1 p−1 + . . . + 1 2) = O(n.(log p)2).
Lower bound matches (Conitzer & Sandholm, 05)
SLIDE 149
Voting with incomplete preferences
Related issues:
◮ Compiling the votes of a subelectorate (Chevaleyre, L,
Maudet & Ravilly-Abadie, 09)
◮ Trade-offs between compilation and elicitation (Chevaleyre, L,
Maudet & Monnot, 11)
SLIDE 150 Plan
- 1. Social choice and computational social choice
- 2. Preference aggregation, Arrow’s theorem, how to escape it
- 3. Voting rules: informational basis
- 4. Voting rules: properties
- 5. Voting rules: computation
- 6. Combinatorial domains
- 7. Strategic behaviour
- 8. Voting with incomplete preferences
- 9. Fair division
- 10. Other issues
SLIDE 151 Some fair division / resource allocation problems
◮ Problem 1: Allocating time slots to speakers
◮ Ulle has a slight preference for teaching on mornings, but
above all prefers to have consecutive slots, that is, he prefers (14–15 and 15–16) to (9–10 and 11–12).
◮ Ioannis has a preference for not teaching in the morning, and
prefers to have his slots on two different days.
◮ Christian has a preference for not teaching on Monday, and
wants all his slots in the same day.
◮ J´
erˆ
- me’s course should come before Ulle’s and Christian’s
talks.
Once the agents have reported their preferences, the allocation decision will be made centrally.
SLIDE 152 Some fair division / resource allocation problems
◮ Problem 2: Divorcing
◮ George and Helena
George and Helena are engaged in a divorce settlement process. They remain good friends and their divorce is not conflictual; therefore, they decide to do without a lawyer, and decide by themselves that Helena gets the books and George the bookshelves.
◮ John and Katia
John and Katia are unable to negotiate alone, and need to involve a lawyer, who helps them deciding that the children’s custody will be shared equally between them, and that, in addition, Katia gets the house, while John gets the cat plus some monetary compensation from Katia.
SLIDE 153 Some fair division / resource allocation problems
◮ Problem 3: Earth observation satellites
◮ France and Germany have jointly bought a very expensive
Earth observation satellite. Every day, each country’s responsible committee expresses its preferences over the photos it wants to be made.
◮ There are some physical constraints on the satellite that
restrict the set of photos that can be made on a single day, which needs a process to decide in a fair way which photos will be made.
◮ This may be complicated by the fact that France paid for two
thirds of the satellite while Germany paid only for one third, which leads to different entitlements on the number of photos.
SLIDE 154 Some fair division / resource allocation problems
◮ Problem 4: Sport team formation
Two schoolchildren, Anna and David, have to form two sport
- teams. Resources are players. Anna chooses first one member
- f her team, then David one, then again Anna, then David,
etc.
SLIDE 155 Some fair division / resource allocation problems
◮ Problem 5: House allocation
◮ Version 1: n houses have to be allocated to n agents (exactly
- ne each!); each agent expresses a preference ranking over all
houses.
◮ Version 2: n agents a1, . . . , an initially live in house h1, . . . , hn
respectively; each agent expresses a preference ranking over all houses; can we reallocate the houses so that some agent become happier but no agent becomes less happy?
SLIDE 156 Some fair division / resource allocation problems
◮ Problem 6: Combinatorial auction
◮ Vi : 2R → I
N for each agent i
◮ Vi(X) maximal value (price) that i is ready to pay for the
combination of resources X
◮ if Vi additive for all i then everything is easy ◮ but Vi is generally not additive
{left shoe} 5 $ {right shoe} 5 $ {left shoe, right shoe} 40 $ {beer} 4 $ {lemonade} 3 $ {beer, lemonade} 5 $ complementarity (superadditivity) supplementarity (subadditivity)
SLIDE 157
Resource allocation problem (informal)
◮ a set of resources to be allocated ◮ a set of agents ◮ agents have preferences over resources ◮ the final allocation is subject to some feasibility constraints
... a final allocation is found somehow
SLIDE 158
Resource allocation problem (informal)
◮ a set of resources to be allocated ◮ a set of agents ◮ agents have preferences over resources ◮ the final allocation is subject to some feasibility constraints
... a final allocation is found somehow Without additional parameters being fixed it is difficult to give a more precise definition.
SLIDE 159
- 1. Centralized versus decentralized
◮ Finding the allocation requires the agents to express, in one
way or another, their preferences.
◮ The process that consists in querying the agents about their
preferences is called preference elicitation. Centralized mechanism There is a central authority that elicits the agents’ preferences, and then determines the output allocation. Decentralized / distributed mechanism There is no central authority, and the agents themselves compute the allocation, revealing their preferences by certain specific (inter)actions.
SLIDE 160
- 2. Divisible versus indivisible resources
Divisible resources
◮ homogeneous ◮ heterogeneous
Indivisible resources
◮ coming in single units ◮ coming in multiple units
SLIDE 161
- 3. Ordinal versus cardinal preferences
Cardinal preferences Agents associate numerical values with (sets
Ordinal preferences Agents are only allowed to rank with (sets of) resources
SLIDE 162
- 4. One-to-one versus many-to-one
One-to-one allocation Each agent gets exactly one resource: matching problem Many-to-one allocation Each agent gets possibly several resources (bundles)
SLIDE 163
- 5. Money and initial endowments
Money or no money Is there any money involved in the mechanism? Do the agents pay and/or receive money? Initial endowments Do the agents initially own resources?
SLIDE 164
- 6. Shareable versus nonshareable
Non-shareable resources Each resource is allocated to a single agent, who is the only one who can enjoy it. Shareable resources Resources can be allocated to several (or even all) agents.
SLIDE 165
- 7. Fairness versus efficiency
Fairness What counts above all is to be fair and equitable to the agents: fair division Efficiency What counts is the global efficiency of the outcome (for instance, monetary revenue) Often: a mix of both.
SLIDE 166
Centralized fair division
Given
◮ a set of resources to be allocated ◮ a set of agents ◮ preferences of agents over resources ◮ the final allocation being subject to some feasibility constraints ◮ fairness (and efficiency) criteria for evaluating the quality of
allocation ... determine a fair allocation of resources to agents
SLIDE 167
Decentralized fair division
Given
◮ a set of resources to be allocated ◮ a set of agents ◮ some prior knowledge about agents’ preferences over resources ◮ the final allocation being subject to some feasibility constraints ◮ fairness criteria for evaluating the quality of allocation
... find an interaction protocol between agents guaranteeing that the outcome will have certain level of fairness.
SLIDE 168
Admissible bundles
From now on we focus on indivisible goods.
◮ O = {o1, . . . , om} indivisible objects ◮ 2O set of all bundles of objects ◮ X ⊆ 2O set of admissible bundles that an agent may receive
Examples of admissible bundles:
◮ cardinality constraint: each agent receives exactly k objects:
X = {S ⊆ O, |S| ≤ k}
◮ categorized items: objects are clustered in categories and each
agent receives exactly one item from each category: X = D1 × . . . × Dp where Di is the set of all objects of category i. Example: one first dish + one main dish + one drink per agent
SLIDE 169
Preferences over bundles
◮ N sets of agents ◮ O = {o1, . . . , om} indivisible objects
Notation: [o1o2|o3|o4o5] is the allocation where that agent 1 receives {o1o2}, 2 receives {o3}, 3 receives {o4, o5}. “No externality” assumption: an agent’s preferences bear only on the bundle she receives
◮ 1 is indifferent between [o1o2|o3|o4o5] and [o1o2|o3o5|o4] ◮ 2 is indifferent between [o1o2|o3|o4o5] and [∅|o3|o1o2o4o5] ◮ etc.
Therefore: it is sufficient to know each agent’s preferences over bundles (as opposed to her preferences over all allocations).
SLIDE 170
Fair Division of Indivisible Items
◮ N = {1, . . . , n} set of agents ◮ O = {o1, . . . , om} indivisible items ◮ allocation: maps each item to an agent
π = (π1| . . . |πn) where πi is the share of agent i; π = [o1o2|o3|o4o5]: 1 receives {o1o2}, 2 receives {o3}, 3 receives {o4, o5}.
◮ i preference relation of agent i over 2O
Envy-freeness π is envy-free if for all i, j, πi i πj (i does not envy j) Pareto efficiency π is Pareto-efficient if there is no π′ such that
◮ π′ i i πi for all i ◮ π′ i ≻i πi for some i
SLIDE 171
Fair Division
≻Gerhard: abc ≻ ab ≻ ac ≻ a ≻ bc ≻ b ≻ c ≻Tortsten: abc ≻ ab ≻ ac ≻ bc ≻ c ≻ a ≻ b
◮ [a|bc] both envy-free and efficient ◮ (sometimes no allocation is both envy-free and efficient)
SLIDE 172
Fair Division
≻Gerhard: abc ≻ ab ≻ ac ≻ bc ≻ c ≻ a ≻ b ≻Torsten: abc ≻ ab ≻ ac ≻ bc ≻ c ≻ b ≻ a
◮ [ab|c] efficient but not envy-free : Torsten envies Gerhard
because ab ≻Torsten c
◮ [a|b] envy-free but not efficient: giving c to any agent makes
her happier
◮ no allocation is both Pareto-efficient and envy-free
SLIDE 173 Fair division: three families of criteria
◮ Pareto-efficiency and envy-freeness are purely ordinal criteria:
what we know about the agents’ preferences is only their rankings over bundles.
◮ no information about intensity of preferences ◮ no scale common to agents; one cannot compare the
satisfaction of two different agent
◮ More information about the agents’ preferences allows more
criteria:
◮ qualitative criteria ◮ need qualitative preferences ◮ ui : 2R → L totally ordered scale common to all agents ◮ interpersonal comparison of preferences is allowed. ◮ numerical criteria ◮ need numerical preferences (sums of utilities are meaningful) ◮ allows for monetary compensations (if acceptable)
SLIDE 174
Fair division: qualitative criteria
◮ ui : 2R → L totally ordered scale (here: numbers for
convenience)
◮ equity (or egalitarianism): the leximin ordering
agents 1 2 {a, b, c} 10 10 {a, b} 8 9 {a, c} 8 6 {b, c} 5 5 {a} 5 4 {b} 5 3 {c} 2 4 ∅
SLIDE 175 Fair division: qualitative criteria
Egalitarian social welfare
◮ ui : 2R → L totally ordered scale (here: numbers for
convenience)
◮ equity (or egalitarianism): the leximin ordering: maximize the
satisfaction of the least happy agent, and in case of tie, maximize that if the second least happy agent etc. agents 1 2 {a, b, c} 10 10 {a, b} 8 9 {a, c} 8 6 {b, c} 5 5 {a} 5 4 {b} 5 3 {c} 2 4 ∅
- ptimal allocation: π = {b}, {a, c}
SLIDE 176
Fair division: numerical criteria
Utilitarian social welfare
◮ ui : 2R → I
R (here, numbers mean numbers...)
◮ maximize the sum of utilities
agents 1 2 {a, b, c} 10 10 {a, b} 8 9 {a, c} 8 6 {b, c} 5 5 {a} 5 4 {b} 5 3 {c} 2 4 ∅
◮ optimal allocation = [ab|c] ◮ possibility of monetary compensation from 1 to 2: 8−4 2
= 2
◮ utilitarianism + monetary compensation: optimal allocation =
[ab|c] + transfer of 2 money units from 2 to 1.
SLIDE 177 Fair division: ordinal criteria
◮ Ordinal criteria
agents 1 2 {a, b, c} 10 10 {a, b} 8 9 {a, c} 8 6 {b, c} 5 5 {a} 5 4 {b} 5 3 {c} 2 4 ∅
◮ π = {b}, {a, c} Pareto-efficient but not envy-free: 1 envies 2 ◮ π′ = {a}, {b, c} envy-free but not Pareto-efficient ◮ for this example, no allocation is both efficient and envy-free
SLIDE 178
Fair division: yet other criteria
◮ envy-freeness is a strong notion ◮ a collection of weaker notions: proportionality, maxmin fair
share, minmax fair share Proportional fair share
◮ ui(R) utility of agent i if she gets all goods ◮ FS(i) = ui(R) n
fair share of agent i
◮ π satisfies the proportional fair share criterion if
for all i, ui(π(i)) ≥ FS(i)
◮ weaker than envy-freeness ◮ needs numerical preferences but does not need interpersonal
comparison of preferences
SLIDE 179
Fair division: ordinal criteria
Proportional fair share
◮ assume agents 1 and 2 have additive utilities, with
agents 1 2 a 10 9 b 5 4 c 7 8 d 1
◮ FS(1) = 11 ◮ FS(2) = 11 ◮ no allocation satisfies proportional fair share
SLIDE 180
Fair division: ordinal criteria
Proportional fair share
◮ assume agents 1, 2 and 3 have additive utilities, with
agents 1 2 3 a 10 9 3 b 5 4 3 c 7 8 9 d 1 4
◮ FS(1) = FS(2) = 22 3 ◮ FS(3) = 19 3 ◮ [a|c|bd] satisfies proportional fair share ◮ but is not envy-free
SLIDE 181
Fair division: yet other criteria
Maxmin fair share
◮ maxminFS(i) = maxπ minj ui(π(j) fair share of agent i ◮ intuitively: the maximum, over all allocations, of the utility of
the worst share that i can get according to his own utility function.
◮ π satisfies the maxmin fair share criterion if
for all i, ui(π(i)) ≥ maxminFS(i)
◮ weaker than proportional fair share ◮ can be defined purely ordinally
SLIDE 182
Fair division: ordinal criteria
Maxmin fair share
◮ assume agents 1 and 2 have additive utilities, with
agents 1 2 a 10 9 b 5 4 c 7 8 d 1
◮ maxminFS(1) = 10 (obtained for [a|bcd]) ◮ maxminFS(2) = 10 (obtained for [ad|bc]) ◮ [a|bcd] satisfies maxmin fair share
SLIDE 183
Fair division: yet other criteria
Minmax fair share
◮ maxminFS(i) = minπ maxj ui(π(j) fair share of agent i ◮ intuitively: the minimum, over all allocations, of the utility of
the best share that i can get according to his own utility function.
◮ π satisfies the minmax fair share criterion if
for all i, ui(π(i)) ≥ minmaxFS(i)
◮ can be defined purely ordinally
envy-freeness ⇒ minmax FS ⇒ proportionality ⇒ maxmin FS
SLIDE 184 Fair division: three families of criteria
preferences numerical qualitative
ui : 2R → I N ui : 2R → L ≥i on 2R L ordered scale monetary compensations +
comparisons + +
comparisons + + + utilitarianism PFS∗ egalitarianism Pareto efficiency envy-freeness maxmin FS minmax FS
∗: does not need interpersonal comparisons
SLIDE 185
Other topics
◮ Judgment aggregation ◮ Matching ◮ Group formation ◮ Automated theorem proving for social choice ◮ Multiwinner elections, proportional representation, districting ◮ Fair division of divisible goods, cake-cutting protocols ◮ Social choice and the web ◮ (and more)
SLIDE 186 Judgment aggregation
◮ Instructions from PC chair: accept a paper if and only if it is
- riginal and technically valid
◮ Accept ↔ Original ∧ Valid
Original? Valid? Accept? Reviewer 1 Yes Yes Yes Reviewer 2 Yes No No Reviewer 3 No Yes No majority Yes Yes No
SLIDE 187 Judgment aggregation
◮ Instructions from PC chair: accept a paper if and only if it is
- riginal and technically valid
◮ Accept ↔ Original ∧ Valid
Original? Valid? Accept? Reviewer 1 Yes Yes Yes Reviewer 2 Yes No No Reviewer 3 No Yes No majority Yes Yes No
◮ (Metareview). Your paper was judged to be original and
technically valid. However, we decided to reject it.
◮ Judgment aggregation: aggregate opinions about logically
interrelated issues...
SLIDE 188 Judgment aggregation
◮ Instructions from PC chair: accept a paper if and only if it is
- riginal and technically valid
◮ Accept ↔ Original ∧ Valid
Original? Valid? Accept? Reviewer 1 Yes Yes Yes Reviewer 2 Yes No No Reviewer 3 No Yes No majority Yes Yes No
◮ (Metareview). Your paper was judged to be original and
technically valid. However, we decided to reject it.
◮ Judgment aggregation: aggregate opinions about logically
interrelated issues... in a logically consistent way.
◮ Strong links to nonmonotonic reasoning, belief merging,
inconsistency handling.
SLIDE 189
Judgment aggregation
◮ Generalizes preference aggregation
a ≻ b? b ≻ c? a ≻ c? Reviewer 1 Yes Yes Yes Reviewer 2 Yes No No Reviewer 3 No Yes No majority Yes Yes No
◮ Resulting judgment set violates transitivity
(a ≻ b) ∧ (b ≻ c) → (a ≻ c)
SLIDE 190
Judgment aggregation
◮ Aggregation of equivalence relations: decide how to cluster a,
b and c a ∼ b? b ∼ c? a ∼ c? Reviewer 1 Yes Yes Yes Reviewer 2 Yes No No Reviewer 3 No Yes No majority Yes Yes No
◮ Resulting judgment set violates transitivity
(a ∼ b) ∧ (b ∼ c) → (a ∼ c)
◮ And many more applications (merging ontologies,
crowdsourcing etc.)
◮ see U. Endriss, Judgment Aggregation, in Handbook of
Computational Social Choice (Cambridge University Press, appeared this week!).
SLIDE 191
Bibliography
◮ Handbook of Social Choice and Welfare (K. Arrow, A. Sen, K.
Suzumura, eds.), North-Holland, 2002 (Vol. 1), 2013 (Vol. 2).
◮ Handbook of Computational Social Choice (F. Brandt, V.
Conitzer, U. Endriss, J. Lang, A. Procaccia, eds.). Cambridge University Press, 2016. An experimental voting platform: Whale (developed by Sylvain Bouveret, University of Grenoble) http://whale3.noiraudes.net/ Contacting me: lang@lamsade.dauphine.fr