Sesin 12 Procesos de Decisin de Markov Incertidumbre
Sesión 12: Procesos de Decisión de Markov Incertidumbre - MDP, L. E. Sucar
Procesos de Decisión de Markov • Procesos de Decisión Secuenciales • Procesos de Decisión de Markov (MDP) • Método de Iteración de Valor • Método de Iteración de Política • Procesos de Decisión de Markov Parcialmente Observables (POMDP) • Aplicaciones Incertidumbre - MDP, L. E. Sucar 2
Problemas de decisión secuenciales • Problema de decisión que involucra un conjunto de decisiones cuyo resultado (utilidad) se conoce hasta el final • Se considera que se tiene una serie de estados y decisiones asociadas en el tiempo Incertidumbre - MDP, L. E. Sucar 3
Modelo de Transición • Normalmente existe incertidumbre respecto a los resultados de una decisión (acción) • Esta incertidumbre se modela como una probabilidad de llegar al estado s’ dado que se encuentra en el estado s y se realiza la acción a: P(s’| s, a) • Las transición entre estados sólo dependen del estado actual por lo que se consideran procesos markovianos Incertidumbre - MDP, L. E. Sucar 4
Ejemplo de Modelo de Transición • Probabilidad dirección deseada = P(s’|s)=0. 8 • Probabilidad 2 direcciones vecinas = P(¬s’|s)=0. 1 Incertidumbre - MDP, L. E. Sucar 5
Historia ambiental • Cuando solo se conoce la utilidad de los estados terminales, la utilidad de los estados restantes depende de una secuencia de estados (historia). • Ejemplo: Uh = valor estado final – 1/25 (número de pasos) Incertidumbre - MDP, L. E. Sucar 6
Utilidad • El valor de utilidad de un estado s depende de la secuencia de acciones tomadas a partir de dicho estado de acuerdo a la política establecida ( ) • En principio, se puede obtener como la utilidad esperada de todas las posibles secuencias de acciones (Hs) y la utilidad resultante para c/u: U(s) = UE( Hs ) = S P(Hs ) Uh(Hs ) Incertidumbre - MDP, L. E. Sucar 7
Utilidad • Si la utilidad es separable, se puede estimar como la utilidad del estado presente y la utilidad de los siguiente estados • La forma más sencilla es que sea una función aditiva: U[s 0, s 1, . . . sn] = R(s 0) + U[s 1, . . . sn] • Donde R se conoce como la función de recompensa • La función de recompensa en nuestro ejemplo es: R = +1, -1 para los estados terminales R = -1/25 para los demás estados Incertidumbre - MDP, L. E. Sucar 8
Ejemplo – robot móvil 3 2 1 -1/25 -1/25 -1/25 3 1 2 Incertidumbre - MDP, L. E. Sucar 1 -1 -1/25 4 9
Modelo de los Sensores • Normalmente el agente puede sensar el ambiente para observar en que estado se encuentra. • Existen dos casos principales: – Observa directamente el estado donde se encuentra (ambiente accesible) – Se tiene incertidumbre sobre el estado en que se encuentra (ambiente parcialmente observable) Incertidumbre - MDP, L. E. Sucar 10
MDP Incertidumbre - MDP, L. E. Sucar 11
POMDP Incertidumbre - MDP, L. E. Sucar 12
Política Óptima • Una política indica la acción que se debe ejecutar dado el estado (o probabilidad del estado) • Dado el modelo de transición y el modelo de los sensores, el objetivo es encontrar una política para maximizar la utilidad esperada la cual se conoce como política óptima. • Al calculo de la política óptima en un ambiente accesible o parcialmente observable se le conoce como proceso de decisión de Markov, o proceso de decisión de Markov parcialmente observable. Incertidumbre - MDP, L. E. Sucar 13
Ejemplo de Política Inicio Incertidumbre - MDP, L. E. Sucar 14
Horizonte finito • Los problemas con un número finito de pasos se conocen como MDP de horizonte finito. • Si se tiene un número finito de pasos (n), entonces la política óptima se puede calcular eficientemente utilizando PD: Incertidumbre - MDP, L. E. Sucar 15
Programación Dinámica Algoritmo – Se obtiene la utilidad de los estados en el paso n -1 en base a la utilidad de los estados terminales y se determina la mejor acción – Se obtiene la utilidad de los estados en el paso n -2 en base al paso n-1, y así sucesivamente – Al final se tiene la política óptima (mejor acción para cada estado) Incertidumbre - MDP, L. E. Sucar 16
Programación Dinámica • Dada la condición de separabilidad, la utilidad de un estado se puede obtener en forma iterativa maximizando la utilidad del siguiente estado: U(s) = R(s) + maxa Sj P(s’ | s, a) U(s’) • La política óptima esta dada por la acción que de mayor utilidad: P*(s) = arg maxa Sj P(s’ | s, a) U(s’) Incertidumbre - MDP, L. E. Sucar 17
PD – ejemplo robot • Asumiendo que se llega a la meta en n pasos: U(a=derecha) = [0. 8*1 -0. 1*1/25] = 0. 792 U(a=abajo) = [0. 1*1 -0. 8*1/25 -0. 1*1/25] = 0. 064 U(a=izq. ) = [-0. 1*1/25 -0. 8*1/25 +0. 1*1] = 0. 064 U(s 33) = -1/25 + max [. 792, . 064, -. 064] = 0. 752; P*(s 31) = derecha 3 2 1 1 Incertidumbre - MDP, L. E. Sucar 2 3 4 18
Horizonte infinito • Los problemas en que puede haber un número infinito de pasos se conocen como MDP de horizonte infinito • Muchos problemas, como el ejemplo del robot, son de horizonte infinito y no se pueden resolver directamente por PD. • En el caso de horizonte infinito, se puede obtener la utilidad de los estados y en base a ésta la política óptima, mediante un método iterativo Incertidumbre - MDP, L. E. Sucar 19
Procesos de Decisión de Markov • Formalmente un MDP se representa mediante la tupla M= {S, A, T, R} donde: – S={s 1, s 2, . . sn} conjunto de estados – A={a 1, a 2, …am} conjunto de acciones – T= p(s’|s, ak) función de transición de estados de dimensión S X A X S. – R=r(s, a, s’) función de recompensa de dimensión S X A X S. – A(s) son las acciones aplicables al estado s. – : s → a Política determinista de M que especifica la acción dado el estado. Incertidumbre - MDP, L. E. Sucar 20
Iteración de Valor • Un método clásico para resolver estos problemas se conoce como “iteración de valor” (value iteration) • La idea básica es calcular la utilidad de cada posible estado y usar éstas para seleccionar la acción óptima en cada estado. • El método converge cuando se alcanza una diferencia mínima (error) entre los valores de la iteración t respecto a la iteración t+1. Incertidumbre - MDP, L. E. Sucar 21
Iteración de Valor • En cada iteración (t+1), se estima la utilidad de cada estado basada en los valores de la iteración anterior (t): Ut+1(i) = R(i) + maxa Sj P(sj | si, a) Ut(j) • Cuando t inf, los valores de utilidad convergen a un valor estable Incertidumbre - MDP, L. E. Sucar 22
Iteración de Valor Algoritmo: – Inicializar: Ut = Ut+1 = R – Repetir: • Ut=Ut+1 • Ut+1(s) = R(s) + maxa Sj P(s’ | s, a) Ut(s’) – Hasta: | Ut-Ut+1 | < e Incertidumbre - MDP, L. E. Sucar 23
Iteración de Valor • ¿Cuántas veces repetir la iteración? • Normalmente el número de iteraciones para obtener la política óptima es menor que el requerido para que las utilidades converjan • En la práctica, el número de iteraciones es relativamente pequeño Incertidumbre - MDP, L. E. Sucar 24
Iteración de valor • Para evitar problemas de valores muy grandes (infinito) de la utilidad esperada, normalmente se aplica un factor de descuento, 0<g<1, para el valor de los siguientes estados • El cálculo iterativo de la utilidad con el factor de descuento es entonces: Ut+1(s) = R(s) + maxa g Sj P(s’| s, a) Ut(s’) Incertidumbre - MDP, L. E. Sucar 25
VI – ejemplo robot • Analizando el estado s 11 U(a=derecha) = [0. 8*(-1/25)+0. 1*(-1/25)] = -0. 04 U(a=izquierda) = [0. 8*(-1/25)+0. 1*(-1/25)] = -0. 04 U(a=arriba) = [0. 8*(-1/25)+0. 1*(-1/25)] = -0. 04 U(a=abajo) = [0. 8*(-1/25)+0. 1*(-1/25)] = -0. 04 U(s 11) = -1/25 + max [-. 04, -. 04] = -0. 08 3 2 1 -1/25 -1/25 1 -1/25 Incertidumbre - MDP, L. E. Sucar 2 3 1 -1 -1/25 4 26
VI – ejemplo robot 3 2 1 -0. 08 0. 752 1 -0. 08 -1 -0. 08 2 -0. 08 3 Incertidumbre - MDP, L. E. Sucar -0. 08 4 27
Ejemplo – utilidades de los estados 0. 812 0. 868 0. 762 0. 705 0. 912 0. 660 0. 655 0. 611 0. 338 Inicio Incertidumbre - MDP, L. E. Sucar 28
Ejemplo – política óptima Inicio Incertidumbre - MDP, L. E. Sucar 29
Iteración de Política • • • Este método inicia con una política cualquiera, la cual se mejora progresivamente determinando una acción por estado cuyo valor sea mayor al de la politica actual. La politica inicial puede ser aleatoria o basada en algun conocimiento previo del problema. El proceso termina cuando no se presente mejora alguna. Incertidumbre - MDP, L. E. Sucar 30
Iteración de Política • Policy iteration aprovecha el hecho de que la politica normalmente converge antes que los valores de utilidad. • La política y los valores de utilidad se obtienen simultaneamente. • Conforme la política va cambiando, se van actualizando los valores de utilidad de cada estado. Incertidumbre - MDP, L. E. Sucar 31
Iteración de Política Escoger una política inicial Hacer U=R • Repetir hasta no. Mas. Cambios – Determinar el valor de utilidad para todos los estados U de acuerdo con la política actual – no. Mas. Cambios=true – Por cada estado s, calcular S P(s´|s, a)U(s’) Q(s, ) = R+ S P(s´|s, )U(s’) • Q(s, a) = R+ s’ • s’ • Si maxa Q(s, a)> maxa Q(s, ) – Redefinir (s) : = argmaxa Q(s, a) – no. Mas. Cambios=false Incertidumbre - MDP, L. E. Sucar 32
Política Inicial Inicio Incertidumbre - MDP, L. E. Sucar 33
Determinación de valor • Simplificación de Iteración de valor Ut+1: = R(s) + Ss’P(s’|s, (s)) Ut(s) • Resolver sistema de ecuaciones para las utilidades U(s)=R(s)+ Ss’P(s’|s, (s)) U(s) – Para el ejemplo: U(s 11) = 0. 8 U(s 12) + 0. 1 U(s 11) + 0. 1 U(s 21) U(s 12) = 0. 8 U(s 13) + 0. 2 U(s 12) Incertidumbre - MDP, L. E. Sucar 34
POMDP • En muchos problemas reales, no se puede observar exactamente el estado del agente, por lo que se tiene un POMDP • Además de los elementos de un MDP, un POMDP incluye: – Una función de observación que especifica la probabilidad de las observaciones dado el estado, P(O|S) – Una distribución de probabilidad inicial para los estados, P(S) Incertidumbre - MDP, L. E. Sucar 35
POMDP • El enfoque exacto para resolver un POMDP consiste en considerar la distribución de probabilidad sobre los estados y en base a esta determinar las decisiones óptimas • Para ello, se puede considerar un POMDP como un MDP en que los estados corresponden a la distribución de probabilidad • El problema es que el espacio de estados se vuelve infinito y la solución exacta es muy compleja Incertidumbre - MDP, L. E. Sucar 36
POMDP • Soluciones aproximadas: – Asumir que el agente se encuentra en el estado más probable – se transforma en un MDP que se puede resolver por el método de iteración de valor – Considerar un número finito de pasos y modelar el problema como una red de decisión dinámica – la aproximación depende del número de estados que se “ven” hacia delante (lookahead) Incertidumbre - MDP, L. E. Sucar 37
Ejemplo POMDP • El robot detecta su posición con sonares • Hay errores y ruido en las lecturas, alcance limitado • Ciertas celdas son muy parecidas (1, 2 – 3, 2) Incertidumbre - MDP, L. E. Sucar 38
Aplicaciones • • Manejo de inventarios Mantenimiento de equipos y carreteras Control de sistemas de comunicaciones Modelado de procesos biológicos Planeación en robótica móvil Construcción de mapas / localización Control de procesos industriales Incertidumbre - MDP, L. E. Sucar 39
Ejemplo de Aplicación Control de un generador de vapor utilizando un MDP Incertidumbre - MDP, L. E. Sucar
Sistema de generación de vapor Flujo de vapor Power Plant Domain Flujo de agua fwv d msv Presión vapor Incertidumbre - MDP, L. E. Sucar 41
Espacio de control Incertidumbre - MDP, L. E. Sucar 42
Resultados preliminares Incertidumbre - MDP, L. E. Sucar 43
Arquitectura del Control Set point Nuevo Set point PID Planta ajuste MDP Incertidumbre - MDP, L. E. Sucar 44
Demostración Incertidumbre - MDP, L. E. Sucar 45
Referencias • [Russell & Norvig] – Cap. 17 • H. A. Taha, “Investigación de Operaciones”, Alfaomega, 1991 – Cap. 14 • M. Puterman, “Markov Decision Processes”, Wiley, 1994. • M. Agueda, P. Ibargüengoytia, “Control of a power plant using MDP and POMDP” (por publicarse). Incertidumbre - MDP, L. E. Sucar 46
Actividades • Obtener los valores de utilidad para cada estado en el ejemplo del robot mediante el método de iteración de valor e iteración de política. Incertidumbre - MDP, L. E. Sucar 47
- Slides: 47