Sei sulla pagina 1di 20

09/09/2011

MODELOS DE REDES DE OPTIMIZACIN

Page 1

Introduccin
Los modelos de redes son estructuras especiales del modelo de programacin lineal y que por sus caractersticas propias tienen algoritmos especficos para su solucin. La teora y el anlisis de redes de optimizacin, encuentra aplicacin en varias ramas del saber tales como: la I Ingeniera i Ci il, la Civil l i ingeniera i i d t i l la industrial, l i ingeniera i elctrica, la informtica, la ciberntica, la gestin de proyectos, el planeamiento, etc. Existe tambin un rea de aplicacin concerniente a grupos sociales, comunicacin, estructuras de lenguaje y enlaces qumicos. Como se podr notar el rea de accin y aplicacin de la teora de redes es amplio y su teora clsica esta asociada a lo que se llama la teora de grafos.

Page 2

Introduccin
Entre los problemas que podemos estudiar tenemos: El problema de la RUTA MS CORTA que se presenta por ejemplo en los sistemas de transporte. El problema del RBOL DE EXPANSIN MNIMA que se presenta por ejemplo en problemas relacionados a diversos tipos de conexiones. conexiones El problema de FLUJO MXIMO que se asocia a problemas de flujo a partir de un origen hacia un destino. El problema de REDES DE ACTIVIDADES utilizando para realizar la planificacin de tareas y programas de actividades.

Page 3

09/09/2011

Conceptos referenciales para la teora de redes


Para estudiar las redes de optimizacin, introduciremos algunos conceptos elementales:
Una GRFICA o RED es un conjunto de NODOS (vrtices o puntos) que estn conectados por un conjunto de ARCOS (lneas, ramas y bordes). Consideraremos que una red es una grfica con un FLUJO de algn tipo que fluye por sus ramas.
Page 4

Conceptos referenciales para la teora de redes


Ejemplo:
Nodos Intersecciones Aeropuertos Estaciones de bombeo Centros de trabajo Ramas Caminos Rutas areas Tuberas Rutas Flujo Vehculos Aviones Fluidos Trabajos

Puntos de comunicacin Cables, Canales Mensajes

Page 5

Conceptos referenciales para la teora de redes


Un RBOL es una red conexa que contiene ciclos. Por ejemplo:

Page 6

09/09/2011

Conceptos referenciales para la teora de redes


Podemos decir con propiedad que una red conexa que tiene n nodos, n 1 ramas y sin ciclos, se llama RBOL DE EXPANSIN. Se puede definir la siguiente nomenclatura relacionada con un arco o rama (i,j): xij 0, es el flujo del nodo i al nodo j. ij 0, es la capacidad mxima del flujo de i a j. ij 0, es la capacidad mnima del flujo de i a j. dij 0, es el costo por unidad de flujo. Si dij 0, se llama EGRESO, si dij 0, se llama INGRESO. Cuando un flujo sale de un nodo se llama EFLUJO y cuando llega a un nodo se le llama INFLUJO.
Page 7

Conceptos referenciales para la teora de redes


Se llama nodo FUENTE u ORIGEN al nodo por donde entra el flujo a la red, es decir que cada una de sus ramas tiene una orientacin tal que el flujo se mueve hacia fuera de ese nodo. Los orgenes son generadores del flujo.

Page 8

Conceptos referenciales para la teora de redes


Se llama nodo DESTINO o FINAL al nodo por donde sale el flujo de la red, es decir que cada una de las ramas esta orientada hacia ese nodo. Los nodos destino absorben el flujo.

Page 9

09/09/2011

EL PROBLEMA DE LA RUTA MS CORTA

Page 10

Introduccin
Los arcos denominados (i, j) de una red, llevan asociados un nmero dij que se interpreta como el costo, la distancia o el tiempo que hay entre los nodos i y j. Una RUTA o RECORRIDO entre dos nodos es cualquier secuencia de arcos que los conecte. El problema de la ruta ms corta tiene como objetivo p j encontrar los recorridos ms econmicos en distancias, costo y/o tiempo, entre un nodo especfico, considerado como nodo origen y los otros nodos de la red considerados como destinos. La estructura resultante de resolver este problema, formara un conjunto de arcos que se llamar RBOL DE RECORRIDO MNIMO.

