Documentos de Académico
Documentos de Profesional
Documentos de Cultura
OPTIMIZACION
OPTIMIZACION
7 2. OPTIMIZACIN ............................................................................................................... 9 2.1 Introduccin .................................................................................................................... 9 2.2 Convexidad ................................................................................................................... 13 2.3 Optimos Locales y Globales ......................................................................................... 16 2.4 Condiciones de KuhnTucker....................................................................................... 18 2.5 Relajaciones .................................................................................................................. 20 2.6 Dualidad ........................................................................................................................ 30 2.7 Programacion Lineal ................................................................................................... 34 3. GRAFOS ........................................................................................................................... 55 3.1 Introduccin .................................................................................................................. 55 3.2 Definiciones Basicas ..................................................................................................... 57 3.3 Conexidad. Clausura Transitiva. ................................................................................... 65 3.4 Multiplicacin Latina - Camino Hamiltoniano ............................................................. 72 4. ESQUELETOS Y CAMINOS OPTIMALES ................................................................ 73 4.1 Medida de conexin de grafos ...................................................................................... 73 4.2 Esqueletos optimales.................................................................................................... 75 4.3 Caminos optimales Camino mnimo .......................................................................... 77 5. REDES FLUJOS ........................................................................................................... 79 5.1 Corte mnimo flujo mximo....................................................................................... 80 5.2 Bases Para la Construccin de un Flujo Mximo.......................................................... 84 5.3 Algoritmo de Flujo Mximo ......................................................................................... 87 6. INTRODUCCIN A LOS PROBLEMAS DE ORDENAMIENTOS ......................... 89 6.1 Conceptos Generales..................................................................................................... 90 6.2 Modelado de los problemas de ordenamientos ............................................................. 92 6.3 Mtodos de Camino Crtico .......................................................................................... 94 7. PROCESOS ESTOCSTICOS...................................................................................... 101 7.1 Introduccin ................................................................................................................ 101 7.2 Procesos Estocsticos.................................................................................................. 108 7.3 Cadenas de Markov..................................................................................................... 111 7.4 Cadenas de Markov de Tiempo Contnuo................................................................... 125 7.5 Procesos de Poisson .................................................................................................... 129 7.6 Procesos de Nacimiento y Muerte............................................................................... 131 7.7 Sistemas de Colas........................................................................................................ 132 7.8 Propiedad PASTA....................................................................................................... 145 8. SIMULACIN................................................................................................................. 146 8.1 Introduccin ................................................................................................................ 146 8.2 Modelos....................................................................................................................... 147 8.3 Simulacin de sistemas ............................................................................................... 148 8.4 Etapas en el proceso de Simulacin de Sistemas ........................................................ 149 8.5 Clasificacin de tipos de simulacin........................................................................... 151 8.6 Generacin de nmeros aleatorios .............................................................................. 153 8.7 Generacin de variables aleatorias.............................................................................. 158 8.8 Mtodo Montecarlo..................................................................................................... 161
1. INTRODUCCION
El objetivo del curso es que el estudiante aprenda a reconocer los problemas tipo de la Investigacin de Operaciones de modo que sepa a qu tcnico recurrir en cada caso, para un adecuado estudio y solucin del mismo. Como su nombre lo indica, la Investigacin de Operaciones (IO), o Investigacin Operativa, es la investigacin de las operaciones a realizar para el logro ptimo de los objetivos de un sistema o la mejora del mismo. Esta disciplina brinda y utiliza la metodologa cientfica en la bsqueda de soluciones ptimas, como apoyo en los procesos de decisin, en cuanto a lo que se refiere a la toma de decisiones ptimas y en sistemas que se originan en la vida real.
Antecedentes histricos
El trmino IO se utiliza por primera vez en el ao 1939 durante la 2da Guerra Mundial, especficamente cuando surge la necesidad de investigar las operaciones tcticas y estratgicas de la defensa area, ante la incorporacin de un nuevo radar, en oportunidad de los ataques alemanes a Gran Bretaa. El avance acelerado de la tecnologa militar hace que los ejecutivos y administradores militares britnicos deban recurrir a los cientficos, en pos de apoyo y orientacin en la planificacin de su defensa. El xito de un pequeo grupo de cientficos que trabajaron en conjunto con el ejecutivo militar a cargo de las operaciones en la lnea, deriv en una mayor demanda de sus servicios y la extensin del uso de la metodologa a USA, Canad y Francia entre otros. Sin embargo, el origen de la Investigacin Operativa puede considerarse como anterior a la Revolucin Industrial, aunque fue durante este perodo que comienzan a originarse los problemas tipo que la Investigacin Operativa trata de resolver. A partir de la Revolucin Industrial y a travs de los aos se origina una segmentacin funcional y geogrfica de la administracin, lo que da origen a la funcin ejecutiva o de integracin de la administracin para servir a los intereses del sistema como un todo. La Investigacin Operativa tarda en desarrollarse en el campo de la administracin industrial. El uso de la metodologa cientfica en la industria se incorpora al principiar los aos 50, a partir de la 2da Revolucin Industrial, propiciada por los avances de las Comunicaciones, y la Computacin, que sientan las bases para la automatizacin, y por sobre todo por el florecimiento y bienestar econmico de ese perodo. Los primeros desarrollos de esta disciplina (IO) se refirieron a problemas de ordenamiento de tareas, reparto de cargas de trabajo, planificacin y asignacin de recursos en el mbito militar en sus inicios, diversificndose luego, y extendindose finalmente a organizaciones industriales, acadmicas y gubernamentales. Algunas fechas, nombres y temas 1759 1874 1873 1896 1903 189~ 192~ 191~ 1920-30 1937 1939 Quesnay (ecnomo) - Programacin Matemtica Walras Jordan - Precursor de modelos lineales Minkowsky - Precursor de modelos lineales Farkas - Precursor de modelos lineales Markov - Precursor modelos dinmicos probabilsticos - Primer desarrollo de modelos de inventarios Erlang - Primeros estudios de lneas de espera Koning y Egervary - Mtodos de asignacin (analticos) von Neuman - Teora de juegos y de preferencias Kantorovich - Problemas de distribucin 2
Introduccin a la Investigacin de Operaciones 2da guerra - Logstica estratgica para vencer al enemigo Finales 2da guerra - Logstica de distribucin de recursos de los aliados (Rand Corporation- Fuerza area norteamericana). Dantzig, George - Mtodo simplex en base al trabajo de precursores, inicio a la Programacin Lineal. - Bellman - Programacin dinmica. - Kuhn y Tucker - Programacin No Lineal. - Gomory - Programacin Entera. - Ford y Fulkerson - Redes de optimizacin. - Markowitz - Simulacin. - Arrow, Karloin, Scarf, Whitin - Inventarios. - Rafia - Anlisis de Decisiones. - Howard - Procesos Markovianos de Decisin. - Churchman, Ackoff, Arnoff - Orientacin a sistemas, generalizacin de la Investigacin Operativa. 1970 y parte - Receso en el uso de la Investigacin de Operaciones dcada 80 1985 en Reflorecimiento de la disciplina con el devenir del control automtico delante industrial, las microcomputadoras y las nuevas interfaces grficas que impulsan el desarrollo de los Sistemas Automatizados de Apoyo a la Toma de Decisiones, donde la Investigacin Operativa juega un papel preponderante. Actualmente IO se aplica al sector privado y pblico, a la industria, los sistemas de comercializacin, financieros, de transportes, de salud etc., en los pases desarrollados, en vas de y en los del tercer mundo. Existen varias asociaciones en todo el mund, que agrupan a personas (estudiantes, cientficos y profesionales) interesados por el estudio y aplicacin de la Investigacin Operativa. La mas grande de todas es INFORMS, de Estados Unidos de Norteamrica asociacin que nace de la unin de la ORSA = Operation Research Society of America, con 8 000 miembros y la TIMS = Institute of Managment Science con 6 000 miembros. Tambin existen Asociaciones Canadienses, Europeas, Latinoamericanas y Asiticas federadas en la IFORS, International Federation of Operation Research Societies. La Asociacin Latinoamericana de Investigacin de Operaciones, ALIO, conglomera a la mayor parte de las Asociaciones de America Central y Sur. Se publican decenas de revistas diferentes en todo el mundo. Existen programas de Posgrado (maestra y doctorado) en la especialidad, en Amrica y Europa.
En base a estas propiedades, una posible definicin es: la Investigacin Operativa es la aplicacin del mtodo cientfico por equipos interdisciplinarios a problemas que comprenden el control y gestin de sistemas organizados (hombre- mquina); con el objetivo de encontrar soluciones que sirvan mejor a los propsitos del sistema (u organizacin) como un todo, enmarcados en procesos de toma de decisiones.
Los pasos a seguir en la aplicacin del mtodo cientfico (coincidentes con los de la Teora General de Sistemas) son, en su expresin mas simple: 1.- Planteo y Anlisis del problema 2.- Construccin de un modelo 3.- Deduccin de la(s) solucion(es) 4.- Prueba del modelo y evaluacin de la(s) solucion(es) 5.- Ejecucin y Control de la(s) solucion(es) Otra definicin: la Investigacin Operativa es la aplicacin del mtodo cientfico a un mismo problema por diversas ciencias y tcnicas, en apoyo a la seleccin de soluciones, en lo posible ptimas. Observar que el problema es UNO SOLO, sin embargo existen maneras distintas de observar un mismo problema, dependiendo de los objetivos que se planteen para resolverlo. Ejemplo: Un proceso de decisin respecto a la poltica de inventarios en una organizacin. Existen 4 funciones administrativas que han dado lugar a departamentos cuyos objetivos son: Funcin Produccin Comercializacin Finanzas Personal Objetivo Maximizar la cantidad de bienes (servicios) producidos y minimizar el costo unitario de la produccin. Maximizar la cantidad vendida y minimizar el costo unitario de las ventas. Minimizar el capital requerido para mantener cierto nivel del negocio. Mantener la moral y la alta productividad entre los empleados.
Con respecto al INVENTARIO y segn estos OBJETIVOS: El departamento de produccin necesita producir tanto como sea posible a un costo mnimo, lo que se logra fabricando un solo producto en forma continua, pues se logra mayor eficiencia y se minimiza el tiempo perdido por cambio de equipo, al cambiar de artculo. Con este procedimiento se logra un gran inventario con una lnea de productos pequea. El departamento de mercado tambin necesita un gran inventario, pero para vender tanto como sea posible, debe surtir de la mas amplia variedad de productos. Motivos de desencuentro con el departamento de produccin. Para minimizar el capital necesario para que el negocio marche, el departamento de Finanzas debe reducir la cantidad de dinero "comprometido", lo mas directo es reducir los inventarios. Se propone que los inventarios deben aumentar o disminuir en proporcin a la fluctuacin de las ventas. En contraposicin, cuando la ventas son bajas, ni produccin ni personal requieren disminuir la produccin, ni reducir personal. Personal le interesa mantener la produccin a un nivel tan constante como sea posible, ya que el despido implica repercusiones en la moral del personal , prdida de personal calificado, nuevos costos de formacin de nuevo personal cuando as se requiera. Esto se traduce en producir hasta el nivel del inventario cuando las ventas son bajas y agotarlo cuando stas son altas. Los objetivos enumerados y definidos de esta manera son dificiles de llevar a la prctica por su inconsistencia desde el punto de vista de la organizacin y del sistema en su conjunto. Es tarea y responsabilidad del ejecutivo (gerente) determinar 4
Introduccin a la Investigacin de Operaciones una poltica de inventario que convenga a los intereses de toda la compana y no de una sola de las funciones subordinadas. La tarea de organizacin y gerenciamiento requiere que se considere al SISTEMA en su conjunto y sta es la esencia del trabajo gerencial. El ejecutivo debe decidir y para ello recurrir a algn mtodo. Le convendr recurrir a un Investigador de Operaciones, dado que supuestamente ste estar apto para utilizar la investigacin cientfica en apoyo a las decisiones que el ejecutivo deba tomar. Este apoyo se hace especialmente necesario cuando se trata de la bsqueda de soluciones ptimas a problemas que se originan en las organizaciones y servicios en general.
Frecuentemente se requieren una o ms ecuaciones o inecuaciones de las llamadas restricciones, para expresar el hecho de que algunas de las variables no controlables (o todas), pueden manejarse dentro de ciertos lmites. Por ejemplo, el tiempo de mquina asignado a la produccin de un producto siempre tendr valor positivo, y no ser mayor que el tiempo total disponible o asignado para tal fin; otro ejemplo, la suma del dinero presupuestado para cada departamento en un organizacin o industria no puede exceder la suma de dinero disponible, etc. Una vez obtenido el modelo, ste puede usarse para encontrar exacta o aproximadamente los valores ptimos de las variables no controlables, aquellas que producen la mejor ejecucin del sistema, es decir, la solucin al problema.
Introduccin a la Investigacin de Operaciones EJEMPLO: Modelo de un problema agrcola. Supongamos que una empresa citrcola y el Estado pretenden hacer inversiones cuantiosas en el cultivo de naranja, limn , pomelo y mandarinas, con un doble objetivo: a) reducir el desempleo rural y b) aumentar las exportaciones para equilibrar la balanza de pagos. Segn estudios realizados, se maneja la siguiente informacin (datos inventados): Precio Costo por Horas-hombre Tipo de Produccin Area mnima promedio rbol de cuidado rbol promedio anual por rbol (m2) en kgs / rbol mundial por kg anual por rbol Naranja 150 4 $ 10 $ 2.00 36 Limn 200 5 $ 04 $ 0.50 72 Pomelo 050 3 $ 15 $ 1.00 50 Mandarina 150 6 $ 07 $ 1.50 10 1. Existe una extensin propicia para este tipo de cultivo de 250.000 m2 2. Se asegura el suministro de agua, aproximadamente por 20 aos (existencia de aguadas en la zona). 3. La financiera pretende hacer una inversin de 20 millones, pensando exportar toda su produccin a partir del 3er ao, que es cuando los rboles comienzan a ser productivos. 4. El gobierno ha determinado que ste proyecto emplee al menos 200 personas ininterrumpidamente. Decisin a tomar: Cuntos rboles de naranja, limn, pomelo y mandarina, debern sembrarse con el objetivo de maximizar el valor de la futura exportacin anual? Formulacin del problema: Sean X1: X2: X3: X4: nmero de rboles de naranja a ser sembrados. nmero de rboles de limn a ser sembrados. nmero de rboles de pomelo a ser sembrados. nmero de rboles de mandarinas a ser sembrados.
Valor medio de la export. anual: U = 10150X1 + 4200X2 + 1550X3 + 7150X4 Segn las siguientes restricciones: Extensin de tierra: 4X1 + 5X2 + 3X3 + 6X4 250 000 m2 Inversin inicial: 2X1 + 0.5X2 + 1X3 + 1.50X4 $20 000 000 Desempleo mnimo: 36X1 + 72X2 + 50X3 + 10X4 2008360 (horas hombre/da/ao) Nmero de rboles a sembrar: X1 0, X2 0, X3 0, X4 0 Obtuvimos un modelo del problema de tipo: Maximizar U = f ( ) Sujeto a: Restricciones Para ciertos tipos de funciones, como ser relaciones algebraicas elementales, si las restricciones no son demasiado numerosas, existen mtodos analticos que resuelven el problema ejemplo que hemos modelado como un problema de programacin matemtica lineal. Para problemas con gran nmero de restricciones, llamados de gran tamao, se han desarrollado tcnicas que los resuelven, la mayor de las veces en forma aproximada. La funcin f, puede consistir en un conjunto de reglas de cmputo (un algoritmo p. ej.); reglas lgicas que nos permiten calcular la utilidad (U) de ejecucin para 6
Introduccin a la Investigacin de Operaciones cualquier conjunto especfico de valores de las variables tanto controlables como no controlables; generalmente obtenemos soluciones aproximadas a los valores ptimos de las variables correspondientes. Otras veces, nos vemos forzados a experimentar con el modelo y simularlo, seleccionando valores de las variables segn una distribucin de probabilidad, lo que nos permite calcular o0 muestrear un valor aproximado de la funcin U. Ejemplo que muestrea un valor aproximado de la confiabilidad de un grafo mediante el Mtodo Montecarlo:
Funcin de Utilidad de la Confiabilidad de G cont := 0; Para n:= 1, N sortear G Si G conexo: con := cont + 1 fin para Conf (G) = cont / N.
Una vez obtenido un valor (o muestra) de la funcin de utilidad, podemos especificar un procedimiento que permita seleccionar valores sucesivos (de prueba) de variables no controlables, de manera que converjan hacia una solucin ptima. Una SOLUCIN PTIMA es aquella que maximiza o minimiza (segn convenga) la medida de ejecucin de un modelo, sujeto a las condiciones y restricciones pertinentes al sistema. Muchas veces, independientemente del procedimiento utilizado, se busca una solucin mas ptima, o mejor dicho, mas cercana a la ptima. En consecuencia, la optimizacin produce la mejor solucin para el problema que se est modelando. La solucin ptima ser la mejor para el modelo en consideracin, ya que un modelo nunca es una representacin exacta del problema; en el mejor de los casos, el modelo es una "buena" representacin del problema, de ah que la solucin ptima o cercana a la ptima derivada de ese modelo, es una "buena" aproximacin a la solucin ptima y, por lo tanto, se supone que ser la mejor para el problema que se pretende resolver.
Introduccin a la Investigacin de Operaciones recursos escasos, ordenamiento, secuenciacin y coordinacin de tareas, lneas de espera, mantenimiento y reemplazo de equipos, inventarios, costos y tiempos, gestin de proyectos.
Gestin de proyectos
El conjunto de tareas de un proyecto se modelan mediante un grafo, sobre el que se determinan cules son los tiempos y las tareas crticas ("cuellos de botellas") del proyecto. Tcnicas usadas: CPM-PERT, mtodo del Camino Crtico. Algunos de estos problemas, se estudiarn en el curso Introduccin a la Investigacin de Operaciones.
Introduccin a la Investigacin de Operaciones Por medio de la programacin lineal se pueden formular y resolver problemas de una gran variedad de campos del quehacer humano, entre los que se puede mencionar: asignacin de recursos en la planificacin de gobierno, anlisis de redes para planificacin urbana y regional, planificacin de la produccin en la industria, y la administracin de sistemas de transporte y distribucin. Por esto la programacin lineal es uno de los xitos de la moderna teora de la optimizacin. La programacin entera est relacionada con la resolucin de problemas de optimizacin en los cuales al menos algunas de las variables deben tomar slo valores enteros. Cuando todos los trminos son lineales se habla de programacin lineal entera. Muchos problemas de naturaleza combinatoria se pueden formular en trminos programacin entera. Entre los ejemplos prcticos se puede citar: ubicacin insumos, secuenciamiento de trabajos en lneas de produccin, balance de lneas montaje, problemas de asignacin biunvoca, control de inventarios, y reemplazo mquinas. de de de de
Uno de los mtodos importantes para resolver esos problemas, debido a R.E. Gomory, se basa en parte, en el mtodo simplex antes mencionado. Otro mtodo es de naturaleza combinatoria y consiste en reducir el problema original a otros ms pequeos, y tal vez ms fciles, y partir el conjunto de soluciones posibles en subconjuntos ms pequeos que pueden ser analizados ms fcilmente. Este mtodo se llama branch and bound (ramificacin y acotacin) o branch and backtrack. Dos de las contribuciones importantes a ste mtodo las han hecho Balas y Dakin. Pese a las mejoras realizadas no existe an un mtodo unificado que sea eficaz para resolver problemas de programacin entera de tamao realista. Otra clase de problemas involucran la administracin de una red. Problemas de flujo de trfico, comunicaciones, distribucin de bienes, y planificacin de proyectos son generalmente de este tipo. Muchos de estos problemas se pueden resolver por los mtodos mencionados previamente (programacin entera o lineal). Sin embargo debido a que esos problemas usualmente tienen una estructura especial, se han desarrollado tcnicas especializadas ms eficientes para su resolucin. En este campo las mayores contribuciones se deben a Ford y Fulkerson; quienes desarrollaron el mtodo de etiquetado para maximizar el flujo de un producto a travs de una red y un mtodo para minimizar el costo de transportar una cantidad dada de producto a travs de una red. Esas ideas se pueden combinar con las de programacin entera para analizar toda una familia de problemas prcticos de redes. Algunos problemas se pueden descomponer en partes y se optimizan los procesos de decisin de stas. En algunas instancias es posible alcanzar el ptimo del problema original solamente descubriendo como optimizar esas partes constituyentes. Este proceso de descomposicin es muy potente, pues permite resolver una serie de problemas ms pequeos y fciles en vez de uno grande que podra ser intratable. Los sistemas para los cuales esta aproximacin brinda un ptimo vlido se llaman sistemas seriales multi-etapa. Una de las tcnicas ms conocidas para abordarlos fue bautizada programacin dinmica por R. E. Bellman, el matemtico que la desarroll,. Los sistemas seriales multietapa se caracterizan por un proceso que se realiza en etapas, como los procesos de manufactura. En vez de intentar optimizar alguna medida de desempeo viendo a todo el problema como una unidad, la 10
Introduccin a la Investigacin de Operaciones programacin dinmica optimiza una etapa por vez a fin de producir un conjunto de decisiones ptimas para todo el proceso. Una variada gama de problemas tales como inversin de capital, confiabilidad de mquinas, y anlisis de redes se pueden ver como sistemas seriales multietapa; de modo que la programacin dinmica tiene una amplia aplicabilidad. En la formulacin de muchos problemas de optimizacin no se puede hacer la hiptesis de linealidad que caracteriza a la programacin lineal. No existen procedimientos generales para problemas no lineales. Se han desarrollado un gran nmero de algoritmos especiales para tratar casos particulares. Muchos de esos procedimientos se basan en la teora matemtica relacionada con el anlisis de la estructura de tales problemas. Esta teora se llama generalmente optimizacin clsica. Una de las principales contribuciones modernas a esta teora fue hecha por Kuhn y Tucker quienes desarrollaron lo que se conoce como las condiciones de Kuhn Tucker. La coleccin de tcnicas desarrolladas por esta teora se llama programacin no lineal. Pese a que muchos problemas de programacin no lineal son muy difciles de resolver, hay cierto nmero de problemas prcticos que pueden ser formulados de manera no lineal y resueltos por los mtodos existentes. Esto incluye el diseo de entidades tales como transformadores elctricos, procesos qumicos, condensadores de vapor y filtros digitales.
11
Este es un problema tpico en la teora de optimizacin: la maximizacin (o minimizacin) de una funcin real de variables reales (a veces una sola variable) sujeta a un nmero de restricciones (a veces este nmero es cero). La funcin f se llama funcin objetivo, x1 y x2 se llaman variables independientes o variables decisionales. El problema es encontrar valores reales para x1 y x2, que satisfagan las restricciones (1.2), (1.3) y (1.4), los cuales introducidos en (1.1) hagan que f (x1,x2) tome un valor no menor que para cualquier otro par x1,x2. En la figura siguiente se muestran tres contornos de la funcin objetivo.
x2 (0,1)
f (x1,x2) = 0.25
f (x1,x2) = 0.50
S h1 (x1,x2) = 0
La funcin objetivo tiene el mismo valor en todos los puntos de cada lnea, de modo que los contornos pueden asimilarse a las isobaras (o isotermas) de un mapa climtico. No es difcil ver que la solucin del problema es:
X = ( x 1 , x 2 ) = ( 1, 0 )
12
(1.5)
Cuando una solucin X S satisface (1.5) se llama solucin ptima, y en este caso solucin mxima (tambin solucin optimal o maximal). Si el smbolo en (1.5) fuera , X sera una solucin mnima. Adems, f ( X ) se llama valor ptimo, y no debe ser confundido con solucin ptima. En la figura se observa que se podran obtener valores mayores de f eligiendo ciertos x1, x2 fuera de S. Cualquier par ordenado de nmeros reales se llama solucin del problema y el valor correspondiente de f se llama valor de la solucin. Una solucin X tal que X S se llama solucin factible, en tanto que S = {(x1,x2) : h (x1,x2) 0, x1 0, x2 0}, que generalmente es una regin conexa, se llama regin factible.
2.2 Convexidad
Se revn a continuacin las propiedades ms importantes de los conjuntos convexos y de las funciones convexas, tales conjuntos y funciones juegan un rol muy importante en la optimizacin por dos motivos: Cuando se tienen funciones y conjuntos convexos se puede identificar con seguridad los llamados ptimos globales. Muchas operaciones y transformaciones conservan la convexidad, por lo que se puede construir funciones y conjuntos convexos ms complicados a partir de los ms sencillos. Definicin: Combinacin Convexa. Dados (x,y) n, una combinacin convexa de ellos es cualquier punto de la forma: z = x + (1) y con | 0 1. Notas: Si 0 y 1, se dice que z es una combinacin convexa estricta (o propia). La interpretacin geomtrica es que z es un punto del segmento de recta determinado por (x,y). Definicin: Conjunto Convexo. S n es un conjunto convexo si [x + (1 ) y] S (x,y) S, : 0 1
13
conjunto convexo
conjunto no convexo
Es decir que S es un conjunto convexo si contiene a todos los segmentos de recta que se pueden formar con los puntos que le pertenecen. Definicin: Funcin Convexa (en un conjunto convexo). Sea S n, un conjunto convexo. La funcin f: S es convexa en S si: f [x + (1) y] f (x) + (1) f (y) (x,y) S, : 0 1 Si S = n, se dice que f es convexa.
f
Sean f y g funciones convexas en un conjunto convexo S, y 0. Entonces las siguientes funciones tambin son convexas en S. i ii iii h1(x) = f(x) + g(x) h2(x) = f(x) h3(x) = max{f(x), g(x)}
f ( x) =
con
i =1
i = 1 .
m
f(
i =1
i xi )
m i =1
i f ( xi )
f (1 x1 + 2 x 2 ) = f ( 1 x1 + (1 1 ) x2 ) 1 f ( x1 ) + (1 1 ) f ( x2 )
1 + 2 = 1
f es convexa en
15
Paso Inductivo:
k
f(
i =1 m
i xi ) i xi )
k i =1 m i =1
i f ( xi ) , k m 1 i f ( xi )
f(
i =1
f(
i =1
i xi ) = f ( m x m +
m 1 i =1
i xi ) = f m xm + (1 m )
m 1 i =1
i xi = (1 m )
m 1 i =1
= f ( m x m + (1 m ) y ) m f ( xm ) + (1 m ) f ( y ) = m f ( x m ) + (1 m )
f convexa en C
i xi ) (1 m )
m f ( x m ) + (1 m )
H.I.
m 1 i =1
i f ( xi ) = (1 m )
m i =1
i f ( xi )
16
En un problema de programacin matemtica se supone que En el problema (M) la regin factible es el conjunto: {x X g ( x) 0}
Definicin: x F es un ptimo global de (G) sii f ( x ) f ( x ) x F . Definicin: x F es un ptimo local de (G) sii > 0, tal que se cumple que
f ( x ) f ( x ) x F,
X n, g : X m y f : X .
con x x < .
La mayora de los mtodos para hallar un ptimo son por bsqueda direccional: partiendo de un punto de F, se define una direccin de bsqueda y se determina un nuevo punto a lo largo de sta. Por ese motivo son de inters los conceptos de direccin factible y direccin de descenso.
Definicin: d es una direccin factible de (G) en x F si 0 > 0 tal que x + d F (0,0) Definicin: d es una direccin de descenso [o ascenso] de la funcin f en x F si 0 > 0 tal que
f ( x + d ) < f ( x )
(0,0)
en el caso de ascenso: ( f ( x + d ) > f ( x ) ] Observacin: Sea f una funcin diferenciable en x F . Si f ( x ) d < 0 , entonces d es una direccin de descenso en x .
En consecuencia: una condicin necesaria para que x F sea un ptimo local, es que en ese punto no exista ninguna direccin factible de descenso.
Teorema: Si en un problema del tipo (G), la funcin objetivo f es diferenciable, y x F es un ptimo local de (G), entonces f ( x ) d 0 para todas las direcciones factibles d en x .
17
Introduccin a la Investigacin de Operaciones Corolario: Si la funcin objetivo f de (G) es diferenciable, y x es un punto interior de F que cumple ser ptimo local, entonces: f ( x ) = 0 . Teorema: Si la funcin objetivo f, y la regin factible F de (G) son convexas y adems no existe una direccin factible de descenso en x F , entonces x es un ptimo global del problema (G).
Ntese que el teorema precedente establece una condicin suficiente de optimalidad para un problema en que la funcin objetivo y la regin factible son convexas.
Teorema: Sean f y F convexas en el problema (G), con f diferenciable. Si existe x F tal que f ( x ) d 0 para todas las direcciones factibles d en x , entonces x es un ptimo global de (G).
i = 1,..., m
( i gi ( x )) = 0
18
i gi ( x ) = 0 , i 0,
,m,
f ( x ) +
equilibrio de fuerzas.
Las condiciones de Kuhn Tucker son necesarias para que un punto x interior a X, sea ptimo local, salvo que ocurran casos excepcionales, por ejemplo: gi ( x ) = 0 , o que f ( x ) no pueda ser balanceado por las fuerzas reactivas, como ocurre en la figura siguiente:
g (x) = 0
2
g (x) = 0
1
g (x)
1
g (x)
2
f(x)
Estos casos excepcionales se evitan imponiendo constraint qualifications, que son condiciones que deben ser satisfechas por las restricciones del problema. Muchas de ellas se expresan en el punto ptimo potencial, por lo que no son muy tiles en la prctica, ya que no se sabe cual es el ptimo. Suele ser ms til imponer las siguientes: i ii que las restricciones sean lineales. que las gi sean convexas y exista un x tal que gi ( x ) < 0, i = 1,..., m
i ii iii iv
g( x ) 0 i gi ( x ) = 0 , 0
f ( x ) + i gi ( x ) = 0
i = 1,
,m
19
En caso de tener restricciones de igualdad, las fuerzas reactivas de la analoga mecnica anterior pueden apuntar hacia ambos lados de las paredes, y en consecuencia desaparece la exigencia de i 0 . Adems, todas las paredes son tocadas por la partcula en todos los puntos factibles, por lo que i gi ( x ) = 0 tambin desaparece. El teorema correspondiente se enuncia:
Teorema: Sea x un ptimo local del problema
Min f ( x) ( M = ) sujeto a : g ( x) = 0 y sean las gi tales que gi ( x ) son linealmente independientes para i = 1,..., m Entonces m tal que f ( x ) +
i gi ( x ) = 0
2.5 Relajaciones
Cuando se enfrenta un problema difcil de optimizacin, es posible reformularlo de un modo ms fcil por medio de una relajacin; sta nueva versin se llama problema relajado
f f
L
FL
Observacin: Si f est definida fuera de F, no es necesario que se cumpla f L f para los x exteriores al dominio F.
Teorema 1:
fL( x L ) fL ( x ) por ser x L solucin optimal de (GL). fL ( x ) f ( x ) por la definicin de relajacin. f ( x ) f ( x L ) por ser x solucin optimal de (G). Observacin: En el teorema anterior se supone que existe por lo menos un valor de xF en el cual la funcin f alcanza un mnimo. Para formular el teorema de un modo ms general debera decir inf{f(x):xF} en vez de f( x ), y eventualmente lo mismo para fL( x L ). De esa manera se pierde, lamentablemente, algo de claridad. Supondremos, por lo tanto, a partir de ahora, que siempre existe un valor xF que es solucin optimal de (G).
Corolario 1.1:
Sean (GL) una relajacin de (G), y x L una solucin optimal de (GL) que cumple las siguientes condiciones: i x L F, ii fL( x L ) = f ( x L ) En tales condiciones se cumple que x L es tambin solucin optimal de (G).
Prueba:
Para que x L sea solucin optimal de (G) debe, primero, ser una solucin factible, lo cual es cierto por i. Para demostrar que brinda un valor de f menor o igual que el de cualquier otra solucin factible; sea x una solucin factible cualquiera de (G). 21
f(x) fL(x) por ser (GL) una relajacin de (G). fL(x) fL( x L ) por ser x L una solucin optimal de (GL). fL( x L ) = f( x L ) por hiptesis ii luego: f(x)f( x L ). Entre las relajaciones ms tpicas se puede citar: ignorar la exigencia de que algunas variables sean nmeros enteros ignorar algunas restricciones de positividad.
i = 1,
,m
j g j ( x)
escribe L(x,).
Teorema 2:
0
Prueba:
Deben cumplirse las dos condiciones de la definicin de relajacin: La regin de soluciones factibles de M es F = {xX: g(x)0}, que es un subconjunto de X; adems la regin de soluciones factibles de M es F = X; por lo tanto: F F. Sea xF, entonces gi(x)0, i.
22
i gi ( x ) 0 , por lo tanto,
En el caso de problemas con restricciones de igualdad Min f ( x) sujeto a : (M = ) g ( x) = 0 x X La relajacin lagrangeana se construye de forma anloga.
Teorema 3:
M es una relajacin de M debido a la condicin iii y por el Teorema 2. x es solucin optimal de M por hiptesis. x F debido a la condicin i.
f ( x ) = f ( x ) +
m i =1
De todo lo anterior, y del Corolario 1.1 se deduce la tesis. La condicin ii se llama condicin de complementariedad porque exige que i = 0, o bien: que gi ( x ) = 0.
23
()
x2 j 2
ajxj b
x j 0, j = 1,..., n
Se supone que b y aj (j = 1,...,n) son positivos. Se comienza por escribir la primera restriccin de la siguiente forma: b
n j=1
a jx j 0 .
A continuacin se introduce un parmetro lagrangeano (pues hay solamente una restriccin) y se obtiene el problema lagrangeano relajado (P): Min x f ( x) =
n j =1
( 2j a j x j ) + b
x2
( P ) sujeto a : x j 0, j = 1,..., n En la minimizacin con respecto a x, b es una constante que no incide en la determinacin de la solucin optimal. Puesto que en (P) las distintas xj son variables independientes, se puede descomponer el problema (P) en n subproblemas de optimizacin (Pj) independientes:
Min x j f ( x j ) =
x2 j 2
a j x j
( P , j ) sujeto a : x j 0, j = 1,..., n
Se tiene que
f , j x j
( x j ) = x j a j
f , j ( x j ) > 0; si x j > a j x j
Luego
f , j ( x j ) < 0; si x j < a j x j f , j ( x j ) = 0; si x j = a j x j
Por lo tanto (P,j) presenta un mnimo global cuando x j = a j = x j ( ) , y en consecuencia: (P) tiene un ptimo global en x ( ) . 24
Para resolver el problema (P) se trata de encontrar los valores de que satisfacen las condiciones i al iii del Teorema 4. La condicin ii (condicin de complementariedad) establece que:
(b
= 0, o bien :
j ( ) = b ajx
a j x j () b .
b=
a2 j .
Por lo tanto = = b
Con este valor de es vlido que 0, lo cual equivale a iii; y es vlido que a j x j ( ) = b , que equivale a i y ii. Por lo tanto satisface el Teorema 4, es decir que 2 es una solucin ptima de (P). El valor optimal es: x j = x j ( ) = a jb ak
f ( x) =
1 2 2 a2 ( jb 2 2 1 2 ak ) =2 b 2 ak ( 2 2 1 2 ak ) =2 b 2 ak
Max
j =1
ajxj
( KP)
sujeto a :
n j =1
bj x j b
0 xj 1
Siendo aj, bj, b > 0. Se trata del problema de cargar de vveres una mochila de volumen b para un viaje. Se debe elegir entre n comestibles; de cada uno de ellos hay existencias por un volumen bj con un poder nutricional total aj; xj representa la parte que el mochilero deber cargar de las existencias del alimento jsimo. Los alimentos tienen distinto valor que es su poder nutricional por unidad de volumen (cj = aj / bj). Parece natural elegir a los comestibles en orden decreciente de valor nutricional. Supngase que se cumple c1c2cn. Se propone el siguiente procedimiento para llenar la mochila: asignar x1 = 1, x2 = 1, etc. hasta llegar al alimento ksimo, el cual no cabe totalmente, por lo que se coloca todo cuanto quepa (0 xk < 1). Se probar que sta es una solucin ptima utilizando relajacin lagrangeana.
25
Se construye la relajacin lagrangeana (KP) de (KP) (previamente se plantea el problema como uno de minimizacin)
n
Min x
j =1
( a j + b j ) x j b
Min x j ( a j + b j ) x j ( KP , j ) sujeto a : 0 xj 1 Ntese que si aj + bj > 0, es decir: si > aj / bj = cj, el valor minimal se presenta en xj() = 0. De la misma forma, si < cj se obtiene xj() = 1, y si = cj, se puede elegir xj [0,1]. Sea = ck, donde k es el comestible que (de acuerdo a lo anterior) no entraba totalmente en la mochila. Si j < k , entonces cj y por lo tanto: x j ( ) = 1 Si j > k, entonces cj < , y por lo tanto: x j ( ) = 0 .
x k ( ) se puede elegir tal que x k ( ) 0, 1 .
La solucin hallada intuitivamente, soluciona el problema relajado con = ck. Adems se cumple 0 y a j x j ( ) = b por lo cual x ( ) satisface las condiciones i al iii del Teorema 4. Por lo tanto x ( ) es solucin ptima de (KP).
En resumen:
Max
j =1
ajxj
( KP)
sujeto a :
n j =1
bj x j b
0 xj 1
(con aj, bj y b > 0) se soluciona, en el caso continuo, asignando variables iguales a 1 en orden de valor, es decir, en orden descendiente de aj / bj y sin exceder la disponibilidad b del recurso.
26
Sea xk la variable que violara la restriccin si le fuera asignado el valor 1. Para esta variable se elige un valor menor que 1 y de modo que la restriccin se satisfaga exactamente.
Ejemplo 3: Encontrar un ptimo global al siguiente problema:
n
min
i =1
ai xi2
sujeto a ( P)
n i =1
bi xi + ai
n j =1
p j x j b0
xi > 0 i = 1..n
Sabiendo que pi > 0, ai > 0, bi > 0 i = 1..n y b0 > 0 Primero reescribimos la restriccin:
n i =1 n i =1
bi xi + ai
n j =1
bi xi + pi xi A =
n j =1
(bi + A pi )xi
Siendo A=
aj .
min
i =1
a i x i2
( P)
sujeto a b0
n i =1
(bi
+ A p i )x i 0
x i > 0 i = 1..n
Hallamos el problema P, relajando la restriccin:
n
min
i =1
min a j x 2 j (b j + A p j )x j ( P , j ) sujeto a x j > 0 j = 1..n Como a j > 0, la funcin objetivo es convexa. Entonces, encontramos el ptimo derivando:
2a j x j (b j + A p j ) = 0 x j ( ) =
(b j + A p j )
2a j
b0
n i =1
(bi + A pi )xi ( )
=0
(bi + A pi )xi = b0
(bi + A pi ) (bi + A pi ) = b0
2a i
n i =1
(bi + A pi )2
2ai
b0
2a j
(bi + A pi )
2a i
= aj
b0 (b j + A p j )
n i =1
(bi + A pi )2
ai
i =1
Si x es una solucin optimal del problema (M) que cumple: g( x ) = 0 entonces x es una solucin optimal de (M=).
Prueba:
Se utiliza el Corolario 1.1 y su notacin: (M) es una relajacin de (M=) m por el Teorema 3.
x
x F porque se cumple x X,
28
f L ( x ) = f ( x ) +
i gi ( x ) = f ( x )
pues gi( x ) = 0, i.
0.
m i =1
f ( x ) +
i gi ( x ) = 0
i iii son las condiciones del Teorema 4. Se demostrar a continuacin que iv significa que x es solucin optimal de (M): es una funcin convexa porque i 0 implica que igi es convexa y las sumas de funciones convexas son convexas.
f = f+ i gi
Como f = f +
y por lo tanto, x es solucin optimal de (M). La tesis se desprende del Teorema 4. La mayora de los teoremas de esta seccin suponen que x L F , o sea que la solucin optimal del problema relajado pertence a la regin factible del problema original. Si x L F se puede, a partir de x L , encontrar un punto x L F que no es mucho ms caro, lo cual se deduce del siguiente teorema:
Teorema 7:
y x soluciones optimales de (GL) y (G) respectivamente. una solucin no necesariamente optimal de (GL), que cumple x L F.
29
luego: f L ( x L ) f ( x ) f ( x L )
2.6 Dualidad
En el captulo anterior se resolvieron problemas de optimizacin determinando (analticamente) los multiplicadores de Lagrange. Esto rara vez se puede hacer en la prctica, y en su lugar lo usual es determinar los multiplicadores de Lagrange resolviendo un nuevo problema de optimizacin, llamado Problema Dual el cual consiste en buscar la relajacin ms fuerte posible, o sea, una relajacin cuyo valor optimal est tan prximo como sea posible del valor ptimo del problema original.
Puesto que (P) es una relajacin de (P) se cumple que 0 y entonces () p. Es entonces natural elegir la relajacin ms fuerte posible, o sea: elegir 0 tal que () sea maximal. Esto nos da el problema dual: Max ( ) ( D) sujeto a :
0
(P) se llama problema primal del problema (D). Si se tiene restricciones de igualdad en el problema primal no habr exigencia de positividad en el problema dual. Los teoremas que siguen son vlidos tambin en este
30
caso, ya que se construyen a partir de que () p para los valores de que dan relajaciones. Sea d el valor optimal de (D). p y d son entoces los valores optimales primal y dual respectivamente.
Observacin: d p Prueba:
(P) es una relajacin de (P), por lo tanto () p, 0 Pero entoces: d = Max {() : 0} p No siempre ocurre que d = p, por eso se define la discrepancia de dualidad (duality gap): = p d Ntese que siempre se cumple que 0.
Ejemplo 4:
n
Min x ( P)
j =1
x2 j 2
sujeto a :
n j =1
ajxj b
xj 0
con aj y b positivos. Se plantea el problema relajado lagrangeano, tal como se hizo en el captulo de relajaciones:
n
Min x
j =1
(x2 j / 2 a j x j ) + b
( P ) sujeto a : xj 0 La solucin de (P) es x j ( ) = a j , segn lo visto en relajaciones. Entonces la funcin objetivo del problema dual es:
( ) =
n j =1
1 (( a j ) 2 2 a j a j ) + b = 2 (
a2 j ) + b
31
Max ( ) = 1 2( ( D) sujeto a :
2 a2 j ) + b
0
es una funcin cncava y tiene, por lo tanto, un valor mximo cuando d d = 0 (suponiendo que sto brinde una solucin factible). Se obtiene entonces:
0= d = ( d a2 j ) + b , o sea: = b (
a2 j ) 0 , que es
factible.
Por lo tanto = b a 2 j es una solucin optimal del problema dual. Este es el mismo multiplicador de Lagrange que se hall en el captulo Relajaciones. Adems:
d = ( ) = 1 ( 2
2 a2 ( j )b 2 a2 j ) + bb 1 2 a2 j = 2b
a2 j
El valor optimal del problema primal, calculado en el captulo de Relajaciones es: 1 2 p= 2 b a2 j Por lo tanto en este caso: = p d = 0. Ntese que la solucin ptima del problema primal x j = a j b a k2 = x j ( ) es igual a la solucin ptima del problema relajado con la solucin ptima del problema dual como multiplicador de Lagrange. Por lo tanto, se puede determinar la solucin primal ptima con la ayuda de la solucin ptima dual.
Teorema 9:
Prueba:
( ) d p f ( x )
Corolario 9.1:
Sea una solucin factible cualquiera del problema dual, de acuerdo al Teorema anterior tenemos: ( ) f ( x ) = ( ) y en consecuencia: es solucin optimal del problema (D) Anlogamente se demuestra que x es solucin optimal de (P) Este corolario brinda una nueva interpretacin del Teorema 4. Bajo las condiciones del Teorema es vlido que x y son factibles para (P) y (D) y adems que ( ) = f ( x ) + i gi ( x ) = f ( x ) . La optimalidad se desprende tambin del Corolario anterior.
32
En los casos en que se puede determinar en forma explcita (analtica) la funcin objetivo del problema dual () vale la pena, en general, resolver el problema dual en lugar del primal y despus determinar una solucin primal con la ayuda de los teoremas que siguen. El gradiente de la funcin objetivo dual se obtiene a travs del siguiente teorema (adems de tomar la derivada de la funcin deducida analticamente).
Teorema 10:
Si se cumple que X es cerrado y acotado, y que (P) tiene solucin ptima x ( ) nica entonces: ( ) = g ( x ( )) T
Prueba:
Sean
( x , ) = f ( x ) + T g ( x ) = f ( x ) + g ( x ) T
( ) = Min xX {f ( x) + T g ( x)} = Min xX [ ( x, )] Ntese que ( x , ) = g ( x ) T . Adems ( ) = x [ x ( ), ] x ( ) + [ x ( ), ] Como x() minimiza (x,) en el sentido de las x: x[x(),] = 0 Luego: () = [x(),] = g ( x ( )) T
Ejemplo (continuacin): Se aplicar el Teorema en el ejemplo anterior
(a )
2 j
+ b
Adems ( ) = a 2 j + b , que concuerda con ( ) = g ( x ( )) como deba ser de acuerdo al teorema precedente. Cuando = se cumple que ( ) = g ( x ) = 0 y por lo tanto x es una solucin factible. Adems g ( x ) = 0 , por lo tanto: f ( x ) = f ( x ) + g ( x ) = ( ) . La optimalidad de x y de se desprende del Corolario 9.1. Cabe preguntarse si en general se puede tener la esperanza de encontrar la solucin ptima del problema primal a travs de la solucin ptima del dual. Los siguientes teoremas responden parcialmente a esta inquietud.
Teorema 11:
Si X es cerrado y acotado, es solucin ptima de (D) y ( P ) tiene una solucin ptima x ( ) nica. Entonces se cumple: i T g ( x ( )) = 0 ii g ( x ( )) 0
33
Prueba:
x( )
( ) = g ( x ( )) T
Como es solucin ptima de (D), y () es diferenciable, se cumple que: a) ( ) = 0 Introduciendo (*) en a y b se obtienen i y ii. Los puntos i y ii del Teorema 11 coinciden con los i y ii del Teorema 4. La condicin iii ( 0) se cumple automticamente. Del Teorema 4 y del Corolario 9.1 se deduce el teorema siguiente.
Teorema 12:
Si X es cerrado y acotado, es solucin ptima de (D), y ( P ) tiene un ptimo nico x ( ) . Entonces x ( ) es solucin ptima de (P). Solamente algunos problemas muy especiales pueden ser resueltos con la tcnica del captulo Relajaciones, que consiste en resolver analticamente el problema relajado para valores fijos de los parmetros lagrangeanos, y posteriormente determinar dichos parmetros de modo que se cumplan las condiciones del Teorema 4. Con la ayuda del problema dual se obtiene una tcnica general para determinar los valores ptimos de los parmetros de Lagrange, a partir de los cuales se puede calcular las soluciones ptimas del problema primal, de forma que el duality gap sea nulo (=0).
2.7.1 Generalidades
En los problemas de programacin lineal (PL) se tiene una funcin objetivo lineal y restricciones lineales. En general se exige tambin la positividad de las variables. Un problema general de PL se puede escribir en la forma siguiente:
34
Min z = sujeto a :
n
n j =1
cjxj
j =1 n j =1
x j 0,
La regin factible de un problema de PL es un conjunto polidrico. En un espacio tridimensional, un poliedro es un conjunto limitado por superficies planas como lo muestra el ejemplo de la figura:
El mtodo predominante para la resolucin de problemas de PL es el llamado mtodo simplex, el cual utiliza una estrategia active set, que en este caso implica que se recorran las aristas de la regin factible, de vrtice en vrtice. El mtodo simplex exige que se haya formulado el problema en su forma standard, en la que slo se tienen restricciones de igualdad (y la exigencia de positividad de las variables). Sin embargo, la formulacin ms usual en el contexto terico es la forma cannica, en que se tienen solamente restricciones de desigualdad (y condiciones de positividad de las variables). Cualquier problema de PL se puede formular tanto en forma cannica como en forma standard.
cjxj
a j x j bi ,
i = 1,..., m j = 1,..., n
x j 0,
35
Utilizando notacin vectorial y matricial se obtiene una forma ms compacta de escribir el problema (PLc):
Min z = c T x ( PLc ) sujeto a : Ax b x0
Donde {c, x} n, b m, y A mn. El problema dual del problema de PL en la forma cannica tiene la forma que se deduce del teorema siguiente:
Teorema 13:
Antes de hallar el dual se reescribe el problema primal en la forma utilizada para la definicin de dualidad:
Min c T x ( PLc ) sujeto a : b Ax 0 x0
Se decide no relajar las exigencias de positividad (x 0). La funcin objetivo del dual es () = Minx {cTx + T(bAx)x 0} = Minx {(cT TA)x + Tbx 0}, que equivale a:
( ) =
n
Min x
j =1
(c T T A) j x j + T b x j 0, j =
T b, si (c T T A) j 0, j
, si j tal que (c T T A) j < 0
Como se desea maximizar (), el valor no interesa. Se tiene una relajacin si se cumple que 0. El problema dual toma entonces la forma: Max ( ) ( PDc ) sujeto a :
36
0
Transponiendo en la funcin objetivo y en la restriccin se obtiene: Max b T ( PDc ) sujeto a : AT c
0
La tesis se deduce sustituyendo por u.
Teorema 14:
Se sugiere hacer la relajacin lagrangeana de (PDc) y continuar de la misma forma que en el Teorema 13. Se pueden construir problemas duales de problemas cuyas restricciones sean de igualdad o desigualdad, y cuyas variables tengan o no restriccin de signo. Debido a que las variables duales se interpretan por medio de relajacin lagrangeana, se observa que restricciones de desigualdad conducen a variables duales restringidas en su signo, en tanto que restricciones de igualdad conducen a variables duales sin limitacin de signo. Adems, como las variables primales son variables duales para el problema dual, se concluye que variables primales con restriccin de signo conducen a restricciones de desigualdad en el dual, mientras que las variables primales no restringidas respecto al signo se relacionan con restricciones de igualdad en el problema dual. Todo lo que precede se formula en el siguiente teorema, en un modo ms general.
37
Teorema 15:
T T Min c1 x1 + c 2 x2
sujeto a :
T Max b1T u1 + b2 u2
u1 libre, u2 0
En la forma standard se asume que b 0. Si esta condicin no se cumpliera en algn caso particular, basta multiplicar por 1 las ecuaciones que tienen signo negativo en b.
La restriccin
j=1
condicin de positividad:
n j =1
aij x j + y = bi
y0 As, con la ayuda de variables de hogura, se llevan a la forma standard los problemas expresados en forma cannica.
38
Min c T x
Min c T x
El problema ( PLc )
sujeto a : Ax b x0
es equivalente a ( P)
sujeto a : Ax y = b x, y 0
b) de restricciones de igualdad a restricciones de desigualdad El sistema de ecuaciones Ax = b puede ser fcilmente transformado en dos desigualdades: Ax b Ax b o bien: Ax b Ax b
c) de variables libres a variables con restriccin de signo El mtodo simplex puede ser aplicado con variables libres. Una variable libre puede, de todas formas, ser transformada en una variable con restriccin de signo si se la escribe como diferencia entre dos variables positivas: x = x+ x , x + , x 0.
a xk =0 x| Ax =b
Si A mn es de rango completo, es decir: sus filas son linealmente independientes, entonces el hiperplano {x | Ax = b} tiene dimensin nm. Si se conoce una solucin factible (p. ej.: a), se busca una solucin factible mejor en la direccin negativa del gradiente de z, para minimizar la funcin objetivo. Hay dos formas de atacar este problema:
39
a) proyectar c en el hiperplano {x | Ax = b} y moverse en la direccin proyectada. b) resolver m variables con la ayuda de la ecuacin Ax = b y expresarlas con la ayuda de las restantes nm variables. El mtodo simplex utiliza la segunda variante. Sean las primeras m variables las que se expresan con la ayuda de las dems. La ecuacin Ax = b se puede escribir como ABxB + ANxN = b donde xB m contiene las m primeras componentes de x, xN nm contiene a las nm restantes. La matriz AB mm contiene las primeras m columnas de A, en tanto que AN m(nm) contiene a las restantes. Si AB mm tiene rango completo, se la puede invertir (lo cual constituye una condicin para poder calcular xB). Asumiendo que AB es invertible, se obtiene la siguiente expresin:
1 1 x B + AB AN x N = AB b
Variando libremente xN, se obtiene a partir de la expresin precedente un valor de xB 1 que hace que se satisfaga la condicin Ax = b. Si se elige xN = 0 se obtiene x B = AB b, ste tipo de soluciones se llama solucin bsica. La matriz AB es la correspondiente matriz bsica (porque sus columnas forman una base de m). Las componentes de xB se llaman variables bsicas, y las de xN: 1 variables no bsicas. La solucin bsica x B = AB b , xN = 0, es factible si x 0, es decir, si xB 0. Las soluciones bsicas factibles se corresponden con los vrtices (puntos extremos) de la regin de soluciones factibles. Se puede eliminar xB de la funcin objetivo. Se comienza por expresar el vector cT T n como cT = ( cT B , c N ) , se obtiene as la siguiente forma de la funcin objetivo:
T z = cT B xB + cN xB 1 T 1 T = cT B AB b c B AB AN x N + c N x N T 1 T 1 = ( cT N c B AB AN ) x N + c B AB b T = cN xN + z
En la solucin bsica xN = 0 y z = z . se llama costo reducido. El costo reducido indica como vara la funcin objetivo al variar xN, dos trminos componen el costo reducido: c T N indica la
T T 1 cN = cT N c B AB AN
40
T Min z = c N xN + z = z +
jN
cjxj
( PL s ) sujeto a : x B = b AN x N x B , x N 0.
La solucin bsica correspondiente es ( x B , x N ) = ( b , 0) . Supngase que dicha solucin bsica es factible, es decir: b 0 . Si alguna componente de c N , por ejemplo c j , es negativa, se obtendr un valor mejor de la funcin objetivo incrementando xj desde su valor nulo actual. Si slo aumenta xj, el incremento en xB se calcula como x B = b a jx j donde a j es la columna correspondiente a xj en AN . Esta solucin es factible si xB 0, a continuacin se estudian las condiciones que deben cumplirse para asegurar la factibilidad. La ecuacin x B = b a jx j expresada por componentes queda: ( x B )i = bi a ijx j .. Si a ij 0 , entonces (xB)i no decrece al aumentar xj. En consecuencia el cumplimiento de la restriccin (xB)i 0 no est condicionado por la variacin de xj. Si a ij > 0 , entonces (xB)i disminuye al aumentar xj, y se hace cero cuando x j = b j a ij En consecuencia, la solucin es factible si las variaciones de xj cumplen que: x j Min i {bi aij | aij > 0}. Cuando x j = Min i { bi aij | aij > 0}, una de las variables bsicas se hace cero (la o las variables bsicas para las cuales se obtiene el mnimo), lo cual equivale a haberse desplazado hacia un vrtice adyacente al de partida en la representacin geomtrica del problema (p. ej. el punto b de la figura). Es adecuado entonces realizar un cambio de sistema de coordenadas en el hiperplano {x | Ax = b}, xj es ahora mayor que cero y se convierte en variable bsica, al tiempo que la variable bsica que tom el valor cero se hace no bsica. Esta es la esencia del funcionamiento del mtodo simplex, que fuera desarrollado por G.B. Dantzig a fines de los 40. El mtodo se basa en que una solucin factible dada puede ser mejorada si alguna componente de c N es negativa. El siguiente teorema indica lo que sucede cuando c N 0 .
41
Teorema 16
Si en el problema (PLs) se cumple que b 0 y adems c N 0 , entonces la solucin bsica correspondiente es ptima.
Prueba:
Se demostrar a travs de relajaciones, utilizando el Corolario 1.1. El problema (PLs) es el mismo que ( PLs ) aunque expresado en forma distinta. Se obtiene una relajacin de ( PLs ) ignorando la restriccin x B = b AN x N , el problema relajado es:
T Min z = z + c N xN = z + x j x N
cjxj
( PL sr ) sujeto a : xB , xN 0
( x B , x N ) = ( b , 0) es una solucin ptima de ( PLsr ), porque c j 0 y adems se puede minimizar por separado en ( PLsr ). ( x B , x N ) = ( b , 0) es una solucin factible de ( PLs ) por ser xN = 0, y b 0 . ( x B , x N ) = ( b , 0) da el mismo valor de la funcin objetivo en ( PLs ) y en ( PLsr ), porque ambos problemas tienen la misma funcin objetivo. En consecuencia, ( x B , x N ) = ( b , 0) cumple todas las condiciones del Corolario 1.1, y por lo tanto es solucin ptima de ( PLs ) , luego: es solucin ptima de (PLs).
Estructura bsica del mtodo simplex
1. Tomar una solucin bsica factible. 2. Transformar el problema a la forma ( PLs ) resolviendo las variables bsicas. 3. Si c j 0 j FIN: se hall una solucin ptima. 4. Si algn c j < 0 , aumentar xj hasta que algn (xB)i = 0. Se obtiene en ese caso una nueva solucin bsica. Volver al paso 2.
Forma tableau del mtodo simplex
Se acostumbra exponer los clculos manuales en una tabla (que puede ser fcilmente implementada en una computadora). Se explicar el uso a travs de un ejemplo:
42
Max 2 x1 + 3x 2 sujeto a : x1 + x 2 2 x1 + 2 x 2 3 x1 , x 2 0
x2 2
4 3
1 1
2 2 3 x1
La regin factible es el contorno delimitado por los vrtices (1), (2), (3) y (4). Las lneas punteadas son la curvas de nivel de la funcin objetivo. La solucin ptima se encuentra en el vrtice (3). Se hallar dicha solucin por el mtodo simplex. Se introducen en primer lugar las variables de holgura x 3 y x 4 para llevar el problema a la forma standard. Tambin se cambia el signo a la funcin objetivo para obtener un problema de minimizacin:
43
Ntese que las variables de holgura x 3 y x 4 son variables bsicas adecuadas: estn expresas en funcin de las otras variables, y estn eliminadas de la funcin objetivo.
x3 = 2 x1 x 2 x 4 = 3 x1 2 x2
El sistema de ecuaciones, en forma tableau, tiene la representacin siguiente: x1 x2 x3 x4 b 1 1 1 0 2 1 2 0 1 3 2 3 0 0 0 El tableau tiene la siguiente forma A cT b . 0
Las variables bsicas ya estn resueltas, el tableau corresponde tambin al problema transformado ( PLs ) . Los puntos debajo de las columnas 3 y 4 indican que las variables x3 y x4 son bsicas. La solucin bsica correspondiente se obtiene asignando el valor cero a las variables no bsicas (x1, x2). Por lo tanto, la solucin bsica es: x1 = 0, x2 = 0, x3 = 2, x4 = 3. Esta solucin corresponde al vrtice (1) en la figura. La ltima lnea del tableau muestra los costos reducidos. Debido a que c1 < 0 y c2 < 0 , vale la pena aumentar x1 o x2, como c 2 es el ms negativo, conviene elegir x2 como nueva variable bsica. El valor sombreado es aquel para el cual se obtiene el Min i {bi aij | aij > 0} El sistema de ecuaciones, canonizando la columna correspondiente a x2, toma la forma: x1 X2 x3 x4 b 1/2 0 1 -1/2 1/2 1/2 1 0 1/2 3/2 -1/2 0 0 3/2 9/2 Puesto que slo c1 < 0 , conviene elegir x1 como variable bsica, obteniendo: x1 x2 x3 x4 b 1 0 2 -1 1 0 1 -1 0 1 0 0 1 1 5 Se ha obtenido una solucin ptima, pues c j > 0, j . Dicha solucin ptima tiene las variables no bsicas igualadas a cero y las variables bsicas iguales a b : x1 = 1, x2 = 1, x3 = 0, x4 = 0.
44
Cuando cj < 0, la variable no bsica xj correspondiente puede aumentar hasta hacer que alguna variable bsica alcance el valor cero. Si ocurre que aij 0 i, ninguna variable bsica disminuye su valor al aumentar xj, obtenindose soluciones factibles para cualquier valor (positivo) de xj. Adems, como cj < 0, la funcin objetivo disminuye con el aumento de xj, de modo que decrecer hacia cuando xj aumente hacia +. En estas condiciones se tiene un valor ptimo no acotado, en un dominio infinito de soluciones factibles. El ejemplo siguiente ilustra estos conceptos. Max x1 + x 2 sujeto a : x1 x 2 1 x2 x1 1 x1 , x 2 0 La regin factible es la de la figura siguiente:
2 1 3 1 2 1 2
Introduciendo las variables de holgura x3 y x4, y cambiando el signo de la funcin objetivo, el problema adquiere la siguiente forma:
Min x1 x 2 sujeto a : x1 x2 + x3 = 1 x1 + x2 + x 4 = 1 xj 0
45
La solucin bsica correspondiente es x1 = 0, x2 = 0, x3 = 1, x4 = 1, que corresponde al punto 1 de la figura. x1 y x2 tienen el mismo costo reducido negativo, se decide intoducir x1 como nueva variable bsica. xi (bsica) correspondiente al Min {bi ai1 ai1 0} = Min{11 ,} , lo cual ocurre en la fila 1. El elemento a11 se llama pivot y se utiliza para reformular el sistema de ecuaciones de modo que la columna correspondiente a x1 sea cannica. Se obtiene el siguiente tableau: x1 1 0 0 x2 1 0 2 x3 1 1 1 x4 0 1 0 b 1 2 1 La variable saliente es la
La solucin bsica correspondiente es x1 = 1, x2 = 0, x3 = 0, x4 = 2, que es el punto 2 de la figura. En este caso slo x2 tiene costo reducido negativo y en consecuencia es la nica candidata a ser variable bsica. La variable saliente se halla a partir de Min bi ai 2 ai 2 > 0 = Min{ ,} = , es decir que ninguna variable bsica limita el
crecimiento de x2 por lo que se tiene un valor ptimo no acotado. Se observa en la figura que eligiendo la arista [2, ) se puede obtener valores arbitrariamente altos de la funcin objetivo. A modo de resumen de los dos ltimos captulos se presenta el siguiente diagrama de flujo del mtodo simplex:
Dado un tableau reducido con solucin bsica factible
NO Hay variable x con c j < 0 j SI x entra en la base j FIN: solucin bsica optimal
Hay a
kj
>0?
NO
SI
46
Hasta ahora se han discutido dos criterios de parada del mtodo simplex: Si c 0 se ha alcanzado una solucin ptima. Si para todo c j < 0 ocurre que aij 0, i se puede afirmar que no hay valor optimal acotado (ni solucin ptima. La pregunta es: debe darse, necesariamente, alguno de estos dos casos? Sea xj (con c j < 0 ) una variable no bsica, que ha sido seleccionada para ingresar a la nueva base. Se introducir xj en sustitucin de aquella variable bsica xi para la cual se alcanza el Min b j aij aij > 0 . Cuando dicho mnimo se alcanza para dos o ms variables bsicas simultneamente, se dice estar ante un caso de degeneracin. Ya sea que haya o no degeneracin, el incremento en la variable xj es x j = Min bi a ij a ij > 0 0 , y la funcin objetivo decrece z = c j x j 0 . Una
{ {
} }
variable bsica decrece hasta hacerse nula, y si hay degeneracin una o ms variables bsicas continan sindolo, pero con valor cero. Si hay degeneracin, en alguna iteracin podra ocurrir que x j = Min bi a ij a ij > 0 = 0 y por lo tanto: z = 0 , es decir que el valor de la funcin objetivo no cambiara al cambiar de base. En estas condiciones no se puede asegurar que el mtodo no retornar a un vrtice ya analizado. Si esto ltimo ocurriera (el retorno a una solucin ya analizada) se estara ante la presencia de un fenmeno llamado cycling, que obstruye la terminacin del mtodo en tiempo finito. Existen estrategias anticycling para lograr que el mtodo simplex termine en tiempo finito, sin embargo, debido a que el cycling casi nunca sucede en la prctica, estas finezas no suelen estar implementadas en los programas comerciales. Si no hay degeneracin, en cada paso del mtodo simplex se obtiene una solucin factible cuyo costo es estrictamente menor que el de las anteriores, por lo tanto no se puede retornar a una solucin ya analizada. Adems el mtodo es finito, porque en n cada paso se eligen m variables bsicas entre n posibles, hay Cm formas de hacerlo (aunque no todas ellas dan soluciones factibles). Por este motivo se puede afirmar que existe un nmero finito de soluciones bsicas, y en consecuencia: si no hay degeneracin el mtodo simplex llega en una cantidad limitada de pasos a una de las dos alternativas planteadas al principio. La cantidad de iteraciones requeridas para resolver un problema por el mtodo simplex crece linealmente con el nmero de restricciones, mientras que el trabajo requerido en cada iteracin crece aproximadamente con el cuadrado del nmero de restricciones.
Fase I - Encontrar una solucin factible
Segn lo visto hasta ahora, el mtodo simplex comienza en una solucin bsica factible. A continuacin se investiga el problema de obtener dicha solucin factible inicial.
47
Este problema se puede resolver con la ayuda del mtodo simplex. Se introduce en primer lugar un conjunto de variables artificiales y 0, que miden la diferencia entre el lado derecho y el izquierdo de la ecuacin (en una solucin factible estas variables debern ser nulas). Se obtiene el siguiente sistema de ecuaciones: ( E ) Ax + y = b x, y 0
Para el sistema ( E ) se obtiene fcilmente la solucin bsica factible y = b, x = 0. En cambio, una solucin factible de (E) deber tener y = 0. Para obtenerla se resuelve el siguiente problema de PL, llamado fase I, el cual se puede resolver con el mtodo simplex porque se tiene una solucin bsica inicial factible.
m
Min
i =1
yi
( LP1 ) sujeto a : Ax + y = b x, y 0
Teorema:
(LP1) tiene siempre un valor ptimo finito 0, dado por el mtodo simplex. Si dicho valor ptimo es estrictamente mayor que cero, entonces (E) no tiene soluciones factibles. Si el valor ptimo de (LP1) es igual a cero, entonces (E) tiene soluciones factibles y el mtodo simplex brinda una de ellas.
Prueba:
Si el valor ptimo de (LP1) es estrictamente mayor que cero, siempre existe por lo menos una yi > 0, por lo tanto: ( Ax ) i = bi yi bi y en consecuencia no existen soluciones factibles de (E). Si el valor ptimo de (LP1) es igual a cero: yi = 0 , como adems y 0 se concluye que y = 0 y la solucin ptima de (LP1) es factible para (E).
En resumen, el mtodo simplex funciona del siguiente modo: En primer lugar, si es necesario, se aplica la fase I para encontrar una primera solucin factible. A partir de dicha solucin bsica, se aplica la segunda fase, optimizando la funcin objetivo original.
48
El ejemplo siguiente ilustra el mtodo: Min 3x1 + 2 x 2 sujeto a : x1 + x 2 2 x1 + 2 x 2 3 x1 , x 2 0 Este problema se representa grficamente en la figura que sigue:
x
En primer lugar se agregan las variables de holgura x3 y x4 que permiten llevar el problema a la forma standard, obteniendo el siguiente tableau: x1 x2 x3 x4 b 1 1 -1 0 2 1 2 0 -1 3 3 2 0 0 0 Puesto que no hay ninguna base por la cual sea intuitivo comenzar, se introducen las variables artificiales y1 e y2. En la fase I se minimiza y1 + y2, lo cual arroja el siguiente tableau: x1 x2 x3 x4 y1 y2 b 1 1 -1 0 1 0 2 1 2 0 -1 0 1 3 3 2 0 0 0 0 0 0 0 0 0 1 1 0 La ltima fila es la funcin objetivo de la fase I, en tanto que la tercera fila es la funcin objetivo original, que ser minimizada en la segunda fase de la resolucin. Para la primera fase y1 e y2 son variables bsicas adecuadas para comenzar la resolucin de la primera fase. Sustrayendo de la fila 4 las filas 1 y 2 se obtiene:
49
x1 1 1 3 -2
x2 1 2 2 -3
x3 -1 0 0 1
x4 0 -1 0 1
y1 1 0 0 0
y2 0 1 0 0
b 2 3 0 -5
La solucin bsica correspondiente es y1 = 2, y2 = 3, y las dems variables iguales a cero. En esta solucin c1 < 0 y c2 < 0 se puede elegir tanto x1 como x2 para ser ingresada en la nueva base, sea x1 la variable seleccionada. La variable saliente se determina de
acuerdo a Min {bi ai1 ai1 > 0} = Min {2 1, 3 1} = 2 , lo cual ocurre en la primera fila. Se canoniza el sistema de ecuaciones tomando como elemento cannico el a11, obteniendo el siguiente tableau: x1 x2 x3 x4 y1 y2 b 1 1 -1 0 1 0 2 0 1 1 -1 -1 1 1 0 -1 3 0 -3 0 -6 0 -1 -1 1 2 0 -1
La solucin bsica es x1 = 2, y2 = 1, las dems variables iguales a cero. Se elige introducir la variable x2, por lo que el elemento pivot para la canonizacin del sistema sera el a22. x1 1 0 0 0 x2 0 1 0 0 x3 -2 1 4 0 x4 1 -1 -1 0 y1 2 -1 -4 1 y2 -1 1 1 1 b 1 1 -5 0
Llegado este punto de la resolucin se tiene x1 = 1, x2 = 1, y el resto de las variables iguales a cero. Como y1 e y2 son iguales a cero, se ha alcanzado una solucin factible del problema original y comienza la solucin de la fase II. La lnea de costos de la funcin objetivo del problema auxiliar ya no interesa, por lo cual se la elimina del sistema, y la lnea de costos pasa a ser la tercera fila (costos de la funcin objetivo del problema original), tampoco interesan las columnas correspondientes a las variables artificiales:
50
x1 1 0 0
x2 0 1 0
x3 -2 1 4
x4 1 -1 -1
b 1 1 -5
Tomando como pivot el elemento a14, se obtiene el siguiente tableau: x1 x2 x3 x4 b 1 0 -2 1 1 1 1 -1 0 2 1 0 2 0 -4 Como ahora c 0 se ha llegado al ptimo. La solucin es x1=0, x2=2, x3=0, x4=1. La estructura del mtodo simplex puede ahora ser resumida del siguiente modo:
SI
SI NO
Se analizar el tableau simplex en el cual las xB son variables bsicas. Supngase que fueron introducidas variables artificiales, y que las columnas fueron ordenadas de modo que las variables xB estn todas al principio. Al comienzo de la fase I el tableau tiene la forma siguiente:
xB AB c
T B
xN AN c
T N
y I b 0 0
51
Las operaciones que se realizan para obtener una fila a partir de la anterior corresponden a haber multiplicado desde la izquierda con cierta matriz M que se determinar:
MA B = I
1 M = IAB 1 M = AB
por lo tanto:
1 AN = MA N = AB AN , cosa que
ya se saba.
1 1 I = MI = AB I = AB 1 b = Mb = AB b , lo cual
tambin se saba.
La lnea transformada de costos se obtuvo sustrayndole en forma sucesiva mltiplos de otras lneas. Por lo tanto, es vlido para cierto vector de multiplicadores , que c T = c T T A . La lnea de costos reducidos transformados es:
T T ( cB T AB ) ( c N T AN ) ( 0 T I ) ( 0 T b )
T T T 1 cN = cN cB AB AN T 1 c y = 0 T I = T = cB AB T 1 T 0 T b = cB AB b = cB b = z
Se acaba de comprobar que el vector de multiplicadores simplex satisface las siguientes igualdades:
T 1 T = cB AB
T T cN = cT N AN
T cB = T AB
Por lo tanto, el costo reducido c j de xj se puede escribir como c j = c j T a j , siendo aj la j sima columna de la matriz A. Esto significa que con la ayuda de los multiplicadores simplex se pueden hallar los costos reducidos de las variables, que no estaban en la formulacin original del problema. Esta observacin es de fundamental importancia en el uso avanzado de la programacin lineal.
Soluciones duales y relacin entre primal y dual
El problema dual de un problema de progamacin lineal expresado en forma standard (LPS) es:
52
Ya fue demostrado que las variables u son los multiplicadores de Lagrange. A continuacin se investiga la relacin entre los multiplicadores simplex y el problema dual. Supngase que (LPS) ha sido resuelto hasta su ptimo y que xB son las variables bsicas.
T T La exigencia de optimalidad de (LPS) es c N 0 , es decir: c T N AN 0 que por medio T de una trasposicin queda c N AN .
Por otra parte, la restriccin impuesta a la variable dual es c A T u , lo cual implica que T T cB AB u y que c N AN u. Por lo tanto, si se cumple la condicin de optimalidad, los multiplicadores simplex constituyen una solucin factible del problema dual, ya que adems cumplen
T cB = AB T c B AB
sera adems una solucin ptima del problema dual si arrojase el mismo valor de la funcin objetivo que la solucin ptima del problema primal.
T T 1 b = cB AB b . El El valor ptimo de la funcin objetivo del problema primal es z = cB T valor de la funcin objetivo del problema dual evaluada en u = es: b , que se
Por lo tanto: los multiplicadores simplex correspondientes a la solucin ptima del problema primal, constituyen una solucin ptima del problema dual. Se acaba de demostrar el siguiente:
Teorema:
1 Sea x B = AB b , x N = 0 solucin bsica ptima del simplex (o sea c 0 ) para un problema de programacin lineal expresado en forma standard:
Se vern a continuacin algunas relaciones entre casos particulares de problemas primal y dual: Cuando el problema primal se resuelve aplicando el mtodo simplex puede ocurrir cualquiera de los casos siguientes:
53
1 la fase I da un valor ptimo > 0, es decir que el problema no tiene soluciones factibles. 2 la fase I da un valor ptimo = 0 y la fase II da un ptimo finito. 3 la fase I da un valor ptimo = 0 y la fase II indica un valor ptimo no acotado. Puesto que el dual es un problema de programacin lineal, estos casos pueden darse tambin en el problema dual Si en el primal ocurre (3), el problema dual no puede tener soluciones factibles, por lo tanto, en el dual ocurre (1). Anlogamente, si en el dual ocurre (3) en el primal ocurre (1). Si en el primal ocurre (2), tambin ocurre (2) en el dual. Por simetra, si ocurre (2) en el dual, ocurre (2) tambin en el primal. Queda por estudiar la posibilidad de que ocurra (1) en ambos problemas. El siguiente es un ejemplo de que sta posibilidad es cierta: Min x2 sujeto a : ( PL) x1 x 2 1
x1 + x 2 0
x1 , x2 0 Este problema tiene una regin factible vaca, su dual tiene la forma: Max u1 sujeto a : ( PD) u1 u 2 0
u1 + u 2 1
u1 , u 2 0 y tampoco tiene soluciones factibles. El cuadro siguiente resume estas afirmaciones, se indican sombreadas las combinaciones imposibles. dual (1) primal (1) primal (2) primal (3) dual (2) dual (3)
54
Solucin: El grafo debe se conexo, y en cada punto deben incidir un nmero par de lneas. Esta condicin es suficiente para definir lo que se llama un ciclo euleriano. A partir de Euler el modelado mediante grafos fue desarrollando esta metodologa hasta convertirse en la actualidad, en una herrramienta de trabajo para ciencias tan diferentes como la Fsica, la Qumica, la Sicosociologa, la Economa, la Lingstica, etc. La teora de grafos est ntimamente relacionada con varias ramas de la Matemticas como por ejemplo la Teora de Conjuntos, el Anlisis Numrico, Probabilidad, Topologa, etc. y es la base conceptual en el tratamiento de problemas combinatorios. La eficacia de los grafos se basa en su gran podero de abstraccin y la muy clara representacin de cualquier relacin (de orden, precendencia, etc) lo que facilita enormemente tanto la fase de modelado como de resolucin del problema. Gracias a la Teora de Grafos se han desarrollado una gran variedad de algoritmos y mtodos de resolucin eficaces que nos permiten tomar una mejor decisin . No se debe confundir el grafo con el sistema real al que est asociado. El grafo es una estructura que admitimos adecuada en lo concerniente a las propiedades que nos
55
interesan, donde luego aplicamos las deducciones y reglas matemticas para obtener datos y poder decidir. Una aplicacin frecuente de la teora de grafos es la del mtodo de camino hamiltoniano ptimo para decidir el camino a seguir por un cobrador, de tal modo de economizar sus energas, las suelas de sus zapatos y su bolsillo. El objetivo es hallar un camino que pase por todos las casas una y solo una vez y que nos de el costo menor en distancia. Dicho de otro modo, se deben buscar las permutaciones de las casas de forma tal que la distancia recorrida total sea mnima. Se conoce la distancia entre cada par de casas, segn si las calles son flechadas o no se orientarn o no las conexiones entre pares de casas. Obsrvese que si se hicieran todas las permutaciones, suponiendo un caso muy reducido de diez casas, se tendran ms de 3 millones de permutaciones (10!). Si cada casa es representada por un vrtice y cada camino entre par de casas por una arista ponderada por la distancia mnima entre pares de casas, tendremos un grafo completo y simtrico (cuando no hay calles flechadas). El problema se reduce entonces, a obtener un camino hamiltoniano ptimo. Todo algoritmo conocido para encontrar ciclos hamiltonianos requiere al menos un tiempo exponencial de clculo, o factorial en el peor de los casos. Otro ejemplo para el que grafos provee un natural modelo matemtico : Supongamos que el siguiente grafo representa una red de lneas de telfonos (o de comunicaciones). Estamos interesados en la vulnerabilidad respecto a interrupciones accidentales. b e Problema 1: identificar esas lneas y centros de conecciones que deben permanecer en servicio para evitar la desconeccin de la red. No existe ninguna lnea que eliminada a desconecte el grafo (red), pero hay un vrtice, d el vrtice d, cuya desaparicin (ruptura) desconecta el grafo. f c
Problema 2: encontrar un conjunto minimal de aristas necesarias para conectar los 6 vrtices. Hay varios conjuntos mnimos posibles. Uno de ellos es el conjunto minimal: {(a,b),(b,c),(c,d),(d,e),(d,f)}.
Podemos enunciar el siguiente resultado general: dado un grafo G de n vrtices, el conjunto mnimo de conexin de G (si existe) siempre tiene n1 aristas.
56
Los vrtices de X se llaman usualmente x1, x2, x3,..., xn y se representan como puntos, las aristas u1, u2, u3,..., um se dibujan como lneas.
Grafo orientado: Un grafo G* es orientado, cuando sus aristas tienen asignadas direcciones, o sea cuando existe una relacin de precedencia entre los elementos. Sus puntos se llaman nodos, y sus lneas arcos. En estos casos U es una familia de pares ordenados resultantes del producto cartesiano de X. U XxX = { ui = (xk,xj): 1 i |U|, 1 j, k |X|, xk, xj X}
x2
x1 En realidad, no existen dos especies de grafos, orientados y no orientados, sino que todos los grafos son orientados, pero por x3 razones conceptuales, es poco cmodo considerar las lneas orientadas para los problemas de naturaleza no orientada. Cada vez que apliquemos un concepto orientado en un grafo G = (X,U) ese concepto deber ser considerado como aplicable de hecho, en un grafo orientado G* al que le corresponde la orientacin en los dos sentidos de cada arista.
Orden es el nmero de vrtices del grafo, el cardinal del conjunto X de vrtices: |X| Arcos incidentes a un nodo Si un vrtice x es extremidad inicial de un arco u = (x,y) y x y, diremos que el arco es incidente a x hacia el exterior. I+(x)={y / (x,y) U}. I-(x)={y / (y,x) U}
El nmero de los arcos incidentes hacia el exterior se llama semigrado exterior de x y se nota d+(x) = |I+(x)| De igual forma se define arco incidente a x hacia el interior y semigrado interior de x. Este ltimo se nota como d-(x) = |I-(x)|.
Grado de x, es la suma del semigrado exterior e interior de x. O sea, es el nmero de arcos con una extremidad en x.
d(x) = d+(x) + d-(x) Si todos los vrtices tienen el mismo grado, el grafo al que pertenecen se llama grafo regular.
57
Las definiciones de largo de un camino, camino elemental y camino simple son anlogas a las de cadenas, con la salvedad de la orientacin.
Sendero, es un camino elemental (que no repite nodos). Va, es un camino cuyos arcos se pueden recorrer en su sentido directo o contrario. Ejemplo: roblema del camino entre dos puntos. El siguiente es un ejemplo de como modelar una porcin del universo, su problemtica y como resolverla.
Supongamos que un hombre debe pasar a la otra orilla de un ro llevando consigo una oveja, un repollo y un lobo. El inconveniente que se le plantea es que slo puede cruzar con uno de ellos a la vez y sospecha que si deja solos a la oveja con la repollo con el lobo, la oveja se comer al repollo el lobo se comer a la oveja. Teniendo en cuenta estas restricciones, el sujeto dibuja sobre la arena de la orilla un grafo y aplicando alguna heurstica o algn algoritmo conocido, encuentra el camino que debe seguir para llegar a la otra orilla con su carga intacta. Utilice el siguiente procedimiento: 0) Dibuja el grafo: Existen 4 elementos que determinan las situaciones en cada orilla, ellos son: H Hombre C Repollo L Lobo O Oveja 1) Enumera las situaciones en una de las orillas comenzando por H,C,L,O. 2) Luego las ordena considerando: a) se encuentra el hombre en esa orilla o no: H vs noH. b) pasaje o secuencia de una situacin a otra. (obs. que no se puede pasar de una situacin en la que est el hombre a otra en la que tambin est) 3) Por ltimo busca en el grafo un camino del estado inicial al estado final.
58
K5
Subgrafo de G = (X,U) engendrado por el conjunto A X , es un grafo cuyos vrtices pertenecen al conjunto A y cuyas aristas son aquellas de G que tienen las dos extremidades en A. Grafo parcial de G = (X,U) engendrado por V U, es el grafo G' = (X,V) cuyos vrtices son los mismos de G y cuyas aristas son las que conforman el conjunto V U. Subgrafo parcial de G, es un subgrafo de un grafo parcial de G.
Grafo bipartito, es un grafo cuyo conjunto de vrtices puede ser particionado en dos clases X1 y X2 de tal forma que dos vrtices de la misma clase no sean jams adyacentes. Se nota G = (X1,X2,U)
K2,3.
Grafo bipartito completo, es aquel en el que para todo elemento de X1 y todo elemento de X2 existe por lo menos un arco que los liga.
59
Un grafo simple bipartito completo con p elementos en X1 y q elementos en X2 se nota Kp,q. Grafo Regular, es aquel en el que todos sus vrtices tienen el mismo grado.
Grafo Ponderado G = (X, U, W) donde (X, U,) es un grafo y W es una funcin W: U Z+ (Z+: enteros positivos) .
Si u U, w(u) es llamado el peso de la arista u. Estos pesos corresponden, segn la aplicacin, a costos, capacidades u otras propiedades de las aristas o arcos. Cuando se desea asignar valores negativos o reales a los pesos de las aristas, se debe tener especial cuidado en la eleccin de los algoritmos ya que la correctitud de los mismos puede depender de la restriccin a Z+.
Grafo Conexo, es aquel en el que para cada par de vrtices de G, existe una cadena que los une. En grafos orientados se definen 2 conceptos
a) Dbilmente conexo: si existe una cadena (sin tener en cuenta la orientacin) que une cada par de nodos distintos. b) Fuertemente conexo: si para cada par ordenado de nodos x e y, existe un camino que va de x a y. Una componente conexa de un grafo G, es un subgrafo de G engendrado por los vrtices que pueden unirse a un vrtice xi dado, mediante una cadena (puede ser todo el grafo G).
Si queremos describir la orientacin en un ciclo designamos como: u+ = {ui : ui orientada en el sentido del ciclo} u- = {ui : ui orientada en el sentido contrario al ciclo}
Ciclo elemental, es un ciclo donde no se repite ningn vrtice (salvo el primero que coincide con el ltimo). Lo notamos uE = (u1,...,un). Propiedad 1: Todo ciclo uC es una suma de ciclos elementales sin aristas comunes. Propiedad 2: Un ciclo es elemental si y solo si es un ciclo minimal (es decir que no se pueden deducir otros ciclos por supresin de aristas).
60
Introduccin a la Investigacin de Operaciones Seudociclo, es una cadena donde los extremos coinciden pero que una misma arista puede figurar ms de una vez (tambin consecutivamente). Cociclo del conjunto de vrtices A, es el conjunto de aristas incidentes a A, del tipo I(A) no vaco y particionado en dos clases I+(A) y I-(A).
Ciclo Euleriano es aquel que incluye todas las aristas del grafo una sola vez, conteniendo cada vrtice por lo menos una vez. Cadena Euleriana, es aquella que recorre todas las aristas una sola vez ( = simple) tocando todos los vrtices del grafo.
Todo multigrafo que posee un ciclo Euleriano es conexo y todos sus vrtices tienen grado par .
a c d b e h k i j n o l m f g
A partir del siguiente ejemplo daremos una idea del mecanismo utilizado por Euler para demostrar que la conexidad y el grado par de todos los vrtices de un multigrafo, son condiciones necesarias y suficientes para garantizar la existencia de un ciclo Euleriano. Tenemos este grafo que es conexo y sus vrtices tienen grado par.
1) Primero se comienza por trazar un camino simple desde un vrtice, p. ej a. Supongamos que recorremos a-d-j-n-o-k-l-h-f-e-b-a. Volvimos a a.
a d j n k
b e f h l o
La propiedad del grado par, significa que siempre podemos abandonar cada vrtice al que entramos, exepto a. Es decir que cualquier cadena que trazemos desde a debe volver a a, formando un ciclo.
61
d l g c 2) Las restantes aristas del grafo inicial , conforman un grafo no conexo, pero todos sus vrtices h mantienen el grado par, ya que al retirar el ciclo encontrado, se redujo cada grado en una cantidad par . j m i k Cada subgrafo conexo posee un ciclo Euleriano: d-c-i-j-k-e-d y h-g-m-h. 3) Estos dos ciclos pueden ser insertados en el ciclo encontrado en 2) en los vrtices comunes d y h respectivamente, originando un ciclo Euleriano a-d-c-i-j-k-e-d-j-n-o-kl-h-g-m-h-f-e-b-a, en el grafo original.
Teorema E.1: Un multigrafo (no orientado) G = (X,U) posee un ciclo Euleriano sii G es conexo y todos sus vrtices son de grado par.
Una Cadena Euleriana es una cadena que recorre todas las aristas del grafo una sola vez incluyendo todos los vrtices.
Corolario E.2: Un multigrafo posee una cadena Euleriana, sii es conexo y tiene exactamente dos vrtices de grado impar.
Se puede demostrar observando lo que sucede al agregarle una arista cuyas extremidades sean los dos vrtices de grado impar. El concepto de ciclo Euleriano es utilizado en la planificacin de redes de alta tensin entre varias ciudades.
Bosque, es un grafo donde cada componente conexa es un rbol, es decir es un conjunto de rboles no conexos entre s. Adems es un grafo sin ciclos por estar compuesto por rboles. Arborescencia, es un rbol dirigido con un nodo llamado raiz, tal que existe un nico camino desde la raiz a cualquier otro nodo del rbol. Ese camino es elemental y simple.
62
Es importante notar que la definicin de arborecencia es vlida para un rbol no orientado, ya que, cualquier vrtice del rbol puede ser raz y adems un rbol no posee ciclos. Al determinar una raiz, se determina la existencia de una sola cadena que conecta la raiz con cada uno de todos los vrtices restantes. Entonces, un rbol lo puedo convertir en arborecencia tomando cualquier vrtice como raz y asignandole direcciones a las aristas desde el nodo raiz. Por lo tanto, designaremos como rbol, indistintamente a un rbol o arborecencia.
r r b b
La manera standard de dibujar una arborecencia es colocando la raiz a en la cima de la figura. As podemos definirle niveles a los vrtices del grafo ( la raiz tiene nivel 0 ). El nmero asignado al nivel de un vrtice x del rbol (T = (X,U)) corresponde al largo de la cadena (nico, elemental) que une a r con x. Se llama padre de un vrtice x, al vrtice y, prximo anterior a x en la cadena elemental y simple que va de la raiz a x, siendo x hijo de y dos vrtices con el mismo padre se llaman hermanos. La relacin padre-hijo se extiende a ascendiente y descendientes de un vrtice x. Adems cada vrtice x de T es la raiz de un subrbol de x y sus descendientes. Los vrtices sin hijos se llaman hojas, y todos los otros vrtices que tengan hijos se llaman vrtices internos de T. T se llama rbol m-ario, si cada vrtice interno del rbol (arborecencia) T tiene m hijos. En particular si m = 2, T es un rbol binario. Ejemplos:
m=2 m=3
63
Introduccin a la Investigacin de Operaciones Altura de un rbol (o arborecencia), es el nmero de aristas del camino ms largo, es decir, el nmero de nivel ms alto de cualquier vrtice. Arbol balanceado, es aquel rbol de altura h, en el cual todas sus hojas se encuentran en el nivel h h-1. Ver el ejemplo anterior en el que la cantidad de comparaciones a realizar se minimiza.
Los rboles se utilizan tambin en muchas aplicaciones para verificar la conectividad, o la cantidad de ocurrencias de ciclos o subgrafos completos, en la bsqueda de esas propiedades o estructuras, muchos algoritmos utilizan lo que llamamos un esqueleto o rbol de cubrimiento.
Esqueleto o rbol de cubrimiento (spanning tree) de un grafo G: es un subgrafo que es un rbol y que contiene todos los vrtices de G.
El esqueleto de un grafo puede ser construido ya sea por Bsqueda Primero en Profundidad: BPP (depth -first search: DFS) o por Bsqueda Primero a lo Ancho: BPA (breadth-first-search: BFS).
Algoritmo de Bsqueda Primero en Profundidad
Sea G = (X,U) , x, v pertenecen al conjunto X DFS(x) Visite y marque x Mientras exista un vrtice v no marcado adyacente a x DFS(v) fin mientras fin
Usando BPP (o DFS) , se toma algn vrtice como raiz y se comienza a construir una cadena desde la raiz. La cadena contina hasta que no se puede continuar mas abajo sin repetir un vrtice que ya est en la cadena. El vrtice donde esa cadena debe terminar es una hoja. Entonces se vuelve atrs (backtrack), se retrocede un nivel al padre de esa hoja, y se trata de construir una cadena desde ese padre en otra direccin u otro vrtice no includo en la cadena anterior, y asi sucesivamente...
Algoritmo de Bsqueda Primero a lo Ancho
64
Usando BPA ( o BFS), se toma cualquier vrtice x como raz, insertando en la cadena todas las aristas incidentes a ese x. Luego, sucesivamente, se van agregando las aristas incidentes a los nodos adyacentes a x ,siempre que no estn incluidos en la cadena que estamos construyendo, hasta que todos los nodos hayan sido visitados . Es importante notar que si el grafo no es conexo, entonces no existe ningun esqueleto que lo recorra.
Algoritmo para verificar que un grafo es conexo 1) Use BPP ( o BPA) para tratar de construir un esqueleto del grafo. 2) Si todos los vrtices del rbol son alcanzados en la bsqueda, entonces se ha encontrado un esqueleto del grafo y por lo tanto el grafo es conexo. 3) Si la bsqueda no recorrio todos los vrtices, entonces el grafo no es conexo.
R = rij = 0 si no
[ ]
1 si xi Rx j
Podemos afirmar que todo grafo G es orientado, por lo que existe una relacin binaria entre pares de elementos de G =(X,U), que es la relacin de adyacencia A. Entonces, dado un grafo G=(X,U), de orden n, se puede representar la relacin de adyacencia , mediante una matriz A=[aij] nxn, llamada matriz de adyacencia de G, definida por
65
A = aij = 0 si no Es importante observar que en un grafo no orientado la relacin de adyacencia es simtrica y por lo tanto tambin lo ser su matriz asociada, ya que en el momento del almacenamiento solamente es necesario tratar la mitad de la matriz. Observaciones 1) La matriz de adyacencia es una matriz booleana, sus elementos son 0 o 1. 2) i xij = semigrado exterior de xi 3) j xij = semigrado interior de xj En aquellas aplicaciones en las que intervienen costos o propiedades propias de la relacin entre los elementos del sistema, estamos ante un Grafo Ponderado: G=(X,U,W) En estos casos la matriz de adyacencia se define como:
[ ]
1 si xi Ax j , ( xi , x j ) U
A = aij = 0 si no Esta matriz es booleana solamente en aquellos casos en que w(u) = 1, para toda arista u. El concepto bsico en grafos es el de relacin binaria, ya que una relacin binaria puede ser una relacin de equivalencia, la que particiona al conjunto X de vrtices en clases de equivalencias. Una relacin binaria es una relacin de equivalencia cuando es: 1) Reflexiva. x x 2) Simtrica. x y entonces y x 3) Transitiva. x y, y z entonces x z Estas tres propiedades asociadas a un grafo G = (X,U), X={xi ; 1in}, significan que: xi xj si xi = xj o si existe algun camino de xi a xj y de xj a xi. Definicin: Un grafo o subgrafo es fuertemente conexo, si ( x i , x j ), x i x j , camino de x i a x j . Toda relacin de equivalencia particiona al conjunto X en clases de equivalencias Xi={xi1, ... xip} que llamaremos componentes fuertemente conexas del grafo G.
[ ]
w( u )
si
xi Ax j , ( xi , x j ) U
66
Por lo tanto, cada componente fuertemente conexa de un grafo G es un subgrafo fuertemente conexo, Gi=(Xi,Ui), del grafo G. Notar que la conexidad est muy relacionada a la existencia de caminos, existencia que se puede verificar mediante la propiedad transitiva. Definicin Una relacin R es transitiva, en un conjunto X,
si i , j , k = 1 , 2 ,... | X | se cumple que x i Rx j y x j Rx k entonces x i Rx k
Ahora bien la relacin de adyacencia A, no siempre es transitiva, observese el siguiente ejemplo donde xi A xj, xj A xk no implica que xi A xk.
xj
xi
xk
x k 1 , x k 2 , ..., x km X
para t = 1,2, . . . , m - 1, x km
= x k 1 , x kt Ax k ( t +1)
= xj
Observacin: La clausura transitiva de una relacin A, es la relacin A en s misma. Si A es la relacin de adyacencia en X, entonces la Clausura Transitiva en X es la Relacin de Alcance definida por: Ci,j = camino que va de xi a x Tx C i j i, j xj, xj es alcanzable desde xi, o que xj pertenece a la Clausura transitiva de xi, lo notamos : xj *(xi) La relacin de alcance es una relacin transitiva y cuando adems cumple con las propiedades de simetra y reflexividad, es una relacin de equivalencia que particiona a X en clases de equivalencia
X1, X2, ... Xm xi , xj Xk k=1,2,...m se verifica: xi = xj o xi T xj
67
Cada clase corresponde a una componente conexa del grafo. Es decir que se pueden determinar la componentes fuertemente conexas del grafo calculando la clausura transitiva en el conjunto X de nodos.
x2 x3 x4
x1 x2 x6 x3 x4
x1 fig.CFC
x5 x6
X3 = {x5}
x5 x5
T = [tij ] =
1 si xi Tx j , ( xi , x j ) U
0 si no la que indica la existencia de caminos entre pares de nodos y se obtiene calculando la potencia booleana de la matriz de adyacencia A.
Definicin: Matriz de potencias boolena de A es la matriz A(p) con p > 0
( p)
= aij
( p)
]=
1 si C i, j , l(C i, j ) = p 0 si no
( producto booleano).
Teorema (Matriz de alcance): Sea Anxn la matriz booleana de la relacin de adyacencia en un grafo G de orden n entonces T = A(I A)(s-1) s n- 1, es la matriz de alcance de G.
La experiencia indica que alcanza con calcular T = (I A)(n-1) Si al calcular T, tij = 1 xi en X, entonces el grafo G es fuertemente conexo, o sea que xi, xj existe un camino de xi a xj. En caso contrario, si tij = 0 para algn par xi, xj, xj no es alcanzable desde xi pudiendose diferenciar las distintas componentes fuertemente conexas de G, clasificando grupos de nodos equivalente como aquellos que son alcanzables entre s.
68
Si los nodos del grafo estn ordenados por componentes, cada una de ellas se va a caracterizar por un bloque o submatriz cuadrada de 1s en la diagonal de la matriz T. En estos casos se dice que la matriz T es triangular por bloques, es decir que esta compuesta por bloques cuadrados dispuestos en la diagonal.
Justificacin del Teorema
Sea A(p) la Matriz de Potencias Booleana de A, p 0 , 1 ssi C i, j , l(C i, j ) = p ( p) aij = 0 si no Entonces la matriz de alcance T = p= 1, A (p) cuyos elementos se definen 1 ssi C i, j , l(C i, j ) tij = 0 si no La suma booleana de todas las potencias posibles de la matriz de Adyacencia A, implica un clculo poco cmodo, entonces usamos el siguiente lema.
Lema 1: Sea un grafo G de orden n, si Cij simple y elemental entonces l(Cij) es a lo sumo n -1 . (los otros camino no interesan).
T = p= 1, s A (p) s n-1 ( para no perder generalidad) T = A(1) A(2) A(3) ... A(s) = (por prop.distr) = A ( I A ... A(s-1) ) T = A (I A)
(s-1)
Demostracin:
s = n-1
LQQD
A)(s-1) , s 1
La experiencia indica que para calcular la matriz de alcance, alcanza con calcular T = (I A)
(n-1)
Intuitivamente se justifica dado que I incluye xi = xj , para cualquier i,j , (recordar definicin de relacin de alcance), adems A (I A)
(n-2)
(I A)
(n-1)
69
Para una mejor manipulacin de las componentes fuertemente conexas y para una mejor distincin de las mismas, se triangulariza la matriz de alcance T. Se define una nueva base mediante un reordenamiento de los nodos, permutando las filas y columnas de T. Siendo T la matriz del sistema de ecuaciones Tx = b, debo transformar este sistema a otro equivalente con otra base que llamar Qx. Entonces construyo una matriz Q, tal que QTQtQx = Qb. La matriz de este nuevo sistema es QTQt que implica un nuevo orden del conjunto X de nodos, a partir de las componenetes fuertemente conexas del grafo.
Ejemplo: La siguiente matriz de adyacencia corresponde al grafo de la fig. CFC:
IVA
x1 x2 x3 x4 x5 x6 1 1 0 0 0 0 1 1 0 0 0 1 0 1 1 1 0 0 1 1 1 1 0 0
x1 x2 x3 x4 x5 x6 1 1 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 (I V A)4 1 1 1 1 0 0 1 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1
1 1 0 0 0 1
1 1 0 0 0 0
0 1 1 1 0 0
0 0 1 1 0 0
0 0 1 0 1 1
1 0 0 0 0 0
1 1 0 0 0 1 1 1 0 0 0 1
0 0 1 1 0 0 0 1 1 1 0 0 (I V A)2
1 1 0 0 0 0 1 1 0 0 0 1
0 1 1 1 0 0 1 1 1 1 0 1
0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 0 1 1 0 0 1 0 1 1 1 (I V A )5 = T
X1= {x1,x2,x6}, 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1
X2={x3,x4}, 0 0 1 0 0 0
X3 ={x5} Mantengo x1,x2: x1 ==> x1, x2 ==> x2 Reordeno x6, x3, x4, x5: x3 ==> x4 x4 ==> x5 x5 ==> x6 x6 ==> x3
=Q
70
1 1 1 0 0 0
1 1 1 0 0 0
1 1 1 0 0 0
1 1 1 1 1 0
1 1 1 1 1 0
1 1 1 1 1 1
= Q T Qt
Las componentes fuertemente conexas de un grafo G, se pueden condensar en un punto, formando un nuevo grafo Gc sin ciclos, cuyos arcos son aquellos del grafo G que unen distintas componentes, al que se llama grafo condensado. El siguiente es el Gc de la fig CFC. Los grafos condensados se utilizan en la planificacin del trnsito y de transporte urbano.
Procedimiento para condensar un grafo:
X2 X1
X3
1) Condensar G. 2) Encontrar algn camino hamiltoniano, si existe, en el grafo condensado Gc. 3) Encontrar un camino hamiltoniano en cada nodo del grafo condensado (en cada componente fuertemente conexa de G). 4) Si es posible, unir el o los caminos encontrados en el paso 3) con el encontrado en el paso 2).
Supongamos que el grafo condensado del ejemplo anterior describe el posible recorrido de una lnea de mnibus, y se desea determinar aquel recorrido que pasa una sola vez por cada una de las paradas (nodos del grafo).
Definicin Un camino hamiltoniano en un grafo G, es aquel camino que pasa una y solo una vez por cada vrtice del grafo.
Si G es de orden n, el largo del camino hamiltoniano es el del camimo elemental de longitud mxima.
71
Si no existe Camino Hamiltoniano, se conocern todos los caminos elementales intermedios. La enumeracin de los caminos elementales se realiza mediante el mtodo de Multiplicacin Latina. Los elementos de la matriz Latina de largo 1, [M](1) = ((mij(1))) se definen xi xj si (xi,xj) U, ij (1) mij = 0 si (xi,xj) U, ij o i = j Retirando la primera letra de los elementos distintos a 0 obtenemos [M](1) = ((mij(1))) latina. xj si (xi,xj) U, ij (1) mij = 0 si (xi,xj) U, ij o i = j Los caminos elementales de largo 2 se calculan de la siguiente manera [M](1) L [M](1) = [M](2) siendo mij(2) =
Para encontrar los caminos hamiltonianos nos detenemos en el paso n-1 (4, en nuestro caso). Los elementos de la matriz M(n-1) contiene la sucesin de nodos de cada uno de los caminos hamiltonianos, si existe alguno.
Ejemplo:
A E B
D M(1)
C M(1)
72
0 0 0 0 EA
AB 0 0 0 0
AC BC 0 DC 0
0 0 CD 0 ED
AE BE 0 DE 0
0 0 0 0 A
B 0 0 0 0
C C 0 C 0
0 0 D 0 D
E E 0 E 0
0 0 0 0 EAB
ABE 0 CDE 0 0 =
M(4) =
0 BCDEA 0 0 0
0 0 CDEAB 0 0
ABEDC 0 0 DEABC 0
0 BEACD 0 0 EABCD
ABCDE 0 0 0 0
Afirmacin:
Nmero ciclomtico v(G) de un grafo G, es el nmero de cuerdas de cualquier esqueleto en G. Proposicin: Sea un grafo G, m el nmero de aristas , n el nmero de vrtices y c el nmero de componentes conexas, entonces v(G) = m - n + c.
73
Teorema: Sea G un grafo de orden n, n > 2. Las propiedades siguientes son equivalentes en cuanto a caracterizar a G como rbol. 1) G es conexo y sin ciclos. 2) G es sin ciclos y con (n-1) aristas. 3) G es conexo y con (n-1) aristas. 4) G es sin ciclos y maximal. G es maximal si al agregar una arista entre dos vrtices no adyacentes se crea uno y solo un ciclo. 5) G es conexo y minimal. G es minimal si suprimiendo una arista cualquiera del grafo, ste deja de ser conexo) 6) Todo par de vrtices est unido por una y solo una cadena.
Teorema: Un rbol de orden n >2 admite por lo menos dos vrtices que son adyacentes a un solo vrtice. Teorema: Un grafo admite un grafo parcial que sea rbol ( dicho de otra forma admite un rbol parcial (esqueleto) s. s. i. es conexo.
74
Los esqueletos mnimos permiten, por ejemplo, calcular el costo mnimo de conexin de un grafo. Los algoritmos de Kruskal y Prim encuentran un esqueleto mnimo en G.
ALGORITMO DE KRUSKAL
Repita los siguientes pasos hasta que el conjunto T tenga (n-1) aristas (T= n-1): 1) Al comenzar T = (vaco) 2) Agregue a T las aristas de menor valor que no formen un ciclo con las aristas que ya estn en T.
ALGORITMO DE PRIM
Repita hasta que el rbol T tenga (n-1) aristas: 1) Al comienzo tome cualquier arista que tenga el menor valor asignado. 2) Agregue a T la arista de valor mnimo, conformada por un vrtice en T y otro vrtice que no pertenezca a T.
Se puede demostrar que estos algoritmos construyen esqueletos mnimos. El siguiente teorema, demuestra la correctitud del algoritmo de Prim.
Teorema P1: El algoritmo de Prim es vlido, es decir al finalizar el algoritmo, el grafo resultante E es un esqueleto mnimo. Demostracin:
Podemos afirmar que por construccin, al finalizar el algoritmo, E es un subgrafo parcial de G (conexo) y sin ciclos ==> es un ESQUELETO. A continuacin probamos que E es un esqueleto mnimo y lo hacemos por induccin en la K-sima iteracin del algoritmo. Al demostrar que en la k-sima iteracin Ek est includo en un esqueleto mnimo, estoy demostrando que al finalizar, En-1 es un esqueleto mnimo.
1.-Paso base k=1, n=2, E1 tiene una sola arista que es la mnima (o una de ellas) ==> E1 en algun esqueleto mnimo de G. Se cumple. 2.- Paso inductivo Suponemos verdadero para k = k-1 (k-1-isima iteracin), o sea que Ek-1 E' que es mnimo.
75
Sea V el conjunto de vrtices de Ek-1 : V = { vi, vi Ek-1) El algoritmo toma una arista [i,j] de valor mnimo, tal que i V, y j V y lo agrega a Ek-1 obteniendo Ek = Ek-1 U [i,j]
Ek-1 i j x
Si [i,j] E', ==> Ek E' (esq. mn) L.Q.Q.D Si [i,j] E' ==> E' U [i,j] contiene un ciclo C. Tomemos una arista [x,y] ciclo C, y tal que [x,y] [i,j] con x en V e y V. Consecuentemente w[x,y] w[i,j] y por lo tanto el grafo E'' = { E' U [i,j] - [x,y] } tiene valor el valor de E' (*)
Como por construccin E'' es esqueleto, entonces por (*) es un esqueleto mnimo y como Ek E'' se verifica el paso inductivo. Ek en un esqueleto mnimo (E' o E'')
L.Q.Q.D.
76
Este algoritmo calcula el camino mnimo de un nodo a a otro nodo z en particular, a la vez que calcula los caminos mnimos desde el nodo inicial a dado hasta cada uno de los otros nodos del grafo.
Algoritmo de Dijkstra
Sea G = (X, U, W) un grafo ponderado, w(u) el largo asignado a la arista u, m un contador de distancia, (r, d(p)) etiqueta del vrtice p, r = antecesor de p en el camino desde a, d(p) = distancia mnima desde a hasta p. Para valores crecientes de m, el algoritmo marca aquellos vrtices que tienen m como distancia mnima desde el vrtice a.
1) Empezar con m = 1 y marcar a con (-, 0) 2) Chequear cada arista u = (p,q) desde algn p ya marcado, hasta algn q sin marcar. Suponga que p est marcado con (r, d(p)) Si d(p) + w(u) = m , marcar q con (p,m) 3) Si x sin marcar: m := m + 1; volver al punto 2 Si no: ejecutar el punto 4 Si solamente estamos interesados en el camino hasta z, al marcar z, seguimos con el punto 4 4) Para cualquier vrtice y, un camino ms corto de a a y, tiene largo d(y) (la 2da parte de la etiqueta de y). Ese camino lo puedo encontrar retrocediendo desde y, usando la 1era parte de las etiquetas de los vrtices encontrados en el retroceso.
Este algoritmo permite calcular cuan lejos se puede llegar en 1, 2 .... m unidades. Como est especificado en Pero tiene una ineficiencia muy significante, Si la suma d(p) + w(u) en 2) tiene valor por lo menos m'>m entonces el contador de distancia m, debera ser incrementado inmediatamente a m' (m := m').
Ejemplo: Encontrar el camino mnimo (mas corto) entre F y C del siguiente grafo
77
(F,7)
A
3
B
6 3
(A,9)
7 (-,0)
G
5 (F,5)
F
6
1 (I,6) 4
H
8
2 2 (E,7)
(D,9)
(G,9)
E
(F,6)
m=1 no puedo marcar m'= 5 , incremento m := m' m=5, marco I (F, 0+5) m=6 , encuentro G , d(F) +1 = 6 marco G (I,6) m=7 marco A [0+7] (F,7) y D [6 + 1] (E,7) m=8 no marco m=9 marco H (G,9) y B (A,9) marco C (D,9) Encontr C, d(C) = largo del camino= 910 Retrocedo por la primera etiqueta: C->D->E->I->F.
El camino mnimo es: F-I-E-D-C.
78
5. REDES FLUJOS
Red es un grafo ponderado, con un nodo a llamado fuente y otro nodo z llamado pozo, terminal o resumidero (sink).
N = ( X, U, W)
X = { a, z, xi , 1 i n-2}
U = { (xi, xj), ........} Consideramos redes orientadas. Es viable afirmar que una red siempre es orientada.
b 7,4 4,3 a 4,0 8,8 c 5,5 e 3,2 8,6 4,1 z 5,5 d 7,6
Se llama red de transporte cuando a cada arco u de la red se lo pondera asignndole un par de nmeros enteros, positivos mediante las funciones capacidad, k(u) , y flujo, (u). w(u) = (k(u), (u))
k(u) es la capacidad o cota superior de lo que puede transportar el arco u y (u) el flujo o la cantidad de sustancia que realmente transporta el arco u.
Una red de transporte modela problemas del tipo: - maximizar el flujo de petrleo, a travs de una gran red de oleoductos; - maximizar el nmero de llamadas telefnicas en la red de telefona. - otros. Se transportan unidades de flujo de un sitio a otro a traves de una red, con ciertas restricciones en cuanto a capacidades de envo en las lneas que componen la red. En el caso del transporte de petrleo, la capacidad de un arco representa la capacidad en barriles por minuto de una seccin del oleoducto, el flujo es el fludo que se transporta o enva. Lo que se busca es maximizar un "flujo" desde el nodo a al nodo z, de tal modo que el flujo ( fludo) que pasa por cada arco no exeda su capacidad permitida.
79
La capacidad y flujo de los arcos pueden tener asignados otros valores, que no sean enteros positivos, pero se debe tener especial cuidado al aplicar un algoritmo de solucin que sea adecuado a esa caracterstica.
Un corte me determina posibles caminos desde a a z En la red de la fig. 4.1, si P = {b,c}, Pc = {a,d,e,z}, (P,Pc) = {(b,d), (b,e), (c,e)}; Nota: {(a,b), (a,c), (d,c)} al corte, sin embargo en redes no orientadas, (P,Pc) denota todas las arcos que van de P a Pc.
Definicin: Corte a-z (fuente-terminal) es aquel en que a P y z Pc.
k(u) .
Definicin: Flujo a-z, (flujo fuente-terminal) en una red N, es aquel en el que (u) u U, los nodos fuente a y pozo z satisfacen las siguientes condiciones:
a) 0 (u)k(u) u U b) (u) = 0, u I-(a) y u I+(z) c) x a, x z, uI+(x) (u) = uI-(x) (u)
La condicin b) nos asegura que el flujo vaya de la fuente al pozo y no al revs. La condicin c) implica que el flujo parcial que entra a un nodo x, es igual al flujo parcial que sale de x, es llamada la condicin o ley de conservacin de flujo de Kirchhoff. Si se suman las ecuaciones en c) sobre todas las x pertenecientes a un subconjunto P de nodos de una red N que no contengan ni a ni z, se obtiene la siguiente expresin como consecuencia de c:
80
(u) = xP uI-(x) (u) Obs: algunos (u) se repiten en ambos miembros de la igualdad, ya que en ambos lados se sumas el flujo de aquellos arcos que van de un nodo en P a otro en P.
xP + uI (x)
uI (b) uI (c)
5+2+5+3 ==
xP
Eliminando los flujos (u) que se repiten en ambos miembros se obtiene una nueva condicin para todo subconjunto P de nodos que no contengan ni a ni z.
c')
c u(P,P )
(u) =
c u(P ,P,)
(u)
Es decir que P que no contenga ni a ni z, el flujo que ingresa a P es igual al flujo que sale de P.
Teorema N.1 Para cualquier flujo a-z, en una red N, el flujo que sale de la fuente a es igual al flujo que ingresa (entra) al pozo z.
Demostracin: Suponga momentaneamente que N = (X, U, W) no contiene ningn arco (a,z). (nota: el teorema es vlido tambien cuando existe un arco (a,z)). Sea P = { X - a - z} y Pc = {a, z}
Flujo saliente de a = uI+(a) (u) Por la condicin b) de flujo a-z: Por c) : Por b):
c u(P ,P) c u(P,P ) + uI (a)
(u) =
c u(P ,P)
(u)
(u) = (u) =
c u(P,P ) uI (z)
(u) =
Flujo saliente de a =
+ uI (a)
(u) =
(u) =
flujo entrante a z
LQQD
81
La condicin b) de flujo a-z determina que el nico flujo hacia P desde Pc={a,z} debe ser desde a.
Cuantificacin de un flujo a-z : ||. || es el valor del flujo a-z, y se define como la suma del flujo que sale de a,( equivalente a decir que es la suma del flujo que entra a z). Entonces, una cota superior de || es la suma de las capacidades de los arcos incidentes hacia el exterior de a.
|| =
+ uI (a)
(u)
+ uI (a)
k(u)
De la misma manera, la suma de las capacidades de los arcos incidentes hacia el interior de z es una cota superior del valor del flujo ||. Adems, || est acotado tambin por la capacidad de cualquier corte a-z, es decir, por la suma de las capacidades de cualquier conjunto de arcos que corta todo flujo de a a z. En el ejemplo primero, el corte con P = {a,b,c ), es de capacidad k(P,Pc) = 13es, por lo que ningn flujo a-z en la red puede valer ms de 13. (Nota: en este caso c' no es vlida ya que a P.)
Teorema N.2: Para cualquier flujo a-z, , y cualquier corte a-z, (P,Pc), en una red N,
|| k(P,Pc)
Demostracin: Expandimos la red N agregndole un nodo a' con un arco u' = (a', a) de capacidad infinita (significa muy grande), k(u') = , a' Pc.
a' Pc
a Pc
fig. 4.3 A u' se le asigna el valor del flujo ||, (u) = || , entonces se transforma en un flujo a'-z en la red expandida, la antigua fuente a ahora recibe su flujo de la super fuente a'. En esta nueva red, N', si se puede aplicar la condicin c') a P, ya que P no contiene la fuente a'
82
(u) = u(P,Pc) (u) Adems por construccin de N', el flujo hacia P es de valor al menos || que es el valor de (u'), otros flujos podran ingresar a P por arcos desde Pc.
c u(P ,P)
|| = (u') (*)
c u(P ,P)
(u) =
c u(P,P )
(u)
c u(P,P )
k(u) = k(P,Pc)
|| k(P,Pc)
L.Q.Q.D.
Corolario N.2 Para cualquier flujo a-z, , y cualquier corte a-z, (P,Pc), en una red N,
|| = k(P,Pc) s.s.i i) (u) = 0 , u (Pc,P) ii) (u) = k(u), u (P,Pc). En este caso decimos que es un flujo mximo y (P,Pc) es un corte a-z de capacidad mnima.
Demostracin: Considere las inecuaciones en (*) de la demostracin del Teorema N.2 y la red expandida. || = (u')
c u(P ,P)
(u) =
c u(P,P )
(u)
c u(P,P )
k(u) = k(P,Pc)
Directo Si || = k(P,Pc) entonces se cumple la igualdad en la inecuacin (*) es decir, || = c (u) i) es verdadera, u(P ,P) (si fuese
c (u) = Adems u(P,P ) u(P,Pc), porque si no c u(P ,P) c u(P,P )
k(u) = k(P,Pc) lo que implica (u) = k(u) c (u) < k(P,Pc) contradice la hiptesis. u(P,P )
Recproco: vale el mismo argumento utilizado para demostrar el directo. Por lo tanto la igualdad en (*) se cumple s s i i) y ii) se cumplen. La ltima afirmacin del corolario, se deriva directamente del Teorema N.2 Cuando en || k(P,Pc) se cumple la igualdad, se obtiene el valor mximo de || ==> es un flujo mximo, y tambin cuando se cumple la igualdad, se obtiene el valor mnimo posible de la capacidad del corte a-z en consideracin, ==> (P,Pc) es un corte a-z de capacidad mnima.
83
La holgura de un arco u es la cantidad libre de su capacidad, an pasible de utilizar y se nota s(u) = k(u) - (u)
Holgura mnima en un camino que va de a a z, es la holgura mnima entre todos los arcos de ese camino. Camino a-z, Li, es un camino i que va de la fuente a la terminal. Ejemplo:
5 5,3 a 5,3 4 c b 3,3 d 4 6,3 z 6,3 5 3,3 e
1 1,0
2 6,0
Supongamos que a la red de la figura no se le asignaron flujos a sus arcos. Encontramos en esa red el camino L1 = {(a,b), (b,d) (d,z)}= a-b-d-z. La holgura mnima de L1 es 3, min s(u) = 3 u L1. Esto quiere decir que podriamos sumarle un flujo de 3 unidades a cada uno de los arcos de L1. Luego identificamos el camino L2 = a-c-e-z, y hacemos lo mismo que con L1, en este caso tambien sumamos 3 unidades, min s(u) = 3 u L2.. Con el mismo procedimiento se podra ir aumentando el flujo de los arcos pertenecientes a caminos que van de a a z, con su holgura mnima, hasta encontrar un flujo que sea mximo.
Afirmacin: Cualquier flujo en una red N, se puede descomponer unidades de flujo a-z en caminos que van de a a z.
Por ejemplo el flujo de llamadas de telfonos de un pas a otro puede ser descompuesto en llamadas individuales; el flujo de petrleo en su envo, puede descomponerse en los caminos del envo de cada tonelada.
Unidad de flujo a-z en L, siendo L un camino que va de a a z, es el flujo
84
= + L1(u) + L2(u), u U El flujo de la red sigue siendo un flujo a-z, siempre que (u) k(u), u caminos en consideracin. Si s es la menor holgura en un camino L, es entonces la holgura mnima del camino L por lo que se puede sumar sL al flujo de la red. s*L = L+L+L +L ...... (s veces). = + s * L Este mecanismo nos sugiere una manera de construir un flujo mximo: aumentando el flujo de la red mediante la suma de unidades de flujo a-z equivalentes a la holgura mnima de los caminos a-z que as lo permitan. Volviendo al ejemplo, al comienzo el flujo de la red es (u) = 0 uU , luego encontramos el camino L1 = a-b-d-z y le sumamos a flujo 3L1. Observar que L1 posee un nico arco saturado: (b,d), el de la holgura mnima. Luego aumentamos en 3L2, L2 = a-c-e-z . Continuamos con L3= a-b-e-z de holgura mnima 2, que se usa para aumentar el flujo en 2L3 y L4 = a-c-d-z- de holgura mnima 1 el flujo aumenta en L4. As se obtiene el flujo a-z = 3L1 + 3L2 + 2L3 + L4 Luego de aumentar el flujo con L4, todos los caminos que llevan a Z tienen holgura mnima 0 y en la bsqueda de caminos con alguna holgura mnima, no se puede seguir mas all que de a hasta c. Se han saturado todos los arcos de un corte a-z; u (P,Pc), P = { a,c}, (u) = k(u). k(P,Pc) = 9 = || maximal (por corolario N.2) y el corte es mnimo, es el de capacidad mnima, observar que al estar saturado, no se puede enviar mas que k(P,Pc) unidades desde a. En este caso se tuvo la intuicin necesaria para encontrar los caminos que llevaron al flujo mximo. Pero no siempre es tan fcil. La siguiente figura muestra otro procedimiento de aumento a la red del ejemplo.
85
2 3,0
3,1 3
Se empieza con L1 = a-b-e-z saturando el arco (a,b), sumandole 5L1. Luego L2 = ac-d-z, saturando (c,d) y sumandole al flujo 1L2. Queda nada mas que un camino sin saturar L3 = a-c-e-z holgura mnima 1, se sumando 1L3 al flujo total. = + 5L1 + 1L2 + 1L3 No hay mas caminos de a a z con holgura mnima positiva ( >0 ), no es posible aumentar mas el flujo. De a puedo llegar nada mas que hasta e pasando por c. Queda determinado un corte saturado (P, Pc), P = {a,c,e}. Luego observamos que || = 7 y k(P, Pc) = 12. || < k(P, Pc) El mtodo de aumento puro, no siempre encuentra un flujo mximo! Por el corolario N.2 un flujo es de valor mximo ssi i) (u) = 0, u(Pc, P) ii) (u) = k(u) u (P, Pc) En este caso observamos que el arco u = (b,e) (Pc, P) y (u) = 5 0 Se ha cometido el error de haber aumentado de entrada todas unidades libres de L1, (5). Por eso en L3 no se pudo mandar mas que 1 unidad de flujo de L3, y en L2 nada mas que 1, (c,d) no lo permita. En realidad se debera haber reservado alguna unidad de L1 para asignarsela a L3, (c,e) s lo permita. Con L4 = a-b-d-z, se obtiene el flujo. = 3L1 + L2 + 3L3 + 2L4 Este mtodo de reservar unidades de flujos es muy complicado y poco controlable ya que igualmente no asegura encontrar el mximo. Existe una manera de ir corrigiendo el aumento de los flujos y que evita caer en los errores mencionados. En la red de la fig 4.5, el arco (b,e) contiene 5 unidades de flujo que van de Pc a P con (P,Pc) saturado, (b,e) =5 > 0, esto se corrige reduciendo el flujo de (b,e). Como 86
hacerlo? Por la condicin c) de flujo a-z, se lo puede reducir solamente, si se compensa la reduccin del flujo desde b hacia e, con un incremento hacia e desde cualquier arco u I-(e), con extremo inicial en P. Compensando desde Pc se corre el riesgo de encontrarse nuevamente con el caso de arcos que van de Pc a P con flujo positivo (ver corolario N.2). El incremento de compensacin debe venir de la fuente a, ya que necesitamos corregir el flujo en un camino desde a a e que contenga nodos en P. El nico camino de esas caractersticas es K1 = a-c-e. Del mismo modo, la reduccin del flujo de b hacia e, debe ser compensado por un incremento en algun camino desde b hacia algun nodo en Pc, ya que necesitamos corregir flujo en algn camino de b a z , con nodos en Pc. El nico camino con esas caractersticas es K2 = b-d-z. La mnima holgura en K1 es 2, y en K2 es 3, el mnimo entre ellos es 2, entonces se disminuye el flujo de (b,e) en dos, (b,e) : = (b,e) - 2 , y se aumenta el flujo de K1 y K2 en 2. Con este aumento de correcin se obtiene el flujo mximo,en el corte a-z saturado con P= {a,c},Pc={b,d,e,z}. Observen que el procedimiento ha consistido en realizar una correccin en la cadena K = a-c-e-b-f-z de 2 unidades de flujo.
Definicin Unidad de flujo a-z en una cadena K que va de a a z, es el flujo K con K(u) = 1 u K con direccin igual al de la orientacin de la cadena K (u) = -1 en aquellos arcos con orientacin contraria a la de la cadena, K (u) = 0 en los otros arcos.
K en realidad no es un flujo ya que tiene valores negativos en algunos arcos, pero el flujo resultante de una correcin, = + K s lo es. Aquellos arcos que van en la direccin contraria a la de K, tiene valores positivos, > 0, que puedo reducir y existe holgura en los arcos que van en la misma direccin de K hacia z que puedo aumentar. En el ejemplo anterior se corrige sumando a un flujo cadena de 2 unidades, = + 2K .
87
2) D(q) es la holgura mnima entre todos los arcos de la cadena que van de a a q. En un arco u de orientacin contraria al de la cadena, la holgura es la cantidad de flujo que puedo quitar. En caso de aplicar este algoritmo en una red con un flujo preasignado, controlar que sea a-z.
Algoritmo de Flujo Mximo
1.- Marcar la fuente a con (-) a es el primer nodo a examinar. 2.- Sea p el vrtice que se examina cuya 2da etiqueta es D(p)
a) Examinar todo u = (q,p) I-(p) Si (u) > 0 y q no marcado entonces marcar q con (p-, D(q)) siendo D(q) = min (D(p), (u)) b) Examinar todo u = (p,q) I+(p) Si s(u) = k(u) -(u) > 0 y q no marcado entonces marcar q con (p+, D(q)) siendo D(q) = min (D(p), s(u))
3.- Si Z marcado, ir al punto 4.
Si no, elegir otro vrtice marcado para examinar (que no haya sido examinado antes ) e ir al punto 2. Si no existen mas vrtices marcados para examinar se ha determinado un corte a-z saturado(P,Pc) , con P el conjunto de los vrtices marcados. || = k(P,Pc) y por eso maximal ==> FIN
4.- Encuentre una cadena a-z K de arcos con holguras, retrocediendo desde z como en el algoritmo de camino mnimo. El flujo a incrementar k es cadena flujo a-z, de valor D(z) unidades
' = + D(z)k Reasignar el flujo, y se aplicar nuevamente el agoritmo a ', es decir volver a 1)
Teorema: Dado cualquier flujo a-z , aplicando un nmero finito de veces el algoritmo de Ford y Fulkerson, se obtiene un flujo mximo. Adems, si P es el conjunto de vrtices marcados en la etapa final del algoritmo, el corte (P,Pc) es un corte a-z mnimo. Corolario (Flujo mximo- Corte mnimo) En cualquier red orientada, el valor de un flujo mximo a-z es igual a la capacidad de un corte a-z mnimo.
88
89
Si la tarea i no es interrumpida, entonces: Ti = ti + di. Una condicin necesaria para que un ordenamiento sea realizable es: ci ti <Ti fi, i I En ciertos casos, p.ej. si hay un retardo tal que Ti > fi, se podr considerar un costo wi asociado a esa tarea i.
6.1.3 Recursos
Se distinguen dos tipos de recursos: renovables y consumibles.
90
Un recurso es renovable si despus de haber sido usado en una tarea, es utilizable totalmente en las tareas posteriores. Ejemplos: mquinas, procesadores, archivos, personal, etc. Un recurso es consumible si despus de haber sido utilizado en una tarea, ya no esta ms disponible para las posteriores. Ejemplos: materias primas, dinero, etc. Los recursos, sean renovables o no, pueden estar disponibles solamente en ciertos perodos, sujetos a una curva de disponibilidad.
91
92
Observar que con este modelo no se pueden tener en cuenta restricciones disyuntivas, es decir, sus intervalos de ejecucin deben ser disjuntos (i antes que j o j antes que I). Esto ocurre por ejemplo, si dos tareas necesitan un mismo recurso, cuya disponibilidad no es suficiente para la ejecucin de ambas en simultneo, esta 93
Este problema lo modelamos mediante un grafo de potencial-tareas(primera figura), la segunda figura resulta de suprimir las restricciones redundantes:
94
Demostracin: ( ) Por absurdo. Sea [1,2,...r,1] un circuito de valor estrictamente positivo: w12 +....+ wr1 > 0. Si existiera un conjunto de potenciales sobre G, tendramos t2 -t1 w12 .... tr-tr-1 w(r-1)r t1-tr wr1 Sumando tendramos w12 + ...+ wr1 0, absurdo. () Por hiptesis, G conjuntivo (existe al menos un camino de valor positivo que va de 0 a i) y no existen circuitos de valor positivo. Por lo tanto, tomando un camino que va de 0 a i y suprimiendo circuitos de valor negativo, se puede extraer un camino elemental de 0 a i de valor por lo menos la del camino original. El nmero de caminos elementales es finito, entonces existe un camino elemental de valor maximal de 0 a i. Notemos ri el valor de este camino y verifiquemos que R={ri} i I es un conjunto de potenciales: r0 = 0, rj es el valor mximo de los caminos elementales de 0 a j. ri + w(i,j) es el valor de un camino de 0 a j pasando por i con un valor ri, por lo tanto ri + w(i,j) rj, w(i,j) = wij o sea: rj ri wij, i, j I L.Q.Q.D.
Corolario 1: Si un grafo conjuntivo no tiene circuitos, existe siempre al menos un conjunto de potenciales asociados. Corolario 2: Si las ponderaciones de los arcos de un grafo conjuntivo son positivas o nulas, existe al menos un conjunto de potenciales sii todos los circuitos son de valor nulo.
95
De ahora en adelante, suponemos que el grafo conjuntivo no contiene circuitos de valor positivo. Sea V(i,j) el valor maximal de un camino de i a j, por convencin V(i,i) = 0 y si no hay camino de i a j V(i,j) = -.
Lema 1: Para toda pareja (i,j) de vrtices se tiene tj - ti V(i,j). Demostracin: Sea [i, h,...,k, j] un camino de i a j de valor V(i,j), Por definicion de potencial: th-ti wih, ..., tj-tk wkj, sumando todos los trminos obtenemos: tj - ti wih + ...+ wkj = V(i,j). L.Q.Q.D. Proposicin 1: Para todo conjunto de potenciales T = {ti}, se tiene: ri ti. Demostracin: Segn el lema anterior, ti-t0 V(0,i), luego V(0,i) = ri , t 0= 0, entonces, ri ti L.Q.Q.D.
Esta propiedad muestra que para el conjunto de potenciales R, las tareas se ejecutan lo ms temprano posible.
Conjunto de potenciales optimales, camino crtico: En los mtodos de potenciales se buscar un ordenamiento de duracin total minimal. Este ordenamiento corresponder a un conjunto de potenciales tal que tn+1 sea minimal. Segn la proposicin 1, tn+1 es minimal cuando se cumple la igualdad. Luego rn+1 = V(0,n+1), o sea el valor maximal de un camino que va de 0 a n+1. Este camino se llama camino crtico y notaremos t* su valor. Proposicin 2: Sea F = {fi = [V(0,n+1) - V(i,n+1)] / iX}. F es un conjunto de potenciales ptimo. Adems si T es otro conjunto de potenciales optimal, se tendr: ti fi F es un conjunto de potenciales en el cual todas las tareas se ejecutan lo ms tarde posible. Demostracin: Veamos primero que F es un conjunto de potenciales
Si (i,j) U,
wij + V(j,n+1) V(i,n+1) wij [V(0,n+1) - V(j,n+1)] - [V(0,n+1) - V(i,n+1)] wij fj - fi, y este conjunto de potenciales es optimal ya que fn+1 = V(0,n+1) = t*
Si T es un ordenamiento optimal, tomemos j = n+1 en (lema 1) : ti tj - V(i,j), ti tn+1 - V(i,n+1) V(0,n+1)- V(i,n+1) = fi, ti fi
96
la tarea 1 precede a la tarea 3 las tareas 1 y 2 preceden a la 4 la tarea 3 precede a la 5 las tareas 3 y 4 preceden a la 6 la tarea 6 precede a la 7
Grafo de potencial-tareas asociado Un ordenamiento es un conjunto de potenciales T={ti:iX} sobre el grafo. La fecha ti, es la fecha de comienzo de ejecucin de la tarea i. Un ordenamiento de duracin minimal es uno tal que minimiza tn+1, o sea de valor tn+1 = V(0,n+1) = t*. Entre los ordenamientos optimales, los ordenamientos ms tempranos, R, y los ms tardos, F, son particularmente los ms interesantes, ya que ri ti fi. Resolver los ordenamientos ms tempranos y ms tardos R y F que estn definidos por V(0,i) = ri y fi = V(0,n+1) - V(i,n+1), equivale a resolver problemas de caminos en grafos. Se usa el algoritmo de Bellman sobre grafos conjuntivos, algoritmo de complejidad O(m), m = nro. de restricciones potenciales. Lo ms comn son grafos con ponderaciones estrictamente positivas en sus arcos, y la existencia de circuitos implica la no existencia de soluciones. En presencia de circuitos de valor negativo se puede por ejemplo utilizar el algoritmo de Ford (O(n3)). Aplicando el algoritmo de Bellman al ejemplo anterior, encontramos: r0 = r1 = r2= 0, r3 = 3, r4 = r5 = 7, r6 = 13, r7 = 16, r8 = 18; el clculo de las fechas ms tardas es anlogo, f0 = 0, f4 = 4, f2 = 0, f3 = 9, f4 = 7, f5 = f6 = 13, f7 = 16, f8 = 18.
97
Marcar el nodo 0 con r0 = 0, Mientras existan nodos sin marcar; Sea j un nodo no marcado con todos sus predecesores marcados, marcar j con rj = max i U- (j)(ri+wij); Fin Mientras Marcar el nodo n+1 con fn+1 = rn+1 Mientras existan nodos sin marcar; Sea i un nodo no marcado con todos sus sucesores marcados, marcar i con fi = min j U+ (i)(fj-wij); Fin Mientras
6.3.3 Holguras
Los mrgenes u holguras tienen por funcin evaluar la demora o el retardo permitido en una tarea, sin modificar "demasiado" los resultados. Definiremos el margen u holgura total Mi, la holgura o margen libre mi, y el margen seguro ui.
Holgura total Mi de una tarea i es el tiempo que se puede retardar una tarea sin afectar la fecha de fin de proyecto. Mi es entonces, la diferencia entre la fecha ms tarda y la ms temprana: Mi = fi-ri. Holgura libre mi de una tarea i es el tiempo que se puede retardar esa tarea de forma que las tareas sucesoras puedan empezar en la fecha ms temprana: mi = Min [jU+(i)] {rj-(ri+wij)} Margen seguro ui de una tarea i es el tiempo disponible para comenzar la ejecucin de una tarea, cuando las predecesoras empiezan en sus fechas ms tardas y las sucesoras en sus fechas ms tempranas, si existe y si no es nulo: ui= Max {0, min [jU+(i)] (rj-wij) - max [kU-(i)] (fk+wki)} Camino crtico: los caminos de valor maximal que van de 0 a n+1, juegan un rol central en este mtodo, ya que toda tarea que compone alguno de estos caminos tienen un holgura total nula. Se dice que estas tareas son crticas ya que si se retardan unidades de tiempo, el ordenamiento se retardar tambin unidades.
98
Mi m i Mi = fi - ri [definicin de Mi] = min [jU+(i)] {fj - wij} - ri [definicin de fi] = min [jU+(i)] {fj - wij - ri } [propiedades de min] = min [jU+(i)] {fj - (ri + wij)} [aritmtica] min [jU+(i)] {rj - (ri + wij)} [fj >= rj] = mi [definicin de mi] Queda probado que Mi mi mi ui mi = min [jU+(i)] {rj-(ri+wij)} [definicin de mi] = min [jU+(i)] {rj - wij)} - ri [propiedades de min] = min [jU+(i)] {rj - wij)} - max [kU-(i)] {rk + wki} [definicin de ri] max {0, min [jU+(i)] (rj-wij) - max [kU-(i)] (fk+wki)} [-rk >= -fk] = ui [definicin de ui] Queda probado que mi ui
99
Disminucin del costo total de un programa: No se trata aqu de buscar el ptimo de un programa, sino solamente de mostrar cmo los mtodos de camino crtico permiten disminuir el costo total actuando sobre las tareas no crticas. El costo total del proyecto es: C = [iU]Ci. Para disminuir el costo total C, manteniendo la misma duracin de ejecucin, ser preciso disminuir los mrgenes libres de las operaciones no crticas, dentro de los lmites impuestos por las restricciones. Disminuir el margen libre de una tarea equivale, segn la grfica precedente, a disminuir los costos. Procediendo de esta forma puede suceder que se creen nuevos caminos crticos. Variacin lineal del costo en funcin de la duracin. Programa lineal paramtrico: Se supone que, para cada tarea ti la curva de costos Ci = f(di) es de la forma:
Ci = Ki - ni*ti , con Ii ti Si
El problema planteado se traduce al siguiente programa lineal: Min sujeto a: [(i,j)U](Ki - ni*ti) Ii di Si, [(i,j)]di del grafo conjuntivo.
Donde representa los caminos que van de la raiz al final, y es un parmetro que representa la duracin total del proyecto.
100
101
El dominio de la funcin variable aleatoria son los eventos, por lo que a cada valor posible de una variable aleatoria podemos asociar una medida de probabilidad, definiendo as la distribucin de probabilidad de la variable. Si X es una variable aleatoria discreta, y {xj, j=1,2,3,...} es el conjunto de los valores que puede tomar , entonces P(X=xj) = p(xj) 0, j=1,2,3,... y j p(xj)=1. es la distribucin de probabilidades de la v.a. X. Siempre que p(xj) satisfaga estas condiciones es lcito hablar de una v.a. que asume los valores x1, x2,...xN con probabilidad p(x1), p(x2),.., sin hacer ms referencias al espacio muestral original; se forma un nuevo espacio con los puntos muestrales x1, x2,... xN. Si Y es una v.a. continua (su recorrido es el conjunto de los Reales, R), la probabilidad de que tome un valor fijo es en general nula, y existe una funcin fY(y) llamada funcin de densidad en R, que verifica la propiedad siguiente:
B R, P(Y B) =
B
f Y ( y )dy, y
f Y ( y )dy = 1
Toda afirmacin acerca de una v. a. X o Y se puede responder en trminos de su distribucin de probabilidad o de su Funcin de distribucin, F(a) (tambin notada como FX(a)). p( x ) si la v.a. X es discreta
F (a ) = P( X a ) =
x a a
f X ( x )dx
si la v.a. X es continua
Para describir las distribuciones de probabilidades se utilizan adems valores tpicos, como ser mediana, trmino central, etc. La Esperanza es el valor tpico ms importante de una v.a. por su estabilidad muestral. x j p( x j ) si la v.a. X es discreta
E( X ) =
xX
Media, Valor Esperado y primer momento son sinnimos de Esperanza matemtica de una distribucin. El segundo momento es E(X2), el tercer momento E(X3), etc. Sea X una v.a. con segundo momento E(X2 ) y esperanza E(X), se define un nmero llamado Varianza de la v.a. X, Var (X), como el segundo momento de X en torno a su media:
102
Var ( X ) = E ( X E ( X )) =
2
x j
(x
E ( X )) p (x j ) si X discreta
2
( x E ( x ))2 f ( x )dx
si X continua
Es fcil demostrar la siguiente frmula alternativa: Var(X)= E(X2) - E2(X ) Dispersin es usualmente sinnimo de varianza ya que es una medida burda de la dispersin de la v.a. respecto de su media. Un valor elevado de la varianza indica que X toma valores alejados de la media. Se define como Desviacin Estndar a la raz cuadrada de la varianza = Var ( X ) . El coeficiente de variacin, r, es otra medida de la variacin de una distribucin, que tiene la ventaja de ser adimensional: = Var ( X ) / E ( x ) .
Ejemplo de v.a. discreta: Indicatriz de un evento
Sea A un evento cualquiera. Definimos la variable aleatoria "Indicatriz del evento A", que notamos por IND(A), a una v.a. binaria, que toma valor 1 cuando el evento A se produce, y valor 0 en otro caso. Por lo tanto: P(IND(A)=1) = P(A) P(IND(A)=(0) = 1-P(A) Es fcil ver que: E(A) = 1.P(A)+ 0.(1-P(A))=P(A) y que Var(IND(A)) = E(IND(A) 2) - E2(IND(A )= (12.P(A)+ 02.(1-P(A))) - P(A) 2 = P(A) -P(A) 2 = P(A)(1-P(A)).
Distribucin de Poisson
N es una v.a. de distribucin Poisson y parmetro >0 si: k e k 0, > 0 P (N = k ) = p N (k ) = k! Se puede demostrar que 1) P (N = k ) 0
=1 k! 3)E( N ) = Var( N ) = Con frecuencia se supone que el nmero de llegadas de clientes a un negocio, durante un intervalo de tiempo, o la demanda de un producto, se comportan segn una distribucin Poisson. es el parmetro de la distribucin, correspondiendo a la intensidad de llegadas por unidad de tiempo. 2)
k =0
k e
103
Aclaracin: Modelando siempre es necesario realizar simplificaciones de la realidad, ahora, se debe simplificar lo suficiente para que el modelo sea tratable matemticamente, pero no demasiado como para que el modelo ya no sea una representacin del fenmeno real.
Distribucin Exponencial
Decimos que una v.a. X continua es exponencial con parmetro , >0, cuando: e x x 0 f X ( x) = x<0 0
x
P( X x) =
f X (t )dt =
1 e x x 0 0 x<0 1
E( X ) =
Var(X) =
Se puede demostrar que si X es una v.a. esponencial, entonces 1 1 E( X ) = Var(X) = 2 Generalmente se procura trabajar con v.a. que reflejen con la mayor simplicidad posible las propiedades realmente esenciales de los resultados del experimento. En muchos casos la observacin de un experimento aleatorio no viene expresada por una sola cantidad observada, sino simultaneamente por una cierta cantidad de variables aleatorias.
Definiciones
Se llama Distribucin Conjunta de dos v.a. X e Y discretas, definidas en un mismo espacio muestral (discreto), a la funcin P(X = xj, Y = yk) = PXY (xj, xk) xj ,xk
que asigna probabilidades a todos los eventos simultneos que surgen de las combinaciones de los pares de valores (xj, yk) que toman X e Y respectivamente. (X=xj, Y=yk) es el evento definido por el par de sucesos que satisfacen simultaneamente las condiciones X = xj, e Y = yk. Se dice que 2 variables son estocsticamente independientes si para toda combinacin de pares de valores (xj, yk) P ( X = x j , Y = y k ) = P ( X = x j )P(Y = y k ) Estas nociones se extienden a un conjunto finito de v.a. X, Y, ..., Z definidas en un mismo espacio muestral. Estas variables sern mutuamente independientes si se verifica que su probabilidad conjunta es igual al producto de las probabilidades individuales de cada una de ellas.
104
)(
Clculo de la Probabilidad de un evento E, condicionndolo a la ocurrencia de eventos exhaustivos y mutuamente excluyentes (teorema de la probabilidad total):
Sea {Bi , i N } una particin de , es decir un conjunto de eventos Bi tales que a) son dos a dos disjuntos: Bi B j = , i, j N b) su unin es : Entonces P(E ) = tenemos que P(E ) =
k k
P(E Bk ) , y si los eventos son tales que P(B k ) 0 P(E B k )P(Bk ) (teorema de probabilidad total).
Bi = k ,
Si tenemos que Y es una variable aleatoria discreta, entonces los eventos Bk= (Y= yk) son exhaustivos y mutuamente excluyentes, es decir conforman una particin de , por lo que E se puede expresar de la siguiente manera:
E = ( E , Y = y1 ) P( E ) =
k =1
( E , Y = y2 )
... ( E , Y = y k )
.....
P( E , Y = y k ) =
k =1
P( E | Y = y k ) P( Y = y k )
Existe una propiedad anloga en el caso continuo, pero es necesario que la varianza de Y sea finita: si Var(Y)<, entonces
P (E ) =
P(E Y = y ) fY ( y )dy
Ejemplo 7.1.1:
Un cliente que entra a una tienda compra un sombrero con probabilidad p. Si el nmero de clientes que ingresan por da sigue una distribucin Poisson de valor esperado , Cul es la probabilidad de que no se venda ningn sombrero en un da? Se define X como el nmero de sombreros vendidos y N como el nmero de clientes que llegan a la tienda. Condicionando en N
105
P( X = 0) =
P( X = 0 | N = n )P( N = n ) =
(1 p ) n
e n = e e (1 p ) = e p n!
Esperanza Condicional La esperanza condicional E(X|Y) es una nueva variable aleatoria definida en base a dos variables X e Y, definida de la siguiente forma:
E( X | Y ) =
y x
xP( X = x | Y = y ) IND(Y = y ) .
Tenemos que si Y toma el valor y, entonces entonces E(X|Y) tomar el valor: E ( X | Y = y ) = xP( X = x | Y = y ) = xp X |Y ( x | y )
x x
Si X es independiente de Y, la esperanza condicional ser una v.a. constante, de valor igual a la esperanza incondicional, ya que para todo y, E X |Y = y = xP( X = x | Y = y ) = xP( X = x) = E ( X )
Ejemplo 7.1.2:
Sea p(x,y):
p(1,2) = 0.1, p(2,1)=0.1, p(2,2)=0.3. P( x = x, Y = 1) = 1 p X |Y (1 | 1) + 2 p X |Y (2 | 1) = E[ X | Y = 1] = xP( X | Y = 1) = x P(Y = 1) x x p (1,1) p(2,1) 5 2 7 = +2 = + = pY (1) pY (1) 6 6 6
p(1,1) = 0.5,
Se dice que una v.a. X no tiene memoria si: P ( X > s + t| X > t ) = P ( X > s ) s , t 0 lo que es equivalente a P( X > s + t , X > t ) = P( X > s) P( X > t ) y entonces P( X > s + t ) = P( X > s) P( X > t ) . Esta ecuacin se satisface cuando X es exponencial ya que e ( s+ t ) = e se t . Tambin se demuestra que la distribucin exponencial es la nica distribucin continua que verifica esa propiedad (as como la distribucin geomtrica es la nica distribucin discreta que verifica esta propiedad).
106
Propiedad 2 Sea T1 y T2 variables aleatorias exponenciales independientes de tasa 1 y 2 respectivamente. Entonces T=min(T1,T2) es una v.a. exponencial de parmetro (1+2). Dem: 1 FT (t ) = P(T1 > t , T2 > t ) = (indep. T1 y T2 ) = P(T1 > t ) P (T2 > t ) = e 1t e 2t = e (1 + 2 )t
= 1 P(T1 > t ) P(T2 > t ) = 1 e ( + )t Ya que T1 y T2 son independientes y s min(T1, T2) > t ( T1 >t, T2 >t) Si dos v.a. exponenciales independientes ocurren simultneamente, en conjunto se comportan segn una distribucin exponencial, con tasa igual a la suma de las tasas individuales de cada una de ellas.
Propiedad 3 Clculo de la probabilidad de que una v.a. exponencial ocurra antes que otra.
Sean X1 y X2 v.a. exponenciales independientes, con respectivas esperanzas 1/1 y 1/2 . Se desea calcular P(X1 > X2) [similar para P(X2>X1)]. Condicionando en X2
= 1 - e -1 x 2 e 2 x dx = 1 2 e ( 1 + 2 ) dx
0 0
= 1-
2 1 + 2
(1 + 2 )e ( + ) dx = 1
1 2
2 1 + 2
1 1 + 2
Ejemplo 7.1.4: Suponga un sistema de colas (negocio de venta de sombreros) con un solo empleado . El intervalo de tiempo que transcurre entre la llegada de un cliente y el siguiente se describe con una v.a. exponencial X1, de esperanza 1/2 hora. El tiempo que le
107
lleva al empleado atender a cada cliente se comporta segn otra v.a. exponencial, X2, independiente de X1, de valor esperado 15 minutos. Cul es la probabilidad de que un nuevo cliente llegue antes de que el servidor termine de atender al cliente que est atendiendo? y viceversa? X1 = tiempo entre llegadas sucesivas X2 = tiempo de atencin al cliente E(X1) = 1/1 = 0,5 horas; 1 = 2 E(X2) = 1/2 = 0,25 horas; 2 = 4 1 1 P( X 1 < X 2 ) = = 1 + 2 3
108
Si en cambio consideramos el proceso estocstico Y tal que Yn = tiempo de espera del n-simo cliente, tendremos que E=R+ y T=N, por lo que Y es de espacio de estado continuo y tiempo discreto.
= P( X n = en | X n 1 = en 1 ,..., X 2 = e2 , X 1 = e1 , X 0 = e0 ) P( X n 1 = en 1 ,..., X 1 = e1 , X 0 = e0 )
Cada evolucin corresponde a un punto muestral de nuestro espacio de probabilidades de base, por lo que la probabilidad de la unin de todas las evoluciones posibles debe ser 1.
Ejemplo 7.2.2
Consideremos el siguiente experimento. Sean A y B dos monedas distintas, con A una moneda normal y B una moneda con una cara de cada lado. Se elige al azar una moneda entre las dos posibles. A continuacin se lanza la moneda elegida y se observa el resultado. Si es un nmero lanzamos un dado y observamos el resultado. Si es cara, la moneda se lanza nuevamente. Este es un experimento que evoluciona en el tiempo, y donde adems cada resultado depende de los resultados obtenidos anteriormente.
109
Los estados posibles son: A = la moneda con cara y nmero fue elegida, B = la moneda con dos caras fue elegida, C = el resultado del lanzamiento de una moneda fue una cara, N = el resultado del lanzamiento de una moneda fue un nmero, 1 = el resultado del lanzamiento del dado fue 1, ... 6 = el resultado del lanzamiento del dado fue 6. Entonces el espacio de estado es E = {A, B, C, N, 1, 2, 3, 4, 5, 6}, discreto. Adems el proceso consta de tres etapas, por lo tanto T tambin es discreto. Esas etapas son: 1 seleccin de una moneda, 2 una moneda es lanzada, 3 se lanza una moneda o un dado. Sabemos que las probabilidades de que se elija A B es de 1/2 para cada una: P( X 1 = A) = P( X 1 = B ) = 0,5 Tenemos tambin: P( X 2 = C | X 1 = A) = P( X 2 = N | X 1 = A) = 0,5 y P( X 2 = C | X 1 = B ) = 1 Por ltimo: P( X 3 = C | X 2 = C , X 1 = B ) = 1
P( X 3 = C | X 2 = C , X 1 = A) = 1/ 2 P( X 3 = i | X 2 = N , X 1 = A) = 1 6 , i = 1,2,...6
Entonces podemos calcular la distribucin conjunta de probabilidades para cada evolucin del proceso. Dado un proceso estocstico de tiempo y espacio de estado discretos, es posible representar mediante un rbol de profundidad k todas las evoluciones posibles de k etapas.
P( X 3 = N | X 2 = C , X 1 = A) = 1 / 2
1/2
1/2
B
X1
1/2
1/2
N
1
C
X2
1/2
1/2
N
1/6
1
1/6
1
C
X3
La raz del rbol corresponde al estado inicial del proceso estocstico. A cada resultado posible de la n-sima etapa del proceso estocstico le corresponde un nodo 110
del nivel n+1 del rbol. Los arcos estn ponderados por las probabilidades condicionales de transicin entre estados del proceso. La utilidad de esta representacin grfica consiste en: identificar todas las posibles evoluciones del proceso, como cadenas del rbol, calcular la probabilidad de ocurrencia de cada posible evolucin del proceso, calcular las distribuciones de probabilidad de los caminos de las etapas intermedias. Pero cuando el espacio de estado contiene muchos estados, o el nmero de etapas es grande, no es posible utilizar este rbol.
P( X n +1 = en +1 | X 0 = e0 , X 1 = e1 ,..., X n = en ) = P( X n +1 = en +1 | X n = en ), n N , e0 , e1 ,...en , en +1 E
(siempre que estas probabilidades estn bien definidas). Esta propiedad se interpreta como la afirmacin de que la probabilidad (condicional) de que el proceso alcance el estado futuro xn+1 dados los estados pasados x0, x1,...xn-1 y el estado actual xn es independiente de los estados pasados y depende solamente del estado presente xn (el pasado no influye en el futuro ms que a travs del presente).
111
A cada estado iE est asociado un conjunto de probabilidades de transicin pij0 que describen el comportamiento de la cadena en su prxima etapa, indicando cuales son los estados j que pueden ser alcanzados desde el estado i y con qu probabilidad. El conjunto de los pij, i,j E forman la matriz de transicin de la cadena, que notaremos P. Los elementos de P son las pij ordenadas a partir de una numeracin fija de los elementos de E (eventualmente puede ser una matriz infinita): 0 j r 0 p00
p0 j pij prj
p0 r pir prr
0 i, j r = E
P = i pi 0 r pr 0
Cada fila i representa un estado presente i y cada columna j representa un posible estado futuro. La entrada i,j es la probabilidad de que la prxima transicin tenga al estado j por destino. La matriz P describe entonces para cada estado i E cuales son los estados j E que la cadena puede alcanzar en su prxima etapa y con que probabilidad, por lo que cada fila i es la distribucin de probabilidad (condicional) de la v.a. Xn+1 dado que Xn=i. Al ser cada fila una distribucin de probabilidad, se verifican las siguientes propiedades: pij 0, i, j E
j E
pij = 1, i E
Una matriz cualquiera que verifica estas ecuaciones recibe el nombre de matriz estocstica. Cuando adems la suma de las probabilidades de cada columna es 1 se dice que P es bi-estocstica.
Ejemplo 7.3.1 Consideremos un sistema de comunicaciones que transmite los dgitos 0 y 1. Cada dgito transmitido debe pasar por varios nodos (o centrales). Existe una probabilidad p, 0 < p <1, de que el dgito enviado desde un nodo contine incambiado cuando llega al nodo siguiente y sea reenviado, pero con probabilidad 1-p surgen perturbaciones en la lnea que modifican el dgito. Denominemos Xn al dgito enviado desde el nodo n, entonces Xn+1 es el dgito recibido en el nodo siguiente y retrasmitido. Para cualquier n, Xn solamente puede tomar los valores 0 o 1. Entonces el espacio de estado es E = {0, 1}
Esta cadena es homognea ya que las probabilidades de transicin no dependen de la etapa en la que nos encontramos; para cualquier par de etapas n y n+1, la probabilidad de que el proceso contine en el mismo estado cumple: P(dgito transmitido por la central n = dgito recibido por la central n+1) = p, n
112
Definimos sus probabilidades de transicin: P(Xn+1=0Xn=0) = p00 = p P(Xn+1=1Xn=0) = p01 = 1p P(Xn+1=0Xn=1) = p10 = 1p P(Xn+1=1Xn=1) = p11 = p Con estos datos se construye la matriz P de transicin, ordenada como el espacio de estado E: P= 0 1 0 p 1p 1 1p p Vermos que se verifica: pij = pij = 1 , i, j {0,1}
j i
Sea X={Xn,n0} una cadena de Markov finita de espacio de estado E={1,2,...r}, |E|=r, y matriz de transicin P. Podemos asociar un grafo orientado ponderado G=(E,U,W) a la cadena X de la forma siguiente: E (espacio de estado de la cadena) es el conjunto de nodos U = {uij=(i,j)|i,jE, pij>0} es el conjunto de arcos orientados W es la funcin de ponderacin que asigna uij + (i) la probabilidad de transicin pij > 0 correspondiente, W(uij) = pij > 0. Como la suma de todas las probabilidades de transicin pij para cada fila i debe ser igual a 1, entonces el grafo asociado a una C. M. finita homognea no puede ser cualquiera, sino que la suma de las probabilidades asignadas a los arcos incidentes exteriormente a cada nodo debe ser igual a 1. Aunque el grafo retiene nada ms que las probabilidades de transicin entre dos estado, su estudio es muchas veces suficiente para conocer cualitativamente la evolucin del proceso.
Ecuaciones de ChapmanKolmogorov
Hasta aqu nos hemos ocupado solamente de las transiciones en una sola etapa de una cadena. Veremos a continuacin como estudiar de forma analtica la evolucin y las probabilidades de transicin en n etapas de una cadena de Markov. Definimos la probabilidad de transicin en n pasos, (n) pij = P( X n + m = j | X m = i ) , n, m 0, i, j E como la probabilidad de que el proceso, partiendo del estado i, llegue al estado j luego de n transiciones adicionales. Como consideramos cadenas homogneas estas probabilidades no dependen de cual es la etapa inicial m.
113
Un caso particular de esta definicin se da cuando n=1: (1) pij = P( X m+1 = j | X m = i ) = pij , m 0, i , j E que es la probabilidad de transicin en un paso ya estudiada, cuyos valores conforman la matriz de transicin P. Consideremos una evolucin (X0=e0,X1=e1,X2=e2,X3=e3,...Xn=en) de la cadena X, que en el grafo asociado corresponde a un camino (e0,e1,e2,e3,...en). Recordemos que la probabilidad de que el proceso siga esta evolucin es:
P( X n = e n , = P( X n = e n | X n 1 = e n 1 , X 1 = e1 , X 0 = e 0 )
por def. prob. condiciona l
X 1 = e1 , X 0 = e 0 ) P( X n 1 = e n 1 |
por C.M. homogenea
X 1 = e1 , X 0 = e 0 )
P( X 1 = e1 | X 0 = e 0 ) P( X 0 = e 0 )
p e n 1 e n p e n 2 e n 1
p e0 e1 p e0
donde p e0 es la probabilidad de que el proceso en su etapa inicial comience por el estado e0. Entonces la probabilidad de una evolucin del proceso es equivalente a la probabilidad P(c ) de un camino c en el grafo asociado (si conocemos el estado de partida e0). Esta probabilidad se calcula como el producto de las pij, asignadas a los arcos involucrados en el camino. Si llamamos Cn (i, j ) al conjunto de todos los caminos de n arcos que unen ei con ej entonces: P(c ) = probabilidad del camino c
(n ) pij =
cC n (i , j )
P(c )
Las ecuaciones de ChapmanKolmogorov nos dan una relacin recursiva entre las probabilidades de transicin en varios pasos. La primer formulacin de estas ecuaciones es la siguiente: (n + m ) ( n ) (m ) pij = pik pkj , n, m 0, i, j E
k E
Como justificacin intuitiva de esta ecuacin, vemos que pik.pkj representa la probabilidad de que partiendo del estado i el proceso llegar al estado j luego de n+m transiciones, siguiendo un camino que lo hace pasar por el estado k en la nsima transicin. Por lo tanto, tomando la sumatoria sobre todos los estados intermedios kE, obtenemos la probabilidad de que el proceso alcance el estado j luego de n+m transiciones (se suman ya que cada camino es una evolucin del proceso y las evoluciones del proceso son sucesos disjuntos).
114
P( X n + m = j, X o = i ) total = = j | X o = i) = P( X o = i )
def def . prob .
teo . prob.
simplif .
P( X n + m = j | X n = k )P( X n = k | X o = i ) =
por def . kE
(m ) (n ) pkj pik
QED.
En el caso particular m=1, las ecuaciones de ChapmanKolmogorov se reducen a la expresin siguiente: ( n +1) (n ) pij = pik pkj
(n ) . Esta expresin sugiere el uso de matrices para el calculo de las probabilidades pij Recordemos que si A es una matriz nxm de elemento genrico aij y B es una matriz mxq de elemento genrico bij, entonces AxB se define como la matriz nxq cuyo
m
k E
aik bkj .
Si A y B son estocsticas, AxB tambin es estocstica. Llamemos P ( n ) a la matriz estocstica de la nsima transicin, es decir cuyos (n ) elementos son las probabilidades pij que queremos obtener. Entonces las ecuaciones de ChapmanKolmogorov se pueden reescribir como P (n + m ) = P ( n ) P (m ) en el caso general,
P (n +1) = P (n ) P
cuando m = 1.
Una propiedad importante que se puede demostrar a partir de esta formulacin es que la matriz de transicin en n pasos es igual a la n-sima potencia de la matriz de transicin en un paso, P: n P (n ) = (P ) 115
Para demostrar esta afirmacin utilizaremos induccin completa: Paso base: observamos que P (1) = P , por definicin. Para n=2 , P (2 ) = P (1+1) = P (1)P (1) = PP = P 2 ( n 1) = P n 1 Paso inductivo: suponemos que para n-1 la frmula es cierta, P Entonces
(n )
=P
( n 1+1)
ec. C K
( n 1) (1)
P =P
( n 1)
hip . de induccin
P n 1P = P n
QED
Para clasificar los estados de una C.M. finita vamos a definir la relacin de alcance entre los mismos. Decimos que el estado j es alcanzable desde i si y slo si es posible que el proceso alguna vez alcance o se encuentre en el estado j, habiendo partido de i. Esto es (n ) equivalente a pedir pij > 0 para algn n0, ya que
(n ) = 0, entonces P( X pasa por j | X 0 = i ) = P si n, pij (N ) > 0, entonces P( X pasa por j | X 0 = i ) = P si N | pij
n =1 n =1
{X n
= j | X 0 = i}
n =1
P( X n = j | X 0 = i ) = 0
{X n
= j | X 0 = i} P( X N = j | X 0 = i ) > 0
Decimos que dos estados i y j se comunican (notacin ij) cuando son alcanzables (n ) >0 y el uno desde el otro (o de forma equivalente cuando existen n,m0 tales que pij
p (jim ) > 0 ). Se define as la relacin de comunicacin que satisface las siguientes propiedades: 1) Reflexiva , ii iE ya que por definicin: (0 ) pii = P( X 0 = i | X 0 = i ) = 1 > 0 2) Simtrica, si ij ji, i,jE se verifica por definicin de la relacin comunicacin. 3) Transitiva, si ij y jk ik, i,j,kE por hiptesis ij y jk, entonces por definicin de la relacin de comunicacin (n ) n, m > 0 | p ij > 0, p (jim ) > 0
(t ) r) r , t > 0 | p (jk > 0, p kj >0
ecuacines de
por H.
Entonces k es alcanzable desde i. Con el mismo procedimiento vemos que i es alcanzable desde k, entonces por definicin i y k se comunican. Por lo tanto la relacin de comunicacin es una relacin de equivalencia en el conjunto de estados del proceso, y por ende particiona al espacio de estado en clases 116
disjuntas de equivalencia. Si consideramos el grafo asociado a la cadena, podemos ver que la relacin de comunicacin lo divide en sus componentes fuertemente conexas. En efecto, la relacin de comunicacin implica la existencia de caminos entre ambos nodos del grafo, es decir que si i y k se comunican entonces: n,m| c1Cn(i,j) y c2Cm(j,i). Por lo tanto los dos estados i y k pertenecen a la misma componente fuertemente conexa del grafo asociado a la cadena. Cuando una C.M. finita y homognea posee una sola clase, es decir si todos sus estados se comunican entre si, ij i,jE, se dice que la cadena es irreductible.
Ejemplo 7.3.3 Consideremos la siguiente cadena de Markov de espacio de estado E={0,1,2} con la siguiente matriz de transicin: 1 1 0 2 2
P=
1 1
4 3
1 2
4 3
Comprobamos que todos sus estados se comunican, por lo tanto esta cadena es irreductible (tiene una sola clase en el espacio de estado). Si observamos el grafo asociado, vemos posee una sola componente fuertemente conexa, por lo tanto es irreductible (tambin podemos llegar a esta conclusin a partir del hecho que la matriz es tridiagonal, por lo que no se la puede triangularizar por bloques). 1/4
1/2 1/2 0 1/2 1 1/2 2 1/3 2/3
Ejemplo 7.3.4 Sea la cadena de Markov de espacio de estado E= {0,1,2,3} y matriz de transicin P, 1 1 0 0 2 2 1 1 0 0 2 2 P=
1 4 1 4 1 4 1 4
0 0 0 1 Las clases de esta cadena son: {0,1}, {2}, {3}. Nota: si bien los estado 0,1 y 3 son alcanzables desde el estado 2, la accin inversa no es posible. En particular, como p33 = 1, desde el estado 3 no es posible acceder a ningn otro estado, por lo que decimos que 3 es un estado absorbente. El subgrafo asociado tiene 3 componentes fuertemente conexas.
117
Entonces otra forma de expresar las definiciones es decir que el estado i es recurrente si i = 1, transitorio si i < 1. Defimimos Ri el nmero esperado de retornos al estado i (contando el pasaje inicial). Definimos la variable aleatoria indicatriz del pasaje por el estado i en la nsima 1 , si {X n = i} etapa, An = 0 , si {X n i}
Entonces
n =0
y Ri = E
n=0
n =0
E ( An | X 0 = i ) =
n=0
P( X n = i | X 0 = i ) =
n =0
(n ) pii .
Proposicin
El estado i es recurrente si
n =0
El estado i es transitorio si
n =1
Demostracin: Supongamos que el proceso comienza su evolucin en el estado i, X0=i. Si i es recurrente, con probabilidad 1 el proceso eventualmente alcanzar el estado i por segunda vez. Repitiendo el razonamiento, vemos que el proceso pasar por el estado i una infinidad de veces, con probabilidad 1. Si en cambio i es transitorio, cada vez que el estado i es alcanzado existe una probabilidad de no volver jams igual a 1-i, por lo que tenemos que la probabilidad de efectuar exactamente n pasajes por el estado i (contando como uno la estada inicial) se puede expresar como: P(X pase exactamente n veces al estado i | X 0 = i ) = in 1 (1 i ) , probabilidad en la que reconocemos una distribucin geomtrica de esperanza finita 1/(1i); entonces, el nmero esperado de retornos al estado i es Ri = 1 / (1i) , que es finito.
118
Por lo tanto, si logramos calcular la esperanza del nmero de retornos del proceso al estado i, podemos saber si dicho estado es transitorio (esperanza finita) o recurrente (nmero infinito de regresos).
Propiedad En una C.M. finita homognea existe por lo menos un estado recurrente (no pueden ser todos transitorios). Para justificar esta propiedad por el absurdo, supongamos que todos los estados {0,1,2,....,n} de una C.M.F.H. son transitorios. Tomemos una trayectoria cualquiera de la cadena. Al ser el estado 0 transitorio, existir una etapa N0 luego de la cual el estado 0 ser abandonado para siempre. Al ser el estado 1 transitorio, existir tambin una etapa N1 luego de la cual el estado 1 tampoco ser visitado. Y as sucesivamente con todos los n estados. Si tomamos ahora N = mx {N0, N1,....Nn}, N es un nmero natural por ser el mximo de un nmero finito de naturales. Consideremos las etapas siguientes a la N, por ejemplo la etapa N+1: por definicin del espacio de estado, XN+1= i E={0,1,2,....,n}; pero por ser NNk,kE={0,1,2,....,n}, entonces XN+1 k, kE={0,1,2,....,n}, es decir XN+1E={0,1,2,....,n}, y hemos llegado a un absurdo. Por lo tanto no todos los estados de una C.M.F.H. son transitorios, lo que implica que existe al menos un estado recurrente. Corolario 1 La recurrencia es una propiedad de clase: si un estado i es recurrente, e ij, entonces j es recurrente. Demostracin
i j
n =1
i recurrente
(n ) pii =
Aplicando las ecuaciones de ChapmanKolmogorov dos veces, tenemos (n + k ) (n ) (k ) (n ) (k ) n 0, p (jjm + n + k ) = p (jlm ) plj = p (jlm ) plr prj p (jim ) pii pij
l E l E r E
donde el miembro de la izquierda es la probabilidad de ir de j a j en (m+n+k) pasos (incluyendo todos los caminos) y el de la derecha es la probabilidad de ir de j a j va aquellos caminos que pasan por i. Sumando en n tenemos
n =1
( m+ n + k ) pij
(k ) p (jim ) pij
n =1
(n ) = pii
>0
Corolario 2 El corolario anterior implica que la transitoriedad tambin es una propiedad de clase: si i transitorio, ij, entonces j es transitorio. Demostracin: Si j fuese recurrente, como por hiptesis ji, aplicando el corolario anterior tendramos i recurrente, lo que es absurdo. Por lo tanto j es transitorio.
119
Corolario 3 El hecho de que la recurrencia es una propiedad de clase y adems que no todos los estados de una C.M.F pueden ser transitorios, nos permite afirmar que todos los estados de una C.M. finita irreductible son recurrentes. Demostracin: Por definicin, una cadena de Markov irreductible posee una sola clase de estados. Por lo tanto, i j , i , j E Aplicando la propiedad anterior, como la cadena es finita, existe al menos un estado iE recurrente. Por el corolario 1, todos los estados que comunican con i son tambin recurrentes, por lo tanto jE, j es recurrente. Ejemplo 7.3.5 Sea la C.M. cuya matriz de transicin es: 0 0 12 12 1 0 0 0 P= 0 1 0 0 0 1 0 0
Comprobamos que todos los estados se comunican, por lo tanto pertenecen a la misma clase, como adems esta cadena es finita podemos entonces afirmar que todos sus estados son recurrentes.
Ejemplo 7.3.6 Consideremos la C.M. con matriz de transicin 12 12 0 0 0 12 12 0 0 0 P= 0 0 12 12 0 0 0 12 12 0 14 14 0 0 12 Esta matriz est triangularizada por bloques. Podemos diferenciar 3 clases de equivalencia en el espacio de estado: {0,1}, {2,3} y {4}.
Las dos primeras clases son recurrentes. En cambio, la clase {4} es transitoria. Verificando en el grafo asociado:
E0
1/4 1/2 1/2 1/2
E1
1/2 1/2 1/2
1/4
E3
1/2 1/2
E2
120
Definimos fii(n) como la probabilidad de que el primer retorno al estado i se realice en exactamente n etapas, dado que el estado inicial de la cadena es i: f ii (n ) = P( X n = i, X k i, k = 1, , n 1 | X 0 = i ) El clculo de las probabilidades de primer pasaje en n etapas, fij(n), se pueden realizar a travs de las siguientes frmulas de recurrencia fij(1)=pij fij(2)=pij(2)-fij(1)pjj ... fij(n)=pij(n)-fij(1)pjj(n-1)-fij(2)pjj(n-2)...-fij(n-1)pjj Para un estado i recurrente, definimos mii como la esperanza del tiempo del primer retorno al estado i:
mii =
n =1
nf ii (n )
Los estados recurrentes se pueden diferenciar en: 1) recurrentes positivos 2) recurrente nulos. Un estado i es recurrente positivo, si partiendo de i, el tiempo esperado hasta que el proceso retorne al estado i por vez primera es finito, es decir si mii<. Es posible demostrar que todos los estados recurrentes de una cadena de Markov finita son recurrentes positivos. Un estado es recurrente nulo si mii=. En este curso no trataremos este tipo de estados ya que solo aparecen en cadenas de Markov de espacio de estado infinito.
Periodicidad (n ) Se dice que el estado i es peridico si d (i ) = MCD n | p ii > 0 > 1 , y es aperidico si d (i ) = 1 . Si un estado i es peridico de perodo d(i), el proceso puede retornar a dicho estado solamente en las etapas multiplos de d(i).
Propiedad (dem. trivial) Si el estado i tiene un lazo (es decir, si pii>0) entonces su periodicidad ser 1. Propiedad (sin demostracin) Se demuestra tambin que la periodicidad es una propiedad de clase: si i tiene perodo d(i), e ij, entonces j tendr tambin perodo d(i). Propiedad (sin demostracin; ver p.ejemplo Chretienne-Faure, pag. 27) Sea i un estado de una componente conexa C cualquiera. Entonces se puede demostrar que para calcular la periodicidad de i, es suficiente con examinar todos los ciclos de la componente conexa: d (i ) = MCD(n | existe un ciclo simple de largo n en C ) .
121
Una cadena es aperidica si todos sus estados lo son, y peridica en caso contrario.
Ejemplo
i
j (n ) En esta cadena, tenemos que pii > 0 para n = 4,6,8, (2 + 2k ) . Por lo tanto, d(i)=2, o sea que el estado i es peridico de perodo 2. Como adems la cadena es irreductible, todos los estados de la misma tendrn perodo 2. Ejemplo 1/2
j 1/2 i Esta cadena es aperidica, ya que el estado i tiene un lazo, por lo tanto d(i)=1, y como existe una sola clase de estados, todos tendrn periodicidad 1.
Ergodicidad Se define un estado ergdico como aquel que es recurrente positivo y aperidico. Un conjunto K de estados es ergdico si todos los estados que lo componen son ergdicos. Una cadena de Markov es ergdica cuando es irreductible y su espacio de estado es un conjunto de estados ergdicos. Si una cadena de Markov es finita y ergdica, diremos que es una cadena regular. Vector distribucin de estados El vector de distribucin de estados de la cadena en la etapa n, Q(n), es un vector fila estocstico (estocstico=suma de sus elementos igual a 1) que contiene las probabilidades para la n-sima etapa del estado de la cadena:
Q(n ) = 1 (n ) 2 (n )
j (n )
r (n )] , E = {1,2,
, r}, E = r ,
r j =1
j (n ) = 1
donde j (n ) = P( X n = j ), j E es la probabilidad de que el estado de la cadena en la n-sima etapa sea j, independientemente del estado inicial. Condicionando respecto del estado inicial, tenemos que
j (n ) =
que expresado en notacin matricial nos da Q(n ) = Q(0)P n . Podemos obtener el mismo resultado de la siguiente manera:
iE
P( X n = j | X o = i ) P( X o = i )
cadena homognea
iE
(n ) i (0 ) pij
j (n ) =
iE
P( X n = j | X n1 = i ) P( X n1 = i )
cadena homognea
iE
pij i (n 1)
122
que corresponde a la ecuacin Q(n ) = Q(n 1)P , la cual aplicada recursivamente nos permite llegar a Q(n ) = Q(0)P n . Ejemplo: Sea una CMTDH con dos estados, A y B, y matriz de transicin 2/4 2/4 3/4 1/4 Si la distribucin inicial Q(0)=(0,1), entonces Q(1)=(3/4,1/4), Q(2)=(9/16,7/16), Q(3)=(39/64,25/64) Si Q(0)=(1,0), entonces Q(1)=(2/4,2/4), Q(2)=(10/16, 6/16), Q(3)=(38/64,26/64) Si Q(0)=(1/2,1/2), entonces Q(1)=(5/8,3/8), Q(2)=(19/32, 13/32), ...
Definicin.
Un vector estocstico es una distribucin estacionaria cuando si Q(n)=, entonces Q(m)=, para todo m>n. Si estacionaria, si Q(n)=, entonces Q(n+1)=; como Q(n+1)=Q(n)P, tenemos que Q(n+1)=P=. Por lo tanto, toda distribucin estacionaria verifica la ecuacin = P. Recprocamente, todo vector que verifique las ecuaciones = P y
i E
i = 1 ser
una distribucin estacionaria de la cadena de Markov de espacio de estado E y matriz de transicin P. Estas ecuaciones constituyen un sistema lineal de n+1 ecuaciones y n incgnitas. Para resolver este sistema, debemos eliminar una de las ecuaciones redundantes, que puede ser cualquiera exceptuando i = 1.
i E
Es posible que una cadena de Markov admita ms de una distribucin estacionaria, como vemos en el ejemplo siguiente. Sea una cadena de Markov de matriz de transicin P, 12 12 0
P= 12 0
12 0
0 . 1
Al plantear el sistema lineal correspondiente para hallar la distribucin estacionaria constatamos que es indeterminado, admitiendo infinitas soluciones, entre ellas estn las siguientes: 1 2, 1 2, 0 , 1 5, 1 5, 3 5 , etc.
Comportamiento asinttico de una cadena de Markov Estudiaremos ahora el comportamiento de las cadenas de Markov cuando el nmero de etapas n tiende a infinito.
123
iE n
Pn puede estudiarse de forma genrica con tcnicas de transformada z, fuera del alcance de este curso. Cuando
distribucin inicial Q(0), decimos que es la distribucin lmite de la cadena. Se puede demostrar 1) Que para una cadena de Markov ergdica, siempre existe la distribucin lmite, y que adems coincide con la distribucin estacionaria que es nica en este caso. 2) Que para una cadena de Markov finita, irreductible y peridica, siempre existe una nica distribucin estacionaria. Para cadenas peridicas puede no existir una distribucin lmite. Veamos el siguiente ejemplo. Ejemplo 7.3.8 0 1 Sea la cadena de matriz de transicin P, P = . En esta cadena, si el estado 1 0 inicial X0 del proceso es el estado 1, en todas las etapas pares la cadena pasar por el 0 1 estado 1, y en las etapas impares por el estado 2. Podemos ver que P 2 n+1 = y 1 0 1 0 P 2n = para todo n0. Por lo tanto, no existe lim P n , es decir que no tenemos n 0 1 distribucin lmite. Sin embargo existe la distribucin estacionaria 1 2 ,1 2 .
Un vigilante tiene una manzana para cuidar. La vigilancia comienza en una de las esquinas, dirigiendose a las otras de acuerdo a las siguientes probabilidades:
124
p12 = p 23 = p 41 = 1, p 33 = 1 p, p 34 = p . Es decir que le lleva una unidad de tiempo el ir de una esquina a la siguiente, y en la nica esquina donde puede permanecer ms tiempo es en la esquina 3, donde con probabilidad (1-p) decide quedarse por otra unidad de tiempo. El espacio de estado de esta cadena es {1,2,3,4}, donde cada estado corresponde a una esquina en nuestro problema. La cadena se encuentra en el estado i durante la etapa n, Xn=i, cuando el vigilante est en la esquina i durante la n-sima unidad de tiempo. Como el espacio de estado de esta cadena posee una sola clase de equivalencia, entonces la cadena es irreductible, y como es finita, entonces todos los estados son recurrentes positivos. Para estudiar la periodicidad, alcanza con ver que como el estado 3 posee un bucle, por lo tanto d(3)=1; al existir una sola clase, todos los estados tienen la misma periodicidad, 1 en este caso. Tenemos entonces que esta cadena es finita, irreductible y aperidica, entonces es ergdica. Por lo tanto, existe p una distribucin lmite que coincide con la estacionaria, 1 = 2 = 4 = , 3 p +1 1 3 = . 3 p +1
) (
2. Cuando el proceso abandona el estado i, la eleccin del prximo estado j se realiza de acuerdo a las probabilidades de transicin pij definidas para todos los estados i,j de E. Estas probabilidades deben satisfacer pii = 0 , pij = 1, i E .
j E
Es posible entonces considerar que una cadena de Markov en tiempo continuo es un proceso estocstico cuyas transiciones de un estado a otro se realizan de acuerdo a una cadena de Markov discreta, pero donde el tiempo de permanencia en cada estado es una v.a. exponencial en lugar de un valor constante. En una cadena de Markov de tiempo continuo, definimos el generador infinitesimal Q p i j como la matriz tal que qij = ij i . El generador infinitesimal de una cadena i i = j de Markov en tiempo continuo cumple un papel similar al de la matriz de transicin en tiempo discreto. En particular, la distribucin estacionaria de una CMTC X es aquella que se obtiene de resolver el sistema lineal Q=0, con la restriccion adicional i = 1 ; si la cadena es ergdica, la distribucin estacionaria coincide con la distribucin lmite, que existe.
Grafo asociado a una C. M. de tiempo continuo homognea
Sea X={Xn,n0} una cadena de Markov de tiempo continuo de espacio de estado E={1,2,...r}, |E|=r, y generador infinitesimal Q. Podemos asociar un grafo orientado ponderado G=(E,U,W) a la cadena X de la forma siguiente: E (espacio de estado de la cadena) es el conjunto de nodos U = {uij=(i,j)|i,jE, pij>0} es el conjunto de arcos orientados W es la funcin de ponderacin que asigna uij + (i) la probabilidad de transicin pij =qij /(-qii )> 0 correspondiente, W(uij) = pij > 0; y a cada nodo i E la esperanza del tiempo de permanencia 1/vi=1/(-qii). Como la suma de todas las probabilidades de transicin pij para cada fila i debe ser igual a 1, entonces el grafo asociado a una C. M. finita homognea no puede ser cualquiera, sino que la suma de las probabilidades asignadas a los arcos incidentes exteriormente a cada nodo debe ser igual a 1. Aunque el grafo retiene nada ms que las probabilidades de transicin entre dos estados, su estudio es muchas veces suficiente para conocer cualitativamente la evolucin del proceso.
Ejemplo 7.4.1 En un negocio de lustrar zapatos hay 2 sillas (silla 1 y silla 2). Un cliente que llega se dirige primero a la silla 1, donde le limpian los zapatos y le ponen pomada. Despus va a la silla 2 donde le lustran los zapatos. Estos dos servicios se consideran variables aleatorias exponenciales independientes con parmetros respectivos 1 y 2. Supongamos adems que los clientes entran segn una distribucin Poisson de tasa l y que cualquier cliente entra solamente si las dos sillas estan desocupadas.
126
Para analizarlo como una C.M. en tiempo continuo, establecemos un espacio de estados apropiado. En este sistema tendremos siempre 0 1 cliente, siendo adems relevante el saber en que silla se encuentra el cliente por los tiempos del servicio. Entonces E={0,1,2}, donde estado 0 - ningn cliente estado 1 - un cliente, en la silla 1 estado 2 - un cliente, en la silla 2 En cuanto a los tiempos de permanencia en cada estado tenemos: TP0 - intervalo de tiempo hasta que llega el primer cliente, exponencial de tasa l. E( TP0 ) = 1 vo = 1 vo = 1 TP1 - tiempo de permanencia del cliente en la silla 1, exponencial de tasa 1. E( TP1 ) = 1 1 1 = 1 TP2 - tiempo de permanencia del cliente en la silla 2, exponencial de tasa 2. E( TP2 ) = 1 2 2 = 2 Las probabilidades de transicin son: p01 = p12 = p20 = 1. El grafo asociado es: p 01 1/0
0 p p
20 12
1/ 1
2 1/ 2
Comunicacin, clases de equivalencia, componentes fuertemente conexas, recurrencia y transitoriedad: Son conceptos anlogos a los de las CM de tiempo discreto. Periodicidad: En CM de tiempo continuo todos los estados son aperidicos (no existe concepto de estado peridico). Ergodicidad: Toda CM de tiempo continuo homognea finita e irreductible es ergdica. Si la cadena es infinita, puede no ser ergdica (una condicin suficiente para que una cadena irreductible sea ergdica es que los valores i estn acotados superiormente). Vector distribucin de estados El vector de distribucin de estados de la cadena en el instante t, Q(t), es un vector fila estocstico (estocstico=suma de sus elementos igual a 1) que contiene las probabilidades en el instante t del estado de la cadena:
Q(t ) = 1 (t ) 2 (t )
j (t )
r (t )] , E = { 1,2, , r}, E = r ,
r j =1
j (t ) = 1
127
donde j (t ) = P( X n = j ), j E es la probabilidad de que el estado de la cadena en la n-sima etapa sea j, independientemente del estado inicial. Condicionando respecto del estado inicial, tenemos que
j (t ) =
iE
P( X t = j | X o = i ) P ( X o = i )
cadena homognea
iE
pij (t ) i (0 ) .
estacionaria de la cadena de Markov de tiempo continuo de espacio de estado E y generador infinitesimal Q. Estas ecuaciones constituyen un sistema lineal de n+1 ecuaciones y n incgnitas. Para resolver este sistema, debemos eliminar una de las ecuaciones redundantes, que puede ser cualquiera exceptuando i = 1.
i E
Es posible que una cadena de Markov admita ms de una distribucin estacionaria, en cuyo caso el sistema lineal correspondiente para hallar la distribucin estacionaria ser compatible indeterminado.
Comportamiento asinttico de una cadena de Markov Estudiaremos ahora el comportamiento de las cadenas de Markov cuando t tiende a infinito. Para esto, estudiaremos j E , j = lm j (t ) = lm i (0) pij (t ) .
t tn
iE
Q(0), decimos que es la distribucin lmite de la cadena. Se puede demostrar que para una cadena de Markov de tiempo continuo finita y ergdica, siempre existe la distribucin lmite, y que adems coincide con la distribucin estacionaria que es nica en este caso. (ver en las pginas anteriores la discusin sobre ergodicidad). Ecuaciones de balance de flujo: Si es una distribucin estacionaria, entonces para cualquier subconjunto A del espacio de estados E, se verifica la siguiente propiedad (que corresponde a las llamadas ecuaciones de balances de flujo): qij i = q ji j .
i A
jE / A
jE / A
iA
De manera recproca, un conjunto independiente de n-1 de estas ecuaciones junto con la condicin de estocsticidad pueden ser empleadas para generar un sistema lineal cuya solucin es son las distribuciones estacionarias (si existen).
128
Un proceso de conteo es homogneo en el tiempo si el nmero de eventos en un intervalo depende solamente de la longitud del mismo, y no de su instante inicial: r1 < r2 , s > 0 : n 0 : P( N r2 + s N r1 + s = n) = P N r2 N r1 = n . Un proceso de conteo es de incrementos independientes si el nmero de eventos contados en intervalos de tiempos disjuntos son independientes: s, t : n, m 0 : P( N t N s = n, N s = m ) = P( N t N s = n )P( N s = m ) .
Un caso particular de los procesos de conteo son los procesos de Poisson. Un proceso de conteo {N t , t 0} es de Poisson si verifica las siguientes propiedades adicionales: el proceso es homogneo en el tiempo y de incrementos independientes. P( N h = 1) = h + o(h ) = p1 (h ) probabilidad de un evento en el intervalo (0, h] . P( N h 2 ) = o(h ), o(h ) 0 probabilidad de ms de un evento en (0, h] .
h 0
A partir de estas condiciones se demuestra que la probabilidad de que ocurran n eventos en el intervalo (0, t ] corresponde a una distribucin de Poisson,
pn (t ) = P( N t = n ) =
n
e t (t ) , de esperanza E( N t ) = t = Var ( N t ) . n! Es decir que el proceso resultante de contar el nmero de eventos sucedidos en un intervalo de tiempo t posee una distribucin de Poisson de tasa t.
Distribucin de los tiempos entre llegadas Consideremos un Proceso de Poisson {Nt , tT}, notemos T1 el intervalo de tiempo hasta que ocurre el primer evento y para n > 1 notemos Tn el lapso de tiempo entre el (n1)-simo evento y el n-simo evento. La secuencia {Tn, n=1,2,3....} es llamada secuencia de los tiempos entre llegadas sucesivas.
129
3 2 1 t 0 t 1 t
T 0
T 1
Determinemos la distribucin de la variable aleatoria continua Tn. Estudiemos primero T1. El evento {T1 > t} = {N(t) = 0} corresponde a la no ocurrencia de ningn evento del proceso en el intervalo (0,t], entonces P(T1 > t ) = P( N t = 0 ) = p0 (t ) = e t . Por lo tanto T1 posee distribucin exponencial, de media 1/. Veamos ahora T2. P(T2 > t )
prob. condiciona l
P T2 > t | T1 = s f T1 (s )ds
P T2 > t | T1 = s e s ds
Tenemos que
P T2 > t | T1 = s = P N t + s N s = 0 | N s = 1
) (
P( N t + s N s = 0 )
crecimient o homogneo
P(N t = 0) = p0 (t ) = e t
P(T2 > t ) = e t e s ds = e t e s ds
0 0
e s ds =1
e t = P T2 > t | T1 = s
Por lo tanto concluimos que la variable aleatoria T2 tambin es exponencial, y su esperanza es 1/. Ademas T1 y T2 son independientes ya que P(T2 > t|T1 = s) = P(T2> t). Con el mismo esquema, podemos demostrar que T3, T4, T5, etc., son variables aleatorias exponenciales independientes, cuyo valor esperado es 1/ . Recprocamente, una secuencia{Tn, n> 1} de variables aleatorias exponenciales independientes de esperanza 1/ define un proceso de Poisson de tasa , N t = {max{n / S n t}} con S n =
n i =1
130
Ejemplo 7.5.1 Supongamos que la inmigracin a un pas se realiza segn un proceso de Poisson, de tasa = 1 inmigrante/da. Calculemos la probabilidad de que el tiempo transcurrido entre el dcimo y el undcimo inmigrante exceda los dos das: P{T11 > 2} = e-2 = e-2 0,133
Propiedad Todo proceso de nacimiento y muerte de parmetros {n }n=0 y { n }n=1 es equivalente a una cadena de Markov de tiempo continuo con espacio de estado E = {0,1,2,.....} y en la que desde cualquier estado n solamente hay transiciones hacia los estados n+1 y n-1 (donde n corresponde al nmero de individuos en el sistema modelado).
1 1
2
2 2
3
3 3
4
n n
n+1
n+1 n+1
n+2
La relacin entre las tasas de nacimiento y muerte del proceso con las tasas y probabilidades de transicin de la cadena son las siguientes: 1. 0=0 ; i > 0 i=i+i tasa de transicin - suma de tasas de llegada y salida 2. probabilidades de transicin: p01 = 1 pi,i+1 = i /(i+i) i > 0 - probabilidad de que ocurra una llegada antes pi,i1 = i /(i+i) i > 0 - probabilidad de que ocurra una partida antes.
131
Algunos casos particulares de procesos de nacimiento y muerte son los siguientes: 1. procesos de Yule n=n,n, n=0, n (nacimiento puro, tasa lineal). 2. modelo de crecimiento lineal n=n,n, n=n, n . 3. procesos de Poisson n= n, n=0 n (nacimiento puro, tasa constante).
Propiedad - Condicin de estabilidad de un proceso de nacimiento y muerte A) Todo proceso de nacimiento y muerte con espacio de estados finito es estable. B) Todo proceso de nacimiento y muerte con espacio de estados infinito y de parmetros {n }n=0 y { n }n=1 es estable (su cadena de Markov subyacente posee una distribucin estacionaria nica que coincide con la distribucin lmite) si y solo si se verifican las siguientes condiciones:
n = 0 k =o n
k
k +1
< =
n = 0 k =o
k +1
k +1
En los modelos ms utilizados de sistemas de colas, el sistema queda determinado por la distribucin de probabilidad de los tiempos de llegada de los clientes, la distribucin del tiempo de servicio, y el nmero de servidores existentes. Nosotros presentaremos sistemas de colas en los que la disciplina de espera en la fila es FIFO (el primer cliente en llegar es el primer cliente que es atendido), y donde las distribuciones definidas son exponenciales. Estos modelos de cola se pueden modelar como cadenas de Markov de tiempo continuo, {X(t), t>0}, procesos estocsticos sin memoria, donde el comportamiento futuro depende solamente del estado presente.
132
Para caracterizar en forma suscinta uno de estos modelos, se utiliza la siguiente notacin (llamada Notacin de Kendall): distribucin de llegadas / distribucin del servicio / nmero de servidores [/ tamao de la fila de espera /poblacin total del sistema/disciplina de la fila]. Las distribuciones de llegadas y servicios ms comunes se especifican mediante un cdigo de una letra: M para la distribucin exponencial ("markoviana"), Ek para la distribucin Erlang de k etapas, D para la distribucin determinstica (tiempo constante), G para la distribucin "general" (distribucin de probabilidad arbitraria). Las disciplinas de la fila se suelen especificar con un acrnimo, del estilo First In First Out o Primero Entrar Primero Salir: los ms comunes son FIFO (primero en llegar - primero en ser atendido), LIFO (ltimo en llegar primero en ser atendido), Random (eleccin aleatoria entre los clientes que esperan), PS (processor sharing - atencin multiplexada entre todos los clientes que esperan), etc.
133
Para poder determinar las pn haremos uso de la propiedad de equilibrio de flujos (vista al estudiar las cadenas de Markov de tiempo continuo). Esta propiedad puede reexpresarse en este contexto con la siguiente formulacin: Para cualquier estado n (n = 0, 1, ...) del sistema, la tasa media (nmero esperado de ocurrencias por unidad de tiempo) a la que ocurren los eventos de entrada a un estado o conjunto de estados debe ser igual a la tasa media a la que ocurren los eventos de salida de ese estado o conjunto de estados. Este principio se expresa mediante las ecuaciones de balance para el estado n o para un conjunto de estados Cn. Luego de construir las ecuaciones de balance para cada estado, en trminos de probabilidades estacionarias pn desconocidas, puede resolverse el sistema para hallar las probabilidades. Veamos ahora como determinar las ecuaciones de balance. Considrese el estado 0. El proceso entra a este estado solamente desde el estado 1. Por tanto, la probabilidad en estado estacionario de encontrarse en el estado 0 (es decir, p0), representa la proporcin de veces que es posible llegar al estado 0. Dado que si el proceso se encuentra en el estado 1, la tasa media de entrar al estado 0 es 1. Es decir, la tasa media global a la cual el proceso entra al estado 0 es 1p1. Con el mismo razonamiento, la tasa media global a la cual el proceso sale del estado 0 es 1p1. Entonces, la ecuacin de balance para el estado 0 es 1p1 = 0p0 Para el resto de los estados, existen dos transiciones posibles, tanto hacia adentro como hacia fuera del estado. Las ecuaciones de balance se resumen a continuacin:
Estados 0 0, 1 0, 1, 2 ... 0, 1, ..., n-1 0, 1, ... , n-1, n ... Ecuacin de balance 1p1 = 0p0 2p2 = 1 p1 3p3 = 2 p2 ... npn = n-1pn-1 n+1pn+1 = npn ...
Dado que el sistema formado por las ecuaciones de balance hasta el n-simo conjunto de estados contiene siempre n + 1 ecuaciones, podemos resolverlo en funcin de p0. Luego, imponiendo que los pn sean una distribucin de probabilidades, es decir que sumen 1, puede hallarse p0.
134
0 1 2 ... n ...
p n = 1 , o sea p0 +
n =1
n =1
Resumiendo, la distribucin de probabilidades en estado estacionario para una fila de espera con llegadas de Poisson y tiempos de servicio exponenciales es:
p0
= 1+
n =1
pn =
El resultado anterior y los siguientes se obtienen suponiendo que las tasas permiten alcanzar un estado estacionario. Esto siempre se cumple si n = 0 para algn valor de n (es decir, cuando slo es posible un nmero finito de estados). En el caso general, aplicando la propiedad vista para los procesos de nacimiento y n1 ...0 n ...1 converge, y la serie diverge, la estabilidad muerte, si la serie n =1 n ...1 n =1 n ...1 del sistema est garantizada, pues P0 est bien definido (y por ende, todas las dems probabilidades en estado estacionario).
135
Con esta informacin podemos calcular la cantidad media de clientes en el sistema como el valor esperado del estado del proceso:
n=
n =0
np n
Sea s el nmero de servidores del sistema. El largo esperado de la fila est dado por la esperanza de la cantidad de personas en la fila (ntese que decimos la cantidad de personas en la fila y no en el sistema). Supongamos que el proceso se encuentra en el estado n (es decir, hay n clientes en el sistema). Si n s, entonces todos los clientes estn siendo atendidos y la fila tiene largo 0. Si n > s, habr n s clientes en la fila y s clientes siendo atendidos (fuera de la fila). En resumen, el largo esperado de la fila es:
n=s
(n s ) pn
De manera similar, podemos definir la cantidad esperada de servidores ocupados. Sea s la cantidad de servidores del sistema. Supongamos que hay n clientes en el sistema. Si n s entonces la cantidad de servidores ocupados es n. En cambio, si n > s la cantidad de servidores ocupados es s (pues no hay mas de s servidores). Por lo tanto, definimos
=
Observe que se cumple n = + .
Ecuaciones de Little
s n =1
nPn +
n = s +1
sp n
Las ecuaciones de Little expresan que para cualquier sistema o subsistema dado, en estado estacionario el nmero medio de clientes dentro es igual a la tasa media de entrada de clientes por el tiempo medio de permanencia en ese sistema o subsistema. Casos particulares: el nmero medio de clientes en el sistema, el nmero medio de clientes en la cola, el tiempo esperado de permanencia en el sistema y el tiempo esperado de permanencia en la fila satisfacen las siguientes igualdades:
n = ts
= t f
Donde es la tasa media de llegadas, que viene dada por =
n =0
n p n .
136
ts =
Hemos obtenido ecuaciones para diversas medidas de inters (en estado estacionario) sobre filas de espera con llegadas de Poisson y tiempos de servicio exponenciales sin hacer suposiciones acerca de las tasas de llegada y de atencin. A continuacin aplicaremos estos resultados genricos para establecer resultados en modelos especficos. A continuacin presentamos un estudio de algunos modelos simples de filas de espera con llegadas de Poisson y tiempos de servicio exponenciales.
137
Vamos a calcular las probabilidades de estado pn para nuestra fila M/M/1. Considerando el estado 0 (aqul en el que no hay clientes en el sistema), vemos que este estado se abandona solamente cuando ocurre un arribo, por lo que la tasa de salida es p0 ( es la intensidad de llegadas, p0 es la probabilidad de que el proceso se encuentre en el estado 0, o lo que es lo mismo la proporcin del tiempo total en que el proceso est en el estado 0). Las entradas al estado 0 se realizan desde el estado 1, cuando un cliente abandona el sistema. La tasa de servicio es y la probabilidad de que haya un solo cliente en el sistema es p1, entonces la tasa con que el sistema entra o alcanza el estado 0 es p1. Aplicando el principio de equilibrio de tasas, tenemos entonces la siguiente ecuacin: p0 = p1. Consideremos ahora los estados 0 y 1. El proceso abandona este connjunto de estados solamente por un arribo en el estado 1, que ocurre a una tasa . Por otro lado, el proceso ingresa al estado 1 desde el estado 2 cuando hay una partida. Entonces la intensidad de entrada es p1. La ecuacin a la que se llega luego de aplicar el principio de equilibrio es ( )p1 = p2. Con un razonamiento similar para los dems estados, obtenemos las siguientes ecuaciones, llamadas ecuaciones de balance:
p0 = p1 pn = pn+1 n>0. Reescribiendo, tenemos p1 = p0 p n +1 = p n , n 1 que puede ser resuelto en trminos de p0: p1 = p0
p2 = p1 = p3 = p1 =
p n +1
p0
3
p0
n +1
= pn =
p0
1=
n =0
pn =
n =0
si <1
p0
p0
1 1
La condicin de que / < 1 es necesaria para que la serie sea convergente. Es tambin la condicin de estabilidad de este sistema de colas.
138
pn = ( ) (1 ), n 1
n
Condicin de estabilidad de la fila Supongamos que > . Como los cliente llegan segn un proceso de Poisson de tasa , el nmero esperado de clientes que llegan en un intervalo de tiempo t, es t, E(Nt)= t, t0.
Si siempre hay clientes para atender, el nmero de clientes atendidos es un proceso Poisson de tasa , ya que los tiempos de servicio, que son los tiempos entre servicios sucesivos, son v.a. exponenciales independientes de valor esperado 1/. Por eso el nmero esperado de clientes atendidos en el mismo intervalo de tiempo t es E(A(t)) t. Por ende el nmero esperado de clientes en el sistema durante el intervalo de tiempo t es E(NCt) t - t = ( - )t = nmero esperado de llegadas menos nmero esperado de atendidos. Si > , cuando t, entonces E(NCt) tiende a infinito, es decir que la cola crecera indefinidamente sin lmite y entonces no existira rgimen estable. En este caso no tiene sentido intentar calcular las probabilidades pn. Entonces la condicin para que exista un rgimen estable es que <, o equivalentemente /<1. Esta condicin puede ser expresada lo como la condicin de que la esperanza del tiempo de servicio 1/ sea menor que el valor esperado del tiempo entre arribos sucesivos 1/. Derivamos ahora los valores de algunas cantidades en trminos de las probabilidades estacionarias.
1 = = 2 ( ) (1 )
ts =
t f = t s E (tiempo de servicio) = t s
Nmero esperado de clientes en la cola
( )
1aplicamos
x
n =0
nx n 1 =
x , x < 1. (1 + x )2
139
Ejemplo 7.7.1
a) Supongamos que los clientes llegan segn un Proceso Poisson a razn de 1 cada 12 minutos y que el tiempo de atencin o servicio es exponencial de tasa un servicio n=2 cada 8 minutos. Calculando, tenemos que t s = 24 b) Aumentamos la tasa de arribos en un 20%. Al calcular, llegamos a
n=4 t s = 40
Observamos que aumentando un 20 % la tasa de arribo, el nmero esperado de clientes en el sistema se duplica. Esto sucede porque cuando / se acerca a 1, un pequeo aumento en la carga del sistema, / , lleva a una gran disminucin en el rendimiento del mismo.
n = n si n < s n = s si n s
Recordar que si se tiene n V.A. exponenciales independientes T1, ..., Tn de parmetros 1, ..., n entonces min(T1, ..., Tn) es una V.A. exponencial de parmetro i.
2
140
0
1
...
s-1
...
s+1
...
n n+1
(s-1)
Condicin de estabilidad
Empleando las condiciones de estabilidad precedentes, podemos deducir que un sistema de este tipo alcanzar un estado estacionario si se cumple la siguiente condicin: < s
Distribucin estacionaria
En ese caso, la distribucin de probabilidades en estado estacionario de cada estado (que se obtiene aplicando las ecuaciones genricas de la seccin anterior) estn dadas por:
P0 = 1 Pn
s 1 n =0
( / )n + ( / )s
n! s!
1 1 ( / s )
si 0 n s 0 n! ( / )n P si s n Pn = 0 s!s n s
( / )n P =
=
=
n= s
(n s )Pn
jPj + s
cambio de variable j = n s
sustituyendo Pn por su valor
j =0
( / ) j+s j P
s!s j
j =0
( / )s =
s!
s!
s
s
P0
P0
( / )s =
j =0
j s
1
2
j 1
1 s
sabiendo que
j =0
j j 1 =
1 cuando < 1 (1 )2
141
s! 1 s
reordenando trminos
tf =
s P0 ( / ) ( / s ) 1 = 2
s! 1
ts = t f +
0
Es decir,
( 1)
1 2
( 2)
...
(n+2) (n+1)
( n)
( n 1)
n-1
n+1
...
n = ( M n) n = 0 n =
Condicin de estabilidad
Al ser n = 0 a partir de n = M, el sistema siempre alcanzar un estado estacionario (por propiedades vistas en estabilidad de cadenas de Markov y procesos de nacimiento y muerte).
Distribucin estacionaria
Aplicando las ecuaciones genricas, hallamos la distribucin estacionaria del sistema:
P0 = 1
M n =0
M! ( M n)!
n
M! Pn = ( M n)! Pn = 0
P0
=
= =
M n =1 M n =1
M n =1
(n 1) Pn
M n =1
nPn
Pn
nPn (1 P0 )
=M
+ (1 P0 )
143
nPn = + (1 P0 ) = M
(1 P0 )
=
= =
n=0 M
n Pn
( M n)Pn MPn
M n =0 M
aplicando la definicin pues Pn = (M n)Pn cuando 0 n M y Pn = 0 en otro caso separando trminos sacando las constantes fuera de la sumatoria por ser P0 + ... + PM = 1 sacando factor comn
n =0 M n =0
= M
Pn
n =0 M
nPn nPn
= M n = (M n )
n =0
0
1
( 1)
2
( 2)
(s+2) (s+1)
...
s-1 s
( s)
s+1
( sn 1)
...
M
s
(s-1)
144
Es decir,
n = ( M n ) n = 0 n = n n = s
Condicin de estabilidad
Al igual que para el caso con un solo servidor con fuente de entrada limitada, el sistema siempre alcanzar un estado estacionario, pues el nmero de estados alcanzables es finito.
Distribucin estacionaria
M! n = 0 ( M n)!n!
s 1 n
M! + n s n = s ( M n)!s! s
M
M! Pn = (m n)!n!
P0
n
M! Pn = n s (m n)!s!s Pn = 0
Los clculos de las cantidades de inters se realizan de manera similar a los casos anteriores.
Para todo sistema de filas de espera en equilibrio, y tal que el proceso de llegada de clientes es un proceso de Poisson, la probabilidad que un cliente al llegar observe al sistema en un estado n dado es igual a la probabilidad asinttica de que el sistema se encuentre en ese estado (pn) Esta propiedad permite calcular diversas medidas. A manera de ejemplo: la probabilidad de que un cliente al llegar encuentre el sistema vaco, es igual a la probabilidad de que el sistema est vaco, p0; en un sistema con un nmero finito de lugares de espera, la probabilidad de que un cliente al llegar sea rechazado es igual a la probabilidad del sistema se encuentre en el estado correspondiente a esa cantidad de clientes en espera.
145
146
8.2 Modelos
Un modelo es el cuerpo de informacin relativa a un sistema recabado con el fin de estudiarlo, un modelo no es slo un sustituto del sistema, es tambin su simplificacin. Adems no existe un modelo nico de un sistema, ya que cada objeto de estudio establecido determinar la naturaleza de la informacin a reunir. Existe una gran diversidad en la manera de clasificar los tipos de modelos en el estudio de sistemas. A veces la clasificacin se realiza segn la naturaleza del sistema a estudiar, a saber: 1) continuo vs. discreto 2) determinstico vs. aleatorio. Consideremos una primera divisin en modelos fsicos y matemticos: Modelo fsico matemtico
esttico
dinmico
esttico
dinmico
numrico
analtico
numrico
Simulacin de Sistemas Esta primera divisin se realiza para tener en cuenta que un modelo no es necesariamente una descripcin matemtica del sistema, existen por ejemplo: modelos a escala que se utilizan en los tneles de viento, tanques de agua para estudiar el diseo de naves acuticas, modelos a escala de cursos de ros, de puertos (ej: Puerto de la Paloma, estudiado por el IMFIA), diversos tipos de modelos. La tercera distincin (nivel) se realiza segn la tcnica empleada para resolver el modelo. En un modelo matemtico, las entidades de un sistema y sus atributos se representan mediante variables y las actividades mediante funciones que interrelacionan las variables (ej. restricciones). Un modelo esttico despliega las relaciones entre los atributos del sistema cuando est en equilibrio, sin mostrar la manera en que cambian los valores de los atributos (no existen actividades).
147
Un modelo matemtico dinmico permite deducir los cambios de los atributos del sistema en funcin del tiempo y dependiendo de la complejidad del modelo, la deduccin puede hacerse con una solucin analtica o por clculo numrico (ej: el comportamiento de la llanta de un auto en movimiento se modela con ecuaciones diferenciales de 2 orden). Los modelos matemticos dinmicos que se pueden resolver analticamente y que dan resultados prcticos aplicables no son del todo comunes. Lo ms frecuente es que esos problemas deban resolverse mediante mtodos numricos y la simulacin es uno de esos mtodos. Un ejemplo de modelo matemtico dinmico es el que describe las condiciones bajo las cuales vibra la estructura de una aeronave, modelo que se puede plantear pero no resolver analticamente. La cuestin de si habr o no vibraciones se puede determinar numricamente calculando las races de determinadas ecuaciones asociadas. En este caso los clculos numricos no constituyen simulacin, ya que el clculo no sigue el movimiento de la estructura de la aeronave en el tiempo, es sencillamente un procedimiento para determinar las races de una ecuacin, es un mtodo numrico puro. Se tratar de simulacin si los clculos tienen en cuenta los cambios producidos en el tiempo, es decir si describimos a travs de algn mecanismo la distintas variaciones producidas en determinado intervalo de tiempo.
Durante el curso se hace hincapi en el planteo y resolucin de los modelos matemticos en forma analtica, ya que por lo general el enfoque analtico es superior al de la simulacin en cuanto a la exactitud de la resolucin del problema. Sin embargo muchos problemas son tan complejos que no se pueden resolver analticamente, lo que nos impedir tomar una decisin. Slo entonces se deber recurrir a la simulacin, cuando sea el nico enfoque prctico del problema. Se debe destacar que a medida que aparecieron computadoras ms rpidas se comenz a experimentar ms y ms en la utilizacin de modelos numricos y en la simulacin hasta que en la actualidad esta tcnica se usa en reas tan diversas como: - construccin de prototipos de automviles, aviones, armas de guerra - medicina - procesos de produccin - modelos economtricos - problemas logsticos.
148
Toma tambin gran importancia para algunas aplicaciones la simulacin grfica o icnica, la cual, como su nombre indica, no slo est basada en un modelo numrico matemtico que permite obtener los valores que se desea estudiar, sino que permite visualizar el desarrollo de la simulacin.
Ventajas de la simulacin en computadoras:
1) Permite estudiar y experimentar en las complejas relaciones e interacciones que existen y ocurren en el interior de un sistema real. 2) Permite experimentar sobre un sistema que puede no existir en la realidad (de otra manera sera imposible) y en este caso asiste a la decisin de construirlo o no. 3) Se ahorra mucho tiempo y dinero y se evitan riesgos. 4) Se logra independencia de la duracin real del evento. Por ejemplo se puede simular procesos muy largos como muy cortos: - Estudiar el crecimiento de una cierta planta mediante simulacin en poco tiempo, lo que en la realidad puede llevar mas de 400 aos. - Estudiar las reacciones nucleares que son eventos que ocurren en millonsimas de segundo. 5) Se puede estudiar como reacciona el sistema al introducir variantes, sin correr riesgos (estudio de sensibilidad). 6) Se puede aplicar para verificar soluciones analticas (Montecarlo). Ofrece mayor facilidad para estudiar sistemas dinmicos y no determinsticos
Luego podr establecerse un plan de trabajo que permitir controlar el desarrollo del trabajo, impidiendo que ele estudio se desbalancee concentrndose en algn aspecto del problema a costa de otro. Un fracaso comn en los estudios de simulacin es concentrarse demasiado en estas fases y extraer ms datos de los necesarios o de los que pueden validarse con los datos disponibles. En el tercer paso para construir un modelo, debemos a) establecer la estructura del modelo, decidiendo cuales son los aspectos significativos del problema en el comportamiento del sistema. b) reunir los datos necesarios que proporcionen parmetros correctos para el modelo El cuarto paso, la construccin de un programa, es una tarea relativamente bien definida y no necesariamente fcil. El modelo establecer las especificaciones de lo que se debe programar. En algunas ocasiones, las etapas 3 y 4 pueden realizarse en paralelo. Se puede contar con lenguajes especficos de simulacin que brindan al usuario no solamente el lenguaje en s, sino tambin un conjunto de conceptos de modelado que se utilizan para describir el sistema, con herramientas de especificacin del mismo, facilitando la conversin del modelo a programa de computadora, e incluso en algunos casos liberando al usuario de mucho detalle de programacin, brindando facilidades de generacin de cdigo a travs de esqueletos estndar. Simulacin Continua: 1130/CSMP, 360 CSMP y DYNAMO. Simulacin a Eventos Discretos: GPSS, SIMSCRIPT, SDL/SIM. Para ambos: SIMULA, lenguaje nrdico orientado a objetos, que a pesar de su edad, continua siendo el ms elegante creado para simular, que engloba varios conceptos de sistemas y modelado, entidad, atributos, actitudes... Por supuesto que se puede programar simuladores en C++, ADA, PROLOG, MODULA, FORTRAN , PASCAL, etc. El quinto paso: validacin del modelo, requiere una gran cuota de juicio y criterio comn, ya que las hiptesis hechas al establecer el modelo deben comprobarse observando si el modelo se comporta como se esper. En realidad se debera validar el modelo matemtico antes de iniciar la programacin, pero generalmente la razn de la simulacin es que el modelo no es manejable, entonces por regla general la validacin se desarrolla examinando la versin programada del modelo (a la vez que se pueden observar errores de programacin). El sexto paso es el diseo de un conjunto de experimentos de acuerdo a las objetivos del estudio. Una falla comn es la obtencin de una masa abrumadora de resultados
150
que se recaban sin plan determinado. Se debe tener en cuenta tambin el significado estadstico de los resultados ante la presencia de eventos aleatorios en la simulacin. Por ltimo el sptimo paso es ejecutar las interpretar los resultados. corridas planificadas y estudiar o
Si el estudio ha sido bien planificado se habr planteado un conjunto bien definido de preguntas y el anlisis tratar de responderlas. Por supuesto, estas etapas no son del todo secuenciales sino que muchas veces debe volverse atrs y afinar incluso los objetivos e hiptesis planteadas.
151
Al menos que especficamente se exprese de manera contraria, el trmino "tiempo de simulacin", significa el tiempo del reloj indicado y no el tiempo que ha necesitado la computadora para realizar la simulacin (tiempo de cmputo) es ms, por lo general, no existe una relacin directa entre ambos. Si simulsemos el sistema operativo de una computadora, en el que los eventos reales ocurren en intervalos medios en fracciones de microsegundos, aunque la realizsemos en una mquina de alta velocidad, notaramos que la simulacin tomara fcilmente miles de veces ms tiempo que la operacin real del sistema. Por otro lado, para la simulacin de un sistema econmico, en el que se ha estudiado eventos que ocurren una vez al ao, es fcil realizar una operacin de cien aos en unos cuantos minutos de clculo. Existen dos mtodos para actualizar el tiempo del reloj, a los que llamamos mecanismo de control de flujo de tiempo. a) el reloj avanza a la hora en que debe ocurrir el siguiente evento, conocido como mecanismo orientado al evento. b) el reloj avanza en intervalos pequeos (generalmente uniformes) y en cada intervalo se determina si debe ocurrir un evento o no, llamado mecanismo orientado a intervalos, usado normalmente en simulacin continua.
Ejemplo: Simulamos la llegada de barcos a un muelle, para contabilizar la cantidad de barcos que llegan a l y su tiempo de espera para atracar.
Comienzo <Max := tiempo del perodo de simulacin> <Sortear el tiempo de la prxima llegada: T(prx lleg)> <Crear una entidad barco, asignarle atributo tiempo de llegada: barco.t(lleg)> <Reloj := T(prx.lleg)> Mientras reloj<Max <Actualizar contador de barcos llegados> <Actualizar la cola de barcos en espera por muelles segn el tiempo del Reloj y tomar los datos pertinentes> Si <hay algn muelle libre> <Quitar el primero de la cola> <Calcular tiempo de espera: Reloj-barco.t(lleg)> <Sortear tiempo de ocupacin del muelle> <Ocupar el muelle libre> Si no <Colocar el barco llegado como ltimo en la cola> Fin si <Sortear T(prx. lleg)> Reloj := Reloj + T(prx. lleg) Fin mientras <Procesar los resultados (estadsticos) de la corrida> Fin
152
- Simulacin estadstica: a veces llamada Mtodo Monte Carlo, es el muestreo de los mundos posibles de nuestro sistema, mtodo que estudiaremos con ms detalle.
Por ejemplo si un generador de nmeros naturales del 1 al 5 nos entrega la sucesin 1 2 3 4 5 1 2 3 4 5 ... la misma es uniforme pero esta totalmente correlacionada ==> no hay aleatoriedad. Existen Tests para comprobar que un generador cumpla estas dos condiciones. Veremos tres formas diferentes de generar nmeros aleatorios: 1) Utilizacin de tablas de nmeros aleatorios. 2) Nmeros generados en forma aleatoria. 3) Nmeros pseudoaleatorios
153
El mtodo bsicamente consiste en interrumpir un proceso uniforme en forma aleatoria (que es esencialmente lo que ocurre cuando la bola cae en un casillero de la ruleta). Estos mtodos tienen la misma ventaja que el primero o sea que se obtienen nmeros aleatorios puros y como desventajas se puede decir que si se desea generar la misma secuencia de nmeros ms de una vez, es necesario grabarla puesto que no hay forma de asegurarse de obtener la misma secuencia automticamente. Veremos dos ejemplos, uno en base a la utilizacin de un circuito especial y el otro simplemente con un programa y la participacin de un operador.
Ejemplo 1. HARDWARE GENERATOR
Es una tarjeta que se coloca en el slot de un PC, genera nmeros aleatorios reales y su costo en 1985 era de 600 dlares (lo que representa un costo que no aparece si utilizamos generadores de nmeros pseudoaleatorios ). Funciona de la siguiente forma: Tiene un oscilador que enva pulsos que son contados por un contador digital. Los momentos de arranque y parada del oscilador se controlan en forma aleatoria con los pulsos que provee la descarga de un istopo radioactivo (el primero prende el oscilador y pone el contador en 0, el segundo apaga el oscilador y devuelve el nmero). El nmeros de pulsos del oscilador que cuente el contador ser el nmero aleatorio generado. 1er. pulso ISOTOPO 2do. pulso 0 +1 CONTADOR Cuenta nro. aleatorio
Ejemplo 2. Programa que al ser interrumpido por el operador entrega un nmero aleatorio entre 1 y 100.
ON OSCILADOR OFF
pulso
While not exit For i:=1 to 100 Char := inkey If Char= " " then print i End For End While
154
Como la mquina hace ms de 1 milln de operaciones por segundo existe una gran disparidad entre el toque de tecla por intermedio del operador el programa y la velocidad con que se ejecuta el loop, por lo que no se podr gobernar el ritmo, ya que si as fuera el operador podra "manejar" los resultados.
Este mtodo fue planteado por Von Neumann en 1950. Se basa en tomar un nmero, elevarlo al cuadrado y tomar los dgitos del centro como nuevo nmero, luego repetir el procedimiento. Ejemplo con 4 dgitos : 2061 4247721 2477 6135529 1355 ...
La desventaja es que la secuencia generada por lo general es corta. El ejemplo anterior luego de 34 nmeros degenera a 0; y si en lugar de empezar con 2061 empezamos con 2500, se repite 2500 en la primer iteracin (y por lo tanto, en todas las restantes). An as si se toman nmeros muy largo se puede llegar a secuencias de 100,000 nmeros diferentes.
Mtodo Congruencial Lineal
Este mtodo es el utilizado por excelencia y se basa en la siguiente recurrencia : Zi = ( A * Zi-1 + C ) mod M de donde se deduce que : Zi = A * Zi-1 + C - (A * Zi-1 + C) / M * M
155
(notacin: x : mayor entero menor o igual a x) y se puede demostrar por induccin completa que : Zn = ( Z0 * An + (An 1)/(A - 1) * C ) mod M Si se quieren obtener nmero Uniformes (0,1) se normaliza el resultado: Ui = Zi /M Ejemplos: a) A = 3, C = 0, M = 5 y Z0 = 4: 2,1,3,4,2,1,... b) A = 3, C = 0, M = 9 y Z0 = 4: 3,0,0,... Se desprende del ejemplo que en este mtodo si se repite un nmero ya se repite toda la secuencia. Presenta la ventaja de gastar poca memoria y ser muy rpido. Adems es muy fcil volver a generar la misma secuencia guardando un solo nmero ( alcanza con partir de la misma semilla Z0 ). Es muy importante la eleccin de las constantes A, C, M y la semilla Z0 ya sea para la velocidad de generacin como sobre todo para el largo de la secuencia. En la prctica para aumentar la velocidad de clculo se suele tomar M=, donde es el nmero base de operacin de la mquina, por lo que en mquinas binarias =2, esto permite calcular muy fcilmente el resto y efectuar la normalizacin a U(0,1) operando con desplazamientos y no con divisiones y multiplicaciones. Con respecto al largo del perodo de la secuencia siempre ser menor o igual a M y es deseable obtener el largo mximo (o sea M) aunque no siempre es posible. Cuando se obtiene largo mximo se dice que el mtodo es de Perodo Completo. Se distinguen dos casos segn el valor de C. Si C = 0 , se llama METODO CONGRUENCIAL MULTIPLICATIVO PURO Si C 0 , se llama METODO CONGRUENCIAL MULTIPLICATIVO MIXTO
Este test sirve para probar la uniformidad de la secuencia de los nmeros generados (aunque se puede utilizar para comprobar otras funciones de distribucin ). El mtodo consiste en tomar n observaciones independientes de la variable aleatoria (en nuestro caso los nmeros generados ) que llamaremos X1, X2, ... ,Xn Se divide el intervalo de variacin de la variable aleatoria (V.A.) en K categoras, debiendo conocer la probabilidad Ps de que la v.a. caiga en cada categora s.
156
Sea Ys la cantidad de valores de Xi que caen en la categora s. Tenemos entonces : Y1+ Y2+ ... +Yn = n P1+ P2 + ... + Pn = 1 Construimos el estimador: V =
k s =1
(Ys nPs )
nPs con k-1 grados de
Se desprende que el n debe ser grande para que el test sea vlido y adems se debe cumplir que nPs > 5 para todo s. Para aplicar el mtodo se calcula el valor de V y se analiza el mismo utilizando la tabla de (ver por ejemplo el Apndice 5 del Hillier-Lieberman). Dado un nivel de significacin (por ejemplo 0,05 o 95 %) nos fijamos en la tabla el valor correspondiente a ese nivel y a los k-1 grados de libertad. Si V es mayor que el valor crtico fijado en la tabla se rechaza la hiptesis de que la V.A. tenga la distribucin en cuestin y sino se acepta. Para probar que los nmeros estn uniformemente distribuidos planteamos la hiptesis de que tienen distribucin uniforme, por lo tanto dividimos el intervalo en K categoras con la probabilidad de caer en cada una igual a 1/K. Ejemplo: tomo 10 categoras, 95 % de significacin, me fijo en la tabla de y el valor crtico es 16,9. Calculo V, con los Yi obtenidos contando los 1000 Xi generados con el programa ( n = 1000 ) y con Ps = 1/10 para todo s. Si para un caso concreto V result ser 3,76 ( o sea menor que 16,9 ) se dice que "se pasa" la prueba y se puede concluir que el programa genera nmeros aleatorios uniformemente distribuidos.
Test Serial
Este test sirve para probar la correlacin seria de la secuencia de nmeros observados. Se agrupa la muestra en pares de valores los cuales deben estar distribuidos uniformemente y en forma independiente. La muestra es de 2n valores. Considero las n parejas X2j, X2j+1 con 0j n: (X 0 , X 1 ) (X 2 , X 3 ) ( X 2n 2 , X 2n 1 ) 1 2 n 1 Cada pareja tiene probabilidad P(X2j, X2j+1 ) = 1/K, y tendremos K categoras (que son la cantidad de combinaciones posibles de las parejas de valores ). Se aplica el test de con K-1 grados de libertad con el mismo criterio que definimos anteriormente.
157
Aplicando el mtodo al mismo ejemplo que tomamos en la seccin anterior se calcula el V pero ahora tendremos 10 = 100 categoras y cada una con Ps = 1/100.
p i = 1 ).
2 p1 p1+ p2
n 1-pn 1 y
entonces cada vez que realicemos un experimento para sortear X, tomamos un valor u de distribucin U(0,1) y construimos el punto y=u. Si este punto aparece en el intervalo correspondiente al nmero i aceptamos que X=xi en este sorteo. La validez de este mtodo se debe a que al estar u uniformemente distribuida en [0,1] la probabilidad de que u pertenezca a uno de los intervalos es igual a la longitud del mismo. P(0 u p1 ) = p1 0 P( p1 u p1 + p 2 ) = p 2 P(1 p n1 u 1) = p n
Ejemplo: Una V.A. X puede tomar los valores : rojo con prob. 1/6, azul con prob. 1/3 y blanco con prob. 1/2. Armo el esquema: rojo azul blanco
Sorteo u =
158
0,4343
azul
Se define la V.A. X con distribucin geomtrica donde X es el nmero de pruebas de Bernoulli (experimento con solo 2 resultados que llamaremos xito o fracaso ) con xito antes de que ocurra un fracaso en la prueba (X+1)-sima. La v.a. X tiene la siguiente ley de probabilidad : P( X = a ) = p a (1 p ) donde p es la probabilidad de xito y (1-p) la de fracaso. Se puede generar una V.A. geomtrica con el siguiente algoritmo : 1) i := 0 2) Generar u , v.a. U(0,1) 3) Si u p hacer i := i + 1 e ir al paso 2 Sino devolver i como la V.A. geomtrica de parmetro p
Se utiliza para generar v.a. continuas. Para generar una v.a. X con distribucin FX ( x ) =
x
distribucin uniforme U(0,1) y hacemos X = FX1 (U ) . Calculando, vemos que P( X x ) = P F X1 (U ) x = P[U F X ( x )] = F X ( x ) , es decir que la v.a. X generada de esta manera posee la distribucin deseada. En resumen el mtodo consiste en igualar la funcin de distribucin a una V.A. U uniforme (0,1) y poder despejar X en funcin de U, como ya sabemos como generar las V.A. U(0,1), teniendo las mismas generamos las X deseadas. U = FX ( x ) X = FX1 (U )
El problema se reduce a encontrar una expresin analtica de la funcin inversa a la de distribucin. Esto no necesariamente es una tarea sencilla, aunque siempre existe solucin dado que la derivada de FX es fX , que es siempre 0 y montona creciente. Otro problema con el enfoque es el hecho de que aun cuando se encuentre la expresin analtica de la inversa de la distribucin, su clculo puede insumir demasiados recursos.
159
Interpretacin Geomtrica :
1 FX(x) u
Ejemplo: Distribucin Uniforme U(a,b) x x 1 1 FX ( x ) = dt ; entonces se toma u = dt ; integrando llegamos a a ba a ba xa x = a + u (b a ) , donde x ser una v.a. U(a,b) si tomamos u una v.a. u= ba U(0,1) (que puede ser obtenida a partir de un nmero seudoaleatorio, generado con los mtodos vistos en la seccin 2).
Ejemplo: Distribucin Exponencial de parmetro a. FX ( x ) = 1 e ax e ax = 1 u ax = ln(1 u ) x = (1 / a) ln(u ) Tomamos u = 1 e ax ya que tomar la V.A. 1-u es lo mismo que u ( porque u es U(0,1)).
Entonces x = (1 / a) ln(u ) es una v.a. exponencial de parmetro a con u v.a.. U(0,1) que se genera con uno de los mtodos vistos en la seccin 2.
1 2
e x
/2
Describiremos el mtodo Polar para la generacin de v.a. N(0,1), ya que la funcin de distribucin de una v.a. normal no tiene inversa de resolucin analtica. 1) Sean u1 y u2 v.a. de distribucin U(0,1); definimos v1 = 2u1 1 v2 = 2u2 1 s = v1 + v2
2 2
( (
) )
160
El mtodo genera 2 v.a. por vez y se llama Polar porque es equivalente a hacer: Generar R U(0,1) , U(0,2) y tomar
x1 = 2 R ln R 2 cos x2 =
2
( ) 2 R ln (R ) sen
Teniendo una v.a. X que sea N(0,1) se pasa directamente a una Y que es N(a,) 2 2 1 con densidad fY ( y ) = e ( y a ) / 2 , tomando y = x + a es N(a,). 2 Resumiendo, en una simulacin se toman muestras de distribuciones para proveer a las actividades de tiempos reales, y establecer criterios realistas de decisin. Puede usarse muchas distribuciones diferentes; muchas veces es necesario hacer hiptesis sobre a qu distribucin corresponden los eventos que se estudian, esto debe ser realizado con especial cuidado, basando la eleccin de las distribuciones y los valores de sus parmetros en informacin recogida o brindada por las personas que trabajan con el sistema real a simular.
161
162
y hacemos que alguien con los ojos vendados tire dardos a la tabla. Los dardos van a perforar la tabla en N puntos aleatorios. Cmo podemos estimar el rea del cuadrado S a partir de esos puntos? Nos fijamos cuntos puntos estn dentro de S (sean N'); supongamos que N'=5, siendo N=40. Entonces la estimacin del rea de S est dada por N'/N=5/40=1/8=0,125, siendo el valor exacto en este dibujo 0,3*0,3=0,09. Ntese que el rea buscada cumple la relacin N'/N (independiente de la forma del rea incgnita) y que cuanto mayor sea N ms nos vamos a acercar a la relacin S/1. Para que este mtodo de calcular el rea tenga validez, los puntos aleatorios deben estar distribuidos en forma uniforme en la superficie total, y deben ser obtenidos en forma independiente.
Clculo de
Veremos, a modo de ejemplo, como calcular una aproximacin del valor , mediante el mtodo MonteCarlo (este problema tiene soluciones eficientes en forma analtica o numrica). 1) Tomamos un crculo de radio 1 centrado en el origen, sabemos que el rea del cuarto de crculo inscrito en el ortante positivo es /4. 2) Sorteamos puntos en el ortante positivo de lado 1 y lo hacemos obteniendo dos valores, uno para x (abscisa) y otro para y (ordenada) cada vez, obteniendo un punto (x,y). 3) Contamos cuantos puntos de los sorteados caen dentro del rea del cuarto de crculo (In) y cuntos fuera (Out), sabiendo que si x2+y2>1 el punto est fuera, y si no dentro. 4) El valor estimado del rea que queremos hallar es In/(In+Out), y ese valor ser aproximadamente el de /4, por lo que ser aproximadamente igual a 4* In/(In+Out) (en este caso, N=In+Out). Esta forma de calcular es relativamente lenta y poco precisa, pero muestra la forma de utilizar MonteCarlo, que en el caso de otras constantes es el nico mtodo disponible.
Justificacin terica
Sea X una v.a. con esperanza E(X) = m y varianza Var(X) = . Tomo una sucesin de n v.a. Xi independientes y con igual distribucin , siendo E(Xi) = m y Var(Xi) = . Por el teorema Central del Lmite la v.a. Z = X1 + X2 + X3 + .... + Xn se aproxima (y es asintticamente igual) a una v.a. con distribucin normal N(nm, n).
163
Aplicando la "regla de las 3", tenemos que para una v.a. Y de distribucin N(a, ):
a 3
a 3
Lo que significa que podemos estimar m , es decir la esperanza o valor medio de la v.a. X, calculando el promedio de las distintas muestras obtenidas: ( X i )/ N , sabiendo que con probabilidad muy cercana a 1, el error de este promedio est acotado por la cifra 3/N. Esto sugiere que para que el mtodo tenga un buen resultado N debe ser grande y pequea, por lo que es importante saber cual es el valor de la varianza obtenida, con ello sabemos cul es la dispersin de las muestras obtenidas. La varianza 2 se estima con el siguiente clculo:
1 Var ( X ) N 1
N j =1
(X )
j
1 N
N j =1
Xj
Se debe tener especial cuidado en que todas las N corridas sean independientes entre s, para asegurar que los valores Xi son muestras de v.a. independientes y que por lo tanto estamos dentro de las hiptesis del teorema central del lmite. Esta independencia se asegura utilizando distintas semillas en el sorteo de las v.a. Xi , de acuerdo a lo visto en las secciones anteriores.
164