You are on page 1of 43

Aprendizaje por Refuerzo en Robótica Autónoma

Javier de Lope

26 de mayo de 2008

$Id: rlearning.tex,v 1.1 2008-04-30 08:51:14 jdlope Exp $


Contenido

Aprendizaje, Aprendizaje Automático y Robots.


Aprendizaje por Refuerzo.
Elementos del Aprendizaje por Refuerzo.
Objetivos y Recompensas.
Exploración vs. Explotación.
Algoritmos.
Ejemplos.
Resumen y Comentarios Finales.
Bibliografı́a.

2/43
Aprendizaje
Aprendizaje es el proceso de adquirir conocimientos, habilidades, actitudes o valores a través
del estudio, la experiencia o la enseñanza (Wikipedia).
Todo el mundo esta de acuerdo en que es una de las caracterı́sticas de la inteligencia, ya sea
humana o artificial.

Utilizar una solución que incorpore aprendizaje es apropiado cuando no se dispone de un


conocimiento completo del entorno cuando se está diseñando la solución.
Mediante el aprendizaje se proporciona autonomı́a a los sistemas que estemos construyendo.

3/43
¿Qué puede aprender un robot?

Un robot puede aprender sobre sı́ mismo.


Sobre el funcionamiento de sus sensores, sobre la precisión de sus actuadores, sobre qué com-
portamiento tiende a seguir a lo largo del tiempo, etc.

Un robot puede aprender sobre su entorno.


Puede crear un mapa del entorno, puede aprender caminos que le lleven a metas (ej. en un
laberinto), puede aprender qué zonas son peligrosas, etc.

Un robot también puede aprender de otros robots.


Cuántos robots hay en su zona, qué tipos de robots son, cómo tienden a comportarse, etc.

4/43
¿Por qué deberı́a aprender un robot?

El aprendizaje puede permitir que el robot realice mejor su tarea.


Esto es importante ya que los controladores de los robots no son perfectos.

El aprendizaje puede ayudar a que el robot se adapte a los cambios en su


entorno o tarea.
No es sencillo construir programas que se adapten a los cambios si no pueden ser anticipados
por el programador.

El aprendizaje puede simplificar el trabajo de programación del robot.


Algunas cosas son demasiado difı́ciles o demasiado tediosas de programar a mano y el robot
puede aprenderlas por sı́ solo.

5/43
Subcampos de Aprendizaje Automático

Russell y Norvig definen cuatro subcampos de aprendizaje:


• Aprendizaje mediante ejemplos (inductivo, ID3, . . .).
• Redes de neuronal artificiales.
• Métodos estadı́sticos (bayesianos, evolutivos, . . .).
• Aprendizaje por refuerzo.

S. Russell, P. Norvig (1995) Artificial Intelligence: A Modern Approach, Prentice Hall, New Jersey (2nd Edition 2002).

6/43
Aprendizaje por Refuerzo

El aprendizaje por refuerzo es un tipo de aprendizaje que permite que los agentes aprendan
a partir de la realimentación que reciben desde el entorno.
La idea básica está inspirada en la propia naturaleza, en la forma en la que personas y
animales aprenden (conductivismo).
El aprendizaje por refuerzo se basa en probar diferentes cosas y ver qué ocurre:
• Si las cosas van bien, tendemos a aplicar de nuevo ese comportamiento.
• Si las cosas van mal, tendemos a evitarlo.
Podemos usar estas ideas para que, por ejemplo, un robot aprenda a crear un controlador
para no tener que programarlo.

7/43
Aprendizaje por Refuerzo
Básicamente, un controlador de un robot asocia estados con acciones:
• Los estados vienen determinados por la información sensorial que adquiere del entorno.
• Las acciones dependen de los actuadores de que disponga el robot.
• El control une la información sensorial y las acciones que el robot puede llevar a cabo.
Con el aprendizaje por refuerzo, el robot prueba las diferentes acciones que tiene a su dispo-
sición en todos los estados en los que se encuentre y va registrando qué ocurre.

r e u y
Control Sistema
+_

ŷ
Sensores

8/43
Aprendizaje por Refuerzo

