Что такое SARSA и чем он отличается от Q-learning?
Answer from AI
sobes.tech AI
SARSA (State-Action-Reward-State-Action) и Q-learning — это алгоритмы обучения с подкреплением, которые используют Q-функцию для оценки качества действий в состояниях, но отличаются по способу обновления Q-значений.
Основное отличие:
-
В SARSA обновление Q-значения происходит на основе действия, которое агент реально выбрал в следующем состоянии (то есть политика on-policy). Формула обновления:
[ Q(s,a) \leftarrow Q(s,a) + \alpha \big(r + \gamma Q(s', a') - Q(s,a)\big) ]
где (a') — действие, выбранное согласно текущей политике в состоянии (s').
-
В Q-learning обновление происходит на основе максимального Q-значения среди всех возможных действий в следующем состоянии (off-policy), независимо от того, какое действие агент выбрал. Формула:
[ Q(s,a) \leftarrow Q(s,a) + \alpha \big(r + \gamma \max_{a'} Q(s', a') - Q(s,a)\big) ]
Итого:
- SARSA учитывает политику агента при обновлении (он обновляет Q-значения согласно тому, как агент реально действует).
- Q-learning стремится к оптимальной политике, обновляя Q-значения на основе максимума, даже если агент действует иначе.
Это приводит к тому, что SARSA может быть более консервативным и учитывать риск, а Q-learning — более агрессивным в поиске оптимальной стратегии.