Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Multiplayer Rating System. No Friction.

License

NotificationsYou must be signed in to change notification settings

vivekjoshy/openskill.py

Repository files navigation

Multiplayer Rating System. No Friction.

A faster and open license asymmetric multi-team, multiplayer rating system comparable to TrueSkill.

Stand With Ukraine

TestscodecovDocumentation StatusDOI badge

Description

PyPI - Python VersionConda (channel only)PyPI - Implementation

Discord

In the multifaceted world of online gaming, an accurate multiplayer rating system plays a crucial role. A multiplayer rating system measures and compares players' skill levels in competitive games to ensure balanced match-making, boosting overall gaming experiences. Currently, TrueSkill by Microsoft Research is a notable rating system, but gaming communities are yearning for faster, more adaptable alternatives.

Here aresome, but not all, of the reasons you should drop TrueSkilland bury Elo once and for all:

graph TD    subgraph OpenSkill["OpenSkill Features"]    subgraph Game["Game"]    GF1[Multiplayer]    GF2[Multifaction]    GF3[Asymmetric Faction Size]    GF4[Predict Win, Draw, Rank]    GF5[Weights, Score Margins]    end    subgraph Technical["Technical"]    TF1[100% Pure Python]    TF2[CPython and PyPy Support]    TF3[C-compiled Wheels]    TF4[100% Test Coverage]    TF5[5 Separate Models]    end    subgraph Performance["Performance"]    PF1[150% faster than TrueSkill]    PF2[Accuracy matches TrueSkill]    PF3[Open License]    PF4[Partial Play]    PF5[Fine-grained Parameter Control]    end    end    style GF1 fill:#f37231,color:#ffffff,stroke:#f37231    style GF2 fill:#f37231,color:#ffffff,stroke:#f37231    style GF3 fill:#f37231,color:#ffffff,stroke:#f37231    style GF4 fill:#f37231,color:#ffffff,stroke:#f37231    style GF5 fill:#f37231,color:#ffffff,stroke:#f37231    style TF1 fill:#f37231,color:#ffffff,stroke:#f37231    style TF2 fill:#f37231,color:#ffffff,stroke:#f37231    style TF3 fill:#f37231,color:#ffffff,stroke:#f37231    style TF4 fill:#f37231,color:#ffffff,stroke:#f37231    style TF5 fill:#f37231,color:#ffffff,stroke:#f37231    style PF1 fill:#f37231,color:#ffffff,stroke:#f37231    style PF2 fill:#f37231,color:#ffffff,stroke:#f37231    style PF3 fill:#f37231,color:#ffffff,stroke:#f37231    style PF4 fill:#f37231,color:#ffffff,stroke:#f37231    style PF5 fill:#f37231,color:#ffffff,stroke:#f37231
Loading

Installation

pip install openskill

Usage

The official documentation is hostedhere.Please refer to it for details on how to use this library.

Limited Example

>>>fromopenskill.modelsimportPlackettLuce>>>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]])>>>aPlackettLuceRating(mu=26.964294621803063,sigma=8.177962604389991)>>>xPlackettLuceRating(mu=23.035705378196937,sigma=8.177962604389991)>>> (a==b)and (x==y)True

Support

If you're struggling with any of the concepts, please search the discussions section to see if your question has already been answered.If you can't find an answer, please open a newdiscussion and we'll try to help you out.You can also get help from the officialDiscord Server. If you have a feature request, or want to reporta bug please create a newissue if one already doesn't exist.

References

This project is originally based off theopenskill.js package. All of the Weng-Lin models are based off the work in this wonderfulpaper 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


[8]ページ先頭

©2009-2025 Movatter.jp