Обсуждение статьи "Алгоритм бактериальной эволюции — Bacterial Evolutionary Algorithm (BEA)"

 

Опубликована статья Алгоритм бактериальной эволюции — Bacterial Evolutionary Algorithm (BEA):

Статья посвящена бактериальному эволюционному алгоритму Нава — Фурухаси (BEA) и его двум ключевым операторам: посегментной бактериальной мутации для локальной оптимизации и горизонтальному переносу генов для обмена удачными фрагментами решений. Мы реализуем BEA в каркасе C_AO как конечный автомат под фиксированный бюджет оценок, тестируем на Hilly, Forest и Megacity и поясняем терминологическую развилку с моделью Нумаоки.

Любая популяция живых организмов, поставленная в условия ограниченных ресурсов, веками решает одну и ту же задачу — найти в пространстве возможных форм те, что обеспечивают выживание, и закрепить их. Именно поэтому биология остаётся щедрым источником метафор для популяционных алгоритмов: естественный отбор дал начало генетическим алгоритмам, поведение роя — методам роевого интеллекта, охота хищников и миграции стай — десяткам частных схем, которые мы разбирали в этой серии. Сегодня очередь дошла до организмов, которые эволюционируют быстрее всех на планете и по правилам, заметно отличающимся от привычной нам схемы родитель — потомок. Поговорим о бактериях.

Бактериальная эволюция интересна тем, что в ней работает механизм, почти отсутствующий у высших организмов. Это горизонтальный перенос генов. Бактерии передают друг другу полезные фрагменты ДНК напрямую, минуя размножение: через конъюгацию, плазмиды, и захват свободных генов из среды. Соседняя клетка может за один акт обмена получить готовый, проверенный отбором участок генома — например, ген устойчивости к антибиотику — и немедленно им воспользоваться. Это и есть секрет феноменальной скорости бактериальной адаптации: полезная находка распространяется по популяции не за поколения, а почти мгновенно. Для оптимизации такая идея заманчива: если удачный фрагмент решения можно копировать между особями напрямую, поиск способен ускоряться там, где классический генетический алгоритм вынужден ждать череды скрещиваний.

Автор: Andrey Dik