<<:o:

Проект «МОЗГ АНИМАТА»: разработка модели адаптивного поведения на основе теории функциональных систем

Анохин К.В., Бурцев М.С., Зарайская И.Ю., Лукашев А.О., Редько В.Г.

(ИПМ РАН, НИИНФ РАМН).

1. ВВЕДЕНИЕ. ЦЕЛЬ И ОСНОВНЫЕ ПРЕДПОЛОЖЕНИЯ МОДЕЛИ

Цель настоящей работы – предложить проект компьютерной модели управления целостным адаптивным поведением анимата (естественного или искусственного организма). Главная задача нашего подхода – увязать реалистичным образом в единой модели процессы (а) адаптивного поведения, (б) его онтогенетического развития, (в) обучения и (г) эволюции поведения. В качестве концептуальной платформы такого моделирования мы избрали теорию функциональных систем П.К.Анохина [1]. В этой теории в основу описания поведения, его индивидуального развития, обучения и эволюции положен единый критерий – адаптивный результат действий организма. Отдельная ветвь общей теории функциональных систем – теория системогенеза, рассматривает закономерности формирования функциональных систем в эволюции, индивидуальном развитии и обучении [2].

Одним из достоинств такого единого подхода является то, что моделирование комплекса интересующих нас процессов может быть разбито на отдельные этапы. Это означает, что моделирование в каждом из доменов может решаться последовательно, с возможностью последующего интегрирования результатов в общую модель на основе единого языка теории функциональных систем.

Мы воспользовались этим преимуществом и на первом этапе проекта поставили задачу разработать модель поведения взрослого животного с уже сформированной архитектурой управления адаптивной деятельностью. При этом мы пока не касаемся вопросов эволюции этой архитектуры (процессов эволюционного системогенеза) и ее формирования в индивидуальном развитии (процессов первичного системогенеза). Кроме того, на настоящем этапе проекта, мы включаем в модель лишь некоторые, ограниченные возможности индивидуального обучения животного, заключающиеся в нахождении новых способов достижения адаптивных результатов (процессы вторичного системогенеза).

Важная особенность теории функциональных систем – выделение ею специфического слоя системных процессов, не сводимых к элементарным процессам возбуждения или торможения отдельных нервных элементов и структур мозга. Именно закономерности этого «системного слоя» управления поведением, описываемого в терминах целей, мотиваций и результатов функциональных систем, являются предметом нашего интереса в проекте «МОЗГ АНИМАТА».

Поэтому мы не привязываем нашу систему управления к реальным нейронным структурам мозга. Мы ее конструируем, синтезируем сами, в духе моделей Искусственной жизни и Адаптивного поведения [3]. В качестве элементов нашей конструкции мы используем отдельные функциональные системы. В построении функциональных систем нами применяются нейронные сети. Но важно подчеркнуть, что эти нейронные сети не связаны с реальными нейронами животного, роль нейронных сетей в нашей модели – реализация достаточно гибкой ассоциативной памяти. Эта память используется при обучении анимата. Основное же внимание мы обращаем на архитектуру системы управления и взаимоотношения между различными функциональными системами в этой архитектуре.

Поведение анимата нацелено на достижение полезных для анимата результатов. Поведение состоит из действий. Для обеспечения достижения результатов анимат делает прогноз ожидаемого результата и формирует акцептор результатов действия в виде модели параметров ожидаемого результата.

Важную роль в нашей модели играют цели поведения анимата. Мы считаем, что у анимата есть потребности (например, потребность питания и потребность безопасности). С потребностями связаны цели поведения, которые количественно можно характеризовать мотивациями. Например, если анимат голоден, то у него есть выраженная мотивация к питанию и есть цель удовлетворить потребность питания. Потребности и цели организованы иерархическим образом. Потребности каждого из уровней вызывают цели и соответствующие функциональные системы более низкого ранга.

Организация иерархии целенаправленного поведения в нашем анимате близка к таковой в проекте «Животное» [4]. Как и проект «Животное», настоящая работа – именно проект, который предполагается в дальнейшем воплотить в виде компьютерной реализации модели.

Далее мы опишем общую архитектуру системы управления аниматом (раздел 2), базовый элемент системы управления (раздел 3) и работу этого элемента (раздел 4), работу всей системы управления (раздел 5) и обсудим модель в целом (раздел 6).

