Análisis de Redes y Programación Dinámica

26
REPÚBLICA BOLIVARIANA DE VENEZUELA INSTITUTO UNIVERSITARIO POLITÉCNICO “SANTIAGO MARIÑO” EXTENSIÓN MATURÍN SECCIÓN “E” INVESTIGACIÓN DE OPERACIONES: ANÁLISIS DE REDES Y PROGRAMACIÓN DINÁMICA Autores: Cristian Guerra, 23754600 José Acosta, 24864589 Luis Larrain, 23731478 Mariajosé Monterola, 25028913 María Araujo, 24503624 Marlis Suarez, 25268621 Asesor: Lourdes Leal

description

Análisis de Redes.

Transcript of Análisis de Redes y Programación Dinámica

REPBLICA BOLIVARIANA DE VENEZUELAINSTITUTO UNIVERSITARIO POLITCNICOSANTIAGO MARIOEXTENSIN MATURN SECCIN E

INVESTIGACIN DE OPERACIONES:ANLISIS DE REDES Y PROGRAMACIN DINMICA

Autores: Cristian Guerra, 23754600 Jos Acosta, 24864589Luis Larrain, 23731478Mariajos Monterola, 25028913Mara Araujo, 24503624 Marlis Suarez, 25268621Asesor: Lourdes Leal

Maturn, Julio de 2014

ContenidoINTRODUCCINError! Marcador no definido.

ANLISIS DE REDES

Las redes son representaciones graficas de una serie de eventos u actividades que suceden en un medio cualquiera y que se programa para lograr un determinado objetivo. Un evento o suceso se representa en la red por un crculo que se conoce como nodo, los cuales tambin pueden indicar, generalmente, puntos geogrficos o estaciones en algunos casos. Las actividades dentro de la red suelen sealarse por ramas que unen a los nodos y las cuales pueden sealar sentidos o direcciones en las que hay algn movimiento: estas ramas pueden ser dirigidas si tienen solo un sentido o direccin se indica por una punta de flecha en la rama y no dirigidas si permiten el trnsito en las dos direcciones. Una rama no dirigida puede representarse por dos ramas dirigidas en sentidos opuestos. En la siguiente figura se muestran estos dos tipos de ramas, siendo AB y AC no dirigidas y BD, CB y DC ramas dirigidas.

La modelacin de redes dentro del rea de I.O. permite la resolucin de mltiples problemas de programacin matemtica mediante la implementacin de algoritmos especiales, conocidos como algoritmos de optimizacin de redes. Dentro de los problemas ms comnmente resueltos mediante la modelacin de redes se encuentran los modelos de transporte, transbordo, adems de los muy conocidos modelos de determinacin de cronograma de actividades para proyectos; estos se estudiarn de manera breve ms adelante.Entre los conceptos bsicos que contiene la Teora de Redes tenemos:

1. Grfica: Una grfica es una serie de puntos llamados nodos que van unidos por unas lneas llamadas ramales o arcos.

2. Red: Una red es una grfica que presenta algn tipo de flujo en sus ramales. Por ejemplo, una grfica cuyo flujo en sus ramales sea la electricidad es una red elctrica. En las redes se usa una simbologa especfica para denotar su tamao y elementos que la constituyen, dicha notacin es la (N, A) donde N representa el nmero de nodos que contiene la red y A representa el nmero de arcos o ramales.

3. Cadena: Una cadena corresponde a una serie de elementos ramales que van de un nodo a otro. En el siguiente caso se resalta una cadena que va desde el nodo 1 hasta el nodo 7 y que se compone por los elementos [1-4, 4-7] (ver ilustracin anterior).

4. Ruta: Una ruta corresponde a los nodos que constituyen una cadena; en el siguiente caso, por ejemplo, [1, 4, 7].

5. Ciclo: Un ciclo corresponde a la cadena que une a un nodo con sigo mismo. En el siguiente ejemplo, el ciclo est compuesto por la cadena [4-2, 2-5, 5-7, 7-4].

6. Ramal orientado: Un ramal o arco orientado es aquel que tiene un sentido determinado, es decir, que posee un nodo fuente y un nodo destino.

7. Grfica orientada: Una grfica orientada es aquella en la cual todos sus ramales se encuentran orientadas.

