## Wiki

Version 5
*(Panagiotis Louridas, 05/19/2010 11:34 am)*

1 | 1 | Panagiotis Louridas | h1. Calculation of Voting Power |
---|---|---|---|

2 | 1 | Panagiotis Louridas | |

3 | 1 | Panagiotis Louridas | This is a project hosting software for calculating the voting power of voters with weighted votes in an assembly. |

4 | 1 | Panagiotis Louridas | |

5 | 1 | Panagiotis Louridas | The software is open source and released under the terms of the "BSD license":http://www.opensource.org/licenses/bsd-license.php. |

6 | 1 | Panagiotis Louridas | |

7 | 1 | Panagiotis Louridas | h1. Overview |

8 | 1 | Panagiotis Louridas | |

9 | 1 | Panagiotis Louridas | A common error is the assumption that, in weighted voting, the power of a voter is their voting weight. In reality, although the weight of a voter is important, we must take into account the weights of the other voters, as well as the decision making rule, in order to arrive at a conclusion about the actual voting power each participant in the vote has. |

10 | 1 | Panagiotis Louridas | |

11 | 1 | Panagiotis Louridas | The term _voting power_ refers to an index that captures the power of a voter to influence the outcome of a voting process. There have been several definitions of voting power in the literature, although they remained outside the discussions of mainstream politics until late in the 20th century; what's more, definitions of voting power were proposed, forgotten, and reinvented during the years. Perhaps the most intuitive definition is the one given by "Lionel Sharples Penrose":http://en.wikipedia.org/wiki/Lionel_Penrose in 1946; according to this definition, the voting power of a voter is the probability that they can swing the vote. This is known as the Penrose index or the "Penrose Banzhaf index":http://en.wikipedia.org/wiki/Penrose%E2%80%93Banzhaf_index, after "John Francis Banzhaf III":http://en.wikipedia.org/wiki/John_F._Banzhaf_III who reinvented the index in 1965. |

12 | 1 | Panagiotis Louridas | |

13 | 1 | Panagiotis Louridas | The index is as follows: |

14 | 1 | Panagiotis Louridas | * Suppose we have _n_ voters, each with a specified weight. |

15 | 1 | Panagiotis Louridas | * The voters are free to vote as they please. |

16 | 1 | Panagiotis Louridas | * All votes are _yes_ or _no_. |

17 | 1 | Panagiotis Louridas | * There is a rule that decides when a vote passes; it may be 50% of the weights of the proponents (simple majority), or some other figure; in addition, it may require that a number of voters also support (a given quorum). |

18 | 1 | Panagiotis Louridas | * A voter is critical in a vote if without them the vote does not pass, but with them it passes. That is, the vote must be a swing vote, decided by the voter. |

19 | 1 | Panagiotis Louridas | * Count the number of critical votes for a voter. |

20 | 1 | Panagiotis Louridas | * Take all possible partitions of voters in yes and no camps. |

21 | 1 | Panagiotis Louridas | * Divide the number of critical votes for a voter by the number of all possible voter partitions. |

22 | 1 | Panagiotis Louridas | * The result is the probability that the voter can swing a vote. |

23 | 1 | Panagiotis Louridas | |

24 | 1 | Panagiotis Louridas | The above definition does not lead to a practical procedure for non-toy problems, as suffers from combinatorial explosion regarding the enumeration of swings and the partitions; hence, one has to find an alternative method to calculate it for many real-world assemblies. |

25 | 1 | Panagiotis Louridas | |

26 | 1 | Panagiotis Louridas | h1. The Software |

27 | 1 | Panagiotis Louridas | |

28 | 2 | Panagiotis Louridas | The software consists of a "Perl script":http://code.grnet.gr/projects/voting-power/repository/entry/voting_power.pl that calculates the Penrose index. It calculates the index by a Monte Carlo method: it generates a large number of voter groups and determines the percentage of those where a voter is critical; this is the Penrose index for the voter. Currently it does not give a confidence interval for the estimate it provides; however, since there will be a number of voters with identical weights, one can check how accurate the results are by noting the differences between voters with identical weights. |

29 | 2 | Panagiotis Louridas | |

30 | 3 | Panagiotis Louridas | To use the program, type |

31 | 3 | Panagiotis Louridas | <pre> |

32 | 3 | Panagiotis Louridas | perl voting_power.pl < voter_file |

33 | 3 | Panagiotis Louridas | </pre> |

34 | 3 | Panagiotis Louridas | |

35 | 3 | Panagiotis Louridas | The input file is a text file containing in each line the id of the voter, a colon, and the number of votes, e.g.: |

36 | 3 | Panagiotis Louridas | <pre> |

37 | 3 | Panagiotis Louridas | France:4 |

38 | 3 | Panagiotis Louridas | Germany:4 |

39 | 3 | Panagiotis Louridas | Italy:4 |

40 | 3 | Panagiotis Louridas | Belgium:2 |

41 | 3 | Panagiotis Louridas | Netherlands:2 |

42 | 3 | Panagiotis Louridas | Luxembourg:1 |

43 | 3 | Panagiotis Louridas | </pre> |

44 | 3 | Panagiotis Louridas | (These were the weights of the countries that formed the first European Economic Community in the "Treaties of Rome":http://en.wikipedia.org/wiki/Treaties_of_Rome in 1957 - 1958. Interestingly, Luxembourg had a vote but no voting power.) |

45 | 3 | Panagiotis Louridas | |

46 | 5 | Panagiotis Louridas | The operation of the program is specified by the following switches: |

47 | 3 | Panagiotis Louridas | <pre> |

48 | 3 | Panagiotis Louridas | -q, --quorum |

49 | 3 | Panagiotis Louridas | Set the quorum (number of voters required to reach decision) |

50 | 3 | Panagiotis Louridas | -s, --samples |

51 | 3 | Panagiotis Louridas | Set the number of samples |

52 | 5 | Panagiotis Louridas | -t, --threshold |

53 | 1 | Panagiotis Louridas | Set the threshold (amount of votes required to pass) |

54 | 5 | Panagiotis Louridas | -p, --percent |

55 | 5 | Panagiotis Louridas | Output results as percentages |

56 | 5 | Panagiotis Louridas | -v, --verbose |

57 | 5 | Panagiotis Louridas | Outputs group information (very large output) |

58 | 5 | Panagiotis Louridas | -h, --help |

59 | 5 | Panagiotis Louridas | Print this help screen |

60 | 3 | Panagiotis Louridas | </pre> |

61 | 3 | Panagiotis Louridas | |

62 | 2 | Panagiotis Louridas | h1. Support |

63 | 2 | Panagiotis Louridas | |

64 | 2 | Panagiotis Louridas | For questions, comments, suggestions, etc., you may contact its author, Panos Louridas. The address is the author's surname at the hosting organisation (grnet in greece). |