Need to debug why it isn't working.
This commit is contained in:
81
src/lib.rs
81
src/lib.rs
@@ -149,34 +149,7 @@ fn rate(rating_groups: &[&[Rating]]) {
|
||||
factor.start(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &skill_to_perf {
|
||||
factor.update_value(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &perf_to_team {
|
||||
factor.update_sum(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &team_diff {
|
||||
factor.update_sum(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &trunc {
|
||||
factor.update(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &team_diff {
|
||||
factor.update_term(&mut variable_arena, 0);
|
||||
factor.update_term(&mut variable_arena, 1);
|
||||
}
|
||||
|
||||
for factor in &perf_to_team {
|
||||
factor.update_term(&mut variable_arena, 0);
|
||||
}
|
||||
|
||||
for factor in &skill_to_perf {
|
||||
factor.update_mean(&mut variable_arena);
|
||||
}
|
||||
println!("before:");
|
||||
|
||||
for i in 0..size {
|
||||
let value = variable_arena
|
||||
@@ -187,7 +160,52 @@ fn rate(rating_groups: &[&[Rating]]) {
|
||||
let mu = value.mu();
|
||||
let sigma = value.sigma();
|
||||
|
||||
println!("player={}, mu={}, sigma={}", i, mu, sigma);
|
||||
println!("* player={}, mu={}, sigma={}", i, mu, sigma);
|
||||
}
|
||||
|
||||
for factor in &skill_to_perf {
|
||||
factor.update_value(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &perf_to_team {
|
||||
factor.update_sum(&mut variable_arena);
|
||||
}
|
||||
|
||||
for _ in 0..5 {
|
||||
for factor in &team_diff {
|
||||
factor.update_sum(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &trunc {
|
||||
factor.update(&mut variable_arena);
|
||||
}
|
||||
|
||||
for factor in &team_diff {
|
||||
factor.update_term(&mut variable_arena, 0);
|
||||
factor.update_term(&mut variable_arena, 1);
|
||||
}
|
||||
}
|
||||
|
||||
for factor in &perf_to_team {
|
||||
factor.update_term(&mut variable_arena, 0);
|
||||
}
|
||||
|
||||
for factor in &skill_to_perf {
|
||||
factor.update_mean(&mut variable_arena);
|
||||
}
|
||||
|
||||
println!("after:");
|
||||
|
||||
for i in 0..size {
|
||||
let value = variable_arena
|
||||
.get(ss[i])
|
||||
.map(|variable| variable.get_value())
|
||||
.unwrap();
|
||||
|
||||
let mu = value.mu();
|
||||
let sigma = value.sigma();
|
||||
|
||||
println!("* player={}, mu={}, sigma={}", i, mu, sigma);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -264,7 +282,7 @@ mod tests {
|
||||
sigma: SIGMA,
|
||||
};
|
||||
|
||||
assert_eq!(quality(&[&[alice], &[bob]]), 0.41614607);
|
||||
assert_eq!(quality(&[&[alice], &[bob]]), 0.41614606763952605);
|
||||
}
|
||||
|
||||
#[test]
|
||||
@@ -279,6 +297,9 @@ mod tests {
|
||||
sigma: SIGMA,
|
||||
};
|
||||
|
||||
// alice: mu=27.175, sigma=7.112
|
||||
// bob: mu=23.141, sigma=6.859
|
||||
|
||||
rate(&[&[alice], &[bob]]);
|
||||
|
||||
assert_eq!(true, false);
|
||||
|
||||
Reference in New Issue
Block a user