Page 11

Algoritmos de la ruta ms corta


En esta seccin se presentan dos algoritmos para resolver el problema de la ruta ms corta. corta El algoritmo de Dijkstra. El algoritmo de Floyd

Page 12

09/09/2011

El algoritmo de Dijkstra
El algoritmo de Dijkstra tiene por objeto determinar las rutas ms cortas entre el nodo origen o fuente y todos los dems nodos de la red. Sea ui la distancia ms corta del nodo fuente 1 hasta el nodo i, y se define dijj (0) como la longitud de arco (i,j). Entonces el algoritmo define la etiqueta de un nodo inmediato posterior j como: [uj,i] = [ui + dij,i],dij 0 La etiqueta del nodo de inicio es [0, ], que indica que el nodo no tiene predecesor.
Page 13

El algoritmo de Dijkstra
Las etiquetas de nodos en el algoritmo de Dijkstra son de dos clases: TEMPORALES y PERMANENTES. Una etiqueta temporal se modifica si se puede encontrar una ruta ms corta a un nodo. Cuando se ve que no se pueden encontrar rutas mejores, cambia el estado de la etiqueta temporal a permanente.
Page 14

El algoritmo de Dijkstra
Los pasos para la aplicacin del algoritmo son los siguientes: Paso 0: Etiquetar y rotular el nodo fuente con la etiqueta permanente; en este caso se rotula [0, ]. Este rotulo es PERMANENTE, por tanto se sombrea al nodo 1. Igualar i = 1. Paso 1: Calcular las etiquetas temporales [ui + dij, i] para cada nodo j al que pueda llegarse desde el nodo i, siempre y cuando j no tenga etiqueta permanente. Si el nodo j ya esta etiquetado con [uj, k] por otro nodo k, y si ui + dij uj, sustituir [uj, k] por [uj + dij, i]. Paso 2: Considerando el criterio de la distancia ms corta, rotular y/o etiquetar en forma permanente el nodo correspondiente, al que tambin se lo sombrea. Paso 3: A partir del ltimo nodo permanente etiquetar en forma temporal los arcos ligados a este nodo y elegir el arco de distancia ms corta para etiquetarlo permanentemente (de los nodos etiquetados temporalmente). Los empates se rompen en forma arbitraria. Paso 4: Si todos los nodos tienen etiquetas permanentes detenerse. El proceso es realizado n 1 veces.

Page 15

09/09/2011

El algoritmo de Dijkstra
Ejemplo: se tiene la siguiente red:
2 2 1 7 4 3 3 4 2 1 5 6 5 8 6 4 5 7

Page 16

El algoritmo de Dijkstra
Ejemplo: (Continuacin) En esta red, los nmeros representan la distancia y la idea es hallar las rutas ms cortas del nodo 1 hacia los dems nodos, nodos es decir el rbol de recorrido mnimo. El proceso es realizado n 1 veces, entonces 7 1 = 6 iteraciones.
Page 17

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Las redes resultantes de la aplicacin de estos pasos son: It Iteracin i 0
Nodo Etiqueta Estado 1 [0,] Permanente

Page 18

09/09/2011

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Iteracin 1
N d Nodo 1 2 4 Eti Etiqueta t [0,] [0+2,1] = [2,1] [0+7,1] = [7,1] Et d Estado Permanente Temporal Temporal

Page 19

El algoritmo de Dijkstra
Ejemplo: (Continuacin)
Para las dos etiquetas temporales [2,1] y [7,1], el nodo 2 produce la menor distancia (u2 = 2). Entonces se cambia el estado del nodo 2 a Entonces, permanente. Iteracin 2
Nodo 1 2 4 3 5 Etiqueta [0,] [2,1] [7,1] [2+4,2] = [6,2] [2+1,2] = [3,2] Estado Permanente Permanente Temporal Temporal Temporal
[2,1] 2 2 [0,- ] 1 4 3 [6,2] 1 5 [3,2]

