Научная статья на тему 'МОДЕЛИРОВАНИЕ ПРОЦЕССА ПОСТРОЕНИЯ И СЛИЯНИЯ КАРТ МЕСТНОСТИ ГРУППОЙ АВТОНОМНЫХ РОБОТОВ-АГЕНТОВ'

МОДЕЛИРОВАНИЕ ПРОЦЕССА ПОСТРОЕНИЯ И СЛИЯНИЯ КАРТ МЕСТНОСТИ ГРУППОЙ АВТОНОМНЫХ РОБОТОВ-АГЕНТОВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
223
36
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РОБОТЫ-АГЕНТЫ / ЛОКАЛИЗАЦИЯ И КАРТОГРАФИРОВАНИЕ / ЛИДАР / СЛИЯНИЕ КАРТ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Касаткин Никита Евгеньевич, Приходько Татьяна Александровна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Касаткин Никита Евгеньевич, Приходько Татьяна Александровна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SIMULATION OF THE PROCESS OF BUILDING AND MERGING TERRAIN MAPS BY A GROUP OF AUTONOMOUS ROBOT AGENTS

he article discusses one of the problems of multi-agent systems, namely the integration of obstacle grid maps created by various robots exploring different parts of the same environment. Simultaneous localization and Mapping (SLAM) is a well-known field of research that attracts considerable attention because of its enormous practical importance. However, most research focuses on the problem of building one common map either based on data coming from one robot or from several autonomous robot agents. In many situations, this approach is impractical. In addition to the problems arising from the dimension of the compiled map increase, when robots explore large spaces, communication between agents can be available only at rare moments of their convergence in space. The paper presents a fast and accurate algorithm for combining several maps built by agent robots forming a self-organizing episodic network, and a variant of its software implementation. The algorithm is used to combine maps presented as an obstacle map. It is deterministic, so its results are repeatable, and the calculation time is predictable. The algorithm calculates several functions describing the characteristic features of the maps to be combined, and builds a combined map based on them. Despite the fact that the algorithm is deterministic, it can be used in a probabilistic structure.

Текст научной работы на тему «МОДЕЛИРОВАНИЕ ПРОЦЕССА ПОСТРОЕНИЯ И СЛИЯНИЯ КАРТ МЕСТНОСТИ ГРУППОЙ АВТОНОМНЫХ РОБОТОВ-АГЕНТОВ»

Моделирование процесса построения и слияния карт местности группой автономных роботов-агентов

Н.Е. Касаткин, Т.А. Приходько

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

картографирование (SLAM) - хорошо

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

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

Ключевые слова — роботы-агенты, локализация и картографирование, лидар, слияние карт.

I. Введение

Преимущества роевого SLAM в том, что он может обеспечить отказоустойчивость, поскольку не имеет единой точки отказа - единого центра управления, а также может справиться с неточностью измерений благодаря их избыточности. Таким образом, можно утверждать, что рой роботов наиболее полезен в тех случаях, когда основным ограничением является время или стоимость, а не высокая точность. Следовательно, они, очевидно, лучше всего подходят для создания грубых абстрактных карт, таких как топологические или простые семантические карты, а

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

Для реализации роевого SLAM нужно ответить на следующие вопросы:

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

- Как роботы будут получать и использовать информацию для составления карт и навигации по ним (задача картографирования и слияния карт).

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

Целью данной работы является нахождение ответов на поставленные вопросы.

II. задача позиционирования

Основополагающим фактором успешной навигации является позиционирование. Проблему позиционирования можно решить разными способами.

A. GPS-позиционирование

Система глобального позиционирования (GPS) работает с помощью околоземный спутников и основана на возможности получить геолокационную информацию от четырёх или более из них. Главным преимуществом системы является простота приёма данных сигналов, приёмник легко внедрить в любое устройство и для связи даже не нужно находиться в сети Интернет [1]. Однако для работы этой системы необходим прямой контакт с спутниками, что является самым серьёзным ограничением, так как высокие здания, толстые стены, особенности рельефа мешают получать сигналы от спутника. Точность

данного метода не позволяет использовать его в качестве гарантии надёжного позиционирования при навигации внутри. Поэтому для позиционирования используют другие и способы.

