Está en la página 1de 10

UNIVERSIDAD NACIONAL DEL ALTIPLANO

Facultad de Ingeniera Mec anica Electrica, Electronica y Sistemas


Escuela Profesional de Ingeniera de Sistemas
MONOGRAF

IA
Algoritmo de Kruskal
AUTOR
Jhoel Flores Alejo
2013

Indice
1. INTRODUCCI

ON 3
2. DEFINICIONES 5
3. PASOS 5
4. DEMOSTRACI

ON 6
5. EJEMPLO 6
6. Referencias 9
1
Agradesco a
todas las personas que me apoyaron para la
culminacion de esta monografa. En especial
al docente que nos inculco el uso de estandares
para la elaboracion de esta monografa.
2
1. INTRODUCCI

ON
El algoritmo de Kruskal es conocido como el algoritmo taca no, puesto que siempre busca
el menor coste posible y/o disponible.
En 1956 el matem atico americano norteamericano Joseph Kruskal descrubrio un algo-
ritmo muy simple cuya aplicaci on nos garantiza encontrar un arbol generador mnimo en
cualquier graca ponderada.
La presente monografa esta dividida en 4 captulos que explican el tema de una forma
muy sencilla. En los primeros se toman como referencia a algunos autores de matem aticas
discretas, y en las dos ultimas un ejemplo te orico basico de aplicacion.
3
Resumen
Kruskal creo un algoritmo para encontrar un arbol encubridor mnimo en un grafo
ponderado y convexo. Este algoritmo de la teora de grafos busca un subconjunto de
aristas que incluyen todos los vertices formando un arbol y donde todos los valores de
las aristas de este son mnimas. Si el grafo no es convexo, busca un bosque de expandido
mnimo.
4
2. DEFINICIONES
El algoritmo de Kuskal es un algoritmo de expansi on mnima que siempre busca la arista
mas barata posible.
El algoritmo, conocido como algoritmo de Kruskal, es una variaci on del algoritmo de mni-
ma conexi on. La idea principal de Kruskal consiste en ser ambicioso, escogiendo siempre la
arista mas barata disponible y cuidando que en cada paso del proceso no se forme nigun
circuito(Micha,2003,p.85).
El objetivo del algoritmo de Kruskal es construir un arbol (subgrafo sin ciclos) formado
por arcos sucesivamente seleccionados de mnimo peso a partir de un grafo con pesos en los
arcos. Un arbol (spanning tree) de un grafo es un subgrafo que contiene todos sus vertices o
nodos.(Calderon,2008,p.87).
El algoritmo de Kruskal es un ejemplo de algoritmo taca no
2
a que en cada iteraci on
elige la opcion mas econ omica disponible (es decir, la arista de costo mnimo). (Espino-
sa,2010,p.400).
3. PASOS
Seg un Elas Micha para la aplicaci on del algoritmo es recomendable seguir los siguientes
pasos:
1. elige la arista de menor peso (en caso de empate elige una arbitrariamente)
2. Elige la siguiente arista disponible de menor peso. Si hay mas de una, elige una arbi-
trariamente.
3. Elige la siguiente arista disponible de menor peso. Que no cierra un circuito con las
aristas ya elegidas. Si hay mas de una, elige una arbitrariamente.
4. para una graca de n vertices, repite la regla tres hasta que se hayan elegido n-1 aristas
dela gr aca. Los vertices de la graca y las n-1 aristas as elegidas constituyen el arbol
generador mnimo.
5
4. DEMOSTRACI

ON
Por construcci on T es un subgrafo de recubrimiento acclico de G. Ademas T. es conexo,
pues si no lo fuera seria posible a nadir otra arista sin crear un cclico. Por lo tanto T es
un arbol de recubrimiento de G, de aqui que T(n) = n 1. Sean e
i
1
, e
i
2
, ..., e
i
n1
las aristas
elegidas sucesivamente para construir T.
Supongase que T no es un arbol de recubrimiento de costo mnimo. Sea T un arbol de
recubrimiento de costo y mnimo y sea k {1, 2, ..., n1} tal que {e
i
1
, e
i
2
, ..., e
i
n1
} E(T)
y e
i
k
E(T). Por lo tanto T* +e
i
k
tiene un unico ciclo C y e
i
k
E(C). Ahora bien,
E(C) E(T) = por que T es acclica. e

k
E(C) E(T) y sea T
1
= (T +e
i
k
) e

k
. Por
lo tanto T
1
es un arbol de recubrimiento de G ademas
c(T
i
) = c(T) + c(e
i
k
c(e

k
))
Como c(e
i
k
) c(e

k
) por construccion se sigue que c(T
1
) c(T) Hay que observar que T
1
tiene una arista mas en com un con T que con T*(pues se ha sustituido la arista e

k
que
no perteneca a T por la arista e
i
k
). Repitiendo este proceso se puede obtener un arbol T
N
tal que T
N
= T y c(T
N
) c(T*). Esto implica que c(T) c(T) < c(T) lo cual es una
contradicci on.
5. EJEMPLO
Ejercicio: Utilizar el algoritmo de Kruskal para obtener el arbol de recubrimiento de costo
mnimo en el grafo de la siguiente gura:
gura (1)
6
Soluci on:
Las aristas que se eligen utilizando el algoritmo de kruskal son: e
i
1
= v
1
v
3
, e
i
2
= v
4
v
6
, e
i
3
=
v
2
v
3
, e
i
4
= v
5
v
6
y e
i
5
= v
2
v
4
La gura de abajo muestra el arbol de recubrimiento correspon-
diente:
gura (2)
El algoritmo de Kruskal requiere ordenar las m aristas de menor a mayor costo y esto
requiere O(m log m) operaciones. Para poder vericar que T + e
i
es acclica, es necesario
comprobar que los extremos de e
i
esten en diferentes componentes de T. Esto puede lograrse
asignando a cada verticev
j
una etiqueta de modo que dos vertices tengan la misma etiqueta
si y solo si pertenecen ala misma componente e
i
tienen distinta etiqueta, se re etiquetan sus
extremos con la mas peque na de las dos etiquetas. Para cada arista es necesario hacer una
comparaci on para vericar que sus extremos tengan distinta etiqueta. Una vez que una arista
es a nadida, la re etiquetaci on de sus extremos requiere de una operaci on mas. En conclusi on,
la complejidad del algoritmo de Kruskal depende esencialmente de la operaci on de las aristas
y es por lo tanto O(m log m).(Espinosa,2010,p.401)
7
Conclusion
El algoritmo de Kruskal siempre tiene una solucion optima a este tipo de problemas
donde se busca el arbol de expansion mnimo eso quiere decir que este algoritmo pertenece
a P porque se puede resolver de forma eciente por una maquina determinista en tiempo
polinomial.
8
6. Referencias
Micha, E.(2003). Matematicas Discretas.Mexico: Editorial LIMUSA, S.A.
Calder on, H.D(2008).Matematicas Discretas para la Ciencia de Comunicacion .Puno,Per u:
Editorial Pacico
Espinosa, R(2010).Matematicas Discretas .Mexico:Alfaomega Grupo Editor
9

También podría gustarte