OPERACIONES CON REDES AERONÁUTICAS CON WINQSBe) G no posee ciclos y si a,b V∈ con {a,b E,}∉...
Transcript of OPERACIONES CON REDES AERONÁUTICAS CON WINQSBe) G no posee ciclos y si a,b V∈ con {a,b E,}∉...
REDES: ALGORITMOS
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 2
ALGORITMOS DE REDES
Se encuentran numerosos y distintos problemas que se formulan mediante grafos, esta estructuraconsiste en almacenar datos con algún tipo de relación, los grafos no son más que la versión generalde un árbol, es decir, cualquier nodo de un grafo puede apuntar a cualquier otro nodo de éste(incluso a él mismo).
Se emplean en situaciones como: Planificación de tareas que completan un proyecto, encontrar lasrutas de menor longitud entre dos puntos geográficos, calcular el camino más corto en untransporte, determinar el flujo máximo que puede llegar de una fuente a otra, entre otros.
La resolución de estos problemas requiere examinar todos los nodos o todas las aristas del grafoque representa al problema; sin embargo, existen ocasiones en que la estructura del problema es talque se necesita visitar algunos de los nodos o bien algunas de las aristas.
De ahí surgen los algoritmos que imponen implícitamente un orden en estos recorridos: visitar elnodo más próximo o las aristas más cortas, y así sucesivamente; otros algoritmos no requierenningún orden en el recorrido. Son varios los algoritmos que facilitan las búsquedas o que permitenhallar el camino más corto en un grafo.
O. Boruvka
El Algoritmo de Boruvka es un algoritmo para encontrar el árbol recubridor mínimo en ungrafo ponderado en el que todos sus arcos tienen distinto peso, publicado en 1926 porOtakar Boruvka como un método eficiente para construir la red eléctrica deMoravia.
En 1938, el algoritmo fue redescubierto por Gustave Choque; de nuevo en 1951 porFlorek, Łukasiewicz, Perkal, Steinhaus y Zubrzycki; y de nuevo por Sollin a principio de ladécada de 1960.Debido a que Sollin fue el único de ellos que era científico en computación, estealgoritmo frecuentemente es conocido como Algoritmo de Sollin, especialmente enliteratura sobre computación paralela. G. Choque
Actualmente el software más utilizado es: Arena, Beer game, Excel (Solver, Treeplan), GAMS,LINGO, Matlab, Mini Tab, MPL‐CPLEX, Ms Project, Storm, TaylorED, Techoptimiezer, TORA, WinQSBy Witness. De entre ellos, WINQSB, Witness y Arena son los más usados
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 3
MODELACIÓN DE REDES
La teoría de Grafos o Redes se inicia con Euler resolviendo un problema turístico, para luego darénfasis al desarrollo, definición y explicación en general de esta teoría.
La optimización de redes es un tipo especial de modelo en programación lineal. Los modelos deredes tienen tres ventajas importantes con respecto a la programación lineal.
Pueden resolverse muy rápidamente. Problemas que con programación lineal tendrían 1000 filas y 30.000 columnas pueden ser resueltos en segundos. Esto permite que los modelos de redes sean usados en muchas aplicaciones (toma de decisión en tiempo real) para lo cual la programación lineal no es lo ideal.
Requieren en forma natural de soluciones enteras. Al reconocer que un problema puede formularse como algún modelo de red permitirá resolver tipos especiales de problemas de programación entera aumentando la eficiencia y reduciendo el tiempo consumido por los algoritmos clásicos de programación lineal.
Son intuitivos. Los modelos de redes proveen un lenguaje mucho más intuitivo que "variables, objetivo, restricciones" para tratar problemas.
Los modelos de redes no son capaces de cubrir la amplia gama de problemas que puede resolver laprogramación lineal. Sin embargo, ellos ocurren con suficiente frecuencia como para serconsiderados como una herramienta importante para una toma real de decisiones.
Dan respuesta a una serie de problemas representables:
a) Modelos de optimización sobre redes de comunicaciones
a.1. Caminos de valor óptimo
‐ Redes de actividades (Gestión de proyectos) ‐ Redes de transporte y/o canalización ‐ Encaminamiento óptimo en redes de comunicaciones (Internet, telefonia, etc) y distribución.
a.2. Flujos óptimos sobre una red
b) Inventarios
c) Programación dinámica
d) Cadenas de Markov
e) Modelado de fenómenos de esperas (colas)
La teoría proporciona algoritmos muy eficientes, ya sean clásicos o metaheurísticos.
La eficiencia se puede medir en función:
(a) La capacidad de almacenamiento requerida
(b) El tiempo de ejecución: complejidad
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 4
DEFINICIONES Y PROPIEDADES BÁSICAS DE GRAFOS ‐ REDES
Una cadena es una sucesión de aristas cada una de ellas unida ala anterior y a la siguiente por cada una de sus extremos, exceptolas aristas "comienzo" y "final" de la misma.
Una red es conexa sí dosvértices cualesquiera estánunidos por una cadena.
Un Istmo o Puente es unaarista cuya supresiónincrementa el número decomponentes conexas.
En una red conexa se determina como "distancia" entredos vértices i y j a la menor de las longitudes de lascadenas que los unen.El "diámetro" de la red es el máximo de las distanciasentre sus vértices.
Un ciclo es una cadena finita que une un nodo con el mismo.
Una cadena es euleriana si recorre, sin repetirla ninguna, todaslas aristas de la red.
Un ciclo es euleriano si recorre, sin repetirlas, todas las aristas dela red, acabando en el vértice de partida.
Un árbol es un grafo finito, conexo, sinciclos y con al menos dos nodos.
Todo par de vértices está unido por unaúnica cadena.
Sí un árbol tiene n vértices, el número searistas es (n 1)−
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 5
Arbol generador (o de extensión) de un grafoes un árbol que incluye a todos los vérticesdel mismo.
Sea G (V,E)= un grafo (no digrafo≡ grafo dirigido) o multigrafo.Un grafo G es un árbol si es conexo y no contiene ciclos. Con frecuencia, unárbol se indica por T (V,E).=
Un conjunto de árboles recibe el nombre de bosque. Un árbol formado por un solo vértice y sin lados,es un árbol degenerado.
Árbol maximal o generador de un grafo G conexo es un subgrafo maximal de G que también sea unárbol. Un árbol maximal de G contiene todos los vértices V de G.
Los árboles vienen caracterizados por los siguientes teoremas:
Teorema 1. Sean a y b dos vértices distintos de un árbol. Existe un único camino que no repite niaristas ni vértices que conecta dichos vértices.
Teorema 2. Dado un árbol, se verifica que V E 1= +
Teorema 3. Un grafo G. no digrafo, es conexo si y sólo si G posee un árbol maximal.
Teorema 4. Dado un árbol cualesquiera con V 2≥ , se verifica que ese árbol posee, al menos ,
dos vértices terminales o colgantes.
Teorema 5. Caracteriza un árbol teniendo en cuenta diversos criterios topológicos equivalentes:
a) G es un árbol
b) G es conexo, pero la supresión de uno cualquiera de los lados separa G en dos subgrafos que no son árboles.
c) G no posee ciclos y tiene tantas aristas como vértices menos uno, es decir, V E 1= +
d) G es conexo y tiene tantas aristas como vértices menos uno, es decir, V E 1= +
e) G no posee ciclos y si a, b V∈ con { }a, b E,∉ entonces el grafo G• obtenido añadiendo al
grafo G la arista { }a, b , tendrá exactamente un ciclo.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 6
ALGORITMO CICLO EULERIANO
El origen de la teoría de los ciclos eulerianos fue planteado yresuelto por Leonardo Euler en 1736, un problema de los Sietepuentes de la ciudad de Königsberg, dando origen a la Teoría deGrafos.
Se parte de la matrizde adyacencia
ijA (a )=
1 2 3 4 5 6
1 0 1 0 0 0 1
2 1 0 1 0 1 1
3 0 1 0 1 1 1A
4 0 0 1 0 1 0
5 0 1 1 1 0 1
6 1 1 1 0 1 0
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
Paso 1. Si existe i tal que ija no es par No es ciclo→∑Paso 2. Se elige una fila k no nula de la matriz ijA (a )= , p p 1= +
a) Definir n k= y { }kC v=
b) Buscar un m tal que mma 0>
c) Incluir mv en C. Hace nm mna a 0= =
d) Hacer n m= . Sí p
n k (b)
n k almacenar C Paso 3
≠ →⎧⎨ = → →⎩
Paso 3. ij
ij
a 0 Paso 2
a 0 Paso 4
≠ →⎧⎪⎨ = →⎪⎩
Paso 4. Buscar dos ciclos pC con un vértice común. Sustituir el vértice por el ciclo. Repetir hasta
que solo quede un ciclo.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 7
ALGORITMO DE FLEURY (H. Fleury, 1883)
Si una red es conexa y todos sus vértices son de grado par es posible recorrer todas sus aristas de unsolo trazo, sin necesidad de corregir el trayecto, según el siguiente esquema:
Salir de un vértice cualquiera. Cada vez que se recorra una arista, se procede a tachar. Cuando todas las aristas que inciden en un vértice han sido "tachadas", se "suprime" dicho vértice. No utilizar nunca una arista que, en el momento considerado, sea un itsmo.
Se seleccionen tres aristas
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 8
ALGORITMO DE DIJKSTRA (1959, Camino de Longitud mínima)
El algoritmo de Edsger Dijkstra calcula los caminos de longitud mínima desde unvértice u a los restantes vértices de un grafo (o digrafo) ponderado G, tal que lasaristas tienen pesos no negativos.El conjunto de caminos mínimos desde un vértice u a los restantes vértices delgrafo G es un árbol, llamado árbol de caminos mínimos desde s.
E. DijkstraLa idea básica del algoritmo es el siguiente.
"Si el vértice u se encuentra en un camino C de longitud mínima entre los vértices s y z , la parte deC comprendida entre los vértices s y u forma un camino de longitud mínima entre s y u".
Esto sugiere que si se desea determinar el camino óptimo desde s a cada vértice z de G, se puedehace en orden creciente de distancias d(s,z).
Entrada: Sea un grafo (o digrafo) ponderado y un vértice ∈s V. El peso de la arista uv se indicapor w(uv) , haciendo w(uv) = ∞ , si uv no fuera arista.
Clave: Mantener el conjunto T de vértices para el que se conoce el camino más corto y ampliar Thasta que T V= . Para ello, se etiqueta cada vértice z cont(z) que es la longitud del camino máscorto que se ha encontrado.
Paso 1. Sea { }T s , t(s) d(s,s) 0 , t(z) w(sz) , z s= = = = ≠
Paso 2.
Elegir el vértice v T∉ con etiqueta mínima t(v ) . Añadir v a T.Analizar cada arista vz con z T∉ y actualizar la etiqueta de zt( z ) mín t( z ) , t(v ) w(vz)= +⎡ ⎤⎣ ⎦
Paso 3.
Si T V (G)= O t( z ) = ∞ para cada vértice z T ,∉ el algoritmo termina.En caso contrario se vuelve al Paso 2.En cualquier caso la etiqueta de cada vértice z en T será la distancia de s a z, d(s ,z )En el segundo caso los vértices que no están en T no son accesibles desde s.
Encontrar el camino mínimo entre los vértices 1 y 2,aplicando el algoritmo de Dijkstra
Caminos de valor mínimo desde el vértice 1 a los demásvértices del grafo de longitud 1.
{ } { }1 2 3 5 4 6 7
P 1 T 2, 3, 4, 5, 6, 7
u 0 u 100 u 15 u 70 u u u
= =
= = = = = = = ∞
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 9
Caminos de valor mínimo desde el vértice 1 a losdemás vértices del grafo de longitud menor o igualque 2.
Paso 1: { } { }3u 15
P 1, 3 T 2, 4, 5, 6, 7
=
= = ≠ φ
2 3 5 4 6 7u 100 u 15 u 70 u u u= = = = = = ∞
Paso 2:
{ } { }
{ } { }
{ } { }{ } { }{ } { }
2 2 3 3,2
4 4 3 3,4
5 5 3 3,5
6 6 3 3,6
7 7 3 3,7
u mín u , u v mín 100, 15 100
u mín u , u v mín , 15
u mín u , u v mín 70, 15 50 65 pred(5) 3
u mín u , u v mín , 15
u mín u , u v mín , 15 20 35 pred(7) 3
= + = + ∞ =
= + = ∞ + ∞ = ∞
= + = + = → =
= + = ∞ + ∞ = ∞
= + = ∞ + = → =
Caminos de valor mínimo desde el vértice 1 a losdemás vértices del grafo de longitud menor o igualque 3.
Paso 1: { } { }7u 35
P 1, 3, 7 T 2, 4, 5, 6
=
= = ≠ φ
2 3 5 7 4 6u 100 u 15 u 65 u 35 u u= = = = = = ∞
Paso 2:
{ } { }{ } { }{ } { }{ } { }
2 2 7 7,2
4 4 7 7,4
5 5 7 7,5
6 6 7 7,6
u mín u , u v mín 100, 35 100
u mín u , u v mín , 35
u mín u , u v mín 65, 35 25 60 pred(5) 7
u mín u , u v mín , 35
= + = + ∞ =
= + = ∞ + ∞ = ∞
= + = + = → =
= + = ∞ + ∞ = ∞
Caminos de valor mínimo desde el vértice 1 a losdemás vértices del grafo de longitud menor o igualque 4.
Paso 1: { } { }5u 60
P 1, 3, 7, 5 T 2, 4, 6
=
= = ≠ φ
2 3 5 7 4 6u 100 u 15 u 60 u 35 u u= = = = = = ∞
Paso 2:
{ } { }
{ } { }{ } { }
2 2 5 5,2
4 4 5 5,4
6 6 5 5,6
u mín u , u v mín 100, 60 100
u mín u , u v mín , 60 10 70 pred(6) 5
u mín u , u v mín , 60 60 120 pred(6) 5
= + = + ∞ =
= + = ∞ + = → =
= + = ∞ + = → =
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 10
Caminos de valor mínimo desde el vértice 1 a losdemás vértices del grafo de longitud menor o igualque 5.
Paso 1: { } { }4u 70
P 1, 3, 7, 5, 4 T 2, 6
=
= = ≠ φ
2 3 5 4 6u 100 u 15 u 60 u 70 u 120= = = = =
Paso 2:{ } { }{ } { }
2 2 4 4,2
6 6 4 4,6
u mín u , u v mín 100, 70 15 85 pred(2) 4
u mín u , u v mín 120, 70 40 110 pred(6) 4
= + = + = → =
= + = + = → =
Finalmente, el camino mínimo entre los vértices 1y 2, aplicando el algoritmo de Dijkstra
ALGORITMO DE DIJKSTRA: COSTE MÍNIMO DE EMPRESA
El grafo representa el coste estimado (en miles de euros) que tiene empresa de alquiler deautomóviles para renovar su flota de un modelo determinado, en función del semestre en que seadquiere y número de semestres (julio de 2020 a finales de 2023) en servicio.
Denotando los sucesos:
A "segundo semestre 2020" D "primer semestre 2022"
B "primer semestre 2021 E "segundo semestre 2022"
C "segundo semestre 2021" F "primer semestre 2023"
= == == =
Hallar el coste mínimo desde el vértice A a todos los demás, excluido B que no conecta con A.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 11
A C D E F G
0 3,8 4,1 6,8
3,8 4,1 6,8 8,9 11
4,1 6,8 8,9 9,8
6,8 8,9 9,8
8,9 9,8
9,8
•
•
•
•
•
•
∞ ∞↓ ↓ ↓ ↓ ↓
↓ ↓ ↓ ↓
↓ ↓ ↓
↓ ↓
↓
{ }{ }{ }
{ }
{ }
E :mín 6,8 ; 3,8 4,2 6,8
F :mín ; 3,8 5,1 8,9
G:mín ; 3,8 7,2 11
G:mín 9,8 ; 4,1 5,7 9,8
G:mín 9,8 ; 6,8 5,7 9,8
⎧ + =⎪← ∞ + =⎨⎪ ∞ + =⎩
← + =
← + =
El camino mínimo es: 4,1 5,7A D G Coste mínimo 9.800 euros⎯⎯→ ⎯⎯→ →
Por tanto, el coche comprado en el segundo semestre del año 2020, se cambia en el primersemestre del año 2022 y se mantiene el segundo semestre del año 2023.
ALGORITMO DE DIJKSTRA: RUTAS DE TRANSPORTE DE COSTE MÍNIMO
En el grafo se establece la red de conexiones de tiendas de una misma cadena, en las aristas figurael coste del transporte (en miles de euros) entre dos tiendas, independiente del volumentransportado.
a) Suponiendo que todas las aristas (calles) sonbidireccionales. ¿Partiendo de la tienda A es posiblerecorrer todas las calles?
b) En las condiciones iniciales expuestas, se deseasaber el coste mínimo del transporte entre la tiendaA y todas las demás.
a) En estas condiciones el grafo es conexo y tiene más de 2 vértices de grado impar, concretamente4 vértices: g(C) 5 g(B) 5 g(D) 5 g(G) 3= = = =
No existen, por tanto, caminos eulerianos o, lo que es equivalente, partiendo de la calle A no esposible recorrer todas las calles una sola vez.
Sin embargo, el enunciado no impone que se puedan repetir calles. Así, de forma intuitiva, se puedeencontrar por ejemplo el siguiente recorrido:
A B C A B F D B E C D C E G F D E F D G− − − − − − − − − − − − − − − − − − −
b) Para obtener las rutas del transporte de coste mínimo entre la tienda A y todas las demás, seelabora la tabla:
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 12
A B C D E F G Vértices Aristas
0• ∞ ∞ ∞ ∞ ∞ ∞ A
4 3• ∞ 8 ∞ ∞ C AC
4• 9 5 10 ∞ B AB9 5• 10 15 E CE
9• 10 15 D CD
10• 12 F BF
12• G FG
El coste mínimo de transporte entre la tienda A y todas las demás será:
4 3 3 6 4 1 4A B A C A C D o A B E D⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→
4 1 4 1 5 4 1 5 2A B E A B E F A B E F G⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→ ⎯⎯→
RUTAS TRANSPORTE COSTE MÍNIMO: Network Modeling / Shortest Path Problem
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 13
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 14
FLUJO MÁXIMO EN REDES, ALGORITMO DE FORD FULKERSON (1962)
Planteamiento del Flujo Máximo: Existe un grafo dirigido o no dirigido (dirigido en la mayoría deaplicaciones reales), donde uno de los vértices es considerado como el origen y otro como eldestino, de manera que algún material u objeto puede fluir desde el origen hasta el destinoa la cantidad de material u objeto que circula por el grafo se le denomina flujo.
Entre el origen y el destino existe una cantidad determinada de nodos interconectados entre sí através de arcos, cada uno de estos arcos tiene una capacidad máxima que puede transportar entrelos nodos que conecta, la cual puede variar de un arco a otro.Esto quiere decir, que cada arco solo podrá soportar un flujo menor o igual a su capacidad, de talmanera que, si un flujo mayor quiere discurrir a través de un arco, solo una parte de dicho flujo (devalor igual a la capacidad de ese arco) viajará a través de él, y el resto deberá ir por otro arco quesalga del mismo nodo, de no haber otro arco, entonces el flujo se verá reducido.
En una red (o grafo) cada arco tiene una capacidad determinada, con un nodo fuente y otro destino.Se trata de hallar la cantidad máxima de flujo que puede circular desde el nodo fuente hasta el nododestino, de manera que el flujo individual que va por cada arco no supere la capacidad de sí mismo;esto último es conocido como restricción de capacidad del arco.
En las diferentes aplicaciones del problema del flujomáximo, las redes de flujo generadas nonecesariamente poseen un solo origen y un solodestino, sino que pueden tener varios.
Cualquiera que sea la cantidad de orígenes odestinos, esta situación se puede reducir a unproblema de flujo máximo ordinario.
Se crea un súper‐origen con arcos de capacidad infinita (o muy grande) que partan de ella y vayanhacia cada una de los orígenes originales de la red.
Se agrega un súper‐destino con arcos de capacidad infinita (o muy grande) que partan de cada unode los destinos originales de la red y vayan hacia el súper‐destino creado.
La solución de esta variante es sustituir cada vértice kv (de capacidad q) por dos vértices virtuales kv−
y kv+ , sin capacidad; kv
− recibe todos los arcos que recibía kv , y de kv+ salen
todos los arcos que salían de kv . Además, se deberá agregar un arco de capacidad q que unan kv− y
kv+ . Se resuelve el problema clásico con los nuevos vértices y los nuevos arcos.
CONCEPTOS BÁSICOS:
Flujo: Circulación de unidades homogéneas de un lugar a otro.
Capacidad de flujo: Capacidad de unidades que pueden entrar por el nodo fuente y salir por el nodo destino.
Origen o fuente de flujo: Nodo por el que ingresa el flujo.
Destino o Sumidero de flujo: Nodo por que sale el flujo.
Capacidades residuales: Capacidades restantes una vez que el flujo pasa el arco.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 15
El problema Flujo Máximo: Sea G = (V, A, W) una red de transporte que representa las capacidadesmáximas de los canales, un nodo de inicio y otro de final en V , donde cada arco (u, v) tienecapacidad q y flujo f. Se trata de encontrar la cantidad máxima de flujo que puede circular desde elnodo de inicio hasta el nodo final.
Las aristas representan canales por los que puede circular cierta cosa: transmisión de datos,corriente eléctrica, líneas de oleoductos, agua, automóviles, etc.Los pesos de las aristas representan la capacidad máxima de un canal: velocidad de conexión,cantidad máxima de tráfico, voltaje de línea eléctrica, volumen máximo de agua, etc.
Ford Fulkerson
El principal método de solución del problema del flujo máximo es el deFord‐Fulkerson (Lester Randolph Ford y Delbert Ray Fulkerson, 1962).Se basa en tres conceptos: red residual, trayectorias de aumento ycortes, y el teorema del flujo máximo‐corte mínimo.
Red residual: Deriva de una red original, está constituida por los arcos de dicha red que puedenadmitir más flujo. A partir de este concepto se puede definir la capacidad residual de un arco, la cuales la cantidad de flujo restante que todavía puede aceptar dicho arco.A los arcos que pertenecen a la red residual, se les denomina arcos residuales, un arco (u,v) de unared puede aparecer en la red residual solo si por lo menos uno de los arcos (u,v) o (v, u) aparecen enla red original.
Trayectoria de aumento: Es una trayectoria simple que va del origen al destino en la red residual.Por ende, cada uno de sus arcos admite cierta cantidad de flujo positivo sin violar la restricción decapacidad de los mismos.En la trayectoria de aumento se puede incrementar el flujo en cada uno de los arcos, siendo elmismo en todos los arcos. El incremento del flujo es el mismo en todos los arcos, también se puedentomar los arcos en sentido contrario para disminuir su flujo (siempre que no tengan flujo 0)
Corte de red de flujo: Es una división de la red de flujo en dos redes, una de las cuales contiene alorigen y la otra al destino. La capacidad de un corte es igual a la suma de las capacidades de losarcos que van desde la parte que contiene al origen hacia la parte que contiene al destino.Se denomina corte mínimo al corte que posee la mínima capacidad entre todos los cortes que se lepueden hacer a la red de flujo. El corte mínimo es importante porque su capacidad limita la cantidadde flujo que puede circular a través de la red.
Teorema de flujo máximo‐corte mínimo: Sea f el flujo que circula en una red G = (V, A, W), conorigen s y destino t, f es el flujo máximo de G si la red residual de G no contiene trayectorias deaumento o el valor de f es igual a la capacidad de alguno de los cortes de G, ambas reglas sonequivalentes.Básicamente, el teorema establece que el flujo máximo que puede circular a través de una red esigual a la capacidad del corte mínimo de la misma. Este teorema es la base para el diseño delalgoritmo de Ford‐Fulkerson.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 16
Algoritmo de Ford‐Fulkerson: Se inicia otorgando un valor de flujo de cero a cada uno de los arcosde la red. Luego, se pasa a una fase iterativa, en cada repetición se busca una trayectoriade aumento, y se incrementa el valor del flujo que circula en cada arco de dicha trayectoria por elvalor de la capacidad residual de la misma (es decir, el flujo en esos arcos se incrementa en el menorvalor de entre todas las capacidades de los arcos que constituyen la trayectoria), hasta que ya no sepuedan encontrar trayectorias de aumento en la red.
Según el teorema del flujo máximo–corte mínimo, el flujo máximo habrá sido calculado cuando noexistan trayectorias de aumento.
El programa WINQSB (propiedad del Dr. Yih‐Long Chang, experto en investigación deoperaciones y profesor del Georgia Tech en Estados Unidos) contiene herramientasmuy útiles para resolver distintos tipos de problemas en el campo de la InvestigaciónOperativa, con distintos módulos para tipo o modelo de problema.
El software incluye módulos para el análisis de muestreos, programación dinámica, elaboración depronósticos, inventarios, procesos y cadenas de Markov, planificación de recursos, modelado deredes, programación no lineal, PERT, CPM, programación cuadrática, y otros similares.
Con el modulo Network Modeling (File/ New Problem) se pueden resolver problemas de FlujoMáximo con facilidad.
MÉTODO DE FORD‐FULKERSON: FLUJO MÁXIMO EN REDES
El método propone buscar caminos en los que se pueda aumentar el flujo hasta que se alcance elflujo máximo, la idea es encontrar una ruta de penetración con un flujo positivo neto que una losnodos de origen y destino.
El flujo es siempre positivo y con unidades enteras. El flujo a través de un arco es menor o igual que la capacidad. El flujo que entra en un nodo es igual al que sale de él.
PASOS PARA LA RESOLUCIÓN DE UN PROBLEMA DE FLUJO MÁXIMO1. Identificar el nodo origen y de destino.2. Partiendo del nodo de origen se elige el arco que posea mayor flujo3. Identificar los nodos de transbordo.4. Repetir el proceso como si el nodo intermediario fuera el nodo origen.5. Calcular 'k' y las nuevas capacidades.6. Obtenido el resultado se cambian las capacidades y se repite idéntico procedimiento desde el inicio.
i j , j i i j
C Capacidad
i j Índices de los nodos C (C k , C k)
k Mínimo flujo que pasa por el nodo
≡≡
= − +≡
k mín(capacidades de la ruta)
⎧⎪⎪⎨⎪⎪ =⎩
El Flujo Máximo que puede pasar del nodo origen hasta el nodo destino es la suma de lascapacidades k∑ de la ruta.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 17
PRÁCTICO: Calcular el flujo máximo del grafo
El nodo de origen es el número 1 de color amarillo, y elnodo de destino es el número 5 de color verde.
Desde el nodo de origen 1 se elige el flujo que sea mayor, observandoque es 30, dirigido hacia el nodo número 3.
Se identifica el nodo de transbordo como [30,1] donde 30 es la capacidad
y 1 es el nodo de donde proviene la capacidad
Después se repite todo el proceso, entendiendo que el nodo intermediario como nodo de origen.
Siendo 3 el nuevo nodo de origen, el flujo mayor hasta el nododestino (5), el flujo mayor es 20, identificando el nodo de transbordocomo [20, 5] , 20 es la capacidad y 5 el nodo de destino.
Al llegar al nodo destino se procede a calcular k y lasnuevas capacidades.
k mín ( , 30 , 20) k 20= ∞ → =
13,31C (30 20 , 0 20) (10,20)= − + =
35, 53C (20 20 , 0 20) (0,20)= − + =
Se procede a reemplazar las nuevas capacidades
Se reitera el proceso de nuevo, haciendo la ruta con los mayores flujos.Camino <1, 2> pasando por el nodo 3 y 4 hasta llegar al nodo 5
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 18
k mín ( , 20 , 40 , 10 , 20) k 10= → =∞
12, 21 12, 21C (20 10 , 0 10) C (10,10)= − + → =
23, 32 23, 32C (40 10 , 0 10) C (30,10)= − + → =
34,43 34,43C (10 10 , 5 10) C (0,15)= − + → =
45,54 45,54C (20 10 , 0 10) C (10,10)= − + → =
Se reemplazan las nuevas capacidades
Se reitera el proceso.Se elige el camino <1, 2>, en el nodo 2 se puede tomar rumbo al nodo 3 y al nodo 5.Si se toma rumbo del nodo 2 al nodo 3, el camino terminaría trancado, obligando a volver al nodoorigen.Se toma el camino <1, 2> rumbo al nodo 5.
k mín( , 10 , 20) k 10 = ∞ → =
12 , 21 12 , 21C (10 10 , 10 10) C (0,20)= − + → =
25 , 52 25 , 52C (20 10 , 0 10) C (10,10)= − + → =
Se reemplazan las nuevas capacidades
Se reitera el proceso, tomando el camino <1, 3> pasando por el nodo 2 rumbo al nodo 5.
k mín( , 10 , 10 , 10) k 10= ∞ → =
13,31 13,31C (10 10 , 20 10) C (0,30)= − + → =
32 , 23 32 , 23C (10 10 , 30 10) C (0,40)= − + → =
25,52 25,52C (10 10 , 10 10) C (0,20)= − + → =
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 19
Se reemplazan las nuevas capacidades
Finalmente, se elige el camino <1, 4> rumbo al nodo 5
14 , 41 14 , 41
45 , 54 45 , 54
k mín( , 10 , 10) k 10
C (10 10 , 0 10) C (0,10)
C (10 10 , 10 10) C (0,20)
= ∞ → == − + → =
= − + → =
Reemplazando las nuevas capacidades
Las capacidades del nodo de origen quedan como 0,finalizando el algoritmo. El flujo máximo se obtiene al fumartodas las k.
El Flujo Máximo que pasa del nodo 1 al nodo 5:Caminos < 1 ‐ 3 ‐ 5> con k 20= Caminos <1 ‐ 2 ‐ 3 ‐ 4 ‐ 5> con k 10=Caminos <1 ‐ 2 ‐ 5> con k 10= Caminos <1 ‐ 3 ‐ 2 ‐ 5> con k 10=Caminos <1 ‐ 4 ‐ 5> con k 10= k 20 10 10 10 10 60= + + + + =∑
FLUJO MÁXIMO RED: Network Modeling / Maximal Flow Problem
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 20
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 21
FLUJO MÁXIMO RED: Network Modeling / Maximal Flow Problem
Existe un nodo origen (1) del que emanan los demás flujos Hay un nodo terminal (n) donde se depositan todos los flujos de la red Existen (n 2) − nodos en donde el flujo que entra es igual al flujo que sale La capacidad que transita del nodo i al nodo j se denota por i jC
Encontrar el flujo máximo de la red que sale del nodo 1
Introducidos los datos, se resuelve con lasopciones: Solve and Analyze o el icono Solvethe Problem:
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 22
Encontrar el flujo máximo de la red que sale del nodo 1, se puede plantear como un problema deprogramación lineal.
PROGRAMACIÓN LINEAL: Linear and Integer Programming
i jx ≡ Flujo que viaja desde el nodo i hacia el nodo j a través del arco que conecta ambos nodos.
Función Objetivo ≡ Maximizar el flujo que sale del nodo 1: 12 13 1 2Max z x x Max z x x= + ≡ = +
Restricciones:
• Flujo total que sale del nodo 1 = Flujo total que entra en el nodo 7
12 13 47 57 67 1 2 9 11 12 1 2 9 11 12x x x x x x x x x x x x x x x 0+ = + + ≡ + = + + → + − − − =
• Para cada nodo intermedio: Flujo que entra = Flujo que sale
112 32 62 23 24 26 1 3 3 4 1 4Nodo 2: x x x x x x x x x x x x 0−+ + = + + ≡ + = + → − =
113 23 63 53 32 35 36 2 3 6 3 7 6 2 7Nodo 3: x x x x x x x x x x x x x x x 0−+ + + = + + ≡ + + = + + → − =
24 64 46 47 4 8 8 11 4 11Nodo 4: x x x x x x x x x x 0+ = + ≡ + = + → − =
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 23
35 65 56 57 7 10 12 6 7 10 12 6Nodo 5: x x x x x x x x x x x x 0+ = + ≡ + = + → + − − =
26 36 46 56 63 64 65 67 5 6 8 10 6 8 10 9
5 9
Nodo 6: x x x x x x x x x x x x x x x x
x x 0
+ + + = + + + ≡ + + + = + + +→ − =
• El Flujo no puede exceder de la capacidad de los arcos:
12 1 13 2 23 3 24 4 26 5 36 6
35 7 46 8 67 9 65 10 47 11 57 12
12 21 1 23 32 3 26 62 5 36 63 6
46 64 8 56 65 10 57 75 12 67 76 9
21 26 31 53
x x 10 x x 10 x x 1 x x 8 x x 6 x x 4
x x 12 x x 3 x x 2 x x 2 x x 7 x x 8
x x x x x x x x x x x x
x x x x x x x x x x x x
x x x x
≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤ ≡ ≤≡ = ≡ = ≡ = ≡ =≡ = ≡ = ≡ = ≡ == = = = 0
• Los flujos no pueden ser negativos: i jx 0≥
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 24
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 25
PROBLEMA DEL VIAJANTE: Network Modeling /Traveling Salesman Problem
Un agente de comercio trabaja en seis ciudades. Determinar la ruta óptima para minimizar el númerode kilómetros recorridos semanalmente, sabiendo que debe pasar una sola vez por cada ciudad y queal final de la semana debe volver a su casa. En el grafo adjunto se refleja las distancias en km entre lasciudades.
Introducidos los datos, se resuelve con las opciones: Solve and Analyze o el icono Solve the Problem:
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 26
Aparecen diferentes procedimientos de resolución:
Nearest Neighbor Heuristic (vecino más cercano): Parte de un nodo y se va moviendo al nodo demenor coste adyacente hasta que pasa por todos los nodos.El procedimiento "Vecino más cercano" no garantiza que se pueda cerrar el ciclo, depende del nodode partida. Por defecto, selecciona siempre como nodo inicial el primer nodo de la tabla.
Cheapest Insertion Heuristic: Sigue los siguientes pasos:1. Se seleccionan dos nodos (i, j) que se encuentren a menor distancia, formando el subciclo i j i− −2. Para todos los nodos que no se encuentren en el subciclo anterior, se selecciona el nodo k deforma que minimice la cantidad C(i,k) C(k, j) C(i, j)+ −⎡ ⎤⎣ ⎦ para todo par de nodos (i, j) del subciclo,
siendo C(i, j) distancia entre los nodos (i, j)≡3. Introducir el nodo k en el subciclo y vuelve al paso 2, hasta conectar todos los nodos.
Two‐way Exchange Improvement Heuristic: Se basa en la bisección de una solución inicial.
Branch‐and‐bound Method: Proporciona la solución óptima exacta planteando el problema como unproblema de programación entera 0 1− .Cuando el número de nodos es grande el coste computacional puede no ser viable.
Soluciones para cada uno de estos métodos:
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 27
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 28
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 29
ALGORITMO DE SOLLIN (Árbol generador mínimo, 1960)
Paso 1: Seleccionar el elemento de valor mínimo de la matriz de incidencia valorada y marcarlo. Caso de existir varios, se selecciona uno cualquiera.
Paso 2: Eliminar la columna del elemento marcado y marcar la fila cuya número coincide con el de la columna recién eliminada.
Paso 3: De entre los elementos que pertenecen a filas marcadas y no pertenecen a columnas eliminadas se toma el de valor mínimo y se le marca.
Paso 4: Se repiten los pasos 2 y 3 hasta que no se puedan seleccionar mas elementos. Si por este método se consigue marcar todas las filas el problema tiene solución y queda resuelto.
El algoritmo de Sollin funciona de forma similar para el caso de un árbol generador máximo, sin másque seleccionar valores máximos, en lugar de mínimos.
J. B. Kruskal
ALGORITMO DE KRUSKAL (Joseph B. Kruskal, árbol generador máximo)
Paso 1: Seleccionar y marcar la arista de mayor valor (árbol generador máximo). Caso de existir varias, se selecciona una cualquiera.
Paso 2: Eliminar una de las aristas que no estén marcadas y tengan un extremo en una cualquiera de las marcadas, de forma que si se marca la arista seleccionada no se genere un ciclo. De estas aristas se selecciona y marca la asociada al mayor valor.
Paso 3: Reiterar el paso 2 hasta que las aristas seleccionadas conecten a todos los vértices de la red.
El algoritmo para la obtención de un árbol de expansión mínima es en todo semejante, excepto quese seleccionan aristas de valor mínimo.
V. Jarnik
ALGORITMO DE PRIM (Vojtech Jarnik, árbol generador mínimo)
En un árbol G previamente construido. Se añade en cada paso una arista de pesomínimo.
Paso 1: Se elige un vértice u de G y se considera el árbol { }S u=
Paso 2: Se considera la arista e de mínimo peso (árbol generador mínimo) que une un vértice de S y un vértice que no es de S, y se hace S S e= +
Paso 3: Si el número de aristas de T es (n 1)− , el algoritmo termina. En caso contrario, se vuelve al paso 2.
El algoritmo para un árbol de expansión máximo, en el Paso 2 considera la arista e de máximo peso,añadiendo en cada paso una arista de peso máximo.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 30
PLANTEAMIENTO PRÁCTICO: Una empresa aeronáutica decide instalar un sistema de distribuciónque permita enviar contenedores a ocho provincias españolas, considerando la posibilidad de envíono directo. Los costes en cientos de euros se reflejan en la tabla adjunta.
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 16 9 12 11 10 16
3 18 16 8 22 12 13 14
4 14 9 8 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
OBJETIVO: Calcular el coste mínimo y máximo de la distribución aeronáutica utilizando losalgoritmos de Sollin, Kruskal y Prim comprobando que se obtiene la misma solución.
A.1) ALGORITMO DE SOLLIN PARA EL MÍNIMO COSTE
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 16 9 12 11 10 16
3 18 16 8 22 12 13 14
4 14 9 8 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento de la tabla (elemento 8) que se encuentra en la casilla (3, 4). Encaso de existir varios, se selecciona uno cualquiera.Se eliminan las columnas 3 y 4 , y se marcan las filas 3 y 4.
1 2 3 4 5 6 7 8
20 18 14 19 15 16 13120 16 9 12 11 10 162
3 18 16 8 22 12 13 14
4 14 9 8 13 16 21 175 19 12 22 13 10 17 246 15 11 12 16 10 13 187 16 10 13 21 17 13 148 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 20 19 15 16 13
2 20 12 11 10 16
3 18 16 22 12 13 14
4 14 9 13 16 21 17
5 19 12 10 17 24
6 15 11 10 13 18
7 16 10 17 13 14
8 13 16 24 18
1
14
2
•
•
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 31
Como no están marcadas todas las filas, el algoritmo contínua. Se selecciona el mínimo elementoque pertenece a las filas marcadas y no pertenecen a las columnas eliminadas.
El mínimo elemento es el 9, que se encuentra en la casilla (4, 2), se elimina la columna 2 y se marcala fila 2.
1 2 3 4 5 6 7 8
20 19 15 16 13120 12 11 10 16218 16 22 12 13 143
4 14 9 13 16 21 175 19 12 10 17 246 15 11 10 13 187 16 10 17 13 148 13 16 24 18
1
14
2
•
•
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 19 15 16 13
2 20 12 11 10 16
3 18 22 12 13 14
4 14 13 16 21 17
5 19 10 17 24
6 15 10 13 18
7 16 17 13 14
8 13 24 18
3
1
2
14
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.
El mínimo elemento es el 10, que se encuentra en la casilla (2, 7), se elimina la columna 7 y se marcala fila 7.
1 2 3 4 5 6 7 8
19 15 16 13
20 12 11 10 16
18 22 12 13 14
14 13 16 21 17
19 10 17 24
15 10 13 18
16 17 13 14
13 24 18 14
3
1
2
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 19 15 13
2 20 12 11 16
3 18 22 12 14
4 14 13 16 17
5 19 10 24
6 15 10 18
7 16 17 13 14
8 13 24 18
3
1
2
4
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.
El mínimo elemento es el 11, que se encuentra en la casilla (2, 6), se elimina la columna 6 y se marcala fila 6.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 32
1 2 3 4 5 6 7 8
19 15 131
2 20 12 11 163 18 22 12 144 14 13 16 175 19 10 246 15 10 187 16 17 13 148 13 24 1
3
1
2
4
8
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 19 13
2 20 12 16
3 18 22 14
4 14 13 17
5 19 24
6 15 10 18
7 16 17 14
8
3
1
2
5
1 24
4
3
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.
El mínimo elemento es el 11, que se encuentra en la casilla (2, 6), se elimina la columna 6 y se marcala fila 6.
1 2 3 4 5 6 7 8
19 15 131
2 20 12 11 163 18 22 12 144 14 13 16 175 19 10 246 15 10 187 16 17 13 148 13 24 1
3
1
2
4
8
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 19 13
2 20 12 16
3 18 22 14
4 14 13 17
5 19 24
6 15 10 18
7 16 17 14
8
3
1
2
5
1 24
4
3
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.
El mínimo elemento es el 10, que se encuentra en la casilla (6, 5), se elimina la columna 5 y se marcala fila 6.
1 2 3 4 5 6 7 8
19 13120 12 16218 22 14314 13 17419 245
6 15 10 187 16 17 148 13 24
3
1
2
5
4
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1 13
2 20 16
3 18 14
4 14 17
5 19 24
6 15 18
7 16 14
8 1
3
2
4
3
1
6
5
•
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el mínimo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 33
El mínimo elemento es el 14, que se encuentra en la casilla (7, 8), se elimina la columna 8 y se marcala fila 8.
1 2 3 4 5 6 7 8
13120 16218 14314 17419 24515 186
7 16 148 13
3
1
2
6
5
4
•
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
1 2 3 4 5 6 7 8
1
2 20
3 18
4 14
5 19
6 15
7 16
8 1
6
3
3
1
2
5
4
7
•
•
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
El mínimo elemento es el 13, que se encuentra en la casilla (8, 1), se elimina la columna 1 y se marcala fila 1.
1 2 3 4 5 6 7 8
120218314419515616
3
1
2
6
5
4
8 17
7
3
•
•
•
•
•
•
•
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
1 2 3 4 5 6 7 8
1 8
3
1
2
6
5
4
7
2
3
4
5
6
7
8
•
•
•
•
•
•
•
•
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
20 16 9 12 11 10 16218 16 8 22 12 13 143
4 14 9 8 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 187 16 10 13 21 17 13 148
13 16 14 17 24 18 14
8
3
1
2
6
5
4
7
•
•
•
•
•
•
•
•
−⎡ ⎤⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
Longitud o peso mínimo de la distribución: 8 + 9 + 11 + 10 + 10 + 14 + 13 = 75
Coste mínimo de la distribución: 75 x 100 = 7.500 euros
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 34
Network Modeling: ÁRBOL DE EXPANSIÓN MÍNIMA
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 35
A.2) ALGORITMO DE SOLLIN PARA EL MÁXIMO COSTE
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 16 9 12 11 10 16
3 18 16 8 22 12 13 14
4 14 9 8 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento de la tabla (elemento 24) que se encuentra en la casilla (8, 5).En caso de existir varios, se selecciona uno cualquiera.Se eliminan las columnas 5 y 8, y se marcan las filas 5 y 8.
1 2 3 4 5 6 7 8
20 18 14 19 15 16 13120 16 9 12 11 10 16218 16 8 22 12 13 14314 9 8 13 16 21 174
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
1 2 3 4 5 6 7 8
1 20 18 14 15 16
2 20 16 9 11 10
3 18 16 8 12 13
4 14 9 8 16 21
5 19 12 22 13 10 17
6 15 11 12 16 13
7 16 10 13 21 13
8 13 16 14 17 18 14
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Como no están marcadas todas las filas, el algoritmo continúa.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 36
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 22, que se encuentra en la casilla (5, 3), se elimina la columna 3 y semarca la fila 3.
a
a
1 2 3 4 5 6 7 8
20 18 14 15 16120 16 9 11 10218 16 8 12 13314 9 8 16 214
5 19 12 22 13 10 176 15 11 12 16 137 16 10 13 21 138 13 16 14 17 18
1
2 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
1 2 3 4 5 6 7 8
1 20 14 15 16
2 20 9 11 10
3 18 16 8 12 13
4 14 9 16 21
5 19 12 13 10 17
6 15 11 16 13
7 16 10 21 13
8 13 16 17 18 14
3
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 19, que se encuentra en la casilla (5, 1), se elimina la columna 1 y semarca la fila 1.
a
a
a
1 2 3 4 5 6 7 8
20 14 15 16120 9 11 10218 16 8 12 13314 9 16 214
5 19 12 13 10 176 15 11 16 137 16 10 21 138 13 16 17 18 14
3
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
a
1 2 3 4 5 6 7 8
1 20 14 15 16
2 9 11 10
3 16 8 12 13
4 9 16 21
5 12 13 10 17
6 11 16 13
7 10 21 13
8 16 17 18 14
4
3
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 20, que se encuentra en la casilla (1, 2), se elimina la columna 2 y semarca la fila 2.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 37
a
a
a
a
1 2 3 4 5 6 7 8
1 20 14 15 162 9 11 103 16 8 12 134 9 16 215 12 13 10 176 11 16 137 10 21 138 16 17 18 14
4
3
1
2
⎡ ⎤−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
a
a
1 2 3 4 5 6 7 8
1 14 15 16
2 9 11 10
3 8 12 13
4 16 21
5 13 10 17
6 16 13
7 21 13
8 17 18 1
4
5
3
4
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 18, que se encuentra en la casilla (8, 6), se elimina la columna 6 y semarca la fila 6.
a
a
a
a
a
1 2 3 4 5 6 7 8
14 15 161 9 11 102 8 12 133 16 214 13 10 175 16 136 21 137
8 17 18 14
4
5
3
1
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
a
a
a
1 2 3 4 5 6 7 8
1 14 16
2 9 10
3 8 13
4 21
5 13 17
6 16 13
7 21
8
4
5
17
3
1
14
6
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 17, que se encuentra en la casilla (8, 4), se elimina la columna 4 y semarca la fila 4.
a
a
a
a
a
a
1 2 3 4 5 6 7 8
14 161 9 102 8 133 214 13 175 16 136 217
8 17 14
4
5
3
1
6
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
a
a
a
a
1 2 3 4 5 6 7 8
1 16
2 10
3 13
4 21
5 17
6 13
7
4
5
3
7
1
6
82 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Se selecciona el máximo elemento que pertenece a las filas marcadas y no pertenecen a lascolumnas eliminadas.El máximo elemento es el 21, que se encuentra en la casilla (4, 7), se elimina la columna 7 y semarca la fila 7.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 38
a
a
a
a
a
a
a
1 2 3 4 5 6 7 8
161 102 133
4 215 176 137 8 1
4
5
3
7
1
6
2 4
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
a
a
a
a
a
a
a
a
1 2 3 4 5 6 7 8
1
2
3
4
5
6
7
8
4
5
3
7
1
6
8
2
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
El algoritmo ha finalizado al marcar todas las filas.
Longitud máxima del árbol:
19 + 20 + 22 + 17 + 18 + 21 + 24 = 141
El coste máximo de la distribución:
141 x 100 = 14.100 euros.
1 2 3 4 5 6 7 8
20 18 14 19 15 16 13120 16 9 12 11 10 16218 16 8 22 12 13 143
4 14 9 8 13 16 21 17
5 19 12 22 13 10 17 246 15 11 12 16 10 13 187 16 10 13 21 17 13 148 13 16 14 17 24 18 14
⎡ ⎤−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥
−⎢ ⎥⎣ ⎦
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 39
B.1) ALGORITMO DE KRUSKAL PARA EL MÍNIMO COSTE
Para obtener el árbol de expansión máximo se selecciona el menor elemento de la red.
En este caso es el 8, al existir dos casillas con ese número, se selecciona uno cualquiera.
1 2 3 4 5 6 7 8
20 18 14 19 15 16 13120 16 9 12 11 10 162
3 18 16 8 22 12 13 14
4 14 9 8 13 16 21 175 19 12 22 13 10 17 246 15 11 12 16 10 13 187 16 10 13 21 17 13 148 13 16 14 17 24 18 14
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎣ ⎦
Se tachan las casillas (3, 4) y (4, 3) quees donde se encuentra ese mínimo.
Marcando las columnas 3 y 4, donde sehan eliminado esas casillas.
Al no estar marcadas todas lascolumnas, el proceso sigue.
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 16 9 12 11 10 16
3 18 16 22 12 13 14
4 14 9 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10
1º
13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
2º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
2 20 16
3
4
5
6
7
8
−
− 9 12 11 10 16
18 16 22 12 13 14
14 9
−
13 16 21 17
19 12 22 13 10 17 24
15 11 12 16 10 13 18
16 10 13 21 17 13 14
13 16 14 17 24 18 14
1º 2º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎣ ⎦
Se selecciona el menor elemento de lascolumnas no marcadas, el elemento 9 de lacasilla (2, 4).
Se tachan las casillas (2, 4) y (4, 2) que esdonde se encuentra ese mínimo.
Asimismo, se tachan las casillas (3, 2) y (2, 3)para evitar ciclos.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 40
Marcando la columna 2 que es dondese ha eliminado la casilla (2, 3).
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 12 11 10 16
3 18 22 12 13 14
4 14 13 16 21 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 10 13 21 17 13 14
8 13 16 14 17 24 18 14
3º 1º 2º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
20 12 11 102
3
4
5
6
7
8
−
− 16
18 22 12 13− 14
14 13 16 21− 17
19 12 22 13 10 17 24
15 11 12 16 10 13 18
16 10
−−
13 21
3º 1º
17 13 14
13 16 14 17 24 18 1
4
2º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
Se selecciona el menor elemento de lascolumnas no marcadas, que es elelemento 10 de la casilla (7, 2).
Se tachan las casillas (7, 2), (7, 3) y (7, 4),así como sus casillas simétricas:(2, 7), (3, 7) y (4, 7) para evitar ciclos.
Marcando la columna 7 que es donde seha eliminado la casilla (7, 2).
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 12 11 16
3 18 22 12 14
4 14 13 16 17
5 19 12 22 13 10 17 24
6 15 11 12 16 10 13 18
7 16 17 13 14
8 13 16 14 17 24 18 14
3 º 1º 2º 4º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 41
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
20 122
3
4
5
6
7
8
−
− 11 16
18 22− 12 14
14 13− 16 17
19 12 22 13 10− 17 24
15 11 12 16 10 13 18
16 17
−
13 14
13 16 14 17 24 18 14
3º 1º 2º 4º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎢ ⎥−⎣ ⎦
Se selecciona el menor elemento de lascolumnas no marcadas, que es elelemento 10 de la casilla (5, 6).
Se tachan las casillas (5, 6), (5, 2), (5, 3),(5, 4) y (5, 7), así como sus casillassimétricas: (6, 5), (2, 5), (3, 5), (4, 5) y (7, 5)para evitar ciclos.
Marcando la columna 5 que es donde seha seleccionado la casilla (5, 6).
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 11 16
3 18 12 14
4 14 16 17
5 19 24
6 15 11 12 16 13 18
7 16 13 14
8 13 16 14 17 24 18 14
3º 1º 2º 5º 4 º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
20 11 162
18 123
4
5
6
7
8
−
−
− 14
14 16− 17
19 24
15 11
−
12 16 13− 18
16 13 14
13 16 14 17 24 18 14
3º 1º 2º 5º 4º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎢ ⎥−⎣ ⎦
Se selecciona el menor elemento de lascolumnas no marcadas, que es elelemento 11 de la casilla (6, 2).
Se tachan las casillas (6, 2), (6, 3), (6, 4) y(6, 7), así como sus casillas simétricas: (2,6), (3, 6), (4, 6) y (7, 6) para evitar ciclos.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 42
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16 13
2 20 16
3 18 14
4 14 17
5 19 24
6 15 18
7 16 14
8 13 1
3º 1º 2º
6 14 17 24 18 14
5º 6º 4º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Marcando la columna 6 que es donde se haseleccionado la casilla (6, 2).
Se selecciona el menor elemento de lascolumnas no marcadas, que es elelemento 13 de la casilla (8, 1).
Se tachan las casillas (8, 1), (8, 2), (8, 3),(8, 4), (8, 5), (8, 6) y (8, 7), así como suscasillas simétricas: (1, 8), (2, 8), (3, 8),(4, 8), (5, 8), (6, 8) y (7, 8) para evitarciclos.
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
2
3
4
5
6
7
8
−
20 16−
18 14−
14 17−
19 24−
15 18−
16 14−
13 16 14 17 24 18 14
3º 1º 2º 5º 6º 4 º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
3º 1º 2º 5º 6º 4º
1 2 3 4 5 6 7 8
1 20 18 14 19 15 16
2 20
3 18
4 14
5 19
6 15
7 16
8
7 º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Marcando la columna 8 que es donde se haseleccionado la casilla (8, 1).
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 43
1 2 3 4 5 6 7 8
201
2
3
4
5
6
7
8
− 18 14 19 15 16
20
18
−
14
−
19
−
15
−
16
−
3º 1º 2º 5º 6º 4º 7º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥
−⎢ ⎥⎢ ⎥−⎣ ⎦
Se selecciona el menor elemento de lascolumnas no marcadas, que es elelemento 14 de la casilla (1, 4).
Se tachan todas las casillas de la columna1, al igual que sus simétricas.
El algoritmo de Kruskal ha finalizado altener todas las columnas marcadas.
Marcando la columna 1 como la última, quees donde se ha seleccionado la casilla (1, 4).
8º 3º 1º 2º 5º 6º
1 2 3 4 5 6 7 8
1
2
3
4
5
6
7
8
4º 7º
−⎡ ⎤⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎢ ⎥−⎢ ⎥
−⎢ ⎥⎣ ⎦
Longitud o peso mínimo de la distribución: 8 + 9 + 11 + 10 + 10 + 14 + 13 = 75
Coste mínimo de la distribución: 75 x 100 = 7.500 euros
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 44
B.2) ALGORITMO DE KRUSKAL PARA EL MÁXIMO COSTE
Se trata de de obtener el árbol de expansión máxima. Para ello, se selecciona el mayor elemento dela red, que es el 24 en la casilla (5, 8). En caso de existir varias, se selecciona una cualquiera.
Se tachan las casillas (5, 8) y (8, 5) que es donde se encuentra ese máximo. Marcando las columnas5 y 8 que es donde se han eliminado las casillas (5, 8) y (8, 5)
1 2 3 4 5 6 7 8
20 18 14 19 15 16 131
20 16 9 12 11 10 162
18 16 8 22 12 13 143
14 9 8 13 16 21 174
5 19 12 22 13 10 17 246
7
8
−−
−−
−15 11 12 16 10 13 18
16 10 13 21 17 13 14
13 16 14 17 24
−−
18 14
1º 2 º
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
Como no están marcadas todas las columnas el algoritmo sigue.
Se selecciona el mayor elemento de las columnas marcadas, el elemento 22 de la casilla (3, 5)
Se tachan las casillas (3, 5) y (5, 3) que es donde se encuentra ese máximo. También se tachan lascasillas (3, 8) y (8, 3) para evitar ciclos.
Marcando la columna 3 de donde se han eliminado las casillas (5, 3) y (5, 8)
Se selecciona el mayor elemento de las columnas marcadas, elemento 19 de la casilla (1, 5)
Se tachan las casillas (1, 5) y (1, 3) y (1, 8) , así como las casillas (5, 1) , (3, 1) y (8, 1 ) para evitarciclos. Marcando la columna 1.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 45
Se selecciona el mayor elemento de las columnas marcadas, elemento 18 de la casilla (6, 8)
Se tachan las casillas (6, 1) y (6, 2) y (6, 3) y (6, 5) y (6, 8), así como sus casillas simétricas paraevitar cilos: (1, 6) y (2, 6) y (3, 6) y (5, 6) y (8, 6). Marcando la columna 6.
Se selecciona el mayor elemento de las columnas marcadas, elemento 17 de la casilla (4, 8)Se tachan las casillas (4, 1) y (4, 2) y (4, 5) y (4, 6) y (4, 8), así como sus casillas simétricas paraevitar cilos: (1, 4) y (2, 4) y (5, 4) y (6, 4) y (8, 4). Marcando la columna 4.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 46
Se selecciona el mayor elemento de las columnas marcadas, elemento 21 de la casilla (7, 4)
Se tachan las casillas de la línea 7 y sus simétricas. Marcando la columna 7.
El algoritmo de Kruskal ha finalizado al tener todas las columnas marcadas.
El árbol de expansión máxima tiene un peso ouna longitud:
L 22 19 20 24 18 17 21 141= + + + + + + =
Máximo coste: 141 x 100 = 14.100 euros
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 47
C.1) MÉTODO GRÁFICO: ALGORITMO DE KRUSKAL PARA EL MÍNIMO COSTE
Para aplicar el algoritmo de Kruskal, se van seleccionando las aristas mas cortas (con menor peso),ya que hay que calcular el mínimo coste. Se presta atención a las aristas marcardas para no formarun ciclo.
Se comienza selecconando el menor valor, eneste caso el 8, que une el nodo 3 y 4.
A continuación, se selecciona laarista que une los nodos 2 y 4.
Se selecciona la arista que une los nodos2 y 7.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 48
Se selecciona la arista que unelos nodos 5 y 6.
Se unen los nodos 2 y 6.
Se unen los nodos 1 y 8.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 49
Finalmente, se selecciona laarista que une los nodos 3 y 8.
Longitud o peso mínimo de la distribución: 8 + 9 + 14 + 10 + 11 + 13 + 10 = 75
Coste mínimo de la distribución: 75 x 100 = 7.500 euros.
C.2) MÉTODO GRÁFICO: ALGORITMO DE PRIM PARA EL MÍNIMO COSTE
Para calcular el algoritmo de Prim, secomienza eligiendo un vérticecualquiera. Se elige arbitrariamente elvértice 5 y se construye el árbol con 5como único vértice.
A continuación, se añade la arista demenor peso que une el vértice.
El segundo vértice más cercano a 5 es elvértice 6 (a una distancia de 10). Semarca la arista 5‐6.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 50
El siguiente vértice más cercano a elegir entre5 y 6 es el vértice 2, a una distancia de 11.
Se marca la arista 6‐2, mientras que la arista2‐5 desaparece porque formaría un ciclo.
Grafo resultante:
El siguiente vértice más cercano a elegir entre6 o 2 es el vértice 4, a una distancia de 9.
Se marca la arista 2‐4 y desparaecen lasaristas 4‐6 y 4‐5 porque formarían un ciclo
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 51
Grafo resultante:
El vértice más cercano a 2 o 4 es el vértice 3,a una distancia de 8.
Se marca la arista 4‐3 a una distancia de 8 ydesaparece las aristas 3‐2 , 3‐6 y 3‐5 para noformar ciclos.
Grafo resultante:
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 52
El siguiente vértice más cercano a elegir entre2 o 3 es el vértice 7, a una distancia de 10.
Se marca la arista 2‐7 y desaparecen lasaristas 7‐3 , 7‐6 , 7‐5 y 7‐4 para no formarciclos.
Grafo resultante:
El siguiente vértice más cercano es el 1, a unadistancia de 14.
Se marca la arista 4‐1 y desparecen las aristas1‐7, 1‐3 , 1‐2 , 1‐5 y 1‐6 para nor formarciclos.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 53
Finalmente, se elige el vértice 8, a una distanciade 13.
Se marca la arista 1‐8 y desaparecen las aristas8‐2 , 8‐5 , 8‐6 , 8‐3 , 8‐4 y 8‐7 para no formar ciclos
El algoritmo finaliza, todos los vértices estánmarcados.
Longitud o peso mínimo de la distribución:8 + 9 + 10 + 10 + 11 + 13 + 14 = 75
Coste mínimo de la distribución:75 x 100 = 7.500 euros.
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 54
Portal Estadística Aplicada: Operaciones Redes Aeronáuticas 55