Algoritmo de Prim
Short Description
Descripción: maneras de resolver el algoritmo de prim...
Description
UNIVERSIDAD POLITÉCNICA ESTATAL DEL CARCHI
FACULTAD DE INDUSTRIAS AGROPECUARIAS Y CIENCIAS AMBIENTALES CARRERA DE INGENIERÍA EN INFORMÁTICA Asignatura.-Matemática Discreta Nivel.- 3ro “A”
DOCENTE: JEFFERY NARANJO Estudiante:
MAYRON SUSCAL
Tema.- ALGORITMO DE PRIM
Tulcán – Ecuador 2016
Contenido ALGORITMO DE PRIM....................................................................................... 2 Grafo a.......................................................................................................... 3 Aplicaciones en la vida real................................................................................. 4 Ejemplo de ejecución.......................................................................................... 5
ALGORITMO DE PRIM El algoritmo incrementa continuamente el tamaño de un árbol, comenzando por un vértice inicial al que se le van agregando sucesivamente vértices cuya distancia a los anteriores es mínima. Esto significa que en cada paso, las aristas a considerar son aquellas que inciden en vértices que ya pertenecen al árbol. El árbol recubierto mínimo está completamente construido cuando no quedan más vértices por agregar. Se mantienen dos conjuntos, el de los vértices incluidos en el árbol y el de los que no lo están. • El procedimiento consiste en elegir la arista de menor peso que une un vértice en el conjunto del árbol con un vértice que no esta en el árbol.
Grafo - Se define como un conjunto de objetos llamados vértices o nodos y la unión de pares de vértices por líneas llamadas aristas, que pueden ser orientadas o no. Orientadas quiere decir si se indica la dirección en que se puede mover de vértice a vértice. Conexo - Quiere decir que todos los pares de vértices deben de estar unidos por un camino o arista.
No dirigido - Es decir, que no se indica hacia dónde se mueve. Aristas etiquetadas - Que nos indiquen un peso, cuota o distancia entre vértices. Sin embargo este no es el único algoritmo que existe para encontrar el árbol de expansión mínima, ya que existe otro como lo es el:
Algoritmo de Kruskal Ejemplo de grafo conexo, no dirigido y con aristas etiquetadas
Cada punto negro es un vértice o nodo, y se le suele asignar una letra para hacer referencia a cada uno. También es posible encontrar grafos donde sus vértices se indican con números, esto no afecta en nada. "Sea V el conjunto de nodos de un grafo pesado no dirigido. El algoritmo de Prim comienza cuando se asigna a un conjunto U de nodos un nodo inicial perteneciente a V, en el cual crece un árbol de expansión, arista por arista. En cada paso se localiza la arista más corta (u,v) que conecta a U con V-U, y después se agrega v, el vértice en V-U, a U. Este paso se repite hasta que V=U. El algoritmo de Prim es de O(N^2), donde |V| = N." En otras palabras: "Este algoritmo construye un árbol agregando aristas de manera iterativa hasta que se obtiene un árbol de expansión mínima. El algoritmo comienza con un solo vértice. Después, en cada iteración, agrega al árbol actual una arista de peso mínimo que no completa un ciclo." Aplicaciones en la vida real Este algoritmo puede ser utilizado en muchos campos como lo son las carreteras, vías férreas, aéreas o marítimas y también en una cancha de futbol. También en redes eléctricas o de telefonía.
Un ejemplo simple imaginable sería el querer viajar en auto por carretera a ciertas ciudades y buscar los caminos que generan distancias más cortas entre ciudades, en el menor tiempo posible o viajando la mínima cantidad de horas. Ejemplo de ejecución
Grafo
Descripción Este es el grafo inicial. Los números indican el peso de las aristas. Se elige de manera aleatoria uno de los vértices que será el vértice de partida. En este caso se ha elegido el vértice D.
Se selecciona la arista de menor peso de entre todas las incidentes en el vértice D, siempre que la arista seleccionada no cree ningún ciclo. En este caso es la arista AD.
Ahora se selecciona la arista de menor peso de entre todas las incidentes en los vértices D y A, siempre que la arista seleccionada no cree ningún ciclo. En este caso es la arista DF.
Se selecciona la arista de menor peso de entre todas las incidentes en los vértices D, A y F, siempre que la arista seleccionada no cree ningún ciclo. En este caso es la arista AB. Llegado a este punto, la arista DB no podrá ser seleccionada, ya que formaría el ciclo ABD.
Se selecciona la arista de menor peso de entre todas las incidentes en los vértices D, A, F y B, siempre que la arista seleccionada no cree ningún ciclo. En este caso es la arista BE. Llegado a este punto, las aristas DE y EF no podrán ser seleccionadas, ya que formarían los ciclos ABED y ABEFD respectivamente. Se selecciona la arista de menor peso de entre todas las incidentes en los vértices D, A, F, B y E, siempre que la arista seleccionada no cree ningún ciclo. En este caso es la arista EC. Llegado a este punto, la arista BC no podrá ser seleccionada, ya que formaría el ciclo BEC.
Solo que disponible el vértice G, por lo tanto se selecciona la arista de menor peso que incide en dicho vértice. Es la arista EG. Como todos los vértices ya han sido seleccionados el proceso ha terminado. Se ha obtenido el árbol de expansión mínima con un peso de 39.
Bibliografía https://es.wikipedia.org/wiki/Algoritmo_de_Prim http://arodrigu.webs.upv.es/grafos/doku.php?id=algoritmo_prim http://es.slideshare.net/fher969/algoritmos-de-kruskal-y-prim http://algoritmoprim-isaias.blogspot.com/ http://esteban-gzz.blogspot.com/2011/07/algoritmo-de-prim.html
View more...
Comments