Aprendizaje por refuerzo implica adquirir o incorporar nuevo conocimiento o habilidades para
mejorar el rendimiento de un agente interactuando con el entorno que le rodea.
La base consiste en aprender qué hacer, es decir, cómo asociar situaciones con acciones,
maximizando una señal de recompensa numérica.
En este caso, no se le indica al agente qué acciones tomar como en otras técnicas de aprendi-
zaje automático, el agente debe descubrir con qué acciones obtiene más recompensa mediante
ensayo y error.
Con algunas acciones se obtienen recompensas inmediatas pero lo más interesante y represen-
tativo de estas técnicas es que hay acciones que permiten obtener recompensas retardadas.

9/43
Aprendizaje por Refuerzo
El aprendizaje por refuerzo no se caracteriza por el tipo de métodos de aprendizaje sino por
el tiempo de problemas de aprendizaje.
Cualquier método que resuelva el problema puede ser considerado como un método de apren-
dizaje por refuerzo.

Podemos encontrarnos con problemas que puedan ser descompuestos en episodios en los que
la tarea consiste llegar a un estado terminal.
Si ese estado terminal no puede definirse, estaremos tratando con tareas continuas o no
episódicas.

El aprendizaje por refuerzo no es supervisado.


Los métodos de aprendizaje supervisado aprenden de ejemplos proporcionados por un super-
visor externo.

En aprendizaje por refuerzo el problema no se divide en subproblemas como en otros métodos


de resolución de problemas.
El problema se considera como un “todo” y el agente interactúa con el entorno para resolverlo.

10/43
Aprendizaje por Refuerzo vs. Métodos Evolutivos
También pueden utilizarse métodos evolutivos tales como algoritmos genéticos, programación
genética, etc. para resolver problemas de aprendizaje por refuerzo.
Estos métodos buscan directamente en el espacio de polı́ticas sin usar funciones de valor.
Son métodos evolutivos porque su operación es análoga a la forma en la que se produce
la evolución biológica en los organismos que van teniendo más aptitudes incluso sin que el
individuo aprenda nada a lo largo de su vida.
Si el espacio de polı́ticas es suficientemente pequeño o si puede estructurarse de forma que
las polı́ticas buenas sean fáciles de encontrar, los métodos evolutivos pueden llegar a ser
efectivos.
Los métodos evolutivos tienen ventajas en problemas en los que el agente no puede percibir
el estado del entorno con precisión.
Aprendizaje por refuerzo implica aprender mientras que se interactúa con el entorno, lo cual
no ocurre con los métodos evolutivos.
El aprendizaje por refuerzo es apropiado para aprendizaje on-line, los métodos evolutivos
–salvo aproximaciones– no lo admiten.

D. Maravall, J. de Lope, J.A. Martı́n (2007) Combining the Best of the Two Worlds: Inheritance versus Experience, Nature Inspired
Problem-Solving Methods in Knowledge Engineering, LNCS 4528, Springer Berlin/Heidelberg, pp. 337–346.
11/43
Elementos del Aprendizaje por Refuerzo

Además del propio agente y el entorno, podemos identificar hasta cuatro elementos principales
más en los sistemas de aprendizaje por refuerzo:

• La polı́tica de control.
• La función de recompensa.
• La función de valor.
• Opcionalmente, un modelo del entorno.

12/43
Polı́tica de Control

La polı́tica de control define la forma en la que se comporta el agente en cada momento.


Es una correspondencia entre los estados del entorno en los que se puede encontrar o puede
percibir el agente y las acciones que pueden tomarse en esos estados.
Puede asemejarse a lo que en Psicologı́a se conoce como reglas o asociaciones de estı́mulos–
respuesta.
En ocasiones la polı́tica puede ser una simple función o una tabla, en otras puede ser necesario
mucha potencia de cómputo (por ejemplo, casos en los que estén involucrados procesos de
búsqueda).
La polı́tica es el núcleo del aprendizaje por refuerzo en el sentido en el que ella sola es
suficiente para determinar el comportamiento del agente.

13/43
Polı́tica de Control

Sensor I Sensor F Sensor D Acción Valor-Q


off off off izquierda 0.4
off off off recto 0.2
off off off derecha 0.9
off off on izquierda 0.0
off off on recto 1.0
off off on derecha 0.3
off on off izquierda 0.1
off on off recto 0.2
off on off derecha 0.7
off on on izquierda 0.8
off on on recto 1.0
off on on derecha 0.5
... ... ... ... ...
on on on izquierda 0.3
on on on recto 0.0
on on on derecha 0.6

14/43
Función de Recompensa

Define el objetivo en un problema de aprendizaje por refuerzo.


