Caso de mejora de la estrategia
El propósito del aprendizaje por refuerzo es encontrar la política óptima. Se trata de dos conceptos básicos, valor de estado óptimo y estrategia óptima, y una herramienta: fórmula óptima de Bellman.
Primero, damos un ejemplo familiar de cómo la ecuación de Bellman mejora una política.
De acuerdo con la estrategia dada, podemos obtener fácilmente la ecuación de Bellman de la siguiente manera:
v π ( s 1 ) = − 1 + γ v π ( s 2 ) v_π(s_1)=-1+γv_π(s_2)vpag( s1)=− 1+v_ _pag( s2) v π ( s 2 ) = + 1 + γ v π ( s 4 ) v_π(s_2)=+1+γv_π(s_4)vpag( s2)=+ 1+v_ _pag( s4) v π ( s 3 ) = + 1 + γ v π ( s 4 ) v_π(s_3)=+1+γv_π(s_4)vpag( s3)=+ 1+v_ _pag( s4) v π ( s 4 ) = + 1 + γ v π ( s 4 ) v_π(s_4)=+1+γv_π(s_4)vpag( s4)=+ 1+v_ _pag( s4)
当γ = 0.9 γ=0.9C=0.9时,求得
v π ( s 4 ) = v π ( s 3 ) = v π ( s 2 ) = 10 v π ( s 1 ) = 8 v_π(s_4)=v_π(s_3)=v_π(s_2)= 10 \quad v_π(s_1)=8vpag( s4)=vpag( s3)=vpag( s2)=10vpag( s1)=8
Una vez que conoce el valor del estado, puede obtener el valor de la acción y usar el estados 1 s_1s1A modo de ejemplo, el resultado es el siguiente:
q π ( s 1 , a 1 ) = − 1 + γ v π ( s 1 ) = 6,2 q_π(s_1,a_1)=-1+γv_π(s_1)=6,2qpag( s1,a1)=− 1+v_ _pag( s1)=6.2 q π ( s 1 , a 2 ) = − 1 + γ v π ( s 2 ) = 8 q_π(s_1,a_2)=-1+γv_π(s_2)=8qpag( s1,a2)=− 1+v_ _pag( s2)=8 q π ( s 1 , a 3 ) = 0 + γ v π ( s 3 ) = 9 q_π(s_1,a_3)=0+γv_π(s_3)=9qpag( s1,a3)=0+v_ _pag( s3)=9 q π ( s 1 , a 4 ) = − 1 + γ v π ( s 1 ) = 6,2 q_π(s_1,a_4)=-1+γv_π(s_1)=6,2qpag( s1,a4)=− 1+v_ _pag( s1)=6.2 q π ( s 1 , a 5 ) = 0 + γ v π ( s 1 ) = 7.2 q_π(s_1,a_5)=0+γv_π(s_1)=7.2qpag( s1,a5)=0+v_ _pag( s1)=7.2
A través de los cálculos anteriores y los sentimientos intuitivos, sabemos que esta estrategia no es buena, entonces, ¿cómo debemos mejorar la estrategia cuando la estrategia no es buena? Esto depende del valor de la acción. Podemos expresar la estrategia actual en forma matemática de la siguiente manera:
π ( a 1 ∣ s 1 ) = { 1 a = a 2 0 a ≠ a 2 π(a_1|s_1)=\left\{ \begin{matrix} 1 \ quad a=a_2\\ 0 \quad a≠a_2\\ \end{matriz} \right.π ( un1∣ s1)={
1a=a20a=a2
Calculando el estado anterior s 1 s_1s1Tomando como ejemplo el valor de acción obtenido, podemos saber que q π ( s 1 , a 3 ) q_π(s_1,a_3)qpag( s1,a3) es el más grande, por lo que podemos considerar elegirun 3 a_3a3Como nueva estrategia, la nueva estrategia se expresa de la siguiente manera:
π nuevo ( a ∣ s 1 ) = { 1 a = a ∗ 0 a ≠ a ∗ π_{nuevo}(a|s_1)=\left\{ \begin{ matriz} 1 \quad a=a^*\\ 0 \quad a≠a^*\\ \end{matriz} \right.Pinuevo _ _( un ∣ s1)={
1a=a∗0a=a∗
a = a ∗ a=a^*a=aLa probabilidad del período ∗ es 1, lo que indica que la nueva estrategia definitivamente elegiráun ∗ a^*a∗ , y en este ejemploa ∗ = maxaq π ( s 1 , a ) = a 3 a^*=max_aq_π(s_1,a)=a_3a∗=máx .unqpag( s1,un )=a3
Ecuación de Optimalidad de Bellman: Definición
Mediante el cálculo del ejemplo anterior, ahora podemos dar la definición de la estrategia óptima, la cual se define de la siguiente manera:
Si v π ∗ ( s ) ≥ v π ( s ) para todos ∈ S Entonces significa que π ∗ es la estrategia óptima estrategia si \quad v_{ π^*}(s)≥v_{π}(s) \quad for\quad all\quad s∈S\quad significa que π^* es la estrategia óptimasivPi∗( s )≥vpag( s )para otodo _s∈SEntonces significa π∗ es la estrategia óptima
最优策略这一定义引发了许多问题:
最优策略存在吗?
最优策略唯一吗?
最优策略是随机的还是确定性的?
如何获得最优策略?
Para responder a estas preguntas, necesitamos estudiar la fórmula de optimización de Bellman.
La segunda fórmula en la figura anterior es la fórmula óptima de Bellman. Comparada con la fórmula de Bellman, podemos encontrar que la fórmula óptima de Bellman es la fórmula de Bellman bajo la condición de estrategia óptima. La forma de deformación y la forma vectorial de Bellman se dan a continuación, como se muestra en la siguiente figura:
Podemos encontrar que hay dos incógnitas v y π en la fórmula óptima de Bellman v y πv y π , ¿cómo resolver una ecuación con dos incógnitas? Mostramos en la siguiente fórmula que se puede resolver.
Sabemos por los dos ejemplos anteriores que siq ( s , a ) q(s,a)q ( s ,a ) sabe, entonces el valor máximo es igual amax ( q ( s , a ) ) max(q(s,a))máximo x ( q ( s ,a )),当a = a ∗ = maxaq ( s , a ) a=a^*=max_aq(s,a)a=a∗=máx .unq ( s ,a ) , su expresión matemática y condiciones son las siguientes:
Ecuación de Optimalidad de Bellman: Resolviendo
Al resolver la ecuación de optimización de Bellman, introducimos f ( v ) f(v)f ( v ) , su forma es la siguiente:
Antes de resolver la ecuación anterior, introducimos varios conceptos:punto fijo, mapa de contracción
Función conocida f ( x ) , si existe x tal que f ( x ) = x entonces el punto ( x , f ( x ) ) es un punto fijo de la función f ( x ) Función conocida f(x), si existe x, tal que f(x)=x entonces el punto (x, f(x)) es un punto fijo de la función f(x)Función conocida f ( x ) ,Si x existe ,tal que f ( x )=x entonces punto ( x ,f ( x )) es un punto fijo de la función f ( x ) Supongamos que ( X , d X ) y ( Y , d Y ) son espacios métricos, y f : X → Y es un mapeo. Si hay una constante k ∈ [ 0 , 1 ) tal que ∣ ∣ d Y − d X ∣ ∣ ≤ γ ∣ ∣ X − Y ∣ ∣ entonces f se llama mapa de compresión y k se llama coeficiente de compresión. X,d_X) y (Y ,d_Y) es un espacio métrico, y f:X→Y es un mapeo. Si hay una constante k∈[0, 1) tal que \quad||d_Y-d_X||≤γ||XY||\quad se llama mapa de compresión, k se llama coeficiente de compresiónSea ( X ,dX) y ( Y ,dy) es un espacio métrico ,f : X→Y es el mapeo. Si hay una constante k∈[ 0 , 1 ) tal que∣∣ rey−dX∣∣≤γ ∣∣ X−Y∣∣ _Luego, f se llama el mapa de compresión, y k se llama el coeficiente de compresión
Con los dos conceptos anteriores, ahora presentamos el teorema de punto fijo de Banach (Teorema de mapeo de contracción), que es un teorema importante en el análisis matemático. Afirma que un mapa compresivo en un espacio métrico completo debe tener un único punto fijo.
De acuerdo con el teorema del punto fijo de Banach, se pueden obtener las siguientes propiedades:
siempre que x = f ( x ) x=f(x)X=Una ecuación de la forma f ( x ) sifff es un mapa de compresión, entonces
1.Debe haber un punto fijo x ∗ , de modo que f ( x ∗ ) = x ∗ Debe haber un punto fijo x^*, de modo que f(x^*)=x^*Debe haber un punto fijo x∗ ,tal que f ( x∗ )=X∗
2. El punto fijo x ∗ es el único que existe 2. El punto fijo x^* es el único que existe2. Punto fijo x∗ es el único que existe
3. El punto fijo se puede obtener por iteración: xk + 1 = f ( xk ) , xk ≈ x ∗ , cuando k tiende a ∞ 3. El punto fijo se puede obtener por iteración: x_ { k+1}=f(x_k), x_k≈x^*, cuando k tiende a ∞;3. El punto fijo se puede obtener por iteración: xk + 1=f ( xk) ,Xk≈X∗ , cuandoktiendea∞;
Ahora, podemos usar el teorema de punto fijo de Banach anterior para resolver la ecuación de optimización de Bellman, antes de resolver, necesitamos probar que f ( v ) f(v)f ( v ) es un mapa de compresión, pero aquí solo se lo damos a la aplicación, y los amigos que estén interesados en el proceso de prueba pueden comprobarlo por sí mismos. Del teorema del punto fijo de Banach, podemos saber que debe haber un únicov ∗ v^*v∗ , y se puede obtener por iteración.
Ejemplo de solución de fórmula óptima de Bellman
Utilizamos un ejemplo simple para profundizar nuestra comprensión del proceso de resolución de la ecuación de Bellman. Como se muestra en la siguiente figura, el robot tiene tres comportamientos: izquierda al a_layo, a la derecha ar a_rar, in situ a 0 a_0a0, la recompensa se establece en r punto final = + 1 r_{punto final} = +1rpunto final=+ 1 ,r límites = − 1 r_{límites}=-1rPerímetro=− 1
De acuerdo con las reglas formuladas anteriormente, podemos obtenerq ( s , a ) q(s,a)q ( s ,a )
La pregunta ahora es cómo encontrar el valor de estado óptimov ∗ ( si ) v^*(s_i)v∗ (syo) y política óptimaπ ∗ π^*Pi∗
Usando el método presentado arriba, tomeγ = 0.9 γ=0.9C=0.9 , cuandok = 0 k=0k=Cuando 0 , primero damos un valor inicial al azar
.Se
puede ver que hemos encontrado la estrategia óptima.
Propiedades de las estrategias óptimas
¿En qué factores pensamos que afectan la estrategia óptima? De acuerdo con la siguiente fórmula, los factores que afectan la estrategia óptima son r, γ y el entorno del modelo r, γ y el entorno del modelor , γ y el entorno del modelo