Reinforcement Learning, Active Inference e Auto-organizzazione
Questa lezione presenta in modo unitario tre idee strettamente collegate: il reinforcement learning come teoria del controllo adattivo, l’active inference come teoria dell’inferenza e dell’azione basata su modelli generativi, e l’auto-organizzazione come emergere di ordine collettivo da interazioni locali.
L’obiettivo è duplice: costruire la matematica in modo rigoroso, mostrando da dove provengono le principali espressioni e perché vengono scelte, e mantenere sempre un’interpretazione fisica e intuitiva, soprattutto in relazione alla materia attiva e ai sistemi collettivi.
1. Il problema generale: controllo, inferenza e auto-organizzazione
Consideriamo un sistema composto da uno o più agenti che interagiscono con un ambiente. Ciascun agente riceve informazioni sul mondo, sceglie un’azione, modifica l’ambiente e riceve nuove informazioni. In un sistema collettivo questa sequenza si ripete simultaneamente per molti agenti.
La struttura di base è: osservazione → decisione → azione → modifica del mondo → nuova osservazione.
Il punto cruciale è che la decisione di ogni agente modifica anche ciò che gli altri agenti osserveranno successivamente. Per questo, quando molti agenti interagiscono, una legge locale può generare un comportamento globale che non era esplicitamente programmato.
Tre domande diverse
- Reinforcement learning: quale regola di azione massimizza un obiettivo cumulativo?
- Active inference: quali stati del mondo sono plausibili, quali osservazioni future ci aspettiamo e quali azioni rendono probabili outcome preferiti e informativi?
- Auto-organizzazione: come può un comportamento globale emergere da regole locali e feedback distribuiti?
Questi tre punti possono essere collegati perché una regola di controllo appresa o inferita a livello locale diventa parte della dinamica fisica del sistema collettivo.
2. Notazione e significato delle variabili
- \(t\): indice temporale.
- \(s_t\): stato del sistema al tempo \(t\).
- \(o_t\): osservazione disponibile all’agente al tempo \(t\).
- \(a_t\): azione eseguita al tempo \(t\).
- \(\pi(a|s)\): probabilità di scegliere l’azione \(a\) nello stato \(s\).
- \(\theta\): parametri della policy.
- \(r_t\): reward al tempo \(t\).
- \(\gamma\): fattore di sconto temporale, \(0\le\gamma<1\).
- \(V^\pi(s)\): valore atteso dello stato \(s\).
- \(Q^\pi(s,a)\): valore atteso dell’azione \(a\) nello stato \(s\).
- \(A^\pi(s,a)\): advantage.
- \(p(\cdot)\): distribuzione del modello generativo.
- \(q(\cdot)\): distribuzione approssimata o credenza.
- \(F\): variational free energy.
- \(G(\pi)\): expected free energy.
- \(D_{\mathrm{KL}}[q\Vert p]\): divergenza di Kullback–Leibler.
- \(H[q]\): entropia di Shannon.
Nei sistemi collettivi useremo inoltre \(\mathbf r_i\) per la posizione dell’agente \(i\), \(\theta_i\) per la sua orientazione, \(\mathbf p_i=(\cos\theta_i,\sin\theta_i)\) per il versore di orientazione, \(\rho(\mathbf x,t)\) per la densità locale, \(\mathbf P(\mathbf x,t)\) per la polarizzazione locale e \(\Phi\) per l’ordine globale.
3. Auto-organizzazione e materia attiva
3.1 Teoria di base
Un sistema è auto-organizzante quando sviluppa strutture o regolarità macroscopiche a partire da interazioni locali, senza che un controllore esterno imponga direttamente la configurazione finale. Gli ingredienti tipici sono interazioni locali, non linearità, feedback, rumore, scambio di informazione e rottura spontanea di simmetria.
3.2 Materia attiva
La materia attiva è costituita da elementi che consumano energia per produrre movimento. Una dinamica microscopica semplificata per la particella \(i\) è
\[ \dot{\mathbf r}_i=v_i\mathbf p_i+\mu\sum_{j\neq i}\mathbf F_{ij}+\sqrt{2D_t}\,\boldsymbol\xi_i. \]Qui \(\mathbf r_i\) è la posizione, \(v_i\) la velocità di auto-propulsione, \(\mathbf p_i\) il versore di orientazione, \(\mu\) la mobilità, \(\mathbf F_{ij}\) la forza di interazione, \(D_t\) la diffusione traslazionale e \(\boldsymbol\xi_i\) un rumore gaussiano.
L’orientazione può evolvere come
\[ \dot\theta_i=u_i+\sqrt{2D_r}\,\eta_i, \]dove \(u_i\) è il comando di controllo rotazionale, \(D_r\) la diffusione rotazionale ed \(\eta_i\) il rumore.
3.3 Obiettivi pratici
Il controllo può servire a trasportare uno sciame, creare cluster, evitare collisioni, generare mixing, favorire flocking o milling, oppure guidare agenti verso una sorgente chimica. La domanda pratica diventa: come scegliere \(u_i=u_i(o_i)\), dove \(o_i\) è l’informazione locale disponibile?
4. Teoria di base: MDP, POMDP e controllo stocastico
4.1 MDP
Un Markov Decision Process è definito da uno spazio degli stati \(S\), uno spazio delle azioni \(A\), una dinamica \(P(s’|s,a)\), un reward \(r(s,a,s’)\) e una policy \(\pi(a|s)\). La proprietà di Markov è
\[ P(s_{t+1}|s_t,a_t,s_{t-1},a_{t-1},\ldots)=P(s_{t+1}|s_t,a_t). \]Serve a comprimere tutta l’informazione rilevante nello stato corrente.
4.2 POMDP
Se lo stato non è direttamente osservabile, l’agente riceve \(o_t\) secondo \(p(o_t|s_t)\). Si introduce allora una credenza
\[ b_t(s)=P(s_t=s|o_{1:t},a_{1:t-1}). \]Questa distribuzione riassume ciò che l’agente pensa sullo stato nascosto e crea un ponte naturale verso active inference.
5. La policy \(\pi(a|s)\) come distribuzione di controllo
Una policy stocastica soddisfa
\[ \pi(a|s)\ge0,\qquad \sum_a\pi(a|s)=1. \]Usare una distribuzione, invece di una singola azione deterministica, permette esplorazione, robustezza al rumore, ottimizzazione differenziabile e diversità comportamentale fra agenti identici.
5.1 Media pesata
Se \(Q^\pi(s,a)\) misura la qualità futura dell’azione \(a\), il valore medio dello stato è
\[ \boxed{V^\pi(s)=\sum_a\pi(a|s)Q^\pi(s,a).} \]Questa formula è semplicemente un valore atteso: le conseguenze delle azioni vengono pesate con le probabilità con cui la policy le sceglie.
5.2 Esempio
Per \(a\in\{L,F,R\}\), supponiamo \(\pi(L|s)=0.2\), \(\pi(F|s)=0.5\), \(\pi(R|s)=0.3\), e \(Q(s,L)=1\), \(Q(s,F)=4\), \(Q(s,R)=2\). Allora
\[ V(s)=0.2\cdot1+0.5\cdot4+0.3\cdot2=2.8. \]6. Ritorno, \(V^\pi\), \(Q^\pi\) e advantage
6.1 Perché non basta il reward immediato?
Il reward immediato non basta perché un’azione può avere conseguenze ritardate. Una particella, per esempio, può temporaneamente deviare dalla direzione desiderata per evitare un ostacolo o per entrare in una configurazione collettiva più favorevole.
Per questo si introduce il ritorno:
\[ G_t^{\mathrm{RL}} = r_t+\gamma r_{t+1}+\gamma^2r_{t+2}+\cdots. \]Qui \(G_t^{\mathrm{RL}}\) è il ritorno cumulativo a partire dal tempo \(t\), \(r_t\) è il reward al tempo \(t\) e \(\gamma\) è il fattore di sconto.
6.2 Perché usare \(\gamma\)?
Il fattore \(\gamma\), con \(0\le\gamma<1\), serve a dare un peso progressivamente minore alle ricompense lontane nel tempo, a controllare quanto l'agente è lungimirante e, in molti problemi a orizzonte infinito, a rendere convergente la somma.
6.3 Valore di stato \(V^\pi(s)\)
\[ V^\pi(s) = \mathbb E_\pi \left[ G_t^{\mathrm{RL}} \mid S_t=s \right]. \]\(V^\pi(s)\) è il ritorno futuro medio quando ci troviamo nello stato \(s\) e da quel momento seguiamo la policy \(\pi\).
6.4 Valore di azione \(Q^\pi(s,a)\)
\[ \boxed{ Q^\pi(s,a) = \mathbb E_\pi \left[ G_t^{\mathrm{RL}} \mid S_t=s,\ A_t=a \right]. } \]\(Q^\pi(s,a)\) è quindi il ritorno futuro medio quando fissiamo lo stato corrente \(s\) e la prima azione \(a\), e successivamente continuiamo secondo la policy \(\pi\).
6.5 Perché \(Q^\pi(s,a)\) è una media e non un singolo ritorno?
È essenziale distinguere il ritorno osservato \(G_t^{\mathrm{RL}}\) dalla funzione \(Q^\pi(s,a)\).
Il ritorno
\[ G_t^{\mathrm{RL}} = r_t+\gamma r_{t+1}+\gamma^2r_{t+2}+\cdots \]è il valore cumulativo ottenuto lungo una specifica traiettoria. È quindi una singola realizzazione di una variabile casuale.
Invece
\[ Q^\pi(s,a) = \mathbb E_\pi \left[ G_t^{\mathrm{RL}} \mid S_t=s,\ A_t=a \right] \]fa una media su tutti i possibili futuri compatibili con la condizione iniziale \(S_t=s\), \(A_t=a\).
Perché possono esistere futuri diversi pur partendo dallo stesso stato e scegliendo la stessa azione? Per due ragioni principali.
- La dinamica dell’ambiente può essere stocastica: \(P(s_{t+1}|s_t,a_t)\) può assegnare probabilità positive a più stati successivi.
- Dopo la prima azione, le azioni future possono essere estratte da una policy stocastica \(\pi(a|s)\).
Per esempio:
\[ (s,a) \rightarrow \begin{cases} \tau_1 &\Rightarrow G_t^{(1)}=10,\\ \tau_2 &\Rightarrow G_t^{(2)}=4,\\ \tau_3 &\Rightarrow G_t^{(3)}=7. \end{cases} \]Se le tre traiettorie fossero equiprobabili:
\[ Q^\pi(s,a) = \frac{10+4+7}{3} = 7. \]Quindi:
\[ \boxed{ G_t^{\mathrm{RL}} = \text{ritorno di una singola traiettoria} } \]mentre
\[ \boxed{ Q^\pi(s,a) = \text{ritorno medio atteso dato }(s,a). } \]Se ripetessimo la stessa situazione molte volte e osservassimo \(G_t^{(1)},\ldots,G_t^{(N)}\), una stima Monte Carlo sarebbe
\[ \hat Q^\pi(s,a) = \frac1N \sum_{k=1}^{N} G_t^{(k)}. \]Nel caso speciale in cui sia la dinamica sia la policy futura siano completamente deterministiche, fissare \(s\) e \(a\) determina una sola traiettoria. Solo in quel caso:
\[ \boxed{ Q^\pi(s,a) = G_t^{\mathrm{RL}}. } \]6.6 Due livelli di media: prima \(Q\), poi \(V\)
La funzione \(Q^\pi(s,a)\) fa la media sui futuri possibili dopo aver fissato la prima azione. La funzione \(V^\pi(s)\) compie una media ulteriore sulla prima azione scelta dalla policy:
\[ \boxed{ V^\pi(s) = \sum_a \pi(a|s) Q^\pi(s,a). } \]Quindi possiamo leggere:
\[ Q^\pi(s,a) = \text{media sui futuri possibili dato }s,a, \]e poi
\[ V^\pi(s) = \text{media dei }Q^\pi(s,a)\text{ sulle azioni secondo }\pi(a|s). \]6.7 Advantage
\[ \boxed{ A^\pi(s,a) = Q^\pi(s,a)-V^\pi(s). } \]L’advantage misura quanto l’azione \(a\) è migliore o peggiore rispetto alla prestazione media della policy nello stesso stato.
- Se \(A^\pi(s,a)>0\), l’azione è migliore della media.
- Se \(A^\pi(s,a)<0\), è peggiore della media.
- Se \(A^\pi(s,a)\approx0\), è circa equivalente alla media.
7. Equazioni di Bellman
La ricorsione di Bellman nasce dall’identità: valore totale = reward immediato + valore futuro scontato.
\[ \boxed{ V^\pi(s)= \sum_a\pi(a|s)\sum_{s’}P(s’|s,a)\left[r(s,a,s’)+\gamma V^\pi(s’)\right]. } \]\(s\) è lo stato corrente, \(a\) l’azione, \(s’\) lo stato successivo, \(P(s’|s,a)\) la probabilità di transizione e \(r(s,a,s’)\) il reward della transizione.
Analogamente
\[ Q^\pi(s,a)= \sum_{s’}P(s’|s,a)\left[r(s,a,s’)+\gamma\sum_{a’}\pi(a’|s’)Q^\pi(s’,a’)\right]. \]Per il controllo ottimo:
\[ \boxed{ V^*(s)= \max_a\sum_{s’}P(s’|s,a)\left[r(s,a,s’)+\gamma V^*(s’)\right]. } \]8. Perché usare la softmax e come si deriva il suo gradiente
8.1 Dal logit alla probabilità
Una rete neurale può produrre, per ogni azione \(a\), un numero reale \(z_a(s)\), detto logit. Ma una policy deve essere una distribuzione di probabilità:
\[ \pi(a|s)\ge0, \qquad \sum_a\pi(a|s)=1. \]La softmax impone automaticamente entrambi i vincoli:
\[ \boxed{ \pi_\theta(a|s) = \frac{e^{z_a(s)}}{\sum_b e^{z_b(s)}}. } \]L’esponenziale è sempre positivo. La divisione per la somma normalizza poi i pesi. Inoltre:
\[ \frac{\pi(a|s)}{\pi(b|s)} = e^{z_a-z_b}. \]Quindi una differenza additiva fra logits diventa un rapporto moltiplicativo fra probabilità.
8.2 Definiamo il valore medio sotto la policy
Per uno stato fissato \(s\), abbreviamo:
\[ \pi_a\equiv\pi(a|s), \qquad Q_a\equiv Q(s,a). \]Definiamo:
\[ \bar Q = \sum_a\pi_aQ_a. \]Se \(Q_a=Q^\pi(s,a)\), allora \(\bar Q=V^\pi(s)\). Vogliamo capire come cambia \(\bar Q\) quando modifichiamo un logit \(z_k\).
8.3 Derivata della softmax
Definiamo:
\[ Z=\sum_b e^{z_b}. \]Allora:
\[ \pi_a=\frac{e^{z_a}}{Z}. \]Per calcolare \(\partial\pi_a/\partial z_k\), introduciamo la delta di Kronecker:
\[ \delta_{ak} = \begin{cases} 1 & a=k,\\ 0 & a\neq k. \end{cases} \]La derivata del numeratore è:
\[ \frac{\partial e^{z_a}}{\partial z_k} = \delta_{ak}e^{z_a}. \]La derivata del denominatore è:
\[ \frac{\partial Z}{\partial z_k} = e^{z_k}. \]Usando la regola del quoziente:
\[ \frac{\partial\pi_a}{\partial z_k} = \frac{ \delta_{ak}e^{z_a}Z – e^{z_a}e^{z_k} }{ Z^2 }. \]Separando:
\[ \frac{\partial\pi_a}{\partial z_k} = \delta_{ak}\frac{e^{z_a}}{Z} – \frac{e^{z_a}}{Z} \frac{e^{z_k}}{Z}. \]Poiché:
\[ \frac{e^{z_a}}{Z}=\pi_a, \qquad \frac{e^{z_k}}{Z}=\pi_k, \]otteniamo:
\[ \boxed{ \frac{\partial\pi_a}{\partial z_k} = \pi_a(\delta_{ak}-\pi_k). } \]8.4 Interpretazione dei due casi
Se \(a=k\):
\[ \boxed{ \frac{\partial\pi_k}{\partial z_k} = \pi_k(1-\pi_k)>0. } \]Aumentare \(z_k\) aumenta la probabilità dell’azione \(k\).
Se invece \(a\neq k\):
\[ \boxed{ \frac{\partial\pi_a}{\partial z_k} = -\pi_a\pi_k<0. } \]Aumentare \(z_k\) riduce le altre probabilità, perché la somma deve restare uguale a uno.
8.5 Derivazione di \(\partial\bar Q/\partial z_k\)
Partiamo da:
\[ \bar Q = \sum_a\pi_aQ_a. \]Considerando localmente i \(Q_a\) fissati rispetto ai logits:
\[ \frac{\partial\bar Q}{\partial z_k} = \sum_a Q_a \frac{\partial\pi_a}{\partial z_k}. \]Sostituendo la derivata della softmax:
\[ \frac{\partial\bar Q}{\partial z_k} = \sum_a Q_a\pi_a(\delta_{ak}-\pi_k). \]Distribuiamo:
\[ \frac{\partial\bar Q}{\partial z_k} = \sum_aQ_a\pi_a\delta_{ak} – \sum_aQ_a\pi_a\pi_k. \]La delta di Kronecker seleziona solo il termine \(a=k\):
\[ \sum_aQ_a\pi_a\delta_{ak} = Q_k\pi_k. \]Nel secondo termine possiamo raccogliere \(\pi_k\):
\[ \sum_aQ_a\pi_a\pi_k = \pi_k\sum_aQ_a\pi_a = \pi_k\bar Q. \]Quindi:
\[ \frac{\partial\bar Q}{\partial z_k} = \pi_kQ_k-\pi_k\bar Q. \]Raccogliendo \(\pi_k\):
\[ \boxed{ \frac{\partial\bar Q}{\partial z_k} = \pi_k(Q_k-\bar Q). } \]Ripristinando la notazione completa:
\[ \boxed{ \frac{\partial V^\pi(s)}{\partial z_k} = \pi(a_k|s) \left[ Q^\pi(s,a_k)-V^\pi(s) \right]. } \]Ma:
\[ A^\pi(s,a_k) = Q^\pi(s,a_k)-V^\pi(s). \]Quindi:
\[ \boxed{ \frac{\partial V^\pi(s)}{\partial z_k} = \pi(a_k|s)A^\pi(s,a_k). } \]8.6 Significato intuitivo
Se \(Q_k>\bar Q\), allora l’azione \(k\) è migliore della media e il gradiente è positivo: aumentando il logit \(z_k\), aumentiamo la sua probabilità.
Se \(Q_k<\bar Q\), il gradiente è negativo e la probabilità tende a diminuire.
\[ \boxed{ \text{azioni migliori della media} \Rightarrow \text{probabilità maggiore}. } \]8.7 Perché compare \(\log\pi\) nel policy gradient?
Dalla softmax:
\[ \ln\pi_a = z_a-\ln Z. \]Derivando:
\[ \boxed{ \frac{\partial\ln\pi_a}{\partial z_k} = \delta_{ak}-\pi_k. } \]Inoltre:
\[ \frac{\partial\pi_a}{\partial z_k} = \pi_a \frac{\partial\ln\pi_a}{\partial z_k}. \]Questa relazione anticipa direttamente la log-derivative trick usata nel policy gradient.
9. Policy gradient: significato semplice e derivazione matematica
9.1 L’idea fondamentale
Il policy gradient risponde a una domanda semplice:
come dobbiamo modificare i parametri della policy affinché le azioni che hanno funzionato meglio diventino più probabili e quelle che hanno funzionato peggio diventino meno probabili?
La formula centrale è:
\[ \boxed{ \nabla_\theta J = \mathbb E \left[ A^\pi(s,a) \nabla_\theta\ln\pi_\theta(a|s) \right]. } \]La si può leggere come:
\[ \boxed{ \text{policy gradient} = \text{qualità relativa dell’azione} \times \text{direzione per modificarne la probabilità}. } \]9.2 Che cosa rappresenta \(\theta\)?
La policy:
\[ \pi_\theta(a|s) \]dipende da parametri \(\theta\), per esempio i pesi di una rete neurale. Modificando \(\theta\), cambiamo le probabilità delle azioni.
L’obiettivo è:
\[ J(\theta) = \mathbb E_{\pi_\theta}[G]. \]Il gradiente:
\[ \nabla_\theta J \]indica la direzione nello spazio dei parametri che aumenta \(J\). Per gradient ascent:
\[ \theta \leftarrow \theta+\eta\nabla_\theta J, \]dove \(\eta>0\) è il learning rate.
9.3 Significato di \(\nabla_\theta\log\pi_\theta(a|s)\)
La quantità:
\[ \nabla_\theta\log\pi_\theta(a|s) \]indica localmente in quale direzione modificare \(\theta\) per rendere più probabile l’azione \(a\) nello stato \(s\).
\[ \boxed{ \nabla_\theta\log\pi_\theta(a|s) = \text{direzione che aumenta la probabilità di }a. } \]Ma non vogliamo sempre aumentare la probabilità dell’azione osservata. Dobbiamo prima stabilire se quell’azione è stata migliore o peggiore del previsto.
9.4 Il ruolo dell’advantage
\[ A^\pi(s,a) = Q^\pi(s,a)-V^\pi(s). \]Quindi:
- se \(A^\pi(s,a)>0\), l’azione è migliore della media;
- se \(A^\pi(s,a)<0\), è peggiore della media;
- se \(A^\pi(s,a)\approx0\), non c’è una forte ragione per modificarne la probabilità.
L’aggiornamento locale:
\[ \Delta\theta \propto A^\pi(s,a) \nabla_\theta\log\pi_\theta(a|s) \]ha quindi un significato immediato. Se \(A>0\), ci muoviamo nella direzione che rende l’azione più probabile. Se \(A<0\), il segno si inverte e la rendiamo meno probabile.
9.5 Esempio semplice
Supponiamo:
\[ \pi(L|s)=0.2, \qquad \pi(F|s)=0.5, \qquad \pi(R|s)=0.3. \]La particella sceglie \(R\). Dopo aver osservato le conseguenze stimiamo:
\[ Q(s,R)=8, \qquad V(s)=5. \]Quindi:
\[ A(s,R)=8-5=3>0. \]L’aggiornamento è:
\[ \Delta\theta \propto 3\nabla_\theta\log\pi(R|s). \]La rete viene modificata affinché, in condizioni simili, l’azione \(R\) diventi più probabile. Non significa “scegli sempre \(R\)”, ma “aumenta la probabilità di \(R\) perché ha funzionato meglio della media”.
9.6 Perché compare una media nella formula completa?
Una singola esperienza può essere fortunata o sfortunata. Il gradiente corretto è quindi un valore atteso su molte traiettorie, stati e azioni:
\[ \boxed{ \nabla_\theta J = \mathbb E_{\pi_\theta} \left[ A^\pi(s,a) \nabla_\theta\ln\pi_\theta(a|s) \right]. } \]Nella pratica questa aspettativa viene stimata usando campioni raccolti durante l’interazione con l’ambiente.
9.7 Derivazione formale
Scriviamo l’obiettivo sulle traiettorie:
\[ J(\theta) = \mathbb E_{\tau\sim p_\theta(\tau)} [R(\tau)], \]dove \(\tau=(s_0,a_0,s_1,a_1,\ldots)\) è una traiettoria, \(p_\theta(\tau)\) è la sua probabilità sotto la policy e \(R(\tau)\) è il ritorno totale.
Scrivendo l’aspettativa come integrale:
\[ J(\theta) = \int p_\theta(\tau)R(\tau)\,d\tau. \]Derivando:
\[ \nabla_\theta J = \int \nabla_\theta p_\theta(\tau) R(\tau)\,d\tau. \]9.8 La log-derivative trick
Usiamo l’identità:
\[ \nabla_\theta p_\theta(\tau) = p_\theta(\tau) \nabla_\theta\ln p_\theta(\tau). \]Essa deriva da:
\[ \nabla_\theta\ln p = \frac{1}{p}\nabla_\theta p. \]Moltiplicando per \(p\):
\[ \nabla_\theta p = p\nabla_\theta\ln p. \]Sostituendo:
\[ \nabla_\theta J = \mathbb E_{\tau\sim p_\theta} \left[ R(\tau) \nabla_\theta\ln p_\theta(\tau) \right]. \]9.9 Probabilità di una traiettoria
Per un MDP:
\[ p_\theta(\tau) = p(s_0) \prod_t \pi_\theta(a_t|s_t) P(s_{t+1}|s_t,a_t). \]La dinamica dell’ambiente \(P\) non dipende dai parametri \(\theta\) della policy. Quindi:
\[ \nabla_\theta\ln p_\theta(\tau) = \sum_t \nabla_\theta\ln\pi_\theta(a_t|s_t). \]Segue:
\[ \nabla_\theta J = \mathbb E \left[ \sum_t \nabla_\theta\ln\pi_\theta(a_t|s_t) Q^\pi(s_t,a_t) \right]. \]9.10 Perché usare l’advantage invece di \(Q\)?
Possiamo sottrarre una baseline \(b(s)\) senza cambiare il gradiente atteso. Una scelta particolarmente utile è:
\[ b(s)=V^\pi(s). \]Otteniamo:
\[ \boxed{ \nabla_\theta J = \mathbb E \left[ \nabla_\theta\ln\pi_\theta(a|s) A^\pi(s,a) \right]. } \]La baseline riduce la varianza: non chiediamo se il ritorno è grande in assoluto, ma se è grande rispetto a ciò che normalmente ci aspettiamo in quello stato.
9.11 Collegamento con la softmax
Nel paragrafo precedente abbiamo trovato:
\[ \frac{\partial V^\pi(s)}{\partial z_k} = \pi_kA_k. \]Il policy gradient generalizza la stessa idea quando i logits dipendono, attraverso una rete neurale, da molti parametri \(\theta\).
9.12 Significato nella materia attiva
Per una particella attiva, l’osservazione locale può essere:
\[ o_i = (\rho_i,\mathbf P_i,\nabla c_i). \]La policy sceglie un’azione \(a_i\), per esempio una rotazione. Se quella scelta aumenta nel tempo il trasporto, l’allineamento o l’avvicinamento a una sorgente, l’advantage diventa positivo. Il policy gradient rende allora quella risposta più probabile quando si ripresentano condizioni simili.
Ripetendo il processo:
\[ \text{esperienze locali} \rightarrow \text{aggiornamenti della policy} \rightarrow \text{regola microscopica appresa} \rightarrow \text{comportamento collettivo}. \]In una sola frase:
\[ \boxed{ \text{aumenta la probabilità delle azioni migliori del previsto e diminuisci quella delle azioni peggiori del previsto.} } \]10. Actor–critic e temporal-difference learning
10.1 Perché separare actor e critic?
Il policy gradient richiede una stima del valore futuro. Poiché calcolarlo esattamente è spesso impossibile, si introducono due modelli: l’actor, che rappresenta \(\pi_\theta(a|s)\), e il critic, che stima \(V_\phi(s)\) o \(Q_\phi(s,a)\). Il simbolo \(\phi\) indica i parametri del critic.
10.2 Temporal-difference error
Dalla relazione di Bellman abbiamo approssimativamente
\[ V^\pi(s_t)\approx r_t+\gamma V^\pi(s_{t+1}). \]Definiamo quindi
\[ \boxed{ \delta_t=r_t+\gamma V_\phi(s_{t+1})-V_\phi(s_t). } \]Se \(\delta_t>0\), il risultato è stato migliore del previsto; se \(\delta_t<0\), peggiore. Un aggiornamento dell'actor può essere
\[ \theta\leftarrow\theta+\eta\,\delta_t\nabla_\theta\ln\pi_\theta(a_t|s_t), \]dove \(\eta>0\) è il learning rate.
10.3 Obiettivo pratico
Nei sistemi di materia attiva l’actor può essere la legge di controllo delle particelle, mentre il critic impara se la configurazione collettiva corrente è promettente rispetto all’obiettivo futuro.
11. Entropia, esplorazione e perché massimizzare \(V^\pi+\alpha H(\pi)\)
11.1 Che cosa accade se massimizziamo soltanto \(V^\pi\)?
Per uno stato fissato:
\[ V^\pi(s) = \sum_a \pi(a|s)Q(s,a). \]Supponiamo:
\[ Q_1>Q_2>Q_3. \]Se risolviamo:
\[ \max_{\pi_1,\pi_2,\pi_3} \left[ \pi_1Q_1+\pi_2Q_2+\pi_3Q_3 \right] \]con:
\[ \pi_i\ge0, \qquad \pi_1+\pi_2+\pi_3=1, \]l’obiettivo è lineare nelle probabilità. Il massimo viene raggiunto mettendo tutta la massa sull’azione con \(Q\) maggiore:
\[ \pi_1=1, \qquad \pi_2=\pi_3=0. \]Questa soluzione è corretta se \(Q\) è noto perfettamente e vogliamo una policy greedy. Il problema nasce durante l’apprendimento, quando \(Q\) è soltanto stimato.
11.2 Perché una policy troppo presto deterministica può essere un problema?
Supponiamo che il critic stimi:
\[ \hat Q(A)=10, \qquad \hat Q(B)=9.9. \]Se scegliamo subito:
\[ \pi(A)=1, \qquad \pi(B)=0, \]quasi non raccogliamo più dati su \(B\). Ma il valore reale potrebbe essere:
\[ Q_{\rm vero}(A)=9.8, \qquad Q_{\rm vero}(B)=10.1. \]Una policy collassata troppo presto può quindi bloccarsi in una soluzione subottimale.
11.3 Entropia della policy
\[ \boxed{ H(\pi) = -\sum_a \pi(a|s)\ln\pi(a|s). } \]Per una policy deterministica l’entropia è minima. Per una distribuzione uniforme è massima. Quindi:
\[ H\uparrow \quad\Longleftrightarrow\quad \text{policy più distribuita}. \]11.4 L’obiettivo corretto
Per favorire esplorazione e robustezza si massimizza:
\[ \boxed{ J_s(\pi) = V^\pi(s) + \alpha H[\pi(\cdot|s)]. } \]Poiché:
\[ V^\pi(s) = \sum_a\pi(a|s)Q(s,a), \]abbiamo:
\[ \boxed{ J_s(\pi) = \sum_a\pi(a|s)Q(s,a) – \alpha\sum_a\pi(a|s)\ln\pi(a|s). } \]Il primo termine favorisce azioni ad alto valore. Il secondo impedisce alla policy di concentrare troppo rapidamente tutta la probabilità su una sola azione.
È importante il segno: se massimizzassimo \(V^\pi-\alpha H(\pi)\), penalizzeremmo l’entropia e favoriremmo policy ancora più deterministiche.
11.5 Perché proprio sommare l’entropia?
Vogliamo simultaneamente:
\[ V^\pi\uparrow \]e, durante l’esplorazione,
\[ H(\pi)\uparrow. \]La combinazione più semplice è quindi \(V^\pi+\alpha H\). Inoltre \(V^\pi\) è lineare in \(\pi\), mentre \(H(\pi)\) è concava: il termine entropico regolarizza il problema e impedisce un collasso immediato ai vertici del simplex delle probabilità.
11.6 Derivazione della policy ottima
Vogliamo massimizzare:
\[ J(\pi) = \sum_a\pi_aQ_a – \alpha\sum_a\pi_a\ln\pi_a \]sotto il vincolo:
\[ \sum_a\pi_a=1. \]Introduciamo un moltiplicatore di Lagrange \(\lambda\):
\[ \mathcal L = \sum_a\pi_aQ_a – \alpha\sum_a\pi_a\ln\pi_a + \lambda \left( \sum_a\pi_a-1 \right). \]Derivando:
\[ \frac{\partial\mathcal L}{\partial\pi_a} = Q_a – \alpha(\ln\pi_a+1) + \lambda. \]Poniamo la derivata uguale a zero:
\[ Q_a – \alpha(\ln\pi_a+1) + \lambda = 0. \]Da cui:
\[ \ln\pi_a = \frac{Q_a}{\alpha} + C, \]dove \(C\) non dipende da \(a\). Esponenziando:
\[ \pi_a = e^C e^{Q_a/\alpha}. \]Normalizzando:
\[ \boxed{ \pi^*(a|s) = \frac{ e^{Q(s,a)/\alpha} }{ \sum_b e^{Q(s,b)/\alpha} }. } \]11.7 Significato di \(\alpha\)
\(\alpha>0\) controlla il compromesso tra valore ed entropia.
Se:
\[ \alpha\to0, \]la policy tende alla scelta greedy:
\[ \pi^*(a|s) \to \delta_{a,\arg\max Q}. \]Se \(\alpha\) cresce, la distribuzione diventa più uniforme.
\[ \alpha\downarrow \Rightarrow \text{più exploitation}, \] \[ \alpha\uparrow \Rightarrow \text{più exploration}. \]11.8 Interpretazione come penalità KL
Se \(u(a)=1/|A|\) è la distribuzione uniforme:
\[ D_{\mathrm{KL}}(\pi\Vert u) = -H(\pi)+\ln|A|. \]A meno di una costante:
\[ \boxed{ V^\pi+\alpha H(\pi) \equiv V^\pi – \alpha D_{\mathrm{KL}}(\pi\Vert u). } \]Quindi possiamo leggere l’entropy regularization come:
\[ \boxed{ \text{massimizza il valore} – \text{penalizza una policy troppo distante da una distribuzione esplorativa}. } \]11.9 Generalizzazione a una policy di riferimento
Più in generale:
\[ J(\pi) = \mathbb E_\pi[Q] – \alpha D_{\mathrm{KL}} [ \pi(\cdot|s) \Vert \pi_0(\cdot|s) ]. \]La soluzione assume la forma:
\[ \boxed{ \pi^*(a|s) \propto \pi_0(a|s)e^{Q(s,a)/\alpha}. } \]La softmax emerge quindi naturalmente da un compromesso tra valore e deviazione da una distribuzione di riferimento.
11.10 Perché è utile nella materia attiva?
Nei sistemi collettivi, la stessa osservazione locale può corrispondere a configurazioni microscopiche diverse. Se tutti gli agenti usano una policy deterministica, piccoli errori di stima possono produrre decisioni collettive rigide o sincronizzazioni indesiderate.
Una policy stocastica può aiutare a:
- esplorare lo spazio;
- rompere simmetrie;
- evitare configurazioni metastabili;
- adattarsi a perturbazioni;
- mantenere strategie alternative;
- evitare il collasso prematuro verso un comportamento collettivo subottimale.
Il rumore controllato della policy può quindi diventare una risorsa dinamica.
11.11 Non bisogna massimizzare l’entropia indefinitamente
Massimizzare soltanto \(H(\pi)\) porterebbe a una policy uniforme:
\[ \pi(a|s)=\frac1{|A|}. \]L’obiettivo è invece il compromesso:
\[ \boxed{ \max_\pi \left[ V^\pi+\alpha H(\pi) \right]. } \]In parole: alto valore e sufficiente diversità.
11.12 Collegamento con active inference
Nel maximum-entropy RL compare:
\[ \max_\pi \mathbb E[Q+\alpha H(\pi)]. \]In active inference troviamo:
\[ q(\pi) \propto p(\pi)e^{-\gamma G(\pi)}. \]In entrambi i casi compare una combinazione tra valore o preferenza e regolarizzazione probabilistica. Ma l’entropia del RL favorisce diversità delle azioni, mentre il valore epistemico dell’active inference favorisce azioni che riducono specificamente l’incertezza sul mondo.
12. Reinforcement learning nella materia attiva e nei sistemi collettivi
12.1 Stato completo e osservazione locale
Lo stato microscopico completo può essere
\[ s=\{\mathbf r_1,\ldots,\mathbf r_N,\theta_1,\ldots,\theta_N\}. \]Ma un agente locale può osservare soltanto
\[ o_i=\{\rho_i,\mathbf P_i,\nabla\rho_i,c_i,\ldots\}. \]\(\rho_i\) è la densità locale, \(\mathbf P_i\) la polarizzazione dei vicini, \(\nabla\rho_i\) il gradiente di densità e \(c_i\) un segnale locale.
12.2 Policy condivisa
\[ a_i\sim\pi_\theta(a_i|o_i). \]Tutti gli agenti possono usare la stessa policy, ma osservazioni diverse producono azioni diverse. Se le decisioni sono condizionalmente indipendenti:
\[ \boxed{ \Pi(\mathbf a|\mathbf o)=\prod_{i=1}^N\pi_\theta(a_i|o_i). } \]12.3 Reward collettivi
Per il trasporto lungo \(\hat{\mathbf x}\):
\[ r_t=\frac1N\sum_i\mathbf v_i\cdot\hat{\mathbf x}. \]Per il flocking:
\[ \Phi=\left|\frac1N\sum_i\mathbf p_i\right|, \qquad r_t=\Phi_t. \]Per la compattezza:
\[ r_t=-\frac1N\sum_i|\mathbf r_i-\mathbf R_{\rm CM}|^2, \]dove \(\mathbf R_{\rm CM}\) è il centro di massa.
Per più obiettivi:
\[ r= w_T R_{\rm transport} +w_O R_{\rm order} -w_E C_{\rm energy} -w_C C_{\rm collision}. \]I coefficienti \(w_T,w_O,w_E,w_C\) esprimono l’importanza relativa di trasporto, ordine, costo energetico e collisioni. La forma del reward è quindi una scelta di progetto: traduce un obiettivo fisico in una quantità numerica ottimizzabile.
12.4 Esempi di obiettivi fisici già studiati
Nel controllo della materia attiva il reinforcement learning è stato impiegato per problemi qualitativamente diversi. Un primo esempio è il trasporto collettivo: il controllore può imparare come muovere una regione localizzata di attività, cioè una zona in cui le particelle diventano più motili, in modo da sfruttare la risposta collettiva del materiale e generare una corrente netta.
Un secondo esempio è la navigazione di particelle attive in ambienti complessi. In questo caso il reward può favorire l’avvicinamento al target e penalizzare collisioni o tempi lunghi. La policy impara una strategia di navigazione senza che il progettista debba prescrivere esplicitamente una traiettoria.
Un terzo esempio è il mixing. Qui il punto importante è che l’apprendimento non può creare controllabilità dal nulla: se la dinamica fisica non dispone dei meccanismi necessari a stirare e ripiegare efficacemente le configurazioni, il miglior algoritmo di RL non può produrre un mixing arbitrariamente efficiente.
Infine, in esperimenti con colloidi attivi controllati individualmente, policy locali apprese per compiti di ricerca possono produrre comportamenti collettivi come flocking e milling. Questo è particolarmente importante per l’auto-organizzazione: il reward può essere definito a livello individuale, mentre la struttura emergente è macroscopica.
12.5 Perché questi esempi sono importanti teoricamente?
Mostrano che una policy non deve essere interpretata soltanto come una tabella di comandi. In un sistema collettivo la policy modifica le interazioni effettive tra gli agenti e può quindi spostare il sistema da un regime dinamico a un altro. Il reinforcement learning diventa così uno strumento per progettare dinamiche emergenti, non soltanto per inseguire un target.
13. Teoria di base: inferenza bayesiana
13.1 Stato nascosto e osservazione
Nell’active inference l’agente non assume di conoscere lo stato reale. Usiamo \(s\) per lo stato nascosto, \(o\) per l’osservazione, \(p(s)\) per il prior e \(p(o|s)\) per la likelihood.
Il modello generativo congiunto è
\[ \boxed{p(o,s)=p(o|s)p(s).} \]13.2 Regola di Bayes
\[ \boxed{ p(s|o)=\frac{p(o|s)p(s)}{p(o)}. } \]Il denominatore
\[ p(o)=\int p(o,s)\,ds \]è l’evidenza marginale. In modelli complessi questo integrale può essere difficile da calcolare: da qui nasce l’esigenza dell’inferenza variazionale.
14. Inferenza variazionale e variational free energy
14.1 Scopo
Vogliamo una distribuzione approssimata \(q(s)\) vicina al posterior \(p(s|o)\). Una misura standard di distanza informazionale è la divergenza KL:
\[ D_{\mathrm{KL}}[q\Vert p] = \int q(s)\ln\frac{q(s)}{p(s)}\,ds. \]La KL è sempre non negativa e vale zero quando le due distribuzioni coincidono quasi ovunque.
Intuitivamente, \(D_{\mathrm{KL}}[q\Vert p]\) misura quanto è costoso usare \(q\) come approssimazione di \(p\). Non è una distanza geometrica simmetrica, ma è molto utile perché trasforma il problema di approssimare una distribuzione in un problema di ottimizzazione.
14.2 Perché non minimizzare direttamente \(D_{\mathrm{KL}}[q(s)\Vert p(s|o)]\)?
Perché contiene il posterior \(p(s|o)\), che richiede l’evidenza \(p(o)\) che volevamo evitare di calcolare. Si introduce allora
\[ \boxed{ F[q]= \mathbb E_{q(s)} \left[ \ln q(s)-\ln p(o,s) \right]. } \]14.3 Derivazione
Usiamo
\[ p(o,s)=p(s|o)p(o), \]quindi
\[ \ln p(o,s)=\ln p(s|o)+\ln p(o). \]Sostituendo:
\[ F= \mathbb E_q \left[ \ln q(s)-\ln p(s|o)-\ln p(o) \right]. \]Poiché \(\ln p(o)\) non dipende da \(s\):
\[ F= \mathbb E_q[\ln q(s)-\ln p(s|o)]-\ln p(o). \]Il primo termine è una KL:
\[ \boxed{ F= D_{\mathrm{KL}}[q(s)\Vert p(s|o)] -\ln p(o). } \]14.4 Significato
Poiché \(D_{\mathrm{KL}}\ge0\):
\[ \boxed{F\ge-\ln p(o).} \]La quantità \(-\ln p(o)\) è il surprisal. Minimizzando \(F\) rispetto a \(q\), idealmente otteniamo \(q^*(s)=p(s|o)\).
14.5 Forma energia–entropia
L’entropia di Shannon è
\[ H[q]=-\mathbb E_q[\ln q(s)]. \]Quindi
\[ F=-\mathbb E_q[\ln p(o,s)]-H[q]. \]La struttura “energia meno entropia” spiega il nome free energy, ma qui la quantità è variazionale e informazionale, non automaticamente un’energia termodinamica in joule.
15. Prediction error, precisione e predictive coding
15.1 Modello gaussiano
Supponiamo
\[ o=g(s)+\omega_o, \qquad \omega_o\sim\mathcal N(0,\Sigma_o). \]\(g(s)\) è la previsione sensoriale e \(\Sigma_o\) la covarianza del rumore. Se l’agente usa una stima media \(\mu\), il prediction error è
\[ \epsilon_o=o-g(\mu). \]15.2 Perché compare la precisione?
Per una gaussiana, il logaritmo negativo della likelihood contiene
\[ \frac12\epsilon_o^T\Sigma_o^{-1}\epsilon_o. \]Definiamo quindi la precisione
\[ \Pi_o=\Sigma_o^{-1}. \]Una piccola varianza implica grande precisione: un errore rispetto a una misura affidabile deve pesare di più.
15.3 Dinamica interna
Se il modello predice
\[ \dot s=f(s)+\omega_s, \]possiamo definire
\[ \epsilon_s=\dot\mu-f(\mu), \qquad \Pi_s=\Sigma_s^{-1}. \]In approssimazione di Laplace:
\[ \boxed{ F\simeq \frac12\epsilon_o^T\Pi_o\epsilon_o + \frac12\epsilon_s^T\Pi_s\epsilon_s + \text{termini di normalizzazione}. } \]15.4 Predictive coding
Se l’agente modifica \(\mu\) per ridurre \(F\):
\[ \boxed{ \dot\mu=-\kappa_\mu\frac{\partial F}{\partial\mu}, } \]con \(\kappa_\mu>0\), allora le credenze vengono corrette dai prediction errors. La sequenza intuitiva è: modello interno → predizione → confronto con dati → errore → correzione del modello.
16. Dalla percezione all’azione: active inference
16.1 Due modi di ridurre un errore
Se la predizione \(\hat o=g(\mu)\) non coincide con \(o\), possiamo modificare la credenza:
\[ \mu\to\mu’\quad\text{con}\quad g(\mu’)\approx o, \]oppure modificare il mondo mediante l’azione:
\[ a\to a’\quad\text{con}\quad o(a’)\approx g(\mu). \]16.2 Azione come discesa di gradiente
Se \(o=o(a)\):
\[ \boxed{ \dot a=-\kappa_a\frac{\partial F}{\partial a}. } \]Per la regola della catena:
\[ \frac{\partial F}{\partial a} = \frac{\partial F}{\partial o} \frac{\partial o}{\partial a}. \]Nel caso gaussiano \(\partial F/\partial o=\Pi_o\epsilon_o\), quindi
\[ \boxed{ \dot a \simeq -\kappa_a \left(\frac{\partial o}{\partial a}\right)^T \Pi_o\epsilon_o. } \]Questa legge esprime un feedback: l’azione riduce l’errore sensoriale. Per scegliere tra futuri diversi serve però l’expected free energy.
17. Expected free energy e pianificazione
17.1 Perché serve una nuova quantità?
La variational free energy riguarda soprattutto l’inferenza su dati presenti. Una decisione deve invece confrontare futuri possibili. Senza una quantità prospettica, la semplice riduzione dell’errore presente potrebbe favorire strategie banalmente prevedibili ma inutili. L’esempio classico è il cosiddetto problema della “stanza buia”: se l’unico obiettivo fosse rendere le sensazioni prevedibili, un agente potrebbe apparentemente preferire un ambiente povero di stimoli. L’active inference evita questa conclusione introducendo preferenze sugli outcome e valore epistemico.
Il passaggio da \(F\) a \(G(\pi)\) è quindi concettualmente simile al passaggio, nel reinforcement learning, dal reward immediato alla funzione di valore: in entrambi i casi introduciamo una quantità che valuta le conseguenze future. La differenza è che \(G(\pi)\) valuta anche il valore informativo delle osservazioni previste.
Introduciamo quindi una policy temporale
\[ \pi=(a_t,a_{t+1},\ldots,a_T). \]Sotto una policy il modello produce distribuzioni previste \(q(s_\tau|\pi)\) e \(q(o_\tau|\pi)\). Una forma compatta dell’expected free energy è
\[ \boxed{ G(\pi)= \mathbb E_{q(o,s|\pi)} \left[ \ln q(s|\pi)-\ln p(o,s) \right]. } \]17.2 Distribuzione sulle policy
Active inference può definire
\[ q(\pi)\propto p(\pi)e^{-\gamma_\pi G(\pi)}, \]dove \(p(\pi)\) è il prior sulle policy e \(\gamma_\pi\) la precisione della selezione. Equivalentemente:
\[ q(\pi) = \operatorname{softmax} \left( \ln p(\pi)-\gamma_\pi G(\pi) \right). \]L’esponenziale è utile perché trasforma un costo reale in pesi positivi normalizzabili; policy con \(G\) piccola ricevono probabilità elevata.
18. Perché \(G(\pi)\) contiene valore pragmatico ed epistemico
18.1 Preferenze sugli outcome
Active inference introduce una distribuzione di preferenza \(p_{\rm pref}(o)\). Outcome desiderabili hanno probabilità preferita alta. Il costo naturale è
\[ -\ln p_{\rm pref}(o). \]Il logaritmo negativo è utile perché trasforma probabilità piccole in costi grandi, prodotti in somme, ed è coerente con surprisal e teoria dell’informazione.
18.2 Valore pragmatico
\[ -\mathbb E_{q(o|\pi)}[\ln p_{\rm pref}(o)]. \]Questo termine è piccolo se la policy produce outcome compatibili con le preferenze.
18.3 Information gain
Se prima di una futura osservazione la credenza è \(q(s|\pi)\) e dopo diventa \(q(s|o,\pi)\), allora
\[ D_{\mathrm{KL}} [ q(s|o,\pi)\Vert q(s|\pi) ] \]misura quanto l’osservazione ha cambiato la credenza. È quindi una misura di information gain.
18.4 Decomposizione
\[ \boxed{ G(\pi) \approx – \mathbb E_{q(o|\pi)}[\ln p_{\rm pref}(o)] – \mathbb E_{q(o|\pi)} D_{\mathrm{KL}} [ q(s|o,\pi)\Vert q(s|\pi) ]. } \]In forma intuitiva:
\[ \boxed{ G\approx \text{costo pragmatico} – \text{valore epistemico}. } \]Minimizzare \(G\) combina exploitation ed exploration.
18.5 Risk e ambiguity
Sotto opportune fattorizzazioni si può anche scrivere
\[ G(\pi) \approx D_{\mathrm{KL}} [ q(o|\pi)\Vert p_{\rm pref}(o) ] + \mathbb E_{q(s|\pi)}H[p(o|s)]. \]Il primo termine è spesso chiamato risk e misura la distanza tra outcome previsti e preferenze. Il secondo è l’ambiguity e penalizza stati che generano osservazioni poco informative. Sono decomposizioni alternative della stessa struttura, non termini indipendenti da sommare.
19. Il modello discreto \(A,B,C,D\)
19.1 Perché usare matrici?
Quando stati e osservazioni sono discreti, le probabilità condizionate possono essere raccolte in matrici. Questo rende previsione e inferenza operazioni lineari e rende molto trasparente il ruolo di ogni componente del modello.
19.2 Matrice \(A\): modello osservativo
\[ \boxed{ A_{ij}=P(o_t=i|s_t=j). } \]La colonna \(j\) descrive la distribuzione delle osservazioni possibili quando il sistema si trova nello stato \(j\). La matrice \(A\) rappresenta quindi il legame sensoriale tra stato nascosto e dato osservato.
19.3 Matrice \(B\): dinamica controllata
\[ \boxed{ B^{(a)}_{ij}=P(s_{t+1}=i|s_t=j,a_t=a). } \]Per ogni azione \(a\) esiste una matrice di transizione. Questa è l’analoga, nel modello generativo discreto, della dinamica \(P(s’|s,a)\) di un MDP.
19.4 Vettore \(D\): prior iniziale
\[ \boxed{ D_j=P(s_1=j). } \]Il vettore \(D\) rappresenta ciò che l’agente crede sullo stato iniziale prima di aver incorporato le osservazioni.
19.5 Vettore \(C\): preferenze
Si possono introdurre score reali \(C_i\) e convertirli in probabilità mediante
\[ p_{\rm pref}(o=i)=\operatorname{softmax}(C)_i. \]La softmax viene usata per la stessa ragione già vista nel RL: trasforma numeri reali arbitrari in probabilità positive che sommano a uno.
19.6 Propagazione delle credenze
Se \(q(s_t)\) è il vettore delle credenze correnti, una previsione di stato è
\[ q(s_{t+1}|\pi)=B^{(a_t)}q(s_t|\pi). \]La corrispondente previsione di outcome è
\[ q(o_{t+1}|\pi)=A\,q(s_{t+1}|\pi). \]In questo modo una policy può essere valutata simulando probabilisticamente le conseguenze future anziché eseguendole subito nel mondo.
19.7 Fattorizzazione temporale del modello generativo
Una forma utile è
\[ p(o_{1:T},s_{1:T},\pi) = p(\pi)\,p(s_1) \prod_{t=1}^{T}p(o_t|s_t) \prod_{t=1}^{T-1}p(s_{t+1}|s_t,\pi). \]Questa fattorizzazione separa chiaramente quattro ingredienti: prior sulle policy, prior iniziale, modello osservativo e modello dinamico.
20. Markov blanket e Free Energy Principle generale
20.1 Quattro gruppi di variabili
Nel quadro generale del Free Energy Principle si distinguono:
\[ \eta=\text{stati esterni},\qquad \mu=\text{stati interni}, \] \[ s=\text{stati sensoriali},\qquad a=\text{stati attivi}. \]Gli stati sensoriali \(s\) e attivi \(a\) costituiscono il Markov blanket. L’idea probabilistica è che gli stati interni e quelli esterni siano condizionalmente indipendenti quando si conosce il blanket.
In forma intuitiva:
ambiente → sensazioni → stati interni → azioni → ambiente.
20.2 Perché questo è rilevante per l’auto-organizzazione?
Un sistema persistente deve rimanere in una regione relativamente limitata dello spazio degli stati. Se \(p_{\rm ss}(x)\) è una distribuzione stazionaria, possiamo definire
\[ \mathcal S(x)=-\ln p_{\rm ss}(x). \]\(x\) rappresenta lo stato complessivo del sistema. Stati molto improbabili sotto \(p_{\rm ss}\) hanno alta surprisal. L’idea generale è che un sistema persistente visiti prevalentemente regioni compatibili con la propria organizzazione.
20.3 Tre livelli da non confondere
- Inferenza variazionale: minimizzare \(F\) rispetto a \(q\) approssima il posterior; questo è un risultato matematico standard.
- Active inference: un agente può usare un modello generativo, credenze e expected free energy per percezione e controllo; questo è un modello computazionale.
- Free Energy Principle generale: l’idea che sistemi persistenti auto-organizzanti possano essere descritti in questi termini è una tesi teorica più ampia, che richiede ipotesi sulla dinamica e sulla struttura probabilistica.
21. Ponte matematico fra reinforcement learning e active inference
21.1 Obiettivi formali
Nel reinforcement learning:
\[ \boxed{ \pi^* = \arg\max_\pi \mathbb E_\pi \left[ \sum_t\gamma^t r_t \right]. } \]Nell’active inference:
\[ \boxed{ \pi^* = \arg\min_\pi G(\pi). } \]21.2 Reward come log-preferenza
Per collegare i due formalismi possiamo definire una distribuzione di preferenza a partire dal reward:
\[ \boxed{ p_{\rm pref}(o)=\frac{e^{\beta r(o)}}{Z}. } \]Le variabili sono:
- \(r(o)\): reward associato all’outcome \(o\);
- \(\beta>0\): parametro di scala o precisione;
- \(Z=\sum_o e^{\beta r(o)}\): costante di normalizzazione.
Prendendo il logaritmo:
\[ \ln p_{\rm pref}(o)=\beta r(o)-\ln Z. \]Quindi:
\[ -\ln p_{\rm pref}(o)=-\beta r(o)+\ln Z. \]Poiché \(\ln Z\) è costante rispetto alla scelta dell’outcome, minimizzare il costo preferenziale equivale, in questo caso, a massimizzare il reward atteso.
\[ \boxed{ \text{reward} \longleftrightarrow \log\text{-preferenza}. } \]21.3 Differenza essenziale
Nel RL standard l’obiettivo principale è il ritorno. Active inference può aggiungere una motivazione epistemica:
\[ \boxed{ -G \sim \text{valore pragmatico} + \text{valore epistemico}. } \]Una policy può quindi essere favorita perché riduce l’incertezza, anche se non produce immediatamente l’outcome più desiderabile.
21.4 Entropia RL ed epistemic value non coincidono
Nel RL entropy-regularized, \(H[\pi]\) rende la distribuzione sulle azioni più dispersa. Ciò aumenta la varietà delle azioni provate, ma non garantisce che tali azioni siano informative.
Nell’active inference, invece, l’information gain misura direttamente quanto una nuova osservazione dovrebbe modificare le credenze sullo stato nascosto. Una policy può avere alta entropia ma basso valore epistemico, oppure essere quasi deterministica e tuttavia molto informativa.
22. Active inference, materia attiva e auto-organizzazione
22.1 Agentività locale
Consideriamo \(N\) agenti. L’agente \(i\) riceve
\[ o_i= \{\rho_i,\mathbf P_i,\nabla\rho_i,c_i,\ldots\}. \]Mantiene una credenza \(q_i(s_i)\) e valuta policy locali \(\pi_i\). Una selezione possibile è
\[ q_i(\pi_i) \propto p_i(\pi_i)e^{-\gamma_iG_i(\pi_i)}. \]22.2 Preferenze locali e ordine globale
Le preferenze possono essere formulate su variabili locali:
\[ p_{\rm pref}(\rho_i\approx\rho^*), \qquad p_{\rm pref}(|\mathbf P_i|\approx1), \qquad p_{\rm pref}(c_i\approx c_{\rm high}). \]Anche se nessun agente osserva direttamente l’ordine globale, le regole locali possono generarlo. Questo è il punto essenziale dell’auto-organizzazione.
22.3 Descrizione di campo
Nel limite continuo possiamo descrivere il sistema con densità e polarizzazione:
\[ \partial_t\rho = -\nabla\cdot\mathbf J[\rho,\mathbf P,u], \] \[ \partial_t\mathbf P = \mathcal F[\rho,\mathbf P] + \mathcal G[\rho,\mathbf P]u + \boldsymbol\eta. \]Qui \(\rho(\mathbf x,t)\) è la densità, \(\mathbf P(\mathbf x,t)\) la polarizzazione, \(\mathbf J\) la corrente di particelle, \(u\) il controllo, \(\mathcal F\) la dinamica spontanea, \(\mathcal G\) l’accoppiamento al controllo e \(\boldsymbol\eta\) il rumore.
Il ciclo chiuso è:
campi collettivi → osservazioni locali → controllo → modifica dei campi collettivi.
22.4 Misura dell’ordine globale
\[ \boxed{ \Phi = \left| \frac1N\sum_i\mathbf p_i \right|. } \]Se gli orientamenti sono casuali, \(\Phi\) è piccolo; se sono allineati, \(\Phi\) tende a uno.
23. Esempio completo: agenti attivi che cercano una sorgente
23.1 Problema fisico
Consideriamo \(N\) particelle attive che devono trovare una sorgente chimica la cui posizione non è nota con precisione.
23.2 Stato
\[ s_t = ( \mathbf r_1,\ldots,\mathbf r_N, \theta_1,\ldots,\theta_N, \mathbf r_{\rm source} ). \]\(\mathbf r_{\rm source}\) è la posizione della sorgente.
23.3 Osservazione locale
\[ o_i(t) = \left( c_i, \nabla c_i, \rho_i, \mathbf P_i \right). \]L’agente misura concentrazione, gradiente di concentrazione, densità locale e orientamento medio dei vicini.
23.4 Azioni
\[ a_i\in\{L,F,R\}, \]dove \(L\) indica una rotazione a sinistra, \(F\) moto rettilineo e \(R\) rotazione a destra.
23.5 Formulazione reinforcement learning
Definiamo un reward:
\[ r_t = \lambda_c\Delta c + \lambda_\Phi\Phi_t – \lambda_EC_{\rm energy} – \lambda_CC_{\rm collision}. \]\(\Delta c\) è l’aumento di concentrazione, \(\Phi_t\) l’ordine collettivo, \(C_{\rm energy}\) il costo energetico, \(C_{\rm collision}\) la penalità per collisioni. I coefficienti \(\lambda_c,\lambda_\Phi,\lambda_E,\lambda_C\) pesano i diversi obiettivi.
L’obiettivo è
\[ \max_\theta \mathbb E \left[ \sum_t\gamma^tr_t \right], \]con policy
\[ \pi_\theta(a_i|o_i). \]Un comportamento collettivo può emergere indirettamente se, per esempio, l’allineamento aumenta la velocità con cui il gruppo raggiunge la sorgente.
23.6 Formulazione active inference
L’agente possiede un modello generativo
\[ p(o_i,s_i|\pi_i)=p(o_i|s_i)p(s_i|\pi_i). \]Mantiene una credenza sulla posizione della sorgente:
\[ q_i(\mathbf r_{\rm source}). \]Le preferenze favoriscono alta concentrazione:
\[ p_{\rm pref}(c_{\rm high}) \gg p_{\rm pref}(c_{\rm low}). \]Una policy può essere scelta perché porta verso concentrazioni preferite, riduce l’incertezza sulla sorgente, migliora l’informazione disponibile e produce organizzazione collettiva favorevole alla ricerca.
23.7 Differenza pratica
Nel RL standard una motivazione epistemica deve essere aggiunta, per esempio tramite curiosity bonus o exploration bonus. Nell’active inference essa può essere parte della stessa expected free energy.
24. Come progettare in pratica un modello
24.1 Scelta dello stato
Lo stato dovrebbe contenere l’informazione necessaria a predire il futuro. Nei sistemi collettivi è spesso utile una rappresentazione ridotta, per esempio
\[ s=(\rho,\mathbf P,\nabla\rho,c,\ldots). \]Il vantaggio è ridurre la dimensionalità; il rischio è perdere informazione dinamicamente importante.
24.2 Scelta delle osservazioni
Le osservazioni devono rispettare i vincoli fisici del sistema. Un agente locale non dovrebbe ricevere variabili globali che non potrebbe misurare realmente, a meno che il problema non sia esplicitamente centralizzato.
24.3 Scelta delle azioni
Le azioni devono essere fisicamente realizzabili: cambio di orientazione, velocità, attivazione della propulsione, modifica di un campo locale o variazione di un’interazione.
24.4 Scelta del reward nel RL
Il reward deve essere coerente con l’obiettivo fisico, sufficientemente informativo, non facilmente aggirabile dalla policy e bilanciato tra obiettivi incompatibili.
24.5 Scelta delle preferenze nell’active inference
Una preferenza continua può essere definita come
\[ p_{\rm pref}(o) \propto \exp \left[ -\frac{(o-o^*)^2}{2\sigma_{\rm pref}^2} \right]. \]\(o^*\) è l’outcome preferito e \(\sigma_{\rm pref}\) la tolleranza. Una piccola \(\sigma_{\rm pref}\) rappresenta una preferenza rigida; una grande \(\sigma_{\rm pref}\) una preferenza più permissiva.
24.6 Scelta del modello generativo
Il modello deve essere abbastanza ricco da predire gli effetti dell’azione, ma abbastanza semplice da permettere inferenza e pianificazione. Nei sistemi collettivi è spesso utile un modello coarse-grained invece di una simulazione esatta di ogni agente.
24.7 Criteri di valutazione
Oltre al reward o alla free energy conviene misurare stabilità, robustezza al rumore, generalizzazione, costo energetico, tempo di convergenza, sensibilità ai parametri e comportamenti emergenti inattesi.
25. Limiti, ipotesi e cautele
25.1 Stato reale e osservazione
Scrivere \(\pi(a|s)\) è corretto in un MDP pienamente osservabile. Nei sistemi fisici è spesso più realistico usare \(\pi(a|o)\) oppure una policy che dipende da una credenza \(q(s)\).
25.2 Reward e preferenze non sono equivalenti in ogni dettaglio
La relazione \(p_{\rm pref}(o)\propto e^{\beta r(o)}\) crea un ponte utile, ma non rende equivalenti tutti gli algoritmi RL e tutti i modelli di active inference.
25.3 Expected free energy dipende dal modello
Le decomposizioni in valore pragmatico, information gain, risk e ambiguity dipendono dalle fattorizzazioni probabilistiche adottate.
25.4 Preferenze e reward sono scelte normative
In active inference qualcuno deve specificare o apprendere quali outcome sono preferiti. Nel RL lo stesso ruolo è svolto dal reward. L’auto-organizzazione non garantisce da sola che il comportamento emergente sia utile o desiderabile.
25.5 Controllabilità fisica
Un algoritmo non può produrre una dinamica che il sistema fisico non può realizzare. Se l’azione non influenza la variabile rilevante, né RL né active inference possono compensare.
25.6 Stabilità e transizioni di fase
Nei sistemi attivi piccole variazioni di densità, rumore, precisione o guadagno del controllo possono spostare il sistema tra fasi diverse. Per questo il controllo dovrebbe essere studiato insieme ad analisi di stabilità, biforcazioni, diagrammi di fase e meccanica statistica fuori equilibrio.
25.7 Il FEP generale è una tesi più forte
È importante non confondere la validità matematica dell’inferenza variazionale con l’affermazione più ampia secondo cui ogni sistema auto-organizzante debba essere interpretato come agente bayesiano.
26. Sintesi finale
26.1 Reinforcement learning
Il RL costruisce una policy \(\pi_\theta(a|s)\) per massimizzare
\[ J(\theta) = \mathbb E \left[ \sum_t\gamma^tr_t \right]. \]\(V^\pi\) e \(Q^\pi\) valutano il futuro, mentre
\[ A^\pi(s,a)=Q^\pi(s,a)-V^\pi(s) \]misura la qualità relativa dell’azione. Il policy gradient modifica la probabilità delle azioni in proporzione alla loro performance relativa.
26.2 Active inference
Active inference parte da un modello generativo \(p(o,s)\). La percezione minimizza
\[ \boxed{ F= D_{\mathrm{KL}} [q(s)\Vert p(s|o)] -\ln p(o). } \]La pianificazione minimizza \(G(\pi)\), che può favorire contemporaneamente outcome preferiti e informazione.
26.3 Auto-organizzazione
In un sistema collettivo la policy o il meccanismo di inferenza di ogni agente entra nella dinamica fisica. L’ordine macroscopico emerge dal ciclo:
osservazioni locali → decisioni locali → modifica del campo collettivo → nuove osservazioni locali.
26.4 Collegamento finale
Il reinforcement learning chiede: quale azione aumenta il ritorno futuro?
L’active inference chiede: quale policy rende probabili outcome preferiti e riduce l’incertezza?
La teoria dell’auto-organizzazione chiede: che cosa accade quando molti agenti seguono queste regole contemporaneamente e si modificano reciprocamente l’ambiente?
Nell’intersezione di queste tre domande si trova un programma molto potente per il controllo della materia attiva: progettare o apprendere regole locali semplici che generino in modo robusto strutture e funzioni collettive desiderate.
27. Riferimenti essenziali
- R. S. Sutton, A. G. Barto, Reinforcement Learning: An Introduction, seconda edizione, MIT Press, 2018.
- K. Friston, “The free-energy principle: a unified brain theory?”, Nature Reviews Neuroscience, 2010.
- K. Friston e collaboratori, “Active Inference: A Process Theory”, Neural Computation, 2017.
- T. Parr, G. Pezzulo, K. J. Friston, Active Inference: The Free Energy Principle in Mind, Brain, and Behavior, MIT Press, 2022.
- B. Falk e collaboratori, lavori sul controllo di materia attiva mediante reinforcement learning e controllo spaziale dell’attività.
- E. Löffler, E. Panizon, C. Bechinger, lavori sperimentali su colloidi attivi, reinforcement learning e comportamento collettivo emergente.
- Letteratura su navigazione di particelle attive, mixing controllato, microswimmer e sistemi collettivi adattivi.
Le formule di expected free energy sono presentate nelle decomposizioni più utili per comprendere il rapporto fra preferenze, informazione e controllo. In applicazioni specifiche la forma esatta dipende dal modello generativo e dalle ipotesi di fattorizzazione.