Sobes.tech
Middle — Senior

Какво е SARSA и как се различава от Q-learning?

sobes.tech AI

Отговор от AI

SARSA (Държава-Действие-Награда-Държава-Действие) и Q-обучението са алгоритми за усилено обучение, които използват 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-обучението, актуализацията се извършва въз основа на максималната стойност Q сред всички възможни действия в следващото състояние (off-policy), независимо от действието, което е избрал агентът. Формулата:

    [ Q(s,a) \leftarrow Q(s,a) + \alpha \big(r + \gamma \max_{a'} Q(s', a') - Q(s,a)]

Обобщение:

  • SARSA взема предвид политиката на агента при актуализация (той актуализира стойностите Q според това, как агентът реално действа).
  • Q-обучението се стреми към оптимална политика, актуализирайки стойностите Q въз основа на максимума, дори ако агентът действа по различен начин.

Това води до това, че SARSA може да бъде по-консервативен и да взема предвид риска, докато Q-обучението е по-агресивно в търсенето на оптимална стратегия.