Establece una correspondencia entre cada estado del entorno (o par estado–acción) y un
número, una recompensa que indica la deseabilidad de ese estado.
El único objetivo del agente durante el proceso de aprendizaje es maximizar la recompensa
total que recibe durante toda la ejecución.
La función de recompensa define qué eventos son buenos y qué eventos son malos para el
agente, siendo la única vı́a de la que disponemos para indicarlo.
En sistemas biológicos, la recompensa podrı́a identificarse con placer y dolor.
Obviamente, la función es externa al agente y no puede ser alterada por él.

15/43
Función de Valor

Como alternativa a una polı́tica, el agente podrı́a aprender también una función que indique
cuán bueno es cada estado con respecto del objetivo.
La función de recompensa dice qué es bueno en un sentido inmediato, la función de valor
indica qué es bueno a lo largo de toda la ejecución.

El valor de un estado es la cantidad total de recompensa que un agente puede esperar


acumular en el futuro empezando desde ese estado.
Una analogı́a podrı́a ser considerar que las recompesas son como placer o dolor que recibimos
en un momento dado, mientras que los valores corresponden a un jucio más refinado sobre
si el entorno es placentero o no en un estado determinado.
Las recompensas la da el entorno, los valores deben ser estimados a partir de las secuencias
de observaciones que un agente hace a lo largo de toda la ejecución.

16/43
Modelo del Entorno

El modelo es algo que imita o emula el comportamiento del entorno.


Por ejemplo, dado un estado y una acción, el modelo podrı́a predecir el resultado del siguiente
estado y de la siguiente recompensa.
Los modelos se usan para planificación ya que podemos decidir qué acción realizar conside-
rando posibles situaciones futuras antes de que se hayan producido realmente.

La introducción de modelos es relativamente reciente.


Inicialmente los sistemas estaban basados en ensayo y error que se pueden considerar como
el extremo opuesto de un sistema que planifica.

17/43
Formalización del Problema
El aprendizaje por refuerzo es un tipo de aprendizaje que permite aprender a partir de la
interacción que se produce para lograr un objetivo.
El sistema que aprende lo denominaremos agente o controlador. Con lo que se interactúa,
todo lo que no es el agente, se llama entorno, sistema controlado o planta.
La interacción es continua: el agente selecciona acciones y el entorno responde a esas acciones
presentando nuevas situaciones al agente.
El entorno también genera recompensas, valores numéricos que el agente trata de maximizar
a lo largo del tiempo.

Agente

estado recompensa acción


st rt at
rt+1
Entorno
st+1

18/43
Formalización del Problema
El agente y el entorno interactúan en instantes de tiempo discretos t = 0, 1, 2, 3, . . . (aunque
se puede extender al caso continuo).
En cada instante t, el agente recibe alguna representación del estado del entorno st ∈ S,
donde S es el conjunto de los posibles estados.
A partir de eso, selecciona una acción at ∈ A(st), donde A(st) es el conjunto de acciones
disponibles desde el estado st.
Un instante más tarde, en parte como consecuencia de la acción, el agente recibe una re-
compensa numérica rt+1 ∈ R y pasa a un nuevo estado st+1.

Agente

estado recompensa acción


st rt at
rt+1
Entorno
st+1

19/43
Formalización del Problema
En cada instante, el agente actualiza una correspondencia entre estados y probabilidades de
selección de cada posible acción.
Esta asociación se denomina polı́tica y se denota πt, donde πt(s, a) es la probabilidad de que
at = a si st = s.
Los métodos de refuerzo especifican cómo debe cambiar la polı́tica el agente como resultado
de su experiencia.
El objetivo del agente es maximizar la cantidad total de recompensa que obtiene durante el
proceso.

Agente

estado recompensa acción


st rt at
rt+1
Entorno
st+1

20/43
Procesos de Decisión de Markov (MDP)

Se asume que:
Conjunto finito de estados S.
Conjunto de acciones A.
En cada instante t el agente se encuentra en un estado st ∈ S y elige una acción at ∈ A.
Entonces, recibe una recompensa inmediata rt.
Y cambia su estado a st+1 ∈ S.

Hipótesis de Markov: st+1 = δ(st, at) y rt = ρ(st, at).


• rt y st+1 dependen sólo del estado y de la acción actuales.
• Las funciones δ y ρ pueden ser no deterministas.
• Las funciones δ y ρ no tienen que tener conocimiento del agente necesariamente.