B. Позиционирование по сотовым сетям

Позиционирование по сотовым сетям позволяет определить свою позицию в пределах сотового покрытия. Процесс позиционирования достаточно прост, устройству с сим-картой известны технические параметры ближайших вышек, и исходя из них и базы данных о GSM-вышках вычисляется положение устройства. Однако точность такого позиционирования сравнима с GPS, и иногда может достигать сотен метров, кроме того в труднопроходимых местах вышки могут быть недоступны.

C. Методы оптического позиционирования

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

D. Методы микролокации

Методы микролокации на основе Wi-Fi/Bluetooth позволяют определять позицию агента исходя из качества входящего сигнала разных Wi-Fi и Bluetooth передатчиков. Агенту необходимо иметь датчики, позволяющие принимать информацию об уровне сигнала. Также, важным условием такого позиционирования является насыщенность карты сетями, однако это условие нарушает правило оптимального покрытия и при должном количестве сетей результаты позиционирования могут ухудшаться из-за загрузки каналов. В неизменяемой сетевой среде данный метод может гарантировать точность в метрах, однако при добавлении или удалении сетей без занесения информации в базу и передачи агенту к измерениям добавляется погрешность [1].

E. Позиционирование при помощи технологии лидар (LiDAR)

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

работать в автоматическом режиме, то есть без ручного управления извне.

Позиционирование при помощи технологии лидар (LiDAR) позволяет определить расстояние от агента до препятствий используя лазер в ИК диапазоне. Принцип работы основан на свойства света, а именно скорости и способности отражаться от объектов [2]. Устройство посылает множество лучей и ожидает принять их, обратно сравнив время отправки и получения для определения расстояния. На основании этих данных можно уточнять данные инерциального позиционирования, что помогает уменьшить погрешность.

III. Задача навигации

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

Исходя из постановки задачи данной работы и выделенных для её решения подзадач нужно добиться того, чтобы агент умел определять свою позицию в неизвестной среде и при этой перемещаться по ней, строя карту для дальнейшего использования [3]. Для реализации такого поведения необходимо применить навигацию по алгоритмам. Навигация по алгоритмам — это ориентация в пространстве без внешнего вмешательства, которая основывается на принятии решений благодаря заранее прописанным алгоритмам. Алгоритм исходит из предположения о недостатке данных о среде и о необходимости получения данных с помощью своих датчиков. Для решения данной задачи хорошо подходит SLAM [4].

SLAM - метод, используемый в автономных мобильных системах с целью построения и/или обновления карты с одновременным контролем текущего положения агента и проделанного пути. Реализации данного метода различаются в зависимости от среды выполнения алгоритма и возможностей агента по сканированию среды и способах перемещения и используются в разных сферах деятельности: беспилотные автомобили, летательные аппараты, планетоходы, спасательные операции и даже при операциях внутри человеческого тела [5].

Необходимость использования данного метода обусловлена отсутствием точной информации о среде. Даже идеальная карта помещения остаётся актуальной только на момент её создания, дальше трудно предугадать степень достоверности предоставляемой информации. К тому же есть процессы, в которых возникает необходимость исследования территории без участия человека. Сложность данного процесса с технической точки зрения заключается в шумной среде и использовании оборудования низкой точности [3].

Данные с датчиков

Внешняя Сбор данных об

среда окружающей среде

J

Обработка данных

Отслеживание объектов,

построение моделей.

локализация

\

Выполнение действия Планирование

Передвижение. поворот Построение пути к цели

Рис. 1. Схема работы алгоритма типа SLAM Метод одновременной навигации и построения карты позволяет связать между собой два независимых процесса в непрерывный цикл, причём результаты одной операции необходимы для выполнения другой [6]. Схема работы данного метода отражена на рисунке 1.

A. Математическая постановка SLAM

Пусть и1:Т - это последовательность команд для управления роботом, которые непосредственно передаются роботу для исполнения, например, команды перемещения. Определим данную последовательность с помощью формулы (1).

uVT = [щ, и2,.., ит}

(1)

А г1:Т - это последовательность полученных роботом данных об окружающей среде, это могут быть данные с любых датчиков, например камеры или лидара. Определим данную последовательность с помощью формулы (2).

