martinlackner / abcvoting

Python implementations of approval-based committee (multi-winner) voting rules
https://abcvoting.readthedocs.io/
MIT License
31 stars 15 forks source link

Proportional ranking #54

Closed erelsgl closed 2 years ago

erelsgl commented 2 years ago

Is it possible to use the implemented rules to compute proportional rankings, such as in this paper, or dynamic proportional rankings, such as in this paper? The methods are very similar - they are based on PAV or on Phragmen's rule; only the output format is different.

martinlackner commented 2 years ago

Yes, certainly. The easiest way would be adapt the corresponding functions to return a ranking. This should require very little effort. As far as I am aware the work on dynamic proportional rankings differs a bit more (and new voting rules are used), so there might be more to do. Note however that the source code of the dynamic proportional rankings paper is available: https://git.tu-berlin.de/jonas.israel/dpr

erelsgl commented 1 month ago

Getting back to this issue after almost 3 years... If I run a sequential algorithm such as seq-Phragmen, is the output list guaranteed to contain the candidates in the order they were selected by the rule? My goal is to have a site similar to https://pref.tools/abcvoting/, but that shows a ranking rather than just a committee.