8. rbol de expansin: Un rbol de expansin es aquel rbol que enlaza todos los nodos de la red, y que por lo tanto no permite la existencia de ciclos. Un rbol puede ser definido como una grfica en la cual no existen ciclos, como en la ilustracin siguiente.

Hay que acotar que si el rbol tiene exactamente una rama menos que su nmero de nodos, se le conoce como rbol de expansin. A su vez, al flujo o trnsito que una rama puede permitir se le conoce como capacidad de flujo de la rama, y toda rama, comnmente, lleva asociado a ella un costo.

9. Nodo fuente: El nodo fuente es aquel nodo en el cual todos sus ramales se encuentran orientados hacia afuera.

10. Nodo destino: El nodo destino es aquel nodo en el cual todos sus ramales se encuentran orientados hacia l.

Si la entrada y la salida nodales son iguales, hablaremos entonces de un nodo de transbordo. Los modelos de redes tienen una gran importancia dado que muchos problemas comerciales y de transporte pueden ser resueltos a travs de ellos garantizando una solucin bastante entera. Una de las ventajas de los modelos de redes es que estos no necesitan restricciones adicionales, pues la red expresa la mayora de las caractersticas del problema y, a su vez, los algoritmos a utilizar suelen ser bastante sencillos pero, por supuesto, siempre habr una gran influencia matemtica en los mismos. Es justo por esto que, an en los modelos de redes, el uso de un medio mecanizado como las computadoras para su resolucin sigue siendo imperativo.

El Anlisis de Redes cuenta con dos problemas principales:

Problema de Transporte

Este problema consiste en decidir cuntas unidades trasladar desde ciertos puntos de origen hasta ciertos puntos de destino (centros de distribucin, ciudades, entre otros) con el objetivo de minimizar los costos de transporte, dada la oferta y demanda en dichos puntos. Se suponen conocidos los costos unitarios de transporte, los requerimientos de demanda y la oferta disponible.Un ejemplo sera el de llevar un camin de camisas hacia un punto de distribucin: debemos hacer un nodo de inicio (desde donde parte el camin) y un nodo final u objetivo (hasta donde se quiere llegar) y poner en medio las diversas situaciones que se pueden presentar (puestos comerciales, gasolineras, daos por asfaltado, entre otros). Los modelos de redes nos permiten visualizar de una manera bastante objetiva este tipo de problemas.

Problema de Camino ms Corto

El ttulo que lleva este tipo de problemas no deja mucho a la imaginacin: su objetivo es hallar la ruta mnima o ms corta entre dos puntos. Este mnimo puede ser la distancia entre los puntos de origen y destino o bien el tiempo transcurrido para trasladarse desde un punto a otro. Se aplica mucho para problemas de redes de comunicaciones, por ejemplo. Este tipo de problemas pueden ser resueltos por el mtodo del Simplex, sin embargo, existen otros mtodos ms eficientes como por ejemplo el algoritmo de Dijkstra o el de Bellman-Ford (ms famoso). La diferencia crasa entre el problema del camino ms corto y el problema de transporte es que el primero no se enfoca tanto en lo econmico o financiero si no ms que todo en los factores fsicos del problema: tiempo y distancia. Un problema, sin embargo, para su ptima resolucin, puede ser enfocado a ambos aspectos; es decir, tomar en cuenta el tiempo y la distancia y, a su vez, los costos en los que se deba transcurrir.

PROGRAMACIN DINMICA

La P.D. puede ser definida dentro del campo de I.O. como una tcnica de programacin matemtica que proporciona un procedimiento sistemtico para determinar la combinacin ptima de una serie de decisiones interrelacionadas. A su vez, nos permite descomponer un problema en sub-problemas de menor tamao y por consiguiente ms fcil de calcular; divide y vencers es el lema seguido por esta tcnica. Para poder entender de manera ms eficiente esta tcnica debemos resaltar los siguientes conceptos:

1. Etapas: El problema generalmente se divide en diversas etapas que requieren una poltica de decisin en cada una de ellas para continuar. Por ejemplo, si estamos en Venezuela y queremos llegar hasta Chile, las etapas podran ser Venezuela, Colombia, Per, Brasil, Bolivia, y Chile; son cada uno de los puntos por donde podemos pasar para llegar a nuestro objetivo.

