UniformResetMutation

class UniformResetMutation(val problemDefinition: ProblemDefinition, perGeneRate: Double = defaultPerGeneRate) : MutationOperatorIfc(source)

Uniform-reset mutation: an alternate mutation operator. Each coordinate i is, with probability perGeneRate, replaced by a value drawn uniformly from input i's defined range (so it has no memory of the current value). Coordinates with a non-positive range are left unchanged. The returned point is a new array; the supplied point is not modified. The result is range-feasible by construction, but the solver still passes it through ksl.simopt.problem.ProblemDefinition.toInputMap for granularity rounding.

Parameters

problemDefinition

the problem definition providing per-input ranges

perGeneRate

the probability that an individual coordinate is reset. Must be in 0,1. The default is defaultPerGeneRate.

Constructors

Link copied to clipboard
constructor(problemDefinition: ProblemDefinition, perGeneRate: Double = defaultPerGeneRate)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun mutate(point: DoubleArray, solver: GeneticAlgorithmSolver): DoubleArray

Mutates a single offspring point.

Link copied to clipboard
open override fun toString(): String