Localization is the challenge of determining the robot's pose in a mapped environment. This is done by implementing a probabilistic algorithm to filter noisy sensor measurements and track the robot's position and orientation. This paper focuses on localizing a robot in a known mapped environment using Adaptive Monte Carlo Localization or Particle Filters method and send it to a goal state. ROS, Gazebo and RViz were used as the tools of the trade to simulate the environment and programming two robots for performing localization.
ID статьи : 2501.01153Название : Robot localization in a mapped environment using Adaptive Monte Carlo algorithmАвтор : Sagarnil DasКатегория : cs.RO (Робототехника)Дата публикации : 2 января 2025 г.Ссылка на статью : https://arxiv.org/abs/2501.01153 В данной работе исследуются проблемы локализации робота в среде с известной картой путём реализации вероятностного алгоритма для фильтрации шумных измерений датчиков и отслеживания положения и ориентации робота. Работа сосредоточена на использовании адаптивной локализации Монте-Карло (AMCL) или метода фильтрации частиц для локализации робота в картографированной среде и его навигации в целевое состояние. В качестве основных инструментов используются ROS, Gazebo и RViz для моделирования среды и программирования двух роботов для выполнения задач локализации.
Локализация робота является центральной проблемой мобильной робототехники, целью которой является определение позы (положения и ориентации) робота в известной среде. Без точной информации о локализации робот не может принимать эффективные решения и предпринимать разумные действия.
Работа классифицирует задачи локализации на три категории:
Локальная локализация (Local Localization) : робот знает начальную позу и должен оценить текущую позу во время движенияГлобальная локализация (Global Localization) : начальная поза робота неизвестна, необходимо определить позу относительно истинной картыПроблема похищенного робота (Kidnapped Robot Problem) : наиболее сложная задача, когда робот может быть перемещён в любую точку карты в любой момент времениСуществующие алгоритмы локализации имеют ограничения:
Расширенный фильтр Калмана (EKF) предполагает линейное гауссово распределение, что ограничивает его применение в нелинейных реальных средах Традиционная локализация Монте-Карло, хотя и может обрабатывать негауссовы распределения, имеет фиксированные вычислительные затраты Требуется метод локализации, который может динамически адаптировать вычислительную сложность Реализация системы локализации робота на основе AMCL : построена полная система локализации и навигации робота в среде ROSПроектирование и сравнение двух моделей роботов : UdacityBot (базовая модель) и SagarBot (пользовательская модель)Детальный анализ настройки параметров : систематический анализ влияния параметров AMCL и move_base на производительность локализацииОценка и анализ производительности : проверка влияния различных конфигураций робота на эффективность локализации через моделированиеВ среде с известной картой робот должен:
Входные данные : измерения датчиков (лидар, одометрия), информация о картеВыходные данные : точная оценка позы робота на картеОграничения : требования реального времени, ограничения вычислительных ресурсовAMCL использует частицы для представления возможных гипотез о положении робота, каждая частица содержит:
координаты x-y положения вектор ориентации значение веса (представляющее достоверность гипотезы) Algorithm 1 MCL algorithm
1: procedure MCL(xt−1, ut, zt)
2: Xt ← ϕ
3: for m=1 to M loop:
4: x[m]t ← MotionUpdate(ut, x[m]t-1)
5: w[m]t ← SensorUpdate(zt, x[m]t)
6: Xt ← Xt + <x[m]t + w[m]t>
7: end for
8: for m=1 to M loop:
9: draw x[m]t with probability ∝ w[m]t
10: Xt ← Xt + x[m]t
11: end for
12: return Xt
Динамическая адаптация количества частиц : корректировка количества частиц в зависимости от неопределённости локализации (25-200 частиц)Байесовская фильтрация : объединение модели движения и модели датчика для вероятностной оценкиМеханизм переиспользования : сохранение частиц с высоким весом и исключение частиц с низким весомСистема использует стандартный стек навигации ROS, включающий:
Сервер карт : предоставление статической картыУзел AMCL : выполнение алгоритма локализацииУзел move_base : планирование и выполнение путиКарта стоимости : локальное и глобальное планирование путиСпецификация UdacityBot :
Шасси: куб 0.4×0.2×0.1 м Колёса: цилиндры радиусом 0.1 м, длиной 0.05 м Датчики: лидар Hokuyo, RGB-камера Спецификация SagarBot :
Шасси: куб 0.4×0.4×0.1 м (больше и тяжелее) Положение лидара: перемещено в переднюю часть робота Остальная конфигурация аналогична UdacityBot Платформа : ROS Kinetic + Gazebo + RVizКарта : лабиринт Jackal-Race от Clearpath RoboticsОборудование : Ubuntu 16.04, Intel i7 + NVIDIA GTX 1080TiВремя сходимости локализации : время, необходимое для сходимости фильтра частицВремя завершения навигации : общее время от начальной точки до целевой точкиКачество пути : выбран ли оптимальный путьЧувствительность параметров : влияние различных параметровКоличество частиц : min_particles=25, max_particles=200Допуск преобразования : transform_tolerance=0.2Модель лидара : модель likelihood_fieldМодель одометрии : модель diff-corrected дифференциальной коррекцииПараметры шума : odom_alpha1-4 = 0.005, 0.005, 0.010, 0.005 Диапазон обнаружения препятствий : UdacityBot=1.5 м, SagarBot=5.0 мДиапазон трассировки лучей : UdacityBot=4.0 м, SagarBot=8.0 мДопуск целевой точки : xy_goal_tolerance=0.2 м, yaw_goal_tolerance=0.1 радЧастота обновления : 10 ГцВремя сходимости частиц : 5-6 секундВремя завершения навигации : примерно 2 минутыХарактеристики пути : первоначальное исследование на север, затем переход на юго-восточный путь после обнаружения препятствияВремя сходимости частиц : 30-40 секундВремя завершения навигации : 15-20 минутПричина снижения производительности : медленное движение из-за большей массыUdacityBot: диапазон 1.5 м достаточен для эффективной навигации SagarBot: увеличение до 5.0 м значительно улучшает производительность, избегая тупиков UdacityBot: радиус расширения 0.65 м SagarBot: снижение до 0.55 м для избежания неправильной оценки ширины прохода Связь между размером робота и производительностью : более крупные роботы требуют большего диапазона датчиков и более свободных параметров расширенияЭффект связи параметров : obstacle_range и raytrace_range требуют согласованной настройкиВажность локальной карты стоимости : обнаружение препятствий в реальном времени критично для планирования путиХарактеристика EKF MCL Предположение о распределении Унимодальное гауссово Произвольное распределение Вычислительная сложность Фиксированная (низкая) Адаптивная Обработка нелинейности Линеаризация Выборочная аппроксимация Способность глобальной локализации Слабая Сильная Сложность реализации Высокая Низкая
Стандартный MCL : фиксированное количество частицАдаптивный MCL : динамическая адаптация количества частицKLD-выборка : контроль количества частиц на основе статистических тестовПроверка эффективности AMCL : оба робота успешно реализовали локализацию и навигациюВлияние конструкции робота : UdacityBot показал лучшую производительность, чем SagarBotВажность настройки параметров : надлежащая конфигурация параметров критична для производительностиОграничения планирования пути : оба робота не выбрали оптимальный путьСубоптимальное планирование пути : робот не смог предсказать препятствие на севере и выбрал субоптимальный путьОграничения моделирования : тестирование только в среде моделирования без проверки в реальной средеОграничение одного робота : не рассмотрены сценарии совместной локализации нескольких роботовПредположение о плоской поверхности : предполагается плоская поверхность, лидар может пропустить препятствия на землеУлучшение планировщика пути : интеграция более интеллектуальных алгоритмов глобального планирования путиРасширение на несколько роботов : поддержка одновременной локализации и координации нескольких роботовРазвёртывание на оборудовании : развёртывание на реальном оборудовании, таком как NVIDIA Jetson TX2Слияние датчиков : интеграция дополнительных типов датчиков для повышения надёжностиСистематическое исследование : полный цикл исследования от теории к реализацииДетальный анализ параметров : предоставляет практическое руководство по настройке параметровПроектирование сравнительных экспериментов : проверка универсальности метода на двух различных моделях роботовОткрытый исходный код : предоставление репозитория GitHub для облегчения воспроизведенияОграниченная новизна : в основном применение алгоритма AMCL, а не инновация в самом алгоритмеЕдинственная экспериментальная среда : тестирование только в одной среде моделированияНедостаточная оценка производительности : отсутствие количественного сравнения с другими методами локализацииОтсутствие теоретического анализа : недостаток анализа сходимости и точностиОбразовательная ценность : предоставляет хороший практический пример для обучения локализации роботовИнженерный справочник : опыт настройки параметров имеет справочную ценность для практического примененияХорошая воспроизводимость : детальное описание реализации облегчает воспроизведение другими исследователямиНавигация в помещении : подходит для навигации в помещениях с известной картойСкладские роботы : роботы для перемещения грузов и управления запасамиСервисные роботы : сервисные роботы в структурированных средах, таких как отели и больницыОбразовательные исследования : практические проекты для курсов робототехникиСтатья ссылается на следующие ключевые работы:
Clearpath Robotics - система навигации Jackal S. Thrun - фильтры частиц в робототехнике Q. Li et al - фильтры Калмана и их приложения M. Quigley et al - открытая операционная система ROS для роботов Руководство по настройке навигации ROS Общая оценка : Это практическая прикладная работа, которая, хотя и имеет ограниченную новизну в алгоритмах, предоставляет ценный опыт в инженерной реализации и настройке параметров. Она имеет хорошую справочную ценность для исследователей и инженеров, изучающих технологию локализации роботов.