Weighted voting games

advertisement

Manipulation, Control, and Beyond:

Computational Issues in

Weighted Voting Games

Edith Elkind (U. of Southampton)

Based on joint work with:

Y.Bachrach, G. Chalkiadakis, P. Faliszewski,

N. R. Jennings, L. A. Goldberg, P. W. Goldberg,

M. Wooldridge, M. Zuckerman

Power of Coalitions

• Parties: A ( 45% ), B ( 45% ), C ( 10% )

• Need 50% to pass a bill

• Winning coalitions: A B , A C , B C , A B C

• A , B , and C have equal power

• Given a budget K , what is the right way to distribute it between A , B , and C ?

– by weight: 0.45K

, 0.45K

, 0.1K

– by power: K/3 , K/3 , K/3

Applications

• Systems of self-interested agents working together to achieve a goal

• Agent’s contribution = weight

• Suppose the goal is achieved

– agents have generated a surplus

– how should they divide it?

– one possible answer: according to voting power

Weighted Voting Games: A

Formal Model

• n agents: I = { 1 , …, n }

• vector of weights w = ( w

1

, …, w n

): integers in binary (unless stated otherwise)

• threshold T

• a coalition J is winning if ∑ i  J w i

≥ T

• value of a coalition: v(J)=1 if J wins, else v(J)=0

• imputation : p = (p

1

, …, p n

) s.t. p i

≥ 0 , p

1

+ … + p n

= 1

• notation: w(J) = ∑ i  J w i

, p(J) = ∑ i  J p i

The “most fair” imputation:

Shapley value

Shapley value of agent i : f i

= a fraction of all permutations of n agents for which i is pivotal

…..

< T

≥ T i …..

Axioms:

• efficiency: S i

• symmetry

• dummy

• additivity f i

= 1 monotonicity: w i

≥ w j implies f i

≥ f j

Plan of the talk

• Manipulation of Shapley value

– by voters: weight-splitting

– by center: changing the threshold

• Stability in weighted voting games

– e

-core, least core, nucleolus

• Vector voting games

Plan of the talk

• Manipulation of Shapley value

– by voters: weight-splitting

– by center: changing the threshold

• Stability in weighted voting games

– e

-core, least core, nucleolus

• Vector voting games

Dishonest voters

(Bachrach, E., AAMAS’08)

• Can an agent increase his power by splitting his weight between two identities?

• Example:

– [2, 2; 4]: f

2

= 1/2 [2,1,1; 4]: f

2

= f

3

= 1/3

2/3 > 1/2 !

• Another example:

– [2, 2; 3]: f

2

= 1/2 [2,1,1; 3]: f

2

2/6 < 1/2 …

= f

3

= 1/6

Effects of manipulation: bad guys gain

• Theorem: an agent can increase his power by a factor of 2n/(n+1) , and this bound is tight

• Proof:

– lower bound:

[2, …, 2; 2n] → [2, …, 1, 1; 2n]:

1/n → 2/(n+1)

– upper bound: careful bookkeeping of permutations

Effects of manipulation: bad guys lose

• Theorem: an agent can decrease his power by a factor of (n+1)/2 , and this bound is tight

• Proof:

– l.b.: [2, …, 2; 2n-1] → [2, …, 1, 1; 2n-1]:

1/n → 2(n-1)!/(n+1)!

– u.b.: careful bookkeeping of permutations:

…. i ….

… i’ i’’ … … i’’ i’ …

Computational aspects

• Is computational hardness a barrier to manipulation?

• Theorem: it is NP-hard to check if a beneficial split exists

• computing Shapley value is #P-hard anyway…

– central authority may have more computational resources than a single agent

– an agent may want to increase his power even if he cannot compute it

Plan of the talk

• Manipulation of Shapley value

– by voters: weight-splitting

– by center: changing the threshold

• Stability in weighted voting games

– e

-core, least core, nucleolus

• Vector voting games

Single-winner elections vs. weighted voting

Single-winner elections:

• n voters, m candidates each voter has a preference order

• manipulation

– cheating by voters

• control

– cheating by center

• bribery

Weighted voting:

• n weighted voters, threshold T

• manipulation

– weight splitting/merging

• control

– changing the threshold

• bribery ???

Choosing the threshold: bounds on ratio

• Theorem: assume w

1

≤ … ≤ w n

. Changing T

– can change n ’s power by a factor of n , and this bound is tight

– for players 1, …, n-1 , the power can go from 0 to > 0 (no bound on ratio)

• Proof:

– upper bound: 1/n ≤ f n

≤ 1

– lower bound: (1, …, 1, n)

• T=1 : everyone is equal

• T=n : f

1

=…= f n-1

= 0 , f n

= 1

Choosing the threshold: bounds on difference

• Theorem: assume w

1

≤ … ≤ w n

. Changing T

– for n : can change the power by ≤ 1-1/n , and this bound is tight

– for i < n : can change the power by ≤ 1/(n-i+1) , and this bound is tight

• Proof:

– upper bound: 1/n ≤ f i

≤ 1 , 0 ≤

– lower bound: (1, 2, 4, …, 2 n-1 ) f i

• T=2 i : f

1

=…= f i

= 0 , f i

=…= f n

≤ 1/(n-i+1)

= 1/(n-i+1)

Separating the players

• Suppose w i

• We have f i

< w

≤ f j j

• Can we ensure f i

– yes: set T = w j

• Can we ensure f i

– yes: set T = w i

< f j

= f j

?

?

Making a given player a dummy

• w , w

1

≤ … ≤ w n

• Claim: player 0 is never a dummy iff

S i < t w i

+ w ≥ w t for any t = 1, …, n

• Proof:

=>: if

S i < t w i

+ w < w t for some t , set T = w t

<=: T w

1 w

1

+ w

2 w

1

+… + w n

Computational complexity

• Given T

1

, T

2 is T

1 and a player better for i than T

2

?

i ,

• NP-hard (reduction from “is i a dummy?”)

• PP-complete

– L is in PP if there exists an NP-machine M s.t. x  L iff M accepts w.p. ≥ ½

• Barrier to manipulation

• Pinpointed the exact complexity

Plan of the talk

• Manipulation of Shapley value

– by voters: weight-splitting

– by center: changing the threshold

• Stability in weighted voting games

– e

-core, least core, nucleolus

• Vector voting games

Good imputations: other criteria

• Fairness:

Shapley value , Banzhaf power index

• Stability: core

– p is in the core if for any J we have p(J) ≥ v(J)

– core can be empty

Lemma: the core is empty <=> no player belongs to all winning coalitions p j

> 0

J p(J) < 1

Relaxing the Notion of the Core

• e

-core: p is in the e

-core iff for any J p(J) ≥ v(J) e

– each winning coalition gets at least 1e

– nonempty for large enough e

(e.g., e

= 1 )

• least core: smallest non-empty e

-core

• if least core = e

- core

– there is a p s.t. p(J) ≥ 1 e for any winning J

– for any e ’ < e there is no p s.t. p(J) ≥ 1 e ’ for any winning J

Computational Issues :

Our Results (E., Goldberg, Goldberg, Wooldridge, AAAI’07)

Given a weighted voting game (I; w ; T)

• Is the core non-empty?

– poly-time: use the lemma

• Is the e

core non-empty?

• Is a given imputation p in the e

core ?

• Is a given imputation p in the least core ?

• Construct an imputation in the least core .

– p reductions from Partition

Computational Issues:

Our Results (E., Goldberg, Goldberg, Wooldridge, AAAI’07)

Given a weighted voting game (I; w ; T)

• Is the core non-empty?

– poly-time : use the lemma

• Is the e

core non-empty?

– coNP-hard

• Is a given imputation p in the e

core ?

– coNP-hard

• Is a given imputation p in the least core ?

– NP-hard

• Construct an imputation in the least core .

– NP-hard reductions from Partition

Pseudopolynomial Algorithms

• Hardness reduction from Partition assumes large weights

– recall: w i are given in binary ,

– poly-time algorithm <=> runs in time poly (n, log max w i

)

• What if weights are small ?

– formally, the weights are given in unary

– we are happy with algorithms that run in time poly (n, max w i

)

Algorithm For the Least Core

max C p

1

+…+ p n

= 1 p i

≥ 0

∑ i  J p for all i

≥ C i = 1, …, n for any J s.t. w(J) ≥ T linear program  exponentially many ineqs 

Claim: least core = (1 - C) -core

LPs and Separation Oracles

• Separation oracle :

– input: ( p , C)

– output: “yes” if ( p , C) satisfies the LP , violated constraint otherwise

• Claim: LP s with poly-time separation oracles can be solved in poly-time .

• Our case: given ( p , C) , is there a J with w(J) ≥ T , p(J) < C ?

– reduces to Knapsack => solvable in pseudopoly time

• Works for other problems listed above

Approximation Algorithms

• Back to large weights …

• Theorem: suppose least core = e

-core.

Then for any d we can compute e ’ s.t. e < e ’ < e+d and e ’ -core is non-empty in time poly (n, log max w i

, 1/ d

)

(FPTAS)

• Proof idea: use FPTAS for Knapsack inside the separation oracle

Refining the Notion of Least Core

I = { a , b , c , d , e }, w = { 3 , 3 , 2 , 2 , 2 }, T = 6

– 2 disjoint winning coalitions => e e ½

– ½ -core not empty (hence least core = ½ -core):

• p

1

= (1/4, 1/4, 1/6, 1/6, 1/6) p

1

( ab ) = ½, p

1

( cde ) = ½ ,

• p

2 p

1

( J ) > ½ for other winning coalitions

= (1/3, 1/6, 1/6, 1/6, 1/6) p

2

( ab ) = ½, p

2

( cde ) = ½ , p

2

( bcd ) = … = p

2

( bde ) = ½ p

2

( J ) > ½ for other winning coalitions

Some imputations in the least core are better than others…

Nucleolus

