Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
20 arbol de_extension_minima
1. Modelos de Redes: Árbol
de expansión mínima
M. En C. Eduardo Bustos Farías
2. Objetivos
Conceptos y definiciones de redes.
Importancia de los modelos de redes
Modelos de programación lineal, representación en
redes y soluciones usando el computador para:
* Modelos de asignación
* Modelo del vendedor viajero
* Modelos de la ruta mas corta
* Modelos de la rama mas corta
Y otros.
3. Un problema de redes es aquel que puede
representarse por:
8
6
9
10
Nodos
Arcos
7
10
Funciones en los arcos
4. Introducción
La importancia de los modelos de redes:
* Muchos problemas comerciales pueden ser resueltos a través
de modelos redes
* El resultado de un problema de redes garantiza una solución
entera, dada su estructura matemática. No se necesitan
restricciones adicionales para obtener este tipo de solución.
* Problemas de redes pueden ser resueltos por pequeños
algoritmos , no importando el tamaño del problema, dada su
estructura matemática.
5. Terminología de Redes
* Flujo: Corresponde a la cantidad que debe transportarse
desde un nodo i a un nodo j a través de un arco que los
conecta. La siguiente notación es usada:
Xij= cantidad de flujo
Uij= cota mínima de flujo que se debe transportar
Lij= cota maxíma de flujo que se puede transportar.
* Arcos dirigidos /no dirigidos: Cuando el flujo puede
transportarse en una sola dirección se tiene un arco dirigido (la
flecha indica la dirección). Si el flujo puede transportarse en
ambas direcciones existe un arco no dirigido (sin flecha).
* Nodos adyacentes: Un nodo j es adyacente con un nodo i si
existe un arco que une el nodo j con el nodo i.
6. Rutas/Conexión entre nodos
*Ruta: Una colección de arcos formados por una serie de
nodos adyacentes
* Los nodos están conectados si existe una ruta entre ellos.
Ciclos / Arboles /Arboles expandidos
* Ciclos : Un ciclo se produce cuando al partir de un nodo por
un cierto camino se vuelve al mismo nodo por otra ruta.
* Arbol : Una serie de nodos que no contienen ciclos.
*Arbol expandido: Es un árbol que conecta todos lo nodos de
la red (contiene n-1 arcos).
8. Árbol de expansión mínima
Este problema surge cuando todos los nodos de una
red deben conectar entre ellos, sin formar un loop.
El árbol de expansión mínima es apropiado para
problemas en los cuales la redundancia es
expansiva, o el flujo a lo largo de los arcos se
considera instantáneo.
8
9. Árbol de expansión mínima
Este problema se refiere a utilizar las ramas o arcos de
la red para llegar a todos los nodos de la red, de manera
tal que se minimiza la longitud total.
La aplicación de estos problemas de optimización se
ubica en las redes de comunicación eléctrica, telefónica,
carretera, ferroviaria, aérea, marítima, etc.; donde los
nodos representan puntos de consumo eléctrico,
teléfonos, aeropuertos, computadoras.
Y los arcos podrían ser de alta tensión, cable de fibra
óptica, rutas aéreas, etc.
Si n = numero de nodos, entonces la solución óptima
debe incluir n-1 arcos.
9
11. Algoritmo de Kruskal
1. Comenzar en forma arbitraria en cualquier
nodo y conectarlo con el mas próximo (menos
distante o costoso).
2. Identificar el nodo no conectado que esta más
cera o menos costoso de alguno de los nodos
conectados. Deshacer los empates de forma
arbitraria. Agregar este nodo al conjunto de
nodos conectado.
3. Repartir este aso hasta que se hayan
conectado todos los nodos.
11
13. EL TRANSITO DEL DISTRITO
METROPOLITANO
La ciudad de Vancouver esta planificando el
desarrollo de una nueva línea en sistemas de
tránsito.
El sistema debe unir 8 residencias y centros
comerciales.
El distrito metropolitano de transito necesita
seleccionar un conjunto de líneas que conecten
todos los centros a un mínimo costo.
La red seleccionada debe permitir:
- Factibilidad de las líneas que deban ser construídas.
- Mínimo costo posible por línea.
13
14. RED QUE
55
REPRESENTA Zona Norte Universidad
EL ARBOL 50
3 5
EXPANDIDO. 30
Distrito
Comercial 39
38
33 4
34
Zona Oeste 45
32
1
28 8
35 43
Zona 2 6 Zona Este
Shopping
40 Centro 41
Center
37
36 44
7 Zona Sur
14
15. Solución - Analogía con un problema de redes
- El algoritmo que resuelve este problema es un procedimiento
muy fácil (“trivial”).
- Corresponde a una categoría de algoritmos “ávidos”.
- Algoritmo:
* Comience seleccionando el arco de menor longitud.
* En cada iteración, agregue el siguiente arco de menor
longitud del conjunto de arcos disponibles , tomando la
precaución de no formar ningún loop.
* El algoritmo finaliza cuando todos los nodos están
conectados.
Solución mediante el computador
- Los entrada consiste en el número de nodos, el largo de los
arcos y la descripción de la red.
15
17. RED QU E 55
REPRESENTA LA 50
Universidad
SOLUCIÓN ÓPTIMA 3 5
Zona Norte 30
Distrito
Comercial 39
38
33 4
34
Zona Oeste 45
Loop 32
1
28 8
35 43
Zona 2 6 Zona Este
Shopping
40 Centror 41
Center
37
36 44
Costo Total = $236 millones
7 Zona Sur
17
18. EJEMPLO 2
RED DE COMUNICACIONES
ÀRBOL DE EXPANSIÓN MÍNIMA
18
19. Ejemplo 1
Se va a instalar una red de comunicación
entre 12 ciudades.
Los costos de los posibles enlaces
directos entre pares permisibles es el que
se muestra en la figura.
Cada unidad de costo representa $10,000
dólares.
19
39. Solucione el siguiente árbol de extensión mínima para
la red de comunicaciones de emergencia usando el
método tabular. Las unidades son distancias en kms.
39
58. EJEMPLO 4
CENTRO REGIONAL DE
CÓMPUTO
Árbol de expansión mínima
58
59. Un centro regional de cómputo (C.R.C.), debe
instalar líneas especiales para comunicación, a
fin de conectar a cinco usuarios satélite con una
nueva computadora central, la compañía
telefónica local es la que instalará la nueva red
de comunicaciones, pero es una operación
costosa.
Con el propósito de reducir costos, se busca
que la longitud total (Kms.) de estas líneas sea
la menor posible.
La red para este problema es la siguiente:
59
62. Desarrollo del algoritmo:
· Ubicarse en el nodo 3 (puede ser en
cualquier otro nodo) y se encuentra que el
nodo más próximo es el 4 (10 Kms.)
· El siguiente nodo más cercano al 3 o 4 es
el nodo 6 (20 Kms).
· Repitiendo el paso anterior tenemos el
siguiente árbol de extensión mínima:
62
76. La cía. MCC acaba de obtener la aprobación
para ofrecer el servicio de televisión por cable
en una zona metropolitana.
Los nodos de la red que aparece en seguida
representan los puntos de distribución a los que
deben llegar las líneas primarias del cable.
Los arcos de la red muestran el número de
millas que existen entre los puntos de
distribución.
Determine la solución que permitirá a la
compañía llegar a todos los puntos de
distribución con una longitud mínima de la línea
del cable primario. 76
81. 1. TV Cable Visión desea establecer una red de
comunicación para brindar el servicio de cable que
permita enlazar las 14 ciudades de la República
Mexicana.
Determinar cómo se conectarían dichos 14 ciudades de
forma que la longitud de cable a utilizarse sea mínima.
El nodo 1 constituye la estación de reparto.
Los números expresados en cada rama expresan las
distancias entre las ciudades.
A través de la aplicación de este algoritmo, podemos
calcular la cantidad mínima de cable a ser utilizadas en
la red de comunicación por cable (expresado en metros)
81
85. 1° A = {1} B = {2,3,4,5,6,7,8,9,10,11,12,13,14,15}
Min = {(1,2)(1,3)(1,4)} = (1,2) = 4000
2° A = {1,2} B = {3,4,5,6,7,8,9,10,11,12,13,14,15}
Min = {(1,3)(1,4)(2,3)(2,5)(2,6)} = (2,3) = 200
3° A = {1,2,3} B = {4,5,6,7,8,9,10,11,12,13,14,15}
Min = {(1,4)(2,5)(2,6)(3,4)(3,5)} = (3,4) = 200
4° A = {1,2,3,4} B = {5,6,7,8,9,10,11,12,13,14,15}
Min = {(2,5)(2,6)(3,5)(4,5)(4,9)} = (4,5) = 250
5° A = {1,2,3,4,5} B = {6,7,8,9,10,11,12,13,14,15}
Min = {(2,6)(4,9)(5,6)(5,7)(5,9)} = (5,6) = 200
6° A = {1,2,3,4,5,6} B = {7,8,9,10,11,12,13,14,15}
Min = {(4,9)(5,7)(5,9)(6,7)(6,8)(6,12)} = (6,7) = 200
7° A = {1,2,3,4,5,6,7} B = {8,9,10,11,12,13,14,15}
Min = {(4,9)(5,9)(6,8)(6,12)(7,8)(7,9)} = (7,8) = 150
85
86. 8° A = {1,2,3,4,5,6,7,8} B = {9,10,11,12,13,14,15}
Min = {(4,9)(5,9)(6,12)(7,9)(8,9)(8,11)(8,12)} = (8,9) = 200
9° A = {1,2,3,4,5,6,7,8,9} B = {10,11,12,13,14,15}
Min = {(6,12)(8,11)(8,12)(9,10)} = (9,10) = 250
10° A = {1,2,3,4,5,6,7,8,9,10} B = {11,12,13,14,15}
Min = {(6,12)(8,11)(8,12)(10,11)(10,15)} = (10,11) = 180
11° A = {1,2,3,4,5,6,7,8,9,10,11} B = {12,13,14,15}
Min = {(6,12)(8,12)(10,15)(11,13)(11,14)(11,15)} = (11,13) = 350
12° A = {1,2,3,4,5,6,7,8,9,10,11,13} B = {12,14,15}
Min = {(6,12)(8,12)(10,15)(11,13)(11,14)(11,15)(13,14)} = (13,14) = 120
13° A = {1,2,3,4,5,6,7,8,9,10,11,13,14} B = {15}
Min = {(6,12)(8,12)(10,15)(11,15)(14,15)} = (14,15) = 120
86
88. Una compañía desea anunciar su producto a las
12 principales estaciones de radio locales.
La red de comunicaciones por cable que enlaza
a las estaciones de radio se indica en la figura.
Determine como se conecta las 12 estaciones
de radio de modo que se minimice la longitud
total del cable que se utilizó (Kms).
88
91. SOLUCION EN EL TORA :
ARBOL1
---------------------------------------------------------
*** MINIMAL SPANNING TREE SOLUTION ***
Minimal spanning tree length = 28.0000
91
94. Una empresa de paquetería ha iniciado
sus labores, repartiendo paquetes por
toda la ciudad, pero tiene clientes
principales, los cuales necesitan sus
paquetes lo más pronto posible.
La empresa necesita saber cual es el
camino más rápido para que sus enviados
lleguen a su destino para hacer la entrega
a tiempo.
94
104. Algoritmo de Kruskal
Dado un grafo ponderado G=(V, A), el algoritmo parte de un grafo
G’= (V, Ø). Cada nodo es una componente conexa en sí misma.
En cada paso de ejecución se elige la arista de menor costo de A.
Si une dos nodos que pertenecen a distintas componentes conexas
entonces se añade al árbol de expansión G’.
En otro caso no se coge, ya que formaría un ciclo en G’.
Acabar cuando G’ sea conexo: cuando tengamos n-1 aristas.
Estructura del algoritmo de Kruskal
Sea T de tipo Conjunto de aristas, el lugar donde se guardarán las aristas del
árbol de expansión. Asignar T a Ø.
Mientras T contenga menos de n-1 aristas hacer:
Elegir la arista (v, w) de A con menor costo.
Borrar (v, w) de A (para no volver a cogerla).
Si v, w están en distintos componentes conexos entonces añadir (v, w) a
T. En otro caso, descartar (v, w).
104
105. Árboles de expansión.
Algoritmo de Kruskal
Ejemplo. Mostrar la ejecución del algoritmo de Kruskal.
5
1 4 1 4 1 4
1 1
6 5 2 2
5 3 4 3 5 3
2 2 2 4
6 6 6 6
3 6 3
5 5 5
Necesidades del algoritmo:
Las aristas deben ser ordenadas, según el costo.
Necesitamos operaciones para saber si dos nodos están en la misma
componente conexa y para unir componentes.
Relación dos nodos pertenecen a una componente conexa: es una
relación binaria de equivalencia ⇒ podemos usar la estructura de
representación para relaciones de equivalencia (con operaciones Inicia,
Encuentra y Unión).
105