# Cos'è l'operatore Bellman nell'apprendimento del rinforzo?

10

In matematica, l' operatore parola può fare riferimento a diversi concetti distinti ma correlati. Un operatore può essere definito come una funzione tra due spazi vettoriali, può essere definito come una funzione in cui dominio e codice sono uguali oppure può essere definito come una funzione da funzioni (che sono vettori) ad altre funzioni (per esempio, l' operatore differenziale ), ovvero una funzione di ordine elevato (se si ha familiarità con la programmazione funzionale).

Cos'è l' operatore Bellman nell'apprendimento di rinforzo (RL)? Perché ne abbiamo bisogno? In che modo l'operatore Bellman è correlato alle equazioni di Bellman in RL?

Alcuni articoli relativi a questo argomento sono Metodi basati su funzioni per la programmazione dinamica su larga scala (di John N. Tsitsiklis e Benjamin Van Roy, 1996), Un'analisi dell'apprendimento delle differenze temporali con approssimazione delle funzioni (di John N. Tsitsiklis e Benjamin Van Roy, 1997) e Least-Squares Policy Iteration (di Michail G. Lagoudakis e Ronald Parr, 2003).
nbro

Alcuni altri documenti correlati che ho trovato sono Processi decisionali di Markov generalizzati: algoritmi di programmazione dinamica e di apprendimento di rinforzo (di Csaba Szepesvári e Michael L. Littman, 1997) e$ϵ$$\epsilon$-MDPs: Learning in Varying Environments (by István Szita, Bálint Takács, András Lörincz, 2002).
nbro

Risposte:

11

The notation I'll be using is from two different lectures by David Silver and is also informed by these slides.

The expected Bellman equation is 

$\begin{array}{}\text{(1)}& {v}_{\pi }\left(s\right)=\sum _{a\in \mathcal{A}}\pi \left(a|s\right)\left({\mathcal{R}}_{\mathcal{s}}^{\mathcal{a}}\mathcal{+}\gamma \sum _{{\mathcal{s}}^{\prime }\in \mathcal{S}}{\mathcal{P}}_{\mathcal{s}{\mathcal{s}}^{\prime }}^{\mathcal{a}}{\mathcal{v}}_{\pi }\mathcal{\left(}{\mathcal{s}}^{\prime }\mathcal{\right)}\right)\end{array}$

If we let 

$\begin{array}{}\mathcal{\text{(2)}}& {\mathcal{P}}_{\mathcal{s}{\mathcal{s}}^{\prime }}^{\pi }\mathcal{=}\sum _{\mathcal{a}\in \mathcal{A}}\pi \mathcal{\left(}\mathcal{a}\mathcal{|}\mathcal{s}\mathcal{\right)}{\mathcal{P}}_{\mathcal{s}{\mathcal{s}}^{\prime }}^{\mathcal{a}}\end{array}$
and $$Rπs=∑a∈Aπ(a|s)Ras(3)(3)Rsπ=∑a∈Aπ(a|s)Rsa\cal{R}_{s}^\pi = \sum\limits_{a \in \cal{A}} \pi(a|s)\cal{R}_{s}^a \tag 3$$ allora possiamo riscrivere $$(1)(1)(1)$$ come



$\begin{array}{}\mathcal{\text{(4)}}& {v}_{\pi }\left(s\right)={\mathcal{R}}_{\mathcal{s}}^{\pi }\mathcal{+}\gamma \sum _{{\mathcal{s}}^{\prime }\in \mathcal{S}}{\mathcal{P}}_{\mathcal{s}{\mathcal{s}}^{\prime }}^{\pi }{\mathcal{v}}_{\pi }\mathcal{\left(}{\mathcal{s}}^{\prime }\mathcal{\right)}\end{array}$

Questo può essere scritto in forma di matrice