21/43
Objetivos y Recompensas
El objetivo del agente se formaliza en términos de la recompensa que recibe desde el entorno.
En cada paso, la recompensa es un valor numérico rt ∈ R.
El agente debe maximizar la cantidad total de recompensa que obtiene durante el proceso,
no la recompensa inmediata.
Algunos ejemplos de uso de recompensas:
• En laberintos se puede dar una recompensa igual a 0 hasta que llega a la salida que se
hace +1.
• O también se puede dar una recompensa de −1 hasta que llega a la salida para hacer
que el robot salga más rápidamente.
• En juegos se pueden dar recompensas de +1 cuando el agente gane la partida, −1 cuando
pierda y 0 cuando empate o haga tablas.
• Para hacer que un robot aprenda a andar se le puede dar una recompensa que sea
proporcional a la cantidad de espacio que avanza hacia delante (no binaria).
Hay que recompensar lo que queremos que aprenda el agente (¿qué?).
La recompensa no es el mecanismo para indicar conocimiento a priori al agente (¿cómo?).
Por ejemplo, en ajedrez hay que recompensar si gana, no si logra subobjetivos (captura de
piezas, cuestiones tácticas, etc.) ya que podrı́amos confundir al agente.

22/43
Tasa de Descuento (γ)
Se ha repetido varias veces que el agente debe maximizar la cantidad total de recompensa
que obtiene durante el proceso.
En el instante t la recompensa total o acumulada en el caso que consideremos o nos encon-
tremos ante una tarea episódica será:
Rt = rt+1 + rt+2 + rt+3 + . . . + rT
donde T representa el instante final y sT ∈ S es el estado terminal.
Cuando estamos ante tareas continuas, es decir, cuando no puede determinarse un estado
terminal y nos interesa que el agente aprenda constantemente del entorno (T → ∞):

X
Rt = rt+1 + γrt+2 + γ 2rt+3 + . . . = γ k rt+k+1
k=0

donde γ es la tasa de descuento (0 ≤ γ ≤ 1).


La tasa de descuento determina el peso de las recompensas futuras en el instante actual.
• Si γ = 0, sólo se tienen en cuenta las recompensas inmediatas (sólo maximizará rt+1).
• Según γ se aproxime a 1, las recompensas futuras cobran más valor.

23/43
Exploración vs. Explotación

En aprendizaje automático, el proceso de ir probando todas las posibles combinaciones de


estados y acciones se denomina exploración.
La exploración es importante ya que hasta que el robot no haya probado todas las acciones
posibles para ese estado, no se puede asegurar que se haya encontrado la mejor acción.
Normalmente no basta con probar todas las combinaciones ya que:
• Se han podido producir errores en el aprendizaje, por ejemplo, por errores en las medidas
de los sensores.
• El entorno o la tarea a realizar por el robot ha cambiado mientras que el robot estaba
aprendiendo por lo que puede que lo aprendido no sea válido.
Por eso es importante que el robot siga probando lo que ha aprendido (y no sólo en aprendizaje
por refuerzo, con cualquier técnica de aprendizaje).
Es decir, el robot tiene que seguir explorando en lugar de sólo explotar lo que ha aprendido.
En aprendizaje, el proceso de usar lo aprendido se conoce como explotación.

24
Selección de Acciones (-greedy )

El problema de la seleción de la acción a realizar se puede complicar si no damos opción a


que el agente explore el entorno lo suficiente y se dedique a explotar el conocimiento que ha
adquirido.
Probablemente, la alternativa más usada para la selección de la acción at ∈ A a realizar en
estado st ∈ S es la que se conoce como -greedy.
Se basa en tomar la acción usando el conocimiento adquirido durante la mayor parte del
tiempo y de vez en cuando (digamos, con una probabilidad pequeña ) seleccionar una
acción de forma aleatoria.
Esto puede formalizarse:
• Con probabilidad  ⇒ at ← random(a) ∈ A(st)
• En caso contrario ⇒ at ← arg maxa Q(st, a)
Es habitual que  se vaya disminuyendo con el paso del tiempo de forma que al final todas
las acciones se tomen a partir del conocimiento adquirido.

