Clean up.

This commit is contained in:
2018-10-24 16:15:34 +02:00
parent 2757e6f0f2
commit 4d2057d451
2 changed files with 11 additions and 30 deletions

View File

@@ -6,7 +6,7 @@ mod math;
mod matrix;
use factor_graph::*;
pub use gaussian::Gaussian;
use gaussian::Gaussian;
use matrix::Matrix;
/// Default initial mean of ratings.
@@ -68,13 +68,6 @@ fn draw_margin(p: f64, beta: f64, total_players: f64) -> f64 {
math::icdf((p + 1.0) / 2.0) * total_players.sqrt() * beta
}
/*
pub fn calculate_ratings<R>(team_players: &[R], team_ranks: &[u16]) -> Vec<Rating>
where
R: Rateable,
{
*/
pub fn rate<R>(rating_groups: &[&[R]]) -> Vec<Rating>
where
R: Rateable,
@@ -235,7 +228,10 @@ where
ratings
}
pub fn quality(rating_groups: &[&[Gaussian]]) -> f64 {
pub fn quality<R>(rating_groups: &[&[R]]) -> f64
where
R: Rateable,
{
let flatten_ratings = rating_groups
.iter()
.flat_map(|group| group.iter())
@@ -298,18 +294,18 @@ mod tests {
#[test]
fn test_quality_1vs1() {
let alice = Gaussian::from_mu_sigma(MU, SIGMA);
let bob = Gaussian::from_mu_sigma(MU, SIGMA);
let alice = Rating::new(MU, SIGMA);
let bob = Rating::new(MU, SIGMA);
assert_eq!(quality(&[&[alice], &[bob]]), 0.4472135954999579);
}
#[test]
fn test_rate_1vs1() {
let alice = Gaussian::from_mu_sigma(MU, SIGMA);
let bob = Gaussian::from_mu_sigma(MU, SIGMA);
let chris = Gaussian::from_mu_sigma(MU, SIGMA);
let darren = Gaussian::from_mu_sigma(MU, SIGMA);
let alice = Rating::new(MU, SIGMA);
let bob = Rating::new(MU, SIGMA);
let chris = Rating::new(MU, SIGMA);
let darren = Rating::new(MU, SIGMA);
let new_ratings = rate(&[&[alice], &[bob], &[chris], &[darren]]);

View File

@@ -1,15 +0,0 @@
extern crate trueskill;
use trueskill::{rate, Gaussian, MU, SIGMA};
fn main() {
let alice = Gaussian::from_mu_sigma(MU, SIGMA);
let bob = Gaussian::from_mu_sigma(MU, SIGMA);
let chris = Gaussian::from_mu_sigma(MU, SIGMA);
let darren = Gaussian::from_mu_sigma(MU, SIGMA);
// println!("alice: {:?}", alice);
// println!("bob: {:?}", alice);
rate(&[&[alice], &[bob], &[chris], &[darren]]);
}