moserware / skills Goto Github PK
View Code? Open in Web Editor NEWA detailed implementation of the TrueSkill algorithm to go along with my "Computing Your Skill" blog post
Home Page: http://www.moserware.com/2010/03/computing-your-skill.html
A detailed implementation of the TrueSkill algorithm to go along with my "Computing Your Skill" blog post
Home Page: http://www.moserware.com/2010/03/computing-your-skill.html
The code for the TrueSkill calculator is in the "Skills" folder and its unit tests are in the "UnitTests" folder. For more details, see the "README" file in each of those folders.
There's a TODO in line 73. All tests pass, so maybe you just forgot to remove it?
Can't seem to access the EloRating
object.
import skills as s
s.EloRating(1200, 32)
returns
AttributeError: 'module' object has no attribute 'EloRating'
Nevermind I figured it out...thanks!!
I've created a small test case for this bug/issue.
In one of my projects I stumbled on some input that would cause TrueSkillCalculator.CalculateNewRatings() to never return. The input was actually the result of a bug in my code, but I expect the test case program to either return a result or throw an exception.
The issue appears related to using a DrawProbability value greater than 0.
Software versions:
$ mono --version
Mono JIT compiler version 2.10.6 (tarball Fri Sep 16 00:13:06 EDT 2011)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
TLS: normal
SIGSEGV: normal
Notification: kqueue
Architecture: x86
Disabled: none
Misc: debugger softdebug
LLVM: yes(2.9svn-mono)
GC: Included Boehm (with typed GC)
$ uname -a
Darwin queue.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386
Performing calculations with players defined with ID, PartialPlay%, PartialUpdate% won't show any difference in ratings when using same PartialPlay values, but differing PartialUpdate values.
The Test Unit only evaluates players with PartialPlay modifications (appears to work properly), but lacks any validation checks.
There is no Test Unit that evaluates PartialUpdate functionality or results.
What license is this released under the read me does not say. If you are not, sure what license to use the MIT license is a simple license often used by open source software libraries especially game related ones.
It would be great if the library could also support TrueSkill Through Time enhancement as described in TrueSkill Through Time: Revisiting the History of Chess paper.
Hi, I'm a Java developer so I'm using the fork/port of this project, JSkills.
Unfortunately, the project doesn't seem to be active anymore and I ran into a blocker (nsp#9) so my question is; does the same thing happen in Skills? Do you have any idea what could cause it?
I tried debugging the code but it's too complicated for my limited brain capacity. Any help is much appreciated.
I realize the last commit was 11 years ago, but is the owner of this repository interested in updating to https://www.microsoft.com/en-us/research/publication/trueskill-2-improved-bayesian-skill-rating-system/ ?
When translating the library I noticed that line 21 of the TrueSkillFactorGraph class calls FromPrecisionMean(0, 0) which causes a divide by 0 exception when calculating the variance.
My current work around in the Python version is to set the variance to 1 if it is 0 but I don't think this is mathematically correct.
Matrix.GetHashCode() function does not return the same value for all Matrices that are equal. For example, the following fails on the last line (one more 0 and it passes). Consider somehow rounding each double before putting it in the hash.
var a = new SquareMatrix(1, 2.00000000000001,
3, 4);
var b = new SquareMatrix(1, 2,
3, 4);
Assert.IsTrue(a == b);
Assert.AreEqual(a, b);
Assert.AreEqual(a.GetHashCode(), b.GetHashCode());
I'm trying to build a version of your code in Java and actually I've never worked with C#. So, when I implement the class FactorGraphLayer which extends the abstract class FactorGraphLayerBase it marks an error because the method BuildLayer is not been implemented in FactorGraphLayer.
The draw margin code currently hard codes 2 people total on the match. This should be tweaked to handle the actual size of the team.
In Heroes of the Storm on March 2019 "Storm League" mode was created, prior to that it had 2 ranked modes called "Hero League" and "Team League". How should I average together the two ratings of HL and TL into one SL rating?
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.