Генетические алгоритмы
План
- Круг задач. Основные понятия. Суть алгоритма. Примеры.
- Реализация pyEvolve. Примеры.
- Беды и тонкости:
- Кодировка
- Функция приспособленности
- Многоэкстремальность: много оптимумов сравнимого качества
- Изолированность (иголка в стоге сена)
- Обманчивость (иголка в стоге сена + ложный оптимум)
- Дополнительный шум
- Размер популяции
- Критерий остановки
- Вероятность мутации, тип мутации
- Вероятность кроссинговера, тип кроссинговера
- Бесчисленные модификации
- Родственные алгоритмы: генетическое программирование, дифференциальная эволюция, еволюционные стратегии
Ссылки
"Генетические алгоритмы: почему они работают? когда их применять?", Росс Клемент
Конспекты по генетическим алгоритмам. (google docs) doc file
Clever Algorithms (chapter 3) – очень хороший лит. обзор по теме и широким окрестностям.
- Готовые библиотеки:
Сравнение дифференциальной эволюции и генетических алгоритмов (pdf)
Использование генетических алгоритмов для построения множественных выравниваний