Аннотация

Данная статья представляет собой замечательную иллюстрацию необходимости синтеза различных подходов к построению искусственного интеллекта. Автор описывает несколько основных концепций, демонстрируя их ограниченность и развивая идею их возможного объединения. Первая концепция, являющаяся базовой в изложении, – это подход Брукса, который сам по себе опирается минимум на две основные парадигмы: очувствление роботов и принцип модульности (или подход на основе черных ящиков), а также дополнительно содержит несколько оригинальных идей. Вторая концепция – это адаптивность и обучение как основа интеллекта, которые практически проигнорированы у самого Брукса. И, наконец, третья концепция – это интеллект как поиск или перебор вариантов (парадигма эвристического программирования). Объединение второй и третьей концепций приводит к идее самооптимизирующегося механизма поиска, который должен быть представлен в качестве обязательного модуля в интеллекте автономного робота.


Эволюционный подход к искусственному интеллекту

ТЕОРЕМА РОЗЕНБЛАТТА: Только из беспорядка может кое-что получиться.
ДОКАЗАТЕЛЬСТВО: Если принципиально подойти к сути, то из чего же еще?!

А.Соловьев “ИСКУСТВЕННЫЙ ИНТЕЛЛЕКТ”

О каких системах пойдет речь?

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

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

Довольно радикально мыслящим исследователем, разделяющим идею о необходимости построения автономных систем, является директор лаборатории искусственного интеллекта МТИ Родни Брукс (Rodney Brooks). Пытаясь построить одного из своих первых автономных роботов (“Allen”), Брукс столкнулся с неожиданной проблемой. Не смотря на тестирование всевозможных способов коммуникации (от полицейских раций до сотовых телефонов) между управляющим компьютером и собственно роботом, добиться нужного качества связи так и не удалось. Поместить же компьютер непосредственно на механическую часть робота не представлялось возможным в силу малых размеров последнего. Это натолкнуло Брукса на мысль о необходимости сделать управляющие схемы робота, его “мозг”, настолько простыми и миниатюрными, чтобы робот мог носить их на себе. После удачного воплощение данной идеи в следующих роботах (“Tom” & “Jerry”), Брукс пришел к поразительному выводу о том, что их примитивные схемы работали даже лучше чем управляющий компьютер Аллена. Это заставило Брукса задаться вопросом: насколько вообще простым можно сделать мозг робота, чтобы он еще мог делать что-то полезное? Выводы, к которым пришел Брукс в своих исследованиях, в корне противоречили традиционным представлениям о работе интеллекта. В 70-х годах исследователи в области ИИ полагали, что декомпозицию работы автономной интеллектуальной системы или агента нужно производить следующим образом: агент собирает информацию об окружающей среде, строит модель среды, вырабатывает план действий и осуществляет его. Архитектура агента, таким образом, представлялась в виде следующей иерархии модулей:


Рис.1

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

Брукс заявлял, что:

На основе этих взглядов Брукс разработал т.н. поглощающую архитектуру (subsumption architecture, в литературе часто “категориальная”, “категоризирующая” архитектура). Поглощающая архитектура – это формализм параллельных распределенных вычислений для связи рецепторов и эффекторов робота. Смысл ее заключается в следующем. На начальном этапе с помощью некого конечного автомата рецепторы робота связываются с эффекторами. Структура автомата определяет некоторый аспект поведения робота. Так, например, автомат может реализовывать программу обхода препятствий. Такая связка образует начальный уровень (модуль) управления роботом. Модуль является автономным и способен сам, используя сенсорную информацию, определить необходимость выполнения действий для которых он предназначен. В известном смысле, работа модуля напоминает рефлекс или правило “если…, то…”. Модуль отлаживается на реальном роботе и в последствии не меняется. Если что-то работает, то, усложняя поведение, нужно не разрушать уже созданное и работающее, а использовать его – заявлял Брукс. Соответственно следующий модуль будет работать параллельно предыдущему и может не вдаваться в детали последнего. Так более высокоуровневый модуль “бесцельного блуждания” поглощает (допускает возможность активизации во время своей работы) модуль обхода препятствий. В случае обнаружения препятствия последним, активность первого подавляется. После того как модуль обхода препятсятвий заканчивает свою работу, вновь активизируется модуль бесцельного блуждания или какой-либо другой, в зависимости от текущей ситуации и приоритетов модулей.


Рис.2

Высшие модули реализуют более высокоуровневое поведение, но имеют меньший приоритет.

У творений Брукса отсутствует модель мира в привычном понимании, а следовательно нет и механизма планирования. То чем они обладают можно назвать моделью действий. Предполагается, что разработчик робота, обладающий моделью мира, вместо того чтобы передать ее своему созданию пошел более простым путем – передал ему правильные ответы на вопрос что делать в той или иной ситуации, чтобы выжить в этом мире. Система полностью “полагается” на компетентность своего создателя.

