RU2816639C1 - Способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением - Google Patents

Способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением Download PDF

Info

Publication number
RU2816639C1
RU2816639C1 RU2022133176A RU2022133176A RU2816639C1 RU 2816639 C1 RU2816639 C1 RU 2816639C1 RU 2022133176 A RU2022133176 A RU 2022133176A RU 2022133176 A RU2022133176 A RU 2022133176A RU 2816639 C1 RU2816639 C1 RU 2816639C1
Authority
RU
Russia
Prior art keywords
control
control controller
agent
controller
parameters
Prior art date
Application number
RU2022133176A
Other languages
English (en)
Inventor
Азер Кахраман Оглы Бабаев
Андрей Валерьевич Волченков
Роман Александрович Горбачев
Егор Викторович Давыденко
Екатерина Матвеевна Доржиева
Владимир Викторович Литвиненко
Инна Константиновна Минашина
Кирилл Игоревич Сытник
Original Assignee
федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)"
Filing date
Publication date
Application filed by федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" filed Critical федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)"
Application granted granted Critical
Publication of RU2816639C1 publication Critical patent/RU2816639C1/ru

Links

Abstract

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

Description

Настоящее изобретение относится к области робототехники и искусственного интеллекта и может быть использовано в качестве способа для создания контроллеров управления шагающими роботами с целью повышения эффективности управления платформы за счет оптимизации контроллера управления под конкретную платформу с учетом динамических характеристик платформы, а также упрощение получения контроллеров управления для различных целевых задач.
Известен патент RU2755339C1 «Модифицированный интеллектуальный контроллер с адаптивным критиком». Изобретение состоит из блока расчета подкрепления, блок расчета временной разности, блока критика, решающей нейронной сети, блока отбора действий, блока действий, блока выбора действий, объекта управления. Повышение адаптационных свойств системы управления на базе интеллектуального контроллера достигается за счет выделения процесса обучения нейронной сети блока критика и решающей нейронной сети в отдельный блок обучения нейронных сетей, при этом данный блок обучает обе нейронные сети. Работа с блоком действий строится по новому принципу с использованием блока отбора действий, блока выбора действий, блока обучения нейронных сетей, блока расчета временной разности и блока расчета подкрепления. Блока отбора действий, ограничивающий возможные действия, не подходящие по минимально заданному подкреплению, а также возможность прямого обращения к блоку действий блока отбора действий, блока критика, блока расчета подкрепления и блока расчета временной разности повышают скоростные характеристики работы системы. Упрощение реализации для разработчика заключается в модернизации взаимодействия блоков расчета подкрепления, блока расчета временной разности и блока выбора действий с блоком действий, а также выделение процесса обучения нейронной сети блока критика и решающей нейронной сети в отдельный блок.
Недостатками данного контроллера являются недостаточные адаптационные свойства, сложность описания целевых задач контроллера для применения в робототехнике.
В качестве ближайшего аналога заявленному способу выбран патент RU2686030C1 «Непрерывное управление с помощью глубокого обучения с подкреплением». Способ описывает общий подход к обучению с подкреплением и состоит из нейронной сети-исполнителя, используемой для выбора действий, подлежащих выполнению агентом, запоминающего устройства повторного воспроизведения, в котором сохраняются экспериментальные кортежи данных, нейронной сети-критика, обрабатывающей учебное наблюдение и учебное действие в экспериментальных кортежах, прогнозной нейронной-сети исполнителя, прогнозной нейронной сети-критика. Многократно выполняя над множеством различных минипакетов экспериментальных кортежей процесс определения прогнозного вывода нейронной сети из учебного вознаграждения и следующего наблюдения, а также определения обновления параметров нейронной сети-критика через их прогнозные аналоги и определение обновления для нейронной сети-исполнителя с использованием нейронной сети-критика, система может обучить нейронную сеть-исполнителя определять выученные значения параметров нейронной сети-исполнителя и предоставлять возможность эффективного использования нейронной сети-исполнителя для выбора действий, подлежащих выполнению агентом при взаимодействии со средой.
Недостатками способа являются отсутствие централизованной системы описания целевых задач, замедляющее процесс получения различных контроллеров, недостаточная оптимизация метода для применения в задачах шагающих роботов
Таким образом, существует задача разработки такого способа для создания контроллеров управления шагающими роботами на основе обучения с подкреплением, который обеспечивает автоматизацию создания оптимальных контроллеров управления с учетом особенностей и динамических характеристик конкретных платформ, что особенно важно при использовании данной полезной модели в автономных шагающих роботах.
Техническим результатом заявленного изобретения является автоматизация процессов создания эффективных контроллеров управления за счет учета особенностей и динамических характеристик конкретных платформ для автономных шагающих роботов и упрощения получения конечного результата разработчиком данных контроллеров.
Поставленная задача решается, а заявленный технический результат достигается тем, что способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением, включает следующие этапы: инициализация, создание необходимых модулей, обмен данными между контроллером управления и агентом управления, подсчет наград и штрафов при получении ответного отклика менеджером обучения, сохранение данных в хранилище, оптимизация параметров контроллера управления через максимизацию получаемой итоговой награды с помощью алгоритма машинного обучения, экспорт контроллера управления в виде бинарного файла его внутренних параметров для дальнейшей загрузки на реального робота для генерации его движений.
Далее изобретение подробно поясняется со ссылкой на фигуры.
На фиг. 1 схематично показана взаимосвязь основных используемых блоков в способе для создания контроллеров управления шагающими роботами на основе обучения с подкреплением. На фигуре 1 ссылочными позициями отмечены:
1 – модель робота;
2 – интерфейсы входа и выхода контроллера управления;
3 - архитектура контроллера управления;
4 – описание внешней среды;
5 – функции наград и штрафов;
6 - параметры задачи;
7 – задача;
8 – интерфейс взаимодействия;
9 – агент управления;
10 – алгоритм машинного обучения;
11 - менеджер обучения;
12 – контроллер управления;
13 – обучатель;
14 – хранилище;
15 – блок регистрации задач;
16 – блок регистрации обучателей;
17 – блок контроля обучения;
18 – внешняя среда.
Блок регистрации задач (15) состоит из описания внешней среды (4), модели робота (1), функции наград и штрафов (5), интерфейсов (2) входов и выходов контроллера управления, параметров задачи (6) и задачи (7). Описание внешней среды (4) предназначено для описания физики, окружения робота, предметов для взаимодействия и других, необходимых для решения задачи, параметров. Модель робота (1) описывает собственно конструкцию робота, например, в нем могут быть заданы параметры моторов, датчиков, формат управления. Функции наград и штрафов (5) содержат описания функций от входов и выходов контроллера, привилегированной информации от среды, которая не может непосредственно участвовать в формировании управляющего воздействия, определяющие желаемое поведение контроллера управления. Интерфейсы (2) входа и выхода контроллера управления предназначены для определения количества входов и выходов, типа используемой контроллером информации, формата входных и выходных данных. Параметры (6) задачи содержат общие сведения о конфигурации задачи. Примером могут служить параметры влияния определенных наград и штрафов, усиления входов и выходов и т.д. Задача (7) описывает комплексную информацию о роботе, его интерфейсы управления (входы и выходы), внешней среде (18), в которой робот будет работать, наградах и штрафах, которые можно получить в процессе обучения, общих параметрах, относящимся к данной задаче. Задача формируется посредством выбора экземпляров модулей, содержащих требуемую информацию.
Блок регистрации обучателей (16) содержит в себе хранилище (14), алгоритм машинного обучения (10), архитектуру (3) контроллера управления и обучатель (13). Хранилище (14) предназначено для хранения данных о состояниях, действиях и наградах. Алгоритм машинного обучения (10) содержит непосредственно алгоритм по оптимизации контроллера управления по данным из хранилища. Архитектура (3) контроллера управления содержит информацию о внутреннем устройстве контроллера. Обучатель (13) содержит сведения о процессах изменения внутренних параметров контроллера с целью его оптимизации на основе использования заданного алгоритма обучения, описанного в алгоритме машинного обучения (10) и архитектуры (3) контроллера управления.
Блок контроля обучения (17) содержит менеджер обучения (11), интерфейс взаимодействия (8) и контроллер управления (12). Менеджер обучения (11) описывает основной цикл обучения, инициализирует выбранные задачи и обучатели для создания и обучения контроллеров управления, а также экспортирует готовый контроллер для применения на реальном роботе. Интерфейс взаимодействия (8) предназначен для получения данных из внешней среды (18) непосредственно в которой действует агент. Это могут быть интерфейсы для подключения к виртуальным или реальным датчикам робота, камерам, лидарам, средствам локализации и т.д.
Модульность, реализованная в способе, позволяет достичь уровня гибкости, позволяющей пользователю беспрепятственно внедрить своего робота, задачу и условия среды, для получения эффективного контроллера, подготовленного непосредственно под заданную конфигурацию.
На фиг. 2 схематично приведена общая блок-схема способа для создания контроллеров управления шагающими роботами на основе обучения с подкреплением. На фигуре 2 ссылочными позициями отмечены:
19 – инициализация;
20 – создание необходимых модулей;
21 – обмен данными между контроллером управления и агентом управления;
22 –подсчет наград и штрафов;
23 – сохранение данных в хранилище;
24 – оптимизация параметров контроллера управления;
25 – экспорт контроллера управления.
На шаге инициализации (19) осуществляется: получение данных о модели робота (1) из файла, определение формата интерфейсов (2) входа и выхода контроллера управления для данной модели и внутренней архитектуры (3) контроллера управления для создания экземпляра контроллера управления (12), получение описания внешней среды (4) и определение ее состояния на момент начала обучения, определение функций наград и штрафов (5), которые можно получить в процессе обучения, получение конфигурационных файлов для определения параметров (6) задачи. На основе этих данных происходит формирование задачи (7) и инициализация интерфейса взаимодействия (8) контроллера управления и агента управления (9), представляющего собой реального робота или модели робота внутри симуляции, определение алгоритма машинного обучения (10).
Конструкция робота, для которого формируется задача, описывается моделью робота (1) в формате URDF, MJCF или аналогичном формате. Одна и та же конструкция может быть использована для разных задач, что упрощает получение контроллеров управления для одной и той же целевой платформы.
Затем на шаге (20) осуществляется создание необходимых модулей: менеджера обучения (11) с учетом функции наград и штрафов (5) для процесса обучения, контроллера управления (12) на основе архитектуры (3) контроллера управления и интерфейсов (2) входа и выхода контроллера управления, а также обучателя (13) с использованием менеджера обучения (11), контроллера управления (12) и заданного алгоритма машинного обучения (10).
Менеджер обучения (11) содержит внутри себя цикл обмена данными между контроллером управления и агентом управления (9). При получении текущего состояния агента управления (9) через интерфейс взаимодействия (8) и отправке его на вход контроллера управления (12), формат которого описан в задаче (7), осуществляется получение команд из интерфейса (2) выхода контроллера управления (12) для целевого управления. Затем на шаге (21) осуществляется обмен данными между контроллером управления (12) и агентом управления (9). При получении ответного отклика менеджером обучения (11) ведется подсчет наград и штрафов на шаге (22), т.е. рассчитывается общая оценка текущего действия агента управления (9) с помощью функции наград и штрафов (5), описанных в задаче (7). Информация о состоянии агента управления (9) во внешней среде до выполнения действия, действие агента, текущая награда агента и состояние агента в среде после действия сохраняются на шаге (23) в хранилище (14).
Оптимизация параметров контроллера на шаге (23) для улучшения желаемого движения достигается за счет максимизации получаемой награды с помощью алгоритмов машинного обучения, описанных в алгоритме машинного обучения (10). Для этого из данных, собранных во время одной итерации цикла обмена между агентом и средой и хранящихся в хранилище, формируется выборка, являющейся обучающей для данного контроллера. Переход между шагами (21) и (24) происходит при сборе достаточного количества данных, описанного в параметрах задачи (6), для формирования обучающей выборки. Контроллер управления (12) с обновленными внутренними параметрами используется в следующей итерации цикла обмена.
Процесс завершается на шаге (25) экспортом контроллера управления при достижении целей задачи, описанных в параметрах задачи (6), либо после достижения максимального числа итераций, также описанных в параметрах задачи (6).
Заявленный способ позволяет автоматизировано создавать оптимальные контролеры управления для шагающих роботехнических платформ для применения в описанных пользователем задачах. Способ обеспечивает автоматизацию процессов создания эффективных контроллеров управления с целью повышения стабильности движений робота в различных окружающих его условиях при моделировании походки робота в симуляторе и в реальной среде. Способ позволяет получать обученные модели для их применения на различных моделях шагающих роботов.

