Procesos de decision_markovianos[1]

12,254 views

Published on

xs

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
12,254
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
364
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Procesos de decision_markovianos[1]

  1. 1. PROCESOS DE DECISION MARKOVIANOS . MODELOS PARA PROCESOS DE DECISION MARKOVIANOS El modelo para los procesos de decisión markovianos considerados en este capítulo se pueden resumir como sigue: 1. Se observa el estado i de una cadena de Markov de tiempo discreto después de cada transición ( i = 0,1,..., M ) 2. Después de cada observación, se selecciona una decisión (acción) k de un conjunto de k decisiones posibles ( k = 1,2,..., k ) (Algunas de las k decisiones pueden no ser relevantes para algunos estados.) 3. Si se elige la decisión d i = k en el estado i , se incurre en un costo inmediato que tiene un valor esperado Cik . 4. La decisión d i = k en el estado i determina cuáles serán las probabilidades de transición para la siguiente transición desde el estado i . Denote estas probabilidades de transición por Pij ( k ) para j = 0,1,..., M 5. Una especificación de las decisiones para los estados respectivos ( d 0 , d1 ,..., d M ) prescribe una política para el proceso de decisión markoviano. 6. El objetivo es encontrar una política óptima de acuerdo con algún criterio de costo que considere tanto los costos inmediatos como los subsecuentes que resulten de la evolución futura del proceso. Un criterio común es minimizar el costo promedio esperado por unidad de tiempo (a la larga). (En la sección 21.5 se considera un criterio alternativo.) A continuación se citara un ejemplo para ver como se lleva a cabo el desarrollo de un proceso de markov. EJEMPLO PROTOTIPO Un fabricante tiene maquina clave en el núcleo de uno de sus proceso. Debido a que tiene un uso pesado, la maquina se deteriora con rapidez tanto en calidad como en la cantidad de producción que obtienen. Por lo tanto, al final de cada semana, se realiza una inspección exhaustiva cuyo resultado es la clasificación de las condiciones de la maquina en uno de cuatro estados posibles: Estado Condición 0 Tan buena como nueva 1 Operable deterioro menor 2 Operable deterioro mayor 3 Inoperable producción de calidad inaceptable
  2. 2. Después de recolectar datos históricos sobre los resultados de estas inspecciones, se hace un análisis estadístico de la evolución del estado de la máquina de un mes a otro. La siguiente matriz muestra la frecuencia relativa (probabilidad) de cada transición posible del estado en el que se encuentra en un mes (un renglón de la matriz) al estado en el que se encuentra el siguiente mes (una columna de la matriz). Estado 0 1 2 3 0 0 7 1 1 8 16 16 1 0 3 1 1 4 8 8 2 0 0 1 1 2 2 3 0 0 0 1 Además del análisis estadístico, se ha encontrado que estas probabilidades de transición no se afectan por considerar también en qué estados se encontraba en meses anteriores. Esta “propiedad de falta de memoria” es la propiedad markoviana descrita en la sección 16.2. Así, para la variable aleatoria X t , que es el estado de la máquina al final del mes t, se ha concluido que el proceso estocástico { X t 't = 0,1,2,...} es una cadena de Markov de tiempo discreto cuya matriz de transición (de un paso) es justo la matriz anterior. Como lo indica el último elemento de esta matriz de transición, una vez que la máquina se vuelve inoperable (entra al estado 3), permanece inoperable. En otras palabras, el estado 3 es un estado absorbente. Dejar la máquina en este estado sería intolerable ya que esto detendría el proceso de producción, por lo que la máquina debe reemplazarse. (La reparación no es factible en este estado). La nueva máquina comenzaría entonces en el estado 0. El proceso de reemplazo toma 1 semana de manera que la producción se pierde durante este periodo. El costo de la producción perdida (ganancia perdida) es de $2.000 y el costo de reemplazar la máquina es de $4.000, de manera que el costo total en el que se incurre siempre que la máquina actual entra al estado 3 es de $6.000. Aun antes de que la máquina llegue al estado 3, puede incurrirse en costos por producir artículos defectuosos. Los costos esperados por semana por este concepto son: Estado Costo esperado debido a artículos defectuosos, $ 0 0 1 1000 2 3000 Se han mencionado todos los costos relevantes asociados con una. política de mantenimiento (reemplazar la máquina cuando es inoperable, pero no darle mantenimiento en otros casos).
  3. 3. Con esta política, la evolución del estado del sistema (la sucesión de máquinas) todavía es una cadena de Markov, pero ahora con la matriz de transición siguiente: Estado 0 1 2 3 0 0 7 1 1 8 16 16 1 0 3 1 1 4 8 8 2 0 0 1 1 2 2 3 1 0 0 0 Para evaluar esta política de mantenimiento, deben considerarse tanto los costos inmediatos en que se incurre en la semana que sigue (descritos antes). Como los costos subsecuentes que resultan cuando el sistema evoluciona de este modo. Una medida de desempeño usada ampliamente para cadenas de Markov es el costo promedio esperado por unidad de tiempo (a la larga). Para calcular esta medida, primero se derivan las probabilidades de estado estable π 0 , π 1 , π 2 y π 3 para esta cadena de Markov con la solución del siguiente sistema de ecuaciones: π0 = π3, 7 3 π1 = π 0 + π1, 8 4 1 1 1 π 2 = π 0 + π1 + π 2 , 16 8 2 1 1 1 π 3 = π 0 + π1 + π 2 , 16 8 2 1 = π 0 + π 1 + π 2 + π 3º La solución simultánea es 2 7 2 2 π0 = , π1 = , π 2 = π3 = 13 13 13 13 El costo promedio esperado (a la larga) por semana para esta política de mantenimiento es 25000 0π 0 + 100π 1 + 300π 2 + 600π 3 = = 1923.07. 13 Sin embargo, existen otras políticas de mantenimiento que deben considerarse y compararse con esta. Por ejemplo, quizá la máquina debiera reemplazarse antes de llegar al estado 3. Decisión Estado Costo Costo de Costo Costo total
  4. 4. esperado (ganancia por producir mantenimiento, perdida) por por semana, artículos $ producción $ defectuosos, perdida, $ $ 1. No hacer nada 0 0 0 0 0 1 1000 0 0 1000 2 3000 0 0 3000 2. Reparación general 2 0 2000 2000 4000 3. Reemplazar 1, 2, 3 0 4000 2000 6000 Otra alternativa es realizar una reparación general a un costo de $2000. Esta opción no es factible en el estado 3 y no mejora la máquina si está en el estado 0 o el 1, y sólo es de interés en el estado 2. En este estado, una reparación general regresaría a la máquina al estado 1. Se requiere una semana para ello, por lo que otra consecuencia sería un gasto de $2000 por las ganancias perdidas al no producir. En resumen, las decisiones posibles después de cada inspección son las siguientes: Decisión Acción Estados relevantes 1 No hacer nada 0,1,2 2 Reparación general (el sistema regresa al 2 estado 1) 3 Reemplazo (el sistema regresa al estado 0) 1,2,3 Para facilitar la consulta, se resume también los costos relevantes de cada decisión para cada estado en el que esa decisión puede ser de interés Después de cada inspección de la máquina, se elige entre tres decisiones posibles (no hacer nada, reparación general o reemplazo). El costo esperado inmediato que resulta se muestra en la columna de la derecha de la tabla para cada combinación relevante de estados y decisiones. Con las cadenas de Markov se analizó una política específica ( d 0 , d1 , d 2 , d 3 ) = (1,1,1,3) , donde la decisión 1 (no hacer nada) se toma en los estados 0, 1 y 2 y la decisión 3 (reemplazo) se toma en el estado 3. El modelo general califica como un proceso de decisión de Markov porque posee la propiedad markoviana que caracteriza a estos procesos. En particular, dados el estado y la decisión actuales, cualquier afirmación probabilística sobre el futuro del proceso es por completó independiente de cualquier información proporcionada sobre la historia del proceso. Esta propiedad se cumple aquí ya que 1) se trata de una cadena de Markov, 2) las nuevas probabilidades de transición dependen sólo del estado y la decisión actuales y 3) el costo esperado inmediato también depende sólo del estado y la decisión actuales. La descripción de una política implica dos propiedades convenientes (pero innecesarias) que se supondrán en todo el capítulo (con una excepción). Una propiedad es que una política es
  5. 5. estacionaria; es decir, siempre que el sistema se encuentre en el estado i . La regla para tomar la decisión siempre es la misma sin importar el valor del tiempo actual t . La segunda propiedad es que una política es determinística; esto es, siempre que el sistema se encuentre en el estado i , la regla para tomar la decisión definitivamente selecciona una decisión específica. (Debido a la naturaleza del algoritmo involucrado, la siguiente sección considera políticas aleatorizadas, donde se usa una distribución de probabilidad para tomar la decisión.) Con este marco de referencia general en mente ahora se regresa al ejemplo prototipo para encontrar una política óptima con la enumeración y comparación de todas las políticas relevantes. Al hacer esto, se denotará por R a la política específica y por d i ( R ) a la decisión correspondiente que debe tomarse en el estado i . Solución del ejemplo prototipo por enumeración exhaustiva Las políticas relevantes para el ejemplo prototipo son las siguientes: Política Descripción verbal d0 ( R) d1 ( R ) d2 ( R) d3 ( R) Ra Reemplazo en el estado 3 1 1 1 3 Reemplazo en el estado 3, reptación 1 1 2 3 Rb general en el estado 2 Reemplazo en los estados 2, 3 1 1 3 3 Rc Reemplazo en el estado 1, 2, 3 1 3 3 3 Rd Cada política da una matriz de transición diferente, como se muestra enseguida Ra Rb Estado Estado 0 1 2 3 0 1 2 3 0 0 7 1 1 7 1 1 0 0 8 16 16 8 16 16 1 0 3 1 1 3 1 1 1 0 4 8 8 4 8 8 2 0 0 1 1 2 0 1 0 0 2 2 3 1 0 0 0 3 1 0 0 0 Rc Rd Estado Estado 0 1 2 3 0 1 2 3
  6. 6. 0 0 7 1 1 7 1 1 0 0 8 16 16 8 16 16 1 0 3 1 1 1 0 0 0 0 4 8 8 2 1 0 0 0 2 0 1 0 0 3 1 0 0 0 3 1 0 0 0 A partir de la ultima columna de la tabla de los datos de costos, los valores de Cik son los siguientes Decisión Cik (en miles de dólares) Estado 1 2 3 0 0 - - 1 1 - 6 2 3 4 6 3 - - 6 Como se indicó en la sección 16.5, se puede calcular el costo promedio esperado (a largo plazo) por unidad de tiempo, E ( C ) , a partir de la expresión M E ( C ) = ∑ Cik π i , i =0 Donde k = d i ( R ) para cada i , y ( π 0 , π 1 ,...π M ) representa la distribución de estado estable para los estados del sistema según la política R que se evalúa. Después de obtener ( π 0 , π 1 ,...π M ) según cada una de las cuatro políticas (esto se puede hacer con el OR Courseware) el calculo de E ( C ) se resume en la siguiente tabla. Política (π 0 , π1,π 2 ,π 3 ) E ( C ) en miles de dólares 1 Ra 2 7 2 2  , , ,  [ 2( 0) + 7(1) + 2( 3) + 2( 6) ] = 25 = $1923  13 13 13 13  13 13 1 Rb  2 5 2 2  , , ,  [ 2( 0) + 15(1) + 2( 4) + 2( 6) ] = 35 = $1667 ← min imo  21 7 21 21  21 21 1 Rc 2 7 1 1  , , ,  [ 2( 0) + 7(1) + 1( 6) + 1( 6) ] = 19 = $1727  11 11 11 11  11 11 1 Rd 1 7 1 1   , , ,  [16( 0) + 14( 6) + 1( 6) + 1( 6) ] = 96 = $3000  2 16 32 32  32 32 Así, la política óptima es Rb , es decir, reemplazar la maquina cuando se encuentre en el estado 3 y hacer una reparación general cuando se encuentre en el estado 2. El costo esperado (a la larga) por semana es $1667.
  7. 7. En este pequeño ejemplo, es adecuado usar la enumeración exhaustiva para encontrar la política óptima, donde sólo existen cuatro políticas relevantes. Sin embargo, muchas aplicaciones tienen tantas políticas que este enfoque no es factible. Para tales casos, se necesitan algoritmos que puedan encontrar una política óptima de manera eficiente. Las siguientes tres secciones consideran este tipo de algoritmos. PROGRAMACION LINEAL Y LAS POLITICAS ÓPTIMAS Se vio que cualquier política R se puede interpretar como una regla que prescribe la decisión d i ( R ) siempre que el sistema se encuentre en el estado i , para cada i = 0,1,..., M . Entonces R queda completamente definida por los valores. { d 0 ( R ) , d1 ( R ) ,..., d M ( M )} De manera equivalente, R se puede caracterizar por la asignación de valores Dik = 0 o 1 en la matriz Decision k 1 2  k 0  D01 D02  D0 k  1 D D12  D1k  Estado  11 ,   ...... ......  ....    M  DM 1 DM 2  DMk  Donde cada Dik ( i = 0,1,..., M y k = 1,2,...., k ) se define como 1 si la decision k debe tomarse en el estado i Dik =  0 de otra maera Por lo tanto, cada renglón de la matriz debe contener un solo 1 y el resto de los elementos deben ser 0. Por ejemplo, la política óptima Rb para el ejemplo prototipo se puede caracterizar por la matriz Decision k 1 2 3 0 1 0 0 1 1 0 0 Estado  , 2 0 1 0   3 0 0 1
  8. 8. Es decir, no hacer nada (decisión 1) cuando la máquina está en el estado 0 o 1, hacer una reparación general (decisión 2) en el estado 2 y reemplazar (decisión 3) en el estado 3. Políticas aleatorizadas La introducción de Dik , proporciona una motivación para formular un modelo de programación lineal. Se piensa que el costo esperado de una política se puede expresar como una función lineal de la Dik o de alguna variable relacionada, sujeta a restricciones lineales. Desafortunadamente., los valores de Dik . son enteros (0 o 1) y se requieren variables continuas para la formulación de programación lineal. Este requisito se puede manejar si se amplía la interpretación de una política. La definición previa dice que se tome la misma decisión cada vez que el sistema se encuentre en el estado i . La nueva interpretación de una política pedirá la determinación de una distribución de probabilidad para tomar la decisión cuando el sistema se encuentre en el estado i . Con esta nueva interpretación, ahora necesitan redefinirse las Dik como Dik = P{ decision = k estado = i} En otras palabras, dado que el sistema está en el estado i , la variable Dik es la probabilidad de elegir la decisión k como la que debe tomarse. Entonces ( Di1 , Di 2 ,...., Dik ) es la distribución de probabilidad para la decisión que deberá tomarse en el estado i Este tipo de política que usa distribuciones de probabilidad se llama una política aleatorizada, mientras que la política que dice que Dik = 0 o 1 recibe el nombre de política deterministica. Las políticas aleatorizadas se pueden caracterizar de nuevo por la matriz Decision k 1 2  k 0  D01 D02  D0 k  1 D D12  D1k  Estado  11 ,   ...... ......  ....    M  DM 1 DM 2  DMk  En donde cada renglón suma 1, y ahora 0 ≤ Dik ≤ 1 A manera de ilustración, considere una política aleatorizada para el ejemplo prototipo dado por la matriz
  9. 9. Decision k 1 2 3 0 1 1 0 0  1 1 2 0 Estado  1 2 , 2 1 1  3 4 4 2 0 0 1 Esta política expresa que siempre se tome la decisión 1 (no hacer nada) cuando la máquina 1 está en el estado 0. Si se encuentra en el estado 1, se deja como está con probabilidad y se 2 1 reemplaza con probabilidad , de manera que puede lanzarse una moneda para elegir. Si se 2 1 encuentra en el estado 2, existe una probabilidad de de que se deje como está, una 4 1 1 probabilidad de de que se le haga una reparación general y una de de que se reemplace. 4 2 Es de suponer que se dispone de algún dispositivo aleatorio (quizá una tabla de números aleatorios) con estas probabilidades, que se pueda usar para tomar la decisión. Por último, si se encuentra que la máquina está en el estado 3, siempre se le hace una reparación general. Al permitir políticas aleatorizadas, de forma que las Dik sean variables continuas en lugar de variables discretas, se vuelve posible formular un modelo de programación lineal para encontrar una política óptima. Formulación de programación lineal Las variables de decisión convenientes (denotadas aquí por yik ) para un modelo de programación lineal se definen como sigue. Para cada i = 0,1,...M k = 1,2,..., k , sea yik , y la probabilidad incondicional de estado estable de que el sistema se encuentre en el estado i y se toma la decisión k , es decir, yik = P{ estado = i y decision = k } Cada yik tiene una relación cercana con la Dik correspondiente ya que, de las reglas de probabilidad condicional, se tiene yik = π i Dik , Donde π i , es la probabilidad de estado estable de que la cadena de Markov se encuentre en el estado i . Lo que es más
  10. 10. K π i = ∑ yik , k =1 de manera que yik yik Dik = = πi K ∑y k =1 ik , Existen varias restricciones sobre las yik : M M K 1. ∑ π i = 1 de manera que i =0 ∑∑ y i = 0 k =1 ik =1 2. De los resultados de las probabilidades de estado estable: M π j = ∑ π i pij i =0 De manera que K M K ∑ y jk = ∑∑ yik Pij ( k ), para j = 0,1,..., M k =1 i = 0 k =1 3. yik ≥ 0, para i = 0,1,..., M y k = 1,2,..., k El costo promedio esperado a largo plazo por unidad de tiempo es M K M K E ( C ) = ∑∑ π i Cik Dik =∑∑ Cik yik , i = 0 k =1 i = 0 k =1 Entonces, el modelo de programación lineal consiste en seleccionar las yik , para Minimizar M K Z = ∑∑ Cik yik , i = 0 k =1 Sujeta a las restricciones M K (1) ∑∑ y i = 0 k =1 ik =1 K M K (2) ∑ y jk − ∑∑ yik pij ( k ) = 0, para j = 0,1,..., M . k =1 i = 0 k =1 (3) yik ≥ 0, para i = 0,1,..., M y k = 1,2,..., k Así este modelo tiene M + 2 restricciones funcionales y K ( M + 1) variables de decisión. [En realidad, (2) proporciona una restricción redundante, por lo que cualquiera de estas ( M + 1) restricciones se puede eliminar]
  11. 11. Si se supone que el modelo no es demasiado grande, se puede resolver por el método simplex. Una vez obtenidas las yik , cada una de las Dik se encuentra a partir de yik Dik = K ∑y k =1 ik La solución óptima obtenida con el método simplex tiene algunas propiedades interesantes. Contendrá M + 1 variables básicas yik ≥ 0 . Se puede demostrar que yik > 0 al menos para k = 1,2,..., K De donde se sigue que yik > 0 para sólo una k por cada i = 0,1,..., M . . En consecuencia, Dik = 0 o 1 La conclusión clave es que la política óptima encontrada con el método símplex es determinística, y no aleatorizada. Así, cuando se permite aleatorizar las políticas no se obtienen ventajas en cuanto a mejorar la política final. Sin embargo, tiene un papel en extremo importante en esta formulación ya que convierte .variables enteras (las Dik ) en variables continuas para poder usar programación lineal (PL). (La analogía en programación entera es usar la soltura de PL para aplicar el método símplex y después aprovechar que se cumple La propiedad de las soluciones enteras para que la solución óptima de la soltura de PL sea entera de todas maneras.) Solución del ejemplo prototipo por programación lineal Las primeras dos columnas de la tabla de costos proporcionan las combinaciones relevantes de estados y decisiones. Entonces, las variables de decisión que deben incluirse en el modelo son y01 , y11 , y13 , y21 , y22 , y23Yy33 . (Las expresiones generales dadas para el modelo incluyen a las yik de las combinaciones irrelevantes de estados y decisiones, de manera que estas yik = 0 en una solución óptima y es lo mismo si se eliminan desde el principio.) La columna de la derecha de la tabla 21.1 da los coeficientes de estas variables en la función objetivo. Las probabilidades de transición pij ( k ) para cada combinación relevante del estado i y la decisión k también se describen en la sección 21.1. El modelo de programación lineal que resulta es Minimizar Z = 1000 y11 + 6000 y13 + 3000 y21 + 4000 y22 + 6000 y23 + 6000 y33 , Sujeta a
  12. 12. y01 + y11 + y13 + y21 + y22 + y23 + y33 = 1 y01 − ( y13 + y23 + y33 ) = 0 7 3  y11 + y13 −  y01 + y11 + y22  = 0 8 4  1 1 1  y21 + y22 + y23 −  y01 + y11 + y21  = 0  16 8 2  1 1 1  y33 −  y01 + y11 + y21  = 0  16 8 2  Todas las yik ≥ 0 Al aplicar el método símplex se obtiene la solución óptima y01 = 2 , ( y11, y13 ) =  5 ,0    ( y21, y22 , y23 ) =  0,  2  ,0 , y33 = 2 , 21 7   21  21 De manera que D01 = 1, ( D11, D13 ) =  5 ,0    ( D21 , D22 , D23 ) = ( 0,1,0) , D33 = 1, 7  Esta política dice que debe dejarse la máquina como está (decisión 1) cuando se encuentre en el estado 0 o 1, debe hacerse una reparación general (decisión 2) cuando esté en el estado 2 y debe reemplazarse (decisión 3) si está en el estado 3. Ésta es la misma política óptima encontrada mediante la enumeración exhaustiva al final de la sección 21.2. ALGORITMO DE MEJORAMIENTO DE POLÍTICAS PARA ENCONTRAR POLÍTICAS ÓPTIMAS Se han estudiado dos métodos para derivar una política óptima para un proceso de decisión markoviano: enumeración exhaustiva y programación lineal. La enumeración exhaustiva es útil porque es rápida y directa para problemas muy pequeños. La programación lineal se puede usar para resolver problemas bastante más grandes, y existe una gran variedad de paquetes de software para el método símplex. Ahora se presentará un tercer método llamado algoritmo de mejoramiento de políticas. La ventaja más importante de este método es que tiende a ser muy eficiente, debido a que casi siempre llega a una solución óptima en un número relativamente pequeño de iteraciones (muchas menos que en el método símplex con una formulación de programación lineal). Si se sigue el modelo de la sección 21.2, ocurren dos cosas como un resultado conjunto del estado actual i del sistema y de la decisión di ( R ) = k cuando se opera con la política R . Se incurre en un costo (esperado) Cik que depende sólo del estado observado y de la decisión que
  13. 13. se toma. El sistema se mueve a un nuevo estado j en la siguiente observación con una probabilidad de transición dada por pij ( k ) . Si en efecto el estado j influye en el costo en que se incurre, entonces Cik se calcula de la siguiente manera. Denote por qij ( k ) ese costo (esperado) cuando el sistema se encuentra en el estado i y se toma la decisión k y después pasa al estado j en el siguiente periodo de observación. Entonces M Cik = ∑ qij ( k ) pij ( k ). j =0 Preliminares Con referencia a la descripción y notación para los procesos markovianos de decisión dados al principio de la sección 2.1.2, se puede demostrar que, para cualquier política dada R existen valores g ( R ) , v0 , vi ( R ) ,..., vM ( R ) que satisfacen M g ( R ) + vi ( R ) = Cik + ∑ pij ( k ) v j ( R ) , para i = 0,1,2,..., M . j =0 Se dará ahora una justificación heurística de estas relaciones y una interpretación para estos valores. Denote por vi ( R ) costo total esperado de un sistema que inicia en el estado i (en el primer n periodo de observación) y opera durante n periodos. Entonces, vi ( R ) consiste en dos n componentes: Cik , el costo en el que se incurre durante el primer periodo de observación y M ∑ p ( R ) v ( R ) , el costo total esperado del sistema al operar los n − 1 periodos restantes. j =0 ij n j Esto da la ecuación recursiva M vin ( R ) = cik + ∑ pij ( k ) v n −1 ( R ) para i = 0,1,2,..., M . j j =0 En donde v ( R ) = Cik para toda i . 1 i Será útil explorar el comportamiento del costo total esperado vi ( R ) conforme n crece. n Recuerde que el costo promedio esperado (a la larga) por unidad de tiempo al seguir cualquier política R , se puede expresar como M g ( R ) = ∑ π iCik , i =0
  14. 14. que es independiente del estado inicial i. Entonces, vi ( R ) se comporta aproximadamente como n n g ( R ) para n grande. De hecho, si se ignoran las pequeñas fluctuaciones, vin ( R ) se puede expresar como la suma de dos componentes vin ( R ) ≈ ng ( R ) + vi ( R ) donde la primera componente es independiente del estado inicial y la segunda depende de ese estado. Entonces, vi ( R ) se puede interpretar como el efecto sobre el costo total esperado n debido a que el proceso inicia en el estado i . En consecuencia, vin ( R ) − v n ( R ) ≈ vi ( R ) − v j ( R ) j de manera que vi ( R ) − v j ( R ) es una medida del efecto de comenzar en el estado i y no en el n estado j . Cuando n crece suficiente, se puede sustituir vin ( R ) = ng ( R ) + vi ( R ) y v nj −1 ( R ) = ( n − 1) g ( R ) + v j ( R ) en la ecuación recursiva. Esto lleva al sistema de ecuaciones dado en el primer párrafo de esta subsección. Observe que este sistema tiene M + 1 ecuaciones con M + 2 incógnitas, por lo que se puede seleccionar una de estas variables de manera arbitraria. Por convención, se elegirá v M ( R ) igual a cero. Por lo tanto, al resolver el sistema de ecuaciones lineales se puede obtener g ( R ) el costo promedio esperado a largo plazo, por unidad cíe tiempo si se sigue la política R . En principio, se pueden enumerar todas las políticas y encontrar aquella que minimiza g ( R ) . Sin embargo, aun para un número moderado de estados y decisiones, esta técnica es tediosa. Por fortuna, existe un algoritmo que se puede usar para evaluar las políticas y encontrar la óptima sin tener que hacer la enumeración completa, que se describe a continuación. Algoritmo de mejoramiento de la política El primer paso del algoritmo es elegir una política arbitraria R1 . Después resuelve el sistema de ecuaciones para encontrar los valores g ( R1 ) , v0 ( R ) ,..., vM −1 ( R ) [ con vM ( R ) = 0] . Este paso se llama determinación del valor. Se construye una política mejor denotada por R2 . Paso llamado mejoramiento de la política. Estos dos pasos constituyen una iteración del algoritmo. Con la nueva política R2 se realiza otra iteración. Esto continúa hasta que dos iteraciones sucesivas lleven a políticas idénticas, con lo que se obtiene el óptimo. En seguida se describen los detalles. Paso inicial: se elige una política inicial de prueba R1 . Se hace n = 1 . Iteración n :
  15. 15. Paso 1, determinación del valor: para la política Rn , se usa pij ( k ) , Cik y vM ( Rn ) = 0 para resolver el sistema de M + 1 ecuaciones M g ( Rn ) = Cik + ∑ pij ( k ) v j ( Rn ) − vi ( Rn , ) para i = 0,1,..., M , j =0 para todos los M + 1 valores desconocidos de g ( Rn ) , v0 ( Rn ) , v1 ( Rn ) ,..., vM −1 ( Rn ) Paso 2, mejoramiento de la política: con los valores actuales de vi ( Rn ) calculados para la política Rn , se encuentra la política alternativa Rn +1 tal que para cada estado i , di ( Rn +1 ) = k es la decisión que minimiza M Cik + ∑ pij ( k ) v j ( Rn ) − vi ( Rn ) , j =0 es decir, para cada estado i , se quiere Minimizar  M  Cik + ∑ Pij ( k ) v j ( Rn ) − vi ( Rn )  k = 1,2,..., k  j =0  y después se establece d i ( Rn +1 ) igual al valor de k que da el mínimo. Este procedimiento define una nueva política Rn +1 Prueba de optimalidad: la política actual Rn +1 es óptima si es idéntica a la política Rn . Si lo es, el algoritmo se detiene. De otra manera, se establece n = n + 1 y se realiza otra iteración. Dos propiedades clave de este algoritmo son 1. g ( Rn +1 ) ≤ g ( Rn ) , para n = 1,2,... 2. El algoritmo termina con una solución óptima en un número finito de iteraciones1. Solución del ejemplo prototipo por el algoritmo de mejoramiento de la política Consulte el ejemplo prototipo presentado en la sección 21.1; a continuación se describe la aplicación del algoritmo. Paso inicial. Para la política inicial de prueba se elige, de manera arbitraria, la política que dice que se reemplace la máquina (decisión 3) cuando se encuentra en el estado 3, pero que no se 1 Esta terminación está garantizada con las suposiciones del modelo dado en la sección 21.2, incluyendo en particular la suposición (implícita) de un número finito de estados (M+1) y un número finito de decisiones (K), pero no necesariamente para modelos más generales. Vea R. Howard, Dynamic Priyrnminjjnnd Mnrkav Proccsscs, M.I.T. Press, Cambridge, M A., 1960. Vea también pp. 1291-1293 en A. F. Veinott, Jr. “On Finding Optimal Policies in Discrete Dynarriic Programming with No Discounting", Annals uf Matbcmatical Statistii:s, 37: 1284-1294, 1966.
  16. 16. haga nada (decisión 1) en otros estados. La matriz de transición y los costos de esta política se resumen como sigue. Política R1 Matriz de Transición Costos Estado Decisión Estado 0 1 2 3 Estado Cik 0 1 0 0 7 1 1 0 0 8 16 16 1 1 1 0 3 1 1 1 1000 4 8 8 2 1 2 0 0 1 1 2 3000 2 2 3 3 3 1 0 0 0 3 6000 Ilustración 1. Con esta política, el paso de determinación del valor requiere resolver e siguiente sistema de cuatro ecuaciones simultaneas para g ( R1 ) , v0 ( R1 ) , v1 ( R1 ) y v2 ( R1 ) [con v3 ( R1 ) = 0 ] 7 1 g ( R1 ) = + v1 ( R1 ) + v2 ( R1 ) − v0 ( R1 ) 8 16 3 1 g ( R1 ) = 1000 + v1 ( R1 ) + v2 ( R1 ) − v1 ( R1 ) 4 8 1 g ( R1 ) = 3000 + v2 ( R1 ) − v2 ( R1 ) 2 g ( R1 ) = 6000 + v0 ( R1 ) La solución simultánea de este sistema de ecuaciones es 25000 g ( R1 ) = = 1923 13 53000 v0 ( R1 ) = = −4077 13 34000 v1 ( R1 ) = = −2615 13 28000 v2 ( R1 ) = = 2154 13 Ahora se puede aplicar el paso 2 (mejorar la política). Es necesario encontrar una política mejorada R2 , tal que la decisión k en el estado i minimiza la expresión correspondiente:
  17. 17. Estado 0 : c0 k − p00 ( k )( 4077 ) − p01 ( k )( 2615) + p02 ( k )( 2154 ) + 4077 Estado 1 : c1k − p10 ( k )( 4077 ) − p11 ( k )( 2615) + p12 ( k )( 2154 ) + 2615 Estado 2 : c2 k − p20 ( k )( 4077 ) − p21 ( k )( 2615) + p22 ( k )( 2154 ) − 2154 Estado 3 : c3k − p30 ( k )( 4077 ) − p31 ( k )( 2615) + p32 ( k )( 2154 ). En realidad, en el estado 0, la única decisión permitida es la decisión 1( (no hacer nada), así que no se necesitan cálculos. De manera similar, se sabe que la decisión 3 (reemplazar) debe tomarse enelestado3. Entonces, solo los estados 1 y 2 requieren el cálculo de los valores de estas expresiones para diferentes decisiones. Para el estado 1, las decisiones posibles son 1 y 3. Para cada únase muestran los valores de Cik , p1 j , ( k ) y el valor resultante de la expresión Estado 1 Valor de la Decisión Cik p10 ( k ) p11 ( k ) p12 ( k ) p13 ( k ) expresión 1 1000 0 3 1 1 1923 ← mínimo 4 8 8 3 6000 1 0 0 0 4538 Como la decisión 1 minimizada la expresión, se elige como la decisión que debe tomarse en el estado 1 para la política R2 (igual que para la política R1 ). Los resultados correspondientes para el estado 2 se muestran enseguida Estado 2 Valor de la Decisión Cik p10 ( k ) p11 ( k ) p12 ( k ) p13 ( k ) expresión 1 3000 0 0 1 1 1923 2 2 2 4000 0 1 0 0 -769 ← mínimo 3 6000 1 0 0 0 -231 Por lo tanto se elige la decisión 2 como la que se debe tomar en el estado 2 para la política R2 . Observe que esto es diferente de la política R1 . Se resumen ahora los resultados de la nueva política, su matriz de transición y sus costos. Política R2 Matriz de Transición Costos Estado Decisión Estado 0 1 2 3 Estado Cik 0 1 0 0 7 1 1 0 0 8 16 16
  18. 18. 1 1 1 0 3 1 1 1 1000 4 8 8 2 2 2 0 1 0 0 2 4000 3 3 3 1 0 0 0 3 6000 Como esta política difiere de la política R1 , la prueba de optimalidad dice que se realice otra iteración Ilustración 2 en el paso 1 (determinación del valor), las ecuaciones a resolver para esta política son las siguientes 7 1 g ( R2 ) = + v1 ( R2 ) + v2 ( R2 ) − v0 ( R2 ) 8 16 3 1 g ( R2 ) = 1000 + v1 ( R2 ) + v2 ( R2 ) − v1 ( R2 ) 4 8 g ( R2 ) = 4000 + v1 ( R2 ) − v2 ( R2 ) g ( R2 ) = 6000 + v0 ( R2 ) La solución simultánea de este sistema de ecuaciones es 5000 g ( R2 ) = = 1667 3 13000 v0 ( R2 ) = = −4333 3 v1 ( R2 ) = −3000 2000 v2 ( R2 ) = = −667 3 Ahora se puede aplicar el paso 2 (mejorar la política). Para los dos estados con más de una decisión posible, las expresiones que se quieren minimizar son Estado 1 : c1k − p10 ( k )( 4333) − p11 ( k )( 3000) + p12 ( k )( 667 ) + 3000 Estado 2 : c2 k − p20 ( k )( 4333) − p21 ( k )( 3000 ) + p22 ( k )( 667 ) + 667 La primera iteración proporciona la mayor parte de los datos necesarios (probabilidades de transición y cik ) para determinar la nueva política, excepto por los valores de cada una de estas expresiones para cada decisión posible. Estos valores son Decisión Valor ara el estado 1 Valor para el estado 2 1 1667 3333 2 --- 1667 3 4667 2334
  19. 19. Como la decisión 1 minimiza la expresión para el estado 1 y la decisión 2 minimiza la expresión para el estado 2, la siguiente política de prueba R3 es Estado Decisión 0 1 1 1 2 2 3 3 Observe que la política R3 es idéntica a la política R2 . Entonces la prueba de optimalidad indica que esta política es óptima y el algoritmo termina. El OR Tutor incluye otro ejemplo que ilustra la aplicación de este algoritmo. El OR Courseware también incluye una rutina interactiva para facilitar el aprendizaje y la aplicación del algoritmo. CRITERIO DEL COSTO DESCONTADO En todo este capítulo se han medido las políticas según su costo promedio esperado (a largo plazo) por unidad de tiempo. Ahora se estudiará una medida alternativa de desempeño, el costo descontado total esperado. Como se introdujo en la sección 19.2, esta medida usa un factor de descuento «, donde 0 < a < 1 . Este factor de descuento a se puede interpretar como igual a 1 / (1 + i ) , donde i es la tasa de interés actual por periodo. Así, a es el valor presente de una unidad de costo un periodo en el futuro. En forma similar, a m es el valor presente de una unidad de costo dentro de m periodos. Este criterio de costo descontado es preferible al criterio de costo promedio cuando los periodos para la cadena de Markov son suficientemente largos como para que el valor del dinero en d tiempo se deba tomar en cuenta cuando los costos en periodos futuros se suman al costo en el periodo actual. Otra ventaja es que el criterio de costo descontado se puede adaptar con facilidad al manejar procesos de decisión markovianos de periodo finito donde la cadena de Markov deja de operar después de cierto número de periodos. Tanto la técnica de mejoramiento de la política como el enfoque de programación lineal se pueden aplicar aquí con algunos ajustes relativamente menores al caso del costo promedio, como se describirá. Después se presentará otra técnica, llamada método de aproximaciones sucesivas, para aproximarse con rapidez a una política óptima. Algoritmo de mejoramiento de una política Para derivar las expresiones necesarias para los pasos de determinación del valor y mejoramiento de una política se adopta el punto de vista de programación dinámica probabilística En particular, para cada estado i (i 0,1,..., M ) de un proceso de decisión
  20. 20. markoviano que opera bajo la política R , sea vi ( R ) el costo descontado total esperado cuando n el proceso inicia en el estado i (al inicio del primer periodo de observación) y opera durante n periodos. Entonces, vi ( R ) tiene dos componentes: Cik el costo en el que se incurre durante el n M primer periodo de observación, y a ∑ p ( k )V ( R ) , el costo total descontado esperado j =0 ij j n −1 del proceso al operar los n − 1 periodos restantes. Para cada i = 0.1,...M , esto conduce a la ecuación recursiva M Vi n ( R ) = Cik + a ∑ pij ( k )V jn−1 ( R ) j =0 donde Vi ( R ) = Cik , que se parece mucho a las relaciones recursivas de programación dinámica 1 probabilística encontradas en la sección 1 1.4. Conforme n se aproxima a infinito, esta relación recursiva converge a M Vi n ( R ) = Cik + a ∑ pij ( k )V jn−1 ( R ) para i = 0.1,...M j =0 en donde Vi ( R ) se puede interpretar ahora como el costo descontado total esperado cuando el proceso comienza en el estado i y continúa operando indefinidamente. Se tienen M+1 ecuaciones y M+1 incógnitas, de manera que la solución simultánea de este sistema de ecuaciones proporciona el valor de Vi ( R ) Para ilustrar, considere de nuevo el ejemplo prototipo de la sección 21.1. Según el criterio del costo promedio, en las secciones 21.2, 2 1 .3 y 21 .4 se encontró que la política óptima es no hacer nada si el proceso se encuentra en los estados 0 y 1, hacer una reparación general en el estado 2 y reemplazar en el estado 3. Según el criterio de costo descontado, con a = 0.9 , esta política da el siguiente sistema de ecuaciones: 7 1 1  V0 ( R ) = +0.9 V1 ( R ) + V2 ( R ) + V3 ( R )  8 16 16  3 1 1  V1 ( R ) = 1000 + 0.9  V1 ( R ) + V2 ( R ) + V3 ( R )  4 8 8  V2 ( R ) = 4000 + 0.9[V1 ( R ) ] V3 ( R ) = 6000 + 0.9[V0 ( R ) ] La solucion simultanea es
  21. 21. V0 ( R ) = 14949 V1 ( R ) = 16262 V2 ( R ) = 18636 V3 ( R ) = 19454 Entonces si se supone que el sistema comienza en el estado 0, el costo descontado total esperado es $14949 Este sistema de ecuaciones proporciona las expresiones necesarias para el algoritmo de mejoramiento de una política. Después de resumir este algoritmo en términos generales se usara para verificar si esta política, en particular, todavía es óptima bajo el criterio del costo descontado. Resumen del algoritmo de mejoramiento de una política (Criterio del costo descontado) Paso inicial se elige una política de prueba inicial arbitraria R1 . Se establece n = 1 Iteración n: Paso 1, determinación del valor: para política Rn se utilizan pij ( k ) y Cik para resolver el sistema de M + 1 ecuaciones M Vi ( Rn ) = Cik + a ∑ pij ( k )V j ( Rn ) para i = 0.1,...M j =0 Para todos los M + 1 valores desconocidos de V0 ( Rn ) ,V1 ( R ) ,...VM ( Rn ) Paso 2, mejoramiento de la política: con los valores de Vi ( Rn ) , se encuentra la política alternativa Rn+1 tal que, para cada estado i, d i ( Rn +1 ) = k es la decisión que minimiza M Cik + a ∑ pij ( k )V j ( Rn ) j =0 Esto es, para cada estado i se quiere Minimizar  M  Cik + a ∑ pij ( k )V j ( Rn )  k = 1,2,..., k  j =0  Y después se establece d i ( Rn+1 ) igual al valor de k que minimiza. Este procedimiento define una nueva política óptima Rn+1
  22. 22. Prueba de optimización: la política actual Rn+1 es optima si es idéntica a la eolítica Rn . Si lo es, el algoritmo se detiene. De otra manera se establece n = n + 1 y se realiza otra iteración Las tres propiedades clave de este algoritmo son las siguientes 1. Vi ( Rn +1 ) ≤ Vi ( Rn ) , para i = 0,1,..., M y n = 1,2,... 2. El algoritmo termina con una política óptima en un numero finito de interacciones 3. El algoritmo es valido son la suposición (usada en el caso del costo esperado) de que la cadena de Markov asociada con toda matriz de transición es irreducible El OR Courseware incluye una rutina interactiva para aplicar este algoritmo. Se retorna el ejemplo prototipo en donde se quedo antes de resumir este algoritmo Ya se selecciono la política óptima según el criterio del costo promedio con la política inicial de prueba R1 . Esta política, su matriz de transición y sus costos se resumen a continuación Política R1 Matriz de Transición Costos Estado Decisión Estado 0 1 2 3 Estado Cik 0 1 0 0 7 1 1 0 0 8 16 16 1 1 1 0 3 1 1 1 1000 4 8 8 2 2 2 0 1 0 0 2 4000 3 3 3 1 0 0 0 3 6000 Además, ya se llevo a cabo el paso 1 (determinación del valor) la iteración 1. esta matriz de transición y estos costos llevaron a las ecuaciones empleados para encontrar V0 ( R1 ) = 14949,V1 ( R1 ) = 16262,V2 ( R1 ) = 18636 yV3 ( R1 ) = 19454 Para comenzar el paso 2 (mejorar la política) solo es necesario construir la expresión que debe minimizarse para los dos estados (1 y 2) con una decisión seleccionada Estado 1 : c1k + 0.9[ p10 ( k )(14949 ) + p11 ( k )(16262) + p12 ( k )(18636) + p13 ( k )(19454 ) ] Estado 2 : c2 k + 0.9[ p20 ( k )(14949) + p21 ( k )(16262 ) + p22 ( k )(18636) + p 23 ( k )(19454 ) ] Para cada uno de estos estados y sus decisiones posibles, se muestras las Cik , Pij ( k ) y los valores que resultan para las expresiones correspondientes Estado 1 Valor de la Decisión Cik p10 ( k ) p11 ( k ) p12 ( k ) p13 ( k ) expresión
  23. 23. 1 1000 0 3 1 1 16262 ← mínimo 4 8 8 3 6000 1 0 0 0 19454 Estado 2 Valor de la Decisión Cik p10 ( k ) p11 ( k ) p12 ( k ) p13 ( k ) expresión 1 3000 0 0 1 1 20140 2 2 2 4000 0 1 0 0 18636 ← mínimo 3 6000 1 0 0 0 19454 Como la decisión 1 minimiza la expresión para el estado 1 y decisión 2 minimiza la expresión para el estado 2, la siguiente política de prueba ( R2 ) es la siguiente Política R2 Estado Decisión 0 1 1 1 2 2 3 3 Como esta política es idéntica a la política R1 la prueba de optimalidad indica que esta política es óptima. Entonces, la política optima según el criterio del costo esperado también es óptima según el criterio del costo descontado en este caso. (Esto ocurre con frecuencia perno no siempre) Formulación de programación La formulación de programación lineal para el caso del costo descontado es similar a la del costo esperado dada en la sección 21.3; pero ahora, no se necesita la primera restricción dada en esa sección; las otras restricciones funcionales si deben incluir el factor de descuento a . Otra diferencia es que el modelo ahora contiene constantes β j para j = 0,1,..., M estas constantes deben satisfacer las condiciones M ∑β j =0 j = 1, βj >0 para j = 0,1,...., M Excepto por esto, se pueden elegir de manera arbitraria sin afectar la politica optima que se obtiene del modelo El modelo que resulta refiere a elegir los valores de las variables de decisión continuas yik para
  24. 24. M K Minimizar Z = ∑∑ C i =0 k =1 ik yik , Sujeta a las restricciones K M K (1) ∑ yik − a∑∑ yik pik ( k ) = β j , para j = 0,1,..., M k =1 i 00 k =1 (2) yik ≥ 0, para i = 0,1,..., M ; k = 1,2,..., K Una vez que se usa el método simplex para obtener una solución optima de este modelo, la política optima correspondiente se define por yik Dik = P{ decision = k y estadp = i} = K ∑y k =1 ik Ahora, las Yik se pueden interpretar como un tiempo esperado descontado por estar en el estado i y tomar la decisión k, cuando la distribución de probabilidad del estada inicial (cuando comienzan las observaciones) es P{ X 0 = j} = β j para j = 0,1,..., M En otras palabras, si Z n ik = P{ en el timepo n, estado i y desicion = k } Entonces yij = zik + az1 + a 2 zik + a 3 zik + ... 0 ik 2 3 Con la interpretación de las β j como probabilidades del estado inicial (donde cada probabilidad es mayor que cero), Z se puede interpretar como el costo descontado total esperado correspondiente. Entonces, la elección de las β j afecta el valor óptimo de Z (pero no la política óptima que resulta). Una vez más, se puede demostrar que la política óptima obtenida al resolver el modelo de programación lineal es determinística; es decir, Dik = 0 a 1 Más aún, esta técnica es válida sin la suposición (usada para el caso del costo esperado) de que la cadena de Markov asociada con cada matriz de transición es irreducible. Solución del ejemplo prototipo por programación lineal. El modelo de programación lineal para el ejemplo prototipo (con a = 0.9 ) es Minimizar Z = 1000 y11 + 6000 y13 + 3000 y21 + 4000 y22 + 6000 y23 + 6000 y33 , Sujeta a
  25. 25. 1 y01 − 0.9( y13 + y23 + y33 ) = 4 7 3  1 y11 + y13 − 0.9 y01 + y11 + y22  = 8 4  4 1 1 1  1 y21 + y22 + y23 − 0.9 y01 + y11 + y21  =  16 8 2  4 1 1 1  1 y33 − 0.9 y01 + y11 + y21  =  16 8 2  4 Toda yik ≥ o 1 Donde β 0 , β1 , β 2 yβL3 seleccionan de manera arbitraria como . El método simplex da la 4 solución óptima y01 = 1.210, ( y11 , y13 ) = ( 6.656,0) ( y21 , y22 , y23 ) = ( 0,1.067,0) y33 = 1.067, De manera que D01 = 1 ( D11 , D13 ) = (1,0) ( D21 , D22 , D23 ) = ( 0,1,0) D33 = 1 Esta política óptima es la misma que la obtenida antes en esta sección por el algoritmo de mejoramiento de la política. El valor de la función objetivo para la solución óptima es Z = 17325 Este valor está muy relacionado con los valores de las Vi ( R ) para esta política óptima encontradas por el algoritmo de mejoramiento de la política. Recuerde que cada Vi ( R ) se interpreta como el costo descontado total esperado dado que el sistema inicia en el estado i y β i , se interpreta como la 1 probabilidad de comenzar en el estado i. Como cada β i se eligió igual a 4 1 17325 = [V0 ( R ) + V1 ( R ) + V2 ( R ) + V3 ( R ) ] 4 1 = (14949 + 16262 + 18636 + 19454) 4 Procesos de decisión markovianos de periodo finito y método de aproximaciones sucesivas Se dirigirá la atención a un enfoque llamado método de aproximaciones sucesivas para encontrar rápidamente al menos una aproximación a una política óptima.
  26. 26. Se ha supuesto que el proceso de decisión markoviano operará indefinidamente y se ha buscado una política óptima para tal proceso. La idea básica del método de aproximaciones sucesivas es encontrar una política óptima para las decisiones que se toman en el primer periodo cuando sólo quedan w periodos de operación para el proceso antes de terminar, comenzando con n=1, después n=2, después n=3, etcétera. Conforme n crece, las políticas óptimas correspondientes convergen a una política óptima para el problema de periodo infinito de interés. Entonces, las políticas obtenidas para n =1,2,3… proporcionan aproximaciones sucesivas que llevan a la política óptima deseada. La razón por la que este enfoque es atractivo es que se cuenta con un método rápido para encontrar una política óptima cuando sólo quedan n periodos de operación, a saber, el de programación dinámica probabilística descrito en la sección 11.4. En particular, para i = 0,1,..., M sea Vi n = Costo descontado total esperado por seguir una política óptima, dado que el proceso comienza en el .estado i le quedan sólo n periodos de operación n Por el principio de optimalidad para programación dinámica (vea la sección 11.2), las Vi se obtienen de la relación recursiva Min  M n −1  Vi n = Cij + a ∑ Pij ( k )V j , para i = 0,1,..., M k  j =0  El valor de k que minimiza proporciona la decisión óptima que se debe tomar en el primer periodo cuando el proceso inicia en el estado i. Para comenzar con n=1, todas las de manera que Min Vi n = k {Cij }, para i = 0,1,..., M Aunque es posible que el método de aproximaciones sucesivas no conduzca a una política óptima para el problema de infinitos periodos después de sólo unas cuantas iteraciones, tiene una ventaja especial sobre las técnicas de mejoramiento de una política y de programación lineal: nunca requiere que se resuelva un sistema de ecuaciones simultáneas, con lo que cada iteración se puede realizar en forma sencilla y rápida. Lo que es más, si en realidad sólo quedan n periodos en el proceso de decisión markoviano, definitivamente n iteraciones de este método llevarán a una política óptima. (Para un problema de n periodos, se permite establecer a = 1 , es decir, sin descuento, en cuyo caso él objetivo es minimizar el costo total esperado sobre los n periodos.) El OR Courseware incluye una rutina interactiva para guiarlo en el uso de este método de manera eficiente.
  27. 27. Solución del ejemplo prototipo por el método de aproximaciones sucesivas Se usará de nuevo a = 0.9 . Consulte los valores de Cik en la última columna de la tabla 21.1 al final de la sección 21.1. Vea también en las dos primeras columnas de la misma tabla que las únicas decisiones k factibles para cada estado i son k = 1 , para i = 0, k = 1o3 para i = 1, k = 1,2o3 para k = 3 para i=3 Para la primera iteración ( n = 1) , se muestra el valor obtenido para cada Vi1 junto con el valor de k que minimiza (dado entre paréntesis). Min V01 = { C0 k } = 0, ( k = 1) k =1 Min V11 = { C1k } = 1000, ( k = 1) k = 1,3 Min V21 = { C2 k } = 3000, ( k = 1) k = 1,2,3 Min V31 = { C3k } = 6000, ( k = 3) k =3 Así, la primera aproximación dice que se tome la decisión 1 (no hacer nada) cuando el sistema está en el estado 0,1 o 2. Cuando el sistema se encuentra en el estado 3, se toma la decisión 3 (reemplazar la máquina). La segunda iteración lleva a 7 1 1  V02 = 0 + 0.9  (1000 ) + ( 3000) + ( 6000 )  = 1294 ( k = 1)  8 16 16   3 1 1  V12 = min 1000 + 0.9  (1000 ) + ( 3000 ) + ( 6000 )  = 2688 ( k = 1)  4 8 8   1 1  V22 = min 3000 + 0.9  ( 3000 ) + ( 6000)   2 2  4000 + 0.9[1(1000 ) ],6000 + 0.9[1( 0 ) ]} ( k = 2) V = 3 2 6000 + 0.9[1( 0 ) ] = 6000 ( k = 3) donde el operador mín se eliminó en la primera y cuarta expresiones por haber sólo una alternativa. La segunda aproximación indica que se deje la máquina como está cuando se encuentra en los estados 0 o 1, se haga una reparación general si está en el estado 2 y se reemplace cuando está en el estado 3. Observe que esta política es la óptima para el problema con número infinito de periodos, como se encontró en esta sección con el algoritmo de 2 mejoramiento de la política y con programación lineal. Sin embargo, los valores de las Vi
  28. 28. (costo descontado total esperado cuando se comienza en el estado i para el problema de dos periodos) aún no son cercanos al de Vi (el costo correspondiente al problema de número infinito de periodos). 7 1 1  V03 = 0 + 0.9  ( 2688) + ( 4900 ) + ( 6000)  = 2730 ( k = 1) 8 16 16   3 1 1  V13 = min 1000 + 0.9  ( 2688) + ( 4900 ) + ( 6000 )   4 8 8  6000 + 0.9[1(1294 ) ]} = 4041 ( k = 2)  1 1  V23 = min 3000 + 0.9  ( 4900 ) + ( 6000 )   2 2  4000 + 0.9[1( 2688) ],6000 + 0.9[1(1294 ) ]} = 6419 ( k = 2) V = 3 3 6000 + 0.9[1(1294) ] = 6000 ( k = 3) De nuevo se obtiene la política óptima para el problema de periodos infinitos y los costos se acercan a los de la política óptima para ese problema. Este procedimiento puede continuar y V0n , V1n , V2n , y, V3n convergen a 14949,16262, 18636 y 19454, respectivamente. Debe hacerse hincapié en que de haber terminado el método de aproximaciones sucesivas después de la segunda iteración, se habría obtenido una política óptima para el problema de periodos infinitos, aunque no hay manera de saberlo, si no se resuelve por otros métodos. Como se indicó, el método de aproximaciones sucesivas obtiene definitivamente una política óptima para un problema de n periodos después de n iteraciones. Para este ejemplo, la primera, segunda y tercera iteraciones han identificado la decisión óptima inmediata para cada estado si el número de periodos que quedan es uno, dos o tres, respectivamente. MODELO DE PROGRAMACIÓN DINÁMICA CON ETAPAS FINITAS Para el desarrollo de este modelo se tendrá en cuenta el siguiente ejemplo, conocido como el ejemplo del jardinero. EJEMPLO DEL JARDINERO Usaremos un ejemplo para presentar los detalles del proceso markoviano cíe decisión (o proceso de decisión markoviana). El ejemplo parafrasea (es decir, ilustra) varias aplicaciones importantes en las áreas de inventarios, reposiciones, administración del flujo de efectivo y control de la capacidad de los depósitos de agua. Cada año, al comenzar la estación para trabajar los jardines (de marzo a septiembre) un jardinero usa una prueba química para determinar el estado del suelo. Dependiendo de los
  29. 29. resultados de las pruebas, la productividad para la nueva estación cae en uno de tres estados: 1) bueno, 2) regular y 3) malo. A través de los años el jardinero observó que las condiciones meteorológicas prevalecientes durante el invierno (de octubre a febrero) juegan un papel importante en la determinación de la condición del suelo, dejándolo igual o empeorándolo, pero nunca mejorándolo. En este respecto, el estado del suelo en el año anterior es un factor importante para la productividad del presente año. Usando los datos de- las pruebas hechas por el jardinero, las probabilidades de transición durante un periodo de un año, de un estado de productividad a otro, se representa con la siguiente cadena de Markov: estadpdel sistemaaño proximo     1 2 3 estado 1  0.2 0.5 0.5     P = delsistema 2  0 0.5 0.5  1 esteaño 3  0   0 1  Las probabilidades de transición en P1 indican que la productividad de determinado año no puede ser mejor que la del año anterior. Por ejemplo, si las condiciones del suelo en el presente año son regulares (estado 2), la productividad en el próximo año permanecerá regular con una probabilidad de 0.5, o se volverán malas (estado 3) con una probabilidad de 0.5. El jardinero puede alterar las probabilidades de transición P1 con otras acciones. En el caso normal, se aplica fertilizante para mejorar las condiciones del suelo, y se produce la siguiente matriz de transición: 1 2 3 1  0.30 0.60 0.10    P = 2  0.10 0.60 0.30  2 3  0.05 0.40 0.55    Para poner en perspectiva el problema de decisión, el jardinero asocia una función de ingreso (o una estructura de recompensa) con la transición de un estado a otro. La funcion de ingreso expresa la "anuncia o la pérdida durante un periodo de 1 año, dependiendo de los estados entre los que se hace la transición. Como el jardinero tiene la opción de usar fertilizante o no, la ganancia o la perdida varían dependiendo de la decisión tomada. Las matrices R1 y R 2 resumen las funciones de ingreso, en cientos de $, correspondientes a las matrices P1 y P 2 , respectivamente.
  30. 30. 1 2 3 1 2 3 17 6 3  1  6 5 −1     R = r 20 5 1  1 1 ij R = r 27 4 0  2 2 ij 3  0 0 − 1   3 6 3 − 2   2 Los elementos rij de R 2 : tienen en cuenta el costo de aplicar el fertilizante. Por ejemplo, si las condiciones del suelo fueron regulares el año anterior (estado 2) y se vuelven malas (estado 3). en este año, su ganancia será r23 = 0 en comparación con r23 = 1 cuando no se usa fertilizante. A 2 1 este respecto, K expresa la recompensa neta después de haber introducido el cosió del fertilizante. ¿Qué clase de problema de decisión tiene el jardinero? Primero, se debe conocer si la actividad de jardinería continuará durante una cantidad limitada de años, o en forma indefinida. A estos casos se les llama problemas de decisión con etapas finitas o con etapas infinitas. En ambos casos, el jardinero usa el resultado de las pruebas químicas (estado del sistema) para determinar la mejor acción (fertilizar o no) que maximice el ingreso esperado. También, al jardinero le puede interesar evaluar el ingreso esperado que resulte de las acciones especificadas de antemano para determinado estado del sistema. Por ejemplo, se puede aplicar fertilizante siempre que las condiciones del suelo sean malas (estado 3). Se dice que el proceso de toma de decisiones en este caso se representa por una política estacionaria. Cada política estacionaria corresponderá a matrices de transición y de ingreso distintas, que se obtienen a partir de las matrices P1 , P 2 , R1 yR 2 Por ejemplo, para la política estacionaria de aplicar fertilizante sólo cuando las condiciones del suelo sean malas (estado 3), las matrices resultantes de transición y de ingreso son:  0.20 0.50 0.30  7 6 3      P =  0.00 0.50 0.50  R = 0 5 1   0.05 0.40 0.55   6 3 − 2     Estas matrices son distintas de P1 y R1 sólo en los terceros renglones, que se toman directamente de P 2 y R 2 las matrices asociadas con la aplicación del fertilizante Supongamos que el jardinero desea "jubilarse" de la jardinería dentro de N años. Lo que interesa es determinar las acciones óptimas de cada año (fertilizar o no) que produzcan los ingresos esperados máximos al final de N años. Sean k = 1y 2 las dos acciones (alternativas) disponibles para el jardinero. Las matrices P k y R k que representan las probabilidades de transición y la función de recompensa para la alternativa k se presentaron en la sección 19.1, y se muestran a continuación para mayor comodidad.
  31. 31.  0.2 0.5 0.3  7 6 3      p = r =  0 0.5 0.5  1 1 ij R = r = 0 5 1  1 1 ij  0 0 1   0 0 − 1      0.30 0.060 0.10   6 5 −1      p = r =  0.10 0.60 0.030  R = rij =  7 4 0  2 1 ij 2 1  0.05 0.40 0.55  6 3 − 2     El problema del jardinero se expresa como un modelo de programación dinámica de etapas finitas como sigue. Para generalizar, se definen m = Cantidad de estados en cada etapa (año) (3 en el problema del jardinero) f n ( i ) = Ingreso optimo de las etapas n, n + 1,..., N cuando i es el estado del sistema (condiciones del suelo) al comenzar el año n La ecuación recursiva en reversa que relaciona a f n con f n+1 ( i ) es m k [ ]  f n ( i ) = max ∑ pij rijk + f n+1 ( j ) , n)1,2,..., N k  i =0  Una justificación de esta ecuación es que el ingreso acumulado rij + f n+1 ( j ) que resulta de k k alcanzar el estado j en la etapa n + 1 desde el estado i en la etapa n tiene probabilidad pij de suceder. Sea. m vik = ∑ pij rijk k i =0 La ecuación recursiva de la programación dinámica se puede escribir en la forma f n ( i ) = max vik k { }  m  f n ( i ) = max vik + ∑ pij f n+1 ( j ) , n)1,2,..., N k k  i =0  k Para ilustrar el cálculo de v j , veamos el caso en donde no se usa fertilizando (k=1) v1 = 0.2 × 7 + 0.5 × 6 + 0.3 × 3 = 5.3 1 v1 = 0 × 0 + 0.5 × +0.5 × 1 = 3 2 v3 = 0 × 0 + 0 × 0 + 1 × −1 = −1 1
  32. 32. Así, si la condición del suelo es buena, una sola transición produce 5.3 para ese año, si es regular la productividad es 3; y si es mala, la productividad es -1 Ejemplo 19.2-1 En este ejemplo se resolverá el problema del jardinero con los datos suministrados en las matrices P1 , P 2 , R1 yR 2 , dado un horizonte de 3 años (N=3) k Como se usaran los valores de vi en forma repetida en los cálculos, se resumen aquí por comodidad. Recuérdese que k = 1 representa “no fertilizar” y k = 2 representa “fertilizar” i vi1 vi2 1 5.3 4.7 2 3 3.1 3 -1 .4 Etapa 3. vik Solución Óptica i k =1 k =2 fn ( i) k 1 5.3 4.7 5.3 1 2 3 3.1 3.1 2 3 -1 0.4 0.4 2 Etapa 2 vik + p11 f 2 (1) + p12 f 2 ( 2 ) + p13 f 3 ( 3) k k k Solución Óptica i k =1 k =2 fn ( i) k 5.3 + 0.2 × 5.3 + 0.5 × 3.1 4.7 + 0.3 × 5.3 + 0.6 × 3.1 1 8.19 2 + 0.3 × 0.4 = 8.03 + 0.1× 0.4 = 8.19 3 + 0 × 5.3 + 0.5 × 3.1 3.1 + 0.1× 5.3 + 0.6 × 3.1 2 5.61 2 + 0.5 × 0.4 = 4.75 + 0.3 × 0.4 = 5.61 − 1 + 0 × 5.3 + 0 × 3.1 0.4 + 0.05 × 5.3 + 0.4 × 3.1 3 2.13 2 + 1× 0.4 = −0.6 + 0.55 × 0.4 = 2.13 Etapa 1
  33. 33. vik + p11 f 2 (1) + p12 f 2 ( 2 ) + p13 f 3 ( 3) k k k Solución Óptica i k =1 k =2 fn ( i) k 5.3 + 0.2 × 8.19 + 0.5 × 5.61 4.7 + 0.3 × 8.19 + 0.6 × 5.61 1 10.74 2 + 0.3 × 2.13 = 10.38 + 0.1 × 2.13 = 10.74 3 + 0 × 8.19 + 0.5 × 5.61 3.1 + 0.1 × 8.19 + 0.6 × 5.61 2 7.92 2 + 0.5 × 2.13 = 6.87 + 0.3 × 2.13 = 7.92 − 1 + 0 × 8.19 + 0 × 5.61 0.4 + 0.05 × 8.19 + 0.4 × 5.61 3 4.23 2 + 1× 2.13 = −1.13 + 0.55 × 2.13 = 4.23 La solución optima indica que para los años 1 y 2, el jardinero debe aplicar fertilizante (K=2) independientemente del estado del sistema (Condiciones de suelo, determinadas por medio de las pruebas químicas). En el año 3 se debe aplicar fertilizante solo si el sistema está en el estado 2 o 3 (Condiciones del suelo, regulares o malas). Los ingresos totales esperados, en los tres años son f1(1)=10.74, si el estado del sistema en el año 1 es bueno f1(2)=7.92, si es regular, y f1(3)=4.23 si es malo. CONCLUSIONES
  34. 34. • Los procesos de decisión de Markov son una herramienta poderosa para optimizar el desempeño de los procesos estocásticos que se pueden modelar como una cadena de Markov discreta. • Las dos medidas principales de desempeño que se usan son el costo promedio esperado por unidad de tiempo y el costo descontado total esperado (a la larga). • El costo total descontado (a la larga) requiere la determinación del valor adecuado de un factor de descuento, pero esta medida es útil cuando es importante tomar en cuenta el valor del dinero en el tiempo. • Los dos métodos mas importantes para derivar políticas optimas para los procesos de decisión markovianos son los algoritmos de mejoramiento de una política y programación lineal. • Bajo el criterio de costo descontado, el método de aproximaciones sucesivas proporciona un camino rápido para aproximarse a una política optima. BIBLIOGRAFIA LIBROS • Investigación de operaciones- Hillier Lieberman • Investigación de operaciones- Taha Handy INTRODUCCION
  35. 35. En el presente trabajo se desarrollara el tema de procesos de decisión markoviano, el cual trata del diseño de la operación de una cadena de markov para optimizar su desempeño. Para cada estado posible se tomara una decisión, teniendo en cuenta que cada decisión afectara las probabilidades de transición así como los costos subsecuentes. Lo realmente importante es determinar por medio de los procesos de decisión markoviana la política óptima que maximice el ingreso, para lo cual se utilizaran diversos métodos, tales como, programación lineal, enumeración exhaustiva, método de aproximaciones sucesivas, algoritmo de mejoramiento de políticas, criterio del costo descontado y programación dinámica de etapas finitas, los cuales se desarrollaran más adelante, tomando como base ejercicios para la ejemplificación de los mismos. PROCESOS DE DECISION MARKOVIANOS
  36. 36. MAIRA LIZETH DELGADO MENDOZA 2070268 UNIVERSIDAD INDUSTRIAL DE SANTANDER FACULTAD DE INGENIERIAS FISICOMECANICAS INVESTIGACION DE OPERACIONES II BUCARAMANGA 2010

×