• Given an imputation p , order all coalitions by p(J)

v(J) ( min to max ) p(J

1

) -v(J

1

), p(J

2

) -v(J

2

), …, p(J

2 n

) - v(J

2 n

) 2 n numbers winning coalitions: v(J) = 1, p(J)

v(J) ≤ 0 losing coalitions: v(J) = 0, p(J)

v(J) ≥ 0

• Nucleolus : the imputation x that corresponds to lexicographically maximal 2 n -vector

– always in the least core

Computing Nucleolus

• Can be computed by solving n sequential exp-size linear programs

(similar to LP for the least core )

• Our result: NP-hard to compute

– not clear if it is in NP

• Pseudopolynomial algorithm for the least core does not seem to generalize 

• Approximation algorithm for the least core does not seem to generalize 

Computing Nucleolus:

Positive Results

• Can we approximate nucleolus payoffs by (normalized) weights ?

• NO for individual players: x(i) / w(i) can be arbitrarily small or arbitrarily large .

• YES for coalitions:

Theorem:

Suppose w i

< T for all i , T ≥ ½.

Then 1/2 ≤ x(J) / w(J) ≤ 2 for all coalitions J .

Also 1/2 ≤ x(J) / w(J) ≤ 3 for a larger class of games

(see the paper)

Plan of the talk

• Manipulation of Shapley value

– by voters: weight-splitting

– by center: changing the threshold

• Stability in weighted voting games

– e

-core, least core, nucleolus

• Vector voting games

k-vector weighted voting games

• EU: to pass a bill, need

– a certain number of countries AND

– a certain fraction of EU population

• Formal model:

– voter i has a vector of weights (w 1 i

, …, w k i

)

– vector of thresholds T 1 , …, T k

– J wins if w 1 (J) ≥ T 1 , …, w k (J) ≥ T k

• Any simple game can be represented as a k-vector weighted voting game

k-vector weighted voting games vs weighted voting games

• 2-vector weighted voting game G

– 4 players (9, 1), (1, 9), (5, 5), (5, 5)

– T

1

=T

2

=10

– {1, 2} and {3, 4} are winning coalitions

– {1, 3} and {2, 4} are losing coalitions

• G not equivalent to any weighted voting game

– w

1

+w

2

≥ T, w

3

+w

4

– w

1

+w

3

< T, w

2

+w

4

≥ T

< T contradiction!

Equivalence

• k

1

-vector weighted voting game G

1

• k

2

-vector weighted voting game G

2

• Question: are G

1 and G

2 equivalent

(have the same set of winning coalitions)?

• NP-hard

– even if k

1

= k

2

= 1 , or

– even if all weights are in {0, 1} , but not both:

• pseudopolynomial algorithm for k < C

Minimality (1/2)

• k -vector weighted voting game G

• Question: is G minimal , i.e., are all coordinates necessary?

• NP-hard

– even if k = 2 , or

– even if all weights are in {0, 1} , but not both:

• pseudopolynomial algorithm for k < C

Minimality (2/2)

• k

1

-vector weighted voting game G

1

• Question: is G

1 a k

2

-vector weighted voting game G with k

2

< k

1 minimum , i.e., is there that is equivalent to G

1

?

2

• NP-hard

– even if k

1

= 2

• pseudopolynomial algorithm for checking whether G

1 is equivalent to a weighted voting game (LP with a separation oracle)

Coalition Structures in Weighted Voting Games

• The work so far assumed that the grand coalition will form

– Shapley value: dividing a unit of profit

– core: stability of the grand coalition

• What if several winning coalitions can form simultaneously?

– plausible if T < w(I)/2

• Coalition structures: partitions of I

CS in WVGs: definitions

• coalition structire: CS = {C1, …, Ck}

• imputation for CS: p s.t. p(Ci) = 1 if w(Ci) ≥ T, p(Ci) = 0 if w(Ci) < T

– can be p(I)>1

• outcome: pair (CS, p )

• CS-core: (CS, p) is in the CS-core if

– p is an imputation for CS

– for any S w(S) ≥ T implies p(S) ≥ 1

Results

• coNP-complete to check if an outcome is in the

CS-core

– pseudopolynomial algorithm: reduction to KNAPSACK

• NP-hard to check if the CS-core is non-empty

– pseudopolynomial algorithm to check if, for given CS, there is a p s.t. (CS, p ) is in the CS-core

• linear program with KNAPSACK-based separation oracle

– can enumerate all coalitions, check if there is an appropriate imputation

• heuristics to speed up this process

Conclusions

• Weighted voting games: a model for multiagent systems

• Shapley value: well understood, but can be manipulated

• Other solution concepts ( e

-core , least core , nucleolus ) : progress on understanding computational complexity

• k-vector weighted voting games

– complexity of equivalence and minimality

Extensions and open problems

• False-name voting

– split into more than two identities

– Manipulation by merging

• how do you distribute gains from manipulation?

– Banzhaf power index

• Bribery in weighted voting games

• Computational complexity of the nucleolus

Download