A quick tour of computational social choice Where Artificial - - PowerPoint PPT Presentation

a quick tour of computational social choice
SMART_READER_LITE
LIVE PREVIEW

A quick tour of computational social choice Where Artificial - - PowerPoint PPT Presentation

A quick tour of computational social choice Where Artificial Intelligence meets collective decision making Sylvain Bouveret LIG Grenoble INP Journes inaugurales du Pr-GDR IA Montpellier, 13 et 14 juin 2016 Outline A short history of


slide-1
SLIDE 1

A quick tour of computational social choice

Where Artificial Intelligence meets collective decision making Sylvain Bouveret

LIG – Grenoble INP

Journées inaugurales du Pré-GDR IA Montpellier, 13 et 14 juin 2016

slide-2
SLIDE 2

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

2 / 62 Introduction to computational social choice

slide-3
SLIDE 3

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

3 / 62 Introduction to computational social choice

slide-4
SLIDE 4

Social choice

Social choice theory focuses on the analysis of collective decision making methods.

4 / 62 Introduction to computational social choice

slide-5
SLIDE 5

Social choice

Social choice theory focuses on the analysis of collective decision making methods.

◮ A set of alternatives O

4 / 62 Introduction to computational social choice

slide-6
SLIDE 6

Social choice

Social choice theory focuses on the analysis of collective decision making methods.

◮ A set of alternatives O ◮ A set of agents A = {a1, . . . , an}...

4 / 62 Introduction to computational social choice

slide-7
SLIDE 7

Social choice

Social choice theory focuses on the analysis of collective decision making methods.

◮ A set of alternatives O ◮ A set of agents A = {a1, . . . , an}... ◮ ...Expressing opinions over the alternatives.

4 / 62 Introduction to computational social choice

slide-8
SLIDE 8

Social choice

Social choice theory focuses on the analysis of collective decision making methods.

◮ A set of alternatives O ◮ A set of agents A = {a1, . . . , an}... ◮ ...Expressing opinions over the alternatives.

⇓ Collective opinion, choice of an alternative...

4 / 62 Introduction to computational social choice

slide-9
SLIDE 9

Voting

We have to elect a representative from a set of m candidates on which the n voters have diverse preferences.

5 / 62 Introduction to computational social choice

slide-10
SLIDE 10

Voting

We have to elect a representative from a set of m candidates on which the n voters have diverse preferences.

◮ Alternatives: candidates ◮ Agents: voters ◮ Preferences: ballots (usually linear orders)

5 / 62 Introduction to computational social choice

slide-11
SLIDE 11

Voting rules

◮ X = {a, b, c, . . .} set of candidates ◮ N = {1, . . . , n} set of voters ◮ each voter reports a ranking ≻i over candidates; ◮ voting profile: P = ≻1, . . . , ≻n

voters 1, 2, 3, 4 : c ≻ b ≻ d ≻ a voters 5, 6, 7, 8 : a ≻ b ≻ d ≻ c voter 9 : c ≻ a ≻ b ≻ d

6 / 62 Introduction to computational social choice

slide-12
SLIDE 12

Voting rules

◮ X = {a, b, c, . . .} set of candidates ◮ N = {1, . . . , n} set of voters ◮ each voter reports a ranking ≻i over candidates; ◮ voting profile: P = ≻1, . . . , ≻n

voters 1, 2, 3, 4 : c ≻ b ≻ d ≻ a voters 5, 6, 7, 8 : a ≻ b ≻ d ≻ c voter 9 : c ≻ a ≻ b ≻ d plurality rule: the winner is the candidate ranked first by the largest number of voters plurality(P) = c

6 / 62 Introduction to computational social choice

slide-13
SLIDE 13

Voting rules

◮ X = {a, b, c, . . .} set of candidates ◮ N = {1, . . . , n} set of voters ◮ each voter reports a ranking ≻i over candidates; ◮ voting profile: P = ≻1, . . . , ≻n

voters 1, 2, 3, 4 : c ≻ b ≻ d ≻ a voters 5, 6, 7, 8 : a ≻ b ≻ d ≻ c voter 9 : c ≻ a ≻ b ≻ d Borda rule: a candidate ranked 1st / 2nd / 3rd / last in a vote gets 3 / 2 / 1 / 0 points. The candidate with maximum total number of points wins. a → (4 × 3) + 2 = 14 b → 17 c → 15 d → 8 Borda(P) = b

6 / 62 Introduction to computational social choice

slide-14
SLIDE 14

Voting rules

◮ X = {a, b, c, . . .} set of candidates ◮ N = {1, . . . , n} set of voters ◮ each voter reports a ranking ≻i over candidates; ◮ voting profile: P = ≻1, . . . , ≻n

voters 1, 2, 3, 4 : c ≻ b ≻ d ≻ a voters 5, 6, 7, 8 : a ≻ b ≻ d ≻ c voter 9 : c ≻ a ≻ b ≻ d many other rules!

6 / 62 Introduction to computational social choice

slide-15
SLIDE 15

Fair Division – Cake-Cutting

We have to divide a rectangular heterogeneous cake among n agents having different valuations about parts of the cake.

7 / 62 Introduction to computational social choice

slide-16
SLIDE 16

Fair Division – Cake-Cutting

We have to divide a rectangular heterogeneous cake among n agents having different valuations about parts of the cake. 1

7 / 62 Introduction to computational social choice

slide-17
SLIDE 17

Fair Division – Cake-Cutting

We have to divide a rectangular heterogeneous cake among n agents having different valuations about parts of the cake. 1

◮ Alternatives: allocations of the cake ◮ Agents: cake eaters ◮ Preferences: valuation functions (generally additive)

7 / 62 Introduction to computational social choice

slide-18
SLIDE 18

Protocols

Usually, we care about:

◮ Proportionality: each agent feels that her share is worth at least 1 n of the cake. ◮ Envy-freeness: each agent feels that her share is better than the

share of any other agent.

8 / 62 Introduction to computational social choice

slide-19
SLIDE 19

Protocols

Usually, we care about:

◮ Proportionality: each agent feels that her share is worth at least 1 n of the cake. ◮ Envy-freeness: each agent feels that her share is better than the

share of any other agent. 2 agents: I cut, you choose.

◮ Agent 1 cuts the cake into two pieces of equal value to her. ◮ Agent 2 chooses.

Guarantees envy-freeness and proportionality.

8 / 62 Introduction to computational social choice

slide-20
SLIDE 20

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

9 / 62 Introduction to computational social choice

slide-21
SLIDE 21

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

  • 2. Each agent from 2 to n have the choice either to pass, or to trim

the piece further down.

9 / 62 Introduction to computational social choice

slide-22
SLIDE 22

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

  • 2. Each agent from 2 to n have the choice either to pass, or to trim

the piece further down.

  • 3. The last agent having cut the piece takes it and leaves the game.

9 / 62 Introduction to computational social choice

slide-23
SLIDE 23

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

  • 2. Each agent from 2 to n have the choice either to pass, or to trim

the piece further down.

  • 3. The last agent having cut the piece takes it and leaves the game.
  • 4. The game starts again with the remaining agents and the rest of

the cake (including trimmings).

9 / 62 Introduction to computational social choice

slide-24
SLIDE 24

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

  • 2. Each agent from 2 to n have the choice either to pass, or to trim

