Successfully reported this slideshow.
Your SlideShare is downloading. ×

clase09-mdps-05.ppt

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Capitulo 9
Capitulo 9
Loading in …3
×

Check these out next

1 of 47 Ad

More Related Content

Similar to clase09-mdps-05.ppt (20)

Recently uploaded (20)

Advertisement

clase09-mdps-05.ppt

  1. 1. Sesión 12: Procesos de Decisión de Markov
  2. 2. Incertidumbre - MDP, L.E. Sucar 2 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
  3. 3. Incertidumbre - MDP, L.E. Sucar 3 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
  4. 4. Incertidumbre - MDP, L.E. Sucar 4 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
  5. 5. Incertidumbre - MDP, L.E. Sucar 5 Ejemplo de Modelo de Transición • Probabilidad dirección deseada = P(s’|s)=0.8 • Probabilidad 2 direcciones vecinas = P(¬s’|s)=0.1
  6. 6. Incertidumbre - MDP, L.E. Sucar 6 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)
  7. 7. Incertidumbre - MDP, L.E. Sucar 7 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)
  8. 8. Incertidumbre - MDP, L.E. Sucar 8 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[s0, s1, ... sn] = R(s0) + U[s1, ... 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
  9. 9. Incertidumbre - MDP, L.E. Sucar 9 Ejemplo – robot móvil 1 2 3 1 2 3 4 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 1 -1
  10. 10. Incertidumbre - MDP, L.E. Sucar 10 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)
  11. 11. Incertidumbre - MDP, L.E. Sucar 11 MDP
  12. 12. Incertidumbre - MDP, L.E. Sucar 12 POMDP
  13. 13. Incertidumbre - MDP, L.E. Sucar 13 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.
  14. 14. Incertidumbre - MDP, L.E. Sucar 14 Ejemplo de Política Inicio
  15. 15. Incertidumbre - MDP, L.E. Sucar 15 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:
  16. 16. Incertidumbre - MDP, L.E. Sucar 16 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)
  17. 17. Incertidumbre - MDP, L.E. Sucar 17 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’)
  18. 18. Incertidumbre - MDP, L.E. Sucar 18 PD – ejemplo robot • Asumiendo que se llega a la meta en n pasos: U(a=derecha) = [0.8*1-0.1*1/25 -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(s33) = -1/25 + max [.792, .064, -.064] = 0.752; P*(s31) = derecha 1 2 3 1 2 3 4
  19. 19. Incertidumbre - MDP, L.E. Sucar 19 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
  20. 20. Incertidumbre - MDP, L.E. Sucar 20 • Formalmente un MDP se representa mediante la tupla M= {S, A, T, R} donde: – S={s1, s2, .. sn} conjunto de estados – A={a1, a2, …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. Procesos de Decisión de Markov
  21. 21. Incertidumbre - MDP, L.E. Sucar 21 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.
  22. 22. Incertidumbre - MDP, L.E. Sucar 22 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
  23. 23. Incertidumbre - MDP, L.E. Sucar 23 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
  24. 24. Incertidumbre - MDP, L.E. Sucar 24 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
  25. 25. Incertidumbre - MDP, L.E. Sucar 25 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’)
  26. 26. Incertidumbre - MDP, L.E. Sucar 26 VI – ejemplo robot • Analizando el estado s11 U(a=derecha) = [0.8*(-1/25)+0.1*(-1/25) +0.1*(-1/25)] = -0.04 U(a=izquierda) = [0.8*(-1/25)+0.1*(-1/25) +0.1*(-1/25)] = -0.04 U(a=arriba) = [0.8*(-1/25)+0.1*(-1/25) +0.1*(-1/25)] = -0.04 U(a=abajo) = [0.8*(-1/25)+0.1*(-1/25) +0.1*(-1/25)] = -0.04 U(s11) = -1/25 + max [-.04, -.04, -.04, -.04] = -0.08 1 2 3 1 2 3 4 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 -1/25 1 -1
  27. 27. Incertidumbre - MDP, L.E. Sucar 27 VI – ejemplo robot 1 2 3 1 2 3 4 -0.08 -0.08 -0.08 -0.08 -0.08 0.752 -0.08 -0.08 1 -1 -0.08 -0.08
  28. 28. Incertidumbre - MDP, L.E. Sucar 28 Ejemplo – utilidades de los estados Inicio 0.812 0.762 0.868 0.912 0.660 0.611 0.705 0.338 0.655
  29. 29. Incertidumbre - MDP, L.E. Sucar 29 Ejemplo – política óptima Inicio
  30. 30. Incertidumbre - MDP, L.E. Sucar 30 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.
  31. 31. Incertidumbre - MDP, L.E. Sucar 31 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.
  32. 32. Incertidumbre - MDP, L.E. Sucar 32 Escoger una política inicial Hacer U=R • Repetir hasta noMasCambios – Determinar el valor de utilidad para todos los estados U de acuerdo con la política actual  – noMasCambios=true – Por cada estado s, calcular • Q(s, a) = R+ Ss’P(s´|s,a)U(s’) • Q(s, ) = R+ Ss’P(s´|s,)U(s’) • Si maxa Q(s,a)> maxa Q(s,) – Redefinir (s) : = argmaxa Q(s,a) – noMasCambios=false Iteración de Política
  33. 33. Incertidumbre - MDP, L.E. Sucar 33 Política Inicial Inicio
  34. 34. Incertidumbre - MDP, L.E. Sucar 34 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(s11) = 0.8 U(s12) + 0.1 U(s11) + 0.1 U(s21) U(s12) = 0.8 U(s13) + 0.2 U(s12)
  35. 35. Incertidumbre - MDP, L.E. Sucar 35 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)
  36. 36. Incertidumbre - MDP, L.E. Sucar 36 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
  37. 37. Incertidumbre - MDP, L.E. Sucar 37 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)
  38. 38. Incertidumbre - MDP, L.E. Sucar 38 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)
  39. 39. Incertidumbre - MDP, L.E. Sucar 39 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
  40. 40. Ejemplo de Aplicación Control de un generador de vapor utilizando un MDP
  41. 41. Incertidumbre - MDP, L.E. Sucar 41 Sistema de generación de vapor Flujo de agua Flujo de vapor Presión vapor d msv fwv Power Plant Domain
  42. 42. Incertidumbre - MDP, L.E. Sucar 42 Espacio de control Recommended curve 164 166 168 170 172 174 176 178 180 182 184 186 50% 60% 70% 80% 90% 100% 531 649 767 885 1003 1120 Flow of main steam (t/h) Pressure in the dum (kg/cm2 g) 0 10 9 8 7 30 6 5 4 3 2 1 11 12 13 14 15 16 17 24 25 26 27 28 31 32 33 34 35 36 18 19 20 21 22 23 29 37 42 38 39 40 43 44 45 46 47 41
  43. 43. Incertidumbre - MDP, L.E. Sucar 43 Resultados preliminares Recommended curve 164 166 168 170 172 174 176 178 180 182 184 186 50% 60% 70% 80% 90% 100% 531 649 767 885 1003 1120 Flow of main steam (t/h) Pressure in the dum (kg/cm2 g) 0 10 9 8 7 30 6 5 4 3 2 1 11 12 13 14 15 16 17 24 25 26 27 28 31 32 33 34 35 36 18 19 20 21 22 23 29 37 42 38 39 40 43 44 45 46 47 41
  44. 44. Incertidumbre - MDP, L.E. Sucar 44 Arquitectura del Control Planta PID MDP Set point Nuevo Set point ajuste
  45. 45. Incertidumbre - MDP, L.E. Sucar 45 Demostración
  46. 46. Incertidumbre - MDP, L.E. Sucar 46 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).
  47. 47. Incertidumbre - MDP, L.E. Sucar 47 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.

×