Агенты полиэргатической системы обнаружения подвижных препятствий и управления движением мобильного робота

Агенты полиэргатической системы обнаружения подвижных препятствий и управления движением мобильного робота

П.В. Степанов, И.А. Щербатов, О.М. Проталинский, П.П. Алексеев

Аннотация— В настоящее время существует множество приложений для автономных мобильных платформ. Некоторые из них применимы в качестве помощников врачей в больницах, в аэропортах, в музеях, а также при обнаружении и задержании злоумышленников. Существует несколько разработок, предполагающих использование видеонаблюдения для отслеживания людей роботом. Обычно камера предназначена для обнаружения лиц, цвета бликов или контроля контура объекта. Другие исследователи предлагают лазерный дальномер для получения данных. При этом рассматривается и гибридный подход в работах, где представлена визуальная информация и данные, полученные с помощью лазера.

В статье представлена подробная детализация методики Prometheus, которая используется для разработки приложений для мобильных платформ, а именно обнаружение и следование за человеком на основе принципов многоагентного подхода.

Ключевые слова—Робототехника, системы, приложение

мультиагентные

I. Введение

В последнее время широкое распространение получают приложения для мобильных платформ, архитектура которых основана на взаимодействии интеллектуальных агентов между собой.

Однако на данный момент задача обнаружения и распознавания объектов привлекла внимание промышленных предприятий. Большой вклад в развитие данной темы было отражено в работах [1]. Как правило, системы наблюдения состоят из нескольких различных устройств, позволяющих обрабатывать множество потоков информации (видео, аудио, изображения, скорость передвижения и т.д.) из окружающей среды для анализа и интерпретации обстановки в режиме реального времени [2]. С точки зрения обработки изображений, данные системы основаны на возможности вычисления и использования уже имеющихся устройств с целью получения наибольшей масштабируемости и безопасности распределенной

Статья получена 8 ноября 2016.

Степанов П.В., АГТУ,

системы.

Основные проблемы, решаемые с помощью мультиагентных систем для автономных мобильных платформ: (1) получение данных от различных датчиков; (2) преобразование входной информации в команды робота; (3) установление соответствия сигналов выходной информации; (4) координация выполнения задач.

Системы видеонаблюдения используются по трем причинам. Во-первых, для того чтобы гарантировать безопасность в общественных местах и местах массового скопления людей (например, на вокзалах, метро, аэропортах) или для предотвращения актов вандализма или различного рода правонарушений; во-вторых, для воспроизведения произошедших инцидентов; в-третьих, для получения статистических данных по мониторингу объектов окружающей среды.

В частности мобильные роботы могут быть оснащены различными датчиками для выполнения задачи по видеонаблюдению, так как с их помощью можно «запечатлеть» интересующий объект, а с другой стороны способны вести сбор статистических данных в труднодоступных для обычных камер местах, либо являющихся опасными для человека. В связи с этим основной целью данной статьи является повышение точности определения подвижных препятствий и их объезда мобильным роботом. Практическая важность, удовлетворяющая данной цели, использования концепции мультиагентных систем изложена в работах[3], удовлетворяющая данной цели.

Возможность «общаться» позволяет агентам работать вместе для решения сложных задач, которые не могут быть выполнены одним агентом, что является сущностью многоагентных систем [4]. Такие системы характерны тем, что состоят из набора независимых и автономных агентов, как правило, взаимодействующих для решения задач, выходящих за рамки возможности самостоятельного выполнения. Для мультиагентных систем выделяется домен, в котором накапливаются необходимые знания для решения комплекса различных задач. Выполнение задачи зависит и от координации решения задач другими субъектами без взаимодействия с централизованным звеном. Например, программы для оборонной промышленности исполняются в защищенной децентрализованной недетерминированной среде и требуют интеллектуальную составляющую,

способную к самостоятельному принятию решений. Данные методы лежат в основе технологий и алгоритмов, используемых в мультиагентных системах для применения в военных целях [5], таких как моделирование, обучение и управление транспортными самолетами, пилотируемой авиацией и беспилотными летательными аппаратами. Следует подчеркнуть пригодность использования мультиагентных систем для задач видеонаблюдения, поскольку: а) подвижная камера позволяет передавать больший объем данных; б) позволяет распределить функции каждого агента, что позволит решать сложные задачи при видеонаблюдении объекта. Такой тип задач влечет за собой использование механизмов точной координации и кооперации в динамически изменяющейся среде, часто использующихся в мультиагентных системах [6]. С другой стороны, распределение задач в видеонаблюдении позволяет решать проблемы каналов пропускания, производительности, скорости, надежности, автономности и масштабируемости [7].

