Робототехника.Фу, Ли, Гонсалес (962794), страница 89
Текст из файла (страница 89)
= о х о Ф у о О а а о х а' и,. й р ах о Ф н Ф о а О. а х а '" И,х Ф О. о х Он Ф о о ,а а. о х О н О о и О Ф х х т ь.й о й оох т Ф н ха О. о ао О ФИ Ф а. о х ООЛ охх охх ОФХ ох" а й. о л н х \ х й Ф Ф М О 1 1~ о ж Г д и. Ф с Ф $ о н »И Ф О. О й О. Ф о н ьС Ф Ф Ф у и» с 3 с Фх 3! о уу х х х и х о х о х Ф х х х ~~ хе н х о ху ау х о у ОУ у у н -'< х ы а. х ~ а ое у съ Ф х ОФ Ф О а1 а Ь О Ю о 'и у й Ф й Л н О, о Ф Ф Ф ,ф о а "о ао хю 1Ф Д; ~- О О х х у О о О й 17 К.
Оу и ОР О. х ь н Ф х хх ос ей х о й т но Ф а й й х~ 1 и н Ф 'х ОЛ о х й о х о" О а о а и Ф 'и о х ох О о а о а о О х и й т от о о х о й а о й Ф „х „.,т о х ах О Х О Ь: Ф о х О О ь а а х Ф 5 Я й х Ф Ф о и О о Ф н Ф О О, Ф х х О о Ф Ф н й Ф О н й х Ф Ф Ф н Ф Ф а и с ~ Ф й й й Ф Ф Ф 5 Ф Ф О Ф а х Ф Ф Ф Ф » О о О о а О о х й у х н Ф Ф Ф а а и ботах [34, 36, 36, 170, 170, 173, 177). Для обхода препятствий в рабочем пространстве, заполненном различными объектами, в работах [174 и !76) предложены методы планирования задачи в пространстве конфигурапий робота.
Будущие языки программирования роботов должны содержать методы искусственного интеллекта [13) и использовать знания [33) для планирования выполнения роботизированной сборки и других технологических задач. Упражнения 9.1. Напишите программу на языке Аб для определения системы координат схватл, которая может быть получена врашением системы координат «блок» на угол 65' закрут оси у и затем перемешением его на 101,6 и 152,4 ми вдоль осей х и у соответственно. 9.2. Напишите программу для решения задачи упр.
9.1 ва яаыке А>Иь'. 9.3. Напишите программу на языке А5 для складирования роботам 9 деталей из загрузочного устронства в палету, представая>ошую собой матрипу из 3 л, 3 ячеек, Предполагается, что расположение загрузочного устройства и налеты известны. Программа должна фиксировать заполнение каждой ячейки и сигнализировать пользователю о заполнении всей па.четы. 9.4, Напишите программу на языке АМ5 для решения задачи упр. 9.3. 9.5. Напишите программу на языке )>Аб для решения задачи упр.
9.3. 9.6. Напишите программу на языке системы АСГОРА33 для решения задачи упр 9.3, 9Л Ханойская башня. Три стержня А, В, С, системы координат которых соответственно (хл, ул, хл), (ха, ул, хл) и (хс, ус, гс) имеют известные расположения относительно неподвижной системы координат (х,, ум х,), как показано ниже на рнс. 9.6. Первоначально, иа штифте А находятся два диска ха Рис. 9.6, разных размеров, причем диск меньшего диаметра всегда должен располагаться на диске большего диаметра, Требуется написать программу на языке А! для управления роботом, оснащенного спепиальиым охватом присоской (для захватывания диска), чтобы двигать два диска от стержня А н стерж.
ню С; причем в любой момент времени диск мевьшего диаметра должен всегда располагаться на диске болыоего дивметра. Каждый диск имеет одинаковую толщину 25,4 мм. 9.8, Напишите программу иа языке АМ5 для решения задачи в упр. 9.7. Глава 1О. ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ И ПЛАНИРОВАНИЕ ЗАДАЧ В РОБОТОТЕХНИКЕ То, что воспринято разумам, — незыблемо, а то, что постигается только чувствами, — всегда зыбко и неопределенно, Из «Диалогов» Платона 10,1. ВВЕДЕНИЕ Одной из основных проблем робототехники является планирование движения для решения постанленной задачи с последующим конгроледг выполнения роботом команд, необходимых для осуществления этих действий.
Под планированием здесь подразумевается принятие решения о ходе действия перед его выполнением, Действия робота могут быть определены системой планирования действий робота, которая будет искать пути достижения поставленной цели, исходя из некоторой первоначальной ситуации. В этом случае необходим план, представляющий собой последовательность действий робота для достижения цели. Исследования процесса построения решений задач робототехники привели ко многим идеям относительно системы построения решения задач в области искусственного интеллекта. В обычной постановке задачи мы имеем робот, оснащенный датчиками и способный выполнять элементарные действия в несложном рабочем пространстве. Действия робота преобразуют одно состояние (или конфигурацию) рабочего пространства в другое. Например, в рабочем пространстве несколько объектов могут располагаться иа столе или друг на друге, а робот, состоящий из телевизионной камеры, манипулятора и схвата, поднимает или передвигает эти объекты.
В некоторых задачах робототехники робот представляет собой подвижную тележку с телевизионной камерой, вь>полняющую такие операпии, как, например, перемещение обьектов в рабочем пространстве. В этой главе мы кратко изложим несколько методов принятия решений и их применение к планированию действий робота. 10.2. ПОИСК В ПРОСТРАНСТВЕ СОСТОЯНИИ" Один из методов решения задачи состоит в последовательной проверке различных возможных вариантов до тех пор, пока мы случайно не получим желаемое решение.
Такая попытка 17" 515 включает поиск типа «проб и ошибок». Для обсуждения методов решения этого типа введем понятие состояний задачи (проблемных состояний) и операторов, Проблемным состоянием, или просто состоянием, является конкретная конфигурация робота. Набор всех возможных конфигураций образует пространство проблемных состояний или пространство состоянм(!. Оператор, применяемый к состоянию, преобразует его в другое состояние. Решение поставленной задачи представляет собой последовательность операторов, которые преобразуют начальное состояние в требуемое конечное состояние, Пространство состояний, достижимых из начального, удобно представлять в виде графа, вершины которого соответствуют состояниям, а дуги — операторам. Решение задачи можно получить, применяя операторы к начальному состоянию и получая в результате новые состояния.
В полученным новым состояниям в свою очередь применяются операторы до тех пор, пока не будет достигнуто целевое состояние. Методы организации такого поиска для определения целевого состояния обычно описываются в терминах теории графов. 10.2.1. Вводные примеры Прежде чем приступить к обсуждению методов поиска на графе, рассмотрим кратко несколько базовых примеров, чтобы ознакомить читателя с понятиями, применяемыми в этой главе. Рабочее пространство из модельных объектов. Будем считать, что рабочее пространство состоит из поверхности Т Бл в) тп т» моче (с, в, и — — — — — -'- — — — С~ся в л в моче(с,т,в» моча (и, т, с» Ь-- — -Н л» мОче (л т и» моче (с т в» моча их т, мочи(в, т,л» 1 $ д а был объектом, на вершине которого ничего нет; 2) если У— объект, на нем ничего не должно быть расположено.
Нетрудно использовать граф вместо рис. 10.1 для описания возможных состояний. Оператор МОЧЕ Х от У к Я имеет внд МОЧЕ(Х, У,Я). Граф поиска в пространстве состояний приведен на рис. 10.2. Если мы устраним в графе штриховые линии (предназначенные для того, чтобы оператор не мог быть использован для выполнения одной и той же операции более одного раза), мы получим дерево поиска в пространстве со- Рис. 10.1. Взаимное расположение робота и модельных объектов.
и трех объектов А, В и С. Начальное состояние рабочего пространства следующее: объекты А и В находятся на поверхности, а объект С расположен на верхней грани объекта А (рнс, 1О.1). Робот должен преобразовать начальное состояние в целевое состояние, в котором объекты расположены друг на друге следующим образом: объект А наверху, объект В в середине и обьект С внизу.
Робот может использовать единственный оператор МОЧЕ (двигать) Х от У к Я, который перемещает объект Х с вершины объекта У на объект Я. Для применения оператора требуется 1) чтобы перемещаемый объект Х 516 Рис, 10.2. Граф поиска а пространстве состояний стояний. Из рис. 10.2 видно. что решение задачи состоит из следующей последовательности операторов: МОЧЕ(С, Л, Т), МОЧЕ(В, Т, С), МОЧЕ(А, Т, В). Выбор пути. Предположим, что мы хотим перемещать длинный и тонкий объект А через заполненное препятствиями рабочее пространство (рис. 10.3).
Для планирования движений объекта, находя(цегося в схвате робота, мы мо кем выбрать представление пространства состояний в виде тройки (х, и,с(), где х — горизонтальная координата обьекта: 1 ( х ( 5; у— вертикальная координата объекта: 1 ( и ~ 3; сс — ориентация объекта: О, если объект А параллелен оси х, а= 1, если объект А параллелен оси д. 617 Рис. !О.б. Рис.
1О.З. Рабочее пространство. се'= оеиекотстт4айа ' ооаекотеа Рис. !Об. Рис. !Оап Пространство состояний. б19 бра Положение н ориентация объекта являются дискретными вели- чинами. Операторы нли команды робота следующие: МОЧЕ в направлении .+х на одну единицу, МОЧЕ в направлении ~у на одну единипу, тсОТгтТЕ 90' (повернуть на 90'). ! 2 3 4 Ю .м Пространство состояний показано на рис.
10.4. Мы предполагаем, что каждое «поступательное движение» имеет длину 2 и «вращательное движение» имеет длину 3. Пусть объект А кооосрокаатх 2 з ф а х обаекета первоначально находится в точке (2, 2) и ориентирован па. раллельна оси у. Задача состоит в том, чтобы передвинуть объект А в точку (3,3) так, чтобы он был ориентирован параллельно оси х. Тогда начальное состояние будет (2, 2, !), а целевое — (3, 3, О). Два пути равной длины, приводящих к решению, показаны на рис. 10.5 и !0.6.