Aprendizaje por recompensa
Transcripción
Aprendizaje por recompensa
¿Qué es aprendizaje por recompensa? En el aprendizaje por recompensa un, agente vive en un medio ambiente en el que no se tiene maestro. El agente detecta condiciones ambientales en este medio ambiente, y realiza acciones que modifican su estado respecto al medio ambiente. El medio ambiente entrega pago, también llamado recompensa, que puede ser positivo o negativo, al agente. El sistema debe aprender a generar acciones que hagan que su pago esperado sea máximo. Nótese que el pago que el medio ambiente entrega al agente puede ser considerado también una condición ambiental; la única distinción es la forma en que el agente trata este pago al intentar maximizarlo. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 1 Clasificación del medio ambiente Accesible vs. no accesible Deterministico vs. estocástico Episódico vs. no episódico Discreto vs. continuo ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 2 Clasificación por el pago Por la forma en que se relaciona el pago con el medio ambiente y las acciones del agente se pueden tener las siguientes caracterı́sticas: Retraso en el pago Se dice que existe retraso en el pago cuando exite un retaso en el tiempo entre la recompensa y las acciones que la provocaron. Pago estocástico Se dice que el pago es estocástico cuando esté es una variable estócastica. Diferentes niveles de pago Existe diferentes niveles de pago cuando las acciones no pueden ser clasificadas en correctas e incorrectas únicamente. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 3 Formas de modelar el medio ambiente Ecuaciones diferenciales de estado dx = f (x(t), u(t), t); dt y(t) = g(x(t), u(t), t); r(t) = h(x(t), u(t), t); Ecuaciones de diferencias de estado x(k + 1) = f (x(k), u(k), k); y(k) = g(x(k), u(k), k); r(k) = h(x(k), u(k), k). ue le n z c M. Va D.R. la Proceso de Markov donde por cada estado existe un pago asociado ,1 9 9 9– 2 0 06 4 Otras formas de clasificar De tiempo discreto vs. de tiempo continuo Cuando un medio ambiente puede ser modelado mediante un sistema de ecuaciones de diferencias se dice que es de tiempo discreto. Variante en el tiempo vs. no variante en el tiempo Cuando las ecuaciones que modelan un medio ambiente dependen del tiempo, t o k, se dice que es variante en el tiempo. Dinámico vs. estático Cuando la ecuación de estado que modela un medio ambiente depende del estado anterior, se dice que es dinámico. Observable Se dice que el medio ambiente es observable cuando es posible deducir su estado tomando en cuenta la historia de las acciones que se han realizado sobre él y la historia de sus salidas. ue le n z c M. Va D.R. la Controlable Se dice que el medio ambiente es controlable cuando el posible llevarlo ,1 9 9 9– 2 0 06 5 de cualquier estado dado a cualquier otro en un tiempo finito realizando las acciones apropiadas sobre él. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 6 Tareas de aprendizaje Tarea de imitación El agente debe aprender a comportarse como un modelo dado. El agente y el modelo reciben las mismas entradas, y sus salidas son comparadas. El medio ambiente posee un evaluador de desempeño que asigna más alto pago al agente cuando sus salidas son más parecidas a las del modelo. x Modelo y Agente pago ue le n z c M. Va D.R. la Evaluador de Desempeño ,1 9 9 9– 2 0 06 7 Tarea de control El agente debe aprender a producir las entradas que son necesarias para que una planta produzca las salidas deseadas. El agente recibe como entradas las salidas deseadas de la planta; las salidas del agente son las entradas a la planta. El medio ambiente posee un evaluador de desempeño que asigna más alto pago cuando las salidas de la planta son más parecidas a las salidas desedas. x Agente Planta y pago Evaluador de Desempeño ue le n z c M. Va D.R. la La tarea de control puede reducirse a la tarea de imitación si se dice que el agente está tratando de imitar el inverso del modelo. ,1 9 9 9– 2 0 06 8 Exploración vs. Explotación En cualquier caso, el agente debe contruir un modelo interno del medio ambiente. En el caso general, este modelo es solamente un modelo aproximado. Dado el modelo aproximado, el agente debe escoger las acciones que hagan que se maximice el pago esperado. Estos dos objetivos pueden ser opuestos: el aprender el medio ambiente puede ser opuesto a maximizar el pago, es decir, existe un conflicto entre la exploración del medio ambiente y la explotación de la información que ya se tiene de él. Por lo tanto, el aprendizaje por recompensa puede dividirse en el aprendizaje del medio ambiente, esto es, el encontrar un modelo (posiblemente aproximado) que relacione acciones, condiciones ambientales, y pago, y la optimización de las acciones para obtener el máximo pago esperado. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 9 Aprendizaje pasivo El agente no tiene control sobre el medio ambiente, y su único objetivo es determinar el pago esperado en cada estado. El medio ambiente es una cadena de Markov con pago asociado a cada estado. En este medio ambiente existe un estado inicial y estados terminales. Cuando se alcanza un estado terminal el medio ambiente se inicializa. En este medio ambiente ocurren secuencias de entrenamiento en las que el agente comienza en el estado inicial y termina en uno de los estados terminales. Se asume que el agente tiene suficiente memoria para recordar todos los estados visitados entre el inicio y cuando se llega a un estado terminal. El objetivo del aprendizaje es determinar una utilidad esperada de cada estado no terminal i, ui. Se asume que la utilidad de una secuencia es la suma de las utilidades de los estados visitados en la secuencia. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 10 Un ejemplo −0.04 −0.04 9 +1 −0.04 10 −0.04 final 11 −1 −0.04 6 5 −0.04 −0.04 inicio 1 final 7 −0.04 2 12 8 −0.04 3 4 El agente se mueve con una probabilidad de 0.8 en la dirección en la que desea moverse, y con una probablidad de 0.2 en ángulo recto aleatorio de esa dirección. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 11 Una estrategia: la óptima +1 9 10 11 12 −1 ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 5 6 7 8 1 2 3 4 12 Utilidad de un estado La utilidad de un estado es el valor esperado de la suma de las recompensas que se obtienen a partir de ese estado hasta llegar a un estado final. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 13 Estimación directa de la utilidad Cada secuencia de entrenamiento es un muestreo de utilidad de los estados que se visitan. Por ejemplo, la secuencia 1 → 2 → 3 → 2 → 3 → 7 → 11 → 12 nos proporciona las siguientes muestras: estado pago muestra de utilidad 1 −0.04 2 −0.04 3 −0.04 2 −0.04 3 −0.04 7 −0.04 11 −0.04 12 +1 0.72 0.76 0.80 0.84 0.88 0.92 0.96 1.0 Con suficientes secuencias de entrenamiento se puede estimar la utilidad de cada estado con error tan pequeño como se desee. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 14 Utilidades con la estrategia óptima 0.8116 0.8678 9 0.7616 5 0.7053 1 ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 10 0 0.9178 11 0.6603 6 0.6553 2 1 7 0.6114 3 12 −1 8 0.3879 4 15 Cálculo exacto de la utilidad Existe una forma más rápida de aprender las utilidades de los estados dada una estrategia fija. Sea M = [mij ] una matriz de probabilidades de transición donde mij es la probabilidad de pasar del estado i al estado j, Sea ri la recompensa asociada al estado i. Sea ui la utilidad esperada de del estado i. La utilidad i debe cumplir la siguiente ecuación: u i = ri + γ ue le n z c M. Va D.R. la n mij uj . (1) j=1 donde n es el número de estados y γ es un factor de descuento. ,1 9 9 9– 2 0 06 16 Definamos r = u = r1 r2 · · · rn u1 u2 · · · un La ecuación 1 puede escribirse en forma vectorial como u = r + γMu La ecuación anterior puede resolverse como: u = (I − γM)−1r. ue le n z c M. Va D.R. la de donde se obtiene la utilidad exacta de cada estado. ,1 9 9 9– 2 0 06 17 Programación dinámica adaptable En caso de no tener conocimiento del medio ambiente (recompensas) ni de las probabilidades de transición (dada una estrategia fija), la matriz M y el vector r se obtienen a partir de las secuencias de entrenamiento. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 18 Para el ejemplo: ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ r=⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 −0.04 −0.04 −0.04 −0.04 −0.04 0 −0.04 −1 −0.04 −0.04 −0.04 1 ⎤ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ u=⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ 0.7053 0.6553 0.6114 0.3879 0.7616 0 0.6603 −1 0.8116 0.8678 0.9178 1 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ 19 Matriz de probabilidades de transición M ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 0.1 0.8 0 0 0 0 0 0 0 0 0 0 0.1 0.2 0.8 0 0 0 0 0 0 0 0 0 0 0 0.1 0.8 0 0 0 0 0 0 0 0 0 0 0 0.1 0 0 0 0 0 0 0 0 0.8 0 0 0 0.2 0 0 0 0.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0 0 0 0.1 0 0 0 0.1 0 0 0 0 0.1 0 0 0.1 0 0 0 0 0 0 0 0 0 0.8 0 0 0 0.1 0 0 0 0 0 0 0 0 0 0 0 0.8 0.2 0 0 0 0 0 0 0 0 0.8 0 0 0.8 0.1 0 0 0 0 0 0 0 0 0 0 0 0.8 0 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ 20 Motivación para otros métodos El método de programación dinámica adaptable (ADP) requiere almacenar la matriz M y resolver el sistema de ecuaciones u = r + γMu. En caso de que n sea grande esto puede volverse difı́cil. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 21 Cálculo mediante diferencias temporales Diferencias temporales (TD) es un método incremental que no requiere la matriz M. Cada vez que el sistema pasa del estado i al estado j se ajusta la utilidad del estado i de la siguiente manera: ui ←− ui + α (ri + γuj − ui) , o lo que es lo mismo ui ←− (1 − α)ui + α(ri + γuj ). ue le n z c M. Va D.R. la Lo que es semejante a la regla de aprendizaje de Kohonen. La constante α puede hacerse dependiente del número de veces que el estado i ha sido visitado. ,1 9 9 9– 2 0 06 22 Aprendizaje activo En aprendizaje pasivo el agente tiene una estrategia fija que determina su comportamiento. En aprendizaje activo el agente debe decidir qué acciones tomar. Ahora, la matriz de transición depende de la acción. La utilidad se define de la siguiente manera: ui = ri + γ max a n mij (a) uj j=1 u = r + γ max (M(a)u) a ue le n z c M. Va D.R. la Esta ecuación puede resolverse para u usando el método de iteración simple. El criterio de terminación puede ser que los valores de la utilidades se establezcan (iteración de valor) o que la estrategia implicada por estas utilidades se estrablezca (iteración de estrategia). ,1 9 9 9– 2 0 06 23 Valores q Sea Q = [qai] es una matriz donde qai es la utilidad de realizar la acción a en el estado i, por lo tanto ui = max qai a u = max Q a ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 24 Aprendizaje Q Los valores q pueden obtener de manera incremental. Cada vez que el sistema pasa del estado i al estado j realizando la acción a se ajusta el valor qai de la siguiente manera: qai ←− qai + α ri + γ max qbj − qai b o lo que es lo mismo, qai ←− (1 − α)qai + α ri + γ max qbj b ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 25 Cadena de cubetas (BB) Cuando el clasificador j dispara gracias a un mensaje producido por el clasificador i, se ajusta la fuerza del clasificador i de la siguiente manera: Si ←− Si − Bi + Ri + Bj donde Si, Bi, y Ri son la fuerza, la oferta, y la recompensa del clasificador i. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 26 Cadena de cubetas (BB) Cuando el clasificador j dispara gracias a un mensaje producido por el clasificador i, se ajusta la fuerza del clasificador i de la siguiente manera: Si ←− Si − Bi + Ri + Bj donde Si, Bi, y Ri son la fuerza, la oferta, y la recompensa del clasificador i. Suponiendo que la oferta es B = kS se tiene lo siguiente: Si ←− Si − kSi + Ri + kSj ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 26 BB como diferencias temporales Para lograr que la fuerza de estado estable sea igual al pago esperado, se hace la sustitución R ← kR se tiene entonces que Si ←− (1 − k)Si + k (Ri + Sj ) Si se hacen las sustituciones S → u y k → α se puede ver que la cadena de cubetas es similar a diferencias temporales con γ = 1 (esto es TD(1) en la notación de Sutton). ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 27 BB como diferencias temporales Para lograr que la fuerza de estado estable sea igual al pago esperado, se hace la sustitución R ← kR se tiene entonces que Si ←− (1 − k)Si + k (Ri + Sj ) Si se hacen las sustituciones S → u y k → α se puede ver que la cadena de cubetas es similar a diferencias temporales con γ = 1 (esto es TD(1) en la notación de Sutton). Para lograr TD(λ) se puede incluir la constante γ: Si ←− (1 − k)Si + k (Ri + γSj ) ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 27 Aprendizaje Q en SACs Se puede lograr aprendizaje Q en un sistema adaptable de clasificadores si la oferta que recibe un clasificador i cuando produce un mensaje que satisface a otro clasificador j que dispara es la oferta del clasificador más fuerte que podrı́a haber disparado: Si ←− (1 − k)Si + k Ri + max Sw w∈M donde M es el conjunto de clasificadores satisfechos por el mensaje producido por el clasificador i. ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 28 Aprendizaje Q en SACs Se puede lograr aprendizaje Q en un sistema adaptable de clasificadores si la oferta que recibe un clasificador i cuando produce un mensaje que satisface a otro clasificador j que dispara es la oferta del clasificador más fuerte que podrı́a haber disparado: Si ←− (1 − k)Si + k Ri + max Sw w∈M donde M es el conjunto de clasificadores satisfechos por el mensaje producido por el clasificador i. Con el factor de descuento γ se tiene lo siguiente: ue le n z c M. Va D.R. la Si ←− (1 − k)Si + k Ri + γ max Sw w∈M ,1 9 9 9– 2 0 06 28 Lo que no hemos considerado. . . Pago estocástico Medio ambiente variante en el tiempo Medio ambiente complejo ue le n z c M. Va D.R. la ,1 9 9 9– 2 0 06 29