private double calcC1 ( int objectId ) { int nrOfPreviousResults = previousOScoreResultList . get ( objectId ) . size ( ) ; if ( nrOfPreviousResults == 0 ) { return 0.0 ; } int count = 1 ; double difSum_k = Math . abs ( lastOScoreResult . get ( objectId ) - previousOScoreResultList . get ( objectId ) . get ( nrOfPreviousResults - 1 ) ) ; //if previousOscoreResultList contains more than two results, this loop sums up further diffs for ( int i = Math . max ( 0 , nrOfPreviousResults - ( confK - 1 ) ) + 1 ; i < nrOfPreviousResults ; i ++ ) { difSum_k += Math . abs ( previousOScoreResultList . get ( objectId ) . get ( i ) - previousOScoreResultList . get ( objectId ) . get ( i - 1 ) ) ; count ++ ; } // hier msste gelten count==confK-1, d.h. wenn ich die letzten 3 Werte betrachten will, bekomme ich 2 differenzen // XXX SW: Nicht ganz. Wenn ich die letzten 4 Werte betrachten will, aber erst 2 Ergebnisse zur Verf�gung stehen, bekomme ich an anstatt der 3 Differenzen nur 1 // dafr die Zhlvariable difSum_k /= count ; return Math . pow ( Math . E , ( - 1.0 * difSum_k ) ) ; }
Calculates the Confidence on the basis of the standard deviation of previous OScore results