ISSN 1814-1196 Научный вестник НГТУ том 66, № 1, 2017, с. 133-146
http://journals.nstu.ru/vestnik Science Bulletin of the NSTU Vol. бб, No. 1, 2017, pp. 133-14б
СОВРЕМЕННЫЕ ИНФОРМАЦИОННЫЕ MODERN INFORMATION
ТЕХНОЛОГИИ TECHNOLOGIES
УДК 004.021
Онтолого-ориентированный подход к непрямому
взаимодействию пользователей и роботов
*
для совместного решения задач
М.П ПЕТРОВ1, А.М. КАШЕВНИК2
1 197101, РФ, г. Санкт-Петербург, пр. Кронверкский, 49, Университет ИТМО, магистрант. E-mail: 161307@niuitmo.ru
2 199178, РФ, г. Санкт-Петербург, 14-я линия, 39, СПИИРАН, старший научный
сотрудник. E-mail: alexey@iias.spb.su
В данной статье представлен подход к взаимодействию пользователей и роботов с помощью онтологий для совместного решения задач. Использование онтологий позволяет обеспечить семантическую интероперабельность роботов и пользователей при их взаимодействии. В онтологиях хранятся знания о задачах, которые необходимо выполнить, а также знания о функциональных возможностях роботов и текущая ситуация (местоположение, занятость роботов и т. д). На основе этих знаний роботы и пользователи определяют задачи, которые им необходимо выполнить, и получают текущее состояние других роботов и пользователей. Онтологии публикуются в интеллектуальном пространстве, позволяющем пользователям и роботам осуществлять непрямое взаимодействие. Пользователи и роботы формируют и публикуют задачи, когда для их выполнения необходимо привлечение дополнительных ресурсов. Роботы определяют задачу, которую необходимо выполнить, объединяются в коалицию для ее выполнения и распределяют подзадачи в рамках этой коалиции. Благодаря использованию механизма публикации / подписки роботы сразу реагируют на события и на появление новых задач, а пользователи мгновенно получают наиболее актуальную информацию. В статье представлена концептуальная модель подхода к непрямому взаимодействию пользователей и роботов для совместного решения задач, рассмотрены базовые и дополнительные функции роботов, которые могут быть использованы в подходе. Также в статье показана онтологическая модель для организации знаний. Для демонстрации использования подхода при решении конкретной задачи на основе конструктора Lego Mindstorms был сконструирован прототип робота, успешно выполнившего задачу движения в заданную точку и преодоления препятствия.
Ключевые слова: мобильные роботы, онтологии, интеллектуальные пространства, управление знаниями, непрямое взаимодействие, механизм публикации / подписки, семантическая интероперабельность, коалиция роботов
DOI: 10.17212/1814-1196-2017-1-133-146
* Статья получена 04 октября 2017 г.
ВВЕДЕНИЕ
В настоящее время наблюдается тенденция внедрения мобильных роботов во многие сферы деятельности [1-3]. В частности, они активно применяются в следующих ситуациях:
- разведка [1, 2];
- техногенные аварии и катастрофы [3];
- антитеррористические операции [3];
- патрулирование территорий и т. д. [1, 2].
Использование роботов целесообразно при невозможности использования человеческих ресурсов, при наличии угроз здоровью и жизни человека, а также для выполнения трудоемких задач в неблагоприятных условиях.
При этом вследствие неоднородности и сложности ландшафта существует проблема наличия препятствий на пути роботов. Роботы, в зависимости от их конструкции и выполняемой задачи, а также от характера этих препятствий, могут избегать или, если избежать их невозможно, преодолевать эти препятствия. Для реализации обоих вариантов требуются соответствующие подходы к решению задач и взаимодействию с пользователями, которые будут учитывать различные факторы, такие как размеры и форма препятствий.
В данной статье описан онтолого-ориентированный подход к непрямому взаимодействию мобильных трехосных роботов между собой и с пользователем. Эти роботы должны быть способны работать и передвигаться на местности, имеющей неоднородный ландшафт, и выполнять различные задачи, удаленно задаваемые одним или несколькими пользователями либо другими роботами. Каждый робот состоит из нескольких подвижных модулей (блоков), каждый из которых имеет одну или две пары колес и оборудован ультразвуковыми датчиками. Роботы способны обнаруживать препятствия, а также преодолевать не только маленькие препятствия (высота меньше, чем радиус колеса), на которые можно наехать, не совершая дополнительных действий, но и небольшие препятствия высотой больше, чем радиус колеса.
Роботы должны эффективно распределять задачи между собой, также должны оперативно учитываться события, происходящие во время выполнения задач. Например, в случае обнаружения препятствия робот должен попытаться преодолеть его автоматически.
Взаимодействие и обмен информацией между роботами и пользователями осуществляется с использованием технологии интеллектуальных пространств. Данная технология позволяет организовывать совместный доступ к информации и знаниям различными участниками на основе онтолого-ориентированного механизма публикации подписки. Интеллектуальное пространство по сути является информационной моделью, описывающей взаимодействующих мобильных роботов и те задачи, которые они выполняют. Данная технология позволяет использовать в рамках одного сценария роботов и пользовательские устройства различных производителей.
1. СОВРЕМЕННЫЕ ИССЛЕДОВАНИЯ В ОБЛАСТИ ВЗАИМОДЕЙСТВИЯ МОБИЛЬНЫХ РОБОТОВ
В статье [4] рассматривается интеллектуальная система взаимодействия робота и человека. В ней используются адаптивные обучаемые механизмы для учета роботами поведения и предпочтений человека. Чтобы робот мог опознавать действия и команды человека, в систему включены алгоритмы распознавания речи и лица, понимания естественного языка и другие. Робот, используемый в данной статье (Pioneer 3-AT), оборудован множеством датчиков и сканеров, а также камерой. Основной упор в статье сделан на процесс обучения робота и на механизмы взаимодействия его с человеком.
Статья [5] описывает координированный процесс, в ходе которого агенты (которыми могут быть, в частности, мобильные роботы) совместно выполняют работу, используя знания об окружении, о своих способностях и о возможностях коммуникации с другими агентами. Эффективное использование знаний о способностях агентов возможно с помощью использования рангов пригодности (suitability rates), с помощью которых каждый агент выбирает наиболее подходящее действие. Данный подход был протестирован в ходе футбольного матча между мобильными роботами. Взаимодействие в данной статье рассматривается абстрактно, как выбор агента для какого-либо действия.
Статья [6] описывает методологию координирования автономных мобильных роботов в пробках (скоплениях роботов) в перегруженных системах. Методология основана на уменьшении скорости роботов в пробках на перегруженных участках, а также перед ними. Таким образом, роботы замедляются в случае обнаружения перед собой других роботов. Эффективность методологии была проверена в ходе симуляции перегруженной системы, в которой возникла пробка.
В статье [7] обсуждается комбинирование беспроводных сенсорных сетей и мобильных роботов и предлагается фреймворк «слоистый рой» (layered swarm) для взаимодействия децентрализованных самоорганизующихся комплексных адаптивных систем, членами которых являются мобильные роботы. Данный фреймворк представляет собой два слоя (роботы и беспроводная сеть) и каналы связи внутри слоев и между ними. В ходе экспериментальной проверки фреймворка мобильные роботы самостоятельно достигли заданной точки.
Статья [8] описывает систему из группы роботов, которая позволяет осуществлять сбор мусора с территорий без привлечения человека. Система состоит из группы роботов, отвечающих за распознавание объектов и обход местности. В процессе сбора мусора роботы могут взаимодействовать между собой по каналам связи.
Статья [9] посвящена проблеме группового управления роботами в условиях недетерминированных, динамически изменяющихся ситуаций и прежде всего в условиях организованного противодействия. В статье приведена формальная постановка задачи группового управления роботами для данных условий, а также модель коллективного взаимодействия роботов в группах. Эффективность подхода показало имитационное моделирование задачи группового управления роботами в условиях военного противодействия.
Статья [10] описывает систему взаимодействия роботов на основе языка BML (Battle Management Language - язык боевого управления), предназначенного для выражения кратких, недвусмысленных приказов, считываемых и людьми, и роботами. Эти приказы передаются системе из нескольких роботов и обрабатываются для дальнейшего распределения конкретных команд между ними.
В статье [11] рассматриваются вопросы построения взаимодействия людей и роботов, улучшения ситуационной осведомленности человека на базе агентно-ориентированного подхода. Данный подход предполагается применять при передвижении агентов - автономных роботов и космонавтов в защитном снаряжении - по поверхности Луны в контролируемой территориальной зоне (controlled territorial area).
В статье [12] обсуждается применение многоагентных систем для организации взаимодействия промышленных роботов-манипуляторов. На основе этих систем была построена архитектура системы взаимодействия робото-технических систем. В ходе взаимодействия агентов в рамках разработанной архитектуры создаются программы, регулирующие их поведение и хранящиеся в базе знаний.
Статья [13] рассматривает задачу доступа программных агентов к интеллектуальным пространствам на базе платформы Smart-M3 и предлагает модель параллельных сеансов для работы с несколькими интеллектуальными пространствами. Предложенная модель позволяет агенту использовать несколько сеансов в одной сессии, управлять объектами в сессии и предоставляет локальное хранилище, разделенное между сеансами сессии. Хранилище синхронизируется при помощи подписок.
Из анализа вышеперечисленных работ можно сделать следующий вывод. Подходы, использованные в статьях [4] и [6], предполагают строго определенную функциональность роботов, при этом набор задач, решаемых ими, невелик. В статье [5] знания о возможностях роботов формируются динамически, в ходе выполнения задачи, что позволяет эффективно ими управлять. Таким образом, отсутствие ограничения функциональности роботов и динамическое определение доступных функций могут обеспечить наиболее широкий набор задач, доступных для выполнения. Статья [7] показывает эффективность непрямого взаимодействия роботов, т. е. взаимодействие через посредника, в роли которого в статье выступает беспроводная сеть. В статье [8] показана необходимость дополнительного модуля для эффективного взаимодействия роботов и пользователей. Статья [9] предоставляет формальную модель, которую можно использовать для взаимодействия. В статье [10] показана эффективность использования специализированного языка для управления роботами. Статьи [11] и [12] доказывают применимость подхода многоагентных систем для взаимодействия роботов и людей в различных сферах деятельности, а статья [13] предлагает модель взаимодействия агентов с интеллектуальным пространством.
2. ВЗАИМОДЕЙСТВИЕ РОБОТОВ И ПОЛЬЗОВАТЕЛЯ
Взаимодействие роботов и пользователей (рис. 1) осуществляется на основе онтолого-ориентированного механизма публикации / подписки, реализованного в платформе Smart-M3 [14]. Информация в интеллектуальном про-
странстве хранится в информационном содержимом в виде RDF-онтологий. В платформу Smart-M3 включены семантический информационный брокер (SIB) и информационные агенты (KP). В брокере SIB хранится информация, представленная в виде базы знаний; агенты KP обеспечивают доступ к ней и ее изменение и позволяют своевременно получать оповещение о новой информации. Взаимодействие агентов и брокера осуществляется через протокол Smart Space Access Protocol (SSAP) - протокол доступа к интеллектуальному пространству.
Рис. 1. Концептуальная модель подхода к непрямому взаимодействию пользователей
и роботов
Онтология робота представляет собой информационную модель робота, включающую в себя информацию о нем и его функции. Пользователи, используя приложение на смартфоне, определяют задачу для группы роботов, которая публикуется в интеллектуальном пространстве в онтолого-ориентированном виде.
После того как робот получил из интеллектуального пространства задачу, опубликованную пользователем, определил, какие действия ему необходимо выполнить, и выполнил задачу, он публикует результат выполнения: в зависимости от задачи и оборудования робота это может быть информация о достижении цели, изображение препятствия, которое необходимо преодолеть, и т. д. При необходимости обработки информации для последующего анализа опубликованный роботом результат выполнения задачи может быть получен из интеллектуального пространства и обработан дополнительными
сервисами, после чего они публикуют уже обработанную информацию. Например, если робот опубликовал изображение препятствия, оно будет обработано сервисом, распознающим характеристики препятствия на изображении, затем пользователь получит всю информацию о препятствии.
Помимо физической (аппаратной) части и онтологии робота, каждый робот также содержит сервис взаимодействия. Такой сервис необходим для управления роботом и обменом информацией с интеллектуальным пространством, чтобы скорость этого обмена не зависела от контроллера и мощностей роботов. Сервис взаимодействия получает задачи, публикуемые в интеллектуальном пространстве для выполнения роботами, определяет, должен ли робот их выполнить, и далее отправляет конкретные команды в контроллер робота. Сервис запускается одновременно с роботом.
Кроме роботов и пользователей, к интеллектуальному пространству подключены дополнительные вычислительные сервисы, необходимые для расширения количества задач, которые можно выполнить. Сервисы взаимодействуют с интеллектуальным пространством с использованием онтологий, что позволяет им распознать ситуацию, при которой они должны выполнять вычисления. Пример дополнительного сервиса - облачный сервис, хранящий информацию о препятствиях и используемый для автоматического преодоления препятствий, которые уже были преодолены ранее.
Все коммуникации между интеллектуальным пространством и пользователями, роботами, дополнительными сервисами могут осуществляться как через локальную сеть, так и через сеть Интернет.
Функции робота можно разделить на два типа: базовые и дополнительные (рис. 2).
Рис. 2. Функции робота
Базовые функции нужны для перемещения робота. К ним относится движение в двух направлениях и преодоление препятствий путем поднимания, опускания и подтягивания модулей.
Дополнительные функции нужны для расширения количества задач, выполняемых роботами. Распознавание препятствий позволяет сохранять последовательность действий, необходимых для их преодоления, и воспроизводить эту последовательность в случае необходимости преодоления подобных препятствий. Движение в заданную точку предполагает автоматическое пре-
одоление встреченных препятствий или запрос ручного управления, если автоматическое преодоление невозможно. Функция «Исследовать точку» совмещает в себе движение в заданную точку, а также съемку и отправку видео.
Платформа Smart-M3 предполагает хранение данных в виде RDF-онтологий, в которых информация представлена в виде набора троек типа «субъект-предикат-объект». Субъект тройки описывает некую сущность: предмет, устройство, человек и т. д. Эта сущность обладает свойством или может выполнять действие, описанное в тройке. Объект тройки описывает сущность, с которой связан субъект, выполняемую им функцию или его свойство. Объект одной тройки может быть субъектом другой тройки. Предикат тройки описывает тип связи между субъектом и объектом. Это может определять тип функции, выполняемой субъектом, или соотношение субъект-объект.
Простой пример тройки, которая может храниться в онтологии: <robot, task, goToLocation>. Субъект robot описывает робота, к которому относится информация, содержащаяся в тройке, предикат task - то, о чем эта информация, а объект goToLocation - конкретную «задачу» для субъекта robot. При этом goToLocation также является субъектом в тройке <goToLocation, coordinates, "0;0;100">.
У устройств, подключенных к интеллектуальному пространству, организованному на базе платформы Smart-M3, есть возможность «подписаться» на тройки определенного шаблона, чтобы своевременно реагировать на новую информацию, публикуемую в интеллектуальном пространстве. В случае появления новой тройки, удовлетворяющей шаблону, все устройства, подписанные на тройки этого шаблона, получают уведомления.
Типовой пример онтологии, представленной в интеллектуальном пространстве в момент публикации задачи для робота, представлен на рис. 3. Тройки, содержащиеся в онтологии, представлены на рисунке в виде совокупности овалов и стрелок, соединяющих их: овал, из которого стрелка выходит, обозначает субъект; стрелка обозначает предикат, а овал, в который стрелка входит, обозначает объект.
Рис. 3. Онтология в момент публикации задачи для робота в интеллектуальном
пространстве
В данном примере показана информация о роботе, у которого есть три блока (тройка <roboti, blockAmount, "3">). Передний блок помимо основного двигателя (объект "moveEngine"), который есть у всех блоков, имеет также двигатель, с помощью которого можно поднять данный блок (тройка <frontBlock, hasPart, liftEngine>).
Робот умеет двигаться назад (тройка <roboti, implements, moveBack>) и вперед (тройка <roboti, implements, moveForward>), преодолевать препятствие (тройка <roboti, implements, acrossObstacle>), делать снимок (тройка <roboti, implements, takePhoto>). Также робот может отправиться в заданную точку (тройка <roboti, implements, goToLocation>) и исследовать локацию (тройка <roboti, implements, exploreLocation>). В данный момент роботу передана задача двигаться назад (тройка с предикатом task).
Кроме того, в онтологии публикуются тройки с предикатом event, описывающие события, произошедшие во время выполнения роботом задачи, например, остановка из-за обнаружения препятствия (<roboti, event, stopped>).
В начале работы робот «подписывается» на тройки с предикатом task, поэтому когда в онтологии появилась тройка <roboti, task, goToLocation>, робот, проанализировав субъект тройки и определив, что задачу должен выполнять именно он (на основе координат точки, местоположения собственного и других роботов), отправляется в заданную точку.
3. РЕАЛИЗАЦИЯ
Для оценки работоспособности подхода был выбран сценарий исследования точки и преодоления встреченных препятствий, так как он использует большую часть функций робота. В ходе выполнения этого сценария, если робот обнаружил препятствие, используя ультразвуковые датчики, он обращается к облачному сервису, чтобы получить последовательность действия для преодоления такого препятствия. При этом если информации о подобном препятствии в облачном сервисе не найдено, управление роботом передается человеку. Для реализации данного сценария был разработан прототип мобильного робота, способный двигаться вперед, обнаруживать препятствия на пути и преодолевать их. Прототип робота построен на базе робототехнического набора Lego Mindstorm EV3 [15]. Этот набор позволяет легко сконструировать робота необходимой функциональности для целей обучения. При этом есть возможность использовать электронные блоки, моторы и датчики и программировать их на языке Java. На рис. 4 показана конструкция робота, сконструированного для сценария движения вперед и преодоления встреченного препятствия.
Для того чтобы робот был способен преодолевать препятствия в соответствии с представленным сценарием, он был сконструирован из нескольких блоков. Благодаря этому робот может взбираться на препятствие постепенно, сначала поднимая и фиксируя на препятствии передний блок, затем, опираясь на передний и задний блоки, поднимать средний. Все блоки оснащены приводной парой колес; помимо этого центральный блок имеет бесприводную пару колес для поддержания равновесия. Также на центральном блоке установлен ультразвуковой датчик для измерения расстояния до объектов. Этот датчик используется для обнаружения препятствия на пути робота, при кото-
ром происходит автоматическая остановка. На текущем этапе необходимы только базовые функции робота, поэтому он не оборудован камерой или другими устройствами, позволяющими получать какую-либо информацию о характере местности.
Рис. 4. Конструкция прототипа мобильного робота
На рис. 5 представлен сценарий выполнения задачи движения вперед и преодоления встреченного препятствия.
На диаграмме представлены шесть основных компонентов системы.
• Мобильное приложение публикует задачи для выполнения и показывает информацию о ходе выполнения.
• Сервис обработки изображений предназначен для извлечения информации об объекте или местности из фотографии.
• Интеллектуальное пространство представляет собой хранилище информации на основе платформы 8шаг1;-М3.
• Сервис взаимодействия роботов с интеллектуальным пространством представляет собой программу, которая получает, обрабатывает и передает роботу информацию из интеллектуального пространства, а также получает от робота и публикует в интеллектуальное пространство информацию о событиях и о результатах выполнения задач.
• Собственно робот, выполняющий команды, получаемые от сервиса взаимодействия.
• Облачный сервис представляет собой базу знаний, в которой хранится информация о различных препятствиях в виде последовательности действий для их преодоления.
В начале работы каждый робот публикует в интеллектуальном пространстве информацию о своих функциях и ограничениях, которая содержится в его собственной онтологии. Кроме того, в процессе выполнения задач роботы публикуют информацию о своем местоположении и текущей задаче.
Например, пользователь публикует задачу «Исследовать точку» в интеллектуальном пространстве. Так как робот свободен, т. е. не выполняет никакую другую задачу, то его сервис взаимодействия должен определить, должен ли робот выполнять эту опубликованную задачу. Для этого сервис руководствуется информацией о задаче и о других роботах. В случае, если робот оказывается ближайшим, он приступает к выполнению полученной задачи.
Рис. 5. Сценарий выполнения задачи движения вперед и преодоления встреченного
препятствия
Рассмотрим ситуацию, когда робот обнаруживает на пути препятствие. В этом случае он автоматически останавливается, о чем сообщает сервису взаимодействия. Для дальнейшего выполнения исходной задачи необходимо преодолеть это препятствие, поэтому робот отправляет запрос в облачный сервис о том, как это сделать. Если в базе нет информации о таком препятствии, то сервис взаимодействия публикует информацию о невозможности автоматического преодоления препятствия в интеллектуальное пространство. Получив соответствующее уведомление, пользователь принимает на себя управление роботом, в результате чего в интеллектуальном пространстве последовательно публикуются команды, которые необходимо выполнить, чтобы преодолеть данное препятствие. Сервис взаимодействия заносит эту последовательность команд и информацию о препятствии в базу шаблонов для использования в будущем.
После преодоления препятствия робот продолжает выполнять задачу и обнаруживает второе препятствие, похожее на первое. Так как информация о нем уже была в базе шаблонов препятствий, то робот преодолевает его без помощи пользователя.
Добравшись до пункта назначения и получив команду «Сделать фото», робот делает снимок местности и отправляет его сервису взаимодействия, который, в свою очередь, публикует его в интеллектуальном пространстве. Затем сервис обработки изображений получает информацию о новом снимке и обрабатывает его. Получив информацию о точке, сервис публикует ее в интеллектуальном пространстве, после чего данная информация отправляется пользователю.
ЗАКЛЮЧЕНИЕ
Описанный в статье подход к непрямому взаимодействию пользователей и роботов для совместного решения задач обеспечивает эффективное решение широкого спектра задач за счет непрямого взаимодействия не только роботов и пользователей, но и роботов между собой. Благодаря использованию онтологий зависимость данного подхода от производителей и программного обеспечения роботов и пользовательских устройств сведена к минимуму, необходима только поддержка возможности работы с онтологиями. Для оценки работоспособности и эффективности подхода был сконструирован прототип робота.
Дальнейшая разработка предполагает добавление дополнительных сервисов и оснащение робота дополнительными типами датчиков для расширения набора выполняемых задач и реализации дополнительных функций робота, таких как добавление камеры в функционал робота и разработка сервиса, обрабатывающего изображение и публикующего в интеллектуальное пространство характер местности, тип встреченного препятствия, наличие или отсутствие каких-либо заданных объектов в поле видимости. Такой сервис сделает управление роботом более простым и удобным, а использование робота - более эффективным. Кроме того, необходимо оценить эффективность совместного решения задач, для чего планируется сконструировать второй прототип робота.
БЛАГОДАРНОСТИ
Представленные результаты исследований являются частью проекта № 16-29-04349, финансируемого Российским фондом фундаментальных исследований, а также бюджетной темой № 0073-2014-0005.
СПИСОК ЛИТЕРАТУРЫ
1. Васильев А.В. Мобильные мини-роботы разведки: текущее состояние, характерные черты и общие тенденции развития // Известия ЮФУ. Технические науки. - 2010. - № 3 (104). -С. 119-124.
2. Васильев А.В. Реконфигурируемая транспортная платформа для малогабаритных мобильных роботов // Робототехника и техническая кибернетика. - 2014. - № 2 (3). - С. 67-71.
3. An improved compliant joint design of a modular robot for descending big obstacles / S.P. Teja, S. Harsha, A. Siravuru, S.V. Shah, K.M. Krishna // AIR'15 Proceedings of the 2015 Conference on Advances in Robotics. - Goa, India, 2015. - Art. 68. - doi: 10.1145/2783449.2783518.
4. Sekmen A., Challa P. Assessment of adaptive human-robot interactions // Knowledge-Based Systems. - 2013. - Vol. 42. - P. 49-59. - doi: 10.1016/j.knosys.2013.01.003.
5. Reaching high interactive levels with situated agents / S. Ibarra-Martínez, J.A. Castán-Rocha, J. Laria-Menchaca, J. Guzmán-Obando, E. Castán-Rocha // Ingeniería, Investigación y Tecnología. - 2013. - Vol. 14. - P. 37-42. - doi: 10.1016/S1405-7743(13)72223-6.
6. Hoshino S., SekiH. Multi-robot coordination for jams in congested systems // Knowledge-Based Systems. - 2013. - Vol. 61. - P. 808-820. - doi: 10.1016/j.robot.2013.04.011.
7. Li W., Shen W. Swarm behavior control of mobile multi-robots with wireless sensor networks // Journal of Network and Computer Applications. - 2011. - Vol. 34. - P. 1398-1407. -doi: 10.1016/j.jnca.2011.03.023.
8. Саяпин П.Л., Пак В.Г. Модуль поддержки обмена данными между роботами-поисковиками при групповом взаимодействии // Информатика и Кибернетика (ComCon-2016). - СПб., 2016. - С. 113-115.
9. Капустян С.Г., Усачев Л.Ж. Модель коллективного взаимодействия в задаче группового управления роботами в условиях противодействия // Известия ЮФУ. Технические науки. -2008. - № 12 (89). - С. 26-36.
10. Использование BML для взаимодействия группы роботов / Т. Ремерсман, А. Тидерко, У. Шаде, Ф. Шнайдер // Робототехника и техническая кибернетика. - 2014. - № 3 (4). -С. 48-52.
11. Проектирование взаимодействия человек-робот в составе единой команды космонавтов и автономных мобильных роботов на поверхности луны / А.А. Карпов, Б.И. Крючков, А. Л. Ронжин, В.М. Усов // Экстремальная робототехника. - 2016. - Т. 1, № 1. - С. 71-81.
12. Проталинский И.О., ЩербатовИ.А. Архитектура системы взаимодействия промышленных манипуляторов // Вестник Астраханского государственного технического университета. Серия: Управление, вычислительная техника и информатика. - 2009. - № 2. - С. 76-82.
13. Ломов А.А. Взаимодействие программного агента на уровне сессии с интеллектуальными пространствами // Ученые записки Петрозаводского государственного университета. -2013. - № 8 (137). - С. 118-121.
14. Smart-M3 information sharing platform / J. Honkola, H. Laine, R. Brown, O. Tyrkko // IEEE Symposium on Computers and Communications ISCC 2010. - Riccione, Italy, 2010. -P. 1041-1046.
15. Lego Mindstorms [Электронный ресурс]. - URL: https://www.lego.com/ru-ru/mind-storms/ (дата обращения: 31.03.2017).
Петров Михаил Владимирович, магистрант Университета ИТМО. Основное направление научных исследований - управление знаниями. Имеет 2 публикации. E-mail: 161307@niuitmo.ru
Кашевник Алексей Михайлович, кандидат технических наук, старший научный сотрудник СПИИРАН. Основные направления научных исследований: управление знаниями, облачные среды, человеко-машинное взаимодействие, робототехника, профилирование, онтологии, интеллектуальные пространства. Имеет более 150 научных публикаций. E-mail: alexey@iias.spb.su
An ontology-oriented approach to indirect interaction between users and mobile robots for joint task solving
M.P. PETROV1, A.M. KASHEVNIK2
1 ITMO University, 49 Kronverksky Prospekt, Saint Petersburg, 197101, Russian Federation, undergraduate student. Е-mail: 161307@niuitmo.ru
SPIIRAS, 39 14 Line, Saint Petersburg, 199178, Russian Federation, Senior research associate. Е-mail: alexey@iias.spb.su
This paper describes an ontology-based approach to interaction between users and mobile robots for joint task solving. The use of ontologies makes it possible to support semantic interoperability between robots and users. The ontologies store knowledge about the tasks to be performed, knowledge about the functionality of the robots and the current situation factors such as a robot location and its being busy. On the basis of this knowledge, robots and users define a task to perform and get the current status of other robots and users. Ontologies are published in a smart space which allows indirect interaction between users and robots. Users and robots form and publish the tasks in terms of ontology when they need additional resources for performing these tasks. Robots define a task to perform, unite in a coalition for performing and distribute subtasks within this coalition. Through the use of the publish / subscribe mechanism robots immediately respond to events and the emergence of new tasks, and users immediately receive the most urgent information. The paper presents a conceptual model of the approach to indirect interaction between users and mobile robots for joint problem solving, In addition, an ontology model for knowledge management is proposed. As an example of the application of the proposed approach the scenario of a robot moving forward and overcoming obstacles is described.
Keywords: mobile robots, ontology, smart spaces, knowledge management, indirect interaction, robot interaction, publish / subscribe mechanism,semantic interoperability, robot coalition
DOI: 10.17212/1814-1196-2017-1-133-146
REFERENCES
1. Vasil'ev A.V. Mobil'nye mini-roboty razvedki: tekushchee sostoyanie, kharakternye cherty i obshchie tendentsii razvitiya [Mobile scout mini-robots: current state, typical features and general progress trends]. Izvestiya Yuzhnogo federal'nogo universiteta. Tekhnicheskie nauki - Izvestiya Southem Federal University. Engineering sciences, 2010, vol. 3 (104), pp. 119-124.
2. Vasil'ev A.V. Rekonfiguriruemaya transportnaya platforma dlya malogabaritnykh mo-bil'nykh robotov [Reconfigurable transport platform for small mobile robots]. Robototekhnika i tekhnicheskaya kibernetika - Robotics and Technical Cybernetics, 2014, vol. 2 (3), pp. 67-71.
* Received 02 October 2016.
3. Teja S.P., Harsha S., Siravuru A., Shah S.V., Krishna K.M. An improved compliant joint design of a modular robot for descending big obstacles. AIR'15 Proceedings of the 2015 Conference on Advances in Robotics, Goa, India, 2015, art. 68. doi: 10.1145/2783449.2783518.
4. Sekmen A., Challa P. Assessment of adaptive human-robot interactions. Knowledge-Based Systems, 2013, vol. 42, pp. 49-59. doi: 10.1016/j.knosys.2013.01.003
5. Ibarra-Martínez S., Castán-Rocha J.A., Laria-Menchaca J., Guzmán-Obando J., Castán-Ro-cha E. Reaching high interactive levels with situated agents. Ingeniería, Investigación y Tecnología, 2013, vol. 14, pp. 37-42. doi: 10.1016/S1405-7743(13)72223-6.
6. Hoshino S., Seki H. Multi-robot coordination for jams in congested systems. Knowledge-Based Systems, 2013, vol. 61, pp. 808-820. doi: 10.1016/j.robot.2013.04.011.
7. Li W., Shen W. Swarm behavior control of mobile multi-robots with wireless sensor networks. Journal of Network and Computer Applications, 2011, vol. 34, pp. 1398-1407. doi: 10.1016/j.jnca.2011.03.023
8. Sayapin P.L., Pak V.G. [Support module of data sharing between the searchers robots for group interaction]. Informatika i Kibernetika (ComCon-2016) [Computing and Control (ComCon-2016)]. St. Petersburg, 2016, pp. 113-115. (In Russian)
9. Kapustyan S.G., Usachev L.Zh. Model' kollektivnogo vzaimodeistviya v zadache gruppo-vogo upravleniya robotami v usloviyakh protivodeistviya [Model of collective interaction in the task of group control by robots in conditions of counteraction]. Izvestiya Yuzhnogo federal'nogo universi-teta. Tekhnicheskie nauki - Izvestiya Southem Federal University. Engineering sciences, 2008, vol. 12 (89), pp. 26-36.
10. Remmersmann T., Tiderko A., Schade U., Schneider F. Ispol'zovanie BML dlya vzaimodeistviya gruppy robotov [Interacting with multi-robot systems using BML]. Robototekhnika i tekhnicheskaya kibernetika - Robotics and Technical Cybernetics, 2014, vol. 3 (4), pp. 48-52.
11. Karpov A.A., Kryuchkov B.I., Ronzhin A.L., Usov V.M. Proektirovanie vzaimodeistviya chelovek-robot v sostave edinoi komandy kosmonavtov i avtonomnykh mobil'nykh robotov na pov-erkhnosti luny [Designing human-robot interaction in a united team of cosmonauts and autonomous mobile robots on the lunar surface]. Ekstremal'naya robototekhnika - Extreme robotics, 2016, vol. 1, no. 1, pp. 71-81.
12. Protalinskii I.O., Shcherbatov I.A. Arkhitektura sistemy vzaimodeistviya promyshlennykh manipulyatorov [Architecture of system of interaction of industrial manipulators]. Vestnik Astra-khanskogo gosudarstvennogo tekhnicheskogo universiteta. Seriya: Upravlenie, vychislitel'naya tekhnika i informatika - Vestnik of Astrakhan State Technical University. Series: Management, Computer Science and Informatics, 2009, vol. 2, pp. 76-82.
13. Lomov A.A. Vzaimodeistvie programmnogo agenta na urovne sessii s intellektual'nymi prostranstvami [Agent's session based interaction with smart space]. Uchenye zapiski Petroza-vodskogo Gosudarstvennogo Universiteta - Proceedings of Petrozavodsk State University, 2013, vol. 8 (137), pp. 118-121.
14. Honkola J., Laine H., Brown R., Tyrkko O. Smart-M3 information sharing platform. IEEE Symposium on Computers and Communications ISCC 2010, Riccione, Italy, 2010, pp. 1041-1046.
15. Lego Mindstorms. (In Russian) Available at: https://www.lego.com/ru-ru/mindstorms/ (accessed 31.03.2017).
ISSN 1814-1196, http://journals.nstu.ru/vestnik Science Bulletin of the NSTU Vol. 66, No 1, 2017, pp. 133-146