Основные свойства агентов (автономность, социализация, реактивность, генерация) наряду с характеристиками мультиагентных систем

(распределенность в управлении данными, надежность, связь и координация между объектами) позволяют оптимально решить проблему видеонаблюдения объектов.

II. Использование мультиагентных технологий в

ВИДЕОНАБЛЮДЕНИИ В РОБОТОТЕХНИКЕ

В настоящее время существует множество приложений для автономных мобильных платформ. Некоторые из них применимы в качестве помощников врачей в больницах, в аэропортах, в музеях, а также при обнаружении и задержании злоумышленников. Существует несколько работ, предполагающих использование видеонаблюдения для отслеживания людей роботом. Обычно камера предназначена для обнаружения лиц, цвета бликов или контроля контура объекта. [8] Другие исследователи предлагают лазерный дальномер [9] для получения данных. При этом рассматривается и гибридный подход в работах [10, 11], где представлена визуальная информация и данные, полученные с лазера. В дополнении к сенсору очувствления на мобильном роботе [12] установлено звукозаписывающее устройство с подсистемой распознавания речи. Другой вариант предполагает датчик, позволяющий производить слежение за динамическим объектом [13]. Например, в мобильную платформу могут быть установлены два светодиода, изображения которых обнаруживает камера или ультразвуковой датчик для обнаружения препятствий.

Вышеуказанные работы не используют какую-либо методологию, которая позволяла бы спроектировать приложение. Моделирование процесса движения и аналогичных процессов отражены в данных работах [14,15]. Предлагаемое решение сочетает в себе методика Software Engineering, так как она содержит хорошее описание для создания приложений. Кроме того, данная

методика позволяет разделить терминологию, аннотацию, модель и процесс деятельности [16].

По аналогии с человеком роботу необходим определенный уровень автономности, реактивности и социализации для выполнения своих задач. Данные свойства часто приводят в качестве обоснования для описания технологии агента [17], поэтому агент-ориентированная технология весьма полезна для аналогичных систем. За последние десятилетия было предложено множество методик агент-ориентированного подхода, но только несколько из них были применены для разработки приложений автономных мобильных платформ, а именно Cassiopeia [18], MaSE (мультиагентная инженерная система) [19], PASSI (Процесс социализации и адаптации агента) [20], а также методики, предложенной в [21], под названием GAIA и Маs-CommonKADS. Методика INGENIAS была испытана в продвинутой системе видеонаблюдения, состоящей из различных типов датчиков [22].

В данной статье представлена подробная детализация методики Prometheus, которая используется для разработки приложений для мобильных платформ, а именно обнаружение и следование за человеком на основе принципов многоагентного подхода. Была выбрана эта методика, так как она способна предоставить такой набор инструментов, которые способны сформировать мультиагентную систему. Методика Prometheus полезна тем, что способна разделить сущность объекта на составные действия агентов. В робототехнике такими сущностями являются данные окружающей среды (температура, освещенность, дистанция до объекта и т.д.), собранные датчиками очувствления, а действия робота представляют собой контроль за осуществлением исполнительных механизмов (двигатели, светодиоды и т.д.). В связи с этим использование планирования хорошо подходит для разработки роботизированных систем.

Методика Prometheus состоит из процессов проектирования, реализации и тестирования (отладки) агент-ориентированных программных систем. Она включает в себя набор руководящих инструментов, содержащих весовые коэффициенты (примеры) и эвристические данные, обеспечивающие наилучшее развитие действий на каждом этапе. Данные процессы включают в себя 3 этапа (рисунок 1).

Этап «Системная спецификация» определяет основные цели и функциональные возможности системы, сценарии использования, которые наглядно иллюстрируют функционирование системы, а также определяет входные и выходные данные (действия).

Исполнители

Рис.1 Методика Prometheus мультиагентной системы.

в рамках реализации

движения (1) робот получает информацию об обнаруженном сгустке, и (2) датчик сигнализирует о необходимости роботу следованию за изображением.

Этап «Архитектура приложения» использует выходы, полученные на предыдущем этапе для определения и взаимодействия типов существующих агентов в системе. В данном блоке присутствует схема связи данных и роли агента в системе, а также схема инициализации агента и главный модуль системы.

