Метод дифференциальной эволюции – один из методов эволюционного моделирования, предназначенный для решения задачи многомерной оптимизации.
Основные цели модификации существующих и разработки новых генетических операторов – улучшение сходимости генетического алгоритма, поиск глобального оптимального решения за предельно короткое время. Наиболее существенно продвинуться в данном направлении позволяет включение в репродуктивный план оператора многохромосомного кроссовера.
Практически на всех этапах работы генетических алгоритмов приходится иметь дело с необходимостью выбора родительских особей для применения генетических операторов, дочерних особей для включения в новую популяцию, исключения особей из популяции.
Алгоритмы вещественного кодирования работают, в общем случае, с непрерывной областью допустимых значений переменных. Данный класс алгоритмов позволяет уменьшить объём вычислительных процедур на каждом шаге эволюции за счёт отсутствия двоично-десятичных преобразований при расчёте значений функций приспособленности и уменьшения размеров хромосом.
Основной принцип работы диплоидных генетических алгоритмов заключается в возможности кодирования одних и тех же свойств особи (переменных) хромосомными наборами, полученными от обоих родителей. При этом проявляются свойства в дочерней особи в зависимости от отношений доминантности и рецессивности между гомологичными (находящимися в одинаковых позициях) генами родительских хромосом.
Среди стратегий, использующихся в современных генетических алгоритмах, можно выделить стратегии элитизма, разнообразия, «свежей крови», изменения размера популяции, параллельных эволюций (миграции, турнирную).
К числу новых генетических операторов относятся сегрегация, транслокация, дупликация, делеция.
Современные генетические алгоритмы развивались, в том числе, в направлении совершенствования и модификации базовых генетических операторов. Рассмотрим эти модификации.
Развитие генетических алгоритмов привело к возникновению множества различных генетических операторов (см. рис.).
Одним из центральных понятий при эволюционном моделировании является функция приспособленности. При оптимизации с помощью генетического алгоритма в качестве функции приспособленности используется критерий оптимальности решаемой. Для расчёта приспособленности особи её необходимо перекодировать в вещественную форму.
Непосредственно двоичный код, как правило, всё-таки не используется для бинарного представления хромосомы. Это связано с тем, что минимально отличающиеся в вещественном представлении переменные в большинстве случаев имеют большие различия (во многих позициях генов) при их двоичном представлении. Рассмотрим это на примере.
Генетические алгоритмы либо сами используются для решения задач оптимизации, либо сама задача, решаемая с помощью данного инструмента, сводится к оптимизационной. Причём оптимизация должна быть многомерной, иначе нет никакого смысла использовать такой сложный метод. Решение любой задачи оптимизации – это вектор значений оптимизируемых переменных, обеспечивающих наилучшую величину некоторого критерия.
Ниже представлена основная терминология в области генетических алгоритмов