Program: 51038
Project: 51038
Buggy source:
/** 
 * @param args
 */
public static void main(String[] args){
  RDFDataSet testSetA=new RDFFileDataSet(DATA_DIR + "String_Node_Str",RDFFormat.RDFXML);
  RDFDataSet testSetB=new RDFFileDataSet(DATA_DIR + "String_Node_Str",RDFFormat.N3);
  List<DataSetParameters> dataSetsParams=new ArrayList<DataSetParameters>();
  List<String> bl=new ArrayList<String>();
  bl.add("String_Node_Str");
  bl.add("String_Node_Str");
  long[] seeds={11,21,31,41,51,61,71,81,91,101};
  double[] cs={0.01,0.1,1,10,100};
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,1,false,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,2,false,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,1,false,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,2,false,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,1,true,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,2,true,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,1,true,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str",bl,2,true,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,1,false,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,2,false,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,1,false,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,2,false,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,1,true,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,2,true,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,1,true,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str",bl,2,true,true));
  LinkPredictionDataSet dataset;
  LinkPredictionExperiment exp;
  List<ExperimentResults> resultsWL=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsSTF=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsSTP=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsIGW=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsIGP=new ArrayList<ExperimentResults>();
  Experimenter experimenter=new Experimenter(NUMBER_OF_PROC);
  Thread expT=new Thread(experimenter);
  expT.setDaemon(true);
  expT.start();
  try {
    for (    DataSetParameters params : dataSetsParams) {
      dataset=DataSetFactory.createLinkPredictonDataSet(params);
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new WLSubTreeKernel(i),new WLSubTreeKernel(i),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsWL.add(exp.getResults());
        }
      }
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionSubTreeKernel(i,1),new IntersectionSubTreeKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsSTF.add(exp.getResults());
        }
      }
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionPartialSubTreeKernel(i,0.01),new IntersectionPartialSubTreeKernel(i,0.01),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsSTP.add(exp.getResults());
        }
      }
      for (int i=1; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionGraphWalkKernel(i,1),new IntersectionGraphWalkKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsIGW.add(exp.getResults());
        }
      }
      for (int i=1; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionGraphPathKernel(i,1),new IntersectionGraphPathKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsIGP.add(exp.getResults());
        }
      }
    }
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
  experimenter.stop();
  while (expT.isAlive()) {
    try {
      Thread.sleep(1000);
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
  for (  ExperimentResults res : resultsWL) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsSTF) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsSTP) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsIGW) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsIGP) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
}

Fixed version (ground truth):
/** 
 * @param args
 */
public static void main(String[] args){
  RDFDataSet testSetA=new RDFFileDataSet(DATA_DIR + "String_Node_Str",RDFFormat.RDFXML);
  RDFDataSet testSetB=new RDFFileDataSet(DATA_DIR + "String_Node_Str",RDFFormat.N3);
  List<DataSetParameters> dataSetsParams=new ArrayList<DataSetParameters>();
  List<String> bl=new ArrayList<String>();
  bl.add("String_Node_Str");
  bl.add("String_Node_Str");
  long[] seeds={11,21,31,41,51,61,71,81,91,101};
  double[] cs={0.01,0.1,1,10,100};
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,false,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,false,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,false,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,false,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,true,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,true,false));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,true,true));
  dataSetsParams.add(new DataSetParameters(testSetA,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,true,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,false,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,false,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,false,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,false,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,true,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,true,false));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,1,true,true));
  dataSetsParams.add(new DataSetParameters(testSetB,"String_Node_Str","String_Node_Str","String_Node_Str",bl,2,true,true));
  LinkPredictionDataSet dataset;
  LinkPredictionExperiment exp;
  List<ExperimentResults> resultsWL=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsSTF=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsSTP=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsIGW=new ArrayList<ExperimentResults>();
  List<ExperimentResults> resultsIGP=new ArrayList<ExperimentResults>();
  Experimenter experimenter=new Experimenter(NUMBER_OF_PROC);
  Thread expT=new Thread(experimenter);
  expT.setDaemon(true);
  expT.start();
  try {
    for (    DataSetParameters params : dataSetsParams) {
      dataset=DataSetFactory.createLinkPredictonDataSet(params);
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new WLSubTreeKernel(i),new WLSubTreeKernel(i),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsWL.add(exp.getResults());
        }
      }
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionSubTreeKernel(i,1),new IntersectionSubTreeKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsSTF.add(exp.getResults());
        }
      }
      for (int i=0; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionPartialSubTreeKernel(i,0.01),new IntersectionPartialSubTreeKernel(i,0.01),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsSTP.add(exp.getResults());
        }
      }
      for (int i=1; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionGraphWalkKernel(i,1),new IntersectionGraphWalkKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsIGW.add(exp.getResults());
        }
      }
      for (int i=1; i < 3; i++) {
        if (experimenter.hasSpace()) {
          int fileId=(int)(Math.random() * 100000000);
          File file=new File(DATA_DIR + fileId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ i+ "String_Node_Str");
          exp=new LinkPredictionExperiment(new LinkPredictionDataSet(dataset),new IntersectionGraphPathKernel(i,1),new IntersectionGraphPathKernel(i,1),0.5,0.5,seeds,cs,new FileOutputStream(file));
          experimenter.addExperiment(exp);
          resultsIGP.add(exp.getResults());
        }
      }
    }
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
  experimenter.stop();
  while (expT.isAlive()) {
    try {
      Thread.sleep(1000);
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
  for (  ExperimentResults res : resultsWL) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsSTF) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsSTP) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsIGW) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
  for (  ExperimentResults res : resultsIGP) {
    System.out.println(res.getLabel() + "String_Node_Str" + res.getAccuracy()+ "String_Node_Str"+ res.getF1());
  }
}