2. АРХИТЕКТУРА СИСТЕМЫ УПРАВЛЕНИЯ

Мы предполагаем, что система управления аниматом имеет иерархическую архитектуру (рис.1). Базовым элементом системы управления является отдельная функциональная система (ФС). ФС осуществляет выбор действия в соответствии с заданной целью и текущей ситуацией, формирует прогноз результата действия, а также инициирует команду на выполнение действия (если согласно прогнозу оно должно привести к положительному результату).

Рис. 1. Архитектура системы управления аниматом.

Эта архитектура в основном соответствует работам [1,4-9]. Система верхнего уровня соответствует главной цели организма – выживанию. Следующий уровень – целям достижения основных потребностей (питания, размножения, безопасности, накопления знаний). Более низкие уровни системы управления соответствуют тактическим целям поведения. Управление с верхних уровней может передаваться на нижние уровни (от «суперсистем» к «субсистемам» см. [1]) и возвращаться назад. «Суперсистемы» ставят цели «субсистемам». Для определенности в данной работе предполагаем, что каждая ФС (кроме ФС0) подчинена только одной «суперсистеме».

Предполагаем, что система управления аниматом функционирует в дискретном времени: t = 0,1, … Также предполагаем, что каждый такт времени активна только одна ФС.

3. ФУНКЦИОНАЛЬНАЯ СИСТЕМА – БАЗОВЫЙ ЭЛЕМЕНТ УПРАВЛЕНИЯ

Схема ФС представлена на рис. 2. Задача ФС такова:

- известна цель, поставленная "суперсистемой", и известна ситуация, заданная входным вектором X(t), характеризующим состояние внешней и внутренней среды анимата,

- осуществить поиск наиболее «перспективных, с точки зрения ФС» способов достижения цели,

- если, согласно прогнозу, есть действия, направленные на приближение к цели, то дать команду на выполнение действия, максимально приближающего к цели,

- и осуществить контроль правильности выполнения действия – соответствия обратной афферентации от достигнутого результата и параметров запланированного результата, заложенных и хранящихся в аппарате акцептора результатов действия.

Рис. 2. Схема ФС.

Схема ФС состоит из блока афферентного синтеза, блока принятия решения (ПР), эффекторного устройства, выполняющего действия (блок "Действие"), блока оценки результатов действия и блока акцептора результатов действия.

Двойными стрелками показаны каналы передачи управления между данной ФС и другими ФС. Каналы передачи управления обозначены цифрами 1-5. Сплошными двойными стрелками показаны каналы 1,4 , работающие в любом случае, штриховыми стрелками – каналы 2,3,5 , работающие только при определенных условиях.

Блок афферентного синтеза включает в себя массив нейронных сетей {NNi }, осуществляющих прогноз результатов возможных действий Ai (i = 1, …, n). Считаем, что ФС может выбрать одно из n возможных действий.

Схема ФС основана на принципах работы функциональных систем П.К. Анохина (см. например, [1]).

4. РАБОТА ОТДЕЛЬНОЙ ФС

Рассмотрим сначала работу отдельной ФС. В данный такт времени t рассматриваемая ФС может быть активна либо неактивна. Неактивные ФС находятся в ждущем режиме. Активная ФС выполняет указанную выше задачу. Рассмотрим работу активной ФС.

Активация ФС производится по команде суперсистемы (по каналу 1). При этом суперсистема определяет текущую цель G для данной ФС. Считаем, что цель задается в виде вектора, компоненты которого нормированы и представляют собой действительные числа в интервале [0,1]. На вход активированной ФС поступает также входной сигнал X(t), характеризующий состояние внешней и внутренней среды анимата. По входному сигналу X(t) определяется прогноз результата каждого из возможных действий Ai . Прогноз результата i-го действия Ai осуществляет i-я нейронная сеть массива прогнозирующих нейронных сетей {NNi } блока афферентного синтеза. Таким образом, определяются прогнозы Pri(t) для всех действий Ai . Прогнозы представляют собой векторы Pri(t), нормированные таким же образом, как и цели G.

Отметим, что каждая нейронная сеть выполняет функцию гетероассоциативной памяти, т.е. реализует отображение X(t) --> Pri(t) .

