- •Курсовая работа
- •Тема: «Обучение с подкреплением в робототехнике: обзор алгоритмов (dqn, ppo, sac) и примеров применения в сборке. Сравнение методов, их применимость для задач манипуляции нежёсткими объектами.»
- •Аннотация
- •Содержание
- •Список сокращений и условных обозначений
- •Введение
- •Системный анализ разработки интеллектуального агента с применением обучения с подкреплением
- •1.1 Общая характеристика и современные тенденции применения искусственного интеллекта и машинного обучения в игровой индустрии и симуляциях
- •1.2 Анализ задач и определение требований к интеллектуальному агенту. Характеристика целевых сред и сценариев тестирования
- •1.3 Описание потоков данных и бизнес-процессов
- •1.4 Обзор и сравнительный анализ игровых движков и фреймворков для реализации обучения с подкреплением
- •1.5 Анализ проблематики выбора архитектуры агента, настройки гиперпараметров и обеспечения стабильности обучения
- •1.6 Патентный поиск
- •1.7 Анализ существующих методов и алгоритмов обучения с подкреплением (dqn, ppo, sac) для задач навигации, управления и принятия решений в виртуальной среде
- •1.7.1 Математическая формализация процесса обучения и алгоритмов ppo и sac
- •1.8 Применимость алгоритмов dqn, ppo и sac для задач манипуляции нежёсткими объектами в роботизированной сборке
- •1.9 Выводы по главе 1
- •2. Методы и технологии разработки и исследования интеллектуального агента в среде unity
- •2.1 Применение фреймворка Unity ml-Agents Toolkit для создания среды обучения, конфигурации агентов и нейронных сетей
- •2.1.1 Архитектура искусственной нейронной сети и конфигурация гиперпараметров
- •2.2 Обзор и сравнительный анализ алгоритмов обучения с подкреплением, методов предобработки данных и техник ускорения обучения
- •2.3 Методы сбора, обработки и визуализации метрик обучения (cumulative reward, loss, entropy) для анализа поведения и эффективности агента
- •2.3.1 Итеративная настройка и эволюция функции подкрепления (Reward Engineering)
- •2.4 Методы оценки производительности, обобщающей способности и устойчивости обученного агента в детерминированных и стохастических условиях
- •2.5 Технологический стек и архитектурные решения для интеграции модели машинного обучения (Python) с игровой логикой и физическим движком (c#/Unity)
- •2.6 Выводы по главе 2
- •3.Экспериментальные исследования и анализ результатов работы интеллектуального агента
- •3.1 Характеристика экспериментального стенда и условий проведения эксперимента
- •3.2 Сравнительный анализ эффективности алгоритмов ppo и sac в задаче навигации
- •3.3 Исследование влияния сенсорной системы и формирования функции вознаграждения
- •3.4 Анализ влияния гиперпараметров на сходимость алгоритма ppo
- •3.5 Абляционные исследования: влияние архитектуры сенсоров и функции вознаграждения на процесс обучения
- •3.6 Профилирование производительности и анализ вычислительной нагрузки в режиме реального времени
- •3.7 Программная реализация алгоритмов поведения и управления агентом
- •3.8 Тестирование и валидация обученной модели в режиме инференса
- •3.9 Выводы по главе 3
- •Заключение
- •Список использованных источников
- •Приложение а
- •Приложение б
1.7.1 Математическая формализация процесса обучения и алгоритмов ppo и sac
Фундаментальной основой глубокого обучения с подкреплением является Марковский процесс принятия решений (Markov Decision Process, MDP). Формально взаимодействие разработанного интеллектуального агента со средой лабиринта в Unity описывается кортежем из пяти элементов:
(S,A,P,R,γ), где:
S — пространство непрерывных состояний (наблюдения сенсоров Ray Perception и векторные координаты);
A — пространство непрерывных действий (векторы силы по осям X и Z);
P(
+1∣
,
—
функция вероятности перехода среды в
новое состояние st+1 при выполнении
действия at в состоянии st. В
контексте физического движка PhysX этот
переход носит детерминированно-стохастический
характер (учитываются трение, коллизии
и инерция);R( ,
)
— функция скалярного вознаграждения,
получаемого агентом на каждом шаге
симуляции;γ∈[0,1) — коэффициент дисконтирования (discount factor), определяющий ценность будущих наград по отношению к немедленным.
Основная цель обучения заключается в поиске оптимальной стохастической политики
πθ( ∣ ), параметризованной весами нейронной сети θ, которая максимизирует ожидаемую сумму дисконтированных вознаграждений:
|
(1.7.1) |
Для решения этой задачи в работе применялся алгоритм PPO (Proximal Policy Optimization). Главной математической инновацией PPO, обеспечивающей его стабильность, является использование клиппированной (обрезанной) суррогатной целевой функции. На каждом шаге обновления весов алгоритм вычисляет отношение вероятностей нового и старого действий:
|
(1.7.2) |
Целевая функция PPO (Clipped Surrogate Objective) формулируется следующим образом:
|
(1.7.3) |
где
—
оценка функции преимущества (Advantage),
показывающая, насколько выбранное
действие лучше среднего действия в
данном состоянии; ϵ — гиперпараметр
клиппинга (обычно равный 0.2). Данная
математическая конструкция не позволяет
политике агента изменяться слишком
сильно за одну итерацию обновления.
Если отношение
выходит
за пределы интервала [0.8,1.2], градиент
обнуляется. Именно эта особенность
предотвращает "катастрофическое
забывание" маршрута в лабиринте.
В качестве альтернативного метода исследовался алгоритм SAC (Soft Actor-Critic). В отличие от стандартных методов, SAC оптимизирует не только ожидаемую награду, но и энтропию политики
H:
|
(1.7.4)
|
где α — коэффициент температуры (temperature parameter), который контролирует баланс между исследованием среды (exploration) и использованием известного опыта (exploitation). В условиях лабиринта максимизация энтропии заставляет агента SAC избегать вырождения политики в одну жесткую траекторию (например, прямолинейное движение в стену) и стимулирует активный поиск обходных путей.
1.8 Применимость алгоритмов dqn, ppo и sac для задач манипуляции нежёсткими объектами в роботизированной сборке
Внедрение ИИ в производственные процессы сборки требует от роботизированных систем способности взаимодействовать не только с твердыми деталями (rigid bodies), но и с деформируемыми материалами (Deformable Object Manipulation — DOM). К таким задачам относятся: прокладка кабельных трасс, установка резиновых уплотнителей, сборка жгутов электропроводки и манипуляция тканевыми материалами. Главная техническая сложность DOM заключается в том, что состояние нежёсткого объекта описывается бесконечномерным пространством, а его реакция на контакт с захватом (гриппером) робота крайне нелинейна. В этом контексте парадигма глубокого обучения с подкреплением показывает наибольшую перспективность. Рассмотрим применимость трех основных алгоритмов:
Применение DQN (Deep Q-Network).
Как было показано в разделе 1.7, DQN работает исключительно в дискретном пространстве действий. В робототехнике это означает, что пространство возможных движений манипулятора должно быть заранее разбито на сетку координат (вокселей). DQN успешно применяется для задач определения оптимальной точки захвата (grasping) мягких объектов на конвейере (например, сортировка бракованных резиновых деталей), где агенту нужно выбрать одно конкретное действие из заранее заданного словаря. Однако для задач непрерывной деформации (например, плавного натяжения кабеля по сложной траектории) DQN не подходит, так как дискретизация непрерывных движений приводит к экспоненциальному росту пространства действий («проклятие размерности») и невозможности обучения.
Применение PPO (Proximal Policy Optimization).
Алгоритм PPO способен генерировать непрерывные векторы действий (углы поворота шарниров робота или векторы силы/момента), что делает его одним из базовых стандартов для управления манипуляторами. Главное преимущество PPO при работе с нежёсткими объектами — безопасность и монотонность обновления политики (за счет механизма клиппирования). При обучении робота вставке гибкого провода в разъем (task "peg-in-hole" with flexible objects) резкие изменения в управляющих сигналах могут привести к необратимой деформации провода или поломке гриппера. PPO гарантирует, что политика робота меняется плавно. Кроме того, модели, обученные с помощью PPO, демонстрируют высокую успешность при переносе из виртуального симулятора на реальное физическое устройство (Sim-to-Real transfer).
Применение SAC (Soft Actor-Critic).
Сборка нежёстких объектов характеризуется огромной вариативностью (кабель может изогнуться тысячами разных способов). Алгоритм SAC, максимизируя энтропию политики, поощряет робота к активному исследованию среды. Это позволяет агенту находить нетривиальные способы манипуляции, избегая попадания в локальные оптимумы. Но самым важным преимуществом SAC для реальной робототехники является его принадлежность к методам off-policy. Сбор данных на реальном промышленном роботе (или даже в точной физической симуляции тканей/кабелей) стоит очень дорого с точки зрения времени и износа механики. SAC позволяет повторно использовать однажды собранный опыт (replay buffer), обеспечивая высочайшую эффективность выборки (sample efficiency). Роботу требуется в 10-20 раз меньше попыток для обучения захвату ткани, чем при использовании PPO.
Таким образом, для задач сборки нежёстких объектов методы градиента политики (PPO и SAC) являются безальтернативным выбором. Однако, прежде чем обучать агента управлению сложной кинематикой роборуки и физикой деформации, данные алгоритмы должны быть верифицированы на базовых задачах непрерывного пространственного управления (Continuous Spatial Navigation). Базовый бенчмаркинг алгоритмов PPO и SAC в симуляторе с физическим движком PhysX представлен в последующих главах данной работы.
