Как выбрать действие в обучении TD(0)

Сейчас я читаю Reinforcement Learning: An introduction книгу Саттона. После прочтения главы 6.1 я захотел реализовать алгоритм TD(0) RL для этой настройки:

введите здесь описание изображения введите здесь описание изображения

Для этого я попытался реализовать представленный здесь псевдокод: введите здесь описание изображения

При этом я задался вопросом, как сделать этот шаг A <- action given by π for S: я могу выбрать оптимальное действие A для моего текущего состояния S? Поскольку значение функции V(S) зависит только от состояния, а не от действия, я не знаю, как это можно сделать.

Я нашел этот вопрос (где Я получил изображения из ), которые относятся к тому же упражнению, но здесь действие просто выбирается случайным образом, а не выбирается политикой действия π.

Редактировать: Или это неполный псевдокод, так что я тоже должен аппроксимировать action-value function Q(s, a) другим способом?


person zimmerrol    schedule 21.07.2017    source источник


Ответы (1)


Вы правы, вы не можете выбрать действие (или вывести политику π) только из функции значения V(s), потому что, как вы заметили, она зависит только от состояния s.

Ключевая концепция, которую вы, вероятно, здесь упускаете, заключается в том, что обучение TD(0) представляет собой алгоритм для вычисления функции значения данной политики. Таким образом, вы предполагаете, что ваш агент следует известной политике. В случае задачи случайного блуждания политика состоит в случайном выборе действий.

Если вы хотите изучить политику, вам необходимо оценить функцию «действие-ценность» Q(s,a). Существует несколько методов обучения Q(s,a), основанных на обучении с временной разницей, например, SARSA и Q-обучение.

В книге Sutton's RL авторы различают два вида проблем: проблемы прогнозирования и проблемы контроля. Первый относится к процессу оценки функции ценности данной политики, а второй - к оценке политики (часто с помощью функций действия-ценности). Вы можете найти ссылку на эти концепции в начальной части главы 6:

Как обычно, мы начнем с рассмотрения проблемы оценки или прогнозирования политики, т. е. оценки функции ценности для данной политики. Для задачи управления (поиск оптимальной политики) методы DP, TD и Монте-Карло используют некоторые варианты обобщенной итерации политики (GPI). Различия в методах — это, прежде всего, различия в подходах к проблеме прогнозирования.

person Pablo EM    schedule 21.07.2017
comment
Хорошо, большое спасибо. Я думал, что политика π — это просто функция, которая дает для данного состояния оптимальное действие, но для этого я должен знать все значения Q, так что политика — это не только процедура выбора наилучшего действия, но и внутренняя отображение кортежей (действия, состояния) в их значение. Это правильно? - person zimmerrol; 21.07.2017
comment
Ну, не совсем так, политика π — это сопоставление состояний с действиями. В частности, политика π представляет собой отображение каждого состояния s и действия a на вероятность совершения действия a, когда агент находится в состоянии s. Оптимальная политика — это политика, которая максимизирует вознаграждение, получаемое агентом в долгосрочной перспективе. Функция «действие-ценность» Q для данной политики оценивает долгосрочное вознаграждение, полученное при выполнении действия a в состоянии s. Некоторые методы, такие как Q-обучение, работают, оценивая оптимальную функцию Q, а затем выводя из нее оптимальную политику. - person Pablo EM; 21.07.2017
comment
Хорошо, теперь это имеет смысл и для меня. Благодарю вас! У меня только что возник еще один вопрос: я завершил приведенный выше пример и смог вычислить теоретические ожидаемые значения V при использовании gamma = 1.0. Но когда я уменьшил гамму до 0,9 распределение изменилось и я получил значения V = 0.063 0.144 0.262 0.431 0.694 - как это можно объяснить? - person zimmerrol; 21.07.2017
comment
Большой! :) Я не знаю, правильно ли я понял ваш вопрос, но если параметр gamma изменится, функция значения тоже должна измениться, верно? Помните, что функция ценности определяется как ожидаемая доходность R, которая зависит от gamma. Затем ожидается изменение V при замене gamma = 1.0 на gamma = 0.9. - person Pablo EM; 21.07.2017
comment
Эм... так ли это? Я немного запутался, потому что в книге Саттона в примере 6.2 (см. изображение выше) говорится, что истинные значения функции значений V могут быть вычислены до 1/6, 2/6, ... без упоминания значения для gamma. Поэтому я подумал, что V не зависит от gamma и что gamma просто определяет скорость, с которой алгоритм сходится к истинным значениям. - person zimmerrol; 21.07.2017
comment
Да, это так. В примере говорится, что задача не дисконтирована, что подразумевает gamma = 1.0. Вам необходимо понимать концепцию возврата, как со скидкой, так и без скидки (incompleteideas.net/sutton/ книга/электронная книга/node30.html). Затем убедитесь, что вы также понимаете связь между возвратами и функциями ценности (incompleteideas.net/sutton). /book/ebook/node34.html). Наконец, параметр, который можно рассматривать как способ управления скоростью сходимости, — это alpha (incompleteideas .net/sutton/book/ebook/node61.html ‹ -- при необходимости перейдите по ссылке на уравнение (2.5) во втором абзаце). - person Pablo EM; 21.07.2017