25/43
Selección de Acciones (softmax )
Un inconveniente de la selección de acciones mediante -greedy es que cuando explora, elige
igualmente entre todas las acciones.
Puede ocurrir que elija la peor acción de todas las posibles desde ese estado y para ciertos
problemas esto puede resultar no demasiado apropiado.
En el método de selección softmax, la mejor acción para ese estado tiene la mayor probabilidad
de ser elegida y la selección del resto se realiza a partir de una ponderación basada en el
valor de cada una de las acciones.
La probabilidad de selección de la acción a en el instante t puede venir determinada por la
distribución de Gibbs:
eQt(a)/τ
Pn Q (b)/τ
b=1 e
t

donde τ es la temperatura (τ > 0).

Con temperaturas altas, las acciones son (o tienden a ser) equiprobables.


Con temperaturas bajas, las acciones con valores más altos tienden a ser seleccionadas frente
a las que tienen valores más bajos.
Cuando τ → 0 se selecciona la mejor acción.

26/43
Sarsa

Inicializar la tabla Q(s, a) arbitrariamente


Repetir (para cada episodio):
• Inicializar el estado s
• Elegir a desde s usando la polı́tica derivada de Q (p.ej. -greedy)
• Repetir (para cada paso en el episodio):
◦ Realizar la acción a, observar r0 y s0
◦ Elegir a0 desde s0 usando la polı́tica derivada de Q (p.ej. -greedy)
◦ Q(s, a) ← Q(s, a) + α [r0 + γQ(s0, a0) − Q(s, a)]
◦ s ← s0 ; a ← a0
hasta que s sea terminal

G.A. Rummery, M. Niranjan (1994) On-line Q-learning Using Connectionist Systems, Technical Report CUED/F-INFENG/TR 166,
Engineering Department, Cambridge University.
27/43
On-policy vs. Off-policy
Uno de los grandes problemas en este tipo de métodos es mantener la suficiente exploración.
Si siempre seleccionamos la mejor acción desde un estado no podremos saber qué resultados
se pueden llegar a obtener desde las otras alternativas y nunca se sabrá si son mejores.

Una aproximación se basa en ignorar el problema comenzado cada episodio con pares estado–
acción seleccionados de forma aleatoria con lo que se llegarı́a a cubrir todas las posibilidades.
Esta posibilidad sólo es factible si se simulan los episodios pero no si se quiere aprender de
la experiencia real.

Los métodos on-policy fuerzan a que el agente siempre explore, tratando de encontrar la
mejor polı́tica.
En los métodos off-policy el agente también explora pero aprende una polı́tica óptima deter-
minı́stica que puede que no esté relacionada con la polı́tica seguida.
La caracterı́stica principal de los métodos on-policy es que estiman el valor de una polı́tica
mientras que la usan para el control; los métodos off-policy estas dos funciones están sepa-
radas y la polı́tica que se usa para estimar el valor puede ser determinı́stica mientras que se
siguen explorando las acciones en la polı́tica que genera el comportamiento.
Sarsa es on-policy ; Q-learning es off-policy.

28/43
Q-learning

Inicializar la tabla Q(s, a) arbitrariamente


Repetir (para cada episodio):
• Inicializar el estado s
• Repetir (para cada paso en el episodio):
◦ Elegir a desde s usando la polı́tica derivada de Q (p.ej. -greedy)
◦ Realizar la acción a, observar r0 y s0
◦ Q(s, a) ← Q(s, a) + α [r0 + γ maxa0 Q(s0, a0) − Q(s, a)]
◦ s ← s0
hasta que s sea terminal

C. Watkins (1989) Learning from Delayed Rewards, Ph.D. Thesis Dissertation, Cambridge University.
C. Watkins, P. Dayan (1992) Q-learning, Machine Learning, 8(3-4):279–292.
29/43
Gridworld

Problema con estados discretos en el que un


robot tiene que alcanzar una casilla objetivo.
Acciones discretas: ↑, ↓, ←, →.
Y también: %, &, ., -.
Algunas “columnas” tienen perturbaciones
S G de viento que hacen que el robot se despla-
ce una o más casillas hacia arriba además de
la que se le indica con la acción (no está per-
mitido salir del mundo).
Recompensa: 0 si el estado es la casilla des-
tino, −1 en cualquier otro caso.
α = 0,1,  = 0,2, γ = 1,0.

30/43
Gridworld (Sarsa)

Episodio Estado Final Long. 