Claims (8)

1. Способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением, включающий следующие этапы:
a) инициализация, в процессе которой осуществляется получение данных о модели робота (1) из файла, определение формата интерфейсов входа и входа контроллера управления (2) для данной модели и внутренней архитектуры контроллера управления (3) для создания экземпляра контроллера управления, получение описания внешней среды (4) и определение ее состояния на момент начала обучения, определение функций наград и штрафов (5), которые можно получить в процессе обучения, получение конфигурационных файлов для определения параметров задачи (6), на основе этих данных происходит формирование задачи (7) и инициализация интерфейса взаимодействия (8) контроллера управления и агента управления (9), представляющего собой реального робота или модели робота внутри симуляции, определение алгоритма машинного обучения (10);
b) создание необходимых модулей: менеджера обучения (11) с учетом функций наград и штрафов (5) для процесса обучения, контроллера управления (12) на основе архитектуры контроллера управления (3) и интерфейсов входа и выхода контроллера (2), а также обучателя (13) с использованием менеджера обучения (11), контроллера управления (12) и заданного алгоритма машинного обучения (10);
c) обмен данными между контроллером управления (12) и агентом управления (9), при котором осуществляется получение текущего состояния агента во внешней среде (4) через интерфейс взаимодействия (8) и отправка команд из контроллера управления (12) агенту управления (9) для последующего выполнения; обмен прекращается при сборе достаточного количества данных, описанного в параметрах задачи (6), для формирования обучающей выборки, контроллер управления (12) с обновленными внутренними параметрами используется в последующих итерациях цикла обмена данными;
d) подсчет наград и штрафов при получении ответного отклика менеджером обучения (11), представляющий собой общую оценку текущего действия агента (9) с помощью функций наград и штрафов (5), описанных в задаче (7);
e) сохранение данных в хранилище (14), а именно информации о состоянии агента управления (9) в среде до выполнения действия, действие агента, текущая награда агента (9) управления и состояние агента (9) во внешней среде (4) после действия;
f) оптимизация параметров контроллера управления (12) через максимизацию получаемой итоговой награды с помощью алгоритма машинного обучения (10);
g) экспорт контроллера управления (12) в виде бинарного файла его внутренних параметров для дальнейшей загрузки на реального робота для генерации его движений.
RU2022133176A 2022-12-16 Способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением RU2816639C1 (ru)