Z1:T = [z1, Z2,. ., ZT}

(2)

Обозначим с помощью х позицию робота в окружающей среде и определим её формулой (3)

X = (Х1, у0 в1) (3)

где

х,у, - точки в системе координат OXY; в, - направление положения робота.

Последовательности (1) и (2) являются входными данными для работы алгоритма, это то, исходя из чего нужно решить поставленную задачу. Для решения задачи необходимо построить карту т и сохранить путь, пройденный роботом для её построения, обозначим его х0:Т и определим формулой (4)

):Т = [х0, Х1,. ., хт}

(4)

где xi - это позиция робота, определяемая формулой (3).

При работе в реальной среде невозможно достоверно сказать, что при выполнении команды щ, которая перевела робота в состояние х) и мы абсолютно точно знаем, что х^, которое знает робот и

ситуации в общем случае совпадают. То есть, если робот находился в позиции х0 = {0,0,0} и выполнил команду и1 «двигаться вперёд 10 сантиметров», то из-за неточности оборудования в окружающей среде робот может переместиться, например на 9.98 сантиметра. В таком случае в данные г1:Т и х0.т содержат неточности, и с течением времени накапливают ошибку, поэтому для устойчивости системы обычно работают с вероятностными величинами. То есть в каждый момент времени нельзя доверять данным агента, агент должен работать со своими данными как с данными, содержащими ошибку. На рисунке 2 показано отличие точного представления от вероятностного.

Рис. 2. Различие представлений позиций робота

Вероятностный подход к расчётам необходим для корректной работы системы, чтобы принимать в расчёт вероятность ошибок оборудования [6]. Исходя из установленных определений можно сказать, что главная задача SLAM-алгоритма - это рассчитать вероятностную величину распределения р, представленную формулой (5)

р(хо.т,m \zVT,щ:Т)

(5)

где

х0: т - путь робота в среде; т - составленная карта; z1 : Т - данные с оборудования; и1:Т - команды управления.

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

IV. Задача картографирования и слияния

карт

А. Реализация SLAM-сисmемы

Для реализации системы навигации посредством сотрудничества самоорганизующихся роботов были сформулированы следующие задачи.

1) Реализовать программу для создания карты с препятствиями для роботов с возможностью указания степени заполнения.

2) Реализовать систему из автономных роботов, обладающих навыками локализации и построения карты.

3) Реализовать алгоритм объединения локальных карт роботов.

4) Реализовать алгоритм навигации из точки в точку.

Каждая из этих задач может быть решена в изоляции от других, однако входными данными для них являются результаты работы других задач [7].

Для хранения данных о внешней для робота среде была использована сетка занятости (англ. Occupancy grid). Сетка занятости относится к семейству компьютерных алгоритмов в вероятностной робототехнике, и решает проблему создания карт из зашумленных и неопределенных данных измерений датчиков. Карта окружающей среды представляется в виде равномерно распределенного конечного поля двоичных случайных величин, каждая из которых представляет вероятность наличия препятствия в данном месте окружающей среды.

По мере изучения окружающей среды с помощью внешних датчиков робот определяет вероятность заполнения каждой из клеток сетки занятости. Значение в каждой клетке может содержать значение из множества [-1,0,1], что отображается на множество [свободно, неизвестно, занято]. Сгенерированные препятствия с роботом показаны на рис.3. Чёрным цветом обозначено препятствие, серым свободное пространство, белым пространство, куда роботы не смогут попасть.

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

Экосистема ROS [6] предоставляет инструмент для детальной отладки исполняемых в этой среде приложений. RViz позволяет считывать данные с узлов системы ROS и визуализировать их в 3D пространстве по слоям, дополнительно позволяя изменять свойства отображения. Таким образом можно хранить траекторию движения робота, его карту и преобразовывать эти данные в понятное для человека изображение. Так как узлы ROS работают в режимах публикации и подписки, с помощью RViz можно посылать сигналы другим узлам, и тем самым влиять на процесс выполнения приложения.

На рисунке 3 изображён процесс работы системы, слева визуализация среды и позиции агента в генераторе карт, справа визуализация полученных агентом данных об окружающей среде в RViz.