Page 20

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Iteracin 3
Nodo 1 2 4 3 5 6 7 Etiqueta [0,] [2,1] [7,1] [6,2] [3,2] [3+8,5] = [11,5] [3+5,5] = [8,5] Estado Permanente Permanente Temporal Temporal[0,- ] 1 Permanente Temporal Temporal
[2,1] 2 2 4 3 [6,2] 1 5 5 8 6 [11,5] [3,2] 5 7 [8,5]

Page 21

09/09/2011

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Iteracin 4
Nodo 1 2 4 3 5 6 7 4 6 Etiqueta [0,] [2,1] [7,1] [6,2] [3,2] [11,5] [8,5] [6+3,3] = [9,3] [6+6,3] = [12,3] Estado Permanente Permanente Temporal Permanente Permanente Temporal Temporal Descartar Descartar
[2,1] 2 2 [0,-] 1 7 4 [6,2] 3 3 4 [7,1] 1 5 6 5 8 6 [11,5] [3,2] 5 7 [8,5]

Page 22

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Iteracin 5
Nodo 1 2 4 3 5 6 7 6 Etiqueta [0,] [2,1] [7,1] [6,2] [3,2] [11,5] [8,5] [7+2,4] =[9,4] Estado Permanente Permanente Permanente Permanente Permanente Cambiar por [9,4] Temporal Temporal
[2,1] 2 2 [0,-] 1 7 4 [6,2] 3 3 4 [7,1] 2 1 5 6 5 8 6 [11,5] [9,4] 4 [3,2] 5 7 [8,5]

Page 23

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Entonces la etiqueta temporal [8,5] del nodo 7 se cambia a permanente (u7 = 8) En esta ultima red vemos que el nodo 7 ha quedado etiquetado permanentemente y esta ligado al nodo 6 con una distancia de 8 + 4 = 12 que es mayor que 9; por tanto el nodo 6 se convierte su etiqueta temporal [9,4] en permanente y el algoritmo habr terminado.
Page 24

09/09/2011

El algoritmo de Dijkstra
Ejemplo: (Continuacin) Iteracin 6
Nodo 1 2 4 3 5 7 6 Etiqueta [0,] [2,1] [7,1] [6,2] [3,2] [8,5] [9,4] Estado Permanente Permanente Permanente Permanente Permanente Permanente Permanente
(2,1) 2 2 (0,1) 1 7 4 (6,2) 3 3 4 (7,1) 2

1 5 6 5 8 6

(3,2) 5 7 4 (8,5)

(9,4)

Page 25

El algoritmo de Dijkstra
Ejemplo: (Continuacin)
El rbol de recorrido mnimo consta de n 1 arcos y muestra los resultados del problema, segn la tabla y partiendo del nodo 1, se muestra las rutas ms cortas hacia cualquiera de los otros nodos: NODO 2 3 4 5 6 7 RUTA MS CORTA DESDE 1 12 123 14 125 146 1257 DISTANCIA 2 6 7 3 9 8
Page 26

El algoritmo de Floyd
El algoritmo de Floyd es ms general que el de Dijkstra, porque permite determinar la ruta ms corta entre dos nodos cualesquiera de la red. El algoritmo representa una red de n nodos como matriz cuadrada con n renglones y n columnas. El elemento (i, j) de la matriz expresa la distancia dij del nodo i al nodo j, que es finita si i est conectado directamente con j, e infinita en caso contrario.
Page 27

09/09/2011

El algoritmo de Floyd
j Cij i Cik Cjk k

Operacin triple de Floyd


Page 28

El algoritmo de Floyd
El concepto del algoritmo de Floyd es directo. Dados tres nodos i, j y k en la figura anterior, con las distancias entre si indicadas en los tres arcos, es ms corto ir a k desde i pasando por j si: dij + djk dik En este caso, lo ptimo es reemplazar la ruta directa i k por la ruta indirecta i j k. Este intercambio de operacin triple se aplica en forma sistemtica a la red, con los siguientes pasos:

Page 29

El algoritmo de Floyd
Paso 0: Definir las matrices iniciales de distancias Do y de secuencias de nodos So como se describe abajo. Los elementos diagonales se marcan con () para indicar que estn bloqueados. Igualar k = i.
1 Do = 2 : i : n 1 d21 : di1 : dn1 2 d12 : di2 : dn2 : : j d1j d2j : dij : dnj : : n d1n d2n : din :

So =

1 2 : i : n

1 1 : 1 : 1

2 2 : 2 : 2

: :

j j j : j : j

: :

n n n : n :

Page 30

10

09/09/2011

El algoritmo de Floyd
Definir el rengln k y la columna k como rengln pivote y columna pivote. Aplicar la operacin triple para toda i y j j. si se a cada elemento dij en Dk 1 p satisface la condicin: dik + dkj dij (i k, j k e i j) Hacer los siguientes cambios: a) Crear Dk reemplazando dij en Dk 1 por dik + dkj. b) Crear Sk reemplazando sij en Sk 1 por k. Igualar k = k + 1 y repetir el paso k.
Page 31

El algoritmo de Floyd

Implementacin de la operacin triple en forma matricial

Page 32

El algoritmo de Floyd
Se puede explicar el paso k del algoritmo representando a Dk 1 como se ve en la figura anterior. Aqu, el rengln k y la columna k definen el rengln y la columna pivote actual. El rengln i representa cualesquiera de los renglones 1, 2,, y k 1, , y el rengln g p representa p cualquiera q de los renglones g k+ 1, k + 2,, y n. De igual modo, la columna j representa cualquiera de las columnas 1, 2,, y k 1, y la columna q representa cualquiera de las columnas k + 1, k + 2,, y n. Con la operacin triple, si la suma de los elementos del rengln pivote y la columna pivote (representados por cuadrados) es menor que el elemento de interseccin asociado (representado por un crculo), entonces es ptimo reemplazar la distancia de interseccin por la suma de las distancias pivote.

Page 33

11

09/09/2011

El algoritmo de Floyd
Despus de n pasos se puede determinar la ruta ms corta entre los nodos i y j con las matrices Dn y Sn con las siguientes reglas: p la distancia ms corta entre En Dn, dij representa los nodos i y j. En Sn, se determina el nodo intermedio k = sij que forme la ruta i k j. Si sik = k y skj = j, detenerse; todos los nodos intermedios de la ruta se han determinado. En caso contrario, repetir el procedimiento entre los nodos i y k y entre los nodos k y j.
Page 34

El algoritmo de Floyd
Ejemplo: Resolver el ejemplo dado en el algoritmo de Dijkstra.
2 2 1 7 4 3 3 4 2
Page 35

1 5 6 5 8 6 4 5 7

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 0. Las matrices Do y So son la representacin inicial de la red. Do es una matriz simtrica.
1 2 3 4 5 6 7 1 2 7 2 2 4 1 Do D 3 4 3 5 6 4 7 3 2 5 1 5 8 5 6 6 2 8 4 7 5 4 1 2 3 4 5 6 7 1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 So S 4 4 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 6 7 7 7 7 7 7 7

Page 36

12

09/09/2011

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 1. Se iguala k = 1. El rengln y la columna pivote se ven en la matriz Do con sombra ligera: Son el primer rengln p g y la p primera columna. Las celdas ms oscuras d24 y d42 son las nicas que pueden mejorar con la operacin triple. As, D1 y S1 se obtienen partiendo de D0 y S0 como sigue: Sustituir d24 con d21 + d14 = 2 + 7 = 9, e igualar s24 = 1. Sustituir d42 con d41 + d12 = 7 + 2 = 9, e igualar s42 = 1. Estos cambios se muestran en negritas, en las matrices siguientes: Page 37

