УДК 004.896
И. О. Проталинский, И. А. Щербатов
АРХИТЕКТУРА СИСТЕМЫ ВЗАИМОДЕЙСТВИЯ ПРОМЫШЛЕННЫХ МАНИПУЛЯТОРОВ
Введение
Современные достижения в области теории автоматического управления, интеллектуальных методов формализации слабоструктурированных задач и управления сложными техническими системами позволяют реализовать очень сложные робототехнические системы, к которым относятся мобильные роботизированные платформы, гибкие автоматизированные линии и андроидные роботы. Функционируют робототехнические системы в соответствии с программой управления на основании информации от устройств технического зрения и сенсорного очувствления. Вопросам взаимодействия робототехнических систем и их «коллективного» поведения уделяется крайне мало внимания. Это обусловлено рядом факторов.
Постановка задачи
Целью исследований являлось рассмотрение существующих технологий взаимодействия роботов, обзор существующих протоколов взаимодействия роботов между собой и разработка и описание архитектуры системы взаимодействия для двух промышленных робототехнических систем.
Сообщества взаимодействующих робототехнических систем
Робототехника еще очень долго будет учиться у живой природы. Особенно это относится к сфере взаимодействия роботов и управления ими. Именно поэтому обзор основных видов взаимодействия робототехнических систем будет проводиться на основании сравнения иерархий живой природы и аналогичных им «коллективов» технических устройств. В окружающей среде можно выделить несколько видов сообществ живых существ: стая с неопределенным количеством «лидеров», стая с одним «лидером», стая с иерархией «лидеров» и возможностью взаимодействия индивидуумов на одном иерархическом уровне. Рассмотрим каждое из представленных сообществ подробнее.
Примером стаи с неопределенным количеством «лидеров» можно считать скопление рыб, стаи птиц, рои пчел. Данные сообщества осуществляют передвижения в пространстве только за счет своих инстинктов и инициативы индивидуумов, имеющих информацию о местонахождении пропитания. Биологи давно задаются вопросом: существует ли для реализации целеустремленного массового движения какая-то сложная коммуникация между информированными и неинформированными членами группы и каковы механизмы принятия коллективного решения? С целью выявления коммуникации британский ученый Иэйн Кузин (Iain D. Couzin) из Принстона и его коллеги из Оксфорда построили модель стаи данного типа. Единственным условием при построении модели было соблюдение баланса между потребностью одних остаться в группе и личном желании других (их условно можно назвать лидерами) двигаться в выбранном на свой страх и риск направлении, руководствуясь неким знанием. При этом никаких заметных отличий у «лидеров» групп (как правило, их несколько) не существует - ни генетика, ни размеры не могут объяснить их лидерство. Ведь у их последователей нет никакого способа узнать, кто их, собственно, ведёт - чаще всего они могут видеть только самых близких соседей. При моделировании группа Кузина руководствовалось только двумя правилами: во-первых, каждую модель животного наделили инстинктом, заставляющим их держаться около других (что важно в реальном мире); во-вторых, члены группы были должны всеми силами стараться избегать столкновений друг с другом, т. е. двигаться вместе со всеми, но на безопасном расстоянии. После этого исследователи вложили в память некоторых членов группы информацию о нужном направлении, например к источнику пищи. Моделирование показало, что даже когда безыдейные и информированные существа не могли признать статус друг друга, «наивные» животные спонтанно подчинялись решениям «эксперта», поскольку руководствовались стремлением остаться в группе. Достоинством данной технологии является простота реализации протокола (алгоритмов) взаимодействия роботов в сообществе, недостатками - возможность взаимодействия только идентичных роботов, т. е. роботов с одинаковыми свойствами и способностями, и высокая вероятность принятия ошибочного решения.
Стая с одним лидером - самый распространенный вид сообщества в живой природе: все звери, за исключением человекоподобных обезьян. В подобных сообществах лидер вырабатывает цель для всего сообщества, остальные ее выполняют. Примером в сфере информационных технологий является групповое управление роботами в гибких производственных системах. Оператор задает цель и методы достижения данной цели, роботы же исполняют, работают по заданным им методам. При построении систем данного типа разработчики руководствуются пятью основными правилами: общее решение этой задачи - иерархическая централизованно-децентрализованная система группового управления; основа системы - нижний уровень децентрализованного управления с распределением общей цели между роботами; для решения задачи необходимо выработать соответствующие конкретным типовым целям критерии оптимизации, такие как время достижения цели (быстродействие), общие энергозатраты, стоимость и т. п., а также комбинация подобных критериев при заданных ограничениях других показателей (надежность, ресурс, возмущающие воздействия и т. п.); разработка принципов и методики синтеза всей иерархической системы управления группой роботов, вплоть до верхнего уровня планирования, а также технической диагностики и восстановления функционирования группы при отдельных отказах и т. д. применительно к конкретным типовым назначениям и целям группы; разработка алгоритмов обработки информации и управления для таким образом синтезированных систем управления. Во временном аспекте эта задача подразделяется на две - задачу оценки ситуации, принятия решений к действию и планирования этих действий и задачу непосредственного управления этими действиями в динамике. Данная система применяется при проектировании роботизированных систем, в которых используется несколько роботов, например для взаимодействия спасательных и промышленных роботов. Достоинствами данного метода являются: отсутствие необходимости использовать протокол взаимодействия роботов между собой; архитектура системы управления, децентрализованная на нижних уровнях; возможность устранения отдельных отказов для автоматического восстановления функционирования группы. К недостаткам метода группового управления роботами можно причислить возможность взаимодействия только идентичных роботов, т. е. роботов с одинаковыми свойствами и способностями; централизованную система управления роботами на верхних уровнях архитектуры; отсутствие интеллектуального распределения обязанностей роботов между собой.
Последним видом сообществ, выделенных нами, является стая с иерархией «лидеров» и возможностью взаимодействия индивидуумов на одном иерархическом уровне. Это сообщества живых существ, различных по своим свойствам, каждое из которых обладает интеллектом, способностью общаться с другими членами сообщества и объединяться во временные группы для решения определенной задачи. Сообщества данного типа обладают четкой иерархией «лидеров». В природе такие сообщества составляют человекообразные обезьяны и, конечно, люди. В сфере информационных технологий примерами сообществ данного типа можно считать многоагентные системы. Идея многоагентности предполагает кооперацию агентов при коллективном решении задач. В многоагентной системе агент, который не способен решить некоторую задачу самостоятельно, может обратиться к другим агентам. Другой вариант, когда необходима кооперация - это использование коллектива агентов для решения одной общей трудной задачи. При этом агенты могут строить планы действий, основываясь уже не только на своих возможностях, но и «думать» о планах и намерениях других агентов. Можно надеяться, что система, в которой агенты могут учитывать планы и интересы других агентов, будет являться во многих случаях еще более гибкой. В настоящее время предложено множество различных моделей коллективного поведения агентов. Как правило, каждая из моделей концентрирует внимание на нескольких аспектах такого поведения и рассматривает проблемы в соответствии с выбранной архитектурой (моделью) самого агента. Для знаний, отвечающих за коллективное поведение, в архитектуре агента обычно выделяют специальный уровень - уровень кооперации (cooperation layer).
Многоагентные системы
В последние годы координацией агентов наиболее интенсивно занимаются в сообществе исследователей распределенного искусственного интеллекта. Значительное количество работ посвящено исследованию «коллективного» поведения агентов в процессе совместного решения задач в рамках Belief-Desire-Intention (BDI)-архитектур [1]. Рассмотрим кратко различные модели кооперации агентов.
Модель кооперативного решения проблем (CPS). Эта модель рассматривает взаимодействие агентов, построенных согласно BDI-архитектуре. В модели ментальные понятия формализуются с помощью операторов временной логики. Используя формализм временной логики, вводятся определения таких понятий, как потенциал для кооперации, групповые действия, достижимость цели агентом и т. д. Остановимся на этих понятиях подробнее.
В процессе формирования кооперативного решения в рамках CPS-модели осуществляются:
1. Распознавание. Процесс кооперативного решения начинается тогда, когда агент распознает целесообразность кооперативного действия. Например, у агента имеется цель, достичь которой в изоляции (по его убеждению) он не способен или для ее достижения предпочитает кооперацию.
2. Формирование группы агентов. На этой стадии агент, установивший возможность совместного действия, ищет партнеров. При успешном завершении этой стадии образуется группа агентов, имеющих совместные обязательства для коллективных действий.
3. Формирование совместного плана. Это та стадия, на которой агенты переговариваются с целью выработать совместный план, который, по их убеждению, приведет к желаемой цели.
4. Совместные действия. Здесь агенты действуют согласно выработанному плану, поддерживая взаимодействие согласно принятым на себя обязательствам.
Примером многоагентных систем являются роботизированные комплексы, разработанные в рамках проекта RoboCup. RoboCup - международный проект, целью которого является развитие искусственного интеллекта, робототехники и связанных с ними областей. Он был создан как попытка активизировать исследования в области искусственного интеллекта и создания разумных роботов, предоставив для решения общую проблему, объединяющую широкий спектр технологий. Основой для исследований был выбран футбол, однако результаты работы над проектом могут быть использованы для решения социально значимых задач (например, поиск и спасение пострадавших от техногенных катастроф и природных бедствий) и в промышленности. Конечной целью проекта является создание к 2050 г. команды полностью автономных человекоподобных роботов, которая смогла бы обыграть чемпионов мира по футболу. Футбол роботов предоставляет многоагентную среду, функционирующую в режиме реального времени. Коммуникации между агентами ограничены естественными причинами - сервер-симулятор ограничивает область слышимости игроков и увеличивает долю шума в сообщениях в зависимости от расстояния до источника звука, кроме того, игрокам необходимо оперативно реагировать на изменения в игре, поэтому у них нет времени для частого согласования своих действий с остальными членами команды. Однако у игроков есть по крайней мере две возможности выработать общекомандную стратегию - перед игрой и в перерыве между таймами. Во время игры агенты действуют автономно, а общение между ними ограничено. Но они могут действовать согласно установленной предварительно договоренности, кроме того, для всех игроков могут быть определены признаки необходимости смены общей стратегии.
Другим примером многоагентных систем является проект CAMPOUT (Control Architecture for Multi-Robot Planetary Outposts), реализуемый NASA. Данная архитектура управления определяет общую модель класса агентов: ряд структурных компонентов, в том числе получение информации, рассуждение и действие; специфические выполняемые функции и интерфейс каждого компонента, а также топологию взаимосвязи между компонентами. Это определение устанавливает класс архитектурных сущностей (компоненты получения информации/действия, интерфейсы и топология между компонентами и т. д.), которые используются при точном описании конкретной архитектуры. Архитектуры управления роботами могут быть в широком смысле охарактеризованы как совещательные (основанные на планировании), реакционные (с тесной связью между полученной информацией и действием) и смешанные варианты этих двух типов. Архитектура управления многороботными планетарными поселениями (Control Architecture for Multi-Robot Planetary Outposts - CAMPOUT) - это архитектура распределенного управления, основанная на многоагентной или базирующейся на поведении методологиях, где выполняемые функции высшего уровня составлены посредством координации базовых поведений с использованием нисходящей декомпозиции задачи, выполненной мультиа-гентным планировщиком. Цели проекта: разработать масштабируемую архитектуру управления для автономной, разумной координации многочисленных роботов, которые могут выполнять
стандартные операции схватывания, поднятия, перемещения и применения силы на скалистых и неровных естественных рельефах, представить методологию для анализа, моделирования, детализации и контроля конкретных реализаций этой архитектуры, разработать инфраструктуру и оборудование для поддержки и оценки конкретных реализаций. К достоинствам данного метода можно причислить: возможность взаимодействия в рамках одной системы управления роботов различного типа, децентрализованную структуру управления, интеллектуальную систему распределения «обязанностей» роботов. Однако использование теории многоагентных систем коллективного поведения приводит к большому числу проблем. Среди них следует выделить такие проблемы, как формирование совместных планов действий, наличие конкуренции за совместные ресурсы, организация переговоров о совместных действиях, распознавание необходимости кооперации, декомпозиция целей.
Применение многоагентных систем для организации взаимодействия роботов
При детальном рассмотрении трех основных методов построения систем взаимодействия роботов с учетом всех их достоинств и недостатков, можно сделать вывод, что для реализации процесса построения системы взаимодействия двух промышленных роботов предпочтительным инструментом является теория многоагентных систем [2].
Для теории многоагентных систем характерно использование интеллектуальных протоколов взаимодействия агентов между собой. Для построения системы взаимодействия необходимо рассмотреть уже существующие протоколы, и на основе анализа их достоинств и недостатков принять решения об использовании одного из них. Рассмотрим только протоколы взаимодействия, наиболее часто реализуемые на практике.
Теория речевых актов (Speech Act Theory). Данный метод строится на возможности использования небольшого числа примитивов, например ASK, TELL, REJECT, REQUEST, COMMIT, NEGOTIATE. Процесс непосредственного взаимодействия начинается тогда, когда агент отсылает сообщение, содержащее его точку зрения (позицию, attitude) по некоторому вопросу. Посредством обмена сообщениями ASK, TELL, REJECT агенты могут обсуждать возможность совместной реализации поставленной цели и принимать совместное решение. При этом в процессе взаимодействия агенты дополняют свои базы знаний.
СOOL (Coordination Language) - язык, предназначенный для управления и контроля взаимодействия агентов между собой. Важнейшими конструкциями языка являются планы переговоров, определяющие состояния, и переговоры, определяющие текущее состояние плана, исполняемого в конкретный момент. Агенты одновременно могут иметь активными несколько переговоров и управлять их переключением и приостановкой, а также динамически создавать дополнительные переговоры.
UNP (Unified Negotiation Protocol) - протокол, на основе которого реализована наиболее оптимальная система разрешения конфликтов, позволяющий повысить суммарные количественные и качественные показатели совместной работы агентов. Рассматриваются конфликтные ситуации, для разрешения которых используется механизм рандомизации. В зависимости от того, кто выигрывает жребий, удовлетворяются цели либо обоих агентов, либо только одного. При рассмотрении трех представленных протоколов взаимодействия нами было принято решение на основе теории речевых актов и протокола UNP создать собственный протокол - специально для систем взаимодействия промышленных роботов.
Архитектура системы взаимодействия робототехнических систем
Разработанная архитектура гибкой производственной линии (ГПС) с двумя производственными роботами представлена на рис. 1. Указанная система основана на архитектурах многоагентных систем и архитектуре современных ГПС [3].
Человек-
оператор
А
Лингвистический
I
Цель
управления
Система Система Система
приобретения К управления 4 ► управления
знаний роботом роботом
Сенсорная
система Приводы Приводы
І
Рис. 1. Архитектура ГПС с двумя промышленными роботами
Отличительной чертой архитектуры является необходимость взаимодействия агентов только в случае, обновления цели, иначе они функционируют уже по готовой программе, синтезированной ими же при обновлении цели. Из созданных программ создается база знаний. База знаний - основная часть системы взаимодействия. Она представляет собой множество уже заданных целей и множество методов достижения поставленной цели. Это означает, что в базе заложена информация о технологическом процессе, образ продукта на каждом этапе обработки, технические характеристики роботов. База знаний имеет фреймовую структуру с динамической системой взаимодействия фреймов. Каждый фрейм имеет пирамидальную форму представления информации.
Лингвистический редактор - устройство преобразования естественного языка в язык, понятный машине. Механизм лингвистического вывода - это набор алгоритмов нечетких вычислений, предназначенных для преобразования цели и методов, заложенных в базе знаний в язык протокола взаимодействия роботов.
На рис. 2 представлена структурная блок-схема архитектуры системы управления роботом.
Механизм лингвистического ; вывода
Обработка
сенсорной
информации
Сенсорная Модель внешней
система и внутренней
среды
Рис. 2. Архитектура системы управления промышленным роботом
Представленная архитектура позволит нам в дальнейшем разработать программное обеспечение для каждого промышленного робота в отдельности и для системы роботов в целом.
Заключение
Полученные в работе результаты позволяют сделать вывод о целесообразности использовании теории многоагентных систем для построения системы взаимодействия промышленных роботов.
Кроме того, выявлена необходимость создания специального протокола взаимодействия промышленных роботов, основанного на теории речевых актов и протокола UNP. Разработанная общая архитектура гибкой производственной линии с двумя промышленными роботами и с функцией взаимодействия роботов позволяет реализовать на практике предложенные алгоритмы и методы.
Разработана архитектура системы управления промышленным роботом, предполагающая написание специального программного обеспечения для реализации системы управления.
СПИСОК ЛИТЕРАТУРЫ
1. Юрьевич Е. И. Основы робототехники. - СПб.: БХВ-Петербург, 2005. - 401 с.
2. Wooldridge M. An Introduction to MultiAgent Systems. - John Wiley & Sons Ltd, 2002. - 366 p.
3. Тарасов В. Б. От многоагентных систем к интеллектуальным организациям: Философия, психология,
информатика. -М.: Едиториал УРСС, 2002. - 352 с.
Статья поступила в редакцию 6.10.2009
ARCHITECTURE OF SYSTEM OF INTERACTION OF INDUSTRIAL MANIPULATORS
I. O. Protalinskiy, I. A. Shcherbatov
At present in the industry the robotized systems with one, but more rarely with two manipulators independent from each other are used that does not satisfy the requirements of manufacturers. To increase volumes and quality of the executing works it is necessary to construct the system of interaction of the several robotized systems. The results of the research allow to make a conclusion on expediency of the use of the theory of multiagent systems for construction of the system of industrial robots interaction. Besides, the necessity of creation of the special report of industrial robots interaction based on the theory of speech certificates and UNP protocol is revealed. The general architecture of the flexible industrial line with two industrial robots and with the function of robots interaction and the architecture of the control system of the industrial robot are offered. The necessity of creating a special software for control system realization is proved.
Key words: system of robots interaction, group management of robots, theory of multiagent system, flexible industrial systems, the control system of industrial robot, UNP protocol.