Free cookie consent management tool by TermsFeed Policy Generator

Ticket #2221: AnalyticalPTSP.cs.patch

File AnalyticalPTSP.cs.patch, 1.8 KB (added by ascheibe, 8 years ago)

Patch mentioned in review comments

  • HeuristicLab.Problems.PTSP/3.3/AnalyticalPTSP.cs

     
    4444
    4545    public override double Evaluate(Permutation tour, IRandom random) {
    4646      // Analytical evaluation
     47      var probabilities = Probabilities;
     48      var distanceMatrix = DistanceMatrix;
     49
    4750      double firstSum = 0;
    4851      for (int i = 0; i < tour.Length - 1; i++) {
    4952        for (int j = i + 1; j < tour.Length - 1; j++) {
    50           double sum1 = DistanceMatrix[tour[i], tour[j]] * Probabilities[tour[i]] * Probabilities[tour[j]];
     53          double sum1 = distanceMatrix[tour[i], tour[j]] * probabilities[tour[i]] * probabilities[tour[j]];
    5154          for (int k = i + 1; k < j; k++) {
    52             sum1 = sum1 * (1 - Probabilities[tour[k]]);
     55            sum1 = sum1 * (1 - probabilities[tour[k]]);
    5356          }
    5457          firstSum += sum1;
    5558        }
     
    5760      double secondSum = 0;
    5861      for (int j = 0; j < tour.Length - 1; j++) {
    5962        for (int i = 0; i < j; i++) {
    60           double sum2 = DistanceMatrix[tour[j], tour[i]] * Probabilities[tour[i]] * Probabilities[tour[j]];
     63          double sum2 = distanceMatrix[tour[j], tour[i]] * probabilities[tour[i]] * probabilities[tour[j]];
    6164          for (int k = j + 1; k < tour.Length - 1; k++) {
    62             sum2 = sum2 * (1 - Probabilities[tour[k]]);
     65            sum2 = sum2 * (1 - probabilities[tour[k]]);
    6366          }
    6467          for (int k = 1; k < i; k++) {
    65             sum2 = sum2 * (1 - Probabilities[tour[k]]);
     68            sum2 = sum2 * (1 - probabilities[tour[k]]);
    6669          }
    6770          secondSum += sum2;
    6871        }