Рис.3. Визуализация процесса локализации и картирования в системе ROS

Процесс выполнения локализации и картирования не прекращается пока агент полностью не получит информацию об окружающей среде. Процесс может занимать достаточно длительное время. Например, для среды размером 64x64, изображённой на рисунке 3, агенту понадобилось около четырёх минут для полного исследования местности.

B. Подход к объединению карт

Одной из основных проблем многоагентных систем является интеграция информации, собираемой различными агентами, работающими в разных частях окружающей среды. Интеграция информации может происходить на разных уровнях, но для преодоления возможных узких мест в коммуникации обещающим подходом является объединение информации высокого уровня, то есть уже обработанной, извлеченной из необработанных данных низкого уровня, собранных датчиками [8].

Фактически, вместо того чтобы выдавать одно решение, он может выдавать набор взвешенных возможных решений [9]. Поэтому, когда возникают неясности, можно идентифицировать и отслеживать множественные гипотезы до тех пор, пока они не будут решены.

Пусть сетка занятости M имеет r строк и c столбцов. Каждая ячейка в M может быть представлена её пространственным

местоположением, которое можно считать её центром. Пространственное расположение ячейки M(i, j) обозначается как ,у1,7'). Задача объединения карт на вход принимает две карты Мх и М2, и возвращает на выходе преобразование Т, такое, что две карты пересекаются в некоторой области. Таким образом одно из начальных требований алгоритма - это наличие общих частей на картах Мъ М2.

Преобразование Т представляет собой комбинацию поворота карты на угол и

перемещение карты вдоль осей х и у на величины Дх и Ду соответственно. T может быть удобно представлено в виде формулы (6) [10]

cos ^ —sin'ф Ах Т(Лх, Ay, 4>) = [ sin-ф cos-ф Ay] 0 0 1

(6)

После применения трансформации Т к карте М получается новая объединённая карта М' = ТМ. Могут возникать ситуации, когда для пары М^^, М2 будет существовать целый набор различных трансформаций Т1,..,Тк,к Е N. В таком случае необходимо ранжировать результаты применения трансформаций по некоторому критерию.

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

Тогда индекс принятия объединения карт будет считаться по формуле (7)

u¡(Mí, М2) =

0, если адг(М1, М2) = 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

адг(М±,М2)

\agr(M1,M2) + dís(M1,M2)

, если agr(M1, М2) ± 0

(7)

Если Т1 и Т2 это две возможных трансформации для наложения карт Мг, М2, то Т1 будет считаться более приемлемым, если ^(М^Т1М2) > ш(М1,Т2М2), иначе Т2.

Таким образом, задача объединения двух карт M1t М2 может быть сформулирована как поиск преобразования Т такого, что значение М1tТМ2) максимально [10].

Исходя из определения о> может принимать значения от 0 до 1. Крайние значения достигаются, когда карты не совпадают ни в одной точке, тогда ш = 0 и когда карты совпадают полностью ш = 1. В остальных же ситуациях значения о> будет находиться в (0,1). Основываясь на исследовании, значение ш < 0.9 указывает на то, что две карты перекрывают друг друга недостаточно хорошо и данное преобразование Т лучше не рассматривать.

Получение трансформации Т происходит в два шага, сначала определяется угол поворота и потом рассчитываются значения смещения Ах и Ау.

Поворот карты

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

Помимо традиционных декартовых координат, линии могут быть представлены и обнаружены с использованием полярного представления, представленного в формуле (8) [10]

х cos в + у sin в = р (8)

где

р - это расстояние линии от начала координат;

в - угол между осью х и нормалью от линии к началу координат. (6)

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

преобразования Хафа (ДПХ). ДПХ дискретизирует область для р и в, так что результат преобразования может быть представлен матрицей с р5 строк и в5 столбцов. Кроме того, также необходимо ограничить диапазон значений р размером изображения, в то время как в естественным образом ограничено диапазоном [0, 2п). Результат преобразования Хафа для сетки занятости М будем обозначать НТМ. Спектром Хафа будем называть формулу вида (9).

HSM (к) = Y!¡S=1HTM (i, к)2, i <k<es

