mutation: Mutating the offspring

View source: R/mutation.R

mutationR Documentation

Mutating the offspring

Description

The function described below mutates offspring from the selected individuals that fit the best based on the predefined condition(aim/objective).
e.g.: To optimize the function f(x) = x^2 - 4x + 4 to find the value of x that minimizes the function. x: represents a possible value the an individual from the population can have.

Usage

mutation(offspring, mutation_rate)

Arguments

offspring

The list of offspring.

mutation_rate

The probably of a single offspring to be modified/mutated.

Details

The mutation is needed to increase the diversity in the population and help the next generation close to the fitness.

Value

The output expected should be a list of mutated offspring.

Author(s)

Dany Mukesha

Examples

# example of usage
population <- c(1, 3, 0)

# Evaluate fitness.
fitness <- genetic.algo.optimizeR::evaluate_fitness(population)
print("Evaluation:")
print(fitness)

# Selection
selected_parents <- genetic.algo.optimizeR::selection(population, fitness, num_parents = 2)
print("Selection:")
print(selected_parents)

# Crossover
offspring <- genetic.algo.optimizeR::crossover(selected_parents, offspring_size = 2)
print("Crossover:")
print(offspring)

# Mutation
mutated_offspring <- genetic.algo.optimizeR::mutation(offspring, mutation_rate = 0)
# (no mutation in this example)
print(mutated_offspring)


genetic.algo.optimizeR documentation built on Oct. 10, 2024, 5:07 p.m.