Jump to content

Trying to program a TrueSkill function...

- - - - -

  • Please log in to reply
No replies to this topic

#1
Jaxel

Jaxel

    Newbie

  • Members
  • Pip
  • 1 posts
I'm trying to put together a function that will update the trueskill scores for a player in a 2 player (1v1) system. However, I've been perusing the Microsoft Research Article and I am thoroughly confused as I am not a mathematician. Basically a player has two values that calculate their ranking:

$player['mean'] (mu) : estimated average ranking score
$player['sdev'] (sigma): standard deviation from average

Posted Image

function calcTrueSkill(&$win, &$los)

{

	$wM1 = $win['mean'];

	$wS1 = $win['sdev'];

	$wM2 = $wM1 * $wM1;

	$wS2 = $wS1 * $wS1;


	$lM1 = $los['mean'];

	$lS1 = $los['sdev'];

	$lM2 = $lM1 * $lM1;

	$lS2 = $lS1 * $lS1;


	$b2 = B * B;

	$c2 = $b2 + $wS2 + $lS2;

	$c1 = sqrt($c2);

	$t1 = ($wM1 - $lM1) / $c1;


	$wMn = $wM1 + ($wS2 / $c1) * v($t1, e/$c1);

	$wSn = $lM1 + ($lS2 / $c1) * v($t1, e/$c1);

	$lMn = sqrt($wS2 * (1 - ($wS2 / $c2) * w($t1, e/$c1)));

	$lSn = sqrt($lS2 * (1 - ($lS2 / $c2) * w($t1, e/$c1)));


	$win['mean'] = $WmN;

	$win['sdev'] = $WsN;

	$los['mean'] = $LmN;

	$los['sdev'] = $LsN;

}

This is as far as I've gotten with the function. My problem is that I have no idea how to calculate what "w", "v", "B" and "e" are. These things confuse me. Does anyone know anything about TrueSkill?




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users