Дифференциальная эволюция для генетического алгоритма

Алгоритм дифференциальной эволюции

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

Дифференциальная эволюция имеет специальную номенклатуру, описывающую принятую конфигурацию. Это принимает форму DE / x / y / z, где x представляет решение, которое нужно возмутить (такое случайное или лучше). Y означает количество векторов разности, используемых при возмущении x, где вектор разности — это разница между двумя случайно выбранными, хотя и разными, членами совокупности. Наконец, z означает выполненный оператор рекомбинации, такой как bin для биномиального и exp для экспоненциального.

Дифференциальная эволюция была разработана для оптимизация нелинейная и недифференцируемая непрерывная функция. Весовой коэффициент F в [0; 2] управляет усилением дифференциальной вариации, предлагается значение 0,8. Вес кроссовера CR в [0; 1] вероятностно контролирует количество рекомбинации, предлагается значение 0,9. Начальная популяция возможных решений должна быть сгенерирована случайным образом из пространства действительных решений. Популярными конфигурациями являются DE/rand/1/* и DE/best/2/*.

Следующий алгоритм описывает алгоритм дифференциальной эволюции для минимизации функции стоимости, в частности, для конфигурации DE/-rand/1/bin.

дифференциальная эволюция
Делиться
ru_RURU