the piece further down.

  • 3. The last agent having cut the piece takes it and leaves the game.
  • 4. The game starts again with the remaining agents and the rest of

the cake (including trimmings).

9 / 62 Introduction to computational social choice

slide-25
SLIDE 25

More than two agents

The Banach-Knaster Last Diminisher procedure:

  • 1. Agent 1 cuts off a piece (she estimates to be worth 1

n)

  • 2. Each agent from 2 to n have the choice either to pass, or to trim

the piece further down.

  • 3. The last agent having cut the piece takes it and leaves the game.
  • 4. The game starts again with the remaining agents and the rest of

the cake (including trimmings). Guarantees proportionality (of course not envy-freeness).

9 / 62 Introduction to computational social choice

slide-26
SLIDE 26

Fair Division – Indivisible Goods

We have to allocate a set of indivisible objects to n agents having different valuations about them.

10 / 62 Introduction to computational social choice

slide-27
SLIDE 27

Fair Division – Indivisible Goods

We have to allocate a set of indivisible objects to n agents having different valuations about them.

◮ Alternatives: allocations of the objects ◮ Agents: object consumers ◮ Preferences: valuation functions / orders,...

10 / 62 Introduction to computational social choice

slide-28
SLIDE 28

Fair Division – Indivisible Goods

We have to allocate a set of indivisible objects to n agents having different valuations about them.

◮ Alternatives: allocations of the objects ◮ Agents: object consumers ◮ Preferences: valuation functions / orders,...

We will come back to that in more details later.

10 / 62 Introduction to computational social choice

slide-29
SLIDE 29

Matching

We have to match agents from a group S1 to agents from a group S2. Agents from S1 have preferences over agents from S2, and vice-versa.

11 / 62 Introduction to computational social choice

slide-30
SLIDE 30

Matching

We have to match agents from a group S1 to agents from a group S2. Agents from S1 have preferences over agents from S2, and vice-versa. Examples:

◮ Matching students to schools (one-to-many matching) ◮ Matching students to projects (many-to-many matching) ◮ Matching men to women – stable marriage (one-to-one

matching)

11 / 62 Introduction to computational social choice

slide-31
SLIDE 31

The Stable Marriage Problem

◮ n men and n women ◮ each man has a linear preference order over women, and vice

versa.

◮ We look for a stable marriage.

12 / 62 Introduction to computational social choice

slide-32
SLIDE 32

The Stable Marriage Problem

◮ n men and n women ◮ each man has a linear preference order over women, and vice

versa.

◮ We look for a stable marriage.

The Gale-Shapley algorithm (1962):

◮ Each man who is not yet engaged proposes to his favourite

women he has not yet proposed to.

◮ Each woman picks her favourite among all the proposal she has

and the man she is currently engaged with.

◮ Loop until everyone is engaged.

12 / 62 Introduction to computational social choice

slide-33
SLIDE 33

Coalition Formation

n agents have to form groups. Each agent has preferences

  • ver the other agents.

13 / 62 Introduction to computational social choice

slide-34
SLIDE 34

Coalition Formation

n agents have to form groups. Each agent has preferences

  • ver the other agents.

◮ Alternatives: valid partitions of the participants. ◮ Agents: participants. ◮ Preferences: usually numerical (additive) preferences on the

  • ther participants.

13 / 62 Introduction to computational social choice

slide-35
SLIDE 35

Coalition Formation

n agents have to form groups. Each agent has preferences

  • ver the other agents.

◮ Alternatives: valid partitions of the participants. ◮ Agents: participants. ◮ Preferences: usually numerical (additive) preferences on the

  • ther participants.

Generalization of the matching problem. Usually we look for stable coalitions (hedonic games), or collectively optimal ones.

13 / 62 Introduction to computational social choice

slide-36
SLIDE 36

Judgment Aggregation

We have to make a judgment over a set of logically interdependent issues. Each agent n is an independent judge who has (consistent) opinions about these issues.

◮ Alternatives: logically interdependent issues ◮ Agents: judges ◮ Preferences: usually approval (yes / no) opinions.

14 / 62 Introduction to computational social choice

slide-37
SLIDE 37

Paradox of Judgment Aggregation

◮ Instructions from IJCAI-ECAI-2018 PC chair: accept a paper if and

  • nly if it is original 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

15 / 62 Introduction to computational social choice

slide-38
SLIDE 38

Paradox of Judgment Aggregation

◮ Instructions from IJCAI-ECAI-2018 PC chair: accept a paper if and

  • nly if it is original 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...

15 / 62 Introduction to computational social choice

slide-39
SLIDE 39

Paradox of Judgment Aggregation

◮ Instructions from IJCAI-ECAI-2018 PC chair: accept a paper if and

  • nly if it is original 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.

15 / 62 Introduction to computational social choice

slide-40
SLIDE 40

Social Choice Everywhere

◮ Assigning courses to students ◮ Electing a political representative (e.g. the head of the

Pré-GDR...)

◮ Choosing a collective meeting date ◮ Choosing the future name for a region ◮ Electing the winner of the Eurovision song contest ◮ Scheduling the workload of a team of workers ◮ Matching patients with hospitals ◮ Diving a piece of land ◮ Forming teams ◮ Choosing the place for a common facility ◮ ...

16 / 62 Introduction to computational social choice

slide-41
SLIDE 41

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

17 / 62 Introduction to computational social choice

slide-42
SLIDE 42

Early ages

◮ From Ancient Greece and India: Aristotle, Chânakya... ◮ ...To the late XVIIIth century:

◮ Condorcet ◮ Borda

◮ And the British philosophical roots of utilitarianism: Bentham,

Stuart Mill...

18 / 62 Introduction to computational social choice

slide-43
SLIDE 43

Birth of Modern Social Choice

◮ Arrow’s theorem (1951):

With at least 3 alternatives, an aggregation function satisfies unanimity and independence of irrelevant alternatives if and only if it is a dictatorship.

19 / 62 Introduction to computational social choice

slide-44
SLIDE 44

Birth of Modern Social Choice

◮ Arrow’s theorem (1951):

With at least 3 alternatives, an aggregation function satisfies unanimity and independence of irrelevant alternatives if and only if it is a dictatorship.

◮ Results are mainly axiomatic (economics/mathematics) ◮ Impossibility theorems: incompatibility of a small set of

seemingly innocuous conditions, like Arrow’s theorem.

◮ Computational issues are neglected so far.

19 / 62 Introduction to computational social choice

slide-45
SLIDE 45

Where Computation Comes into Play

◮ Around the 50’s: protocols for fair division (e.g. Banach-Knaster)

algorithms?

◮ Early 80’s: combinatorial auctions ◮ Early 90’s: computer scientists start studying computational

issues in social choice (complexity of voting...)

◮ 2006: First COMSOC Workshop ◮ As of 2016: a very active community, well represented in AAMAS,

IJCAI, AAAI, ECAI...

20 / 62 Introduction to computational social choice

slide-46
SLIDE 46

Computational social choice

COMSOC ≈ Social Choice ∩ Computer Science

21 / 62 Introduction to computational social choice

slide-47
SLIDE 47

Computational social choice

COMSOC ≈ Social Choice ∩ Computer Science

  • 1. Use techniques from economics to solve problems in IT

(network sharing, job allocation...)

  • 2. Use techniques from CS to analyze and solve economical

problems (complexity of voting procedures, compact preference representation...)

21 / 62 Introduction to computational social choice

slide-48
SLIDE 48

An Interdisciplinary Domain

COMSOC

22 / 62 Introduction to computational social choice

slide-49
SLIDE 49

An Interdisciplinary Domain

COMSOC

economics

microeconomics social choice

22 / 62 Introduction to computational social choice

slide-50
SLIDE 50

An Interdisciplinary Domain

COMSOC

economics

microeconomics social choice

AI

preference repre- sentation constraint programming multiagent systems

22 / 62 Introduction to computational social choice

slide-51
SLIDE 51

An Interdisciplinary Domain

COMSOC

economics

microeconomics social choice

AI

preference repre- sentation constraint programming multiagent systems

combinatorial auctions

22 / 62 Introduction to computational social choice

slide-52
SLIDE 52

An Interdisciplinary Domain

COMSOC

economics

microeconomics social choice

AI

preference repre- sentation constraint programming multiagent systems

combinatorial auctions Theoretical Computer Science

algorithmics complexity logic

22 / 62 Introduction to computational social choice

slide-53
SLIDE 53

An Interdisciplinary Domain

COMSOC

economics

microeconomics social choice

AI

preference repre- sentation constraint programming multiagent systems

combinatorial auctions Theoretical Computer Science

algorithmics complexity logic

OR / Decision Theory

uncertainty / risk algorithmic decision theory combinatorial

  • ptimization

multicriteria

  • ptimization

22 / 62 Introduction to computational social choice

slide-54
SLIDE 54

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

23 / 62 Introduction to computational social choice

slide-55
SLIDE 55

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d

24 / 62 Introduction to computational social choice

slide-56
SLIDE 56

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e

24 / 62 Introduction to computational social choice

slide-57
SLIDE 57

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e

24 / 62 Introduction to computational social choice

slide-58
SLIDE 58

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e

24 / 62 Introduction to computational social choice

slide-59
SLIDE 59

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e

24 / 62 Introduction to computational social choice

slide-60
SLIDE 60

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e The Condorcet Winner is the candidate that wins against all the

  • ther candidates

24 / 62 Introduction to computational social choice

slide-61
SLIDE 61

The Condorcet Principle

3 voters: a ≻ b ≻ d ≻ c ≻ e b ≻ a ≻ e ≻ d ≻ c c ≻ e ≻ a ≻ b ≻ d Run a tournament between the candidates (pairwise comparisons) a b c d e The Condorcet Winner is the candidate that wins against all the

  • ther candidates → a

24 / 62 Introduction to computational social choice

slide-62
SLIDE 62

Dodgson rule

However, preferences may cycle and the Condorcet Winner may not exist. Condorcet-consistent rules elect the Condorcet Winner when it exists.

25 / 62 Introduction to computational social choice

slide-63
SLIDE 63

Dodgson rule

However, preferences may cycle and the Condorcet Winner may not exist. Condorcet-consistent rules elect the Condorcet Winner when it exists. The Dodgson rule: If a Condorcet Winner exists, elect it. Otherwise compute for each candidate c the number of adjacent swaps in the individual preferences required to make c a Condorcet

  • Winner. Elect the candidate that minimizes that number.

25 / 62 Introduction to computational social choice

slide-64
SLIDE 64

Dodgson rule

However, preferences may cycle and the Condorcet Winner may not exist. Condorcet-consistent rules elect the Condorcet Winner when it exists. The Dodgson rule: If a Condorcet Winner exists, elect it. Otherwise compute for each candidate c the number of adjacent swaps in the individual preferences required to make c a Condorcet

  • Winner. Elect the candidate that minimizes that number.

Theorem (Hemaspaandra et al., 1997)

Winner determination for Dodgson rule in complete for parallel access to NP.

25 / 62 Introduction to computational social choice

slide-65
SLIDE 65

Manipulating Borda

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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?

26 / 62 Introduction to computational social choice

slide-66
SLIDE 66

Manipulating Borda

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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?

◮ a ≻ . . . ◮ yes

26 / 62 Introduction to computational social choice

slide-67
SLIDE 67

Manipulating Borda

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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 ... c?

26 / 62 Introduction to computational social choice

slide-68
SLIDE 68

Manipulating Borda

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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 ... c?

◮ c ≻ e ≻ d ≻ b ≻ a ◮ scores: c → 12, a → 10, b → 11, d → 9, e → 8 ◮ yes

26 / 62 Introduction to computational social choice

slide-69
SLIDE 69

Manipulating Borda: two voters

◮ Two voters haven’t voted yet ◮ Borda rule ◮ Tie-breaking priority a > b > c > d > e > f. ◮ Current Borda scores:

a → 12 b → 10 c → 9 d → 9 e → 4 f → 1

◮ Do the last two voters have a constructive manipulation for e? ◮ A simple greedy algorithm like before does not work.

27 / 62 Introduction to computational social choice

slide-70
SLIDE 70

Manipulation of the Borda rule

Existence of a manipulation for the Borda rule:

◮ for a single voter : in P

◮ Bartholdi, Tovey & Trick, Social Choice and Welfare, 89

◮ for a coalition of at least two voters : NP-complete

◮ Betzler, Niedermeyer & Woeginger, IJCAI-11 ◮ Davies, Katsirelos, Narodytska & Walsh, AAAI-11

◮ Lots of results of this kind

28 / 62 Introduction to computational social choice

slide-71
SLIDE 71

Complexity and Manipulation

Is there a better rule than Borda that prevents manipulation?

29 / 62 Introduction to computational social choice

slide-72
SLIDE 72

Complexity and Manipulation

Is there a better rule than Borda that prevents manipulation?

Theorem (Gibbard-Satterthwaite, 1973/75)

All resolute and surjective voting rules over more than 3 candidates are either dictatorial or manipulable

29 / 62 Introduction to computational social choice

slide-73
SLIDE 73

Complexity and Manipulation

Is there a better rule than Borda that prevents manipulation?

Theorem (Gibbard-Satterthwaite, 1973/75)

All resolute and surjective voting rules over more than 3 candidates are either dictatorial or manipulable But computational complexity can be seen as a barrier to manipulation.

29 / 62 Introduction to computational social choice

slide-74
SLIDE 74

Complexity and Manipulation

Is there a better rule than Borda that prevents manipulation?

Theorem (Gibbard-Satterthwaite, 1973/75)

All resolute and surjective voting rules over more than 3 candidates are either dictatorial or manipulable But computational complexity can be seen as a barrier to manipulation. Observation: worst-case complexity, under complete knowledge (→ in practice?)

29 / 62 Introduction to computational social choice

slide-75
SLIDE 75

Voting in Combinatorial Domains

Combinatorial domains in voting: multiple referendums, multi-winner (e.g. committee) election...

30 / 62 Introduction to computational social choice

slide-76
SLIDE 76

Voting in Combinatorial Domains

Combinatorial domains in voting: multiple referendums, multi-winner (e.g. committee) election...

Example

2 binary variables:

◮ S (build a new swimming pool) ◮ T (build a new tennis court)

voters 1 and 2 S¯ T ≻ ¯ ST ≻ ¯ S¯ T ≻ ST voters 3 and 4 ¯ ST ≻ S¯ T ≻ ¯ S¯ T ≻ ST voter 5 ST ≻ S¯ T ≻ ¯ ST ≻ ¯ S¯ T

