Esempio n. 1
0
  @Override
  protected List<Node<Instance>> getStartNodes() {
    List<Node<Instance>> startNodes = super.getStartNodes();

    if (!offeredSolutions.isEmpty()) {
      startNodes.remove(0);
      FitInstance<Instance> bestOfferedSolution = Collections.max(offeredSolutions);
      offeredSolutions.clear();

      Node<Instance> node = addChildToBest(bestOfferedSolution.getInstance()).getDest();
      System.out.println(
          "Crossover ("
              + stats.getBestFitness()
              + ", "
              + bestOfferedSolution.getFitness()
              + ") best child fitness = "
              + node.getFitness());
      startNodes.add(node);
    }
    return startNodes;
  }