Восприятие и мышление

Исследования в области движущихся роботов могут оказаться гораздо важнее, нежели все их применения. Так, существует некая общность между эволюцией разумных живых организмов и развитием робототехники. Многие из особенностей реального мира, наложившие свой отпечаток на существующие ныне формы жизни, благоприятствуя выживанию и развитию одних и подавляя другие, оказали влияние и на характеристики роботов, которые определяют их «жизнеспособность». Пути постепенного совершенствования, которыми в своем развитии следуют живые организмы, характерны и для их технических двойников. Это позволяет сделать вывод, что из многообразия жизни можно извлечь определенные уроки. Один из них состоит в том, что подвижные организмы в ходе эволюции приобретают те или иные интеллектуальные способности, тогда как у неподвижных существ такой тенденции не наблюдается. Примером первого направления эволюции служат позвоночные животные, а второго — растения. Особенно ярко это проявляется на примере одного из типов беспозвоночных — моллюсков. Большинство из них составляют двустворчатые моллюски и устрицы, которые принадлежат к классу панцирных организмов, обитающих в воде. Они малоподвижны, имеют примитивную нервную систему и своим поведением напоминают скорее не животных, а растения. Однако у них есть родственники — головоногие, например осьминоги и кальмары, которые отличаются подвижностью и в ходе своего развития обрели многие функциональные механизмы, свойственные позвоночным. К числу таких механизмов относятся глаза, позволяющие им воспринимать окружающую среду визуально, и развитая нервная система, помогающая им правильно ориентироваться в различных ситуациях.
Кевин Доулинг из Университета Карнеги — Меллона направляет робот Нептун (на переднем плане) на препятствие. Этот робот способен обходить неподвижные предметы, но не может разминуться с двигающимися объектами, например с псом.
Современная робототехника, насчитывающая от роду всего 20 лет, едва ли способна успешно соперничать по богатству и значимости результатов с естественным эволюционным процессом, продолжающимся на Земле более миллиарда лет. И все же различные виды естественного отбора, в ходе которого живые организмы обрели свои нынешние формы, уже проявляются в лабораториях робототехники. Проведем мысленный эксперимент, который, возможно, удастся в ближайшее время продемонстрировать на реальной машине. Допустим, нам нужно, чтобы робот мог выполнять задачи общего характера, например пройти по коридору до третьей двери, войти через нее в комнату, отыскать там чашку и принести ее нам. Для осуществления подобных процедур необходимо создание машинного языка, который позволял бы точно формулировать достаточно сложные задания для движущегося робота, а также аппаратно-программной системы для реализации возможностей такого языка. Отправной точкой для разработки требуемого машинного языка могут служить управляющие языки последовательного типа, успешно используемые для программирования промышленных манипуляторов.
Попытки теоретического задания структур и примитивов, которые необходимы для построения подвижных систем, показали, что линейная управляющая структура подобных языков, рассчитанных на программирование современных манипуляторов, непригодна для движущихся роботов. Коренное отличие стационарного робота от движущегося заключается в том, что, перемещаясь в пространстве, последний регулярно и неизбежно оказывается в ситуациях, которые своей неожиданностью приводят его «в замешательство». Это означает, что в его распоряжении должны быть стандартные программы (для анализа таких ситуаций), которые можно запускать в произвольном порядке и выполнять одновременно. Одним из возможных решений этой проблемы может быть структура, где в активном состоянии находится сразу несколько специализированных программ; последние обмениваются между собой данными с помощью информационной структуры, называемой «классной доской». Некоторые из этих специализированных про грамм обслуживают датчики, другие управляют рабочими органами, третьи накапливают результаты, поступающие от других программных модулей, четвертые обеспечивают общую координацию. При изменении внешних условий приоритеты различных модулей меняются, и управление передается от одного модуля другому.

Бортовые процессоры Плутона. На блок-схеме показаны взаимосвязи между процессорами, которые управляют движущимся роботом; в данном случае это Плутон, созданный в Университете Карнеги—Меллона. Плутон приводится в движение тремя независимо управляемыми колесными подвесками, каждая из которых оснащена приводным и управляющим двигателями с сопряженными преобразователями угол—код. Сигналы последовательного управления двигателями, поступающие непосредственно от бортовых микропроцессоров (по одному на каждый двигатель), обеспечивают вращение двигателя в требуемом режиме, который задается «процессором-дирижером».
Второй, моделирующий, процессор следит за выходами преобразователей угол—код и регулирует моменты валов всех двигателей в соответствии с расчетной моделью, которая отражает перемещение робота в виде последовательности отдельных состояний покоя. Полученные результаты сравниваются с требуемыми параметрами, которые задаются управляющим процессором, после чего «процессор-дирижер» индивидуально подстраивает скорость вращения вала каждого двигателя с тем, чтобы согласовать режимы работы моделирующего и управляющего процессоров. Имеются и другие процессоры: процессор связи обеспечивает сопряжение ИК-линии с главным управляющим компьютером VAX 11/780; эхолокационный процессор управляет работой сонаров, служащих для предотвращения столкновений; процессор телекамеры управляет двигателями, которые осуществляют панорамирование, наклон и плавное перемещение камеры; процессор, контролирующий приближение, следит за работой ИК-датчиков ближней локации с очень малым радиусом действия; наконец, служебный процессор проверяет такие параметры, как температура двигателя и выходное напряжение аккумулятора.