Need to debug why it isn't working.
This commit is contained in:
@@ -145,6 +145,7 @@ impl LikelihoodFactor {
|
|||||||
.get(self.value)
|
.get(self.value)
|
||||||
.map(|variable| variable.get_value())
|
.map(|variable| variable.get_value())
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
let fx = variable_arena
|
let fx = variable_arena
|
||||||
.get_mut(self.value)
|
.get_mut(self.value)
|
||||||
.map(|variable| variable.get_message(self.id))
|
.map(|variable| variable.get_message(self.id))
|
||||||
|
|||||||
25
src/lib.rs
25
src/lib.rs
@@ -149,6 +149,20 @@ fn rate(rating_groups: &[&[Rating]]) {
|
|||||||
factor.start(&mut variable_arena);
|
factor.start(&mut variable_arena);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
println!("before:");
|
||||||
|
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
for factor in &skill_to_perf {
|
for factor in &skill_to_perf {
|
||||||
factor.update_value(&mut variable_arena);
|
factor.update_value(&mut variable_arena);
|
||||||
}
|
}
|
||||||
@@ -157,6 +171,7 @@ fn rate(rating_groups: &[&[Rating]]) {
|
|||||||
factor.update_sum(&mut variable_arena);
|
factor.update_sum(&mut variable_arena);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for _ in 0..5 {
|
||||||
for factor in &team_diff {
|
for factor in &team_diff {
|
||||||
factor.update_sum(&mut variable_arena);
|
factor.update_sum(&mut variable_arena);
|
||||||
}
|
}
|
||||||
@@ -169,6 +184,7 @@ fn rate(rating_groups: &[&[Rating]]) {
|
|||||||
factor.update_term(&mut variable_arena, 0);
|
factor.update_term(&mut variable_arena, 0);
|
||||||
factor.update_term(&mut variable_arena, 1);
|
factor.update_term(&mut variable_arena, 1);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for factor in &perf_to_team {
|
for factor in &perf_to_team {
|
||||||
factor.update_term(&mut variable_arena, 0);
|
factor.update_term(&mut variable_arena, 0);
|
||||||
@@ -178,6 +194,8 @@ fn rate(rating_groups: &[&[Rating]]) {
|
|||||||
factor.update_mean(&mut variable_arena);
|
factor.update_mean(&mut variable_arena);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
println!("after:");
|
||||||
|
|
||||||
for i in 0..size {
|
for i in 0..size {
|
||||||
let value = variable_arena
|
let value = variable_arena
|
||||||
.get(ss[i])
|
.get(ss[i])
|
||||||
@@ -187,7 +205,7 @@ fn rate(rating_groups: &[&[Rating]]) {
|
|||||||
let mu = value.mu();
|
let mu = value.mu();
|
||||||
let sigma = value.sigma();
|
let sigma = value.sigma();
|
||||||
|
|
||||||
println!("player={}, mu={}, sigma={}", i, mu, sigma);
|
println!("* player={}, mu={}, sigma={}", i, mu, sigma);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -264,7 +282,7 @@ mod tests {
|
|||||||
sigma: SIGMA,
|
sigma: SIGMA,
|
||||||
};
|
};
|
||||||
|
|
||||||
assert_eq!(quality(&[&[alice], &[bob]]), 0.41614607);
|
assert_eq!(quality(&[&[alice], &[bob]]), 0.41614606763952605);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@@ -279,6 +297,9 @@ mod tests {
|
|||||||
sigma: SIGMA,
|
sigma: SIGMA,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// alice: mu=27.175, sigma=7.112
|
||||||
|
// bob: mu=23.141, sigma=6.859
|
||||||
|
|
||||||
rate(&[&[alice], &[bob]]);
|
rate(&[&[alice], &[bob]]);
|
||||||
|
|
||||||
assert_eq!(true, false);
|
assert_eq!(true, false);
|
||||||
|
|||||||
Reference in New Issue
Block a user