30 / 62 Introduction to computational social choice

slide-77
SLIDE 77

Voting in Combinatorial Domains

Combinatorial domains in voting: multiple referendums, multi-winner (e.g. committee) election...

Example

2 binary variables:

◮ S (build a new swimming pool) ◮ T (build a new tennis court)

voters 1 and 2 S¯ T ≻ ¯ ST ≻ ¯ S¯ T ≻ ST voters 3 and 4 ¯ ST ≻ S¯ T ≻ ¯ S¯ T ≻ ST voter 5 ST ≻ S¯ T ≻ ¯ ST ≻ ¯ S¯ T A naive solution: don’t bother and vote separately on each variable. ⇒ multiple election paradoxes

30 / 62 Introduction to computational social choice

slide-78
SLIDE 78

Multiple Election Paradoxes

voters 1 and 2 S¯ T ≻ ¯ ST ≻ ¯ S¯ T ≻ ST voters 3 and 4 ¯ ST ≻ S¯ T ≻ ¯ S¯ T ≻ ST voter 5 ST ≻ S¯ T ≻ ¯ ST ≻ ¯ S¯ T

31 / 62 Introduction to computational social choice

slide-79
SLIDE 79

Multiple Election Paradoxes

voters 1 and 2 S¯ T ≻ ¯ ST ≻ ¯ S¯ T ≻ ST voters 3 and 4 ¯ ST ≻ S¯ T ≻ ¯ S¯ T ≻ ST voter 5 ST ≻ S¯ T ≻ ¯ ST ≻ ¯ S¯ T Problem 1: voters 1-4 feel ill at ease reporting a preference on {S, ¯ S} and {T, ¯ T}

31 / 62 Introduction to computational social choice

slide-80
SLIDE 80

Multiple Election Paradoxes

voters 1 and 2 S¯ T ≻ ¯ ST ≻ ¯ S¯ T ≻ ST voters 3 and 4 ¯ ST ≻ S¯ T ≻ ¯ S¯ T ≻ ST voter 5 ST ≻ S¯ T ≻ ¯ ST ≻ ¯ S¯ T 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.

31 / 62 Introduction to computational social choice

slide-81
SLIDE 81

Voting and CP-nets: aggregating CP-nets

First solution: use a compact preference representation language and aggregate the formulas

32 / 62 Introduction to computational social choice

slide-82
SLIDE 82

Voting and CP-nets: aggregating CP-nets

First solution: use a compact preference representation language and aggregate the formulas

Example (Swimming pool and tennis)

2 voters s¯ t ≻ ¯ st ≻ ¯ s¯ t ≻ st

S T t : ¯ s ≻ s ¯ t : s ≻ ¯ s s : ¯ t ≻ t ¯ s : t ≻ ¯ t

2 voters ¯ st ≻ s¯ t ≻ ¯ s¯ t ≻ st

S T t : ¯ s ≻ s ¯ t : s ≻ ¯ s s : ¯ t ≻ t ¯ s : t ≻ ¯ t

1 voter st ≻ ¯ st ≻ s¯ t ≻ ¯ s¯ t

S T s ≻ ¯ s t ≻ ¯ t

Aggregate locally (by majority) for each pair of adjacent outcomes:

S T t : ¯ s ≻ s ¯ t : s ≻ ¯ s s : ¯ t ≻ t ¯ s : t ≻ ¯ t st s¯ t ¯ s¯ t ¯ st

32 / 62 Introduction to computational social choice

slide-83
SLIDE 83

Voting and CP-nets: aggregating CP-nets

+ always applicable, because any preference relation is compatible with some CP-net (possibly with cyclic dependencies). − elicitation cost: in the worst case, exponential number of queries to each voter − computation cost: dominance in CP-nets with cyclic dependencies is PSPACE-complete − there might be no winner; there might be several winners

[Xia et al., 2008, Conitzer et al., 2011, Li et al., 2011]

33 / 62 Introduction to computational social choice

slide-84
SLIDE 84

Voting and CP-nets: sequential voting

Assumption: there exists an order on variables, say x1 > . . . > xp, such that for every voter and for every i, xi is preferentially independent of xi+1, . . . , xp given x1, . . . , xi−1. Sequential voting: apply local voting rules, one variable after the

  • ther, in an order compatible with G.

At every step:

◮ we elicit the voters’ preferences about a single variable; ◮ a local rule is used to compute the value chosen for this

variable;

◮ this value is communicated to the voters.

We don’t need to know the whole preference relations of the voters but only a part of their CP-nets.

[Lang and Xia, 2009]

34 / 62 Introduction to computational social choice

slide-85
SLIDE 85

Voting and CP-nets: sequential voting

X Y Z

  • 1. elicit voters’ preferences on X (possible because their

preferences on X are unconditional);

  • 2. apply local voting rule rX and determine the “local” winner x∗;
  • 3. elicit voters’ preferences on Y given X = x∗ (possible because

their preferences on Y depend only on X);

  • 4. apply local voting rule rY and determine y∗;
  • 5. elicit voters’ preferences on Z given X = x∗ and Y = y∗.
  • 6. apply local voting rule rZ and determine z∗.
  • 7. winner: (x∗, y∗, z∗)

35 / 62 Introduction to computational social choice

slide-86
SLIDE 86

Incomplete Preferences

◮ New votes are coming (online vote, Doodle poll...) ◮ New candidates are coming (Doodle poll, recruiting committee...) ◮ Incomplete lists ◮ Truncated ballots

36 / 62 Introduction to computational social choice

slide-87
SLIDE 87

Incomplete Preferences

◮ New votes are coming (online vote, Doodle poll...) ◮ New candidates are coming (Doodle poll, recruiting committee...) ◮ Incomplete lists ◮ Truncated ballots

Winning candidate becomes a modal notion:

◮ x is a necessary winner if she wins under all possible

completions of the profile.

◮ x is a possible winner if she wins under at least one completion

  • f the profile.

Konczak & L (05); Walsh (07); Xia & Conitzer (08) ...

36 / 62 Introduction to computational social choice

slide-88
SLIDE 88

Incomplete Profiles and Manipulation...

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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?

37 / 62 Introduction to computational social choice

slide-89
SLIDE 89

Incomplete Profiles and Manipulation...

◮ Borda rule ◮ a single voter hasn’t voted yet

◮ 4 voters so far:

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? → Is a a possible winner?

37 / 62 Introduction to computational social choice

slide-90
SLIDE 90

Automated Proofs

Recent advances in automated solving have been applied to social choice theorems. Idea: Cast classical problems in a suitable logic and use automated theorem provers (e.g. SAT solvers, SMT solvers...) No “new” theorems so far but:

◮ Automated verification of known proofs (e.g. the

Gibbard-Sattherthwaith theorem [Nipkow, 2009])

◮ Simpler proofs or shorter counterexamples found (e.g the

no-show paradox [Brandt et al., 2016]).

38 / 62 Introduction to computational social choice

slide-91
SLIDE 91

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

39 / 62 Introduction to computational social choice

slide-92
SLIDE 92

Fair Division of Indivisible Goods...

You have:

◮ a finite set of objects O = {1, . . . , m} ◮ a finite set of agents A = {1, . . . , n} having some preferences on

the set of objects they may receive

40 / 62 Introduction to computational social choice

slide-93
SLIDE 93

