9

MetaDE: вложенная архитектура «алгоритм оптимизирует алгоритм»

AI999第1课:智能演化的源流与 EvoX 的诞生背景
00:00

В предыдущей лекции эволюционная система накапливала свои возможности благодаря замкнутому циклу «генерация — оценка — отбор — наследование». В этой лекции мы делаем следующий шаг внутрь: алгоритм должен не просто решать задачи, а улучшать сами алгоритмы.MetaDE — это именно такая вложенная эволюционная архитектура: она разделяет дифференциальную эволюцию (DE) на внутренний и внешний уровни, превращая идею «алгоритм оптимизирует алгоритм» в вычислимый процесс.

I. Разделение обязанностей: кто решает, кто эволюционирует

MetaDE организует DE в два уровня, и объекты работы этих уровней полностью различны:

  • Внутренний DE (уровень задачи): работает с реальной задачей оптимизации, поддерживает популяцию кандидатных решений, многократно выполняет мутацию, скрещивание и отбор, постепенно приближаясь к качественному решению. Он отвечает на вопрос «насколько хорошо решена эта задача».
  • Внешний DE (метауровень): работает с самим алгоритмом; каждая особь в популяции — это не решение задачи, а целостная конфигурация «стратегия мутации + параметры», например, какой способ мутации применяется, какие значения принимают масштабирующий фактор и вероятность скрещивания. Он отвечает на вопрос «насколько хорошо работает эта конфигурация алгоритма».

Поэтому внешний уровень не оптимизирует переменные задачи напрямую — ими всегда занимается внутренний уровень; внешний уровень изменяет лишь «инструкцию по эксплуатации» внутреннего уровня.

Вложенная эволюционная архитектура MetaDEВнешний DE (метауровень): эволюция конфигураций «стратегия мутации + параметры» внутреннего алгоритмаКонфигурация AСтратегия мутации + параметрыКонфигурация BСтратегия мутации + параметрыКонфигурация CСтратегия мутации + параметрыКаждая особь = одна конфигурация; на основе обратной связи от задачи сохраняются и рекомбинируются лучшие конфигурацииПередача конфигурации алгоритмаВозврат производительности на задачеЗамкнутая связьВнутренний DE (уровень задачи): итерация кандидатных решений на конкретной задачеПопуляция кандидатных решенийРешениеРешениеРешениеКандидатное решениеКандидатное решениеКандидатное решениеМутация → скрещивание → отборКандидатное решение → оценка целевой функцииПроизводительность на задаче → возврат на внешний уровеньПараллельное ускорение на GPUОдновременная оценка нескольких конфигураций внутреннего уровняПараллелизм сокращает время поиска метауровняВложенная оценка многократно увеличивает затратыПараллелизм — условие практической применимостиОдновременная оценка на нескольких GPUПараллелизм сокращает время по настенным часам,но не уменьшает общий объём вычислений.При ограниченном бюджете: сначала уменьшайте масштаб внешнего уровняАлгоритм оптимизирует алгоритм: внешний уровень эволюционирует конфигурации, внутренний — решает задачуВнешний уровень создаёт конфигурации → внутренний выполняет и возвращает производительность → внешний обновляет конфигурации (замкнутый цикл)

II. Замкнутый цикл взаимодействия: передача конфигураций и возврат производительности

Уровни связаны двунаправленным каналом, образуя замкнутый цикл: внешний уровень создаёт конфигурацию алгоритма и передаёт её (→) внутреннему уровню; внутренний уровень работает с этой конфигурацией на задаче и по завершении возвращает производительность на задаче (→) внешнему уровню; на её основе внешний уровень сохраняет и рекомбинирует более эффективные конфигурации, после чего создаёт следующую конфигурацию. Весь процесс можно обобщить так: конфигурация внешнего уровня → решение внутреннего уровня → производительность на задаче → обновление внешнего уровня, и так по кругу.

Этот замкнутый цикл даёт ключевое свойство: стратегия мутации и параметры внутреннего алгоритма больше не задаются человеком раз и навсегда, а непрерывно переписываются в ходе поиска внешнего уровня — так алгоритм получает канал самоулучшения.

III. Условие выполнимости: параллелизм и компромисс по затратам

Вложенная структура не обходится без издержек. Каждая оценка на внешнем уровне требует полного прогона одной конфигурации на задаче, из-за чего затраты на оценку заметно возрастают; чем больше популяция внешнего уровня, тем выше общие расходы. Именно поэтому MetaDE опирается на параллелизм GPU: несколько конфигураций внутреннего уровня можно оценивать одновременно, время одной итерации внешнего уровня существенно сокращается, и вложенная метаэволюция становится практически реализуемой. И наоборот: если доступных параллельных ресурсов недостаточно, сокращение масштаба внешнего уровня или снижение точности оценки внутреннего уровня зачастую реалистичнее, чем слепое расширение поиска.

Частое заблуждение
Отождествлять MetaDE с «ручной настройкой параметров» неверно. Ручная настройка — это разовый перебор методом проб и ошибок вне цикла, тогда как MetaDE включает сами конфигурации в эволюционный цикл: конфигурации многократно генерируются, оцениваются и рекомбинируются, а объектом поиска является комбинация «стратегия мутации + параметры», а не просто несколько числовых значений.