Multiplayer Rating System. No Friction.
Project description
A faster and open license asymmetric multi-team, multiplayer rating system comparable to TrueSkill.
Description
Here are some, but not all, of the reasons you should drop TrueSkill and bury Elo once and for all:
- Multiplayer.
- Multifaction.
- Assymetric faction size.
- Predict Win, Draw and Rank Outcomes.
- 150% faster than TrueSkill.
- 100% Pure Python.
- 100% Test Coverage.
- CPython and PyPy Support.
- 5 Separate Models.
- Fine-grained control of mathematical constants.
- Open License
- Up to 7% more accurate than TrueSkill.
Installation
pip install openskill
Usage
The official documentation is hosted here. Please refer to it for details on how to use this library.
Limited Example
>>> from openskill.models import PlackettLuce
>>> model = PlackettLuce()
>>> model.rating()
PlackettLuceRating(mu=25.0, sigma=8.333333333333334)
>>> r = model.rating
>>> [[a, b], [x, y]] = [[r(), r()], [r(), r()]]
>>> [[a, b], [x, y]] = model.rate([[a, b], [x, y]])
>>> a
PlackettLuceRating(mu=26.964294621803063, sigma=8.177962604389991)
>>> x
PlackettLuceRating(mu=23.035705378196937, sigma=8.177962604389991)
>>> (a == b) and (x == y)
True
References
This project is originally based off the openskill.js package. All of the Weng-Lin models are based off the work in this wonderful paper or are the derivatives of algorithms found in it.
- Julia Ibstedt, Elsa Rådahl, Erik Turesson, and Magdalena vande Voorde. Application and further development of trueskill™ ranking in sports. 2019.
- Ruby C. Weng and Chih-Jen Lin. A bayesian approximation method for online ranking. Journal of Machine Learning Research, 12(9):267–300, 2011. URL: http://jmlr.org/papers/v12/weng11a.html.
Implementations in other Languages
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
openskill-5.0.2.tar.gz
(47.9 kB
view hashes)
Built Distribution
openskill-5.0.2-py3-none-any.whl
(45.3 kB
view hashes)
Close
Hashes for openskill-5.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea9349438c624c771c04d42bb2095d6672118b46da22e6adb61ef19064cd47cd |
|
MD5 | a9a1dc00027572b480b858dd06704b64 |
|
BLAKE2b-256 | 64717e0b24a4678a9d2b4097b4bc01838cefc7681f00b80c2a42c95d61eaf4ca |