ДонНТУ   Портал магистров

МОДЕЛИРОВАНИЕ ПРОЦЕССА УПРАВЛЕНИЯ АВТОНОМНЫМ РОБОТОМ НА ОСНОВЕ ОБУЧЕНИЯ С ПОДКРЕПЛЕНИЕМ

Киселёв Д.С., Федяев О.И. Моделирование процесса управления автономным роботом на основе обучения с подкреплением // Программная инженерия: методы и технологии разработки информационно-вычислительных систем (ПИИВС-2024): сборник материалов V международной научно-практической конференции (Том 2). — Донецк, ДонНТУ, 2024. — Ссылка на сборник

Киселёв Д.С., Федяев О.И.

Донецкий национальный технический университет
E-mail: danik.kis03@mail.ru, olegfedyayev@mail.ru

Аннотация

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

Ключевые слова: обучение с подкреплением, оптимизация траекторий, робототехника, симуляция, Gazebo, ROS.

Введение

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

Принципы обучения с подкреплением

Обучение с подкреплением – это парадигма машинного обучения, в которой агент обучается взаимодействовать со средой путём проб и ошибок, стремясь максимизировать получаемое вознаграждение [3]. В отличие от обучения с учителем, где агент получает явные инструкции о правильных действиях, в RL агент самостоятельно исследует среду и учится на основе наличия обратной связи. Ключевыми компонентами RL являются: агент, среда, состояние, действие, вознаграждение.

На рисунке 1 представлена обобщённая схема обучения с подкреплением.

Схема адаптации агента в среде по стратегии обучения с подкреплением

Рисунок 1 – Схема адаптации агента в среде по стратегии обучения с подкреплением

Процесс обучения в RL итеративный: агент наблюдает текущее состояние среды, выбирает действие на основе своей текущей политики (стратегии), выполняет это действие, получает вознаграждение и переходит в новое состояние. Цель агента − научиться оптимальной политике, которая максимизирует сумму ожидаемых вознаграждений во времени. Функция вознаграждения играет ключевую роль в формировании поведения агента и должна быть тщательно спроектирована для достижения желаемых результатов. Например, в задаче оптимизации траектории робота, функция вознаграждения может учитывать расстояние до цели, затраченное время, потребленную энергию и штрафы за столкновения с препятствиями.

Возможности и технология моделирования среды с помощью Gazebo

Среда моделирования играет ключевую роль в разработке и тестировании алгоритмов обучения с подкреплением для робототехники. Она позволяет агенту обучаться в безопасной виртуальной среде, ускоряет процесс разработки и тестирования, а также предоставляет возможность создавать разнообразные сценарии и собирать большие объёмы данных для обучения сложных моделей. В нашем исследовании мы выбрали Gazebo в качестве симулятора, интегрированного с ROS (Robot Operating System) для обеспечения коммуникации и управления.

Gazebo − это мощный open-source симулятор трёхмерной динамики роботов, предоставляющий реалистичное физическое моделирование и широкий набор инструментов для создания сложных виртуальных миров [4]. Он используется для моделирования населённых сред, включая здания, дороги, растительность и другие объекты. Gazebo позволяет моделировать взаимодействие роботов с окружающей средой, включая столкновения, трение и другие физические явления. Он поддерживает различные физические движки, включая ODE, Bullet и Simbody, позволяя точно моделировать динамику роботов и объектов в среде. Благодаря этому исследователи могут тестировать алгоритмы управления и навигации в реалистичных условиях, не рискуя повредить реальное оборудование. Интеграция с ROS обеспечивает гибкую и эффективную коммуникацию между симулятором и алгоритмом обучения. ROS предоставляет стандартный способ для программного обеспечения роботов общаться друг с другом, а Gazebo легко интегрируется с ROS, что упрощает процесс разработки и тестирования робототехнических систем.

ROS − это гибкая платформа для написания программного обеспечения роботов [5]. Это набор инструментов, библиотек и соглашений, которые упрощают создание сложных и надежных робототехнических систем. ROS не является операционной системой в традиционном смысле, а скорее представляет собой мета-операционную систему, работающую поверх Linux. Она предоставляет сервисы, необходимые для работы с аппаратным обеспечением робота, такие как абстракция оборудования, управление устройствами, передача сообщений между процессами, а также управление пакетами.

Среда моделирования должна включать следующие компоненты: модель робота, модель среды, интерфейс ROS.

Робот можно смоделировать с использованием URDF (Unified Robot Description Format), стандартного формата XML для описания роботов в ROS [6]. URDF-файл определяет физические и кинематические свойства робота, включая геометрию звеньев, типы соединений, массу, инерцию и другие параметры. Это позволяет создавать точные модели роботов с различными конфигурациями и характеристиками. На рисунке 2 представлен пример модели мобильного робота в Gazebo.

Модель мобильного робота в Gazebo

Рисунок 2 – Модель мобильного робота в Gazebo

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

Среда с препятствиями в Gazebo

Рисунок 3 – Среда с препятствиями в Gazebo

ROS используется для обмена данными между агентом RL и симулятором. Агент получает информацию о состоянии среды через ROS topics, например, данные с сенсоров робота (лидара, камеры, GPS). Управляющие команды от агента передаются симулятору также через ROS topics, позволяя агенту контролировать движение робота. Эта интеграция обеспечивает эффективное взаимодействие между алгоритмом обучения и симулятором.

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