Далее прогнозы поступают в блок принятия решения ПР, в котором прогнозы Pri(t) сравниваются с целью G и определяется: есть ли действие, для которого рассогласование между целью и прогнозом deltai = || Pri(t) - G || меньше заданного порога (deltai < Th). || || означает некоторую меру близости, например, Евклидову.

Если такого действия нет, то считается, что данная ФС с заданием не справилась, управление передается назад "суперсистеме" (по каналу 2), а во всех нейронных сетях блока афферентного синтеза данной ФС производится разобучение (схема дообучения и разобучения представлена ниже).

Если есть действие, для которого deltai < Th, то определяется номер выполняемого действия Aj по минимальной удаленности прогноза и цели: j = arg (min deltai). Это действие Aj выполняется. Особые действия соответствуют передаче управления вниз по уровням иерархии (по каналу 3). При этом данная ФС задает и подцель SGj для субсистемы. Специфику таких особых действий рассмотрим ниже. Пока остановимся на рассмотрении обычных действий.

После выполнения действия Aj определяется состояние внешней и внутренней среды анимата в следующий такт времени t + 1 и оценивается результат действия Rj (в блоке оценки результатов действия). Данные о результате Rj поступают в блок акцептора результатов действий. Далее определяется, насколько прогноз отличается от результата, т.е. вычисляется величина

Delta = || Rj - Pr(Rj) ||, где Delta – величина ошибки прогноза.

Если величина ошибки прогноза Delta меньше/больше некоторого заданного значения, то соответствующая нейронная сеть NNj массива прогнозирующих нейронных сетей {NNi } блока афферентного синтеза дообучается/разобучается, соответственно. При дообучении отображение между входом X(t) и прогнозом Pr(Rj), выполненное в данный такт времени нейронной сетью NNi , закрепляется, а при разобучении это отображение ослабляется.

После выполнения действия и обучения происходит передача информации о достигнутом результате Rj и на верхний уровень, "суперсистеме" и возвращается управление суперсистеме (по каналу 4).

Опишем процедуру обучения нейронных сетей.

Считаем, что нейронные сети NNi имеют структуру, соответствующую обычному методу обратного распространения ошибки [10]. Т.е., мы предполагаем, нейронная сеть многослойная, без обратных связей, нейроны имеют логистическую активационную функцию:

Yj = Fi wij Xi) , F(b) = [1+exp (-b)]-1,

где Yj – выход j-го нейрона, Xi – входы нейрона, wij – синаптические веса j-го нейрона. Для таких нейронных сетей известна процедура обучения «Complementary reinforcement back-propagation» [11,12], которая позволяет 1) закреплять сформированное отображение между входом и выходом при правильном полученном результате (т.е. дообучать нейронную сеть), 2) разобучать нейронную сеть при неправильном полученном результате.

Кратко суть этого метода состоит в следующем. Пусть входной и выходной векторы нейронной сети в данный момент времени равны X и Y соответственно. Для рассматриваемых нейронных сетей X = X(t) , Y = Pri. Отметим, что, так как нейроны имеют логистическую активационную функцию, то величины компонент вектора Yi принадлежат интервалу [0,1]. Тогда, если нейронная сеть сработала правильно (в нашем случае это означает, что она сделала правильный прогноз), то считаем, что вектор Y есть целевой вектор T , который нужно подкрепить. Если нейронная сеть ошиблась (прогноз оказался неверным), то определяем целевой вектор T, как комплементарный к вектору Y : Ti = 1- Yi . Далее применяется обычный метод обратного распространения ошибок [10] и закрепляется соответствие X --> T между входным и целевым векторами X и T. В результате соответствие между входом X и выходом Y нейронной сети будет подкрепляться, если сеть работает правильно, и, наоборот, соответствие между входом и X и выходом Y будет направленно ослабляться, если эта сеть ошибается.

Отметим, что в случае ошибочной работы нейронной сети можно поступить и проще: провести разобучение путем случайной модификации весов нейронной сети.

Итак, рассматриваемая процедура обучения формирует отображения X(t) --> Pri , обеспечивающие правильные прогнозы действий.

5. РАБОТА СИСТЕМЫ УПРАВЛЕНИЯ АНИМАТОМ В ЦЕЛОМ

Выше мы рассмотрели работу отдельной ФС. ФС получает задание (достичь определенную цель) от "ФС-суперсистемы", и если она компетентна выполнить задание, она его выполняет. Если ФС некомпетентна выполнить задание, то она только сообщает суперсистеме, что она не смогла выполнить задание.

