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
• 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
• 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
• 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
• 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’ …
• 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
• 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)
• 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
?
?
• 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
• 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
• 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
• 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
• 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
)
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
• 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
• 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…
• 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
• 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)
• 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
• 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!
• 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
• 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
• 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
• 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
• 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
• 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
• 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