$\begin{array}{}\text{(5)}& \left[\begin{array}{c}{v}_{\pi }\left(1\right)\\ ⋮\\ {v}_{\pi }\left(n\right)\end{array}\right]=\left[\begin{array}{c}{\mathcal{R}}_{\mathcal{1}}^{\pi }\\ ⋮\\ {\mathcal{R}}_{\mathcal{n}}^{\pi }\end{array}\right]+\gamma \left[\begin{array}{ccc}{\mathcal{P}}_{\mathcal{11}}^{\pi }& \dots & {\mathcal{P}}_{\mathcal{1}\mathcal{n}}^{\pi }\\ ⋮& \ddots & ⋮\\ {\mathcal{P}}_{\mathcal{n}\mathcal{1}}^{\pi }& \dots & {\mathcal{P}}_{\mathcal{n}\mathcal{n}}^{\pi }\end{array}\right]\left[\begin{array}{c}{v}_{\pi }\left(1\right)\\ ⋮\\ {v}_{\pi }\left(n\right)\end{array}\right]\end{array}$

Or, more compactly,



$\begin{array}{}\mathcal{\text{(6)}}& {v}_{\pi }={\mathcal{R}}^{\pi }\mathcal{+}\gamma {\mathcal{P}}^{\pi }{\mathcal{v}}_{\pi }\end{array}$

Notice that both sides of $$(6)(6)(6)$$ are $$nnn$$-dimensional vectors. Here $$n=|S|n=|S|n=|\cal{S}|$$ is the size of the state space. We can then define an operator $$Tπ:Rn→RnTπ:Rn→Rn\cal{T}^\pi:\mathbb{R}^n\to\mathbb{R}^n$$ as



$\begin{array}{}\mathcal{\text{(7)}}& {\mathcal{T}}^{\pi }\mathcal{\left(}\mathcal{v}\mathcal{\right)}\mathcal{=}{\mathcal{R}}^{\pi }\mathcal{+}\gamma {\mathcal{P}}^{\pi }\mathcal{v}\end{array}$

for any $$v∈Rnv∈Rnv\in \mathbb{R}^n$$. This is the expected Bellman operator.

Similarly, you can rewrite the Bellman optimality equation



$\begin{array}{}\text{(8)}& {v}_{\ast }\left(s\right)=\underset{a\in \mathcal{A}}{max}\left({\mathcal{R}}_{\mathcal{s}}^{\mathcal{a}}\mathcal{+}\gamma \sum _{{\mathcal{s}}^{\prime }\in \mathcal{S}}{\mathcal{P}}_{\mathcal{s}{\mathcal{s}}^{\prime }}^{\mathcal{a}}{\mathcal{v}}_{\mathcal{\ast }}\mathcal{\left(}{\mathcal{s}}^{\prime }\mathcal{\right)}\right)\end{array}$

as the Bellman optimality operator



$\begin{array}{}\mathcal{\text{(9)}}& {\mathcal{T}}^{\mathcal{\ast }}\mathcal{\left(}\mathcal{v}\mathcal{\right)}\mathcal{=}\underset{\mathcal{a}\in \mathcal{A}}{max}\left({\mathcal{R}}^{\mathcal{a}}\mathcal{+}\gamma {\mathcal{P}}^{\mathcal{a}}\mathcal{v}\right)\end{array}$

The Bellman operators are "operators" in that they are mappings from one point to another within the vector space of state values, $$RnRn\mathbb{R}^n$$.

Rewriting the Bellman equations as operators is useful for proving that certain dynamic programming algorithms (e.g. policy iteration, value iteration) converge to a unique fixed point. This usefulness comes in the form of a body of existing work in operator theory, which allows us to make use of special properties of the Bellman operators.

Specifically, the fact that the Bellman operators are contractions gives the useful results that, for any policy $$ππ\pi$$ and any initial vector $$vvv$$,



$\begin{array}{}\mathcal{\text{(10)}}& \underset{k\to \mathrm{\infty }}{lim}\left({\mathcal{T}}^{\pi }{\mathcal{\right)}}^{\mathcal{k}}\mathcal{v}\mathcal{=}{\mathcal{v}}_{\pi }\end{array}$



$\begin{array}{}\mathcal{\text{(11)}}& \underset{k\to \mathrm{\infty }}{lim}\left({\mathcal{T}}^{\mathcal{\ast }}{\mathcal{\right)}}^{\mathcal{k}}\mathcal{v}\mathcal{=}{\mathcal{v}}_{\mathcal{\ast }}\end{array}$

where $$vπvπv_\pi$$ is the value of policy $$ππ\pi$$ and $$v∗v∗v_*$$ is the value of an optimal policy $$π∗π∗\pi^*$$. The proof is due to the contraction mapping theorem.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.