Utilizando esta formulación para el problema de transporte de la P&T Co. presentado en la sección 7.2 se llego a la red que se muestra en la figura 10.10
domingo, 30 de noviembre de 2014
Casos especiales - El Problema de Transporte
Utilizando esta formulación para el problema de transporte de la P&T Co. presentado en la sección 7.2 se llego a la red que se muestra en la figura 10.10
sábado, 29 de noviembre de 2014
Propiedad de soluciones enteras (III)
Ahora obsérvese el patrón de coeficientes para cada variable en el conjunto de cinco restricciones de arco. Cada variable tiene exactamente dos coeficientes distintos de cero, uno es +1 y el otro es -1. Este patrón aparece en todos los problemas de flujo de costo mínimo y es esta estructura especial la que lleva a la propiedad de soluciones enteras.
Otra consecuencia de esta estructura especial es que una (cualquiera) de las restricciones de arco es redundante. La razón es que si se suman todas estas ecuaciones sólo se obtienen ceros en ambos lados (suponiendo que existen soluciones factibles para que las bi sumen cero), por lo que el negativo de cualquier ecuación es igual a la suma de las demás. Con (n-1) restricciones de arco no redundantes, estas ecuaciones proporcionan exactamente (n-1) variables básicas para una solución básica factible. En la siguiente sección se verá que el método símplex de redes trata las restricciones xij ≤ uij como simétricas de las restricciones de no negatividad; así, el número total de variables básicas es (n-1). Esto conduce a una correspondencia directa entre los (n-1) arcos de un árbol de expansión y las (n-1) variables básicas. Se hablará más sobre esto más adelante.
Pronto se resolverá este ejemplo aplicando el método simplex de transporte. Pero ahora se analizará la manera en que los cinco casos especiales mencionados se ajustan al formato del problema del flujo de costo mínimo. Para cada caso, se mostrará cómo formular su ejemplo prototipo en esta forma más general.
viernes, 28 de noviembre de 2014
Propiedad de soluciones enteras (II)
El modelo de programación lineal para este ejemplo es
jueves, 27 de noviembre de 2014
Propiedad de soluciones enteras (I)
En la figura 10.9 se muestra un ejemplo del problema de flujo de costo mínimo. Esta es la misma que la de la figura 10.2, excepto que ahora se agregaron los valores de bi, cij, y uij.
miércoles, 26 de noviembre de 2014
Formulación (III)
En la práctica, con frecuencia las cantidades bi y uij tendrán valores enteros y la solución requerirá que las cantidades de flujo (las xij) sean también enteros. Por fortuna, igual que para el problema de transporte, este tipo de solución está garantizado sin tener que establecer restricciones enteras en forma explicita sobre las variables. Esto se debe a la siguiente propiedad.
martes, 25 de noviembre de 2014
Formulación (II)
En algunas aplicaciones, es necesario tener una cota inferior Lij > 0 para el flujo por cada arco i→ j. Cuando esto ocurre se hace una traslación de variables , xij = xij - Lij, donde xij se sustituye por (x'ij + Lij) en todo el modelo, con el fin de ajustar el modelo al formato anterior con restricciones de no negatividad.
No se garantiza que el problema posea soluciones factibles; esto depende en parte de que arcos se tienen en la red y de sus capacidades. De cualquier manera, para una red diseñada razonablemente, la condición necesaria más importante es la siguiente:
lunes, 24 de noviembre de 2014
Formulación (I)
domingo, 23 de noviembre de 2014
Problema del flujo de costo mínimo
La razón por al que el problema del flujo de costo mínimo se puede resolver de manera tan eficiente es que se puede formular como un problema de programación lineal, y por tanto, se puede resolver mediante una versión simplificada del método símplex llamada método símplex de redes. En la siguiente sección se describirá este algoritmo.
sábado, 22 de noviembre de 2014
Ejemplo Algoritmo para el problema del flujo máximo (V)
Para ilustrar esto, considérese en la figura 10.5 la cortadura que se indica en la figura 10.8. Nótese que el valor de la cortadura es (3+4+1+6) =14 que, según se había encontrado , corresponde al máximo el valor de F, por lo que se tata de una cortadura mínima. Nótese también que en la red residual obtenida en la iteración 7, en donde = 14, la cortadura correspondiente tiene el valor cero. Si estos se hubiera observado, no habría sido necesario buscar trayectorias aumentadas adicionales.
viernes, 21 de noviembre de 2014
Ejemplo Algoritmo para el problema del flujo máximo (IV)
jueves, 20 de noviembre de 2014
Ejemplo Algoritmo para el problema del flujo máximo (III)
Este ejemplo ilustra en forma sencilla la razón para sustituir el arco i →j en la red residual y después aumentar en c* la capacidad residual de éste último cuando se asigna un flujo de c* al arco i →j. Sin este refinamiento, las primeras seis iteraciones no cambian, pero en ese momento pareceria que ya no quedan trayectorias aumentadas (ya que la capacidad de flujo real sin usar de E → B es cero). El refinamiento permite agregar la asignación de un flujo de 1 para O→C→E→B→D→T en la iteración 7. En efecto, esta asignación adicional cancela una unidad de flujo asignada en la iteración 1 (O→B→E→T) y la sustituye por las asignaciones de una unidad a las dos rutas O→B→D→T y O→C→E→T.
miércoles, 19 de noviembre de 2014
Ejemplo Algoritmo para el problema del flujo máximo (II)
martes, 18 de noviembre de 2014
Ejemplo Algoritmo para el problema del flujo máximo (I)

lunes, 17 de noviembre de 2014
Algoritmo para el problema del flujo máximo (II)
domingo, 16 de noviembre de 2014
Algoritmo para el problema del flujo máximo (I)
- Se identifica una trayectoria aumentada encontrando alguna trayectoría dirigida del nodo origen al nodo destino en la red residual tal que cada arco sobre esta trayectoria tiene capacidad residual estrictamente positiva. (Si no existe una, los flujos netos ya asignados constituyen un patrón de flujo óptimo).
- Se identifica la capacidad residual c* de esta trayectoria aumentada encontrando el mínimo de las capacidades residuales de los arcos sobre esta trayectoria. SE aumenta en c* el flujo de esta trayectoria.
- Se disminuye en c* la capacidad residual de cada arco en esta trayectoria aumentada. Se aumenta en c* la capacidad residual de cada arco en la dirección opuesta en esta trayectoria. Se regresa al paso 1.
sábado, 15 de noviembre de 2014
Una trayectoria aumentada
El algoritmo de la trayectoria aumentada selecciona repetidas veces algunas trayectoria aumentada y agrega un flujo igual a su capacidad residual en la red original. Este proceso continúa hasta que ya no hay trayectorias aumentadas, con lo que el flujo del nodo fuente al nodo destino no se puede aumentar. La clave para asegurar que la solución final es necesariamente óptima es el hecho de que las trayectorias aumentadas pueden cancelar flujos asignados con anterioridad en la red original; así, una selección indiscriminada de trayectorias para asignar flujos no puede evitar el uso de una combinación mejor de asignaciones de flujos.
Para resumir, cada iteración del algoritmo consiste en los tres pasos siguientes.
viernes, 14 de noviembre de 2014
Problema del Flujo Máximo (III)
jueves, 13 de noviembre de 2014
Problema del Flujo Máximo (II)
Como el problema de flujo máximo se puede formular como un problema de programación lineal (véase el problema 11),se puede resolver con el método símplex. Sin embargo, se dispone de un algoritmo de trayectorias aumentadas mucho más eficiente. Este algoritmo se basa en dos conceptos intuitivos, el de una red residual y el de una trayectoria aumentada.
miércoles, 12 de noviembre de 2014
Problema del Flujo Máximo (I)
Con la terminología que se introdujo en la sección 10.2, el problema del flujo máximo se puede describir formalmente como sigue. Considérese una red dirigida y conexa que tiene un solo nodo fuente y un solo nodo destino, y el resto son nodos de trasbordo. Dada la capacidad en los arcos, el objetivo es determinar el patrón factible que fluye a través de la red que maximiza el flujo total, desde el nodo fuente al nodo destino.
martes, 11 de noviembre de 2014
Ejemplo Algoritmo para el problema del árbol de mínima expansión (III)
Aunque con este procedimiento a primera vista puede parecer que la elección del nodo inicial afectaría la solución final (y la longitud total de las ligaduras), en realidad no es así. Se sugiere que se verifique este hecho en el ejemplo, aplicando de nuevo el algoritmo, pero iniciando en un nodo distinto de O.
Se considera que dentro de este capítulo el problema del árbol de expansión mínima es el que cae dentro de la amplia categoría de diseño de redes. En esta categoría, el objetivo es diseñar la red más apropiada para el problema dado (con frecuencia se trata de sistemas de transporte) y no analizar una red ya diseñada. La referencia selecta 10 proporciona una investigación en esta importante área.
lunes, 10 de noviembre de 2014
Ejemplo Algoritmo para el problema del árbol de mínima expansión (II)
domingo, 9 de noviembre de 2014
Ejemplo Algoritmo para el problema del árbol de mínima expansión (I)
Los nodos y distancias para el problema se resumen enseguida, en donde las líneas delgadas ahora representan ligaduras potenciales.
sábado, 8 de noviembre de 2014
Algoritmo para el problema del árbol de mínima expansión
- Se selecciona, de manera arbitraria, cualquier nodo y se conecta (es decir se pone una ligadura) al nodo más cercano distinto de éste.
- Se identifica el nodo no conectado más cercano a un nodo conectado, y se conectan estos dos nodos (es decir, se agrega una ligadura entre ellos). Este paso se repite hasta que se hayan conectado todos los nodos.
Empates: los empates para el nodo más cercano distinto (paso 1) o para el nodo no conectado más cercano (paso 2), se pueden romper en forma arbitraria y el algoritmo todavía debe llevar a una solución óptima. No obstante, estos empates son señal de que pueden existir (pero no necesariamente) soluciones óptimas múltiples. Todas esas soluciones se pueden identificar si se buscan las demás formas de romper los empates hasta el final.
La manera más rápida de ejecutar este algoritmo en forma manual es el enfoque gráfico que se ilustra en seguida.
viernes, 7 de noviembre de 2014
Problema del árbol de expansión mínima (II)
El problema del árbol de mínima se puede resolver de una forma bastante directa, pues ocurre que se trata de uno de los pocos problemas de investigación de operaciones el que la codicia en cada etapa del procedimiento de solución iconduce al final a una solución óptima. Así, con el inicio en cualquier nodo, la primera etapa consiste en elegir la rama más corta posible a otro nodo, sin preocuparse del efecto que esta elección pueda tener en las decisiones posteriores. En la segunda etapa se trata de identificar el nodo no conectado que esté más cerca de cualquiera de los dos que se acaban de conectar y después agregar la ligadura correspondiente la red. Este proceso se repetirá, según el resumen que se da a continuación, hasta que se hayan conectado todos los nodos. Se garantiza que la red resultante es un árbol de mínima expansión.
jueves, 6 de noviembre de 2014
Problema del árbol de expansión mínima (I)
La figura ilustra el concepto de árbol de expansión para el problema de Seervada Park. La sección a no es un árbol de expansión, pues los nodos (O,A, B, C) no están conectados con los nodos (D,E,T). Se necesita una rama más para hacer esta conexión. En realidad esta red consiste en dos árboles, uno para cada conjunto de nodos. Las ligaduras de la figura 10.4b si se expanden por toda la red (esto es, es una gráfica conexa según la definición de la sección 10.2) pero no es un árbol porque tiene dos ciclos (0-A-B-C-O Y D-T-E-D). Tiene demasiadas ligaduras. El problema de Seervada Prak tiene n=7 nodos, y coo se indicó en la sección 10.2, una red debe tener justo (n-1)= 6 ligaduras y no tener ciclos para calificar como un árbol de expansión. Esta condición se logra en la figura 10.4c, por lo que esta red es una solución factible (con una longitud total de 24 millas en las ramas) para el problema del árbol de mínima expansión.
miércoles, 5 de noviembre de 2014
Otras aplicaciones (II)
Otra versión aún más general del problema de la ruta más corta es encontrar la ruta más corta desde todos los nodos a todos los demás nodos. Otra opción es eliminar la restricción de que las "distancias" (valores de los arcos) sean no negativas. Se pueden poner también restricciones sobre las trayectorias que se pueden seguir. Todas estas variaciones surgen en ocasiones en la práctica y por esto han sido estudiadas por los investigadores.
Los algoritmos para una gran variadad de problemas de optimizanción de análisis combinatorio - como los problemas de diseño de ruta de vehículos- con frecuencia utlizan como parte de sus subrutinas, la solución de un gran número de problemas de la ruta más corta. Aunque no se dispone de espacio suficiente para profundizar en este tema, tal vez esta aplicación sea una de las más importantes de este algoritmo.
martes, 4 de noviembre de 2014
Otras aplicaciones (I)
Muchas aplicaciones requieren encontrar la trayectoria dirigida del origen al destino de una red dirigida. El algoritmo que acaba de presentarse se puede modificar con facilidad para que maneje trayectorias dirigidas en cada iteración. En particular, cuando se identifican candidatos para el n-ésimo nodo más cercano, sólo se considerarán los arcos dirigidos desde un nodo resuelto a un nodo no resuelto.
lunes, 3 de noviembre de 2014
Problema Algoritmo de la ruta más corta
La administración de SEervada Park necesita encontrar la ruta más corta desde la entrada del parque (nodo O) al mirador (nodo T) a través del sistema de caminos que se muestra en la figura 10.1. En la tabla 10.2 se encuentran los resultados obtenidos al aplicar el algoritmo anterior a este problema (en donde el empate para el segundo nodo más cercano). La primera columna (n) indica el número de la iteración. La segunda columna da una lista de los nodos resueltos para comenzar la iteración actual, después de quitar los que no sirven (aquellos que no tienen conexión directa con nodo no resueltos). La tercera columna da los candidatos para el n-ésimo nodo más cercano (los nodos no resueltos con la ligadura más corta al nodo resuelto). La cuarta columna calcula la distancia de la ruta más corta desde el origen a cada uno de los estos candidatos (esto es, la distancia al nodo resuelto más la distancia de la ligadura que va al candidato). El candidato con la suma de distancias más pequeñas es el n-ésimo nodo más cercano al origen, el cual se indica en la quinta columna. Las dos últimas columnas resumen la información de este último nodo resuelto necesaria para pasar las iteraciones siguientes (a saber, la distancia de la ruta más corta desde el origen a este nodo y la última rama en esta ruta más corta).
La ruta más corta desde es el nodo destino hasta el origen se puede rastrear hacia atrás en la última columna de la tabla 10., con lo que se obtiene T→D→E→B→A→O o bien T→D→B→A→O. Por tanto,, se identificaron las dos opciones para la ruta más corta desde el origen hasta el destino como las cadenas O→A→B→E→D→T y O→A→B→D→T, con una distancia total de 13 millas en cualquiera de las dos rutas.
domingo, 2 de noviembre de 2014
Algoritmo de la ruta más corta (II)
Cálculo del n-ésimo nodo más cercano: para cada nodo resuelto y sus candidatos, se suma la distancia entre ellos y la distancia de la ruta más corta desde el origen a este nodo resuelto. El candidato con al distancia total más pequeña es el n-ésimo nodo más cercano (los empates proporcionan nodos resueltos adicionales), y su ruta más corta es la que genera esta distancia.
sábado, 1 de noviembre de 2014
Algoritmo de la ruta más corta (I)
Datos para la n-ésima iteración: (n-1) nodos más cercanos al origen (encontrados en las iteraciones previas), y también su ruta más corta y la distancia desde el origen. (Estos nodos y el origen se llamarán nodos resueltos; el resto son nodos no resueltos)