Program: 10310
Project: 10310
Buggy source:
private void printStatistics(Program fittestIndividual){
  double averageFitness=getFitnessSum() / numberOfIndividuals;
  Concept n=fittestIndividual.getTree();
  int misClassifications=fittestIndividual.getScore().getNotCoveredPositives().size() + fittestIndividual.getScore().getCoveredNegatives().size();
  System.out.println("String_Node_Str" + averageFitness);
  System.out.println("String_Node_Str" + fittestIndividual.getFitness() + "String_Node_Str"+ misClassifications+ "String_Node_Str"+ n.getLength()+ "String_Node_Str");
  int conceptLengthSum=0;
  for (  Program p : individuals)   conceptLengthSum+=p.getTree().getLength();
  double conceptLengthAverage=conceptLengthSum / (double)individuals.length;
  System.out.println("String_Node_Str" + df.format(conceptLengthAverage));
  long algorithmTime=System.nanoTime() - Main.getAlgorithmStartTime();
  System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(algorithmTime));
  System.out.println("String_Node_Str" + n);
  if (Config.algorithm == Config.Algorithm.HYBRID_GP) {
    double cacheHitRate=0;
    double pdCacheHitRate=0, puCacheHitRate=0;
    if (psi.getNrOfRequests() > 0) {
      cacheHitRate=100 * (psi.getConceptCacheHits() / (double)psi.getNrOfRequests());
      pdCacheHitRate=100 * (psi.getPdCacheHits() / (double)psi.getPdRequests());
      puCacheHitRate=100 * (psi.getPuCacheHits() / (double)psi.getPuRequests());
    }
    System.out.println("String_Node_Str" + psi.getPdCache().size() + "String_Node_Str"+ psi.getPdRequests()+ "String_Node_Str"+ df.format(pdCacheHitRate)+ "String_Node_Str");
    System.out.println("String_Node_Str" + psi.getPuCache().size() + "String_Node_Str"+ psi.getPuRequests()+ "String_Node_Str"+ df.format(puCacheHitRate)+ "String_Node_Str");
    System.out.println("String_Node_Str" + psi.getCacheSize() + "String_Node_Str"+ psi.getNrOfRequests()+ "String_Node_Str"+ df.format(cacheHitRate)+ "String_Node_Str");
    double psiTimePercent=100 * psi.getPsiApplicationTimeNs() / (double)algorithmTime;
    double psiWOReasoningTimePercent=100 * (psi.getPsiApplicationTimeNs() - psi.getPsiReasoningTimeNs()) / (double)algorithmTime;
    System.out.println("String_Node_Str" + df.format(psiTimePercent) + "String_Node_Str"+ df.format(psiWOReasoningTimePercent)+ "String_Node_Str");
  }
  if (Config.GP.adc)   System.out.println("String_Node_Str" + fittestIndividual.getAdc());
  System.out.println();
}

Fixed version (ground truth):
private void printStatistics(Program fittestIndividual){
  double averageFitness=getFitnessSum() / numberOfIndividuals;
  Concept n=fittestIndividual.getTree();
  int misClassifications=fittestIndividual.getScore().getNotCoveredPositives().size() + fittestIndividual.getScore().getCoveredNegatives().size();
  System.out.println("String_Node_Str" + averageFitness);
  System.out.println("String_Node_Str" + fittestIndividual.getFitness() + "String_Node_Str"+ misClassifications+ "String_Node_Str"+ n.getLength()+ "String_Node_Str");
  int conceptLengthSum=0;
  for (  Program p : individuals)   conceptLengthSum+=p.getTree().getLength();
  double conceptLengthAverage=conceptLengthSum / (double)individuals.length;
  System.out.println("String_Node_Str" + df.format(conceptLengthAverage));
  long algorithmTime=System.nanoTime() - startTime;
  System.out.println("String_Node_Str" + Helper.prettyPrintNanoSeconds(algorithmTime));
  System.out.println("String_Node_Str" + n);
  if (Config.algorithm == Config.Algorithm.HYBRID_GP) {
    double cacheHitRate=0;
    double pdCacheHitRate=0, puCacheHitRate=0;
    if (psi.getNrOfRequests() > 0) {
      cacheHitRate=100 * (psi.getConceptCacheHits() / (double)psi.getNrOfRequests());
      pdCacheHitRate=100 * (psi.getPdCacheHits() / (double)psi.getPdRequests());
      puCacheHitRate=100 * (psi.getPuCacheHits() / (double)psi.getPuRequests());
    }
    System.out.println("String_Node_Str" + psi.getPdCache().size() + "String_Node_Str"+ psi.getPdRequests()+ "String_Node_Str"+ df.format(pdCacheHitRate)+ "String_Node_Str");
    System.out.println("String_Node_Str" + psi.getPuCache().size() + "String_Node_Str"+ psi.getPuRequests()+ "String_Node_Str"+ df.format(puCacheHitRate)+ "String_Node_Str");
    System.out.println("String_Node_Str" + psi.getCacheSize() + "String_Node_Str"+ psi.getNrOfRequests()+ "String_Node_Str"+ df.format(cacheHitRate)+ "String_Node_Str");
    double psiTimePercent=100 * psi.getPsiApplicationTimeNs() / (double)algorithmTime;
    double psiWOReasoningTimePercent=100 * (psi.getPsiApplicationTimeNs() - psi.getPsiReasoningTimeNs()) / (double)algorithmTime;
    System.out.println("String_Node_Str" + df.format(psiTimePercent) + "String_Node_Str"+ df.format(psiWOReasoningTimePercent)+ "String_Node_Str");
  }
  if (Config.GP.adc)   System.out.println("String_Node_Str" + fittestIndividual.getAdc());
  System.out.println();
}