Mutation

This package contains implementations of mutation strategies.

Overview Diagram

IMutatePopulation

IMutatePopulation<S extends ISolution> is the root interface of this package. It defines a strategy for mutating a population.

Its currently sole implementation is IndividuallyMutatePopulation, which mutates solutions one by one, with some probability, relying on a IMutateSolution<S> strategy to perform the actual mutation.

IMutateSolution

IMutateSolution<S extends ISolution> is the strategy that actually performs the mutation of a given solution.

Current implementations are:

  • StochasticMutate - randomly chooses a number of features to mutate, then randomly chooses which ones it does mutate.

Attachments:

mutation_overview.JPG (image/jpeg)