Добавлены вводные понятия по обучению с подкреплением
This commit is contained in:
parent
9fdae276e5
commit
dd6a956122
1 changed files with 50 additions and 6 deletions
|
@ -94,18 +94,16 @@ https://gym.openai.com
|
|||
Для задач, требующих касания манипулятором или его приспособлением других предметов целесообразно использовать RL-policy, а в задачах, где нужно перемещение манипулятора в сложных стеснённых условиях, используется планировщик. Ключевая роль алгоритма состоит в том, что в ходе решения задач выбирается либо планировщик движения, либо прямое выполнение политики обучения с подкреплением. Тем самым достигается высокая производительность. В симуляциях использовался движок физики Mujoco.
|
||||
|
||||
|
||||
### AirSim
|
||||
|
||||
[Github](https://github.com/microsoft/AirSim)
|
||||
### [AirSim](https://github.com/microsoft/AirSim)
|
||||
|
||||
Open source симулятор для автономных транспортных средств от Microsoft AI & Research. Интересен тем, что поддерживаются оба игровых движка для рендеринга - Unreal Engine и Unity(пока экспериментальная поддержка). Разработаны python-обёртки для OpenAI Gym и ROS.
|
||||
|
||||
Для поддержки URDF в AirSim [разработан](http://www.mitchellspryn.com/2019/01/19/Simulating-Arbitrary-Robots-Using-the-Unreal-Engine.html) форк - UrdfSim ([Github]](https://github.com/mitchellspryn/UrdfSim)).
|
||||
Для поддержки URDF в AirSim [разработан](http://www.mitchellspryn.com/2019/01/19/Simulating-Arbitrary-Robots-Using-the-Unreal-Engine.html) форк - [UrdfSim](https://github.com/mitchellspryn/UrdfSim).
|
||||
|
||||
|
||||
### RelMoGen
|
||||
### [RelMoGen](http://svl.stanford.edu/projects/relmogen/)
|
||||
|
||||
[Leveraging Motion Generation in Reinforcement Learning for Mobile Manipulation](http://svl.stanford.edu/projects/relmogen/) | [Paper](https://arxiv.org/abs/2008.07792)
|
||||
Leveraging Motion Generation in Reinforcement Learning for Mobile Manipulation | [Paper](https://arxiv.org/abs/2008.07792)
|
||||
|
||||
|
||||
### Gibson Environments
|
||||
|
@ -113,3 +111,49 @@ Open source симулятор для автономных транспортн
|
|||
[Сайт](http://gibsonenv.stanford.edu/) | [Github](https://github.com/StanfordVL/GibsonEnv)
|
||||
|
||||
Набор виртуальных сред (в основном жилые помещения для людей) для обучение мобильных роботов. Используется bullet и gym-подобный интерфейс для взаимодействия с агентом.
|
||||
|
||||
## Обучение с подкреплением - определения и подходы
|
||||
|
||||
___Обучение с подкреплением (ОП)___ - разновидность алгоритмов машинного обучения, наряду с обучением без учителя и обучением с учителем.
|
||||
|
||||
Алгоритм состоит в следующем:
|
||||
* агент, руководствуясь стратегией (policy), воздействует (action, a) на окружающую среду с текущим состоянием (state, s)
|
||||
* в ответ агент получает новое состояние окружающей среды s' и награду r
|
||||
* на новом шаге агент меняет свою стратегию, чтобы максимизировать суммарное вознаграждение(value).
|
||||
|
||||
### Отличие ОП и обучения с учителем
|
||||
|
||||
Цель обучения с учителем – научиться обобщать, располагая лишь фиксированным набором данных с ограниченным количеством примеров. Каждый пример состоит из входа и желательного выхода (или метки), так что реакция на выбор агента следует незамедлительно.
|
||||
|
||||
Напротив, в ОП акцент ставится на последовательных действиях, которые можно предпринять в конкретной ситуации. В данном случае единственное, что дает учитель, – сигнал вознаграждения. Какое действие правильно при данных условиях, неизвестно, в отличие от обучения с учителем.
|
||||
|
||||
### Дилемма исследования(exploration)/использования(exploitation) в ОП
|
||||
|
||||
Агент должен совершать действия, которые с высокой вероятностью приведут к достижению цели (использование), но в то же время должен пробовать _иные действия_, чтобы другие части окружающей среды не остались неисследованными (исследование). Эту двойственность называют дилеммой (или компромиссом) исследования–использования, она призвана решить трудную проблему поиска баланса между исследованием и использованием окружающей среды. Она важна также и потому, что, в отличие от обучения с учителем, агент ОП может влиять на окружающую среду, т. к. вправе собирать новые данные, коль скоро считает это полезным.
|
||||
|
||||
### Off-policy, on-policy
|
||||
|
||||
_Off-policy_ - алгоритм ОП, где стратегия агента, воздействующего на среду (поведенческая стратегия), отличается от стратегии, которую обучают (целевая стратегия). Целевая стратегия фактически не используется для влияния на состояние среды.
|
||||
|
||||
_On-policy_ - алгоритм, где воздействует на среду и обучается одна и та же стратегия. То есть стратегия обучается на тех же данных, которые генерирует.
|
||||
|
||||
Алгоритмы с разделенной стратегией(off-policy) менее устойчивы и их труднее проектировать, чем алгоритмы с единой стратегией, зато у них более высокая выборочная эффективность, т. е. для обучения нужно меньше данных.
|
||||
|
||||
### Model-free, model-based
|
||||
|
||||
Модель описывает поведение окружеющей среды, то есть может предсказать её состояние в следующем шаге. Если модель есть и известна(model-based), то можно использовать алгоритмы планирования. Модель может быть известна заранее или формироваться в ходе взаимодействия с окружающей средой.
|
||||
|
||||
Model-free делятся на
|
||||
* Q-learning - алгоритм на основе обучения функции ценности действия); как правило это алгоритмы с разделённой стратегией(off-policy), чтобы сделать возможным обучение на базе предыдущего опыта, так как выборочные данные можно хранить в буфере воспроизведения.
|
||||
* Policy gradient (градиент стратегии, метод оптимизации стратегии); как правило, это on-policy алгоритмы с единой стратегией. Актор-критик (actor-critic) - разновидность алгоритма оптимизации единой стратегии (актор) c одновременным обучением Q-функции ценности (критик). Поскольку алгоритмы исполнитель–критик обучают и используют функцию ценности, они классифицируются как алгоритмы градиента стратегии, а не как гибридные.
|
||||
* Гибридные - сочетают обучение стратегии и функции ценности.
|
||||
|
||||
К model-based алгоритмам относятся
|
||||
* чистое планирование
|
||||
* встроенное планирование для улучшения стратегии и генерации выборки из аппроксимированной модели
|
||||
* динамическое программирование - семейство алгоритмов, в которых модель используется для оценивания функции ценности. Смысл в том, чтобы разбить задачу на меньшие перекрывающиеся подзадачи, а затем найти решение исходной задачи, объединяя решения подзадач. Является одним из самых простых подходов. Подходит для вычисления оптимальной стратегии, поскольку имеется точная модель окружающей среды. Cложность экспоненциально возрастает вместе с увеличением числа состояний.
|
||||
|
||||
|
||||
### Выбор алгоритма ОП
|
||||
|
||||
Нет универсальных алгоритмов, все имеют как преимущества, так и недостатки. Наиболее значимые критерии оценки - устойчивость, выборочная эффективность, время обучения, простота использования, надёжность. Алгоритмы градиента стратегии более устойчивы и надежны, чем алгоритмы функции ценности. С другой стороны, методы функции ценности обладают лучшей выборочной эффективностью, поскольку это методы с разделенной стратегией и потому могут использовать предшествующий опыт. В свою очередь, алгоритмы, основанные на модели, лучше алгоритмов Q-обучения с точки зрения выборочной эффективности, но гораздо дороже с вычислительной точки зрения и работают медленнее.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue