private static double createSubscore(double value,double bestValue,double variance,double bias,boolean ignoreSign){
  return Math.min(MathUtil.normalPDFNormalized((ignoreSign ? value - bestValue : Math.max((value - bestValue),0)) / bestValue,variance,0) * bias,bias);
}

private static double createSubscore ( double value , double bestValue , double variance , double bias , boolean ignoreSign ) { return Math . min ( MathUtil . normalPDFNormalized ( ( ignoreSign ? value - bestValue : Math . max ( ( value - bestValue ) , 0 ) ) / bestValue , variance , 0 ) * bias , bias ) ; }
create a normalized subscore around a current and expected value , using the normalized normal cdf . < p / > this function is derived from the statistical probability of achieving the optimal value . values that are less than the best value will return the best subscore , or the bias ( unless ignoresign = true ) .
