# Algorisme crític de l'actor

L' algorisme crític de l'actor (AC) és una família d'algoritmes d'aprenentatge de reforç (RL) que combinen algorismes de RL basats en polítiques com els mètodes de gradient de polítiques i algorismes de RL basats en valors com ara la iteració de valors, Q-learning, SARSA i TD. aprenentatge.
Un algorisme d'AC consta de dos components principals: un " actor " que determina quines accions s'ha de dur a terme segons una funció política, i un " crític " que avalua aquestes accions segons una funció de valor. Alguns algorismes d'AC estan a la política, d'altres no a la política. Alguns s'apliquen a espais d'acció continus o discrets. Alguns funcionen en ambdós casos.

## Visió general

Els mètodes crítics amb l'actor es poden entendre com una millora respecte als mètodes de gradient polític pur com REINFORCE mitjançant la introducció d'una línia de base.

### Actor

L'actor utilitza una funció política $\pi (a|s)$, mentre que el crític estima la funció de valor $V(s)$, la funció Q-acció-valor $Q(s,a)$, la funció d'avantatge $A(s,a)$, o qualsevol combinació d'aquests.
L'actor és una funció parametritzada $\pi _{\theta }$, on $\theta$ són els paràmetres de l'actor. L'actor pren com a argument l'estat de l'entorn $s$ i produeix una distribució de probabilitat $\pi _{\theta }(\cdot |s)$.
Si l'espai d'acció és discret, aleshores $\sum _{a}\pi _{\theta }(a|s)=1$. Si l'espai d'acció és continu, aleshores $\int _{a}\pi _{\theta }(a|s)da=1$.
L'objectiu de l'optimització de les polítiques és millorar l'actor. És a dir, trobar-ne $\theta$ que maximitza la recompensa episòdica esperada $J(\theta )$ : $J(\theta )=\mathbb {E} _{\pi _{\theta }}\left[\sum _{t=0}^{T}\gamma ^{t}r_{t}\right]$ on $\gamma$ és el factor de descompte, $r_{t}$ és la recompensa al pas $t$, i $T$ és l'horitzó temporal (que pot ser infinit).
L'objectiu del mètode del gradient de polítiques és optimitzar $J(\theta )$ per ascens de gradient en el gradient de política $\nabla J(\theta )$.
Tal com es detalla a la pàgina del mètode de gradient de política, hi ha molts estimadors imparcials del gradient de política: $\nabla _{\theta }J(\theta )=\mathbb {E} _{\pi _{\theta }}\left[\sum _{0\leq j\leq T}\nabla _{\theta }\ln \pi _{\theta }(A_{j}|S_{j})\cdot \Psi _{j}{\Big |}S_{0}=s_{0}\right]$ on Ψ$_j${\textstyle \Psi _{j}} és una suma lineal dels següents:
* ∑$_{0≤i≤T}$(γ$^i$R$_i$){\textstyle \sum _{0\leq i\leq T}(\gamma ^{i}R_{i})}.
* γ$^j$∑$_{j≤i≤T}$(γ$^{i−j}$R$_i$){\textstyle \gamma ^{j}\sum _{j\leq i\leq T}(\gamma ^{i-j}R_{i})} : l'algoritme REINFORCE.
* γ$^j$∑$_{j≤i≤T}$(γ$^{i−j}$R$_i$)−b(S$_j$){\textstyle \gamma ^{j}\sum _{j\leq i\leq T}(\gamma ^{i-j}R_{i})-b(S_{j})} : l'algoritme REINFORCE amb la línia de base. Aquí $b$ és una funció arbitrària.
* γ$^j$(R$_j$+γV$^{πθ}$(S$_{j+1}$)−V$^{πθ}$(S$_j$)){\textstyle \gamma ^{j}\left(R_{j}+\gamma V^{\pi _{\theta }}(S_{j+1})-V^{\pi _{\theta }}(S_{j})\right)} : TD(1) aprenentatge.
* γ$^j$Q$^{πθ}$(S$_j$, A$_j$){\textstyle \gamma ^{j}Q^{\pi _{\theta }}(S_{j}, A_{j})}.
* γ$^j$A$^{πθ}$(S$_j$, A$_j$){\textstyle \gamma ^{j}A^{\pi _{\theta }}(S_{j}, A_{j})} : Avantatge actor-crític (A2C).
* γ$^j$(R$_j$+γR$_{j+1}$+γ$^2$V$^{πθ}$(S$_{j+2}$)−V$^{πθ}$(S$_j$)){\textstyle \gamma ^{j}\left(R_{j}+\gamma R_{j+1}+\gamma ^{2}V^{\pi _{\theta }}(S_{j+2})-V^{\pi _{\theta }}(S_{j})\right)} : aprenentatge TD(2).
* γ$^j$(∑$_{k=0}$$^{n−1}$γ$^k$R$_{j+k}$+γ$^n$V$^{πθ}$(S$_{j+n}$)−V$^{πθ}$(S$_j$)){\textstyle \gamma ^{j}\left(\sum _{k=0}^{n-1}\gamma ^{k}R_{j+k}+\gamma ^{n}V^{\pi _{\theta }}(S_{j+n})-V^{\pi _{\theta }}(S_{j})\right)} : aprenentatge TD(n).
* γ$^j$∑$_{n=1}$$^∞$ λ$^{n−1}$/1−λ ⋅(∑$_{k=0}$$^{n−1}$γ$^k$R$_{j+k}$+γ$^n$V$^{πθ}$(S$_{j+n}$)−V$^{πθ}$(S$_j$)){\textstyle \gamma ^{j}\sum _{n=1}^{\infty }{\frac {\lambda ^{n-1}}{1-\lambda }}\cdot \left(\sum _{k=0}^{n-1}\gamma ^{k}R_{j+k}+\gamma ^{n}V^{\pi _{\theta }}(S_{j+n})-V^{\pi _{\theta }}(S_{j})\right)} : aprenentatge TD(λ), també conegut com a GAE (estimació d'avantatge generalitzada). Això s'obté mitjançant una suma exponencial dels termes d'aprenentatge TD(n).

### Crític

En els estimadors no esbiaixats donats anteriorment, determinades funcions com ara $V^{\pi _{\theta }},Q^{\pi _{\theta }},A^{\pi _{\theta }}$ aparèixer. Aquests són aproximats per la crítica. Com que totes aquestes funcions depenen de l'actor, el crític ha d'aprendre al costat de l'actor. La crítica s'aprèn mitjançant algorismes de RL basats en valors.
Per exemple, si el crític està estimant la funció estat-valor $V^{\pi _{\theta }}(s)$, llavors es pot aprendre mitjançant qualsevol mètode d'aproximació de funció de valor. Sigui el crític un aproximador de funcions $V_{\phi }(s)$ amb paràmetres $\phi$.
L'exemple més senzill és l'aprenentatge TD(1), que entrena el crític per minimitzar l'error TD(1): $\delta _{i}=R_{i}+\gamma V_{\phi }(S_{i+1})-V_{\phi }(S_{i})$ Els paràmetres crítics s'actualitzen mitjançant la baixada del gradient a l'error TD al quadrat: $\phi \leftarrow \phi -\alpha \nabla _{\phi }(\delta _{i})^{2}=\phi +\alpha \delta _{i}\nabla _{\phi }V_{\phi }(S_{i})$ on $\alpha$ és la taxa d'aprenentatge. Tingueu en compte que el gradient es pren respecte al $\phi$ en $V_{\phi }(S_{i})$ només, des del $\phi$ en $\gamma V_{\phi }(S_{i+1})$ constitueix un objectiu en moviment, i el gradient no es pren respecte a això. Aquesta és una font d'error habitual en les implementacions que utilitzen la diferenciació automàtica i requereix "aturar el gradient" en aquest punt.
De la mateixa manera, si el crític està estimant la funció acció-valor $Q^{\pi _{\theta }}$, llavors es pot aprendre mitjançant Q-learning o SARSA. En SARSA, el crític manté una estimació de la funció Q, parametritzada per $\phi$, denotada com $Q_{\phi }(s,a)$. L'error de diferència temporal es calcula llavors com $\delta _{i}=R_{i}+\gamma Q_{\theta }(S_{i+1},A_{i+1})-Q_{\theta }(S_{i},A_{i})$. A continuació, la crítica és actualitzada per $\theta \leftarrow \theta +\alpha \delta _{i}\nabla _{\theta }Q_{\theta }(S_{i},A_{i})$ L'avantatge crític es pot entrenar entrenant tant una funció Q $Q_{\phi }(s,a)$ i una funció de valor d'estat $V_{\phi }(s)$, llavors deixa $A_{\phi }(s,a)=Q_{\phi }(s,a)-V_{\phi }(s)$. Tot i que, és més comú entrenar només una funció de valor d'estat $V_{\phi }(s)$, aleshores estimeu l'avantatge per $A_{\phi }(S_{i},A_{i})\approx \sum _{j\in 0:n-1}\gamma ^{j}R_{i+j}+\gamma ^{n}V_{\phi }(S_{i+n})-V_{\phi }(S_{i})$ Aquí, $n$ és un nombre enter positiu. Com més alt $n$ és a dir, com més baix és el biaix en l'estimació de l'avantatge, però al preu d'una major variància.
L'estimació d'avantatge generalitzada (GAE) introdueix un hiperparàmetre $\lambda$ que interpola suaument entre els retorns de Montecarlo ($\lambda =1$, gran variància, sense biaix) i aprenentatge TD en 1 pas ( $\lambda =0$, baixa variància, alt biaix). Aquest hiperparàmetre es pot ajustar per triar la compensació òptima de biaix-variància en l'estimació d'avantatges. Utilitza una mitjana exponencial de rendiments de n passos amb $\lambda$ sent la força de la decadència.

## Variants

* Asynchronous Advantage Actor-Critic (A3C) : versió paral·lela i asíncrona d'A2C.
* Soft Actor-Critic (SAC) : Incorpora maximització d'entropia per millorar l'exploració.
* Deep Deterministic Policy Gradient (DDPG) : Especialitzat per a espais d'acció contínua.

## Referències

* ↑ Arulkumaran, Kai; Deisenroth, Marc Peter; Brundage, Miles; Bharath, Anil Anthony IEEE Signal Processing Magazine, 34, 6, 11-2017, pàg. 26–38. arXiv: 1708.05866. Bibcode: 2017ISPM...34...26A. DOI: 10.1109/MSP.2017.2743240. ISSN: 1053-5888.
* ↑ Konda, Vijay; Tsitsiklis, John Advances in Neural Information Processing Systems, 12, 1999.
* ↑ Karunakaran, Dhanoop. «The actor-Critic Reinforcement Learning algorithm» (en anglès), 30-09-2020. [Consulta: 29 gener 2025].
* ↑ «Actor-Critic Algorithm in Reinforcement Learning» (en anglès americà), 13-12-2023. [Consulta: 29 gener 2025].
* ↑ Schulman, John; Moritz, Philipp & Levine, Sergey et al. (2018-10-20), High-Dimensional Continuous Control Using Generalized Advantage Estimation