Publications (1)

Publication Number Publication Date
RU2816639C1 true RU2816639C1 (ru) 2024-04-03

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2686030C1 (ru) * 2015-07-24 2019-04-23 Дипмайнд Текнолоджиз Лимитед Непрерывное управление с помощью глубокого обучения с подкреплением
US10786900B1 (en) * 2018-09-27 2020-09-29 Deepmind Technologies Limited Robot control policy determination through constrained optimization for smooth continuous control
US10828775B2 (en) * 2017-09-26 2020-11-10 Siemens Aktiengesellschaft Method and system for automatic robot control policy generation via CAD-based deep inverse reinforcement learning
US20210122037A1 (en) * 2019-10-25 2021-04-29 Robert Bosch Gmbh Method for controlling a robot and robot controller
WO2022223056A1 (zh) * 2021-07-12 2022-10-27 上海微电机研究所(中国电子科技集团公司第二十一研究所) 基于深度强化学习的机器人运动参数自适应控制方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2686030C1 (ru) * 2015-07-24 2019-04-23 Дипмайнд Текнолоджиз Лимитед Непрерывное управление с помощью глубокого обучения с подкреплением
US10828775B2 (en) * 2017-09-26 2020-11-10 Siemens Aktiengesellschaft Method and system for automatic robot control policy generation via CAD-based deep inverse reinforcement learning
US10786900B1 (en) * 2018-09-27 2020-09-29 Deepmind Technologies Limited Robot control policy determination through constrained optimization for smooth continuous control
US20210122037A1 (en) * 2019-10-25 2021-04-29 Robert Bosch Gmbh Method for controlling a robot and robot controller
WO2022223056A1 (zh) * 2021-07-12 2022-10-27 上海微电机研究所(中国电子科技集团公司第二十一研究所) 基于深度强化学习的机器人运动参数自适应控制方法和系统

