|
|
@ -1,8 +1,8 @@ |
|
|
|
# Majority Judgment Library for Java |
|
|
|
|
|
|
|
[](./LICENSE.md) |
|
|
|
 |
|
|
|
 |
|
|
|
[](https://github.com/MieuxVoter/majority-judgment-library-java/actions) |
|
|
|
[](https://github.com/MieuxVoter/majority-judgment-library-java/releases) |
|
|
|
[](https://discord.gg/rAAQG9S) |
|
|
|
|
|
|
|
Test-driven java library to help deliberate using Majority Judgment. |
|
|
@ -11,6 +11,15 @@ The goal is to be **scalable**, **reliable**, fast and extensible. |
|
|
|
We therefore use a _score-based algorithm_ and _no floating-point arithmetic_ whatsoever. |
|
|
|
|
|
|
|
|
|
|
|
## Features |
|
|
|
|
|
|
|
- Supports billions of participants |
|
|
|
- Supports thousands of proposals |
|
|
|
- Handles default grades (static or normalized) |
|
|
|
- No floating-point arithmetic |
|
|
|
- Room for other deliberators (central, usual) |
|
|
|
|
|
|
|
|
|
|
|
## Example Usage |
|
|
|
|
|
|
|
Collect the **tallies** for each Proposal (aka. Candidate) by your own means, |
|
|
@ -48,6 +57,8 @@ Got even more than that ? Use `BigInteger`s ! |
|
|
|
|
|
|
|
Want to set a static default grade ? Use a `TallyWithDefaultGrade` instead of a `Tally`. |
|
|
|
|
|
|
|
Want to normalize the tallies ? Use a `TallyNormalized` instead of a `Tally`. |
|
|
|
|
|
|
|
|
|
|
|
## Roadmap |
|
|
|
|
|
|
@ -60,8 +71,8 @@ Want to set a static default grade ? Use a `TallyWithDefaultGrade` instead of a |
|
|
|
- [ ] Guess the amount of judges |
|
|
|
- [ ] Allow defining a default grade |
|
|
|
- [x] Static Grade (configurable) |
|
|
|
- [x] Normalization (using least common multiple) |
|
|
|
- [ ] Median Grade |
|
|
|
- [ ] Normalization (using least common multiple) |
|
|
|
- [ ] Release v0.2.0 |
|
|
|
- [ ] Publish on package repositories |
|
|
|
- [ ] Gradle |
|
|
|