Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/06/14 16:58:02 (9 years ago)
Author:
bgoldman
Message:

#2282 Major bug fixes, now gets answers close to correct.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/Parameter-less Population Pyramid/HeuristicLab.Algorithms.ParameterlessPopulationPyramid/3.3/LinkageCrossover.cs

    r11666 r11667  
    5757      if (changed) {
    5858        double newFitness = problem.Evaluate(solution);
    59         if (problem.IsBetter(newFitness, fitness)) {
    60           // improvement made, keep change to solution
    61           fitness = newFitness;
    62         } else {
    63           // revert solution
     59        // if the original is strictly better, revert the change
     60        if (problem.IsBetter(fitness, newFitness)) {
    6461          foreach (var index in flipped) {
    6562            solution[index] = !solution[index];
    6663          }
     64        } else {
     65          // new solution is no worse than original, keep change to solution
     66          fitness = newFitness;
    6767        }
    6868      }
Note: See TracChangeset for help on using the changeset viewer.