Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf ·...
Transcript of Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf ·...
![Page 1: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/1.jpg)
Sesión 14: Procesos de Decisión
de Markov
Modelos Gráficos Probabilistas
L. Enrique Sucar
INAOE
![Page 2: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/2.jpg)
© L.E. Sucar: MGP - MDPs 2
Procesos de Decisión de Markov
• Procesos de Decisión Secuenciales
• Procesos de Decisión de Markov (MDPs)
• Técnicas de Solución:
• Iteración de Valor
• Iteración de Política
• MDPs Parcialmente Observables (POMDPs)
• Extensiones
• MDPs factorizados
• Abstracción, descomposición
• Aplicaciones
![Page 3: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/3.jpg)
© L.E. Sucar: MGP - MDPs 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
• Se tiene incertidumbre asociada con los resultados
de las acciones (MDP), y posiblemente también
con los estados (POMDP)
![Page 4: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/4.jpg)
© L.E. Sucar: MGP - MDPs 4
Ejemplo – robot móvil
Inicio
![Page 5: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/5.jpg)
© L.E. Sucar: MGP - MDPs 5
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 “j” dado
que se encuentra en el estado “i” y se realizá
la acción “a”:
Pija
![Page 6: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/6.jpg)
© L.E. Sucar: MGP - MDPs 6
Modelo de Transición
• Probabilidad dirección deseada – Pij=0.8
• Probabilidad 2 direcciones vecinas – Pik=0.1
![Page 7: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/7.jpg)
© L.E. Sucar: MGP - MDPs 7
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- proceso de decisión de Markov
– Se tiene incertidumbre sobre el estado en que se encuentra- proceso de decisión de Markov parcialmente observable
![Page 8: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/8.jpg)
© L.E. Sucar: MGP - MDPs 8
MDP
![Page 9: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/9.jpg)
© L.E. Sucar: MGP - MDPs 9
POMDP
![Page 10: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/10.jpg)
© L.E. Sucar: MGP - MDPs 10
Política Óptima
• Dado el modelo de transición y el modelo de los sensores, el objetivo es encontrar la política óptima para maximizar la utilidad esperada
• Una política indica la acción que se debe ejecutar dado el estado (o probabilidad del estado)
• Se considera que las probabilidades de transición sólo dependen del estado actual por lo que son procesos markovianos
![Page 11: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/11.jpg)
© L.E. Sucar: MGP - MDPs 11
Ejemplo de Política
Inicio
![Page 12: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/12.jpg)
© L.E. Sucar: MGP - MDPs 12
Controlador basado en un MDP
solución MDP
Controlador
Sistema
Modelo
Eventos
estadoacción
política
![Page 13: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/13.jpg)
© L.E. Sucar: MGP - MDPs 13
Procesos de Decisión de Markov
• Problema de obtener la política óptima en un ambiente observable – MDP
• El 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
• Otros métodos de solución son “iteración de política” (policy iteration) y programación lineal(al transformar el problema a un problema de optimización lineal)
![Page 14: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/14.jpg)
© L.E. Sucar: MGP - MDPs 14
Procesos de Decisión de Markov
• Formalmente, un MDP (discreto) se define por:
– Un conjunto finito de estados, S
– Un conjunto finito de posibles acciones, A
– Un modelo de transición, que especifica la probabilidad de pasar a un estado dado el estado presente y la acción, P(s | s’, a)
– Una función de recompensa, que especifica el “valor” de ejecutar cierta acción a en el estado s, r(s, a)
![Page 15: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/15.jpg)
© L.E. Sucar: MGP - MDPs 15
Utilidad
• La utilidad de un estado depende de la secuencia
de acciones tomadas a partir de dicho estado (i) de
acuerdo a la política establecida (p)
• En principio, se puede obtener como la utilidad
esperada de todas las posibles secuencias de
acciones (Hi) y la utilidad resultante para c/u:
U(i) = UE( Hi(p) ) = S P(Hi(p)) Uh Hi(p)
![Page 16: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/16.jpg)
© L.E. Sucar: MGP - MDPs 16
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
![Page 17: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/17.jpg)
© L.E. Sucar: MGP - MDPs 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(i) = R(i) + maxa Sj P(sj | si,a) U(j)
• La política óptima esta dada por la acción que de
mayor utilidad:
P*(i) = arg maxa Sj P(sj | si,a) U(j)
![Page 18: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/18.jpg)
© L.E. Sucar: MGP - MDPs 18
Horizonte finito vs. infinito
• Los problemas con un número finito de pasos se conocen como MDP de horizonte finito
• 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
![Page 19: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/19.jpg)
© L.E. Sucar: MGP - MDPs 19
Solución
• Los métodos principales para resolver
MDPs son:
• Iteración de valor (Bellman, 57),
• Iteración de política (Howards, 60),
• Programación lineal (Puterman, 94).
![Page 20: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/20.jpg)
© L.E. Sucar: MGP - MDPs 20
MDPs – ecuaciones fundamentales
• Función de valor (ecuación de Bellman):
V*(s) = maxa { R(s,a) + g Ss’ P(s’ | s, a) V*(s’) }
• Política:
p*(s) = arg maxa { R(s,a) + g Ss’ P(s’ | s, a) V*(s’) }
Donde g es un factor de descuento
![Page 21: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/21.jpg)
© L.E. Sucar: MGP - MDPs 21
SoluciónFunción de valor
• Una política para un MDP es una asociación p:SA (acción por estado).
• Dada la política, el valor para horizonte finito es: Vn
p: S
Vnp(i) = R(i, p(i)) + S P(p(i) | i,j) Vn-1(j)
• Para horizonte infinito, generalmente se considera un factor de descuento, 0<=g<1:
Vp(i) = R(i, p(i)) + gS P(p(i) | i,j) V(j)
![Page 22: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/22.jpg)
© L.E. Sucar: MGP - MDPs 22
Solución
Política óptima
• La solución a un MDP da una política óptima.
• Esto es, la política que maximiza la ecuación de Bellman:
p*(i) = max [R(i, a) + gS P(a | i,j) V*(j)]
![Page 23: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/23.jpg)
© L.E. Sucar: MGP - MDPs 23
Iteración de Valor
• En el caso de horizonte infinito, se puede obtener la utilidad de los estados –y la política óptima, mediante un método iterativo
• 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 tinf, los valores de utilidad convergen a un valor estable
![Page 24: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/24.jpg)
© L.E. Sucar: MGP - MDPs 24
Iteración de Valor
Algoritmo:
– Inicializar: Ut = Ut+1 = R
– Repetir:
• Ut=Ut+1
• Ut+1(i) = R(i) + maxaSj P(sj | si,a) Ut(j)
– Hasta: | Ut-Ut+1 | < e
![Page 25: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/25.jpg)
© L.E. Sucar: MGP - MDPs 25
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
![Page 26: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/26.jpg)
© L.E. Sucar: MGP - MDPs 26
Ejemplo – utilidades de los estados
0.812
0.762
0.868 0.912
0.660
0.6110.705 0.3380.655
![Page 27: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/27.jpg)
© L.E. Sucar: MGP - MDPs 27
Ejemplo – política óptima
![Page 28: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/28.jpg)
© L.E. Sucar: MGP - MDPs 28
Iteración de Política
• Empezando de cierta política (aleatoria), esta se mejora encontrando una acción por estado que tenga un mejor valor que la acción actual
• Se puede usar conocimiento del problema para definir la política inicial
• El proceso termina cuando ya no puede haber mejoras
• Normalmente converge en menor número de iteraciones que iteración de valor, pero cada iteración es más costosa
![Page 29: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/29.jpg)
© L.E. Sucar: MGP - MDPs 29
• Escoger una política inicial
• Repetir hasta convergencia:
– Obtener el valor para todos los estados, Vp,
basado en la política actual p
– Para cada acción, a, calcular:
Qa = R+ g PaVp
– Redefinir: p(s) = argmaxa Qa(s)
Iteración de Política
![Page 30: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/30.jpg)
© L.E. Sucar: MGP - MDPs 30
Ejemplo: robot virtual
![Page 31: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/31.jpg)
© L.E. Sucar: MGP - MDPs 31
Una configuración
![Page 32: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/32.jpg)
© L.E. Sucar: MGP - MDPs 32
Política óptima
![Page 33: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/33.jpg)
© L.E. Sucar: MGP - MDPs 33
Otra configuración
![Page 34: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/34.jpg)
© L.E. Sucar: MGP - MDPs 34
Función de valor
![Page 35: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/35.jpg)
© L.E. Sucar: MGP - MDPs 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)
![Page 36: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/36.jpg)
© L.E. Sucar: MGP - MDPs 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
![Page 37: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/37.jpg)
© L.E. Sucar: MGP - MDPs 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
– Aproximar la función de valor continua mediante
curvas paramétricas aprovechando ciertas propiedades
de dichas funciones
– 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)
![Page 38: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/38.jpg)
© L.E. Sucar: MGP - MDPs 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)
![Page 39: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/39.jpg)
© L.E. Sucar: MGP - MDPs 39
MDP como una RDD
![Page 40: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/40.jpg)
© L.E. Sucar: MGP - MDPs 40
POMDP como una RDD
![Page 41: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/41.jpg)
© L.E. Sucar: MGP - MDPs 41
Extensiones
El principal problema de los MDPs es el crecimiento de la complejidad al aumentar el número de estados y acciones (el tamaño del problema crece exponencialmente con el número de variables de estado y acciones). Para ello se han planteado:
• Representaciones factorizadas
• Representaciones abstractas (agregación de estados)
• Modelos jerárquicos (serie / paralelo)
![Page 42: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/42.jpg)
© L.E. Sucar: MGP - MDPs 42
MDPs factorizados
• El estado de descompone en un conjunto de variables o factores
• Esto permite utilizar representaciones basadas en modelos gráficos para reducir la complejidad del modelo de transición y de recompensa:
– El modelo de transición se representa usando RBD (una RBD de 2 etapas por acción)
– La función de recompensa se representa usando árboles de decisión (considerando sólo las variables relevantes)
![Page 43: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/43.jpg)
© L.E. Sucar: MGP - MDPs 43
MDP factorizado
X = {x1, x2, x3, x4, x5}
Se tiene una RBD por acciónx2
x3
x4
x5
x1
x2’
x3’
x4’
x5’
x1’
t t+1
X X’
![Page 44: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/44.jpg)
© L.E. Sucar: MGP - MDPs 44
MDP - factorizado
R
La función de recompensa
considera sólo las variables
que inciden directamente
x2
x3
x2
x3x3
x2 x2
V1 V2 V3 V4 V5 V6
![Page 45: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/45.jpg)
© L.E. Sucar: MGP - MDPs 45
Diagramas de Decisión Algebraicos
–Otra alternativa para representar en forma compacta My R es mediante Diagramas de Decisión Algebraicos (SPUDD)
![Page 46: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/46.jpg)
© L.E. Sucar: MGP - MDPs 46
SPUDD
• SPUDD [Hoey et al., 1999] es un sistema
que utiliza ADDs para resolver
eficientemente MDPs muy grandes
• Utiliza algoritmos muy eficientes para
hacer operaciones con ADDS (desarrollados
en el área de diseño y verificación de
circuitos electrónicos)
![Page 47: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/47.jpg)
© L.E. Sucar: MGP - MDPs 47
MDPs abstractos
• Otra alternativa para reducir la complejidad
es reducir el número de estados, agrupando
estados con propiedades similares
(recompensa, probabilidades de transición)
• Esto también se puede aplicar a dominios
continuos
• La desventaja es que la solución puede ya
no ser óptima
![Page 48: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/48.jpg)
© L.E. Sucar: MGP - MDPs 48
Estados abstractos (cualitativos)
x2
y
x
x1
y1 y2 y3
x3
x1, x2, x3, y1, y2, y3 son
valores de referencia o
corte
Q1=pos(x, x2), ~pos(x,x3),
pos(y, y1), ~pos(y,y3).
Q2=pos(x, x1), ~pos(x,x2),
pos(y, y1), ~pos(y,y3).
Q1
Q2
![Page 49: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/49.jpg)
© L.E. Sucar: MGP - MDPs 49
Una partición cualitativa q es un grupo de
estados con recompensas similares.
Partición cualitativa
![Page 50: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/50.jpg)
© L.E. Sucar: MGP - MDPs 50
Refinamiento
• Si la política obtenida no es satisfactoria, se
pueden agregar particiones adicionales o
desagrupar estados.
Q1
Q2
Q3
Q4Q5
x1
x2
Q1-p1Q2
Q3-p1
Q5
x1
x2Q1-p2
Q3-p2-1
Q3-p2-1
Q4-p1 Q4-p2
![Page 51: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/51.jpg)
© L.E. Sucar: MGP - MDPs 51
Descomposición
• La otra alternativa para simplificar la solución de un MDP es “partir” el problema en subproblemas, de forma que se puede resolver c/u por separado y después “integrar la solución”
• Dos principales enfoques:
– serie: se descompone la tarea en subtareas de forma que cada es una submeta que hay que cumplir para alcanzar la meta global (p. ej. Heirarchical RL)
– paralelo: se descompone el problema en subproblemasque puedan resolverse “independientemente” y ejecutarse en “paralelo” (p. ej. Parallel MDPs, Concurrent MDPs)
![Page 52: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/52.jpg)
© L.E. Sucar: MGP - MDPs 52
Aprendizaje de MDPs
• Aprender el modelo:
– En base a una exploración aleatoria del ambiente, se
puede aprender el modelo de transición y la función de
recompensa
• Sin modelo:
– Se aprende directamente la política explorando el
ambiente (aprendizaje por refuerzo: Q-learning)
• Enfoques híbridos:
– Dyna-Q, priotarized sweeping, …
![Page 53: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/53.jpg)
© L.E. Sucar: MGP - MDPs 53
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
• Control de aviones
• …
![Page 54: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/54.jpg)
Ejemplo de Aplicación
Control de una Planta Eléctrica
utilizando MDP
![Page 55: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/55.jpg)
© L.E. Sucar: MGP - MDPs 55
![Page 56: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/56.jpg)
© L.E. Sucar: MGP - MDPs 56
Generador de vapor y domo
![Page 57: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/57.jpg)
© L.E. Sucar: MGP - MDPs 57
Espacio de controlRecommended 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)
Pre
ssu
re i
n t
he d
um
(kg
/cm
2 g
)
0
10987
30
6
54321
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
![Page 58: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/58.jpg)
© L.E. Sucar: MGP - MDPs 58
Ejemplo acciones
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)
Pre
ssu
re i
n t
he d
um
(kg
/cm
2 g
)
0
10987
30
6
54321
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
![Page 59: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/59.jpg)
© L.E. Sucar: MGP - MDPs 59
Variables relevantes
Flujo de
agua
Flujo de
vapor
Presión
vapor
dmsv
fwv
![Page 60: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/60.jpg)
© L.E. Sucar: MGP - MDPs 60
Modelo
de
Transición
fms,
fms_ref1
fms, fms_ref2
ffw, ffw_ref
d, d_ref
pd, pd_ref1
pd, pd_ref2
pd, pd_ref3
g, g_ref
fms, fms_ref1’
‘
fms,
fms_ref2’
ffw, ffw_ref’
d, d_ref’
pd, pd_ref1’
pd, pd_ref2’
pd, pd_ref3’
g, g_ref’
0 + -
0 0.33 0.13 0.01
+ 0.33 0.82 0.00
- 0.33 0.05 0.99
acción: cerrar
válvula
Q'
t'
![Page 61: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/61.jpg)
© L.E. Sucar: MGP - MDPs 61
Asistente del Operador
• Arquitectura
Data Base
Power Plant
Simulator
Operator
Interface
Factored MDP
Operator
Process
Operator
Assistant
![Page 62: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/62.jpg)
© L.E. Sucar: MGP - MDPs 62
Resultados
El modelo de
transición se
obtuvo de a partir
del simulador
![Page 63: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/63.jpg)
© L.E. Sucar: MGP - MDPs 63
Resultados – comparación de un
MDP plano con uno factorizado
Parámetros a0 a1 a2 a3 Total Tiempo de
solución
MDP
“plano”
147456 147456 147456 147456 589824 5.6 días
MDP
factorizado
175 175 204 204 758 2 minutos
![Page 64: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/64.jpg)
© L.E. Sucar: MGP - MDPs 64
Resultados – comparación con el
control convencionalPolicy Behavior (Medium Load)
0
1
2
3
4
5
1 9
17
25
33
41
49
57
65
73
81
89
97
105
113
121
129
137
145
153
No of samples (500 ms time step)
Acti
on
control
discreteFactoredMDP
En algunos casos son similares, pero el MDP lleva
más rápidamente a la planta a un estado seguro.
![Page 65: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/65.jpg)
© L.E. Sucar: MGP - MDPs 65
![Page 66: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/66.jpg)
Ejemplo de Aplicaciones
Coordinación de tareas para un robot
de servicio - Markovito
![Page 67: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/67.jpg)
© L.E. Sucar: MGP - MDPs 67
Coordinación de Tareas
para Robots de Servicio
• Una tarea compleja en robótica de servicio requiere de diversas habilidades:
– Planeación de trayectorias
– Evitar obstáculos
– Localización
– Construcción de mapas
– Encontrar personas
– Reconocimiento y síntesis de voz
– Generación de expresiones
– …
![Page 68: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/68.jpg)
© L.E. Sucar: MGP - MDPs 68
Coordinación
• La coordinación de los diferentes módulos para realizar una tarea se base en un MDP
• De acuerdo a la tarea se define una función de recompensa, y al resolver el MDP se obtiene la política óptima para dicha tarea
• De esta forma diversos módulos se pueden re-utilizar para diferentes tareas sólo cambiando el MDP
![Page 69: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/69.jpg)
© L.E. Sucar: MGP - MDPs 69
Aplicaciones
• Basado en este enfoque se han desarrollado diversas tareas para un robot de servicio:
– Robot mensajero: lleva mensaje u objetos de una persona a otra
– Robot anfitrión: recibe visitantes y los guía en una institución
– Navegación (Robocup@home): va a diferentes lugares en una casa comandado por voz
– Busca y encuentra (Robocup@home): busca un objeto
– Seguimiento (Robocup@home): sigue a una persona
![Page 70: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/70.jpg)
© L.E. Sucar: MGP - MDPs 70
Markovito: hardware
• Robot PeopleBot
• Cámara Pan/tilt
• Micrófono
direccional
• 2 anillos de sonares
• Pinza
• Laser
• 2 computadoras
(interna & laptop)
![Page 71: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/71.jpg)
© L.E. Sucar: MGP - MDPs 71
Robot Mensajero
![Page 72: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/72.jpg)
© L.E. Sucar: MGP - MDPs 72
Otras tareas
Enseñando a Markovito a
Reconocer un objeto
Navegación en un ambiente de “casa”
Entregando una cerveza!
![Page 73: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/73.jpg)
MDPs Concurrentes
• Se requiere que el robot pueda hacer diversas acciones al
mismo tiempo, por ejemplo navegar, escuchar a una
persona y sonreír (cara animada)
• Si se consideran todas las combinaciones de acciones en
un MDP se tiene una explosión aún mayor en el número de
estados-acciones
• Una alternativa es dividir el problema en varias sub-tareas,
de forma que cada sub-tarea se representa con un MDP; y
las políticas de cada sub-MDP se ejecutan en forma
concurrente
© L.E. Sucar: MGP - MDPs 73
![Page 74: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/74.jpg)
MDPs Concurrentes
• Al descomponer el problema pueden existir conflictos entre las
sub-tareas, que pueden ser de dos tipos:
– Conflictos por recursos
– Conflictos por comportamiento
• Los conflictos por recursos se resuelven en un proceso de dos
fases, en la primera se resuelve cada subMDP en forma
independiente y se construye una política inicial combinada;
luego la política se afina usando iteración de políticas
• Los conflictos por comportamiento se resuelven a través de una
serie de restricciones definidas por el usuario, y en línea se
selecciona el conjunto de acciones de mayor valor que
satisfacen las restricciones
© L.E. Sucar: MGP - MDPs 74
![Page 75: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/75.jpg)
© L.E. Sucar: MGP - MDPs 75
Referencias
• [Russell & Norvig] – Cap. 17
• H. A. Taha, “Investigación de Operaciones”,
Alfaomega, 1991 – Cap. 14
• M. Puterman, “Markov Decision Processes”,
Wiley, 1994.
![Page 76: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/76.jpg)
© L.E. Sucar: MGP - MDPs 76
Referencias
• Blythe, J., 1999, Decision –Theoretic Planning. AAAI. AI Magazine, 37-54.
• C. Boutilier, T. Dean, and S. Hanks. Decision-theoretic planning: structural assumptions and computational leverage. Journal of Artificial Intelligence Research, 11:1–94, 1999
• D. Suc and I. Bratko. Qualitative reverse engineering. In Proceedings of the 19th International Conference on Machine Learning, 2000.
• E. Morales. Scaling up reinforcement learning with a relation representation.pages 15–26. Proc. of the Workshop on Adaptability in Multi-agent Systems (AORC-2003), 2003.
![Page 77: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/77.jpg)
© L.E. Sucar: MGP - MDPs 77
Referencias
• J. Hoey, R. St-Aubin, A. Hu, and C. Boutilier. Spudd: Stochastic planning using decision diagrams. In Proceedings of the 15th Conference on Uncertainty in Artificial Intelligence, UAI-99, pages 279–288, 1999.
• K. Forbus. Qualitative process theory. Artificial Intelligence, 24, 1984.
• R.S. Sutton and A.G. Barto. Reinforcement Learning: An Introduction. 1998.
![Page 78: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/78.jpg)
© L.E. Sucar: MGP - MDPs 78
Referencias
• E. Corona, E. Morales, L.E. Sucar, Executing concurrent actions with concurrent Markov decision processes, ADPRL, IEEE, 2009.
• P. Elinas, E. Sucar, A. Reyes and J. Hoey; A decision theoretic approach to task coordination in social robots, IEEE International Workshop on Robots and Human Interactive Communications RO-MAN 04; Japan 2004. Demo Videos.
• A. Reyes, P. H. Ibarguengoytia, L. E. Sucar; Power Plant Operator Assistant: An Industrial Application of Factored MDPs; Mexican International Conference on Artificial Intelligence (MICAI-04); Mexico City; April 2004.
![Page 79: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/79.jpg)
© L.E. Sucar: MGP - MDPs 79
Referencias
• A. Reyes, L. E. Sucar, P. Ibarguengoytia; Power Plant Operator Assistant; Bayesian Modeling Applications Workshop in the 19th Conference on Uncertainty in Artificial Intelligence UAI-03, Acapulco-Mexico, August 2003.
• A. Reyes, M.A. Delgadillo, P. H. Ibarguengoytia; An Intelligent Assistant for Obtaining the Optimal Policy during Operation Transients in a HRSG; 13th Annual Joint ISA POWID/ EPRI Controls and Instrumentation Conference; Williamsburg, Virginia, June 2003.
• Ibargüengoytia P. H., Reyes A. 2001. Continuous Planning for The Operation of Power Plants, Memorias del Encuentro Nacional de Computación ENC 2001, Aguscalientes-Mexico.
![Page 80: Sesión 14: Procesos de Decisión de Markovccc.inaoep.mx/~esucar/Clases-mgp/pgm-14-mdp-2010.pdf · conoce como “iteración de valor” (value iteration) •La idea básica es calcular](https://reader036.fdocument.pub/reader036/viewer/2022070713/5ed0f4c36bbc7a45107a62ac/html5/thumbnails/80.jpg)
© L.E. Sucar: MGP - MDPs 80
Software
• MDPs– Markov Decision Process (MDP) Toolbox v1.0 for MATLAB
(INRIA) http://www.inra.fr/bia/T/MDPtoolbox/
– Markov Decision Process (MDP) Toolbox for Matlab (K.
Murphy)
http://www.ai.mit.edu/~murphyk/Software/MDP/mdp.html
– SPUDD
http://www.cs.ubc.ca/spider/staubin/Spudd/