Учебники

Генетические алгоритмы — мутация

Проще говоря, мутация может быть определена как небольшая случайная подстройка в хромосоме, чтобы получить новое решение. Он используется для поддержания и внесения разнообразия в генетическую популяцию и обычно применяется с низкой вероятностью — p m . Если вероятность очень высока, GA уменьшается до случайного поиска.

Мутация — это часть ГА, которая связана с «исследованием» пространства поиска. Наблюдалось, что мутация необходима для конвергенции ГА, а кроссовер — нет.

Операторы мутации

В этом разделе мы опишем некоторые из наиболее часто используемых операторов мутации. Как и операторы кроссовера, это не исчерпывающий список, и разработчик GA может найти сочетание этих подходов или оператора мутации для конкретной задачи более полезным.

Бит-флип-мутация

В этой битовой мутации мы выбираем один или несколько случайных битов и переворачиваем их. Это используется для двоичных кодированных GA.

Бит-флип-мутация

Случайный сброс

Случайный сброс — это расширение переворота битов для целочисленного представления. При этом случайное значение из набора допустимых значений присваивается случайно выбранному гену.

Поменять местами мутацию

В мутации обмена мы выбираем две позиции в хромосоме случайным образом и меняем значения. Это часто встречается в кодировках на основе перестановок.

Поменять местами мутацию

Мутация Scramble

Мутация скремблирования также популярна в представлениях перестановок. При этом из всей хромосомы выбирается подмножество генов, и их значения случайным образом перемешиваются или перемешиваются.

Мутация Scramble

Инверсионная мутация

В инверсионной мутации мы выбираем подмножество генов, как в мутации скремблирования, но вместо того, чтобы перетасовывать подмножество, мы просто инвертируем всю строку в подмножестве.