Similar Documents

Publication Publication Date Title
CN110119844B (zh) 引入情绪调控机制的机器人运动决策方法、系统、装置
CN112668235B (zh) 基于离线模型预训练学习的ddpg算法的机器人控制方法
Farchy et al. Humanoid robots learning to walk faster: From the real world to simulation and back
Lin et al. Evolutionary digital twin: A new approach for intelligent industrial product development
Schaal et al. Control, planning, learning, and imitation with dynamic movement primitives
CN114603564A (zh) 机械臂导航避障方法、系统、计算机设备及存储介质
CN113821045B (zh) 一种腿足机器人强化学习动作生成系统
CN111857107B (zh) 基于学习组件库的辅助型移动机器人导航控制系统和方法
CN110014428A (zh) 一种基于强化学习的时序逻辑任务规划方法
CN113919485A (zh) 基于动态层级通信网络的多智能体强化学习方法及系统
Handelman et al. Robotic skill acquisition based on biological principles
McDonald et al. Guided imitation of task and motion planning
CN114510012A (zh) 一种基于元动作序列强化学习的无人集群演进系统及方法
Kim et al. Learning and generalization of dynamic movement primitives by hierarchical deep reinforcement learning from demonstration
CN114529010A (zh) 一种机器人自主学习方法、装置、设备及存储介质
RU2816639C1 (ru) Способ для создания контроллеров управления шагающими роботами на основе обучения с подкреплением
CN116306947A (zh) 一种基于蒙特卡洛树探索的多智能体决策方法
Revell et al. Sim2real: Issues in transferring autonomous driving model from simulation to real world
CN116265202A (zh) 一种机器人的控制方法、装置及介质、一种机器人
Marvel et al. Model-assisted stochastic learning for robotic applications
CN114454160A (zh) 基于核最小二乘软贝尔曼残差强化学习的机械臂抓取控制方法及系统
King et al. Design and simulation of a wide area search mission: an implementation of an autonomous systems reference architecture
Wenwen Application Research of end to end behavior decision based on deep reinforcement learning
Baird III et al. A hierarchical network of provably optimal learning control systems: Extensions of the associative control process (ACP) network
Du et al. A new cloud robots training method using cooperative learning