420 likes | 524 Views
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.
E N D
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: AB, AC, BC, ABC • 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 = ( w1, …, wn ): integers in binary (unless stated otherwise) • threshold T • a coalition J is winning if ∑ iJ wi ≥ T • value of a coalition: v(J)=1 if J wins, else v(J)=0 • imputation: p = (p1, …, pn) s.t. pi ≥ 0, p1 + … + pn = 1 • notation: w(J) = ∑iJ wi , p(J) = ∑iJ pi
The “most fair” imputation: Shapley value Shapley value of agent i: fi = a fraction of all permutations of n agents for which i is pivotal ….. i ….. • Axioms: • efficiency: Sifi= 1 • symmetry • dummy • additivity < T ≥ T monotonicity: wi≥ wj implies fi≥fj
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]: f2 = 1/2 [2,1,1; 4]: f2 = f3 = 1/3 2/3 > 1/2 ! • Another example: • [2, 2; 3]: f2 = 1/2 [2,1,1; 3]: f2 = f3 = 1/6 2/6 < 1/2 …
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: 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 ??? Single-winner elections vs. weighted voting
Choosing the threshold: bounds on ratio • Theorem: assume w1≤ … ≤ wn. 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 ≤ fn≤ 1 • lower bound: (1, …, 1, n) • T=1: everyone is equal • T=n: f1 =…=fn-1= 0, fn = 1
Choosing the threshold: bounds on difference • Theorem: assume w1≤ … ≤ wn. 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 ≤ fi≤ 1, 0 ≤ fi≤ 1/(n-i+1) • lower bound: (1, 2, 4, …, 2n-1) • T=2i: f1 =…=fi= 0, fi =…=fn= 1/(n-i+1)
Separating the players • Suppose wi < wj • We have fi≤fj • Can we ensure fi<fj ? • yes: set T = wj • Can we ensure fi=fj? • yes: set T = wi
Making a given player a dummy • w, w1≤ … ≤ wn • Claim: player 0 is never a dummy iff S i < t wi + w ≥ wt for any t = 1, …, n • Proof: =>: if S i < t wi + w < wt for some t, set T = wt <=: T w1 w1+w2 w1+… +wn
Computational complexity • Given T1, T2 and a player i, is T1 better for i than T2? • 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 emptyLemma: the core is empty <=> no player belongs to all winning coalitions pj > 0 J p(J) < 1
Relaxing the Notion of the Core • e-core: p is in the e-core iff for any Jp(J) ≥ v(J) - e • each winning coalition gets at least 1- e • nonempty for large enoughe (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 winningJ • for any e’ < e there is no p s.t. p(J) ≥ 1 - e’ for any winningJ
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: wi are given in binary, • poly-time algorithm <=> runs in time poly (n, log max wi) • What if weights are small? • formally, the weights are given in unary • we are happy with algorithms that run in time poly (n, max wi)
Algorithm For the Least Core maxC p1+…+ pn = 1 pi≥ 0 for all i = 1, …, n ∑ iJpi ≥ C 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: LPs 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 wi, 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≥ ½ • ½-core not empty (hence least core = ½-core): • p1 = (1/4, 1/4, 1/6, 1/6, 1/6) p1(ab) = ½, p1(cde) = ½ , p1(J) > ½ for other winning coalitions • p2 = (1/3, 1/6, 1/6, 1/6, 1/6) p2(ab) = ½, p2(cde) = ½ , p2(bcd) = … = p2(bde) = ½ p2(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(J1) -v(J1), p(J2) -v(J2), …, p(J2n) - v(J2n) 2n numbers • Nucleolus: the imputation x that corresponds to lexicographically maximal 2n-vector • always in the least core winning coalitions: v(J) = 1, p(J) - v(J) ≤ 0 losing coalitions: v(J) = 0, p(J) - v(J) ≥ 0
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 wi < 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 (w1i, …, wki) • vector of thresholds T1, …, Tk • J wins if w1(J) ≥ T1, …, wk(J) ≥ Tk • 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) • T1=T2=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 • w1+w2≥ T, w3+w4≥ T • w1+w3 < T, w2+w4< T contradiction!
Equivalence • k1-vector weighted voting game G1 • k2-vector weighted voting game G2 • Question: are G1 and G2equivalent (have the same set of winning coalitions)? • NP-hard • even if k1 = k2 = 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 Gminimal, 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) • k1-vector weighted voting game G1 • Question: is G1minimum, i.e., is there a k2-vector weighted voting game G2 with k2 < k1 that is equivalent to G1? • NP-hard • even if k1 = 2 • pseudopolynomial algorithm for checking whether G1 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