0 [7, 3] 2295 0.198
2500
1 [7, 3] 309 0.196
2 [7, 3] 456 0.194
2000 3 [7, 3] 150 0.192
4 [7, 3] 463 0.190
1500 5 [7, 3] 165 0.188
6 [7, 3] 393 0.186
1000
7 [7, 3] 223 0.184
8 [7, 3] 382 0.182
500
9 [7, 3] 138 0.180
00
... ... ... ...
500 1000 1500 2000
181 [7, 3] 24 0.032
... ... ... ...
Longitud de camino por episodio 307 [7, 3] 21 0.009
... ... ... ...
485 [7, 3] 15 0.001

31/43
Gridworld (Q-learning)

Episodio Estado Final Long. 


0 [7, 3] 1885 0.198
2500
1 [7, 3] 797 0.196
2 [7, 3] 301 0.194
2000 3 [7, 3] 652 0.192
4 [7, 3] 301 0.190
1500 5 [7, 3] 99 0.188
6 [7, 3] 246 0.186
1000
7 [7, 3] 305 0.184
8 [7, 3] 331 0.182
500
9 [7, 3] 341 0.180
00
... ... ... ...
500 1000 1500 2000
188 [7, 3] 27 0.029
... ... ... ...
Longitud de camino por episodio 315 [7, 3] 29 0.008
... ... ... ...
620 [7, 3] 15 0.000

32/43
Péndulo Invertido

Mantener el péndulo vertical, limitando el


θ espacio que se tiene para maniobrar el carri-
to.
Variables de control: θ, θ̇, x, ẋ.
162 estados discretizados mediante Boxes.

x Acciones: +|F~ |, −|F~ | en el carrito.


Recompensa: cos(θ) si se mantiene estable,
−100 si se sale de la zona de maniobra o
si θ sobrepasa un determinado umbral.
α = 0,3,  = 0,01, γ = 1,0.

D. Michie, R.A. Chambers (1968) Boxes: An experiment in adaptative control, Machine Intelligence 2, (E. Dale, D. Michie, eds.),
Oliver & Boyd, Edinburgh, pp. 137–152.

33/43
Péndulo Invertido (Sarsa)

Episodio Pasos Recompensa 


0 6 -95 0.009
1 6 -95 0.009
5000
2 6 -95 0.009
4000 3 18 -83 0.009
4 30 -71 0.009
3000 5 29 -72 0.009
2000
6 5000 4999 0.009
7 5000 4999 0.009
1000 8 1316 1214 0.009
9 46 -55 0.009
0
... ... ... ...
0 100 200 300 400 500
165 881 779 0.001
... ... ... ...
Recompensa total por episodio 347 5000 4999 0.000
... ... ... ...
427 5000 4999 0.000

34/43
Ir a Objetivo

Aprender a que el robot se dirija a una meta


(odometrı́a, sonar, visión).
Variables de control: Orientación a la meta.
3, 5 y 7 estados.
3, 5 y 7 acciones.
Recompensa: proporcional a la orientación
al objetivo y alta negativa si se pierde (y se
termina el episodio).

35/43
Seguir a Robot

Una vez que el sistema ha aprendido el com-


portamiento de Ir a Objetivo podemos hacer
que vaya a un objetivo móvil.
De esta forma, se obtiene un nuevo compor-
tamiento Seguir a Robot.

36/43
Ir en Formación

Estados: Se usan los sensores laterales para averiguar si el robot contiguo está adelantado,
atrasado o en lı́nea. Para n robots, con n > 1 tendremos 3n−1 estados.
Acciones: Cada robot puede ir hacia delante y parar. (Inicialmente se consideró también ir
hacia atrás.)
Recompensa: +3 cuando se llega a una posición en la que estén todos alineados, −1 si no
lo están, y una recompensa negativa alta si se separan mucho.

37/43
Ir en Formación

Estados: Se usan los sensores laterales para averiguar si el robot contiguo está adelantado,
atrasado o en lı́nea. Para n robots, con n > 1 tendremos 3n−1 estados.
Acciones: Cada robot puede ir hacia delante y parar. (Inicialmente se consideró también ir
hacia atrás.)
Recompensa: +3 cuando se llega a una posición en la que estén todos alineados, −1 si no
lo están, y una recompensa negativa alta si se separan mucho.

38/43
Resumen

Es importante introducir aprendizaje en los programas de control de robots.