El algoritmo de Floyd
Ejemplo (Continuacin):
Estos cambios se muestran en negritas, en las matrices siguientes:
1 2 3 4 5 6 7 1 2 7 2 2 4 9 1 D1 3 4 7 4 9 3 3 5 6 2 5 1 5 8 5 6 6 2 8 4 7 5 4 1 2 3 4 5 6 7 1 1 1 1 1 1 1 2 2 2 1 2 2 2 S1 3 4 3 4 3 1 4 3 3 4 3 4 3 4 5 5 5 5 5 5 5 6 6 6 6 6 6 6 7 7 7 7 7 7 7

Page 38

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 2. Se iguala k = 2, como indican el rengln y la columna con sombra ligera en D1. Se aplica la operacin p a las celdas ms oscuras de D1 y S1. Los cambios triple que resultan se indican con negritas en D2 y S2.
1 2 3 4 5 6 7 1 2 6 7 3 2 2 4 9 1 D2 3 4 7 6 4 9 3 3 5 10 6 2 5 3 1 5 10 8 5 6 6 2 8 4 7 5 4 1 2 3 4 5 6 7 1 1 2 1 2 1 1 2 2 2 1 2 2 2 S2 3 4 4 2 3 1 4 3 3 2 3 4 3 4 5 2 5 5 2 5 5 6 6 6 6 6 6 6 7 7 7 7 7 7 7

Page 39

13

09/09/2011

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 3. Se iguala k = 3, como indican en el rengln y la columna sombreada en D2. Las nuevas matrices son D3 y S3.
1 2 3 4 5 6 7 1 2 6 7 3 12 2 2 4 7 1 10 D3 3 4 7 6 4 7 3 3 5 8 6 2 5 3 1 5 8 8 5 6 12 10 6 2 8 4 7 5 4 1 2 3 4 5 6 7 1 1 2 1 2 3 1 2 2 2 3 2 3 2 S3 3 4 4 2 3 3 4 3 3 3 3 4 3 4 5 2 5 5 3 5 5 6 3 3 6 6 6 6 7 7 7 7 7 7 7

Page 40

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 4. Se iguala k = 4 como se indica con el rengln y la columna con sombra ligera en D3. Las nuevas matrices son D4 y S4.
1 2 3 4 5 6 7 1 2 6 7 3 9 2 2 4 7 1 9 D4 3 4 7 6 4 7 3 3 5 8 2 5 S4 5 3 1 5 8 8 5 6 9 9 5 2 8 4 7 5 4 1 2 3 4 5 6 7 1 1 2 1 2 4 1 2 2 2 3 2 4 2 3 2 3 3 3 4 3 4 4 3 4 3 4 4 5 2 5 5 3 5 5 6 4 4 4 6 6 6 7 7 7 7 7 7 7

Page 41

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 5. Se iguala k = 5 como se indica con el rengln y la columna con sombra ligera en D4. Las nuevas matrices son D5 y S5.
1 2 3 4 5 6 7 1 2 6 7 3 9 8 2 2 4 7 1 9 6 D5 3 4 7 6 4 7 3 3 5 8 2 5 10 13 5 3 1 5 8 8 5 6 9 9 5 2 8 4 7 8 6 10 13 5 4 1 2 3 4 5 6 7 1 1 2 1 2 4 5 2 2 2 3 2 4 5 S5 3 4 4 2 3 3 4 3 3 3 4 4 5 5 5 2 5 5 3 5 5 6 4 4 4 6 6 6 7 5 5 5 5 7 7

Page 42

14

09/09/2011

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 6. Se iguala k = 6 como se indica con el rengln y la columna con sombra ligera en D5. Las nuevas matrices son D6 y S6.
1 2 3 4 5 6 7 1 2 6 7 3 9 8 2 2 4 7 1 9 6 D6 3 4 7 6 4 7 3 3 5 8 2 5 9 6 5 3 1 5 8 8 5 6 9 9 5 2 8 4 7 8 6 9 6 5 4 1 2 3 4 5 6 7 1 1 2 1 2 4 5 2 2 2 3 2 4 5 S6 3 4 4 2 3 3 4 3 3 3 4 4 6 6 5 2 5 5 3 5 5 6 4 4 4 6 6 6 7 5 5 6 6 7 7

