Sobes.tech
Middle — Senior
22

Что такое SARSA и чем он отличается от Q-learning?

Companies where asked
Магнит
Rubbles

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 — более агрессивным в поиске оптимальной стратегии.