Как известно, слово "робот" придумал чешский писатель Карел Чапек еще в годы, предшествовавшие Второй мировой войне. Довольно быстро оно заполнило страницы научно-фантастических произведений. А в наши дни это слово приняло терминологический характер и распространилось на мир научных отчетов и солидных монографий, описывающих результаты исследований в области "искусственного интеллекта". Одним из первых это сделал, по-видимому, Н. Нильсен, который назвал интегральным роботом сконструированную им тележку, имеющую датчики, которые воспринимают информацию, идущую из внешней среды; тележка способна, перемещаясь в этой среде, передвигать в ней различные предметы. Впоследствии "интегральным роботом" стали называть любую автономную машину, способную к вариабельному поведению в достаточно многообразной обстановке без участия человека.
Часть обширно и нечетко определенной области, метафорически названной "искусственный интеллект", в которой реализованная на ЭВМ информационная система непосредственно соприкасается с "внешним миром", - обычно стандартизованным, но все же вполне реальным, - получила название "робототехники", или "роботехники" (robotry). В робототехнике - той ее части, которая входит в направление искусственного интеллекта, не только сохраняются все его актуальные проблемы (роботы должны уметь решать задачи, распознавать образы, "понимать" выражения некоторого языка, желательно естественного, и т. п.), но и появляются новые, специфичные для роботов. Они связаны с вьшолнением роботами предварительно выработанных планов в условиях некоторой среды, содержащей неопределенности. Приходится разрабатывать теорию построения и выполнения роботами планов их деятельности, а также контроля за ней; наличие неопределенностей в средах, в которых действуют роботы, заставляет вкладывать в ЭВМ структуры, реализующие модели проблемных сред (своеобразные "внутренние модели внешнего мира").
Несмотря на "раннюю молодость" интегральных роботов, специалисты по прогнозированию научно-технического прогресса полагают, что мы находимся на пороге их быстрого усовершенствования. "В противоположность эволюции живых существ, являвшейся по существу процессом проб и ошибок, эволюция роботов представляется заранее тщательно продуманным процессом. Начавшись в той "точке", в которой эволюция живых существ достигла своего предела, а именно с появлением человека, эволюция роботов обещает превзойти человека в определенных областях, хотя в других областях превосходство и останется за человеком" [70, с. 112]. Несомненно, в этой характеристике есть преувеличение, есть моменты, с которыми трудно согласиться (роботы сопоставляются с человеком как нечто ему "равноправное"), но она все же показательна: среди тех, кто следит за развитием техники, сложилось прочное убеждение в грядущем быстром прогрессе "роботики".
Развитие интегральных роботов инициировано реальными потребностями науки и техники: необходимостью радикального повышения степени автоматизации производства, для чего автоматы должны обладать большой кинетической свободой и быть в состоянии "оценивать" изменяющуюся внешнюю среду, на основе чего "принимать решения" и реализовывать их; замены человека на работах в неприемлемых или вредных для него условиях: на больших глубинах, высотах, при больших уровнях радиации, высоких температурах и т. п.; освобождения человека от однообразной, утомительной, рутинной работы. Роботы должны послужить радикальному прогрессу в исследованиях планет Солнечной системы, в частности Марса. Расстояние до этой планеты таково, что передача с нее на Землю одного бита информации в среднем требует 15 минут; при таких задержках телеуправление с Земли становится практически невозможным, и интегральные роботы превращаются в незаменимое средство изучения Марса.
Роботехника пересекается практически со всеми направлениями ИИ: это сгусток последних достижений в таких областях, как конструирование ЭВМ, теория систем управления, прикладная механика, распознавание образов, обучающиеся автоматические системы, языки программирования, теория принятия решений и многое другое. Смело можно сказать, что нет таких исследований по проблематике ИИ (и смежным с ней областям), которые в той или иной мере не были бы причастны к разработке роботов. Примечательно также широкое использование в "роботике" бионических подходов, призванных служить повышению эффективности автономных автоматических систем за счет введения адаптивных механизмов, использования принципов параллельной обработки информации, обучения и пр. Сказанное нетрудно подтвердить примерами.
Авторы разработки совокупности решающих устройств для управления роботом Л. Сутро и У. Килмер [70] создали компактную аппаратуру для распознавания объектов на поверхности Марса, изготовленную на основе представлений У. Мак-Каллока о зрительных процессах, протекающих в глазе лягушки. Этот факт - применение физиологических концепций Мак-Каллока к решению технических задач создания интегрального робота для исследования возможных форм жизни и геологических образований Марса - имеет большое методологическое значение. Сам У. Мак-Каллок об этом говорит так: "Мы используем слово "робот" в двух смыслах. В первом, менее важном смысле - это машина, выполняющая отдельные изолированные функции, свойственные человеку. Во втором, более важном смысле - это описание жизни, применимое как к живому существу, так и к машине. Такое описание не зависит от того, создана ли система из металла или из живых клеток. Это центральная идея кибернетики: использовать ту же логику и математику для описания человека и машины... Таким образом, в более важном смысле робот - это функциональное описание системы, которая до недавнего времени могла быть получена лишь в результате роста живых клеток, а теперь начинает становиться чем-то, что мы можем сами изготовлять" (пит. по [70],с. 150,151).
Развитие "роботостроения" ныне идет регулярно и затрагивает не только теоретические разработки, но и техническую реализацию их принципов в металле. Сейчас принято различать роботы трех поколений. Роботы первого поколения - это механические устройства (манипуляторы, станки), управляемые жесткой программой или непосредственно человеком. Роботы второго поколения представляют собой устройства, имеющие более гибкую систему восприятия информации и систему обратных связей, позволяющие им более эффективно действовать при вьшолнении различных заданий; эти роботы вместо жесткой программы способны в зависимости от реальной обстановки переключаться на те или иные "сценарии" программ, что существенно расширяет комплекс возможностей, которыми они располагают. Наконец, роботы третьего поколения способны воспринимать сложные конфигурации в трехмерном пространстве, взаимодействовать с человеком на некотором фрагменте естественного языка и из совокупности имеющихся сценариев компоновать планы достижения поставленных перед ними целей общего характера и контролировать ход их выполнения при помощи совокупности разнообразных анализаторов. Такие роботы иногда называют "проблемно-ориентированными".
Для иллюстрации сказанного совсем кратко рассмотрим упрощенную структуру управляющей программы робота с автоматической зрительной системой (и манипулятором), решающей одну из головоломок. Существо головоломки состоит в том, чтобы из четырех многоцветных кубиков построить башню, на каждой стороне которой имеется не более одной грани каждого цвета. После решения восьми вычислительных задач в мультизадачном режиме манипулятор ("рука") из отобранных четырех объектов определенного цвета строит из кубиков требуемую башню. На рис. 6 показана блок-схема управляющей программы, которая задает последовательность различных подзадач, задает действия, направленные на исправление ошибок, организует автономную работу отдельных частей системы и обеспечивает воспроизведение данных на дисплее [70, с. 83]. Несмотря на то, что этот робот может решать лишь весьма специфическую задачу, опыт решения головоломок и различных настольных игр позволяет создателям интегральных роботов отрабатывать внутреннюю структуру ЭВМ, реализующую модель проблемной среды - своеобразную "модель мира" робота.
Рис.6
Чтобы избежать возможных недоразумений, подчеркнем условный характер антропоморфной терминологии многих работ по интегральным роботам. Например, одна из статей сборника [70] называется "Вычислительная машина с руками, глазами и ушами". Излишне, разумеется, объяснять, что речь идет о распознающем электронно-оптическом устройстве, манипуляторе и системе микрофонов с усилителями; точно так же излишне, на наш взгляд, приводить длинные технические наименования устройств, имеющих краткие (по названию) психофизиологические функциональные аналоги.
Даже сверхсовременные интегральные роботы несоизмеримо проще тех, какие вывел Карел Чапек в своей фантастической драме "РУР". И несмотря на это, между вымыслом вчерашнего дня и реальностью дня сегодняшнего есть что-то общее, оправдывающее метафорический перенос художественного термина в научно-техническую сферу. Особенно это чувствуешь, когда знакомишься с некоторыми новыми идеями в проблеме "общения" человека с роботами на естественном языке. В качестве примера приведем работы Т. Винограда, о которых на советско-американской конференции М. Минский говорил: "За последние 10 лет мы увеличили разум ЭВМ в 106 раз, и я просто как игрок в покер скажу, что на руках у меня имеется доказательство существования искусственного разума. Это докторская диссертация Т. Винограда* из Массачусетского технологического института... В ней мы находим программу для вычислительной машины, обладающей небольшой, но все же заметной долей человеческого разума" [1, с. 136].
* (Фамилия Winograd дана в работе [1] в английской транскрипции как "Вайногред", а в переводе книги [71] в русской - "Виноград".)
Конечно, эти слова нельзя принимать всерьез*. Но энтузиазм Минского можно понять. В диссертации Т. Винограда, написанной в 1970 г. (потом она была издана в США отдельной книгой и в 1976 г. опубликована в русском переводе [71]), содержится отчет о разработанном им программно-управляемом автономном роботе; программа,заложенная в управляющую роботом ЭВМ, позволяет последнему производить грамматический разбор стандартизованных английских фраз, "истолковывать" их смысл, отвечать на поставленные человеком вопросы (в пределах "языковых возможностей" робота) и выполнять распоряжения последнего с помощью манипуляторов, действующих в простейшей "среде" из детских кубиков.
* (Недаром на вопрос одного из участников конференции, какой же долей человеческого разума обладает эта программа, Минский отшутился: "Я думаю, что-нибудь от 10-6 до 0,1".)
Рассмотрим пример из работы Т. Винограда, иллюстрирующий возможности программы в ограниченном механическом мире, содержащем стол, "ручку", ящик и несколько детских игрушек: разноцветных кубиков и пирамид; в этом мире существует несколько элементарных понятий: твердого тела; того, что нечто может находиться в ящике, справа или слева; что одно тело поддерживает другое и т. п.
Человек: Подними большой красный блок.
Робот: Хорошо (прежде чем поднять красный блок, машине приходится его освободить: найти место для зеленого блока, лежащего на красном, и перенести его*).
* (В скобках даны комментарии Винограда; этот текст не входит в человеко-машинный диалог.)
Человек: Схвати пирамиду.
Робот: Я не знаю, какую пирамиду вы имеете в виду (так как имеется три пирамиды, робот ничего не делает).
Человек: Найди блок, который выше, чем тот, который ты держишь, и поставь его в ящик.
Робот: Хорошо ("рука" робота опускает красный блок и, поднимая высокий голубой блок, ставит его в ящик).
Человек: Что находится в ящике?
Робот: Голубая пирамида и голубой блок.
Человек: Что поддерживает пирамиду?
Робот: Ящик (такой ответ дан потому, что если раньше программа не знала, о какой пирамиде идет речь, то сейчас предполагает, что мы имеем в виду ту пирамиду, которая только что была упомянута).
Человек: Сколько блоков не находится в ящике?
Робот: Четыре.
Человек: Является ли по крайней мере один из них более узким, чем тот, который я просил тебя поднять?
Робот: Да, красный куб.
Человек: Он опирается на что-либо?
Робот: Да, на стол.
Человек: Может ли стол поднимать блоки?
Робот: Нет.
Человек: Может ли пирамида опираться на блок?
Робот: Да (дедуктивная система находит реальный пример и поэтому знает, что это возможно).
Человек: Может ли пирамида опираться на пирамиду?
Робот: Я не знаю (таких примеров на сцене нет).
Человек: Собери вместе (поставь друг на друга) две пирамиды.
Робот: Я не могу (робот пробует, но терпит неудачу).
Человек: Голубая пирамида - моя.
Робот: Я понимаю.
Человек: Моими являются блоки, цвет которых не красный, но то, что поддерживает пирамиду, не является моим.
Робот: Я понимаю (строятся две новые теоремы, касающиеся вопросов собственности - чей, кому принадлежит).
Человек: Ящик мой?
Робот: Нет.
Человек: Что-нибудь, находящееся в ящике, является моим?
Робот: Да, два предмета: голубой блок и голубая пирамида.
Человек: Не соберешь ли ты вместе оба красных блока, а также зеленый куб и пирамиду?
Робот: Хорошо (робот выбирает зеленый куб, на котором ничего нет, ставит его на большой красный блок, после чего снимает маленькую пирамиду с маленького красного куба и использует его для завершения указания).
Т. Виноград дал описание использованных им программ, включая способ представления в его системе значений (или смыслов, meanings) выражений, семантики (детальный анализ лингвистических структур с целью установления их значений), приложения системного подхода к исследованиям синтаксиса и т. п. Значимость работы Т. Винограда ни в коем случае не следует преувеличивать. На слова М. Минского: "По-видимому, именно в 1970 году мы преодолели барьер способности овладения семантикой в ЭВМ. Я уверен, что в течение следующих десяти, пятидесяти или ста лет мы будем в состоянии написать программы для ЭВМ, которые будут достаточно интеллектуальны" [1, с. 305], следует смотреть, как на "частное мнение" их автора. Но нельзя также упускать из виду, что многие серьезные исследователи убеждены в больших перспективах роботостроения. Сказал же В. М. Глушков в беседе с журналистом Г. В. Максимовичем, что, по-видимому, в "недалеком будущем" общение человека с интеллектуальным роботом (точнее - с программой, которая управляет им) не будет отличаться от диалога двух людей [2, с. 66].
Впрочем, вместо восторгов лучше сослаться на реальные работы. Здесь мы снова прибегнем к материалам обзорно-проблемной статьи [61]. Вот как выглядит отечественная "роботехника" в изложении Г. С. Поспелова и Д. А. Поспелова.
В разработке роботов, пишут эти авторы, можно выделить три главных направления. Одно из них занято решением проблем сбора и обработки сенсорной (в основном зрительной) информации о той среде, в которой должен действовать робот. Другое направление - это вопросы планирования действий робота и формирования в нем пригодной для этого "модели внешнего мира". Третье направление касается реализации плана поведения робота (в частности, его перемещения в заданной среде). Анализ исследований в первом направлении показывает, что наибольшую трудность при вводе зрительной информации в запоминающее устройство управляющей системы робота представляют: отделение объекта от фона; распознавание объекта и перекодирование информации о воспринимаемом предмете во "внутреннее представление" робота; расчленение сложного предмета на некоторую систему объектов, с которыми робот уже "знаком". Разработанные к настоящему времени алгоритмы и программы решения упомянутых задач при своей реализации требуют еще больших расходов машинного времени и не очень эффективны. В проблеме планирования действий робота и формирования в нем модели "внешнего мира" работы идут прежде всего по пути применения языка исчисления предикатов, а также языка ситуационного управления [69], служащих внутренними языками представления внешней среды. Как подчеркивают авторы обзора [61], над реализацией планируемых действий робота успешно работает коллектив исследователей, руководимый Д. Е. Охоцимским.
Этим коллективом разработана модель шагающего аппарата и алгоритм управления им при передвижении на местности. "В ближайшие годы в СССР, - приходят к заключению Г. С. Поспелов и Д. А. Поспелов, - можно ожидать появления функционирующих макетов роботов с достаточно развитым "интеллектом" " (с. 230).
Пока что главным "пристанищем" роботов являются научно-исследовательские лаборатории. Однако можно уже прочитать о роботах, используемых на часовом заводе для сборки часов, об интегральных роботах, занимающихся на автозаводе мойкой цилиндров во вредном для человека растворе, роботах, занятых на подводных работах. Все большее место отводится роботам и на международных выставках. В 1979 г. в Болгарии состоялась Первая международная выставка роботов и манипуляторов, предназначенных для использования в промышленном производстве - выставка Roboty-79. Промышленные роботы (например, демонстрировавшийся на этой выставке робот-манипулятор PIRIN) выпускаются в различных модификациях, отвечающих разным производственным задачам. "Лиха беда начало": передача техническим устройствам некоторых из тех функций человека в технологическом процессе, которые искони считались чисто человеческими, происходит во все возрастающей мере.