Banzhaf Power Index

Let’s continue from the previous voting weights of five shareholders. This time, we calculate the power in the weighted voting system and determine the critical players. We use R functions to simplify the work. But first, the voting system:
[51: 15, 25, 10, 30, 20]
The shorthand notation indicates that 51% is required to reach the quota, and the players 1 to 5 have 15%, 25%, 10%, 30%, and 20% voting weights, respectively.

The calculation of the Banzhaf Power Index is as follows.

  1. List all winning coalitions
  2. In each collision, identify the critical players
  3. Count how many times each player is critical
  4. Convert these counts to fractions by dividing them by how many times any player is critical.

All coalitions

Following are all the two-player combinations

combinations(n = 5, r = 2, v = c("P1", "P2", "P3", "P4", "P5"))
      [,1] [,2]
 [1,] "P1" "P2"
 [2,] "P1" "P3"
 [3,] "P1" "P4"
 [4,] "P1" "P5"
 [5,] "P2" "P3"
 [6,] "P2" "P4"
 [7,] "P2" "P5"
 [8,] "P3" "P4"
 [9,] "P3" "P5"
[10,] "P4" "P5"

And their weights,

PP <- c(15, 25, 10, 30, 20)
PP_Comb <- combinations(n = 5, r = 2, v = PP, set = FALSE)
P2_Comb <- as.data.frame(PP_Comb) 
P2_Comb$Sum <- rowSums(PP_Comb) 
PlayerPlayerTotal WeightWinning
Coalition
152540NO
151025NO
153045NO
152035NO
251035NO
253055NO
252045NO
103040NO
102030NO
302050NO

We’ll continue with the other player combinations in the next post.