У GOFAI есть еще один недостаток. Представьте себе, что вы пробираетесь через лес. Каждый сделанный вами шаг представляет собой рискованное действие. Вы переступаете через ветки, продираетесь сквозь колючий кустарник, преодолеваете большие камни различной высоты; иногда приходится балансировать на каменной россыпи или на большом валуне. На каждом этапе ваша ступня должна приспосабливаться к условиям движения. Теоретически ступни должны двигаться в том направлении, в котором вы решили идти. Однако иногда для продвижения к цели на каких-то участках приходится идти в обход, чтобы обойти препятствия или, скажем, не замочить ноги. Если рассматривать еще более короткие отрезки времени, необходимо учитывать особенности места, куда ступает нога. Если на пути лежит булыжник, ступня должна надежно опереться на него. Если планируется каждое движение ноги, если ваша нервная система рассчитывает точную траекторию перемещения вашей ступни и работу каждой из многих мышц, управляющих ступней, и должна спланировать весь маршрут, по которому вы решили пойти, и при этом учитывает, что нужно обходить препятствия и приспосабливаться к особенностям поверхности земли, то для этого требуется очень большой объем вычислений. Даже суперкомпьютеру для таких расчетов понадобится много времени.
Если на каждом шагу рассчитывать точную траекторию движения ваших ног, то, для того чтобы обойти небольшое препятствие, вам потребуются часы или даже сутки. При этом практически все время вы будете стоять неподвижно, погрузившись мыслями в инженерные расчеты. Именно так работает система GOFAI: перед тем как выполнить действие, она все планирует и оптимизирует. Например, при приготовлении кофе такая система подавляющую часть времени размышляет, а на сам процесс тратит лишь небольшую часть времени. Можно сказать, что роботы на основе GOFAI – это улучшенный вариант диванного философа, который много времени посвящает размышлениям и мало действует.
Но если компьютер робота достаточно быстр, то впечатление, что он тратит на обдумывание слишком много времени, исчезает. Сейчас существуют чрезвычайно мощные и быстро считающие компьютеры. Однако для реализации алгоритмов GOFAI даже самые быстродействующие сегодняшние компьютеры недостаточно быстры. Современные роботы производят сильное впечатление, потому что вычисления, необходимые для принятия решений и совершения действий, они выполняют на основе совершенно других принципов – тех, которые используются животными.
Материализованный интеллект
С середины 1980-х гг. и в целом более 20 лет Родни Брукс работал в должности профессора информатики в Массачусетском технологическом институте (Масстехе), одном из очагов революции в области робототехники. Рос он в Австралии, и интерес к умным машинам у него проявился еще в двенадцатилетнем возрасте, когда Родни создал электронную игру в крестики-нолики (60). При этом он отказался от традиционного способа – написания программы логики игры для программного обеспечения имеющегося компьютера – и создал игру с самого начала, используя старые запчасти, переключатели, провода и лампочки. Несмотря на столь необычный подход, победить машину в этой игре было трудно.
В традиционных роботах GOFAI Бруксу претила необходимость очень подробного описания выполняемых ими задач. Получается, что программисту необходимо тщательно разобраться, какие потребности нужно просчитать (как выполнить арифметические действия, как пересечь комнату, как на хорошем уровне играть в крестики-нолики), записать их в виде четко определенного набора правил (алгоритма), а затем запрограммировать робота так, чтобы он реализовал этот алгоритм. Брукс считал, что по-настоящему интеллектуальный робот не нуждается в таких подробных инструкциях.
Он стал лидером альтернативного направления в робототехнике, опиравшегося на концепцию воплощенного, материализованного интеллекта и принципы функционирования биологических организмов. Ни одно животное в ходе эволюции не появилось сразу. Новые виды возникали медленно, постепенно накапливая полезные биологические функции, доставшиеся от предшественников. Первый человек тоже появился не сразу и не полностью сформировавшимся. Люди развились из более простых форм жизни, которые не были способны мыслить, но могли плавать, ползать, искать пищу и размножаться. Для выполнения этих функций они обладали прошедшими естественный отбор специализированными системами, которыми и сейчас пользуются рыбы, насекомые и другие живые существа, включая самого человека. При передвижении животные используют нейронные проводящие пути, сформировавшиеся миллионы лет назад у их далеких предшественников, которые сначала научились плавать, потом ползать, а потом и ходить на все более усложнявшихся конечностях. Кроме того, у древних животных были системы восприятия информации, в ходе эволюции превратившиеся в органы зрения, обоняния и слуха у современных млекопитающих.
Команда Брукса начала создавать робот с простого устройства, способного только передвигаться. Однако передвигалось оно очень хорошо. Разработчики отказались от детального планирования каждого шага: устройство само приспосабливалось к условиям передвижения в реальном времени. Для управления конечностями ему не нужен был всезнающий процессор: каждая конечность имела пружины и амортизаторы, а также собственный источник питания, обеспечивающий автономное принятие разумных локальных решений простых задач. У роботов Брукса каждая конечность сама умела избегать препятствий или преодолевать их, для этого ей не требовался центральный орган управления, указывающий, что ей надо делать. В сложной обстановке, например в лабиринтах, такие роботы самостоятельно ориентироваться не способны, но при простых передвижениях они очень надежны. Они не спотыкаются на булыжниках и выбоинах на дороге, без проблем преодолевают песчаные и каменистые участки, относительно легко перемещаются вверх или вниз по склону. Замысел Брукса состоял в том, чтобы использовать такую логику движения в более сложных роботах, подключая ее к выполнению задач более высокого уровня. Новый модуль общается с основными блоками движения, обеспечивая их взаимодействие с узлами, которые, например, реагируют на свет и интерпретируют визуальные сигналы.
Вам, наверное, попадались подобные роботы, например пылесос Roomba компании iRobot. Может быть, такой пылесос даже есть у вас. Этот дискообразный аппарат передвигается по квартире и пылесосит пол, обходя препятствия и держась подальше от лестниц. У Roomba два колеса, работающих независимо друг от друга, и комплект датчиков, информирующих пылесос о препятствиях, с которыми он может столкнуться. Когда Roomba приближается к стене или к другому препятствию, он разворачивается и движется в другое место. У него нет никакого общего плана действий, он просто крутит свои колесики в другую сторону. Его датчики и контроллеры выполняют свою работу, не вникая в то, что и где еще происходит. Каждый его компонент делает нечто простое, но делает это эффективно, и результат весьма впечатляет: пол в комнате оказывается чистым.
Такой способ конструирования роботов с материализованным интеллектом называется предикативной архитектурой; в ней модули более высокого уровня разработаны с таким расчетом, чтобы они могли подключаться к функциям низшего уровня. В рамках этой концепции интеллект понимается как большая иерархия: сложные задачи высокого уровня выполняются путем комбинирования более простых функций, которые, в свою очередь, представляют собой наборы еще более простых операций. При этом для выполнения сложной задачи не требуются исчерпывающие вычисления и планирование, а всего лишь нужно правильно организовать работу иерархии акторов (моделей взаимодействия), которые на самом низком уровне непосредственно реагируют на условия среды. Бруксу не удалось создать робота, способного делать что-нибудь по-настоящему сложное, однако его идеи нашли воплощение в минималистском дизайне современного тренда развития робототехники. У новейших роботов нет огромных наборов сложных встроенных функций, они сконструированы с таким расчетом, чтобы эффективно реагировать на условия, в которых им приходится работать. Поэтому они не нуждаются в том, чтобы подробно просчитывать малейшие движения при планировании дальнейших действий. Окружающая среда сама «выполняет» для них множество расчетов.
Как сконструирован человек
Соответствующая революция произошла и в области изучения мышления человека. Как устарела концепция ИИ-роботов, точно так же устарела и концепция когнитивной психологии человека, которая имела все основные характеристики GOFAI и которая изменилась примерно в то же время. Согласно этой концепции, человек обрабатывает символы подобно компьютеру, но с использованием «человеческого» программного обеспечения, приходит к разумным выводам и направляет результаты в запоминающее устройство. Основная идея состояла в том, что для создания модели мира человек выполняет массу вычислений. Мы ориентируемся и принимаем решения путем расчетов, определяем наилучший порядок действий, храним информацию и непрерывно обновляем то, что знаем. Но если наше мышление работает именно так, то мы все время должны быть предельно измотаны. Однако на самом деле мы не уделяем почти все свое время построению модели, описывающей мир.
В одном эксперименте участникам предложили прочитать текст на экране компьютера. При этом на каждого участника было надето устройство, отслеживающее движения глаз (61), которое сообщало компьютеру, куда человек смотрит. Кроме того, исследователи использовали весьма остроумный прием: основную площадь экрана компьютера занимал бессмысленный, случайный набор букв, а осмысленный текст показывался только в маленьком окошке, помещавшемся именно в том месте, куда человек смотрел. Поскольку компьютер знал, куда смотрит участник эксперимента, то в это место и помещалось небольшое окошко с настоящим текстом. Когда читающий переводил взгляд, окошко перемещалось вслед за ним. То есть настоящий те