Pseudo Polynomial Size LP Formulation for Calculating the Least Core Value of Weighted Voting Games
PPseudo Polynomial Size LP Formulationfor Calculating the Least Core Valueof Weighted Voting Games ∗ Tokyo Institute of Technology Masato TanakaTokyo Institute of Technology Tomomi MatsuiJanuary 28, 2021
Abstract
In this paper, we propose a pseudo polynomial size LP formulationfor finding a payoff vector in the least core of a weighted voting game.Both the number of variables and number of constraints in our formu-lation are bounded by O(
W n ) where W is the total sum of (integer)voting weights and n is the number of players. When we employ ourformulation, a commercial LP solver calculates a payoff vector in theleast core of practical weighted voting games in a few seconds.We also extend our approach to vector weighted voting games.Keywords: Weighted voting games; least core; linear programmingJEL classification: C61, C63, C71 This paper deals with a special class of simple games, called weighted votinggames , which constitute a familiar example of voting systems. In a weighted ∗ A preliminary version of this paper was presented at The 12th Annual Meeting ofthe Asian Association for Algorithms and Computation, April 19 - 21, 2019, Seoul, SouthKorea.This work was supported by JSPS KAKENHI Grant Numbers JP26285045, JP26242027,JP20K04973.We thank Kento Tanaka for extensive discussions. a r X i v : . [ c s . G T ] J a n oting game, each player has a voting weight (intuitively corresponding totheir contribution), and a coalition is winning if the sum of its members’weights meets or exceeds a given threshold.Over the years, many power indices of voting games have been proposedand studied, such as the Shapley-Shubik index [1], the Banzhaf index [2], theDeegan-Packle index [3]. The problem of computing the players’ power in-dices has received ample attention (see [4] for example) and its computationalcomplexity is well-understood [5, 6, 7, 8, 9].In this work, we focus on the solution concept, called the least core ,proposed by Maschler, Peleg, and Shapley [10] which is a natural relaxationof the core. Elkind et al. [11] discussed some computational issues relatedto the least core of a weighted voting game and provides an algorithm tocompute a payoff vector in the least core in pseudo-polynomial time. Theiralgorithm employs the ellipsoid method, and thus it is hard to implement inpractice.In this paper, we propose a pseudo-polynomial size LP formulation forfinding a payoff vector in the least core of a weighted voting game. Boththe number of variables and number of constraints of our formulation arebounded by O( W n ) where W is the total sum of (integer) voting weights and n is the number of players. Computational experiment shows the effectivenessand efficiency of the proposed formulation. In the last section, we also extendour approach to vector weighted voting games. Let N = { , , . . . , n } be a set of players . A weighted voting game G is definedby a sequence of positive integers G = [ q ; w , w , . . . , w n ], where we maythink of w i as the number of votes of player i and q as the quota needed for acoalition to win. In this paper, we assume that 0 < q ≤ w + w + · · · + w n . Acoalition S ⊆ N is called a winning coalition when the inequality q ≤ (cid:80) i ∈ S w i holds. The set of all the winning coalitions is denoted by W . A weightedvoting game gives a simple game ( N, v ) defined by a characteristic function v : 2 N → { , } ensuring that v ( S ) = 1 if and only if S ∈ W .In this paper, we discuss a solution concept, called the least core , of acharacteristic function game. Given a characteristic function game ( N, v ),a pre-imputation of (
N, v ) is a payoff vector x = ( x i | i ∈ N ) such that (cid:80) i ∈ N x i = v ( N ). The core of ( N, v ) is the set of pre-imputations that satisfy2hat the (cid:80) i ∈ S x i ≥ v ( S ) for all S ⊆ N . The ε - core of ( N, v ) is the set ofpre-imputations that satisfy that the (cid:80) i ∈ S x i ≥ v ( S ) − ε , ∀ S ⊆ N . The leastcore of ( N, v ) is its ε ∗ -core where ε ∗ = inf { ε | ε -core of ( N, v ) is non-empty } . It is easy to see that the least core of a weighted voting game is a set ofvectors x ∈ R N confirm that ( ε ∗ , x ) is optimal to the following problemP1: min. ε s.t. (cid:80) i ∈ S x i ≥ − ε ( ∀ S ∈ W ) , (cid:80) i ∈ N x i = 1 ,x i ≥ ∀ i ∈ N ) , where ε ∗ is the optimal value of P1 (see [12, 11]). The number of constraintsof P1 may be exponential in n . Thus, it is not easy to solve P1 directly.Elkind et al. [11] proposed a pseudo polynomial time algorithm, based onthe ellipsoid method, for finding an optimal solution to P1. In this section, we propose a new formulation for calculating a payoff vectorin the least core of a weighted voting game. For any positive integer α , [ α ]and [ α ] denote the set of integers { , , . . . , α } and { , , . . . , α } , respectively.Here we note that the set of players N = [ n ]. We define that W = (cid:80) ni =1 w i .We introduce an acyclic directed graph Γ = ( V, A ) with a vertex set V =[ n ] × [ W ] and an arc set A = A ∪ A ∪ · · · ∪ A n defined by A = { (( i − , α ) , ( i, α )) | ( i, α ) ∈ [ n ] × [ W ] } ,A i = { (( i − , α ) , ( i, α + w i )) | ∀ α ∈ [ W − w i ] } ( ∀ i ∈ N = [ n ]) . We define a specified set of vertices T = { ( n, α ) ⊆ V | q ≤ α } . The vertex(0 , ∈ V is called the source and denoted by s . Figure 1 shows an exampleof Γ. A directed path in Γ from the source s = (0 ,
0) to a vertex in T iscalled an s - T path. It is easy to see that there exists a bijection between W and a set of s - T paths.Given a vector x ∈ R N , we introduce an arc length function w x : A → R defined by w x ( a ) = (cid:26) a ∈ A ) ,x i (if a ∈ A i ) . G = [5; 2 , , , ε, x ) satisfies (cid:80) i ∈ S x i ≥ − ε ( ∀ S ∈ W )if and only if the length (defined by w x ) of a shortest s - T path is greaterthan or equal to 1 − ε .Here, we employ a linear programming formulation for a shortest pathproblem. We introduce a vector of variables ( y ( v ) | v ∈ V ) and an artificialvariable y T . Then, we have a linear programming problemD( x ) : max . y T − y ( s ) , s . t . y ( v ) − y ( u ) ≤ ∀ ( u, v ) ∈ A ) ,y ( v ) − y ( u ) ≤ x i ( ∀ i ∈ N, ∀ ( u, v ) ∈ A i ) ,y ( v ) = y T ( ∀ v ∈ T ) . Here we note that problem D( x ) is the dual problem of an ordinary linearprogramming formulation for the shortest path problem (see [13] Section 5.4for example).Since problem D( x ) is a maximization problem, the length of an s - T shortest path is greater than or equal to 1 − ε if and only if there exists afeasible solution of D( x ) satisfying y T − y ( s ) ≥ − ε . Thus, x ∈ R N is inthe least core if and only if x is a subvector of an optimal solution to the4ollowing problem;P2: min. ε s.t. y T − y ( s ) ≥ − ε,y ( v ) − y ( u ) ≤ ∀ ( u, v ) ∈ A ) ,y ( v ) − y ( u ) ≤ x i ( ∀ i ∈ N, ∀ ( u, v ) ∈ A i ) ,y ( v ) = y T ( ∀ v ∈ T ) , (cid:80) i ∈ N x i = 1 ,x i ≥ ∀ i ∈ N ) , where ε , y T , { y ( v ) | v ∈ V } and { x i | i ∈ N } are continuous variables. Herewe note that x is a fixed vector in D( x ) and a vector of variables in P2.The number of variables and the number of constraints in P2 are boundedby O( W n ). Thus, a polynomial time algorithm for general linear program-ming problems solves P2 and finds a payoff vector in the least core in pseudopolynomial time.
This section reports the results of our preliminary numerical experiments. Allthe experiments were conducted on a PC running the Windows 10 Pro op-erating system with an Intel(R) Core(TM) i7-8700 @3.19GHz processor and16 GB RAM. All instances were solved using CPLEX 12.8.0.0 implementedin Python 3.6.7.A weighted voting game reported in [14] (Section 12.4) for a voting processin the United States has a quota and a vector of weights[270; 45 , , , , , , , , , , , , , , , , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , , , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , , . . . , (cid:124) (cid:123)(cid:122) (cid:125) , where n = 51 . We employed the above data and solved problem P2. The computationaltime is 2.56 seconds and the optimal value ε ∗ is equal to 0 . · · · . Theobtained vector in the least core is proportional to the vector of voting weightsensure that the total sum is equal to 1.5 game of the power of the countries in the EU Council [15, 16] with 27players is defined by[255; 29 , , , , , , , , , , , , , , , , , , , , , , , , , , . In this case, the computational time for solving P2 is 0.06 seconds and theoptimal value ε ∗ is equal to 0 . · · · . As in the case of the voting processin the United States, the obtained vector in the least core is proportionalto the vector of voting weights. Here we note that a vector in the leastcore is not necessarily unique, and thus vectors “obtained” by solving P2 areproportional to the voting weights in the above two cases.We give an additional experiment of checking whether a vector in theleast core is proportional to a given vector of voting weights. (In general,this property does not hold. We need only to recall examples of dummyplayers with positive voting weights.) We set the number of players at n ∈{ , , , , } and generated 100 vectors of weights for each n . A votingweight w i for each player i is chosen uniformly at random from the set ofintegers { , , . . . , } . For each generated vector of weights, we tested all thecases that a quota q is equal to an integer satisfying (1 / W ≤ q ≤ (3 / W .Table 1 shows the results of our experiment. The rows denoted by “ (cid:107) weights” (and “ (cid:54) (cid:107) weights”) show the number of instances satisfyingthat the obtained vector in the least core is (not) proportional to the votingweights, respectively. The row denoted by “ratio [%]” shows the ratio of thenumber of instances in the row “ (cid:107) weights” to the total number ofgenerated instances. Surprisingly, when n = 18, all the generated instancessatisfy that the obtained vector in the least core is proportional to the votingweights. Our results indicates a property of the nucleolus of weighted votinggames shown by Kurz, Napel, and Nohan [17], who proved that under someassumptions, when the relative weight of every player tends to zero, thenucleolus converges to a vector proportional to the voting weights. In this section, we discuss a case of vector weighted voting games, briefly.Chalkiadakis, Elkind, and Wooldridge [12] summarized previous works re-lated to vector weighted voting games.6able 1: A payoff vector in the least core and voting weights. (cid:107) weights 46 89 1088 4182 7251 9060 (cid:54) (cid:107) weights 2490 3792 3987 1833 167 0ratio [%] 1.81 2.29 21.44 69.53 97.75 100Let G = [ q ; w , w , . . . , w n ] and G = [ q ; w , w , . . . , w n ] be a pairof weighted voting games defined on a mutual set of players N = { , , . . . , n } .The corresponding sets of winning coalitions are denoted by W and W ,respectively. An intersection of two games G and G is a simple game( N, v ∧ ) defined by a characteristic function v ∧ : 2 N → { , } satisfying that v ∧ ( S ) = 1 if and only if S ∈ W ∩ W .For calculating a vector in the least core of ( N, v ∧ ), we only need tochange the definition of directed graph Γ = ( V, A ) as follows. We introducea vertex set V = [ n ] × [ W ] × [ W ] where W k = (cid:80) ni =1 w ki ( k ∈ { , } ). Anarc set A = A ∪ A ∪ · · · ∪ A n is defined by A = { (( i − , α, β ) , ( i, α, β )) | ( i, α, β ) ∈ [ n ] × [ W ] × [ W ] } ,A i = (cid:26) (( i − , α, β ) , ( i, α + w i , β + w i )) (cid:12)(cid:12)(cid:12)(cid:12) ∀ α ∈ [ W − w i ] , ∀ β ∈ [ W − w i ] (cid:27) , for each i ∈ N = [ n ]. We also set T = { ( n, α, β ) ⊆ V | q ≤ α and q ≤ β } . Then, it is clear to see that problem P2 finds a payoff vector in the least coreof a simple game (
N, v ∧ ).A union of two games G and G is a simple game ( N, v ∨ ) defined by acharacteristic function v ∨ : 2 N → { , } satisfying that v ∨ ( S ) = 1 if and onlyif S ∈ W ∪ W . We can deal with this case by setting T = { ( n, α, β ) ⊆ V | q ≤ α or q ≤ β } . It is easy to see that we can extend our formulation to a voting gameobtained by combining three or more weighted voting games according to acomplex Boolean formula.
In this paper, we proposed a pseudo polynomial size linear programmingformulation for calculating a payoff vector in the least core of a weighted7oting game. When we employ our formulation, a commercial solver findsa payoff vector in the least core of practical weighted voting games in a fewseconds. Our computational experiences indicate that a vector in the leastcore is proportional to the voting weights in many cases.We also extended our formulation to vector weighted voting games. Fu-ture work is needed to evaluate the computational performance of the for-mulation for vector weighted voting games.
References [1] L. S. Shapley, M. Shubik, A method for evaluating the distribution ofpower in a committee system, The American Political Science Review48 (3) (1954) 787–792.[2] J. F. Banzhaf III, Weighted voting doesn’t work: A mathematical anal-ysis, Rutgers L. Rev. 19 (1964) 317.[3] J. Deegan, E. W. Packel, A new index of power for simple nn