Performs mutation operation on a given double vector
Performs mutation operation on a given double vector
This function is not called directly but is given as a parameter in GA::ga function. In GA::ga, if the parameter mutation= is set to byte_mutation_random than the byte-coded mutation operator is applied in the genetic search. In mcga2 function, the hard-coded mutation parameter is set to byte_mutation by definition. This function simply takes an double vector and changes bytes randomly in the range of [0,255] using the pre-determined mutation probabilty.
byte_mutation_random(object, parent,...)
Arguments
object: A GA::ga object
parent: Index of the candidate solution of the current population
...: Additional arguments to be passed to the function
Returns
Mutated double vector
Examples
f <-function(x){ return(-sum((x-5)^2))}myga <- GA::ga(type="real-valued", fitness = f, popSize =100, maxiter =200, min = rep(-50,5), max = rep(50,5), crossover = byte_crossover, mutation = byte_mutation_random, pmutation =0.20)print(myga@solution)
M.H.Satman (2013), Machine Coded Genetic Algorithms for Real Parameter Optimization Problems, Gazi University Journal of Science, Vol 26, No 1, pp. 85-95