Q-learning и SARSA с жадным отбором эквивалентны?
Разница между Q-learning и SARSA заключается в том, что Q-learning сравнивает текущее состояние и наилучшее возможное следующее состояние, тогда как SARSA сравнивает текущее состояние с фактическим следующим состоянием.
Если используется политика жадного выбора, то есть действие с наибольшим значением действия выбирается 100% времени, идентичны ли тогда SARSA и Q-learning?
2 ответа
Ну не совсем. Ключевое различие между SARSA и Q-learning заключается в том, что SARSA - это алгоритм на основе политики (он следует политике обучения), а Q-learning - это алгоритм вне политики (он может следовать любой политике (которая удовлетворяет некоторым требованиям конвергенции).,
Обратите внимание, что в следующем псевдокоде обоих алгоритмов SARSA выбирает 'и s', а затем обновляет Q-функцию; в то время как Q-learning сначала обновляет Q-функцию, а следующее действие, которое нужно выполнить, выбирается на следующей итерации, полученной из обновленной Q-функции и необязательно равной a ', выбранной для обновления Q.
В любом случае оба алгоритма требуют исследования (т. Е. Выполнения действий, отличных от жадных действий), чтобы сходиться.
Псевдокод SARSA и Q-learning был извлечен из книги Саттона и Барто " Обучение усилению: введение" (HTML версия)
Если мы будем использовать только жадную политику, исследования не будет, поэтому обучение не будет работать. В предельном случае, когда эпсилон становится равным 0 (например, 1/ т), тогда SARSA и Q-Learning сходятся к оптимальной политике q*. Однако с исправлением epsilon SARSA сойдет к оптимальной эпсилон-жадной политике, а Q-Learning сойдет к оптимальной политике q*.
Я пишу небольшую заметку здесь, чтобы объяснить различия между ними и надеюсь, что это может помочь:
https://tcnguyen.github.io/reinforcement_learning/sarsa_vs_q_learning.html
Если оптимальная политика уже сформирована, SARSA с чисто жадным алгоритмом и Q-learning являются одинаковыми.
Однако в процессе обучения у нас есть только политика или неоптимальная политика, SARSA с чисто жадным алгоритмом будет сходиться только к "наилучшей" неоптимальной из доступных политик, не пытаясь исследовать оптимальную, в то время как Q-learning подойдет из-за , что означает, что он пробует все доступные действия и выбирает максимальное.