Fair Division of Indivisible Goods...

You have:

◮ a finite set of objects O = {1, . . . , m} ◮ a finite set of agents A = {1, . . . , n} having some preferences on

the set of objects they may receive How would you allocate the objects to the agents so as to be as fair as possible?

40 / 62 Introduction to computational social choice

slide-94
SLIDE 94

Fair Division of Indivisible Goods...

You have:

◮ a finite set of objects O = {1, . . . , m} ◮ a finite set of agents A = {1, . . . , n} having some preferences on

the set of objects they may receive How would you allocate the objects to the agents so as to be as fair as possible? More precisely, you want:

◮ an allocation −

→ π : A → 2O

◮ such that πi ∩ πj = ∅ if i = j (preemption), ◮ i∈A πi = O (no free-disposal), ◮ and which takes into account the agents’ preferences

40 / 62 Introduction to computational social choice

slide-95
SLIDE 95

Preferences for Fair Division

An intuitive way of expressing preferences...

41 / 62 Introduction to computational social choice

slide-96
SLIDE 96

Preferences for Fair Division

An intuitive way of expressing preferences...

◮ We assume that the preferences are ordinal. ◮ Each agent specifies a linear order ⊲ on O (single objects)

A : a ⊲ b ⊲ c ⊲ d

41 / 62 Introduction to computational social choice

slide-97
SLIDE 97

Preferences for Fair Division

An intuitive way of expressing preferences...

◮ We assume that the preferences are ordinal. ◮ Each agent specifies a linear order ⊲ on O (single objects)

A : a ⊲ b ⊲ c ⊲ d Problem: How to compare subsets of objects ? e.g abc

?

≺≻ ab; ab

?

≺≻ ac ?

41 / 62 Introduction to computational social choice

slide-98
SLIDE 98

Preferences for Fair Division

An intuitive way of expressing preferences...

◮ We assume that the preferences are ordinal. ◮ Each agent specifies a linear order ⊲ on O (single objects)

A : a ⊲ b ⊲ c ⊲ d Problem: How to compare subsets of objects ? e.g abc

?

≺≻ ab; ab

?

≺≻ ac ? → We need to be able to express preferences over 2O.

41 / 62 Introduction to computational social choice

slide-99
SLIDE 99

Combinatorial Spaces...

The combinatorial trap...

Two variables...

  • 1 ≻ o2 ≻ o1o2 ≻ ∅ → 3 comparaisons (linear order).

42 / 62 Introduction to computational social choice

slide-100
SLIDE 100

Combinatorial Spaces...

The combinatorial trap...

Four variables...

  • 1o2 ≻ o2o3o4 ≻ o1 ≻ ∅ ≻ o2 ≻ o1o2o3o4 ≻ o1o3 ≻ o2o4 ≻ o3o4 ≻
  • 1o4 ≻ o1o3o4 ≻ o2o3 ≻ o4 ≻ o3 ≻ o1o2o4 ≻ o1o2o3 → 15

comparisons (linear order).

42 / 62 Introduction to computational social choice

slide-101
SLIDE 101

Combinatorial Spaces...

The combinatorial trap...

Twenty variables...

  • 8o5 ≻ o5o3o9 ≻ o8 ≻ ∅ ≻ o5 ≻ o8o5o3o9 ≻ o8o3 ≻ o5o9 ≻ o3o9 ≻
  • 8o9 ≻ o8o3o9 ≻ o5o3 ≻ o9 ≻ o3 ≻ o8o5o9 ≻ o8o5o3o1o2o5o8o9 ≻
  • 1o5o6 ≻ o7 ≻ o2o3o4o5o6o7o8 ≻ o1o2o3o4o5 ≻ o1o3 ≻ o2 ≻
  • 1o3o7o9 ≻ o1o5 ≻ o1o7o8o9 ≻ o2 ≻ o4 ≻ o6 ≻ o1o7 ≻ o1o2o3 ≻
  • 1o2 ≻ o2o5o4 ≻ o1 ≻ o2 ≻ o1o2o5o4 ≻ o1o5 ≻ o2o4 ≻ o5o4 ≻
  • 1o4 ≻ o1o5o4 ≻ o2o5 ≻ o4 ≻ o5 ≻ o1o2o4 ≻ o1o2o5 ≻ o1o5 ≻
  • 5o3o9 ≻ o1 ≻ ∅ ≻ o5 ≻ o1o5o3o9 ≻ o1o3 ≻ o5o9 ≻ o3o9 ≻
  • 1o9 ≻ o1o3o9 ≻ o5o3 ≻ o9 ≻ o3 ≻ o1o5o9 ≻ o1o5o3o9o6o5o1o9 ≻
  • 9o5o6 ≻ o7 ≻ o6o3o4o5o6o7o1 ≻ o9o6o3o4o5 ≻ o9o3 ≻ o6 ≻
  • 9o3o7o9 ≻ o9o5 ≻ o9o7o1o9 ≻ o6 ≻ o4 ≻ o6 ≻ o9o7 ≻ o9o6o3 ≻
  • 9o6 ≻ o6o5o4 ≻ o9 ≻ o6 ≻ o9o6o5o4 ≻ o9o5 ≻ o6o4 ≻ o5o4 ≻
  • 9o4 ≻

→ 1048575 comparisons → elicitation needs more than 12 days!

42 / 62 Introduction to computational social choice

slide-102
SLIDE 102

The dilemma

◮ Expressing preferential dependencies is necessary in many

cases.

◮ however...explicit representation and elicitation of or u are

unfeasible in practice.

43 / 62 Introduction to computational social choice

slide-103
SLIDE 103

The dilemma

◮ Expressing preferential dependencies is necessary in many

cases.

◮ however...explicit representation and elicitation of or u are

unfeasible in practice. ⇒ Compact preference representation languages

43 / 62 Introduction to computational social choice

slide-104
SLIDE 104

The dilemma

◮ Expressing preferential dependencies is necessary in many

cases.

◮ however...explicit representation and elicitation of or u are

unfeasible in practice. ⇒ Compact preference representation languages

◮ Cardinal utilities: Weighted propositional logic, bidding

languages, GAI-nets, k-additive functions...

◮ Ordinal utilities: Prioritized goal bases, CI-nets...

43 / 62 Introduction to computational social choice

slide-105
SLIDE 105

CI-nets: the language

A language inspired from CP-nets...

44 / 62 Introduction to computational social choice

slide-106
SLIDE 106

CI-nets: the language

A language inspired from CP-nets...

Conditional importance statement

Conditional importance statement: S+, S− : S1 ⊲ S2 (with S+, S−, S1 and S2 pairwise-disjoint). Example: ad : b ⊲ ce implies for example ab ≻ ace, abfg ≻ acefg, ...

CI-net

A CI-net on V is a set N of conditional importance statements on V.

44 / 62 Introduction to computational social choice

slide-107
SLIDE 107

Semantics

A CI-net of 4 objects {a, b, c, d}: {a : d ⊲ bc, ad : b ⊲ c, d : c ⊲ b}

∅ a b c d ab ac ad bc bd cd abc abd acd bcd abcd

45 / 62 Introduction to computational social choice

slide-108
SLIDE 108

Semantics

A CI-net of 4 objects {a, b, c, d}: {a : d ⊲ bc, ad : b ⊲ c, d : c ⊲ b}

