|
"Психология" роботовПредположим, что мы попросили будущего робота, управляемого с помощью информационной структуры на основе "классной доски", пройти по коридору до третьей двери, войти через нее в комнату, найти там чашку и принести ее нам. Решение такой задачи будет представлять собой процесс, который во многом напоминает программу, написанную на одном из языков управления роботом-манипулятором (подобные языки очень сходны с Алголом или Бейсиком), с тем лишь исключением, что стандартная программа распознавания двери в нашем случае должна запускаться отдельно. Рассмотрим упрощенную запись программы такого рода: МОДУЛЬ Пойти-Взять-Чашку Запустить Распознаватель-Двери с помощью соответствующих команд (Найдя-Дверь Прибавить 1 к Номеру-Двери Зарегистрировать (Положение-Двери) Зарегистрировать Исходное-Положение Установить Номер-Двери в 0 Пока Номер-Двери меньше 3 Следовать-Вдоль-Стены Встать Лицом-к-Двери ЕСЛИ Дверь-Открыта ТО Пройти-в-Дверной-Проем ИНАЧЕ Открыть-Дверь-и-Пройти-в-Проем Задать Место-Чашки исходя из результата Поиска-Чашки Подойти к Месту-Чашки Взять-Чашку-с-ее-Места Подойти-к-Месту-Двери Встать-Лицом-к-Двери ЕСЛИ Дверь-Открыта ТО Пройти-в-Дверной-Проем ИНАЧЕ Открыть-Дверь-и-Пройти-в-Проем Подойти к Исходному-Положению Конец Сначала все идет как будто неплохо. Мы запустили программу- и робот начинает послушно ползти по коридору, считая двери. Он правильно распознает первую дверь. Вторая, к сожалению, украшена аляповатыми плакатами; к тому же освещение в этой части коридора тусклое, и наш экспериментальный распознаватель двери дает осечку- проходит мимо двери, не замечая ее. Программа движения вдоль стены тем не менее продолжает выполняться надлежащим образом, и робот следует далее по коридору, сбившись со счета дверей на единицу. Робот распознает третью дверь, в которую он должен войти, но, считая ее только второй, продолжает двигаться дальше. Следующую дверь он распознает правильно. Она открыта, и программа, полагая, что эта дверь- третья, поворачивает робот "лицом" к ней и управляет его заходом в комнату. Дверь - в действительности четвертая,- к сожалению, ведет на лестничную клетку, и бедный робот, не приспособленный к хождению по ступенькам лестницы, оказывается в смертельной опасности. Еще один подвижный робот - 'разумную' движущуюся платформу - разработал в Университете Карнеги - Меллона Джим Кроули. Этот робот является прототипом интеллектуальной навигационной системы. Размещенный вверху рупор представляет собой вращающийся эхолокационный дальномер К счастью, в нашей системе параллельного программирования предусмотрен процесс, называемый Обнаружение-Уступа, который всегда находится в активном состоянии и служит для контроля данных о положении уровня опоры (земли); эти данные направляются на "классную доску" благодаря процессам визуального восприятия. Указанная программа, кроме того, запрашивает результаты контроля уровня земли с помощью эхолокаторов и ИК-датчиков ближней локации. Все эти данные объединяются (при работе в опасных зонах часто исходят из того, что вероятность появления уступа велика), вырабатывая количественный показатель вероятности понижения уровня земли в окружающем робот пространстве. Одно из достоинств движущегося робота заключается в том, что он может действовать в условиях, опасных для человека. На фотографии показан робот японской конструкции, предназначенный для разборки отслужившей свой век атомной электростанции Сопутствующий процесс Обработка-Данных-об-Уступе, который также постоянно находится в активном состоянии, но имеет низкий приоритет, предназначен для регулярной проверки указанного вероятностного показателя; по результатам этой проверки он корректирует свой собственный приоритет. Когда значение переменной "вероятность уступа" становится достаточно большим, приоритет процесса Обработка-Данных-об-Уступе превысит приоритет текущего процесса (в нашем случае процесса Пойти-Взять-Чашку) и управление роботом переходит к процессу Обработка-Данных-об-Уступе. Правильно составленная программа (для такого процесса) заставит робот остановиться или резко замедлить движения, что повысит частоту измерений параметров уступа с помощью датчиков и отведет робот от уступа после четкого выявления и локализации последнего. Следует отметить любопытную особенность подобной последовательности действий. Человек, который наблюдает за поведением робота, ничего не зная о его внутренних механизмах, может так истолковать эти действия: "Сначала робот решил пройти через открытую дверь, но затем заметил ступеньки и, растерявшись, забыл все, что ему надо сделать". Имея непосредственное отношение к тому, что в действительности происходит с роботом, мы можем поддаться искушению покритиковать этого поверхностного наблюдателя за подобные антропоморфные представления о действиях машины, в которых фигурируют понятия решимость, растерянность и забывчивость. Однако эта критика была бы несправедливой. Свои "чувства" и "сомнения" робот выражает так же естественно, как и живое существо. Его действия представляют собой точную модель поведения существа, оперирующего неопределенной информацией в условиях опасного и изменчивого мира. Осьминога, преследующего свою жертву, могут точно так же отвлечь от погони признаки явной опасности. (Не следует забывать, что осьминог, как и позвоночные, имеет развитую нервную систему, сформированную, правда, по другому типу.) И все же большинство из нас без всяких колебаний признает, что за действиями даже простейших животных скрываются такие эмоции, как страсть, удовольствие, страх и боль. Поведение позвоночного, моллюска и робота может служить иллюстрацией конвергентного характера эволюции. Во всех трех случаях подвижный образ жизни способствовал появлению существа, которое по-разному действует в различных условиях и обладает способностью быстро переключаться с одного типа поведения на другой при поступлении нечетких, искаженных шумами данных, которые могут быть ложно истолкованы. Среди набора необходимых приемов, которыми должен овладеть движущийся робот, можно, в частности, назвать корректировку параметров. Механический манипулятор, действующий в неизменной среде, обычно имеет собственную кинематическую модель, параметры динамического управления которой устанавливаются по принципу "раз и навсегда". Движущийся робот, перемещающийся вприпрыжку в нашем далеком от идеального мире, по-видимому, всегда будет сталкиваться с различными неудобствами, как-то^ накопление грязи на его деталях, износ шин, изгиб несущих конструкций и малозаметные сдвиги опорной рамы относительно заданного положения, обусловленные проскальзыванием. Все это снижает точность модели по сравнению с предполагаемой. Существующие программные средства, обеспечивающие преодоление визуально обнаруживаемого препятствия, позволяют, например, задавать фазу калибровки камеры, в ходе которой робот устанавливается точно перед прецизионной сеткой из калибровочных точек. В результате программа может выявлять функциональную зависимость, которая корректирует искажения в оптике телекамеры. Подобная корректировка дает возможность другим программам производить точные измерения углов обзора, несмотря на искажения в камерах. Имеющиеся сегодня программы весьма чувствительны к ошибкам калибровки, и сейчас разрабатывается метод, который позволит производить непрерывную калибровку камер непосредственно по изображениям, воспринимаемым при передвижениях робота в реальной, полной неожиданностей обстановке. При использовании такой процедуры столкновение с препятствием, вызывающее незначительное смещение одной из телекамер робота, уже не будет приводить к систематическим ошибкам в прокладываемом маршруте. По всей видимости, у животных также происходят аналогичные процессы, в ходе которых осуществляется непрерывная настройка практически всей нервной системы. Подобное приспособление к окружающим условиям, вероятно, предшествовало появлению более общих принципов обучения. По-видимому, у роботов обнаруживаются зачатки "самосознания", хотя на сей счет пока нет единого мнения. Во все программы управления более совершенными движущимися роботами заложены "собственные представления" о непосредственном окружении робота, отличающиеся друг от друга степенью обобщения и точности. В процессе планирования движения эти модели внешнего мира учитываются при анализе различных вариантов будущих действий. Если такие программы имеют речевые интерфейсы (т. е. позволяют роботу устно общаться с оператором), то им можно задавать вопросы, на которые они от имени робота будут отвечать примерно так: "Я повернул направо, так как не был уверен, что могу пройти через отверстие слева". По существу, та же информация может быть представлена визуально на дисплее. |
|
|||
© ROBOTICSLIB.RU, 2001-2019
При копировании материалов проекта обязательно ставить ссылку на страницу источник: http://roboticslib.ru/ 'Робототехника' |