Исследование эволюции простейших адаптивных способностей организмовЦель исследования - попытаться смоделировать возникновение простейших адаптивных способностей организма, как процесс постепенного усложнения его (организма) устройства. По результатам моделирования предполагается определить, какие изменения в структуре организма наиболее важны для повышения адаптации к внешней среде и возможную последовательность таких изменений.
Абстрактная схема моделиМодель представляет собой искусственный мир, заселенный агентами. Агенты могут получать информацию о состоянии окружающего их мира и своем внутреннем состоянии, совершать определенные действия. Популяция агентов эволюционирует во времени за счет изменения устройства особей. Каждый агент состоит из набора модулей - рецепторных и эффекторных. Набор модулей, а так же параметры связи между ними определяются геномом агента. В процессе эволюции структура агентов претерпевает изменения: могут появляться новые модули, а старые исчезать. Построение такой модели логично проводить следующим образом. Определить устройство мира: размерность, топологию, объекты, существующие в нем, возможные взаимоотношение между объектами, схему эволюции. В соответствии с параметрами мира определиться с набором модулей рецепторов и эффекторов, позволяющих популяции агентов существовать в данном мире. Выбрать минимально необходимую для выживания схему агента (минимальный набор эффекторов и рецепторов) и соответствующие параметры мира. В процессе экспериментов необходимо отслеживать динамику общей численности популяции и изменения устройства агентов.
Вариант реализации моделиМир - замкнутая двумерная сетка (тор). В узлах сетки могут находиться объекты (агенты, пища). В каждом узле может находиться только один агент. Агент имеет направление относительно которого ориентировано его поле зрения и действия совершаемые им. Поле зрения состоит из 4-х клеток расположенных - "прямо", "справа", "слева" и под агентом (рис. 1).
Рис. 1. Ориентация поля зрения относительно направления агента (окружностями отмечены узлы, из которых агент может получать информацию, квадратом обозначен узел, в котором находится агент). Агент может иметь следующие рецепторы: - еда рядом; - еда слева; - еда прямо; - еда справа; - агент слева; - агент прямо; - агент справа; - состояние внутреннего энергетического ресурса. В каждый такт времени агент совершает одно из следующих действий (каждому действию соответствует модуль эффектора):
- отдыхать; - есть; - двигаться "прямо"; - поворачиваться "влево"; - поворачиваться "вправо"; - делиться. Таким образом, имеем 8 модулей рецепторов + 6 модулей эффекторов, соответственно самый "сложный" агент будет состоять из 14 модулей. (Добавляя дополнительные модули рецепторов можно увеличить поле зрения агента, добавив эффектор, моделирующий старение агента, можно повысить эффективность эволюции.) В качестве минимальной конфигурации можно предложить следующий набор модулей: "есть", "агент прямо", "делиться". При соответствующих параметрах мира такой набор модулей является минимальным для развития популяции агентов. Агент выбирает действие в текущий такт времени при помощи нейронной сети. Сеть однослойная, нейроны соответствуют эффекторам, входы нейронов - рецепторам. Действие агента определяет нейрон, имеющий наибольший выходной сигнал. Веса нейронной сети определяются геномом агента. Геном агента состоит из 48 чисел, задающих веса НС, + 14 двоичных чисел определяющих наличие модуля в архитектуре агента. В результате выработки агентом действия "делиться" может появиться потомок. Геном потомка задается при помощи следующего генетического алгоритма:
1. добавить к каждому гену, определяющему вес НС агента, случайную величину x, равномерно распределенную на интервале [-pm, pm]; 2. изменить число, определяющее наличие того или иного модуля, на противоположное с малой вероятностью ps. Физиология агентов задаётся аналогично предыдущей модели. Детали тоже аналогично ей. Михаил Бурцев mr.bur@beep.ru 4/Февраль/2001 |