El aprendizaje por refuerzo es un tipo de aprendizaje que permite que los agentes aprendan
a partir de la realimentación que reciben desde el entorno.
La forma de “controlar” el aprendizaje es mediante la recompensa que recibe el agente desde
el entorno.
El objetivo del agente es maximizar la cantidad total de recompensa que obtiene durante el
proceso, no la recompensa inmediata.
Un problema importante es el de la valoración de la exploración y la explotación para deter-
minar cuándo se sale de una fase para entrar en la otra.

39/43
Mitos del Aprendizaje por Refuerzo

El aprendizaje por refuerzo no es apropiado para grandes espacios de estados.


Es cierto que los problemas de aprendizaje por refuerzo con grandes espacios de estados pue-
den ser difı́ciles de resolver si no se usan los algoritmos o métodos apropiados. Normalmente
tienen que ver con la representación o de selección de métodos con lookup table.
El aprendizaje por refuerzo es lento.
Normalmente suele tener que ver con un uso o selección inadecuada del método para el
problema. En ocasiones se compara la solución que se obtiene mediante refuerzo con una
solución a propósito de ingenierı́a.
El aprendizaje por refuerzo es una lookup table.
Inicialmente es cierto que todo el aprendizaje por refuerzo se basaba en tablas pero hay
bastantes métodos de refuerzo y aproximación de funciones.
El aprendizaje por refuerzo es Q-learning.
Obviamente esto no es cierto. Si bien el Q-learning puede ser el algoritmo más conocido,
existen un gran número de ellos: Actor-Critic, TD, Dyna, Sarsa, etc.

40/43
Éxitos del Aprendizaje por Refuerzo

Juegos
• Backgammon.
G. Tesauro (1995) Temporal difference learning and TD-Gammon, Comm. ACM, 38(3):58–68.

• Ajedrez por computadora.


J. Baxter, A. Tridgell, L. Weaver (1997) KnightCap: A chess program that learns by combining TD(lambda) with minimax
search, Proc. 15th Int. Conf. on Machine Learning, pp. 28–36.

Robótica y Control
• Control del gait de robots cuadrúpedos.
N. Kohl, P. Stone (2004) Policy gradient reinforcement learning for fast quadrupedal locomotion, Proc. IEEE Int. Conf. on
Robotics and Automation, pp. 2619–2624.

• Coordinación de movimientos de humanoides con visión.


D.C. Bentivegna et al. (2002) Humanoid robot learning and game playing using PC-based vision, Proc. IEEE/RSJ Int.
Conf. on Intelligent Robots and Systems, Vol. 3, pp. 2449–2454.

• Control de helicópteros.
A.Y. Ng et al. (2006) Autonomous inverted helicopter flight via reinforcement learning, Experimental Robotics IX, Springer
Tracts in Advanced Robotics 26, Springer, Berlin/Heidelberg, pp. 363–372.

41/43
Éxitos del Aprendizaje por Refuerzo

Sistemas Financieros
• Negociación.
J. Moody, M. Saffell (2001) Learning to Trade via Direct Reinforcement, IEEE Transactions on Neural Networks, 12(4).

Simulación
• Fútbol entre robots.
P. Stone, R.S. Sutton (2001) Scaling Reinforcement Learning toward RoboCup Soccer, Proc. 18th Int. Conf. on Machine
Learning, pp. 537–544.

HCI
• Sistemas de habla.
S. Singh, D. Litman, M. Kearns and M. Walker (2002) Optimizing Dialogue Management with Reinforcement Learning:
Experiments with the NJFun System, J. Artificial Intelligence Research, 16:105–133.

• Agentes software.
C. Isbell, C. Shelton, M. Kearns, S. Singh, and P. Stone (2002) Cobot: A Social Reinforcement Learning Agent, Proc. 14th
Neural Information Processing Systems, pp. 1393–1400.

42/43
Bibliografı́a

R.S. Sutton, A.G. Barto (1998) Reinforcement Learning: An Introduction,


The MIT Press, Cambridge, Massachusetts.

D.P. Bertsekas, J.N. Tsitsiklis (1996) Neuro-Dynamic Programming, Athena


Scientific, Nashua, New Hampshire (3rd Edition, 2006).

Reinforcement Learning and Artificial Intelligence, Universidad de Alberta


(editada por R.S. Sutton), http://rlai.cs.ualberta.ca/

R.S. Sutton, ed. (1992) Special Issue on Reinforcement Learning, Machine


Learning, 8(3–4):225–395.

M.J. Matarić (1997) Reinforcement learning in the multi-robot domain,


Autonomous Robots, 4(1):73–83.

43/43

You might also like