Часть действий ФС состоит в передаче управления на нижние уровни. Такие действия мы выше обозначили как особые. Рассмотрим процессы, происходящие в системе управления аниматом при этих действиях.

При передаче управления на нижний уровень ФС верхнего уровня (обозначим эту ФС как ФСВ) задает подцель управления SGj для ФС нижнего уровня (обозначим ее ФСН). Цель подается на блок афферентного синтеза ФСН («с точки зрения» ФСН она может рассматриваться как основная цель G). При этом ФСВ верхнего уровня запоминает свой входной сигнал XВ(t), который был в момент передачи управления, и прогноз Pr(Rj), выполненный в соответствии с этим сигналом и намеченным действием передачи управления на нижний уровень; эти векторы запоминаются до времени возврата управления с нижнего уровня. Для определенности считаем, что запоминание векторов XВ(t) и Pr(Rj) происходит в блоке акцептора результатов действия системы ФСВ . Как только ФСН нижнего уровня в первый раз после момента времени t возвращает управление ФСВ (считаем, что это происходит в такт времени t + t1 ; управление возвращается по каналу 5), то в ФСВ происходит обучение. ФСВ оценивает, насколько правильным был ее прогноз в момент t. Обучение происходит точно так же, как это было описано выше, за тем исключением, что прогноз Pr(Rj), сделанный в момент t, сравнивается с результатом Rj, полученным в момент t + t1 , а не с непосредственно полученным в следующий момент t + 1 результатом.

Итак, предложенная иерархическая схема позволяет промоделировать достаточно нетривиальное управление адаптивным поведением.

Отметим, что в данную схему управления поведением аниматом несложно включить процедуру прерывания верхними уровнями работы нижних уровней иерархии функциональных систем, с помощью специальных связей между ФС. Например, если в ФС1, отвечающей за безопасность, поступил сигнал, характеризующий серьезную опасность для жизни анимата, а анимат занимался поиском "пищи" в дереве решений, "возглавляемом" ФС2, то ФС1 имеет право прервать работу ФС2 и дать команду на избегание опасности.

Также нетрудно включить в данную схему процесс формирования новых ФС. Например, если некоторая ФСН несколько раз не находит нужного решения (т.е. не выполняет задания), то блок акцептора результатов действий ФСВ ("ФС-суперсистемы" для данной «ФС-субсистемы»), может дать спец-команду на формирование новой случайной ФС, работающей на том же уровне, что и данная ФСН, которой в дальнейшем ФСВ сможет передавать аналогичные задания. Чтобы не производить подсчет числа невыполнения заданий, можно промоделировать процесс формирования новой ФС стохастическим образом. Т.е. при невыполнении задания с определенной малой вероятностью создается "дублер" несправившейся ФС.

6. ОБСУЖДЕНИЕ

Выше изложена только основная структура схемы управления. Ее нужно дополнить 1) схемой задания целей, 2) моделью среды, в которой происходит жизнь анимата. Рассмотрим эти аспекты.

В простейшем случае цели можно задать "руками". Т.е., конструктор модели продумывает, каковы могли бы быть цели анимата, и задает все цели и подцели.

Второй вариант задания целей и подцелей таков. Конструктор задает основные потребности анимата: поиск пищи (или источников энергии), безопасность, размножение (если рассматривается эволюционирующая популяция аниматов), потребность накопления знания [13]. Этим потребностям соответствуют мотивации. И основные цели соответствуют удовлетворению основных потребностей, которые количественно характеризуются мотивациями, т.е. числами Mk . Удобно считать, что мотивации Mk нормированы и принадлежат интервалу [0,1] (так, как это сделано в нашей модели «Кузнечик» [3,14]). В этом случае доминирующая мотивация – это просто максимальная мотивация. Помимо этого, конструктор задает некоторые исходные подцели. Но эти подцели могут варьироваться в процессе жизни анимата. Например, если ФСВ ("суперсистема") передает управление ФСН («субсистема»), и ФСН успешно выполняет задание по поставленной ей подцели, но при этом происходит удаление от той цели, которая поставлена перед ФСВ , то происходит случайная вариация подцели, передаваемой от ФСВ к ФСН . В следующий раз ФСВ формирует перед ФСН несколько модифицированную подцель.