Page 43

El algoritmo de Floyd
Ejemplo (Continuacin):
Iteracin 7. Se iguala k = 7 como en el rengln y la columna con sombra ligera en D6. No hay mejoras posibles en esta iteracin. Por consiguiente D7 y S7 son iguales que D6 y S6.
1 2 3 4 5 6 7 1 2 6 7 3 9 8 2 2 4 7 1 9 6 D7 3 4 7 6 4 7 3 3 5 8 2 5 9 6 5 3 1 5 8 8 5 6 9 9 5 2 8 4 7 8 6 9 6 5 4 1 2 3 4 5 6 7 1 1 2 1 2 4 5 2 2 2 3 2 4 5 S7 3 4 4 2 3 3 4 3 3 3 4 4 6 6 5 2 5 5 3 5 5 6 4 4 4 6 6 6 7 5 5 6 6 7 7

Page 44

El algoritmo de Floyd
Ejemplo (Continuacin):
Las matrices finales D7 y S7 contienen toda la informacin necesaria para determinar la ruta ms corta entre dos nodos cualesquiera de la red. Por ejemplo: Del nodo 1 al nodo 5, 5 primero se ve la distancia asociada d15 = 3. Para determinar la ruta asociada, recurdese que un segmento (i, j) representa un enlace directo si sij = j. en caso contrario, i y j estn enlazados mediante al menos un nodo intermedio. Como s15 = 2, la ruta inicial es 125. Ahora bien, como s12 = 2, el segmento (1,2) es un enlace directo y la ruta 125 no se transformara. A continuacin como: s12 = 2, s25 = 5, la ruta 125 no necesita ms disecciones y el proceso termina.
Page 45

15

09/09/2011

El algoritmo de Floyd
Ejemplo (Continuacin):
Del nodo 1 al nodo 7, d17 = 8, la ruta asociada s17 = 5, la ruta inicial es 157, ahora bien, s15 = 2 5, el segmento (1,5) no es un enlace directo y 15 se debe reemplazar l por 125, 5 y la l ruta t 157 se transforma t f ahora en 1257. A continuacin como: s12 = 2, s25 = 5 y s57 =7, la ruta 1257 no necesita ms disecciones y el proceso termina. Del nodo 1 al nodo 2, d12 = 2, la ruta asociada s12 = 2, el segmento (1,2) es un enlace directo. La ruta ser 12 Y as sucesivamente para los dems nodos.
Page 46

PROBLEMA DEL RBOL DE EXPANSIN MNIMA


El problema del rbol de expansin mnima tiene algunas similitudes con la versin principal del problema de la ruta ms corta que se presento en la seccin anterior. En ambos casos se considera una red no dirigida y conexa, en la que la informacin dada incluye y alguna g medida de longitud g positiva p (distancia, tiempo, costo, etc.) asociada con cada arco. Los dos problemas involucran tambin el hecho de seleccionar un conjunto de arcos que tiene la longitud total ms corta entre todos los conjuntos de arcos que satisfacen cierta propiedad. Para el problema de la ruta ms corta esta propiedad es que el arco seleccionado debe proporcionar una trayectoria entre el origen y el destino. Para el rbol de expansin mnima la propiedad requerida es que los arcos seleccionados deben proporcionar una trayectoria entre cada par de nodos.

Page 47

PROBLEMA DEL RBOL DE EXPANSIN MNIMA


Una red con n nodos requiere solo (n 1) arcos para proporcionar una trayectoria entre cada par de nodos. No deben usarse ms arcos ya que esto aumentara, sin necesidad, la longitud total de los arcos seleccionados. Los (n 1) arcos deben elegirse de tal manera que la red resultante (con solo los arcos resultantes) forme un rbol de expansin. Por lo tanto, el problema es encontrar el rbol de expansin con la longitud total mnima de sus arcos.
Page 48

16

09/09/2011

Algoritmo del rbol de expansin mnima