Этап «Интерфейс системы» сфокусирован на развитии внутренней структуры каждого агента и на реализации каждым агентом своих задач в рамках всей системы. Данный блок содержит модуль агента и набор схем подсистем. И, наконец, в методике Prometheus подробно описано, как субъекты, полученные в ходе разработки, превращаются в сущности, используемые в агенто-ориентированном языке программирования (JACK). Процесс проектирования для методики Prometheus поддерживается инструментом Prometheus Design Tool (PDT) [23].

III. Системные спецификации

Процесс обнаружения роботом и следования за движущимися объектами изображен на диаграмме состояния робота (рисунок 2). Робот движется по заданной схеме в помещении, в то время как установленные камеры производят фотографии, необходимые для этапа поиска объекта (состояние «Процесс поиска»). Через некоторое время Timer_P робот останавливается для анализа изображений, отснятых в момент обнаружения. В случае обнаружении

Рис.2 Диаграмма состояний робота

Процесс следования за человеком запускается (состояние «Следование»), если принято соответствующее решение системой (FoИow_P). Во время передвижения камера робота может реагировать на движущиеся объекты в окружающей среде. В этом случае с помощью датчиков слежения (Detect_P) происходит сбор изображений для проверки движения. Если движение не было подтверждено, то робот продолжает двигаться по изначальному маршруту. Для достижения корректного отслеживания объекта (состояние «Следование») полученные изображения отображаются и непрерывно анализируются с целью

получения информации. За объектом продолжается следование до окончания фазы «Следование». Выполнения этого результата можно добиться тремя различными способами:

1) отсутствие необходимости в слежении за объектом (переход к шагу stop_P);

2) цель покинула поле зрения камеры;

3) невозможно производить следование за объектом в связи с тем, что имеются некоторые конструктивные ограничения по передвижению мобильной платформы в окружающей среде (например, лестница).

После выполнения одного из вышеизложенных способов робот продолжает выполнение поставленных задач.

Системная спецификация начинается с обзорной анализ диаграммы, которая показывает взаимодействие между системой и окружающей средой. Исполнитель -это внешний объект (человек или программно-аппаратный комплекс), который взаимодействует с системой. Во-первых, на этом уровне исполнитель идентифицируется каждым устройством, установленным на роботе (гидролокатор, бамперы, камеры и колеса; есть агент Guard_A, обнаруживающий человека, который взаимодействует с системой, и агент Timer_A, который сохраняет время работы с перцептами робота. Существует два сценария (обнаружения объекта и следование за ним), которые соответствуют основным требованиям системы, и сценарий запуска системы, представляющий процесс инициализации компонентов робота. Во-вторых, информация, которая поступает в систему из окружающей среды, определяется компонентами робота (перцептами). Это соответствует обнаружению бампером воздействий (агент Collision_P), запечатленным изображениям камерой (агент Image_P), воспринимаемым сенсором расстояний до препятствий (агент Distance_P), а также команды агентов по контролю над изменением состояния системы (Detect_P, Follow_P, Follow stop_P). С другой стороны, все воздействия на агентов системой также идентифицируются как действия. Это соответствует осуществлению предусмотренных движений камеры на основании параметров наклона, панорамирования и масштабирования (агент Set focus_a), команды управления движением колеса (Set direction_a, Stop_a, Move_a) и действие Show_images_a для демонстрации запечатленных изображений. Метод Show_results_a также выводит на экран робота изображения областей, где были обнаружены движения объектов.

Сценарии подробно детализированы на сценарной матрице. Сценарий представляет собой последовательность структурированных шагов, разделяющихся на действия, результаты восприятий, цели или другой сценарий. В качестве примера можно описать выполняемый системой процесс для слежки за движением обнаруженного объекта (Сценарий слежки объекта). Порядок выполнения сценария начинается с сигнала об обнаружении изображения (шаг 1). Затем изображения захватываются (шаг 2) и анализируются (шаг 3), вычисляются данные для движения за

захваченным изображением (шаг 4) и отображаются анализы распознавания (шаг 5). На основе этой информации мобильная платформа направляется к объекту (шаг 6) и следует за ним (шаг 7). Выполнение сценария переходит к шагу 2 до тех пор, пока система не даст сигнал для остановки слежения за объектом (шаг 8). Фаза слежения завершается, когда цель достигнута (шаг 9).

В подходе мультиагентных систем несколько агентов «общаются» и координируют свои действия для решения общих задачи по наблюдению окружающей среды. Задача связана для каждого сценария с таким набором целей, которые сценарий должен достигнуть. Таким образом, в диаграмме обзора целей есть три основные цели (запуск системы, обнаружение движения и движение за объектом), связанные с соответствующими сценариями (сценарий запуска системы, сценарий обнаружения движущегося объекта и сценарий движения за объектом). Данные сценарии достаточны и необходимы для полноценного выполнения задач по наблюдению за окружающей средой.

Система разделяет задачи на подзадачи для выполнения их агентами. Процессы обнаружения анализируют информацию, предоставляемую сенсорами (для объезда препятствий), бампер (для контроля столкновений), предохранитель, видеопоток, а также энкодеры (для перемещения робота). Существуют общие подзадачи для выполнения задач по обнаружению движения и следования за объектом.

IV. Архитектура приложения

Задачи, решаемые на данном этапе, позволяют описать типы агентов (в виде набора ролей). Агент отвечает за функциональные возможности - роли -связаны их между собой. Когда роли сгруппированы по агентам, информация о восприятии и действиях, изображенных на диаграмме системы ролей, автоматически распространяются на агенты в общей диаграмме системы (рисунок 3).

Доигек

Г

А

Старт System R

J

УпрШШ1|Нй

КТргЛпКрлШГТГ I

» Ordnji

V___л1

^Jr Kullw R. ]

