lunes, 29 de junio de 2020

Luces de Árbol de Costo Mínimo

Este problema surge de la necesidad de encontrar dentro de un grafo no dirigido, un árbol que recorra todos los nodos del grafo, y cuya suma de los pesos o valores de las aristas sea menor entre todos los arboles que se puedan formar en el grafo en cuestión.

El árbol resultante es el llamado Árbol de cobertura mínima. Ejemplo, podemos encontrar dentro del grafo, el árbol de cobertura mínima, puesto que observamos que al número de arboles que se pueden generar es significativo. 

Algoritmo de Prim

El algoritmo de Prim es un algoritmo perteneciente a la teoría de los grafos para encontrar un árbol de cobertura mínimo dentro de un grafo no dirigido. En otras palabras, el algoritmo encuentra un subconjunto de aristas que forman un árbol con todos los vértices, donde el peso total de todas las aristas en el árbol es el mínimo posible. Ejercicio:

Primero elegimos un nodo que tomara la función de nodo raíz y lo señalamos.

Luego se encuentran las aristas que estén conectadas al nodo raíz.

De las aristas encontradas se procede a determinar cual es la que tiene menor peso y se la señala.

En el caso de encontrarse con aristas que tengan el mismo peso se procede a seleccionar una de ellas de forma aleatoria.

Se procede a marcar el nodo al cual se encuentra conectada la arista anteriormente seleccionada.

Luego se vuelve a comparar los pesos entre los nodos relacionados, en este caso A-C, como los pesos son iguales son iguales se puede escoger cualquier arista.

Se vuelve a marcar el nodo que resultó estar conectada a la arista y se repite de forma continua los mismos pasos hasta tener un árbol que una todos los vértices.

Finalmente podemos observar que todos los nodos están unidos, es decir el árbol de cobertura mínimo para el nodo raíz A, está dado por la siguiente figura:


Algoritmo de Kruskal

De igual forma el algoritmo de kruskal es un algoritmo de la teoría de grafos, que es utilizado para encontrar el árbol de cobertura mínimo dentro de un grafo determinado.

Es decir, busca un subconjunto de aristas que, formado un árbol, incluyen todos los vértices y donde el valor total de todas las aristas del árbol es el mínimo. Ejercicio:

Se tiene un grafo inicial del cual partimos:

Primero procedemos a determinar de entre todos los nodos las aristas cuál es la arista que tiene el menor peso y la seleccionamos.

Procedemos a señalar la arista y los vértices que une tomando en cuenta lo explicado anteriormente.

Realizamos el mismo procedimiento, encontramos el valor menor de los pesos y marcamos los vértices que una dicha arista. 

Podemos observar que el siguiente valor de arista a tomar debe ser el número 3, pero en ese caso estaríamos generando un recorrido cerrado así que tomamos el siguiente valor que en este caso será el 4.

Si podemos observar, se vuelve a generar el inconveniente anterior así que elegimos el valor que le sigue.

En el caso de que el valor que le siga se repita, se puede escoger cualquiera de las dos aristas, tomando en cuenta que no se debe generar un lazo cerrado.


En la gráfica se puede observar que las dos aristas coinciden en un punto, pero es necesario aclarar que no se genera un lazo cerrado ya que solo son trayectorias que están pasando por un lugar en común más no están en ningún momento en intersección.

El árbol expandido que se genera es el siguiente:





La aplicación de estos problemas de optimización dentro de nuestra especialidad y nuestro diario vivir se ubica en las redes de comunicación eléctrica, telefónica, carretera, ferrovía, aérea, marítima, etc., donde los nodos representan puntos d consumo eléctrico, teléfonos, aeropuertos, computadoras, y las aristas podrían ser de alta tensión, cable de fibra óptica, rutas aéreas, etc.











No hay comentarios:

Publicar un comentario

Ejercicios

Un navegante solitario dispone en su barco de 5 metros cúbicos para almacenar cuatro objetos. El objeto A tiene un volumen de 2 m 3 y report...