From 124d73fdbf874252ded5b6f92907f8f56507cac4 Mon Sep 17 00:00:00 2001 From: Jeff Moser Date: Sat, 2 Oct 2010 22:28:25 -0400 Subject: [PATCH] Fixed factor list probability of ranking error due to missing factors from the iterated layer --- PHPSkills/TrueSkill/FactorGraphTrueSkillCalculator.php | 5 +---- .../Layers/IteratedTeamDifferencesInnerLayer.php | 8 ++++++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/PHPSkills/TrueSkill/FactorGraphTrueSkillCalculator.php b/PHPSkills/TrueSkill/FactorGraphTrueSkillCalculator.php index 34124a2..98695bd 100644 --- a/PHPSkills/TrueSkill/FactorGraphTrueSkillCalculator.php +++ b/PHPSkills/TrueSkill/FactorGraphTrueSkillCalculator.php @@ -52,10 +52,7 @@ class FactorGraphTrueSkillCalculator extends SkillCalculator $factorGraph = new TrueSkillFactorGraph($gameInfo, $teams, $teamRanks); $factorGraph->buildGraph(); $factorGraph->runSchedule(); - - $test = $factorGraph->getUpdatedRatings(); - - // DEBUG: Fix this :) + $probabilityOfOutcome = $factorGraph->getProbabilityOfRanking(); return $factorGraph->getUpdatedRatings(); diff --git a/PHPSkills/TrueSkill/Layers/IteratedTeamDifferencesInnerLayer.php b/PHPSkills/TrueSkill/Layers/IteratedTeamDifferencesInnerLayer.php index 39c5b94..eff99ba 100644 --- a/PHPSkills/TrueSkill/Layers/IteratedTeamDifferencesInnerLayer.php +++ b/PHPSkills/TrueSkill/Layers/IteratedTeamDifferencesInnerLayer.php @@ -27,6 +27,14 @@ class IteratedTeamDifferencesInnerLayer extends TrueSkillFactorGraphLayer $this->_TeamDifferencesComparisonLayer = $teamDifferencesComparisonLayer; } + public function &getLocalFactors() + { + $localFactors = + \array_merge($this->_TeamPerformancesToTeamPerformanceDifferencesLayer->getLocalFactors(), + $this->_TeamDifferencesComparisonLayer->getLocalFactors()); + return $localFactors; + } + public function buildLayer() { $inputVariablesGroups = &$this->getInputVariablesGroups();