@Override public double evaluate(TSPIncrementalOptimizationProblem problem) { float cost = (float) super.evaluate(problem); boolean used[] = problem.usedVariables(); for (int i = 1; i < min.length; i++) { // 0 is always used @ beginning/end of circuit if (!used[i]) cost += min[i]; } return cost; }