El algoritmo de rbol de expansin mnima enlaza los nodos de una red, en forma directa o indirecta, con la mnima longitud de las ramas enlazantes. Una aplicacin caracterstica es en la construccin de carreteras pavimentadas que unen varias poblaciones. poblaciones El camino entre dos poblaciones puede pasar por uno o ms poblaciones adicionales. El diseo ms econmico del sistema de caminos indica que se minimice la distancia total de caminos pavimentados, el resultado que se obtiene implementando el algoritmo de rbol de expansin mnima. Los pasos del procedimiento son los siguientes:
Page 49

Algoritmo del rbol de expansin mnima Paso 1: Se selecciona, de manera arbitraria, cualquier nodo y se conecta (es decir se pone un arco) al nodo ms cercano distinto de ste. ste Paso 2: Se identifica el nodo no conectado ms cercano a un nodo conectado, y se conectan estos dos nodos (es decir, se agrega un arco entre ellos). Este paso se repite hasta que se hayan conectado todos los nodos. Page 50

Algoritmo del rbol de expansin mnima


Paso 3: Los empates para el nodo ms cercano distinto (paso 1) o para el nodo no conectado ms cercano (paso 2), se pueden romper en forma arbitraria y el algoritmo todava debe llevar a una solucin ptima. No obstante, estos empates son seales de que pueden existir (pero no necesariamente) soluciones ptimas mltiples. Todas esas soluciones se pueden identificar si se buscan las dems formas de romper los empates hasta el final.
Page 51

17

09/09/2011

Algoritmo del rbol de expansin mnima Ejemplo:


La administracin de COTAP necesita determinar los caminos bajo los cuales se deben tender las lneas telefnicas para conectar todas las estaciones con una longitud mnima de cable. cable Se describir paso a paso la solucin de este problema con base en los datos que se dan en la siguiente figura:
A 2 O 4 C 5 1 4 2 B 7 4 3 D 1 E 5 7 T

Page 52

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin


En forma arbitraria, se selecciona el nodo O para comenzar. El nodo no conectado ms cercano a O es el nodo A. Se conecta el nodo A al nodo O.
A 2 O 4 C 5 1 4
Page 53

7 2 B 4 3 D 1 E

5 7

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


El nodo ms cercano a cualesquiera de los nodos O o A es el nodo B (ms cercano a A), se conecta el nodo B al nodo A.

A 2 O 4 C 5 1 2 B

7 4 3 4 D 1 E

5 7

Page 54

18

09/09/2011

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


El nodo no conectado ms cercano a O, A o B es el nodo C (ms cercano a B), se conecta el nodo C al nodo B.

A 2 O 4 C 5 1 2 B

7 4 3 4 D 1 E

5 7

Page 55

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


El nodo no conectado ms cercano a O, A, B o C es el nodo E (ms cercano a B), se conecta el nodo E al nodo B.

A 2 O 4 C 5 1 2 B

7 4 3 4 D 1 E

5 7

Page 56

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


El nodo no conectado ms cercano a O, A, B, C o E es el nodo D (ms cercano a E), se conecta el nodo D al nodo E.
A 2 O 4 C 5 1 4
Page 57

7 2 B 4 3 D 1 E

5 7

19

09/09/2011

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


El nico nodo no conectado es el nodo T. Esta ms cerca del nodo D, se conecta el nodo T al nodo D
A 2 O 4 C 5 1 4
Page 58

7 2 B 4 3 D 1 E

5 7

Algoritmo del rbol de expansin mnima Ejemplo: Resolucin (continuacin)


Todos los nodos han quedado conectados, por lo que sta es la solucin ptima que se buscaba. La longitud total de las ramas es 14 km. Aunque con este procedimiento a primera vista puede parecer que la seleccin del nodo inicial afectara la solucin final (y la longitud de los arcos), en realidad no es as. Se sugiere que se verifique este hecho para el ejemplo, aplicando de nuevo el algoritmo, pero iniciando en un nodo distinto de O.
Page 59

20

Potrebbero piacerti anche