Классические методы оптимизации — градиентный спуск, генетические алгоритмы с элитизмом, CMA-ES — заточены под одну вещь: найти один глобальный максимум функции приспособленности. Всё остальное население на пути к этому максимуму считается расходным материалом и отбрасывается.
Но во многих задачах нас интересует не единственное решение, а набор разнообразных хороших решений:
Эволюционная робототехника. Нужно не одно «оптимальное» положение ног шагающего робота, а целая библиотека походок под разные повреждения — если у робота откажет один сустав, он должен уметь быстро подобрать альтернативную походку вместо повторной оптимизации с нуля (классическая работа Cully et al., 2015, «Robots that can adapt like animals»).
Процедурная генерация контента в играх. Нужны не «лучшие» уровни, а уровни, покрывающие весь спектр: лёгкие/сложные, линейные/разветвлённые.
Дизайн и инженерия. Инженеру интересно увидеть весь фронт компромиссов (вес vs прочность vs стоимость), а не одну точку.
Открытые (т. н. open-ended) эволюционные системы, где само понятие «лучшего» плохо определено, а интересна широта поведенческого репертуара.
ссылка на оригинал статьи https://habr.com/ru/articles/1061588/