2. Estados asociados: Cada etapa tiene cierto nmero de estados asociados con su inicio. Los estados son las decisiones que podemos tomar en una etapa para pasar a otra. Por ejemplo, si tomamos el ejemplo anterior, nuestra primera etapa es Venezuela, y en esta podemos tomar diversos estados (decisiones) que nos dirijan a otra etapa (Colombia, Brasil): si escogemos ir hacia el sur llegaremos a Brasil, y si escogemos ir por el suroeste llegaremos a Colombia. Cada decisin, a su vez, tiene un costo asociado.

3. Diseo de solucin: El procedimiento de solucin est diseado para encontrar una decisin ptima para el problema completo, es decir, una receta de decisin ptima en cada etapa para cada uno de los estados posibles.

4. Principio de optimalidad:

a. Dado el estado actual, una decisin ptima para las etapas restantes es independiente de la decisin adoptada en etapas anteriores.b. La decisin inmediata ptima depende slo del estado actual y no de cmo se lleg ah.

La P.D. normalmente resuelve el problema en etapas: los clculos en las diferentes etapas se enlazan a travs de clculos recursivos de manera que se genere una solucin ptima factible a todo el problema; por lo tanto, la programacin dinmica es un enfoque general para la solucin de problemas en los que es necesario tomar decisiones en etapas sucesivas. Las decisiones tomadas en una etapa establecen la evolucin futura del sistema (etapas), afectando a las situaciones en las que el sistema se encontrar en el futuro y a las decisiones que se plantearn, justo como ir siguiendo un camino que te presenta diversas rutas, y estas rutas te lleva a otros rutas pero, a la final, todas estas llegan a un mismo sitio pero con costos o distancias distintas. La idea es seguir la ruta menos costosa, o ms rpida, segn sea el caso.Conviene resaltar que a diferencia de la programacin lineal, el modelado de problemas de programacin dinmica no sigue una forma estndar. As, para cada problema ser necesario especificar cada uno de los componentes que caracterizan dichos problema. Existen cuatro mtodos o conceptos a travs de los cuales podemos resolver un problema de programacin dinmica:

1. Principio de Optimalidad de Bellman.2. Definicin Recursiva de la solucin ptima.3. Enfoque ascendente.4. Bsqueda solucin ptima.

El principio de optimalidad de Bellman es el ms famoso y usado (al menos al empezar a estudiar el tema), sin embargo, llega a ser muy emprico o poco exacto. En este contexto, "optimizar" equivale a seleccionar o buscar la mejor solucin de entre muchas posibles alternativas sin tomar en cuenta decisiones futuras. En palabras de Bellman: "dada una secuencia ptima de decisiones, toda sub-secuencia de ella es, a su vez, ptima". Nos dice que es posible el ir tomando decisiones con la confianza de que la combinacin de ellas seguir siendo ptima, siempre y cuando una primera decisin haya sido ptima entre todas las dems (el primer estado de la primera etapa). Sin embargo, esto no es as, y lo podremos comprobar en un ejercicio ms adelante. Es justo en este tipo de situaciones donde interviene la P.D.Entre las caractersticas bsicas que tiene la Programacin Dinmica, se encuentran:

1. El problema se puede dividir en etapas que requieren una poltica de decisin en cada una de ellas. 2. Cada etapa tiene cierto nmero de estados asociados con su inicio. Los estados son las distintas condiciones posibles en las que se puede encontrar el sistema en cada etapa del problema. 3. El efecto de la poltica de decisin en cada etapa es transformar el estado actual en un estado asociado con el inicio de la siguiente etapa. 4. El procedimiento de solucin est diseado para encontrar una poltica ptima de decisin para el problema completo. 5. Dado el estado actual, una poltica ptima de decisin para las etapas restantes es independiente de la poltica adoptada en etapas anteriores. Este es el principio de optimalidad para programacin dinmica, y rechaza la teora de Bellman. 6. El procedimiento de solucin se inicia al encontrar la poltica ptima para la ltima etapa.

Todo problema de programacin dinmica debe contar, o al menos debemos encontrarle, los siguientes factores:

