Beispiel #1
0
        public double Aggregate(SubScore score, double w1, double w2, double w3, double w4, double w5)
        {
            if (!score.n.Any())
            {
                return(0d);
            }
            var subscores = score.n.Select(s => (w1 * s.m + w2 * (1d - (s.v / s.c)) + w3 * (1d - (s.o / s.v))) / (w1 + w2 + w3)).Average();

            return((w4 * score.w + w5 * subscores) / (w4 + w5));
        }
Beispiel #2
0
 public double Aggregate(SubScore score)
 {
     var(w1, w2, w3, w4, w5) = (1, 1, 1, 0.26531416795464, 0.73468583204536);
     return(Aggregate(score, w1, w2, w3, w4, w5));
 }