Professional Documents
Culture Documents
Javier de Lope
26 de mayo de 2008
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.
3/43
¿Qué puede aprender un robot?
4/43
¿Por qué deberı́a aprender un robot?
5/43
Subcampos de Aprendizaje Automático
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.
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
13/43
Polı́tica de Control
14/43
Función de Recompensa
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.
16/43
Modelo del Entorno
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
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
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
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.
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
23/43
Exploración vs. Explotación
24
Selección de Acciones (-greedy )
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
26/43
Sarsa
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
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
30/43
Gridworld (Sarsa)
31/43
Gridworld (Q-learning)
32/43
Péndulo Invertido
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)
34/43
Ir a Objetivo
35/43
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
39/43
Mitos del Aprendizaje por Refuerzo
40/43
Éxitos del Aprendizaje por Refuerzo
Juegos
• Backgammon.
G. Tesauro (1995) Temporal difference learning and TD-Gammon, Comm. ACM, 38(3):58–68.
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.
• 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
43/43