Анализ алгоритмов обучения с подкреплением для оптимизации траекторий

Задача обучения с подкреплением задаётся Марковским Процессом Принятия Решений (Markov Decision Process или сокращённо MDP) [7]. Формально её можно описать следующими четырьмя параметрами \(MDP = < S, A, P, r >\), где:

Агент руководствуется некоторым правилом, как выбирать действия в зависимости от текущего состояния среды, которое называется стратегией (policy). В RL методы, не связанные с политикой (off-policy), позволяют учиться по стратегии, отличной от той, которую алгоритм использует в данный момент.

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

Для решения этой задачи можно применить несколько наиболее известных алгоритмов RL, рассмотренные в таблице 1. Каждый из них имеет свои сильные и слабые стороны.

Таблица 1 – Сравнение алгоритмов RL для оптимизации траекторий робота
Алгоритм обучения с подкреплением Тип политики Преимущества алгоритма Недостатки алгоритма
PPO On-policy Стабильное обучение, обработка непрерывных изменений действий Высокие вычислительные затраты
TD3 Off-policy Улучшенная стабильность по сравнению с DDPG Сложная настройка гиперпараметров
SAC Off-policy Устойчив к шуму, хорошо справляется с неопределенностью Высокие вычислительные затраты
DQN Off-policy Относительно простой, работает с дискретными действиями Трудности с непрерывными действиями

Алгоритм PPO (Proximal Policy Optimization) хорошо подходит для задач с непрерывными изменениями действий, демонстрируя стабильное обучение [8]. Алгоритм TD3 (Twin Delayed Deep Deterministic Policy Gradient) является усовершенствованием DDPG и обладает повышенной стабильностью [9]. Алгоритм SAC (Soft Actor-Critic) отличается робастностью к шуму и хорошо справляется с задачами, где присутствует неопределенность. Алгоритм DQN (Deep Q-Network), хотя и более прост в реализации, может испытывать трудности с непрерывными изменениями действий, что делает его менее подходящим для задач управления роботами в динамических средах.

Заключение

В данной статье представлена концепция оптимизации траектории движения роботов с использованием обучения с подкреплением. Были рассмотрены сложности, связанные с навигацией роботов в динамических средах, и обосновали преимущества применения RL для решения подобных задач. Проведен сравнительный анализ перспективных алгоритмов RL, таких как PPO, TD3, SAC и DQN, с учётом их применимости к задачам с непрерывными пространствами действий и наличием неопределенностей. Подробно рассмотрены возможности среды моделирования Gazebo, интегрированной с ROS, для создания реалистичных виртуальных сред и эффективного обучения агентов.

Результаты анализа показывают, что сочетание алгоритмов, таких как PPO, TD3 и SAC, с реалистичной симуляцией в Gazebo/ROS представляет собой перспективный подход к решению задач оптимизации траекторий роботов. В дальнейшей работе планируется провести экспериментальную проверку эффективности выбранных алгоритмов на конкретных задачах навигации робота в динамической среде с препятствиями. Особое внимание будет уделено исследованию влияния различных функций вознаграждения на качество получаемых траекторий, а также разработке методов адаптации обученных политик к реальным условиям.

Литература

  1. Саттон, Р. С. Reinforcement learning: An introduction [Текст] / Р. С. Саттон, Э. Г. Барто. – Cambridge, MA: MIT Press, 1998. – 322 с.
  2. Лилликрэп, Т. П. Continuous control with deep reinforcement learning [Электронный ресурс] / Т. П. Лилликрэп [и др.]. – Электрон. дан. – Режим доступа: arXiv:1509.02971. – Загл. с экрана.
  3. Мних, В. Human-level control through deep reinforcement learning [Электронный ресурс] / В. Мних [и др.]. – Электрон. дан. – Режим доступа: Nature 518, 529–533 (2015). – Загл. с экрана.
  4. Кениг, Н. Design and use paradigms for Gazebo, an open-source multi-robot simulator [Текст] / Н. Кениг, А. Ховард // IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). - Sendai, Japan, 2004. – C. 2149-2154.
  5. Куигли, М. ROS: an open-source Robot Operating System [Текст] / М. Куигли [и др.] // ICRA Workshop on Open-Source Software. – Kobe, Japan, 2009
  6. Willow Garage. URDF (Unified Robot Description Format) [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://wiki.ros.org/urdf. – Загл. с экрана
  7. Путерман, М. Л. Markov decision processes: discrete stochastic dynamic programming [Текст] / М. Л. Путерман. – Hoboken, NJ: John Wiley & Sons, 2014. – 684 с.
  8. Шульман, Дж. Proximal policy optimization algorithms [Электронный ресурс] / Дж. Шульман, Ф. Вольски, П. Даривал, А. Радфорд, О. Климов. – Электрон. дан. – Режим доступа: arXiv:1707.06347. – Загл. с экрана.
  9. Фудзимото, С. Addressing function approximation error in actor-critic methods [Электронный ресурс] / С. Фудзимото, Х. ван Хоф, Д. Мегер. – Электрон. дан. – Режим доступа: arXiv:1802.09477. – Загл. с экрана.