В качестве примера моделей среды можно предложить уже известные модели, например, такие как обучение анимата эффективно обходить препятствия в заданной ограниченной области пространства [15].

Данный проект не рассматривает процесс формирования иерархической нейросетевой архитектуры управления. Анализ процесса формирования структуры управления мы откладываем для дальнейших исследований. Здесь мы только отметим, что подходы к такому процессу формирования есть. Например, в работе [16] была продемонстрирована возможность эволюционного формирования иерархической нейросетевой архитектуры управления поведением анимата. Более того, работа [16] демонстрирует также, что одна и та же нейронная сеть, по-видимому, может выполнять множество тех функций, которые в данном проекте распределены в явном виде по различным нейронным сетям. Тем не менее, реализация предлагаемого здесь проекта в компьютерной модели важна, так как она могла бы позволить максимально четко и явно представить работу системы управления целостным адаптивным поведением.

Литература

  1. Анохин П.К. Принципиальные вопросы общей теории функциональных систем. // Принципы системной организации функций. М.: Наука, 1973, с. 5-61. [ http://www.keldysh.ru/pages/BioCyber/RT/Functional.pdf ]
  2. Теория системогенеза. Под. ред. К.В.Судакова, М. Горизонт, 1997, 567 с.
  3. Редько В.Г. Эволюционная кибернетика. - М.: Наука, 2001, 156 с.
  4. Бонгард М.М., Лосев И.С., Смирнов М.С. Проект модели организации поведения – «Животное» // Моделирование обучения и поведения. М.: Наука, 1975. С.152-171.
  5. Швырков В.Б. Теория функциональной системы как методологическая основа нейрофизиологии поведения. Успехи физиологических наук, т. 9, №1, 1978, с. 81-105.
  6. Судаков К.В. Общая теория функциональных систем. М. Медицина, 1984, 222 с.
  7. Умрюхин Е.А. Механизмы мозга: информационная модель и оптимизация обучения. М. 1999. 96 с.
  8. Умрюхин Е.А., Судаков К.В. Информационная модель системной организации психической деятельности человека («детектор интеллекта») // Моделирование функциональных систем. (под ред. Судаков К.В. и Викторова В.А.). М.: РАМН, РСМАН. С. 94-152.
  9. Максимов П.В., Вайнцвайг М.Н., Максимов В.В., "Проект системы, обучающейся целесообразному поведению", Международная конференция ММ-РО 8, Тверь, Тезисы докладов, 1997, С. 83.
  10. Rumelhart D.E., Hinton G.E., Williams R.G. Learning representation by back-propagating error // Nature, 1986, V.323. N.6088. PP. 533-536.
  11. Ackley, D. Littman, M. Generalization and scaling in reinforcement learning. // In Advances in Neural Information Processing Systems – 2, edited by S. Touretzky. San Mateo, CA: Morgan Kauffmann, 1990.
  12. Ackley, D. Littman, M. Interactions between learning and evolution. // Langton, C. G., Taylor, C., Farmer, J. D., and Rasmussen, S. (Eds.) Artificial Life II. Reading, MA: Addison-Wesley, 1992. PP. 487-509.
  13. Жданов А. А., Метод автономного адаптивного управления // Известия Академии Наук. Теория и системы управления, 1999, N. 5, С. 127-134.
  14. Бурцев М.С., Гусарев Р.В., Редько В.Г. Модель эволюционного возникновения целенаправленного адаптивного поведения 1. Случай двух потребностей. // Препринт ИПМ РАН, 2000, N 43. [ http://www.keldysh.ru/pages/BioCyber/PrPrint/PrPrint.htm ]
  15. Donnart, J.Y. and Meyer, J.A. (1996). Learning Reactive and Planning Rules in a Motivationally Autonomous Animat. // IEEE Transactions on Systems, Man, and Cybernetics - Part B: Cybernetics, 26(3):381-395. [ http://www-poleia.lip6.fr/ANIMATLAB/#Publications ]
  16. Бурцев М.С. Формирование иерархии целей в модели искусственной эволюции. // IV Всероссийская научно-техническая конференция «Нейроинформатика-2002». Сборник научных трудов. В 2-х частях. Ч.1. М.: МИФИ, 2002. С. 19-25. [ http://mbur.narod.ru/publ/ni2002.html ]

<<:o:

SpyLOG