Program: 38044
Project: 38044
Buggy source:
/** 
 * The main method - create all entities and start the simulation. <br> It is also capable of multiple starts of the simulation with different setup (machine count, job parameters, data sets).
 */
public static void main(String[] args){
  String user_dir=System.getProperty("String_Node_Str");
  File activatedFile=new File("String_Node_Str");
  if (!activatedFile.exists()) {
    System.out.println("String_Node_Str");
    try {
      URL aleaHomePage=new URL("String_Node_Str");
      HttpURLConnection conn=(HttpURLConnection)aleaHomePage.openConnection();
      InputStream is=conn.getInputStream();
      java.util.Scanner s=new java.util.Scanner(is).useDelimiter("String_Node_Str");
      String str=s.hasNext() ? s.next() : "String_Node_Str";
      System.out.println("String_Node_Str" + str);
      if (!str.contains("String_Node_Str")) {
        throw new Exception("String_Node_Str");
      }
      activatedFile.mkdir();
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
 else {
    System.out.println("String_Node_Str");
  }
  try {
    aCfg=new AleaConfiguration();
  }
 catch (  IOException e) {
    System.err.println("String_Node_Str" + e);
    return;
  }
  baudRate=aCfg.getDouble("String_Node_Str");
  entities=aCfg.getInt("String_Node_Str");
  maxPE=1;
  visualize=aCfg.getBoolean("String_Node_Str");
  data=aCfg.getBoolean("String_Node_Str");
  use_heap=aCfg.getBoolean("String_Node_Str");
  sld_tresh=aCfg.getDouble("String_Node_Str");
  algID=0;
  prevAlgID=-1;
  name="String_Node_Str";
  use_tsafrir=aCfg.getBoolean("String_Node_Str");
  use_speeds=aCfg.getBoolean("String_Node_Str");
  arrival_rate_multiplier=aCfg.getDouble("String_Node_Str");
  runtime_minimizer=aCfg.getDouble("String_Node_Str");
  use_RAM=aCfg.getBoolean("String_Node_Str");
  use_fairshare_WAIT=aCfg.getBoolean("String_Node_Str");
  use_fairshare_RAM=aCfg.getBoolean("String_Node_Str");
  use_fairshare=aCfg.getBoolean("String_Node_Str");
  multiply_sums=aCfg.getBoolean("String_Node_Str");
  use_MAX=aCfg.getBoolean("String_Node_Str");
  use_SQRT=aCfg.getBoolean("String_Node_Str");
  sum_multiplications=aCfg.getBoolean("String_Node_Str");
  useEventOpt=aCfg.getBoolean("String_Node_Str");
  avail_RAM=0.0;
  avail_CPUs=0.0;
  backfilled=0;
  use_queues=aCfg.getBoolean("String_Node_Str");
  by_queue=aCfg.getBoolean("String_Node_Str");
  data_sets=aCfg.getString("String_Node_Str");
  if (args.length > 0) {
    if (args[0].equals("String_Node_Str")) {
      visualize=true;
    }
  }
  LinkedList results=new LinkedList();
  String data_sets[]=aCfg.getStringArray("String_Node_Str");
  int total_gridlet[]=aCfg.getIntArray("String_Node_Str");
  LinkedList<Visualizator> windows=new LinkedList();
  if (visualize) {
    Visualizator.createGUI(windows);
  }
  failures=aCfg.getBoolean("String_Node_Str");
  reqs=aCfg.getBoolean("String_Node_Str");
  estimates=aCfg.getBoolean("String_Node_Str");
  use_AvgLength=aCfg.getBoolean("String_Node_Str");
  use_LastLength=aCfg.getBoolean("String_Node_Str");
  gap_length=aCfg.getInt("String_Node_Str");
  int weight_of_fairness[]=aCfg.getIntArray("String_Node_Str");
  String problem="String_Node_Str";
  if (!failures && !reqs) {
    problem+="String_Node_Str";
  }
  if (reqs) {
    problem+="String_Node_Str";
  }
  if (failures) {
    problem+="String_Node_Str";
  }
  if (estimates) {
    problem+="String_Node_Str";
  }
 else {
    problem+="String_Node_Str";
  }
  if (use_AvgLength) {
    problem+="String_Node_Str";
  }
  if (use_LastLength) {
    problem+="String_Node_Str";
  }
  if (useEventOpt) {
    problem+="String_Node_Str";
  }
  multiplicator=aCfg.getInt("String_Node_Str");
  on_demand_time_limit=aCfg.getInt("String_Node_Str");
  time_limit=aCfg.getInt("String_Node_Str");
  runtime_multiplicator=aCfg.getInt("String_Node_Str");
  path=aCfg.getString("String_Node_Str");
  meta=aCfg.getBoolean("String_Node_Str");
  if (meta) {
    data=false;
    String date="String_Node_Str" + new Date().toString();
    date=date.replace("String_Node_Str","String_Node_Str");
    date=date.replace("String_Node_Str","String_Node_Str");
    date=date.replace("String_Node_Str","String_Node_Str");
    System.out.println(date);
    problem+=date;
  }
  ResultCollector result_collector=new ResultCollector(results,problem);
  System.out.println("String_Node_Str" + System.getProperty("String_Node_Str"));
  dir[0]="String_Node_Str";
  File resultsFile=new File(ExperimentSetup.getDir(DirectoryLevel.RESULT_ROOT));
  if (!resultsFile.exists()) {
    resultsFile.mkdir();
  }
  dir[1]=getDate();
  File runDirF=new File(ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT));
  runDirF.mkdir();
  System.out.println("String_Node_Str" + runDirF.getPath());
  File configurationF=aCfg.getFile();
  File destinationF=new File(ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT) + File.separator + aCfg.getFileName());
  try {
    FileUtil.copyFile(configurationF,destinationF);
  }
 catch (  IOException ex) {
    Logger.getLogger(ExperimentSetup.class.getName()).log(Level.WARNING,null,ex);
  }
  if (visualize) {
    File graphs=new File(user_dir + File.separator + ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT)+ File.separator+ "String_Node_Str");
    graphs.mkdir();
  }
  String[] pluginsString=aCfg.getStringArray("String_Node_Str");
  List<Map<String,String>> pluginConfigurations=new ArrayList<Map<String,String>>();
  String[] pluginHeaders=new String[pluginsString.length];
  for (int i=0; i < pluginsString.length; i++) {
    Map<String,String> plugincfg=aCfg.getPluginConfiguration(i);
    String header=plugincfg.get(PluginConfiguration.RESULT_HEADER);
    pluginHeaders[i]=header;
    pluginConfigurations.add(plugincfg);
  }
  for (int set=0; set < data_sets.length; set++) {
    String date=getDate();
    dir[2]=data_sets[set] + "String_Node_Str" + date;
    File dataSetDirF=new File(ExperimentSetup.getDir(DirectoryLevel.DATA_SET));
    dataSetDirF.mkdir();
    String prob=problem;
    fair_weight=weight_of_fairness[set];
    max_estim=0;
    result_collector.generateHeader(data_sets[set] + "String_Node_Str" + prob,pluginHeaders);
    prevAlgID=-1;
    boolean use_anti_starvation[]=aCfg.getBooleanArray("String_Node_Str");
    boolean use_resource_spec_packing[]=aCfg.getBooleanArray("String_Node_Str");
    int skip[]=aCfg.getIntArray("String_Node_Str");
    int timeskip[]=aCfg.getIntArray("String_Node_Str");
    for (int i=0; i < timeskip.length; i++) {
      Calendar myCal=Calendar.getInstance();
      myCal.setTimeInMillis(timeskip[i] * 1000L);
      if (!(myCal.get(Calendar.HOUR_OF_DAY) == 0 && myCal.get(Calendar.MINUTE) == 0 && myCal.get(Calendar.SECOND) == 0 && myCal.get(Calendar.MILLISECOND) == 0)) {
        throw new RuntimeException("String_Node_Str" + Integer.toString(myCal.get(Calendar.HOUR_OF_DAY)) + "String_Node_Str"+ Integer.toString(myCal.get(Calendar.MINUTE))+ "String_Node_Str"+ Integer.toString(myCal.get(Calendar.SECOND))+ "String_Node_Str");
      }
    }
    int algorithms[]=aCfg.getIntArray("String_Node_Str");
    for (int sel_alg=0; sel_alg < algorithms.length; sel_alg++) {
      anti_starvation=use_anti_starvation[sel_alg];
      resource_spec_packing=use_resource_spec_packing[sel_alg];
      skipJob=skip[set];
      firstArrival=timeskip[set];
      use_compresion=false;
      opt_alg=null;
      fix_alg=null;
      int alg=algorithms[sel_alg];
      int experiment_count=1;
      backfilled=0;
      name=data_sets[set];
      algID=alg;
      if (sel_alg > 0) {
        prevAlgID=algorithms[sel_alg - 1];
      }
      String suff="String_Node_Str";
      Scheduler scheduler=null;
      String scheduler_name="String_Node_Str";
      try {
        Calendar calendar=Calendar.getInstance();
        boolean trace_flag=false;
        String[] exclude_from_file={"String_Node_Str"};
        String[] exclude_from_processing={"String_Node_Str"};
        String report_name=null;
        GridSim.init(entities,calendar,trace_flag,exclude_from_file,exclude_from_processing,report_name);
        int rnd=new Random().nextInt();
        scheduler=new Scheduler(scheduler_name,baudRate,entities,results,alg,data_sets[set],total_gridlet[set],suff,windows,result_collector,sel_alg);
      }
 catch (      Exception ex) {
        Logger.getLogger(ExperimentSetup.class.getName()).log(Level.SEVERE,null,ex);
      }
      if (alg == 0) {
        policy=new FCFS(scheduler);
        suff="String_Node_Str";
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 1) {
        policy=new EDF(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 2) {
        policy=new EASY_Backfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 3) {
        policy=new AggressiveBackfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 4) {
        policy=new CONS(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      if (alg == 5) {
        policy=new PBS_PRO(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 6) {
        policy=new SJF(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 7) {
        policy=new FairshareFCFS(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 8) {
        policy=new FairshareMetaBackfilling(scheduler);
        suff="String_Node_Str";
        if (anti_starvation) {
          suff+="String_Node_Str";
        }
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 12) {
        policy=new FairshareOptimizedMetaBackfilling(scheduler);
        suff="String_Node_Str";
        if (anti_starvation) {
          suff+="String_Node_Str";
        }
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 9) {
        policy=new FairshareCONS(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      if (alg == 10) {
        policy=new BestGap(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 11) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        policy=new BestGap(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 18) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        policy=new CONS(scheduler);
        opt_alg=new TabuSearch();
        if (useEventOpt) {
          fix_alg=new TabuSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 19) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new GapSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 20) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new RandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 201 || alg == 202 || alg == 203) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new RandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 204 || alg == 205 || alg == 206) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 207 || alg == 208 || alg == 209) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new WeightedRandomSearch();
        if (useEventOpt) {
          fix_alg=new WeightedRandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 21) {
        suff="String_Node_Str";
        policy=new CONS(scheduler);
      }
      if (alg == 22) {
        policy=new Fairshare_EASY_Backfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 23) {
        policy=new BF_CONS_Fair(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      dir[3]=(sel_alg + 1) + "String_Node_Str" + suff;
      File algDirF=new File(ExperimentSetup.getDir(DirectoryLevel.ALGORITHM));
      algDirF.mkdir();
      result_collector.deleteSchedResults(suff);
      System.out.println("String_Node_Str" + total_gridlet[set] + "String_Node_Str"+ suff+ "String_Node_Str"+ data_sets[set]+ "String_Node_Str");
      suff+="String_Node_Str" + data_sets[set];
      for (int pass_count=1; pass_count <= experiment_count; pass_count++) {
        List<Plugin> plugins=new ArrayList<Plugin>();
        for (int i=0; i < pluginsString.length; i++) {
          String pluginString=pluginsString[i];
          if (!pluginString.contains("String_Node_Str")) {
            pluginString="String_Node_Str" + pluginString;
          }
          Plugin pl=PluginFactory.createPlugin(pluginString);
          pl.init(pluginConfigurations.get(i));
          plugins.add(pl);
        }
        result_collector.setPlugins(plugins);
        avail_RAM=0;
        avail_CPUs=0;
        try {
          String job_loader_name=data_sets[set] + "String_Node_Str";
          if (use_queues) {
            QueueLoader q_loader=new QueueLoader(data_sets[set]);
          }
 else {
            Scheduler.all_queues.addLast(new LinkedList<GridletInfo>());
          }
          MachineLoader m_loader=new MachineLoader(10000,3.0,data_sets[set]);
          rnd_seed=sel_alg;
          System.out.println(avail_CPUs + "String_Node_Str" + avail_RAM);
          JobLoader job_loader=new JobLoader(job_loader_name,baudRate,total_gridlet[set],data_sets[set],maxPE,minPErating,maxPErating,arrival_rate_multiplier,pass_count,m_loader.total_CPUs,estimates);
          if (failures) {
            String failure_loader_name=data_sets[set] + "String_Node_Str";
            FailureLoaderNew failure=new FailureLoaderNew(failure_loader_name,baudRate,data_sets[set],clusterNames,machineNames,0);
          }
          System.out.println("String_Node_Str");
          GridSim.startGridSimulation();
        }
 catch (        Exception e) {
          System.out.println("String_Node_Str");
          System.out.println(e.getMessage());
          e.printStackTrace();
        }
        System.out.println("String_Node_Str" + pass_count + "String_Node_Str");
        Scheduler.load=0.0;
        Scheduler.classic_load=0.0;
        Scheduler.max_load=0.0;
        Scheduler.classic_activePEs=0.0;
        Scheduler.classic_availPEs=0.0;
        Scheduler.activePEs=0.0;
        Scheduler.availPEs=0.0;
        Scheduler.requestedPEs=0.0;
        Scheduler.last_event=0.0;
        Scheduler.start_event=-10.0;
        Scheduler.runtime=0.0;
        Sim_system.setInComplete(true);
        result_collector.generateResults(suff,experiment_count);
        result_collector.reset();
        results.clear();
        System.out.println("String_Node_Str" + max_estim + "String_Node_Str"+ backfilled);
        System.gc();
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * The main method - create all entities and start the simulation. <br> It is also capable of multiple starts of the simulation with different setup (machine count, job parameters, data sets).
 */
public static void main(String[] args){
  String user_dir=System.getProperty("String_Node_Str");
  Registration.register();
  try {
    aCfg=new AleaConfiguration();
  }
 catch (  IOException e) {
    System.err.println("String_Node_Str" + e);
    return;
  }
  baudRate=aCfg.getDouble("String_Node_Str");
  entities=aCfg.getInt("String_Node_Str");
  maxPE=1;
  visualize=aCfg.getBoolean("String_Node_Str");
  data=aCfg.getBoolean("String_Node_Str");
  use_heap=aCfg.getBoolean("String_Node_Str");
  sld_tresh=aCfg.getDouble("String_Node_Str");
  algID=0;
  prevAlgID=-1;
  name="String_Node_Str";
  use_tsafrir=aCfg.getBoolean("String_Node_Str");
  use_speeds=aCfg.getBoolean("String_Node_Str");
  arrival_rate_multiplier=aCfg.getDouble("String_Node_Str");
  runtime_minimizer=aCfg.getDouble("String_Node_Str");
  use_RAM=aCfg.getBoolean("String_Node_Str");
  use_fairshare_WAIT=aCfg.getBoolean("String_Node_Str");
  use_fairshare_RAM=aCfg.getBoolean("String_Node_Str");
  use_fairshare=aCfg.getBoolean("String_Node_Str");
  multiply_sums=aCfg.getBoolean("String_Node_Str");
  use_MAX=aCfg.getBoolean("String_Node_Str");
  use_SQRT=aCfg.getBoolean("String_Node_Str");
  sum_multiplications=aCfg.getBoolean("String_Node_Str");
  useEventOpt=aCfg.getBoolean("String_Node_Str");
  avail_RAM=0.0;
  avail_CPUs=0.0;
  backfilled=0;
  use_queues=aCfg.getBoolean("String_Node_Str");
  by_queue=aCfg.getBoolean("String_Node_Str");
  data_sets=aCfg.getString("String_Node_Str");
  if (args.length > 0) {
    if (args[0].equals("String_Node_Str")) {
      visualize=true;
    }
  }
  LinkedList results=new LinkedList();
  String data_sets[]=aCfg.getStringArray("String_Node_Str");
  int total_gridlet[]=aCfg.getIntArray("String_Node_Str");
  LinkedList<Visualizator> windows=new LinkedList();
  if (visualize) {
    Visualizator.createGUI(windows);
  }
  failures=aCfg.getBoolean("String_Node_Str");
  reqs=aCfg.getBoolean("String_Node_Str");
  estimates=aCfg.getBoolean("String_Node_Str");
  use_AvgLength=aCfg.getBoolean("String_Node_Str");
  use_LastLength=aCfg.getBoolean("String_Node_Str");
  gap_length=aCfg.getInt("String_Node_Str");
  int weight_of_fairness[]=aCfg.getIntArray("String_Node_Str");
  String problem="String_Node_Str";
  if (!failures && !reqs) {
    problem+="String_Node_Str";
  }
  if (reqs) {
    problem+="String_Node_Str";
  }
  if (failures) {
    problem+="String_Node_Str";
  }
  if (estimates) {
    problem+="String_Node_Str";
  }
 else {
    problem+="String_Node_Str";
  }
  if (use_AvgLength) {
    problem+="String_Node_Str";
  }
  if (use_LastLength) {
    problem+="String_Node_Str";
  }
  if (useEventOpt) {
    problem+="String_Node_Str";
  }
  multiplicator=aCfg.getInt("String_Node_Str");
  on_demand_time_limit=aCfg.getInt("String_Node_Str");
  time_limit=aCfg.getInt("String_Node_Str");
  runtime_multiplicator=aCfg.getInt("String_Node_Str");
  path=aCfg.getString("String_Node_Str");
  meta=aCfg.getBoolean("String_Node_Str");
  if (meta) {
    data=false;
    String date="String_Node_Str" + new Date().toString();
    date=date.replace("String_Node_Str","String_Node_Str");
    date=date.replace("String_Node_Str","String_Node_Str");
    date=date.replace("String_Node_Str","String_Node_Str");
    System.out.println(date);
    problem+=date;
  }
  ResultCollector result_collector=new ResultCollector(results,problem);
  System.out.println("String_Node_Str" + System.getProperty("String_Node_Str"));
  dir[0]="String_Node_Str";
  File resultsFile=new File(ExperimentSetup.getDir(DirectoryLevel.RESULT_ROOT));
  if (!resultsFile.exists()) {
    resultsFile.mkdir();
  }
  dir[1]=getDate();
  File runDirF=new File(ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT));
  runDirF.mkdir();
  System.out.println("String_Node_Str" + runDirF.getPath());
  File configurationF=aCfg.getFile();
  File destinationF=new File(ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT) + File.separator + aCfg.getFileName());
  try {
    FileUtil.copyFile(configurationF,destinationF);
  }
 catch (  IOException ex) {
    Logger.getLogger(ExperimentSetup.class.getName()).log(Level.WARNING,null,ex);
  }
  if (visualize) {
    File graphs=new File(user_dir + File.separator + ExperimentSetup.getDir(DirectoryLevel.EXPERIMENT_ROOT)+ File.separator+ "String_Node_Str");
    graphs.mkdir();
  }
  String[] pluginsString=aCfg.getStringArray("String_Node_Str");
  List<Map<String,String>> pluginConfigurations=new ArrayList<Map<String,String>>();
  String[] pluginHeaders=new String[pluginsString.length];
  for (int i=0; i < pluginsString.length; i++) {
    Map<String,String> plugincfg=aCfg.getPluginConfiguration(i);
    String header=plugincfg.get(PluginConfiguration.RESULT_HEADER);
    pluginHeaders[i]=header;
    pluginConfigurations.add(plugincfg);
  }
  for (int set=0; set < data_sets.length; set++) {
    String date=getDate();
    dir[2]=data_sets[set] + "String_Node_Str" + date;
    File dataSetDirF=new File(ExperimentSetup.getDir(DirectoryLevel.DATA_SET));
    dataSetDirF.mkdir();
    String prob=problem;
    fair_weight=weight_of_fairness[set];
    max_estim=0;
    result_collector.generateHeader(data_sets[set] + "String_Node_Str" + prob,pluginHeaders);
    prevAlgID=-1;
    boolean use_anti_starvation[]=aCfg.getBooleanArray("String_Node_Str");
    boolean use_resource_spec_packing[]=aCfg.getBooleanArray("String_Node_Str");
    int skip[]=aCfg.getIntArray("String_Node_Str");
    int timeskip[]=aCfg.getIntArray("String_Node_Str");
    int algorithms[]=aCfg.getIntArray("String_Node_Str");
    for (int sel_alg=0; sel_alg < algorithms.length; sel_alg++) {
      anti_starvation=use_anti_starvation[sel_alg];
      resource_spec_packing=use_resource_spec_packing[sel_alg];
      skipJob=skip[set];
      firstArrival=timeskip[set];
      use_compresion=false;
      opt_alg=null;
      fix_alg=null;
      int alg=algorithms[sel_alg];
      int experiment_count=1;
      backfilled=0;
      name=data_sets[set];
      algID=alg;
      if (sel_alg > 0) {
        prevAlgID=algorithms[sel_alg - 1];
      }
      String suff="String_Node_Str";
      Scheduler scheduler=null;
      String scheduler_name="String_Node_Str";
      try {
        Calendar calendar=Calendar.getInstance();
        boolean trace_flag=false;
        String[] exclude_from_file={"String_Node_Str"};
        String[] exclude_from_processing={"String_Node_Str"};
        String report_name=null;
        GridSim.init(entities,calendar,trace_flag,exclude_from_file,exclude_from_processing,report_name);
        int rnd=new Random().nextInt();
        scheduler=new Scheduler(scheduler_name,baudRate,entities,results,alg,data_sets[set],total_gridlet[set],suff,windows,result_collector,sel_alg);
      }
 catch (      Exception ex) {
        Logger.getLogger(ExperimentSetup.class.getName()).log(Level.SEVERE,null,ex);
      }
      if (alg == 0) {
        policy=new FCFS(scheduler);
        suff="String_Node_Str";
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 1) {
        policy=new EDF(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 2) {
        policy=new EASY_Backfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 3) {
        policy=new AggressiveBackfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 4) {
        policy=new CONS(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      if (alg == 5) {
        policy=new PBS_PRO(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 6) {
        policy=new SJF(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 7) {
        policy=new FairshareFCFS(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 8) {
        policy=new FairshareMetaBackfilling(scheduler);
        suff="String_Node_Str";
        if (anti_starvation) {
          suff+="String_Node_Str";
        }
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 12) {
        policy=new FairshareOptimizedMetaBackfilling(scheduler);
        suff="String_Node_Str";
        if (anti_starvation) {
          suff+="String_Node_Str";
        }
        if (resource_spec_packing) {
          suff+="String_Node_Str";
        }
      }
      if (alg == 9) {
        policy=new FairshareCONS(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      if (alg == 10) {
        policy=new BestGap(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 11) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        policy=new BestGap(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 18) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        policy=new CONS(scheduler);
        opt_alg=new TabuSearch();
        if (useEventOpt) {
          fix_alg=new TabuSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 19) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new GapSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 20) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new RandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 201 || alg == 202 || alg == 203) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new RandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 204 || alg == 205 || alg == 206) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new RandomSearch();
        if (useEventOpt) {
          fix_alg=new GapSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 207 || alg == 208 || alg == 209) {
        suff="String_Node_Str" + multiplicator + "String_Node_Str";
        use_compresion=false;
        policy=new CONS(scheduler);
        opt_alg=new WeightedRandomSearch();
        if (useEventOpt) {
          fix_alg=new WeightedRandomSearch();
          suff+="String_Node_Str";
        }
      }
      if (alg == 21) {
        suff="String_Node_Str";
        policy=new CONS(scheduler);
      }
      if (alg == 22) {
        policy=new Fairshare_EASY_Backfilling(scheduler);
        suff="String_Node_Str";
      }
      if (alg == 23) {
        policy=new BF_CONS_Fair(scheduler);
        use_compresion=true;
        suff="String_Node_Str";
      }
      dir[3]=(sel_alg + 1) + "String_Node_Str" + suff;
      File algDirF=new File(ExperimentSetup.getDir(DirectoryLevel.ALGORITHM));
      algDirF.mkdir();
      result_collector.deleteSchedResults(suff);
      System.out.println("String_Node_Str" + total_gridlet[set] + "String_Node_Str"+ suff+ "String_Node_Str"+ data_sets[set]+ "String_Node_Str");
      suff+="String_Node_Str" + data_sets[set];
      for (int pass_count=1; pass_count <= experiment_count; pass_count++) {
        List<Plugin> plugins=new ArrayList<Plugin>();
        for (int i=0; i < pluginsString.length; i++) {
          String pluginString=pluginsString[i];
          if (!pluginString.contains("String_Node_Str")) {
            pluginString="String_Node_Str" + pluginString;
          }
          Plugin pl=PluginFactory.createPlugin(pluginString);
          pl.init(pluginConfigurations.get(i));
          plugins.add(pl);
        }
        result_collector.setPlugins(plugins);
        avail_RAM=0;
        avail_CPUs=0;
        try {
          String job_loader_name=data_sets[set] + "String_Node_Str";
          if (use_queues) {
            QueueLoader q_loader=new QueueLoader(data_sets[set]);
          }
 else {
            Scheduler.all_queues.addLast(new LinkedList<GridletInfo>());
          }
          MachineLoader m_loader=new MachineLoader(10000,3.0,data_sets[set]);
          rnd_seed=sel_alg;
          System.out.println(avail_CPUs + "String_Node_Str" + avail_RAM);
          JobLoader job_loader=new JobLoader(job_loader_name,baudRate,total_gridlet[set],data_sets[set],maxPE,minPErating,maxPErating,arrival_rate_multiplier,pass_count,m_loader.total_CPUs,estimates);
          if (failures) {
            String failure_loader_name=data_sets[set] + "String_Node_Str";
            FailureLoaderNew failure=new FailureLoaderNew(failure_loader_name,baudRate,data_sets[set],clusterNames,machineNames,0);
          }
          System.out.println("String_Node_Str" + alea_version);
          GridSim.startGridSimulation();
        }
 catch (        Exception e) {
          System.out.println("String_Node_Str");
          System.out.println(e.getMessage());
          e.printStackTrace();
        }
        System.out.println("String_Node_Str" + pass_count + "String_Node_Str");
        Scheduler.load=0.0;
        Scheduler.classic_load=0.0;
        Scheduler.max_load=0.0;
        Scheduler.classic_activePEs=0.0;
        Scheduler.classic_availPEs=0.0;
        Scheduler.activePEs=0.0;
        Scheduler.availPEs=0.0;
        Scheduler.requestedPEs=0.0;
        Scheduler.last_event=0.0;
        Scheduler.start_event=-10.0;
        Scheduler.runtime=0.0;
        Sim_system.setInComplete(true);
        result_collector.generateResults(suff,experiment_count);
        result_collector.reset();
        results.clear();
        System.out.println("String_Node_Str" + max_estim + "String_Node_Str"+ backfilled);
        System.gc();
      }
    }
  }
}