∅ a b c d ab ac ad bc bd cd abc abd acd bcd abcd Induced preference relation ≻N : the smallest monotonic preference relation compatible with all CI-statements.

45 / 62 Introduction to computational social choice

slide-109
SLIDE 109

CI-nets: Features

◮ Expressivity:

◮ CI-nets can express all strict monotonic preference relations on

2V.

◮ Full expressivity is lost as soon as we only allow positive (resp.

negative) preconditions or the cardinality of compared sets is bounded.

◮ Complexity:

[Satisfiability] (consistency) is PSPACE-complete.

[Dominance] is PSPACE-complete.

46 / 62 Introduction to computational social choice

slide-110
SLIDE 110

CI-nets: Features

◮ Expressivity:

◮ CI-nets can express all strict monotonic preference relations on

2V.

◮ Full expressivity is lost as soon as we only allow positive (resp.

negative) preconditions or the cardinality of compared sets is bounded.

◮ Complexity:

[Satisfiability] (consistency) is PSPACE-complete.

[Dominance] is PSPACE-complete.

Conclusion: a very expressive and compact language, at the price of a high computational complexity. Is it really useful in practice?

46 / 62 Introduction to computational social choice

slide-111
SLIDE 111

Responsive ordinal preferences

A restricted setting...

47 / 62 Introduction to computational social choice

slide-112
SLIDE 112

Responsive ordinal preferences

A restricted setting...

◮ We assume that the preferences are ordinal. ◮ Restriction: each agent specifies a linear order ⊲ on O (single

  • bjects)

A : a ⊲ b ⊲ c ⊲ d

47 / 62 Introduction to computational social choice

slide-113
SLIDE 113

Responsive ordinal preferences

A restricted setting...

◮ We assume that the preferences are ordinal. ◮ Restriction: each agent specifies a linear order ⊲ on O (single

  • bjects)

A : a ⊲ b ⊲ c ⊲ d Problem: How to compare subsets of objects ? e.g abc

?

≺≻ ab; ab

?

≺≻ ac ?

47 / 62 Introduction to computational social choice

slide-114
SLIDE 114

Responsive ordinal preferences

A restricted setting...

◮ We assume that the preferences are ordinal. ◮ Restriction: each agent specifies a linear order ⊲ on O (single

  • bjects)

A : a ⊲ b ⊲ c ⊲ d Problem: How to compare subsets of objects ? e.g abc

?

≺≻ ab; ab

?

≺≻ ac ?

  • 1. Assume monotonicity e.g abc ≻ ab.
  • 2. Assume responsiveness: if (X ∪ Y) ∩ Z = ∅ then X ≻ Y iff

X ∪ Z ≻ Y ∪ Z. e.g ab ≻ ac.

47 / 62 Introduction to computational social choice

slide-115
SLIDE 115

Responsive ordinal preferences

A restricted setting...

◮ We assume that the preferences are ordinal. ◮ Restriction: each agent specifies a linear order ⊲ on O (single

  • bjects)

A : a ⊲ b ⊲ c ⊲ d Problem: How to compare subsets of objects ? e.g abc

?

≺≻ ab; ab

?

≺≻ ac ?

  • 1. Assume monotonicity e.g abc ≻ ab.
  • 2. Assume responsiveness: if (X ∪ Y) ∩ Z = ∅ then X ≻ Y iff

X ∪ Z ≻ Y ∪ Z. e.g ab ≻ ac. Actually this is a restricted version of CI-nets.

47 / 62 Introduction to computational social choice

slide-116
SLIDE 116

Example

◮ A : a ⊲ b ⊲ c ⊲ d ◮ Responsiveness ◮ Monotonicity

abcd abc abd acd bcd ab ac ad bc bd cd a b c d ∅

48 / 62 Introduction to computational social choice

slide-117
SLIDE 117

Example

◮ A : a ⊲ b ⊲ c ⊲ d ◮ Responsiveness ◮ Monotonicity

abcd abc abd acd bcd ab ac ad bc bd cd a b c d ∅

48 / 62 Introduction to computational social choice

slide-118
SLIDE 118

Example

◮ A : a ⊲ b ⊲ c ⊲ d ◮ Responsiveness ◮ Monotonicity

abcd abc abd acd bcd ab ac ad bc bd cd a b c d ∅

48 / 62 Introduction to computational social choice

slide-119
SLIDE 119

Example

◮ A : a ⊲ b ⊲ c ⊲ d ◮ Responsiveness ◮ Monotonicity

abcd abc abd acd bcd ab ac ad bc bd cd a b c d ∅

48 / 62 Introduction to computational social choice

slide-120
SLIDE 120

Example

◮ A : a ⊲ b ⊲ c ⊲ d ◮ Responsiveness ◮ Monotonicity

abcd abc abd acd bcd ab ac ad bc bd cd a b c d ∅

48 / 62 Introduction to computational social choice

slide-121
SLIDE 121

Dominance

Proposition

X ≻A Y ⇔ ∃ an injective mapping of improvements Y → X.

49 / 62 Introduction to computational social choice

slide-122
SLIDE 122

Dominance

Proposition

X ≻A Y ⇔ ∃ an injective mapping of improvements Y → X. Example: A = a ⊲ b ⊲ c ⊲ d ⊲ e ⊲ f

◮ { a , c , d } ≻A { b , c , e } ◮ { a , d , e } and { b , c , f } are incomparable. ◮ {a, c, d} and {b, c, e, f} are incomparable.

49 / 62 Introduction to computational social choice

slide-123
SLIDE 123

Dominance

Proposition

X ≻A Y ⇔ ∃ an injective mapping of improvements Y → X. Example: A = a ⊲ b ⊲ c ⊲ d ⊲ e ⊲ f

◮ { a , c , d } ≻A { b , c , e } ◮ { a , d , e } and { b , c , f } are incomparable. ◮ {a, c, d} and {b, c, e, f} are incomparable.

49 / 62 Introduction to computational social choice

slide-124
SLIDE 124

Dominance

Proposition

X ≻A Y ⇔ ∃ an injective mapping of improvements Y → X. Example: A = a ⊲ b ⊲ c ⊲ d ⊲ e ⊲ f

◮ { a , c , d } ≻A { b , c , e } ◮ { a , d , e } and { b , c , f } are incomparable. ◮ {a, c, d} and {b, c, e, f} are incomparable.

?

49 / 62 Introduction to computational social choice

slide-125
SLIDE 125

Dominance

Proposition

X ≻A Y ⇔ ∃ an injective mapping of improvements Y → X. Example: A = a ⊲ b ⊲ c ⊲ d ⊲ e ⊲ f

◮ { a , c , d } ≻A { b , c , e } ◮ { a , d , e } and { b , c , f } are incomparable. ◮ {a, c, d} and {b, c, e, f} are incomparable.

[Brams et al., 2004, Brams and King, 2005]

49 / 62 Introduction to computational social choice

slide-126
SLIDE 126

Envy-freeness

Fairness...

50 / 62 Introduction to computational social choice

slide-127
SLIDE 127

Envy-freeness

Fairness... Envy-freeness: ≻1, . . . , ≻n total strict orders, allocation π. π envy-free ⇔ ∀i, j, π(i) ≻i π(j)

50 / 62 Introduction to computational social choice

slide-128
SLIDE 128

Envy-freeness