Существенным моментом подхода Брукса является распределенность управления. Действительно, здесь нет какого-либо центра координирующего работу уровней. Брукс распространяет эту идею еще дальше. Управление распределяется не только между уровнями формирующими поведение всей системы, но и между ее частями. Так у шестиного шагающего робота нет центра управления его ногами. Каждая конечность управляется в определенной мере независимо, имеет свой микромозг. “Увидев”, что соседняя конечность переместилась вперед, нога может “решить”, что нужно сделать то же самое. Совокупность относительно простых уровней, как показала практика, порождает довольно сложное адаптивное поведение системы в целом.

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

Эволюция

Здесь мы не будем останавливаться на том, имеет ли эволюция какую-то цель, направленность. Можно считать, что ее цель – создание все более сложных живых организмов, а можно, и так считает большинство ученых, что для природы простые организмы, выживающие за счет своей плодовитости, абсолютно равнозначны сложным, выживающим за счет своего ума. Важно то, что иерархия живого по признаку интеллектуальности объективно существует. Мы проведем небольшой анализ одной очевидной тенденции в этой иерархии и сформулируем посылку, из которой выведем ряд важных следствий.

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

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

Наконец, “венец творения” – человек рождается на свет абсолютно беспомощным. Учиться приходится практически всему. Не случайно общество признает человека человеком лишь после 1.5 – 2 десятков лет обучения.

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

Фило- и онтогенетическое обучение

Человек или другое высшее животное, видя бесплодность своих попыток, может оперативно выработать новое поведение для достижения цели. В то же время оса, чтобы приспособиться к миру, в котором добыча таинственным образом постоянно отодвигается от входа в нору, вынуждена меняться сама в следующих поколениях. Можно представить ситуацию, когда в результате мутаций появятся на свет и выживут в конкурентной борьбе именно “неправильные” осы, помещающие добычу в нору, перед тем как спрятаться в ней самим.

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

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

“Эволюционный” интеллект

Несколько неудачное заглавие данного параграфа не имеет никакого отношения к эволюционному подходу в ИИ. Следствие, выводимое из озвученной выше посылки, заключается в том, что при построении ИИ мы имеем полное право перенести хорошо известные принципы эволюции на деятельность мозга.

Наследственность, изменчивость и отбор – это три кита, на которых стоит теория эволюции. Рассмотрим теперь, что в деятельности мозга мы можем поставить в соответствие данным понятиям.

Совокупность изменчивости и отбора образует механизм поиска. Действительно, поиск – это не только пробы, но и критерий отделяющий полезный результат от ошибок. Не смотря на то, что проблеме поиска уделяется большое внимание, например, в логическом подходе к ИИ, сторонники других подходов, в частности Брукс, не делают акцента на данном аспекте функционирования интеллекта. Так в примере архитектуры Брукса модуль “бесцельного блуждания” (по сути поиска), ничем не выделяется в ряду других модулей. Между тем, поиск – это особая функция интеллектуального организма, и, как мы постараемся показать ниже, отделение поисковых механизмов мозга от остальных имеет принципиальное значение.

Поиск

Не всякий организм вынужден заниматься в своей жизни поиском. Так растения полагаются на доступность необходимых им ресурсов и собственную устойчивость к широкому диапазону воздействий внешней среды в том месте где они укоренились. Поиск здесь все же имеет место, но лишь на этапе размножения. Образно говоря, разбрасывая семена на широкой площади, растение “ищет” место, где смогут выжить его потомки.

Животные (вернее “не растения” – т.е и насекомые и т.д) не могут рассчитывать ни на наличие необходимых ресурсов, ни на безопасность в одном и том же месте. Они вынуждены искать и то и другое.

Именно это отличие между растениями и животными определяет другое, главное для нас отличие: животные в той или иной мере интеллектуальны, а растения – нет. Иными словами, интеллект – это самооптимизирующийся механизм поиска. Владея интеллектом, животное сокращает энергетические и временные затраты на поиск.

