Model-free Policy Iteration with TD : SARSA
In questo caso, in ottica di controllo, si procederà in modo simile a quanto già visto, inizializzando una policy \(\pi\) e iterando valutazione, per calolare \(Q^\pi\) utilizzando TD aggiornata con la \(\epsilon\)-greedy policy, e miglioramento, come nel caso del MC policy improvement ponendo \(\pi=\epsilon\text{-greedy}(Q^\pi)\)
L'algoritmo SARSA calcola una stima di Q della policy utilizzata per agire
Vediamo che in questo caso abbiamo un target \(r_t + \gamma Q(s_{t+1}, a_{t+1})\) on-policy per l'aggiornamento di \(Q(s_t, a_t)\) poichè utilizza il vero stato e la vera azione che otterremo seguendo la policy utilizzata. Chiaramente se \(s_{t+2}\) è uno stato finale si resetta l'episodio.