(9)

Спектр Хафа указывает, какие направления линий обнаруженных в М встречаются чаще всего. На рисунке 4 показана карта и соответствующий ей спектр Хафа.

ESO 300 SS0

Рис.4. Двоичное изображение сетки занятости слева и нормализированный спектр Хафа по представленной сетке справа

Спектры Хафа являются одномерными сигналами, поэтому для определения сходства двух спектром можно использовать взаимокорреляционную функцию [9]. Поскольку спектры Хафа определяются в параметризированной системе координат в полярном представлении, для двух спектров необходимо вычислить их взаимную корреляцию с учетом периодичности 2 п. Такую корреляцию обозначим С СМ±М2 (к) и будем рассчитывать по формуле (10).

ССМ1М2(к) = Т^1НТМ1 № ТМ2 Ц + к),1 < к <в5 (10)

Взаимная корреляция между спектрами Хафа двух карт даёт информацию о том, как можно повернуть одну карту относительно другой для того, чтобы получить наложение. Локальные максимумы в полученной корреляции спектров являются значения угла ^ в трансформации Т. На рисунке 5 показаны два спектра Хафа и их взаимная корреляция.

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

п

150 200 8

Рис.5. Спектры Хафа и их график взаимной корреляции

Перемещение карты

Зная возможные значения можно достаточно просто найти значения для перемещения Ах, йу. Обозначим карту, полученную вращением М2 как М3 = Т(0,0,4>)М2. Тогда для получения значений перемещения необходимо определить ещё две функции (11) и (12).

SX,

sy,

'0) = fa

.(0 = ft

Yli=1 M(i,j), если 1 <j<c в остальных случаях

1 M(i,j), если 1 <i<r в остальных случаях

(11) (12)

Эти функции представляют собой проекции изображений вдоль осей и . Тогда, определив значения БХМ± и БХМз значения А х, А у могут быть определены как глобальные максимумы функций (13) и (14).

(г) = 5Хм± (к + т)БХм3 (к) (13)

ССУм±м3 (т) = П^Жм^к + т)Б¥м3 (к) (14)

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

8) Рассчитать М3 как Т(0,0, ^)М2.

9) Рассчитать БХМз по формуле (10).

10) Рассчитать БУМз по формуле (11).

11) Рассчитать Л1Х как максимум функции (12).

12) Рассчитать Л1у как максимум функции (13).

13) Сформировать трансформацию Т1 = (Л1Х, А1у, гр^) по формуле (6).

14) Рассчитать Ш1 = (М1, Т1М2) по формуле (7).

15) Если I + 1 < п, то увеличить I на 1 и перейти к шагу 8, иначе к шагу 16.

16) Найти максимум среди и в качестве трансформации для карт использовать Ть.

Таким образом можно получить несколько объединённых карт с разной степенью доверия. Данный алгоритм позволяет объединить две карты, однако нет никаких ограничений на последовательное использование этого алгоритма с разными картами. То есть для объединения трёх карт между собой можно сначала объединить первые две, а затем полученную - с третьей.

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

Рис. 5. Пример объединения локальных карт агентов

Алгоритм

Для начала объединения карт необходимо подготовить карты М1, М2, чтобы они соответствовали формату сетки занятости. Далее можно получить взвешенные возможные варианты объединения карт с помощью представленного алгоритма.

1) Рассчитать значения НБМ1 по формуле (8).

2) Рассчитать значения НБМ2 по формуле (8).

3) Рассчитать значения ССМ1М2 по формуле (9).

4) Найти значения 1,.., п как локальные максимумы ССМ1М2.

5) Рассчитать значения БХМ1 по формуле (10).

6) Рассчитать значения БУМ1 по формуле (11).

7) Установить I = 0.

V. ЗАКЛЮЧЕНИЕ

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

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

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

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

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

[1] Overview of Indoor Navigation Techniques — Текст : электронный // Социальная сеть для учёных: официальный сайт. — 2020. — URL: https://www.researchgate.net/publication/347794880_0verview_of _Indoor_Navigation_Techniques (дата обращения: 10.04.2022).

