Усиленное обучение в нестационарной среде [закрыто]

9

В1: Существуют ли распространенные или общепринятые методы работы с нестационарной средой в обучении подкреплению в целом?

Q2: В моем игровом мире функция вознаграждения меняется, когда посещается состояние. Каждый эпизод награды сбрасывается в исходное состояние. Все, что я хочу, чтобы мой агент выучил, это «Не возвращайся, если тебе действительно не нужно», однако это делает окружающую среду нестационарной. Может / должно ли это очень простое правило быть включено в модель MDP и как? Является ли Q-learning лучшим решением для решения этой проблемы? Любые предложения или доступные примеры?

Q3: Я искал Q-learning с повторением опыта как решение для работы с нестационарными средами, поскольку оно декоррелирует последовательные обновления. Это правильное использование метода или это больше связано с эффективностью обучения? И я видел только его использование с приближением значения. Я не уверен, является ли излишним использование его для простого дискретного пространства состояний, такого как gridworld, или есть другая причина для этого.

Пожалуйста, не стесняйтесь отвечать или комментировать, даже если вы не можете ответить на все вопросы.

Voltronika
источник

Ответы:

10

В1: Существуют ли распространенные или общепринятые методы работы с нестационарной средой в обучении подкреплению в целом?

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

Тем не менее , это относится к более длительной нестационарности, такой как проблема, возникающая при смене эпизодов, или в течение еще более длительного периода времени. Ваше описание больше похоже на то, что вы хотите изменить структуру вознаграждения на основе действий, предпринятых агентом, в короткие сроки. Этот динамический отклик на действия лучше представить в виде другого более сложного MDP, а не «нестационарности» в более простом MDP.

Агент не может узнать об изменениях в среде, в которой он еще не выбрал, поэтому изменение структуры вознаграждения не помешает агенту вернуться в ранее посещенные состояния. Если вы не используете что-то вроде RNN в агенте, у агента не будет «памяти» о том, что произошло раньше в эпизоде, кроме того, что представлено в текущем состоянии (возможно, использование RNN делает скрытый слой части RNN государства). В нескольких эпизодах, если вы используете табличный агент Q-обучения, агент просто узнает, что определенные состояния имеют низкую ценность, он не сможет узнать, что вторые или третьи посещения состояния вызывают этот эффект, потому что он не имеет способ представить это знание. Он не сможет адаптироваться к изменениям достаточно быстро, чтобы учиться онлайн и в середине эпизода.

Q2: В моем игровом мире функция вознаграждения меняется, когда посещается состояние. Все, что я хочу, чтобы мой агент выучил, это «Не возвращайся, если тебе действительно не нужно», однако это делает окружающую среду нестационарной.

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

Может / должно ли это очень простое правило быть включено в модель MDP и как?

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

Одна альтернатива состоит в том, чтобы сформулировать проблему как частично наблюдаемый марковский процесс принятия решений (POMDP) . В этом случае «истинное» состояние будет по-прежнему включать всю необходимую историю для расчета вознаграждений (и, поскольку это игрушечная проблема на компьютере, вам все равно придется как-то ее представлять), но агент может попытаться извлечь уроки из ограниченного знание состояния, просто то, что вы позволяете ему наблюдать. В целом, это гораздо более сложный подход, чем расширение представительства государства, и я бы не рекомендовал его здесь. Однако, если вам интересна эта идея, вы можете использовать свою проблему для изучения POMDP. Вот недавний документ (от команды Google Deep Mind, 2015), в котором рассматриваются два алгоритма RL в сочетании с RNN для решения POMDP.

Q3: Я искал Q-learning с повторением опыта как решение для работы с нестационарными средами, поскольку оно декоррелирует последовательные обновления. Это правильное использование метода или это больше связано с эффективностью обучения?

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

Что вам может понадобиться, это посмотреть на приближение функции, если число состояний увеличивается до достаточно большого числа. Например, если вы хотите , чтобы справиться с любым бэк-трекингом и имеет сложные поощрения модифицирующего правило, треки каждый посетил место, то ваше состояние может меняться от одного номера местоположения на карту с указанием посещенных мест. Так, например, он может перейти от состояний для мира сетки к карте состояний показывающей посещенные квадраты. Это слишком высокое значение для отслеживания в таблице значений, поэтому вы обычно будете использовать нейронную сеть (или сверточную нейронную сеть) для оценки значений состояния.8 × 8 2 64648×8264

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

Нил Слэйтер
источник
Если среда является нестационарной, то как вы справляетесь с тем фактом, что в примере с сеточным миром пребывание в состоянии в момент времени t = 1 не совпадает с состоянием в этом состоянии в момент времени t = 2? Если вы рассматриваете их как отдельные состояния, тогда, несомненно, размерность вашего пространства состояний просто взорвется?
trytolearn
@tringtolearn: вся суть марковского государства заключается в том, что оно охватывает все важные детали того, как MDP будет развиваться с этого момента. Как правило, нахождение в состоянии при t = 1 не отличается от нахождения в том же состоянии при t = 2 с точки зрения ожидаемого будущего вознаграждения и переходов между состояниями. Если вы столкнетесь с правилами, основанными на значении t, то вы поместите t в состояние. Это может произойти, если вы можете получить вознаграждение на любом временном шаге, но количество временных шагов ограничено - например, эпизод всегда заканчивается при t = 10. В этом случае знание вашего оставшегося времени может быть важным
Нил Слэйтер
@NeilSlater Вы можете расширить идеи POMDP и RNN в своем ответе? Они звучат интересно. И если возможно, приведите соответствующие источники, потому что иногда трудно ориентироваться в литературе. Мне действительно не нравится идея сохранения последовательности посещенных состояний, хотя это единственное, о чем я мог думать до сих пор, поэтому я ищу другие варианты. Таким образом, модель усложняется, учитывая, что мне нужно ввести очень простое правило. Я не уверен, упускаю ли я что-то очень очевидное или просто не использую правильную модель и формулировку.
Voltronika
@NeilSlater Разве это не может помочь с помощью таких вещей, как методы градиента политики? На практике вы знаете, что является стандартом для решения таких проблем?
попытка обучения
1
@Voltronika Я расширил ответ, добавив параграф о POMDP. Обратите внимание, что создание вашей проблемы в качестве POMDP значительно усложняет работу и решение, чем расширение состояния для включения подходящей памяти посещаемых мест. Поэтому я предлагаю вам изучить это только в том случае, если целью является изучение POMDP.
Нил Слэйтер
0

Q1: Q Learning - это онлайновый подкрепляющий алгоритм обучения, который хорошо работает со стационарной средой. Это может также использоваться с нестационарной моделью с условием, что модель (функция вознаграждения и вероятности перехода) не изменяется быстро.

Халид Ибрагим
источник