Эволюционное программирование
10.6. Параметры ЭП
К основным параметрам ЭП относится, прежде всего, размер шага мутации. В простейшем случае значения отклонения фиксируются и функция параметра линейна, т.е. , где малая величина. Тогда потомок вычисляется в предположении Гауссова распределения с . Нотация означает, что новое случайное значение генерируется для каждой компоненты каждой особи. Очевидным недостатком такого подхода является то, что слишком малые значения ограничивают пространство поиска и дают низкую скорость сходимости. С другой стороны, слишком большие значения сдерживают "эксплуатацию" пространства поиска и способность точной доводки решения. Поэтому разработаны различные динамические стратегии изменения значений параметров.
В одном из первых методов динамической настройки параметров его значение зависит от значения фитнесс-функции [6,13]:
, где и потомок генерируется следующим образом .
Если доступна информация о глобальном оптимуме, то вместо абсолютного значения фитнесс-функции можно использовать значение ошибки. Но, к сожалению, такая информация обычно недоступна. В качестве альтернативы можно использовать расстояние (на уровне фенотипа) от лучшей текущей особи, которое определяется выражением
где - лучшая особь.
Расстояние от лучшей текущей особи в пространстве решений также можно использовать для этих целей:
где означает Евклидово расстояние между векторами. Преимущество этого подхода в том, что здесь чем хуже особь, тем больше шансов у нее мутировать. При этом потомок удаляется от худшей родительской особи. С другой стороны, чем лучше особь, тем потомок меньше удаляется от родительской особи, что позволяет "доводить" хорошее текущее решение. Но данный подход имеет следующие недостатки:
- для очень больших значений фитнесс-функции размер шага может также быть слишком большим, что чревато пропуском оптимума;
- проблема может быть даже в случае, когда худшее значение имеет большое ненулевое значение. Если значение фитнесс-функции хорошей особи также велико, размер шага может быть большим, что "уводит" особи от хороших решений. В таких случаях, если доступна информация об оптимуме, лучше использовать значение ошибки.
Предложено достаточно много способов управления размером шага, когда этот размер является некоторой функцией от значений фитнесс-функции и ниже приведены некоторые методы:
- Фогель [9] предложил аддитивный подход, где ,а и - коэффициенты пропорциональности и сдвига.
- Для функции в [14] предложено ,где - размерность пространства поиска .
- Для обучения рекуррентных нейронных сетей в [15] используется , где - коэффициент пропорциональности и с максимальным значением текущей популяции (здесь рассматривается случай максимизации и возвращает положительные значения).
- В работе [17] (для задач минимизации) используется отклонение, пропорциональное нормализованному значению фитнесс-функции , где - коэффициент пропорциональности, и - мощность популяции.
- В работе [17] (для задач максимизации) используется выражение , которое позволяет комбинировать граничные условия и фитнесс-функцию. Здесь и определяют границы диапазона изменения в пространстве поиска и параметр является малым числом.
- В [18] используется отклонение, пропорциональное расстоянию от лучшей особи ,где параметр и коэффициент пропорциональности определяется следующим образом: , где и определяет ширину пространства поиска как Евклидово расстояние между векторами и . При этом большие значения параметра способствуют расширению пространства поиска, а малые значения – его эксплуатации. Иногда этот параметр изменяется со временем от больших начальных значений до малых конечных. При этом потомок генерируется так: , где направление определяется выражением
- В работе [19] предложено использовать следующее выражение: , где и , представляют минимальное и максимальное значения фитнесс-функции текущей популяции.