[2] Голован А.А., Гришин А.А., Жихарев С.Д., Ленский А.В. Алгоритмы решения задачи навигации мобильных роботов М.: Институт механики МГУ им. М.В. Ломоносова. Препринт №57-99, 1999. - 54 стр.

[3] Learning indoor robot navigation using visual and sensorimotor map information — Текст : электронный // Социальная сеть для учёных: официальный сайт. — 2013. — URL: https://www.academia.edu/14337527/Learning_indoor_robot _navigation_using_visual_and_sensorimotor_map_information (дата обращения: 22.04.2022).

[4] Hector Open Source Modules for Autonomous Mapping and Navigation with Rescue Robots — Текст : электронный // Социальная сеть для учёных: официальный сайт. — 2013. — URL: https://www.researchgate.net/publication/300449716_Hector _Open_Source_Modules_for_Autonomous_Mapping_and_Navigati on_with_Rescue_Robots (дата обращения: 05.05.2022).

[5] Design and evaluation of UAV swarm command and control strategies — Текст : электронный // Цифровая библиотека: официальный сайт. — 2013. — URL: https://dl.acm.org/doi/10.5555/2499592.2499599 (дата обращения: 18.04.2022).

[6] Qian, J. The Design and Development of an Omni-Directional Mobile Robot Oriented to an Intelligent Manufacturing System // MDPI AG, Sensors — ISSN 1424-8220. — Текст : электронный. 2017, №17 — 9. — URL: https://www.mdpi.com/1424-8220/17/9/2073

[7] Касаткин, Н.Е. Роевые алгоритмы одновременной локализации и построения карты Н. Е. Касаткин, Т.А. Приходько. Сборник «Прикладная математика: современные проблемы математики, информатики и моделирования». Материалы всероссийской научно-практической конференции. КубГУ. - 2022, выпуск 4. — Текст : непосредственный.

[1] MARTINS, Joao Alexandre Simoes - MRSLAM : multi-robot simultaneous localization and mapping. Coimbra : [s.n.], 2013. Dissertajao de Mestrado.

[2] Fast and accurate map merging for multi-robot systems — Текст : электронный // Социальная сеть для учёных: официальный сайт. — 2008. — URL: https://www.researchgate.net/publication/220474324_Fast_and_ac curate_map_merging_for_multi-robot_systems.

[3] Yu, S. A Review on Map-Merging Methods for Typical Map Types in Multiple-Ground-Robot SLAM Solutions // MDPI AG, Sensors — ISSN 1424-8220. — Текст : электронный. 2020, №>20 — 23. — URL: https://www.mdpi.com/1424-8220/20/23/6988.

Сведения об авторах:

Приходько Татьяна Александровна, кандидат технических наук, доцент кафедры вычислительных технологий факультета компьютерных технологий и прикладной математики. Кубанский государственный университет г. Краснодар, Россия (350040. Россия, г. Краснодар, ул. Ставропольская, д.149.) pr.tatyana@gmail.com (+7)967-314-55-68

ORCID: https://orcid.org/0000-0001-5137-2064

Касаткин Никита Евгеньевич, магистрант кафедры вычислительных технологий факультета компьютерных технологий и прикладной математики,

Кубанский государственный университет г. Краснодар, Россия (350040. Россия, г. Краснодар, ул. Ставропольская, д.149.) ORCID: ORCHID: 0000-0001-5137-2064 bl4meme@gmail.com

Все авторы прочитали и одобрили окончательный вариант рукописи.

Simulation of the process of building and merging terrain maps by a group of autonomous

robot agents

N.E. Kasatkin, T.A. Prikhodko

Abstract - the article discusses one of the problems of multi-agent systems, namely the integration of obstacle grid maps created by various robots exploring different parts of the same environment. Simultaneous localization and Mapping (SLAM) is a well-known field of research that attracts considerable attention because of its enormous practical importance. However, most research focuses on the problem of building one common map either based on data coming from one robot or from several autonomous robot agents. In many situations, this approach is impractical. In addition to the problems arising from the dimension of the compiled map increase, when robots explore large spaces, communication between agents can be available only at rare moments of their convergence in space.