1. La identificacin de etapas, estados y variables de decisin. Cada etapa debe tener asociado una o ms decisiones o problemas de optimizacin, cuya dependencia de las decisiones anteriores est dada exclusivamente por las variables de estado. Cada estado debe contener toda la informacin relevante para la toma de decisin asociada al periodo.

2. Descripcin de ecuaciones de recurrencia. Nos deben indicar como se acumula la funcin de los beneficios a optimizar, y cmo varan las funciones de estado de una etapa a otra.

3. Resolucin. Finalmente debemos optimizar cada sub-problema por etapas en funcin de los resultados de la resolucin del problema siguiente. Al final obtendremos una solucin ptima para el problema.

Nota: El ejercicio resuelto de P.D. se encuentra en la siguiente pgina.Ejemplo de la resolucin de un ejercicio de Programacin Dinmica

Una diligencia debe atravesar el oeste estadounidense en plena fiebre del oro. Cada uno de los tramos de su recorrido est cubierto por una pliza de seguro, cuyo costo es directamente proporcional al riesgo presente durante el viaje. El recorrido se inicia en la ciudad A y tiene como destino la ciudad J. La ilustracin siguiente demuestra los costos de la pliza que cubre el viaje entre las dos ciudades; por ejemplo, la pliza del viaje entre A y C tiene un costo de 3 bolvares. El conductor, por lo tanto, desea la ruta ms segura econmicamente: aquella que represente menos costo.

Una manera de resolver el ejercicio es ir seleccionando los caminos ms baratos de manera seguida. Por ejemplo, la decisin barata para escoger en A es ir hacia B, pues supone un costo de 2 bolvares; luego, en B, se escoge el camino ms barato hacia F, luego hacia I, y luego, como decisin nica, hacia J. Esto nos dara un costo total de 13 bolvares.Sin embargo, esta no es la solucin ptima: hay rutas que podemos seguir que nos proporcionarn un costo mucho menor a 13 bolvares. Este mtodo que seguimos anteriormente seguir los costos mnimos es un mtodo muy emprico y heurstico y nada matemtico. Nosotros podemos arriesgarnos siguiendo al inicio un camino costoso o simplemente no el ms barato con el objetivo de obtener luego, en una futura ciudad o punto, un costo muchsimo menor. Por ejemplo, si seguimos la ruta ADFIJ obtendremos un mejor resultado que el seguido (ABFIJ), ya que obtendramos un costo de 11 bolvares, y siguiendo los costos mnimos obtenamos un costo de 13 bolvares. Con esto podemos llegar a la conclusin de que a veces un primer viaje caro nos puede llevar a un segundo o tercero muy barato; esto es algo que no podramos llegar a observar de una manera tan emprica, y es por esto que nos dirigimos a una metodologa especfica: la programacin dinmica nos lleva a mejorar la eficiencia de los casos. En primer lugar debe notarse que cualquiera que sea la solucin se deber realizar 4 etapas de camino: una por cada decisin a tomar. Por lo tanto, se resolver el problema para cada una de las etapas, agregando en cada paso una etapa ms hasta llegar al destino y, con ello, a la solucin ptima. Antes de esto debemos definir las siguientes variables y ecuaciones:

a) n representar el estado en donde nos encontremos; es decir, en A, B, C, entre otros. A partir de n es que vamos a observar las distintas decisiones. b) Xn (n = 1, 2, 3) presentar las decisiones a tener en cada ciudad. Por ejemplo, X1 representar las distintas ciudades a las que podemos ir estando en 1 (que es el primer estado, es decir, A), los cuales seran B, C y D.c) X0 representar la etapa anterior. Por ejemplo, si n=2, esta variable reflejar X1.d) s representar los puntos a los cuales podemos ir. e) Los * representan la decisin ptima: aquella de menor costo. Siempre en un primer punto la solucin ptima va a ser el primer punto, pues no se puede ir desde otro camino. Por ejemplo, si a partir de A podemos llegar a B, C o D; slo tenemos la ruta a partir de A: no hay otra etapa anterior a travs de la cual podamos partir. Eso lo resaltaremos al empezar la metodologa. f) , esta frmula reflejar el costo total que existe desde la primera etapa (en este caso A) hasta el punto que se refleje en la tabla. Esto se explicar de una manera ms puntual al empezar la metodologa, pues no es sencillo de entender sin un ejemplo. Empezamos la metodologa de la siguiente manera:

Para n = 1 (estando en A, la primera etapa)

En la primera columna colocaremos s, que representa los puntos a los cuales podemos ir, en la segunda columna usaremos la ecuacin que reflejar el costo entre el punto inicial y s. Sin embargo, a ser apenas el primer anlisis, se reducen a cero la mayora de los subndices.

Para n = 2 (estando en B, C, D; la segunda etapa)

En la primera columna volvemos a escribir la variable s, en donde reflejaremos los puntos a los que podemos ir. En la segunda columna [] vamos a colocar el costo que exista entre el punto inicial (A) pasando por los puntos de la segunda etapa (B, C, D) hasta los puntos de la tercera (s). Por ejemplo, entre A y B se cobran 2 bolvares, y entre B y E 7; es por esto que en la primera fila, intercepcin en la intercepcin de B y E hay un costo de 9. Haremos esto con todos los dems puntos, formndose una matriz. En las dems columnas (*) colocamos los costos ms bajos y en qu puntos se consiguieron.

Para n = 3

En base a los valores ptimos (*) obtenidos para E, F y G (7, 4 y 8, respectivamente), vamos a realizar una nueva tabla ahora en una tercera etapa, en donde las decisiones a tomar se basan en H e I. Por ejemplo, el punto ptimo para llegar a E era a travs de C o D (obtenamos los mismos valores; revisar la figura anterior) obteniendo un costo de 7 bolvares, y de E hasta H hay un costo de un bolvar; es por esto que el valor es de 8 bolvares. Haremos esto en cada una de las columnas y filas con el objetivo de saber desde qu punto (E, F o G) podemos llegar a H o I de la manera ms barata. Podemos ver que en E se obtendr un costo de 8 bolvares para ir a H y en F un costo de 7 para ir a I. Estos son los costos ms baratos, ahora vamos a ver qu suceder con nuestra ltima etapa.

Para n = 4

La nica decisin que podemos tomar es J. Todos las rutas conducen a ese punto, y es justo el punto a donde queremos llegar, sin embargo, estamos en H o en I y podemos que no importa desde qu punto partamos, desde ambos obtenemos un mismo costo. Para ir hasta H acumulbamos un costo de 8 bolvares, y de H a J hay 3 bolvares, por lo tanto, tenemos un costo total de 11. Ahora, por otro lado, para ir hasta I acumulbamos un costo de 7 bolvares, un bolvar menos, sin embargo, para ir de I hasta J se requieren 4 bolvares, sumando de igual manera 11. Las rutas ptimas (todas nos dan 11 bolvares) seran entonces:

ACEHJADEHJADFIJ

Estas las obtenemos simplemente al unir el conjunto de Fn* (ver penltima columna de las tablas), las cuales nos proporcionan los puntos ptimos a escoger a lo largo de cada etapa. De esta manera podemos ver que no podemos slo basarnos en los costos del ahora, si no en los costos por venir. Hoy ahorramos, pero maana podramos llegar a gastar ms debido a este ahora. Este es slo una de los tantos ejercicios que podemos resolver a travs de la programacin dinmica. Uno de los tantos ejercicios que nos permite visualizar una red en su definicin, sin embargo, la cantidad de variables que pueden surgir son grandes; no todos los ejercicios llegan a ser tan sencillos como el resuelto.

BIBLIOGRAFA

Hillier, Frederick S. y Lieberman, Gerald J. (1997) Introduccin a la Investigacin de Operaciones; sexta edicin; Mxico: Mc. Graw-Hill.

Moskowitz, Herbert y Wright, Gordon P. (1991) Investigacin de Operaciones; Mxico: Prentice-Hall Hispanoamericana, S. A.

Sasieni, Maurice; Yaspan, Arthur y Friedman, Lawrence (1992) Investigacin de Operaciones (Mtodos y Problemas); Mxico: Limusa.

Shamblin, James E. y Stevens, G. T, Jr. (1993); Investigacin de Operaciones (Un enfoque fundamental) Mxico: Mc. Graw-Hill.

Taha, Hamdy (1995); Investigacin de Operaciones quinta edicin; Mxico: Alfaomega.

16