Opened 6 months ago

Last modified 6 months ago

#2706 reviewing enhancement

Binary problems should include similarity calculators for population diversity analysis

Reported by: abeham Owned by: jkarder
Priority: medium Milestone: HeuristicLab 3.3.15
Component: Problems.Binary Version: 3.3.14
Keywords: Cc:


The binary problems (HIFF, DeceptiveTrap, DeceptiveStepTrap, and 1-max) do not include population diversity analyzers.

The Knapsack problem as the 5th binary problem that we have in the trunk doesn't derive from BinaryProblem and does have such an analyzer, but it includes its own similarity calculator that is actually a similarity calculator on binary vectors in general.

Change History (3)

comment:1 Changed 6 months ago by abeham

  • Owner set to abeham
  • Status changed from new to accepted

comment:2 Changed 6 months ago by abeham


  • Encodings.BinaryVector:
    • Added HammingSimilarityCalculator
  • Problems.Knapsack:
    • Made KnapsackSimilarityCalculator NonDiscoverable and Obsolete
    • Added HammingSimilarityCalculator to KnapsackProblem and removed NoSimilarityCalculator
  • Problems.Binary:
    • Added HammingSimilarityCalculator and QualitySimilarityCalculator to BinaryProblem
    • Added PopulationSimilarityAnalyzer to BinaryProblem

In my opinion, encoding-specific similarity calculators should be provided and parameterized as part of the encoding. However, the encoding currently only deals with types of IOperator and similarity calculators are not operators. This would be a greater change that we'll have to consider as part of the encodings refactoring.

comment:3 Changed 6 months ago by abeham

  • Owner changed from abeham to jkarder
  • Status changed from accepted to reviewing
Note: See TracTickets for help on using tickets.