The paper presents a fast and accurate algorithm for combining several maps built by agent robots forming a self-organizing episodic network, and a variant of its software implementation. The algorithm is used to combine maps presented as an obstacle map. It is deterministic, so its results are repeatable, and the calculation time is predictable. The algorithm calculates several functions describing the characteristic features of the maps to be combined, and builds a combined map based on them. Despite the fact that the algorithm is deterministic, it can be used in a probabilistic structure.

Key words - agent robots, localization and mapping, LIDAR, maps merging.

REFERENCES

[1] Overview of Indoor Navigation Techniques — Text: electronic // Social Network for Scientists: official website. — 2020. — URL: https://www.researchgate.net/publication/347794880_0verview_of_l ndoor_Navigation_Techniques. (In Russian)

[2] Golovan A.A., Grishin A.A., Zhikharev S.D., Lensky A.V. Algorithms for solving the problem of navigation of mobile robots [1] Overview of Indoor Navigation Techniques — Text: electronic // Social Network for Scientists: official website. — 2020. — URL: https://www.researchgate.net/publication/347794880_0verview_of_I ndoor_Navigation_Techniques Preprint No. 57-99, 1999. - 54 p. (In Russian)

[3] Learning indoor robot navigation using visual and sensorimotor map information — Text: electronic // Social Network for Scientists: official website. — 2013. — URL: https://www.academia.edu/14337527/Learning_indoor_robot_ navigation_using_visual_and_sensorimotor_map_information.

[4] Hector Open Source Modules for Autonomous Mapping and Navigation with Rescue Robots — ext: electronic // Social Network for Scientists: official website.—2013. —

URL: https://www.researchgate.net/publication/

300449716_Hector_0pen_Source_Modules_for_Autonomous_Mapping _and_Navigation_with_Rescue_Robots. [5] Design and evaluation of UAV swarm command and control strategies — Text : electronic // Digital Library: official website.— 2013. URL: https://dl.acm.org/doi/10.5555/2499592.2499599

[6] Qian, J. The Design and Development of an Omni-Directional Mobile Robot Oriented to an Intelligent Manufacturing System // MDPI AG, Sensors — ISSN 1424-8220. — Text : electronic. 2017, №17 — 9. — URL: https://www.mdpi.com/1424-8220/17/9/2073

[7] Kasatkin, N.E. Swarm algorithms for simultaneous localization and map construction N. E. Kasatkin, T.A. Prikhodko. Collection "Applied Mathematics: modern problems of mathematics, computer science and modeling". Materials of the All-Russian scientific and practical conference. KubGU. - 2022, issue 4. (In Russian)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

[8] MARTINS, Joao Alexandre Simöes - MRSLAM : multi-robot simultaneous localization and mapping. Coimbra : [s.n.], 2013. Dissertajäo de Mestrado.

[9] Fast and accurate map merging for multi-robot systems — Text: electronic // Social Network for Scientists: official website. — 2008. — URL: https://www.researchgate.net/publication/220474324_Fast_and_acc urate_map_merging_for_multi-robot_systems.

[10] Yu, S. A Review on Map-Merging Methods for Typical Map Types in Multiple-Ground-Robot SLAM Solutions // MDPI AG, Sensors — ISSN 1424-8220. — Text: electronic. 2020, №20 — 23. — URL: https://www.mdpi.com/1424-8220/20/23/6988

Information about the Authors:

Tatyana A. Prikhodko, Candidate of Science (Techniques), associate

Professor of the Department of computing technologies, Faculty of

Computer technologies and Applied Mathematics.

Kuban state University Krasnodar, Russia

(350040. 149, Stavropol str., Krasnodar, Russia.)

pr.tatyana@gmail .com (+7)967-314-55-68

ORCID: https://orcid.org/0000-0001-5137-2064

Nikita E. Kasatkin, undergraduate student of the Department of computing technologies, Faculty of Computer technologies and Applied Mathematics, Kuban state University Krasnodar, Russia (350040. 149, Stavropol str., Krasnodar, Russia.) ORCHID: https://orcid.org/ 0000-0002-1796-0863 bl4meme@gmail. com

All authors read and approved the final version manuscripts.

i Надоели баннеры? Вы всегда можете отключить рекламу.