Czym jest SARSA i czym różni się od Q-learning?
sobes.tech AI
Odpowiedź od AI
SARSA (State-Action-Reward-State-Action) i Q-learning to algorytmy uczenia się przez wzmacnianie, które wykorzystują funkcję Q do oceny jakości działań w stanach, ale różnią się sposobem aktualizacji wartości Q.
Główna różnica:
-
W SARSA, aktualizacja wartości Q opiera się na akcji, którą agent faktycznie wybrał w następnym stanie (czyli polityka on-policy). Wzór aktualizacji:
[ Q(s,a) \leftarrow Q(s,a) + \alpha \big(r + \gamma Q(s', a') - Q(s,a)\big) ]
gdzie (a') to akcja wybrana zgodnie z obecną polityką w stanie (s').
-
W Q-learning, aktualizacja opiera się na maksymalnej wartości Q spośród wszystkich możliwych działań w następnym stanie (off-policy), niezależnie od tego, jaką akcję wybrał agent. Wzór:
[ Q(s,a) \leftarrow Q(s,a) + \alpha \big(r + \gamma \max_{a'} Q(s', a') - Q(s,a)\big) ]
Podsumowanie:
- SARSA uwzględnia politykę agenta podczas aktualizacji (aktualizuje wartości Q zgodnie z tym, jak agent faktycznie działa).
- Q-learning dąży do optymalnej polityki, aktualizując wartości Q na podstawie maksimum, nawet jeśli agent działa inaczej.
To sprawia, że SARSA może być bardziej konserwatywne i uwzględniać ryzyko, podczas gdy Q-learning jest bardziej agresywny w poszukiwaniu optymalnej strategii.