Fairness... Envy-freeness: ≻1, . . . , ≻n total strict orders, allocation π. π envy-free ⇔ ∀i, j, π(i) ≻i π(j) When ≻1, . . . , ≻n are partial orders?

50 / 62 Introduction to computational social choice

slide-129
SLIDE 129

Envy-freeness

Fairness... Envy-freeness: ≻1, . . . , ≻n total strict orders, allocation π. π envy-free ⇔ ∀i, j, π(i) ≻i π(j) When ≻1, . . . , ≻n are partial orders? Envy-freeness becomes a modal notion

Possible and necessary Envy-freeness

◮ π is Possibly Envy-Free iff for all i, j, we have π(j) ≻i π(i); ◮ π is Necessary Envy-Free iff for all i, j, we have π(i) ≻i π(j).

50 / 62 Introduction to computational social choice

slide-130
SLIDE 130

Pareto-efficiency

Efficiency...

51 / 62 Introduction to computational social choice

slide-131
SLIDE 131

Pareto-efficiency

Efficiency...

◮ Complete allocation. ◮ Pareto-efficiency

51 / 62 Introduction to computational social choice

slide-132
SLIDE 132

Pareto-efficiency

Efficiency...

Classical Pareto dominance

π′ dominates π if for all i, π′(i) i π(i) and for some j, π′(j) ≻j π(j) Extended to possible and necessary Pareto dominance.

◮ π is possibly Pareto-efficient (PPE) if there exists no allocation

π′ such that π′ necessarily dominates π.

◮ π′ is necessarily Pareto-efficient (NPE) if there exists no

allocation π′ such that π′ possibly dominates π.

51 / 62 Introduction to computational social choice

slide-133
SLIDE 133

Envy-freeness and efficiency

complete PPE NPE Efficiency

52 / 62 Introduction to computational social choice

slide-134
SLIDE 134

Envy-freeness and efficiency

complete PPE NPE Efficiency PEF NEF Fairness

52 / 62 Introduction to computational social choice

slide-135
SLIDE 135

Envy-freeness and efficiency

complete PPE NPE Efficiency PEF X X X NEF X X X Fairness

52 / 62 Introduction to computational social choice

slide-136
SLIDE 136

Envy-freeness and efficiency

complete PPE NPE Efficiency PEF X X X NEF X X X Fairness Envy-freeness and efficiency cannot always be satisfied simultaneously

52 / 62 Introduction to computational social choice

slide-137
SLIDE 137

Envy-freeness and efficiency

complete PPE NPE Efficiency PEF X X X NEF X X X Fairness Envy-freeness and efficiency cannot always be satisfied simultaneously Questions:

◮ under which conditions is it guaranteed that there exists a

allocation that satisfies Fairness and Efficiency ?

◮ how hard it is to determine whether such an allocation exists?

52 / 62 Introduction to computational social choice

slide-138
SLIDE 138

Results

complete PPE NPE PEF P

(algorithm)

P

(algorithm)

? NEF NP-complete NP-complete

(P for 2 agents)

NP-hard

(Σp

2-completeness

conjectured)

53 / 62 Introduction to computational social choice

slide-139
SLIDE 139

Results

complete PPE NPE PEF P

(algorithm)

P

(algorithm)

? NEF NP-complete NP-complete

(P for 2 agents)

NP-hard

(Σp

2-completeness

conjectured) ◮ Results refined and extended by [Aziz et al., 2015], to the case of

preferences with indifferences

◮ Notion of stochastic dominance

53 / 62 Introduction to computational social choice

slide-140
SLIDE 140

Distributed allocation

When many agents are involved, a centralized allocation may not be the most adapted solution (elicitation, computation time...). Idea of distributed allocation:

◮ Start from an initial allocation ◮ Let the agents negotiate by swapping (bundles of) resources.

Different kinds of deals:

◮ with / without money ◮ bounded in the number of resources involved ◮ rational ◮ ... 54 / 62 Introduction to computational social choice

slide-141
SLIDE 141

Convergence properties

◮ Good news: for any separable collective criterion (utilitarian SW,

leximin-egalitarian SW...), any sequence of locally improving deals eventually results in a socially optimal allocation

55 / 62 Introduction to computational social choice

slide-142
SLIDE 142

Convergence properties

◮ Good news: for any separable collective criterion (utilitarian SW,

leximin-egalitarian SW...), any sequence of locally improving deals eventually results in a socially optimal allocation

◮ Bad news:

◮ Any kind of restriction on the types of deals ruins this

convergence property

◮ The sequence of deals can be exponentially long

[Sandholm, 1998, Endriss et al., 2006, Chevaleyre et al., 2010]

55 / 62 Introduction to computational social choice

slide-143
SLIDE 143

Sequential allocation

Between fully centralized allocation and fully distributed allocation, a very simple procedure...

56 / 62 Introduction to computational social choice

slide-144
SLIDE 144

Sequential allocation

Between fully centralized allocation and fully distributed allocation, a very simple procedure... Ask the agents to pick in turn their most preferred object among the remaining ones, according to some predefined sequence.

Example

3 agents A, B, C, 6 objects, sequence ABCCBA → A chooses first (and takes her preferred object), then B, then C, then C again...

56 / 62 Introduction to computational social choice

slide-145
SLIDE 145

Problems in Sequential Allocation

◮ Best sequence: We “feel” that ABCCBA is fairer than AABBCC...

→ What is the fairest sequence ?

57 / 62 Introduction to computational social choice

slide-146
SLIDE 146

Problems in Sequential Allocation

◮ Best sequence: We “feel” that ABCCBA is fairer than AABBCC...

→ What is the fairest sequence ? Under some independence assumptions, classical utilitarianism, alternating sequences are optimal for two agents [Kalinowski et al., 2013a].

57 / 62 Introduction to computational social choice

slide-147
SLIDE 147

Problems in Sequential Allocation

◮ Best sequence: We “feel” that ABCCBA is fairer than AABBCC...

→ What is the fairest sequence ? Under some independence assumptions, classical utilitarianism, alternating sequences are optimal for two agents [Kalinowski et al., 2013a]. Egalitarianism: p n = 2 n = 3 4 ABBA ABCC 5 6 8 10

57 / 62 Introduction to computational social choice

slide-148
SLIDE 148

Problems in Sequential Allocation

◮ Best sequence: We “feel” that ABCCBA is fairer than AABBCC...

→ What is the fairest sequence ? Under some independence assumptions, classical utilitarianism, alternating sequences are optimal for two agents [Kalinowski et al., 2013a]. Egalitarianism: p n = 2 n = 3 4 ABBA ABCC 5 AABBB ABCCB 6 8 10

57 / 62 Introduction to computational social choice

slide-149
SLIDE 149

Problems in Sequential Allocation

◮ Best sequence: We “feel” that ABCCBA is fairer than AABBCC...

→ What is the fairest sequence ? Under some independence assumptions, classical utilitarianism, alternating sequences are optimal for two agents [Kalinowski et al., 2013a]. Egalitarianism: p n = 2 n = 3 4 ABBA ABCC 5 AABBB ABCCB 6 ABABBA ABCCBA 8 ABBABAAB AACCBBCB 10 ABBAABABBA ABCABBCACC

57 / 62 Introduction to computational social choice

slide-150
SLIDE 150

Strategical Issues

◮ Manipulation: I know all the other agents’ preferences. At my