Для того чтобы показать первичность механизма поиска по отношению ко всем другим функциям, осуществляемым интеллектом, представим минимальную модель автономной системы, животного. Определения жизни, даваемые Медниковым или Шредингером, избыточны для нас еще и потому, что мы рассматриваем лишь интересующее нас в связи с интеллектом подмножество живого. Ключевым моментом является то, что живые организмы не только нуждаются для своего существования в некотором ресурсе или условиях, т.е. имеют потребности, но и обладают механизмами для их самостоятельного удовлетворения. Очевидно, что наша модель животного должна иметь, по крайней мере, рецепторы потребностей (рецепторы нарушения условий существования) и эффекторы. Особый интерес естественно представляет способ связи рецепторов с эффекторами. Здесь, в силу широкой известности учения Павлова, исследователи склонны сразу переходить к схеме рефлекса как простейшему способу такой связи. Что, однако, произойдет, если всякий раз при возникновении потребности и все время пока она не начнет удовлетворяться, система будет генерировать случайные реакции? Представим себе гусеничного робота имеющего пару двигателей, аккумулятор и солнечную батарею для подзарядки последнего. Робот обладает также единственным рецептором потребности, который сигнализирует о разрядке/зарядке аккумулятора, сообщая, таким образом, о “неудовольствии” (неудовлетворенности потребности) или “удовольствии” – начале и процессе ее удовлетворения. Первое сообщение активизирует генератор случайной реакции, а второе подавляет его активность. В результате при некоторой величине разряда аккумулятора робот (представим, что он “живет” в помещении, по полу которого медленно и случайно передвигается пятно света) активизируется и начинает хаотически двигаться до тех пор, пока не попадет в это пятно, и рецептор потребности не сообщит о том, что зарядка аккумулятора началась. Здесь робот деактивируется и продолжает оставаться на месте до следующего разряда аккумулятора. Т.к. за это время пятно света “уходит”, процесс поиска при следующей разрядке аккумулятора начинается сначала. Очевидно, что никакой рефлекс при данной простейшей конструкции робота не может обеспечить ему продолжение активного существования. А вот генератор случайной реакции в связке с рецептором потребности, совокупность которых образует механизм поиска, теоретически может.

Характер поиска

То, что поиск осуществляемый роботом случаен определяется вероятностным характером окружающей среды и/или недостатком информации о среде и ее законах у робота. Действительно, имей наш робот рецептор способный точно указать направление на пятно света, он не нуждался бы не только в случайном, но и вообще в каком бы то ни было поиске. Все, что ему нужно было бы делать – это двигаться в направлении указываемом данным рецептором. С другой стороны, в детерминированной среде, когда пятно света перемещается по вполне определенному закону, также отсутствует необходимость поиска. Не нужен здесь и указатель направления к цели. Если нет неопределенности состояния среды, то нет и необходимости в рецепторе снимающем эту неопределенность. Робот, даже не “видя” пятна, может “знать” где оно находится.

В обоих случаях поведение робота может быть реализовано с помощью рефлексоподобных схем. Факт, однако, заключается в том, что в общем случае мы не можем рассчитывать ни на детерминированность среды ни на полную определенность ее для робота. В естественных условиях мы всегда имеем дело с промежуточным вариантом. Как неопределенность среды для робота, так ее вероятностный характер определяют необходимость именно случайного поиска. Здесь просто нет достаточной информации для реализации регулярного систематического перебора всех возможных вариантов.

Работа робота

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

Можно заметить, что все это, за исключением разве что потребностей, вполне укладывается в пример архитектуры Брукса представленный на рис. 2. Почему же важно отделять поисковое поведение от рефлекторного? Это объясняется тем, что работа данных механизмов и условия их применения существенно отличны. Действительно, случайный поиск оправдан в условиях неопределенности необходимой реакции, в то время как рефлекс однозначно определяет реакцию. Рефлекторное поведение характеризуется высокой скоростью и автоматизмом. От опознания ситуации до реакции здесь всего один шаг. Поиск напротив допускает наличие многих шагов с момента возникновения потребности до начала ее удовлетворения. Наконец, отделение поискового поведения от рефлекторного дает объяснение некоторым феноменам наблюдаемым нами в психической деятельности такого несравненно более сложного механизма как человеческий мозг.

Зачатки сознания

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

Тесная связь понятий знание и сознание заставляет задаться вопросом: какому из двух механизмов поисковому или рефлекторному будут принадлежать знания когда наш робот станет способен их накапливать? Можно конечно считать, что знание содержатся и в рефлексе, но для такого рода “знаний” существует более точный термин навыки. Напротив, информация о неудачных реакциях произведенных в той или иной ситуации, о которой шла речь в аналогии наследственность-память, никак не может быть отнесена к навыкам. Это простейший пример знаний, и совершенно очевидно, что востребованы такие знания могут быть только механизмом поиска. Распределение вероятности на множестве реакций, в соответствии с которым работает генератор случайной реакции, корректируется с помощью знаний. Невыгодная реакция после такой коррекции будет иметь нулевую вероятность осуществления.

Дальнейшее совершенствование поискового механизма происходит по общему пути сокращения энергетических и временных затрат организма и приводит к возникновению модели мира. Действительно, гораздо экономичнее производить поиск не в пространстве среды, а в пространстве более-менее адекватной ее модели. Наконец, что как не поиск есть сам процесс формирования модели?

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


Литература:

Rodney A. Brooks “Fast, Cheap and Out of Control - A Robot Invasion of the Solar System”
(англ. pdf ~242Kb)

Rodney A. Brooks “How To Build Complete Creatures Rather Than Isolated Cognitive Simulators”
(англ. pdf ~401Kb)

Kevin Kelly “Out of Control”
(англ. html)

Сергеев Б. Ф. Стать гением: От инстинкта к разуму. – Л.: Лениздат, 1991. – 220 с.

Растригин Л.А. Адаптация сложных систем. – Рига: Зинатне, 1981. – 375 с.
(рус. djvu ~ 4240Kb)


Автор: DS