Як це працює
ДЕ підтримує популяцію з NP кандидатних векторів. У кожному поколінні для кожного цільового вектора x_i обираються три випадкові вектори x_r1, x_r2, x_r3. Мутант v = x_r1 + F·(x_r2 - x_r3). Двійкове схрещування створює пробний вектор u: кожен вимір береться з v з ймовірністю CR або з x_i інакше. Якщо f(u) <= f(x_i), u замінює x_i (жадібний відбір).
Контурний графік показує ландшафт функції (темніше=менше). Сині точки — популяція; червона зірка — найкращий розв'язок. Графік збіжності (праворуч) показує найкращу функцію на покоління у логарифмічному масштабі.
Часті запитання
Що таке Диференційна Еволюція (ДЕ)?
Диференційна еволюція — популяційний стохастичний алгоритм оптимізації Сторна і Прайса (1997). Він еволюціонує кандидатні рішення за допомогою мутації, схрещування і відбору без потреби в градієнтах.
Як працює мутація DE/rand/1/bin?
Три випадкові вектори x_r1, x_r2, x_r3 обираються з популяції. Вектор-мутант v = x_r1 + F·(x_r2 - x_r3), де F ∈ [0,2] — масштабний коефіцієнт мутації, що контролює крок пошуку.
Що таке операція схрещування в ДЕ?
При двійковому схрещуванні кожен вимір пробного вектора u береться з мутанта v з ймовірністю CR або з цільового x інакше. Принаймні один вимір завжди береться з мутанта.
Що таке параметри F і CR в ДЕ?
F (коефіцієнт мутації) контролює крок мутації, зазвичай F ∈ [0.4, 1.0]. CR (частота схрещування) — частка параметрів з мутанта, зазвичай CR ∈ [0.1, 0.9]. Вище CR = більше дослідження.
Що таке функція Розенброка?
f(x,y) = (1-x)² + 100(y-x²)² має вузьку зігнуту долину. Глобальний мінімум у (1,1) з f=0. Долину легко знайти, але мінімум важко локалізувати точно.
Що таке функція Растригіна?
Сильно мультимодальна функція: f(x,y) = 20 + x²-10cos(2πx) + y²-10cos(2πy). Глобальний мінімум в (0,0) з f=0. Тестує здатність до глобальної оптимізації.
Що таке функція Аклі?
Функція Аклі має майже плоску зовнішню область з глибоким глобальним мінімумом в (0,0). Перевіряє здатність алгоритму уникати передчасної збіжності до локальних оптимумів.
Як ДЕ порівнюється з іншими еволюційними алгоритмами?
ДЕ зазвичай перевершує генетичні алгоритми і рій частинок на безперервних тестах. Простіша, ніж CMA-ES, добре масштабується до ~100 вимірів. CMA-ES краща для дуже гладких задач великої розмірності.
Що таке самоадаптивна ДЕ (SaDE)?
Самоадаптивна ДЕ автоматично коригує F і CR під час оптимізації на основі їх успішності, усуваючи ручне налаштування. Успішні значення записуються і використовуються для генерації нових параметрів.
Коли слід використовувати Диференційну Еволюцію?
Використовуйте ДЕ для задач типу чорного ящика, недиференційовних, мультимодальних або зашумлених з неперервними змінними, зазвичай 5–50 вимірів. Добра для підбору параметрів і технічного проектування.