turn, can I choose not to pick my preferred item to get a better share?

58 / 62 Introduction to computational social choice

slide-151
SLIDE 151

Strategical Issues

◮ Manipulation: I know all the other agents’ preferences. At my

turn, can I choose not to pick my preferred item to get a better share?

◮ First result: if I want S, I can find a manipulation to get it if it is

possible.

◮ Idea: greedy algorithm (pick the items in the same order of the

  • thers preferences)

◮ Observation: reminds the algorithm for Borda manipulation? 58 / 62 Introduction to computational social choice

slide-152
SLIDE 152

Strategical Issues

◮ Manipulation: I know all the other agents’ preferences. At my

turn, can I choose not to pick my preferred item to get a better share?

◮ First result: if I want S, I can find a manipulation to get it if it is

possible.

◮ Idea: greedy algorithm (pick the items in the same order of the

  • thers preferences)

◮ Observation: reminds the algorithm for Borda manipulation?

◮ Optimal manipulation: P for two agents

[Bouveret and Lang, 2014], NP-complete for more [Aziz et al., 2016].

58 / 62 Introduction to computational social choice

slide-153
SLIDE 153

Strategical Issues

◮ Manipulation: I know all the other agents’ preferences. At my

turn, can I choose not to pick my preferred item to get a better share?

◮ First result: if I want S, I can find a manipulation to get it if it is

possible.

◮ Idea: greedy algorithm (pick the items in the same order of the

  • thers preferences)

◮ Observation: reminds the algorithm for Borda manipulation?

◮ Optimal manipulation: P for two agents

[Bouveret and Lang, 2014], NP-complete for more [Aziz et al., 2016].

◮ Game-theoretic issues: Subgame-Perfect Nash Equilibrium,

Simple Nash Equilibrium...

[Kalinowski et al., 2013b, Kohler and Chandrasekaran, 1971]

58 / 62 Introduction to computational social choice

slide-154
SLIDE 154

Outline

A short history of COMSOC Computational aspects of voting Of Hard and Easy Rules Manipulation Other topics Fair Division About preference representation Distributed allocation Sequential allocation Conclusion

59 / 62 Introduction to computational social choice

slide-155
SLIDE 155

Take-away message

◮ COMSOC: Social Choice meets Computer Science ◮ A lot of space for problems related to IA and CS in general:

algorithmics, complexity, preference / uncertainty representation and reasoning, learning...

◮ A young (≈ 15-20 years) but active field.

60 / 62 Introduction to computational social choice

slide-156
SLIDE 156

Future Trends?

Computational Social choice becomes more and more practical...

61 / 62 Introduction to computational social choice

slide-157
SLIDE 157

Future Trends?

Computational Social choice becomes more and more practical...

http://www.spliddit.org/ http://whale3.noiraudes.net/

61 / 62 Introduction to computational social choice

slide-158
SLIDE 158

Future Trends?

Computational Social choice becomes more and more practical...

http://www.spliddit.org/ http://whale3.noiraudes.net/

Not only theroretically good solutions, but efficient solution that work in practice (running time, preference elicitation...)

61 / 62 Introduction to computational social choice

slide-159
SLIDE 159

Further readings

◮ Ulle Endriss’s web page. A lot of resources:

◮ http://www.illc.uva.nl/COMSOC/ ◮ https://staff.fnwi.uva.nl/u.endriss/teaching/comsoc/

◮ Some tutorials by Jérôme Lang (on which this presentation is

based)

◮ Handbook of Computational Social Choice (2016). Brandt, Felix,

Conitzer, Vincent, Endriss, Ulle, Lang, Jérôme et Procaccia, Ariel D., éditeurs. Cambridge University Press.

◮ Economics and Computation. An Introduction to Algorithmic

Game Theory, Computational Social Choice and Fair Division (2016). Rothe, Jörg, éditeur. Springer.

◮ Panorama de l’IA (2014), volume 1, chapitre 15 (Systèmes

Multiagents : Décision Collective). Marquis, Pierre, Papini, Odile et Prade, Henri, éditeurs. Cepaduès.

62 / 62 Introduction to computational social choice

slide-160
SLIDE 160

Aziz, H., Bouveret, S., Lang, J., and MacKenzie, S. (2016). Manipulating picking sequences. Working paper. Aziz, H., Gaspers, S., Mackenzie, S., and Walsh, T. (2015). Fair assignment of indivisible objects under ordinal preferences. Artificial Intelligence, 227:71–92. Bouveret, S. and Lang, J. (2014). Manipulating picking sequences. In Proceedings of the 21st European Conference on Artificial Intelligence (ECAI’14), Prague, Czech Republic. IOS Press. Brams, S. J., Edelman, P. H., and Fishburn, P. C. (2004). Fair division of indivisible items. Theory and Decision, 5(2). Brams, S. J. and King, D. (2005). Efficient fair division – help the worst off or avoid envy? Rationality and Society, 17(4).

62 / 62 Introduction to computational social choice

slide-161
SLIDE 161

Brandt, F., Geist, C., and Peters, D. (2016). Optimal bounds for the no-show paradox via sat solving. In Proceedings of AAMAS’2016. Chevaleyre, Y., Endriss, U., and Maudet, N. (2010). Simple negotiation schemes for agents with simple preferences: Sufficiency, necessity and maximality. Journal of Autonomous Agents and Multiagent Systems, 20(2):234–259. Conitzer, V., Lang, J., and Xia, L. (2011). Hypercubewise preference aggregation in multi-issue domains. In Proceedings of the 22nd International Joint Conference on Artificial Intelligence (IJCAI’11), Barcelona, Spain. Endriss, U., Maudet, N., Sadri, F., and Toni, F. (2006). Negotiating socially optimal allocations of resources. Journal of Artificial Intelligence Research, 25:315–348. Kalinowski, T., Narodytska, N., and Walsh, T. (2013a).

62 / 62 Introduction to computational social choice

slide-162
SLIDE 162

A social welfare optimal sequential allocation procedure. In Proceedings of IJCAI 2013. Kalinowski, T., Narodytska, N., Walsh, T., and Xia, L. (2013b). Strategic behavior when allocating indivisible goods sequentially. In Proceedings of AAAI’13. Kohler, D. A. and Chandrasekaran, R. (1971). A class of sequential games. Operations Research, 19(2):270–277. Lang, J. and Xia, L. (2009). Sequential composition of voting rules in multi-issue domains. Mathematical Social Sciences, 57(3):304–324. Li, M., Vo, Q. B., and Kowalczyk, R. (2011). Majority-rule-based preference aggregation on multi-attribute domains with cp-nets. In Proceedings of AAMAS’11. Nipkow, T. (2009).

62 / 62 Introduction to computational social choice

slide-163
SLIDE 163

Social choice theory in hol. Journal of Automated Reasoning, 43(3):289–304. Sandholm, T. W. (1998). Contract types for satisficing task allocation: I. theoretical results. In Sen, S., editor, Proceedings of the AAAI Spring Symposium: Satisficing Models, pages 68–75, Menlo Park, California. AAAI Press. Xia, L., Conitzer, V., and Lang, J. (2008). Voting on multiattribute domains with cyclic preferential dependencies. In Proceedings of the 23rd AAAI Conference on Artificial Intelligence (AAAI-08), pages 202–207.

62 / 62 Introduction to computational social choice