Упрощение jeiischhcm

Уирныкнт:

НЮСрШСШВОЛ!

'-*{ Wimtajt j __ DetKi R I

-fc| Mut If li К I

..^Дгуг'ттгчг'ч

я 5kiu_R J

Kahcfn

/ \ I Сделать cjii[Mi>K j ~1 ImagiJR. !

Рис.3 Роли агентов.

Вслед за идентификацией агентов системы следующая задача состоит в определении взаимодействия агентов

(протоколы взаимодействия - Interaction Protocols, далее IP) для описания последовательности достижения заданных целей.

V. Заключение

Данная система была опробована на базе автономной мобильной платформы робота MobileBot. Моделировалось автономное движение робота в учебном корпусе университета во время проведения занятий.

После построения возможных путей перемещения мобильной платформы программа сохраняет массив данных (сценарии) и выбирает наиболее оптимальный. В случае опасного сближения (близкое положение к другому объекту) с динамическим препятствием останавливает мобильную платформу.

Выбранный сценарий приводится в системе к следующей последовательности команд для робота: при командах left и right мобильная платформа поворачивается на заданный угол (в градусах) влево (или вправо), команда fwd задает (в сантиметрах) движение на определенное расстояние

Предложенная система опробовалась на базе мобильного робота MobileBot под операционной системой ROS в учебном корпусе во время занятий, что позволило частично смоделировать трафик движения в торговом центре.

Библиография

[1] Fernández-Caballero, A., Gómez, F. J., & López-López, J. (2008). Road-traffic monitoring by knowledge-driven static and dynamic image analysis. Expert Systems with Applications, 35(3), 701-719.

[2] Cucchiara, R. (2005). Multimedia surveillance systems. In The 3rd ACM international workshop on video surveillance and sensor networks (pp. 3-10).

[3] Padgham, L., & Winikoff, M. (2004). Developing intelligent agents systems: A practical guide. John Wiley and Sons.

[4] Huhns, M. N., & Stephens, L. M. (1999). Multiagent systems and societies of agents. In G. Weiss (Ed.), Multiagent systems. The MIT Press.

[5] Pechoucek, M., Thompson, S. G., & Voos, H. (2008). Defense industry applications of autonomous agents and multiagent systems. Whitestein series in software agent technologies and autonomic computing. A Birkhauser Basel book. ISBN 978-3-7643-8570-5.

[6] d'Inverno, M., Fisher, M., Lomuscio, A., Luck, M., de Rijke, M., Ryan, M., et al. (1997). Formalisms for multi-agent systems. The Knowledge Engineering Review, 12, 315-321.

[7] Pavón, J., Gómez-Sanz, J. J., Fernández-Caballero, A., & Valencia-Jiménez, J. J. (2007). Development of intelligent multi-sensor surveillance systems with agents. Robotics and Autonomous Systems, 55(12), 892-903.

[11] Zivkovic, Z., & Krose, B. (2008). People detection using multiple sensors on a mobile robot. In Unifying perspectives in computational and robot vision (pp. 25-39). Springer.

[12] Inamura, T., Shibata, T., Matsumoto, Y., Inaba, M., & Inoue, H. (1998). Finding and following a human based on on-line visual feature determination through discourse. In International conference on intelligent robots and systems, IROS'98 (pp. 348-353).

[13] Chan, H. K., Ye, W., Lam, T.L., Ou, Y., & Xu, Y. (2005). Sensor system for a humanfollowing robot. In International conference on automation, control and applications (pp. 350-355).

[14] Fernández-Caballero, A., López, M. T., Mira, J., Delgado, A. E., López-Valles, J. M., &Fernández, M. A. (2007). Modelling the stereovision-correspondence-analysis task by lateral inhibition in accumulative computation problem-solving method. Expert Systems with Applications, 33(4), 955-967.

[15] Fernández-Caballero, A., López, M. T., & Saiz-Valverde, S. (2008). Dynamic stereoscopic selective visual attention (DSSVA): Integrating motion and shape with depth in video segmentation. Expert Systems with Applications, 34(2), 1394-1402.

[16] Bordini, R. H., Dastani, M., & Winikoff, M. (2007). Current issues in multi-agent systems development. In Seventh annual international workshop on engineering societies in the agents world. Lecture notes in artificial intelligence (Vol. 4457, pp. 38-61).

[17] Wooldridge, M., & Jennings, N. R. (1995). Intelligent agents: Theory and practice. The Knowledge Engineering Review, 10(2), 115-152.

[18] Collinot, A., Drogoul, A., & Benhamou, P. (1996). Agent oriented design of a soccer robot team. In Second international conference on multi-agent systems, ICMAS'96 (pp. 41-47).

[19] DeLoach, S., Matson, E., & Li, Y. (2002). Applying agent oriented software engineering to cooperative robotics. In Fifteenth international Florida artificial intelligence research society conference (pp. 391-396).

[20] Cossentino, M., Sabatucci, L., & Chella, A. (2003). A possible approach to the development of robotic multi-agent systems. In IEEE/WIC conference on intelligent agent technology, IAT'03 (pp. 13-17).

[21] Jiménez, J. A., Vallejo, M., & Ochoa, J. F. (2007). Methodology for the analysis and design of multi-agent robotic systems: MAD-Smart. Revista Avances en Sistemas e Informática, 4(2), 61-70.

[22] Pavón, J., Gómez-Sanz, J. J., Fernández-Caballero, A., & Valencia-Jiménez, J. J. (2007). Development of intelligent multi-sensor surveillance systems with agents. Robotics and Autonomous Systems, 55(12), 892-903.

[23] Thangarajah, J., Padgham, L., & Winikoff, M. (2005). Prometheus design tool. In Fourth international conference on autonomous agents and multi-agent systems (pp. 127-128).

Stepanov P.V., Shcherbatov I.A., Protalinskiy O.M., Alekseev P.P.

[8] Schlegel, C., Illmann, J., Jaberg, K., Schuster, M., & Worz, R. (1998). Vision based person tracking with a mobile robot. In Ninth British machine vision conference, BMVC'98 (pp. 418-427).

[9] Gockley, R., Forlizzi, J., & Simmons, R. (2007). Natural person following behavior for social robots. In ACM/IEEE international conference on human-robot interaction, HRI'07 (pp. 17-24).

[10] Kobilarov, M., Hyams, J., Batavia, P., & Sukhatme, G. S. (2006). People tracking and following with mobile robot using an omnidirectional camera and a laser. In IEEE international conference on robotics and automation (pp. 557-562).

Agents for polyergatic detection system of moving obstacles and control the movement of a

mobile robot

Abstract—Nowadays, there are many applications for autonomous mobile platforms. Some of them are useful as assistants to doctors in hospitals, airports, museums, as well as the detection and apprehension of criminals. There are several developments that involve the use of video surveillance to track people's robot. Typically, the camera is designed to detect persons of color or glare control object circuit. Other researchers suggest a laser range finder to get the data. At the same time, and is considered a hybrid approach in the works, which shows the visual information and data received from the laser.

The article presents a detailed specification methodology Prometheus, which is used to develop applications for mobile platforms, namely the detection and follow-up of a man on the basis of multi-agent approach principles.

Keywords—Robotics, multi-agent systems, application