Fitness normalization

Fitness functions must be non-negative to work properly with meta-optimization in SwarmOps. This is because pre-emptive fitness evaluation works by summing fitness values for several optimization runs and aborting the summation when the fitness sum becomes worse than that needed for the new candidate solution to be considered an improvement. This means that fitness values must be non-negative, so the fitness sum is only able to grow worse and the evaluation can thus be aborted safely. SwarmOps for C# does this normalization automatically, provided you accurately implement the MinFitness field of the problem class. For example, you may have a fitness function  which maps to, for example, . In this case, you would have to set MinFitness to . It is best to make MinFitness accurate so that  for the optimum , that is, MinFitness should be the fitness of the optimum. You should be able to estimate a lower fitness boundary for most real-world problems, and if you are unsure what the theoretical boundary value is, you may choose some boundary fitness value of ample—but not extreme—magnitude.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset