Free cookie consent management tool by TermsFeed Policy Generator

# Changeset 11672

Ignore:
Timestamp:
12/09/14 14:25:57 (9 years ago)
Message:

#2282 Commenting, added some basic unit tests for P3.

Location:
branches/Parameter-less Population Pyramid
Files:
8 edited

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

 r11668 [StorableClass] [Creatable("Parameterless Population Pyramid")] // In the GECCO paper, Section 2.1 public class HillClimber : AlgorithmBase { [Storable] } } public static double ImproveToLocalOptimum(IBinaryVectorProblem problem, bool[] solution, double fitness, IRandom rand) { var tried = new HashSet();

 r11667 namespace HeuristicLab.Algorithms.ParameterlessPopulationPyramid { public static class LinkageCrossover { // In the GECCO paper, Figure 3 public static double ImproveUsingTree(LinkageTree tree, IList donors, bool[] solution, double fitness, IBinaryVectorProblem problem, IRandom rand) { var options = Enumerable.Range(0, donors.Count).ToArray();

 r11669 // While "total" always has an integer value, it is a double to reduce // how often type casts are needed to prevent integer divison // In the GECCO paper, calculates Equation 2 private static double NegativeEntropy(int[] counts, double total) { double sum = 0; } // Uses the frequency table to calcuate the entropy distance between two indices. // In the GECCO paper, calculates Equation 1 private double EntropyDistance(int i, int j) { // This ensures you are using the lower triangular part of "occurances" } // Performs O(N^2) clustering based on the method described in: // "Optimal implementations of UPGMA and other common clustering algorithms" // by I. Gronau and S. Moran // In the GECCO paper, Figure 2 is a simplified version of this algorithm. private void Rebuild() { // Keep track of which clusters have not been merged topLevel.Swap(end_of_path, best_index); end_of_path++; } // Last two elements in the path are the clusters to join
• ## branches/Parameter-less Population Pyramid/HeuristicLab.Algorithms.ParameterlessPopulationPyramid/3.3/ParameterlessPopulationPyramid.cs

 r11669 } // In the GECCO paper, Figure 1 private double iterate() { // Create a random solution
• ## branches/Parameter-less Population Pyramid/HeuristicLab.Algorithms.ParameterlessPopulationPyramid/3.3/Problems/DeceptiveStepTrapProblem.cs

 r11669 [StorableClass] [Creatable("Parameterless Population Pyramid")] // In the GECCO paper, Section 4.1 public class DeceptiveStepTrapProblem : DeceptiveTrapProblem { [StorableConstructor]
• ## branches/Parameter-less Population Pyramid/HeuristicLab.Algorithms.ParameterlessPopulationPyramid/3.3/Problems/DeceptiveTrapProblem.cs

 r11669 [StorableClass] [Creatable("Parameterless Population Pyramid")] // In the GECCO paper, Section 4.1 public class DeceptiveTrapProblem : BinaryVectorProblem { [StorableConstructor] } // In the GECCO paper, calculates Equation 3 protected virtual int Score(bool[] individual, int trapIndex) { int result = 0; // count number of bits in trap set to 1 for (int index = trapIndex; index < trapIndex + TrapSize; index++) { if (individual[index]) result++;
• ## branches/Parameter-less Population Pyramid/HeuristicLab.Algorithms.ParameterlessPopulationPyramid/3.3/Problems/HIFFProblem.cs

 r11669 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; namespace HeuristicLab.Algorithms.ParameterlessPopulationPyramid.Problems { namespace HeuristicLab.Algorithms.ParameterlessPopulationPyramid { [Item("Hierararchical If and only If problem", "Genome evaluated in nested subsets to see if each subset contains either all 0s or all 1s.")] [StorableClass] [Creatable("Parameterless Population Pyramid")] // In the GECCO paper, Section 4.1 public class HIFFProblem : BinaryVectorProblem { [StorableConstructor]
• ## branches/Parameter-less Population Pyramid/ParameterlessPopulationPyramid.Test/ParameterlessPopulationPyramid.Test.csproj

 r11667 ..\HeuristicLab.Algorithms.ParameterlessPopulationPyramid\3.3\obj\Release\HeuristicLab.Algorithms.ParameterlessPopulationPyramid-3.3.dll ..\..\..\trunk\sources\bin\HeuristicLab.Analysis-3.3.dll ..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll ..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll ..\..\..\trunk\sources\bin\HeuristicLab.Encodings.BinaryVectorEncoding-3.3.dll ..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll
Note: See TracChangeset for help on using the changeset viewer.