Professional Documents
Culture Documents
INTRODUCCION
Dentro del enfoque práctico, los grafos permiten estudiar las interrelaciones entre unidades que interactúan
unas con otras, por ejemplo, en el campo de ingeniería de sistemas, es posible estudiar y representar
mediante grafos el funcionamiento de una red de computadoras, donde los vértices representarían a las
terminales y las aristas representan las conexiones entre dichas terminales.
Es posible hacer uso de grafos dentro del campo de la ingeniería civil, algunas de sus aplicaciones serían las
siguientes:
- En vías de comunicación, donde los vértices representarían las diferentes localidades por donde
pasaría una carretera, y las aristas podrían representar el precio de construcción de cada tramo, la
distancia total de dicho tramo, así como otros factores.
- En obras hidráulicas y sanitarias, donde los vértices representarían, al igual que en vías de
comunicación, distintas localidades que serían beneficiadas por un sistema de riego, o un sistema de
alcantarillado sanitario, etc. Las aristas pueden representar varios parámetros que influyen en el diseño
y construcción de estos sistemas, como ser: caudales máximos y mínimos, longitudes de tramo, etc.
Un grafo, matemáticamente es representado por la letra “G”, que representa al par ordenado 𝐺 = (𝑉, 𝐸).
Donde:
La teoría de grafos tiene sus fundamentos en las matemáticas discretas y las matemáticas aplicadas. Esta
teoría requiere del conocimiento previo de distintas áreas como ser: Combinatoria, Algebra, Probabilidad,
Geometría de polígonos, Aritmética y Topología.
El uso de la teoría de grafos tiene mayor incidencia en el campo en la ingeniera de sistemas y ciencias de la
computación, informática y telecomunicaciones, pero también es posible aplicarlo en la ingeniería civil, en
casos anteriormente discutidos.
a) Clasificación de Grafos:
Según su Direccionalidad:
Grafo Dirigido; es aquel que tiene aristas con una dirección definida y única, es decir, si se
tienen dos vértices A y B, la arista presenta una dirección definida tal que solo es posible
legar de A a B, pero no de B a A, ver figura 1.2
Página | 2
Grafo NO Dirigido; No posee ninguna dirección definida, por lo que el sentido de dirección
en sus aristas puede ser arbitraria, es decir, el sentido de circulación en la arista puede ser
en ambas direcciones, ver figura 1.3
Según su Conectividad:
Grafo Conexo; Se tiene un grafo conexo si todos sus vértices están conectados por lo
menos por una arista.
Grafo NO Conexo; se tiene un grafo no conexo cuando no todos sus vértices se encuentran
conectados, es decir, el grafo presenta vértices si enlace a otros vértices, lo que provoca
una interrupción en la continuidad del flujo.
Grafo Simple; Es aquel cuyo par de vértices puede ser unido solamente por una arista, en
cambio si se da el caso de que un par determinado de vértices en un grafo, presentan
más de un enlace, entonces el grafo deja de ser simple. En la Figura 1.5 se aprecia un grafo
Página | 3
conformado por tres vértices y tres aristas, el hecho de que cada par de vértices (1,2) (2,3)
y (3,1), estén unidos por una sola arista, es lo que lo vuelve un grafo simple.
Grafo Completo; Este tipo de grafo se genera cuando todos los vértices que lo componen
están enlazados entre sí, es decir, todo par de vértices presente en el grafo debe tener
una arista que los enlace. Debe aclararse que un grafo completo, también debe ser
simple, es decir, dado el hecho de que todos los pares presentes de vértices en el grafo
estén enlazados entre sí, no significa que deba existir más de una arista para unir un único
Página | 4
par de vértices. En la Tabla 1.1 se muestran varios ejemplos de grafos completos según el
número de vértices presentes en él, notar como cada vértice está conectado a los
restantes. La expresión matemática para definir el número de aristas en función a la
cantidad de vértices es: 𝐾𝑛 : 𝑛(𝑛 − 1)/2 , donde “n” es el número de vértices.
𝐾1 : 0 𝐾2 : 1 𝐾3 : 3 𝐾4 : 6
𝐾5 : 10 𝐾6 : 15 𝐾7 : 21 𝐾8 : 28
Grafos Bipartitos; Los vértices que conforman este grafo se encuentran separados en dos
conjuntos separados, la condición para que un grafo sea bipartito es que exista al menos
una arista que una a un vértice del conjunto A con otro del conjunto B. No deben existir
aristas que una a dos vértices pertenecientes a un mismo conjunto.
Página | 5
Árboles; Un árbol es un grafo que no presenta ciclos y que conecta a todos sus vértices
utilizando el menor número de aristas posibles.
Página | 6
Capítulo 2:
ÁRBOLES
Para que un grafo sea considerado como árbol, debe cumplir una serie de requisitos expuestos a
continuación: (se representará al conjunto árbol con la letra “G”)
- G es conexo
Las condiciones anteriores son todas equivalentes, es decir, si se cumple una de ellas otras también se
cumplen. Para árboles finitos además se cumple que: Si un árbol G tiene un número finito de vértices, n,
entonces tiene n − 1 aristas.
Página | 7
Algunas definiciones relacionadas con los árboles son:
Un árbol dirigido, también denominado Arborescencia es un grafo dirigido que sería un árbol si no se
consideraran las direcciones de las aristas, es decir, para que se considere a un grafo como árbol, debe
carecer de direccionalidad en sus aristas; en cambio sí se presentan aristas direccionadas en el grafo, el
concepto de árbol ya no aplica a ese caso, por lo que se consideraría el concepto de arborescencia
que será descrito detalladamente más adelante.
Un árbol recibe el nombre de árbol con raíz si un vértice ha sido designado raíz. En este caso las aristas
tienen una orientación natural hacia o desde la raíz. Los árboles con raíz, a menudo con estructuras
adicionales como orden de los vecinos de cada vértice, son una estructura clave en informática;
véase árbol (programación).
Un árbol etiquetado es un árbol en el que cada vértice tiene una única etiqueta. Los vértices de un árbol
etiquetado de n vértices reciben normalmente las etiquetas {1,2, ..., n}.
Un árbol regular u homogéneo es un árbol en el que cada vértice tiene el mismo grado, es decir, que
todos los vértices que componen el árbol deben tener la misma cantidad de aristas que los unen.
Todo árbol posee una altura. Recorriendo el mismo en forma de grafo dirigido y considerando que las
aristas parten desde los vértices hacia algún otro vértice o hacia alguna hoja, de forma tal que todo
camino inicia en la raíz y termina en una hoja, puede afirmarse que el árbol posee una altura h. Dicha
altura será igual a la longitud del camino con más aristas.
Página | 8
involucren un aumento en la producción, optimización, etc., y a su vez una reducción en los costos de
operación, distancias recorridas y otros factores. En resumen, se busca la ruta más conveniente para el
óptimo funcionamiento y ejecución de un proyecto.
Dentro del concepto de la teoría de grafos, antes de adentrarnos en los métodos para hallar el árbol
recubridor mínimo, es preciso conocer el origen de dicho árbol, para ello debemos considerar un grafo “G”
que tenga las siguientes características:
Si se observa con cuidado la cuarta condición, se hace mención a la expresión “peso en sus aristas”; dentro
del campo de la teoría de grafos, el peso de una arista se refiere a que ésta se encuentra acompañada de
un valor numérico que representa distintos parámetros como ser: Distancias, costos, y otros datos que se
consideran en el diseño y operación de un proyecto de ingeniería.
Al contar con todos los datos y requisitos necesarios en el grafo, es posible hallar por distintos métodos el árbol
recubridor mínimo.
En conclusión, el árbol recubridor mínimo vendría a ser un componente extraído del grafo original, es decir,
que del grafo (el cual debe cumplir todos los requerimientos detallados anteriormente), se obtiene por
métodos definidos, un subgrafo que representa al árbol recubridor mínimo (que debe cumplir con los
requisitos previos para que sea considerado un árbol). Para aclarar todo ello, observe la figura 2.2, en donde
se muestra en color gris claro el grafo estudiado, y en color negro, el árbol recubridor mínimo obtenido.
Página | 9
En la figura también es posible observar que al realizar la suma de todos los pesos de las aristas que conforman
el árbol, se obtiene un valor mínimo respecto a la suma de los pesos de cualquier otra ruta que pueda
presentarse en el grafo, es por esa razón que se denomina árbol recubridor mínimo. También nótese que el
árbol involucra a todos los vértices presentes en el grafo y los une cumpliendo todas las características que
debe tener un árbol.
- Algoritmo de Prim
- Algoritmo de Kruskal
b) Algoritmo de Prim:
¿Quién Fue Prim?
Robert C. Prim, Nació en 1921, Sweetwater, (Estados Unidos) es un matemático e ingeniero
informático.
Robert Prim en 1957 descubrió un algoritmo para la resolución del problema del Árbol de coste
total mínimo (minimum spanning tree - MST). Este problema es un problema típico de optimización
combinatoria, que fue considerado originalmente por Otakar Boruvka en 1926 mientras estudiaba
la necesidad de electrificación rural en el sur de Moravia en Checoslovaquia. Este problema
también fue resuelto por Joseph B. Kruskal en 1956.
Página | 10
Introducción al Método:
El algoritmo de Prim es un algoritmo perteneciente a la teoría de los grafos para encontrar un árbol
recubridor mínimo en un grafo conexo, no dirigido y cuyas aristas están etiquetadas.
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. Si el grafo no
es conexo, entonces el algoritmo encontrará el árbol recubridor mínimo para uno de los
componentes conexos que forman dicho grafo no conexo.
El algoritmo fue diseñado en 1930 por el matemático Vojtech Jarnik y luego de manera
independiente por el científico computacional Robert C. Prim en 1957 y redescubierto por Dijkstra
en 1959. Por esta razón, el algoritmo es también conocido como algoritmo DJP o algoritmo de
Jarnik.
El árbol recubridor mínimo está completamente construido cuando no quedan más vértices por
agregar.
Aumentar el árbol, por un lado. Llamamos lado a la unión entre dos vértices: de las posibles
uniones que pueden conectar el árbol a los vértices que no están aún en el árbol,
encontrar el lado de menor distancia y unirlo al árbol.
Ejemplo de Aplicación:
Se quiere construir una red de caminos que comunique a la cabecera municipal de San Jacinto
con las villas y rancherías de la región. Un experto ha estimado el costo de construcción (en
millones de Bs.) de cada uno de los caminos factibles y lo ha plasmado en una red que se muestra
en la siguiente figura:
Página | 11
Determinar la red de caminos con el menor costo de construcción, que una a todos los puntos
mostrados en el grafo.
El primer paso consiste en determinar el vértice inicial del árbol a encontrar, basándonos
en el grafo propuesto, consideraremos al vértice N°1 como el inicial.
Una vez determinado el nodo inicial, se debe seleccionas todas las aristas que parten de
él y sus destinos, como se muestra a continuación:
Como se puede observar, el primer nodo en formar parte del árbol vendría a ser el N°1, de
éste parten cuatro aristas enlazados a cuatro vértices, de todos estos, el más corto vendría
Página | 12
a ser la arista (1,4) con un peso de 4, entonces el siguiente vértice en formar parte del árbol
sería el N°4.
Al igual que con el nodo N°1, consideramos todas las aristas que parten del nodo N°4,
como se muestra en la figura:
Pero los pesos de las aristas que parten del nodo N°4 tienen valores muy altos para ser
tomados en cuenta dentro el árbol deseado, entonces debemos volver al punto de partida
(Nodo N°19 y buscar una arista de menor peso, en este caso vendría a ser la arista (1,2)
con un peso de 5.
Ahora que el nodo N°2 forma parte del árbol, se deben considerar todas las aristas que
parten de él, como se muestra en la siguiente figura:
De todas las aristas que parten del nodo N°2, la de menor peso es la que une a 2 y 3,
entonces el nodo N°3 formaría parte del árbol
Página | 13
Nótese que el peso de las aristas que parten del nodo N°3, tienen mayos peso que las que
parten del nodo N°2, situación que no es conveniente para hallar el árbol, entonces se
vuelve al nodo predecesor (Nodo N°2) parta hallar una nueva ruta hacia el siguiente nodo
(Nodo N°5)
Considerado el nodo N°5 como parte del árbol, realizamos el mismo procedimiento que
en pasos anteriores:
Página | 14
Una vez que ya se enlazaron todos los vértices, dar por concluido el ejercicio y por
determinado el árbol recubridor mínimo:
Página | 15
La suma de todos los pesos se muestra en la siguiente tabla:
Como conclusión final, se determinó que el costo mínimo para la construcción de una red
vial que una los 7 puntos establecidos, tiene un precio total de 21 millones de bs.
c) Algoritmo de Kruskal:
¿Quién fue Kruskal?
Joseph B. Kruskal investigador del Math Center (Bell-Labs), que en 1956 descubrió su algoritmo
para la resolución del problema del Árbol de coste total mínimo (minimum spanning tree - MST)
también llamado árbol recubridor euclídeo mínimo.
El objetivo del algoritmo de Kruskal es construir un árbol (subgrafo sin ciclos) formado por arcos
sucesivamente seleccionados de mínimo peso a partir de un grafo con pesos en los arcos.
Página | 16
Introducción al Método:
El Algoritmo de Kruskal que resuelve la misma clase de problema que el de Prim, salvo que en esta
ocasión no partimos desde ningún nodo elegido al azar. Para resolver el mismo problema lo que
hacemos es pasarle a la función una lista con las aristas ordenada de menor a mayor, e iremos
tomando una para formar el árbol deseado.
El algoritmo de Kruskal permite hallar el árbol minimal de cualquier grafo valorado (con
capacidades). Hay que seguir los siguientes pasos:
Se marca la arista con menor valor. Si hay más de una, se elige cualquiera de ellas.
De las aristas restantes, se marca la que tenga menor valor, si hay más de una, se elige
cualquiera de ellas.
Repetir el paso 2 siempre que la arista elegida no forme un ciclo con las ya marcadas.
El proceso termina cuando tenemos todos los nodos del grafo en alguna de las aristas
marcadas, es decir, cuando tenemos marcados n-1 arcos, siendo n el número de nodos
del grafo.
Ejemplo de Aplicación:
En la figura siguiente se muestra una parte de la red ferroviaria multimodal de una ciudad, donde
se señalan las distancias aproximadas entre terminales en kilómetros. Encontrar el árbol reducidor
mínimo.
Página | 17
El método consiste en seleccionar las aristas con menor peso de toda la red, partiendo por la más
baja, que en este caso sería la arista que une a los nodos N°10 y 14:
Página | 18
Luego buscar y seleccionar la arista con peso inmediatamente superior, en este caso vendría a ser la
que une a los nodos N°8 y 12
Página | 19
Luego la arista que une los nodos N°9 y 12:
Página | 20
La arista que une a 6 y 8:
la arista inmediatamente superior sería la que une a 11 y 12, pero fíjese que si tomamos esa ruta, se
forma un ciclo que pasa por los nodos 6-8-11-12, entonces descartar esa arista e ir por la inmediata
superior, en este caso la que une a 4 y 8:
Página | 21
Seguir con la arista que une a 12 y 15:
Página | 22
Seguir con la arista que une a 5 y 10, descartar la que une a 9 y 15 por formar un ciclo con 9-12-15:
Página | 23
Seguir con la que une 10 y 11:
Página | 24
Seguir con la arista que une a 3 y 5:
Descartar las aristas que unen a 4-6 y 5-6, ya que forman ciclos, la que le sigue es la que une a 7 y 9:
Página | 25
Finalmente, la última arista en considerar vendría a ser la que une los nodos N°1 y 3:
Las Aristas de color verde representan el árbol generado, mientras que las azules señalan las
aristas que no fueron incluidas en el proceso debido a que forman ciclos,
A continuación, se muestra el árbol separado del grafo de origen y la tabla para calcular la
suma de todos los pesos involucrados y así, determinar el recorrido mínimo.
Página | 26
RUTA OPTIMA FERROVIARIA
ARISTA O ARCO PESO [km] ARISTA O ARCO PESO [km]
(1,3) 680 (12,8) 100
(2,4) 350 (10,14) 80
(7.9) 590 (6,11) 220
(3,5) 480 (12,15) 260
(4,8) 250 (14,13) 270
(9,12) 120 (11,10) 420
(5,10) 300 (11,16) 470
(8,6) 230
TOTAL, DISTANCIA RECORRIDA: 4820 km.
Página | 27
Capítulo 3:
ARBORESCENCIAS
La diferencia elemental entre un árbol y una arborescencia recae en la orientación de sus aristas; en un árbol,
las aristas no cuentan con una orientación definida, pero en el caso de las arborescencias, éstas si presentan
direcciones definidas y únicas. Entonces el concepto de arborescencia vendría a ser el siguiente:
Una arborescencia o poliárbol es un grafo acíclico orientado, en la cual es fundamental especificar el vértice
principal de partida o también conocido como nodo raíz, de donde se originan las aristas orientadas y
culminan en otros vértices intermedios o en vértices terminales. Para enlazar los diferentes vértices
mencionados, existe una ruta única que parte desde la raíz, de ahí la importancia de su determinación.
Página | 28
3.2. COMPONENTES DE UNA ARBORESCENCIA:
Una arborescencia tiene por lo general una estructura del tipo jerárquica, es decir, posee diferentes niveles
partiendo de uno superior o raíz, y terminando en uno inferior constituidos por elementos denominados hojas.
en base a esa aclaración, una arborescencia cuenta con los siguientes componentes:
- Raíz; Es el elemento vértice o nodo principal, de él parten las aristas que conectan a otros vértices
ubicados en niveles inferiores.
- Vértice Intermedio; Como su nombre lo indica, son vértices que se encuentran en niveles inferiores al
de la raíz, pero a su vez también cuentan con aristas que parten de estos vértices, en resumen, son
nodos a los cuales llegan y salen aristas.
- Vértice Terminal u Hoja; Son los vértices que marcan el final de un camino o ruta contenida en una
arborescencia.
- Padre; Se denomina así a un nodo inmediatamente superior a otro dentro de una ruta única.
- Ancestro; Son todos los nodos inmediatamente superiores hasta llegar a la raíz en una misma ruta
Para entender con mayor claridad los conceptos mencionados, se hará uso de la siguiente arborescencia:
Página | 29
La raíz vendría a ser el nodo A
Los vértices intermedios serían los siguientes:
En el NIVEL 2: B, C, D
En el NIVEL 3: F, I, J, K
En el NIVEL 5: L, N
Los vértices Terminales u Hojas serían los siguientes:
En el NIVEL 3: E, G, H
En El NIVEL 4: M, O, P, Q
En El NIVEL 5: R, S, T
Algunos ejemplos para definir los conceptos de Padre, Hijo, Ancestro, y Descendiente
¿Cuál es el PADRE de H? C
¿Cuáles son los HIJOS de D? J, K
¿Cuáles son los ANCESTROS DE R? L, F, B, A
¿Cuáles son los DESCENDIENTES de A? B, C, D
A este tipo de arborescencias se los denomina “árboles m-arios”, donde el término “m” se refiere al número
de hijos que tiene un vértice intermedio. Ahora, se denomina “árbol m-ario completo” cuando todo vértice
intermedio presenta exactamente el mismo número de hijos.
Para apreciar con mayor claridad los conceptos discutidos, se hará uso de los siguientes ejemplos de árboles:
Raíz: A
Vértices Intermedios B, C, D, E
N° de Hijos A(m=2), B(m=2), C(m=1), D(m=1), E(m=2)
Página | 30
EJEMPLO 2 – ARBOL BINARIO COMPLETO
Raíz: A
Vértices Intermedios B, C, D, G
N° de Hijos A(m=2), B(m=2), C(m=2), D(m=2), G(m=2)
EJEMPLO 3 – ARBOL TERCIARIO
Raíz: A
Vértices Intermedios B, C, D, E, F, G, I
N° de Hijos A(m=3), B(m=1), C(m=3), D(m=1), E(m=1), F(m=2),
I(m=3), G(m=1)
EJEMPLO 4 – ARBOL TERCIARIO COMPLETO
Raíz: A
Vértices Intermedios B, C, D, H
N° de Hijos A(m=3), B(m=3), C(m=3), D=(m=3), E(m=3)
Página | 31
3.3. ARBORESCENCIA DEL CAMINO MÁS CORTO:
a) Funcionamiento:
En la teoría de grafos, el problema del camino más corto es el problema que consiste en encontrar un camino
entre dos vértices (o nodos) de tal manera que la suma de los pesos de las aristas que lo constituyen es
mínima. Un ejemplo de esto es encontrar el camino más rápido para ir de una ciudad a otra en un mapa. En
este caso, los vértices representarían las ciudades y las aristas las carreteras que las unen, cuya ponderación
viene dada por el tiempo que se emplea en atravesarlas.
Este método puede ser utilizado tanto en grafos que presenta aristas dirigidas como no dirigidas, o una
combinación de ambos, en este caso se usará para grafos con aristas dirigidas. Al presentar arcos dirigidos,
la ruta más corta será única, y a diferencia de los árboles generados en anteriores casos, para hallar la ruta
más corta, ésta no tiene la obligación de pasar por todos los vértices del grafo.
Es lógico llegar a esa conclusión, ya que, si forzamos a que el árbol generado pase por todos los vértices
presentes en el grafo, la ruta ya no sería única, además si este presenta aristas dirigidas, es prácticamente
imposible que se encuentre una ruta que incluya a todos los puntos, salvo raras excepciones en que las rutas
son escasas o el grafo presenta un número reducido de vértices y aristas. En situaciones más complejas que
involucren un mayor número de elementos a analizar, forzar a la ruta más corta pasar por todos los nodos de
un grafo, sería algo ridículo.
Los métodos que se utilizarán para hallar los caminos más cortos que puedan generarse en grafos con
arcos dirigidos, son los siguientes:
- Algoritmo de Dijkstra
b) Algoritmo de Dijkstra:
Poco después de su muerte en el 2002, recibió la distinción ACM PODC Influential Paper Award
en computación distribuida por su trabajo en la auto-estabilización en programas
computacionales. Este premio fue renombrado a Premio Dijkstra el siguiente año en su honor.
Dijkstra fue uno de los mayores oponentes de la visión de las ciencias de la computación desde
el punto de vista de la ingeniería. Mediante el término "ciencias de la computación", que
sustituyó a "ciencias del computador", Dijkstra quería hacer énfasis en los mecanismos
abstractos que esta ciencia tiene.
Página | 32
Dijkstra consideraba que el trabajo de un programador no era la realización de programas,
sino diseñar las distintas clases de computación para el posterior desarrollo de estos. Este
pensamiento queda reflejado en su obra The Humble Programmer (1972).
Dijkstra murió el 6 de agosto de 2002 después de una larga lucha contra el cáncer.
Introducción al Método:
La idea subyacente en este algoritmo consiste en ir explorando todos los caminos más cortos
que parten del vértice origen y que llevan a todos los demás vértices; cuando se obtiene el
camino más corto desde el vértice origen, al resto de vértices que componen el grafo, el
algoritmo se detiene. El algoritmo es una especialización de la búsqueda de costo uniforme, y
como tal, no funciona en grafos con aristas de coste negativo (al elegir siempre el nodo con
distancia menor, pueden quedar excluidos de la búsqueda nodos que en próximas iteraciones
bajarían el costo general del camino al pasar por una arista con costo negativo).
Teniendo un grafo dirigido ponderado de N nodos no aislados, sea x el nodo inicial, un vector
D de tamaño N guardará al final del algoritmo las distancias desde x al resto de los nodos.
Inicializar todas las distancias en D con un valor infinito relativo ya que son
desconocidas al principio, exceptuando la de x que se debe colocar en 0 debido a
que la distancia de x a x sería 0.
Página | 33
Sea a = x (tomamos a como nodo actual).
Para el nodo actual, calculamos la distancia tentativa desde dicho nodo a sus vecinos
con la siguiente fórmula: dt(vi) = Da + d(a,vi). Es decir, la distancia tentativa del nodo
‘vi’ es la distancia que actualmente tiene el nodo en el vector D más la distancia desde
dicho el nodo ‘a’ (el actual) al nodo vi. Si la distancia tentativa es menor que la
distancia almacenada en el vector, actualizamos el vector con esta distancia
tentativa. Es decir: Si dt(vi) < Dvi → Dvi = dt(vi)
Ejemplo de aplicación:
Página | 34
Para hallar la ruta más corta entre los puntos A y B, debemos partir del punto inicial y considerar
todas las aristas que parten de
NODO CLASIFICACIÓN CONDICIÓN
A [0, -] Permanente
1 [2,0 ; A] Temporal
4 [1,2 : A] Temporal
9 [0,9 ; A] Temporal
Al observar con detenimiento la gráfica, nótese que las rutas posibles más largas se
encuentran en la parte superior, entonces automáticamente rechazamos cualquier ruta
posible en esa zona (Arista A,1). Debemos centrarnos en las rutas (A,4) y (A,9) que son las más
cortas, entonces también debemos remarcar todas las aristas generadas en los nodos 4 y 9
Página | 35
Como se puede observar, los valores acumulados obtenidos en las distintas rutas temporales
generadas son similares, por lo que es muy pronto para seleccionar una ruta única, para ello
debemos seguir avanzando hasta generar datos relevantes para seleccionar la ruta más corta.
Para ello consideraremos todas las aristas que se originan en los nodos 5, 10, 16 y 18, como se
observa en la siguiente Tabla:
Como se puede observar en la Tabla, vemos que la ruta 9-18-19 (Valor Acumulado = 3,7) cada
vez se hace más larga en comparación a la ruta 9-16-17 (Valor Acumulado = 3,2), entonces
descartamos totalmente la ruta 9-18-19
Página | 36
Hasta ahora es posible obtener cinco rutas posibles: La ruta 4-5, la ruta 4-10-11-12, la ruta 4-
10-11-17, la ruta 4-10-16-17, la ruta 9-16-17-B. Como vemos en la tabla, la ruta 4-5 se descarta
por alejarse del destino cada vez más, la ruta 4-10-16-17 también se descarta por tener un
valor acumulado igual a 3,1. la ruta 9-16-17 también se descarta por tener un valor acumulado
igual a 3,2. Las rutas posibles serían 4-10-11-17 con un V.A = 3,0 y la ruta 4-10-11-12 con un V.A
=2,7. En la tabla se remarcaron las tres rutas que llegan al nodo N°17 para que sea más fácil
seleccionar cuál es la más corta.
Página | 37
la primera ruta obtenida es A-4-10-11-17-B con V.A = 3,6, la otra ruta alternativa vendría a ser
A-4-10-11-12-13-B (nótese que no se puede in de 13 a 14, lo que la única ruta a seguir es hasta
B)
Si consideramos la ruta A-4-10-11-12-13-B, vemos que tiene un V.A = 3,6, lo que no lleva a la
conclusión que para este grafo existen dos rutas mínimas con el mismo valor agregado, en
este caso igual a 3,6.
- A-4-10-11-17-B
- A-4-10-11-12-13-B
Página | 38
En la figura siguiente se observa la arborescencia del camino más corto generada del grafo
principal, en su forma aislada:
Página | 39
Capítulo 4:
CONCLUSIONES
4.1. CONCLUSIONES:
Un grafo está compuesto por dos elementos, vértices y aristas. Su función es la de relacionar los
diferentes componentes de un sistema determinado de modo que sea posible alcanzar un arreglo
sistemático que permita el funcionamiento óptimo de dicho sistema. Para ello se hace el uso de las
matemáticas y otras ciencias.
La teoría de grafos se encarga del estudio de todas las propiedades de un tipo de grafo determinado.
Un árbol es un grafo conexo, simple, acíclico No dirigido. Su función principal dentro del campo de la
ingeniería es la de representar rutas óptimas dentro de una red, con el fin de facilitar la resolución de
problemas ingenieriles en cuanto a la optimización de costos, tiempos de ejecución, selección de
material, reducción de distancias, etc.
Para hallar aquellos árboles mencionados (árbol recubridor mínimo en este caso) se hace el uso de
varios métodos, entre estos se encuentran los algoritmos de Prim y Kruskal.
El algoritmo de Prim determina el árbol recubridor mínimo considerando un nodo inicial del cual
partirán los demás, durante ese proceso, se van seleccionando de manera ordenada loa arcos con
menor valor hasta cubrir todos los vértices del sistema a resolver. Por ningún motivo se deben formar
ciclos, ya que ello anula el concepto de árbol.
Las arborescencias son árboles dirigidos, es decir, poseen arcos con una dirección única. Por lógica
los grafos de donde provienen las arborescencias, también deben tener arcos dirigidos.
Al igual que en los árboles NO dirigidos, lar arborescencias también tienen como función la de
representar rutas óptimas y cortas de circulación dentro de un sistema determinado, para ello se hace
uso de varios métodos como ser: el algoritmo de Dijkstra o el algoritmo de Floyd.
Página | 40
Para hacer uso del algoritmo de Dijkstra se debe contar con un nodo raíz de donde partirá el resto del
sistema, se van determinando varias rutas posibles de circulación y en función al valor del peso
acumulado que se obtiene a medida que se avanza en el recorrido de las posibles rutas, se determina
cual es la más corta, hasta que al final solo queda una. Se dan casos en que se obtiene más de una
ruta mínima en un mismo sistema, en ese caso es posible seleccionar ambas, o bien, escoger aquella
que represente mayores facilidades para llegar al destino (puede intervenir el número de vértices
involucrados, la proximidad al destino, etc.)
4.2. BIBLIOGRAFÍA:
INSTITUTO TECNOLÓGICO DE TIJUANA – Teoría de Árboles
UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO, FACULTAD DE INGENIERIA – Ejercicios Dirigidos y
Problemas Resueltos de Teoría General de Sistemas Aplicada a la Ingeniería Civil – 2010
XAVIER GUYON – Métodos Numéricos por Cadenas de Markov, Página 60.
SITIOS Web
https://es.wikipedia.org/wiki/Teor%C3%ADa_de_grafos
https://es.wikipedia.org/wiki/Grafo
https://es.wikipedia.org/wiki/Multigrafo
https://es.wikipedia.org/wiki/Grafo_completo
https://es.wikipedia.org/wiki/Grafo_bipartito
https://es.wikipedia.org/wiki/%C3%81rbol_(teor%C3%ADa_de_grafos)
https://es.wikipedia.org/wiki/%C3%81rbol_recubridor_m%C3%ADnimo
https://es.wikipedia.org/wiki/Algoritmo_de_Prim
https://es.wikipedia.org/wiki/Algoritmo_de_Kruskal
https://es.wikipedia.org/wiki/Poli%C3%A1rbol
https://es.wikipedia.org/wiki/Algoritmo_de_Dijkstra
https://es.wikipedia.org/wiki/Algoritmo_de_Floyd-Warshall
https://es.wikipedia.org/wiki/Problema_del_camino_m%C3%A1s_corto#Grafos_dirigidos_con_ponder
aci.C3.B3n_no_negativa
https://es.slideshare.net/AlexisChavez1/rboles-y-grafos
https://es.slideshare.net/espejoxiii/arboles-15510425
https://es.slideshare.net/eduardo307/arborescencia-de-ruta-mas-corta
https://es.slideshare.net/eduardo307/ejemplo-1-de-arborescencia-de-ruta-mas-corta1
Página | 41
Contenido
Capítulo 1: INTRODUCCION ......................................................................................................................... 1
1.1. DEFINICION DE GRAFO: ....................................................................................................................................... 1
1.2. TEORÍA DE GRAFOS:.............................................................................................................................................. 2
a) Clasificación de Grafos: ..................................................................................................................................... 2
Capítulo 2: ÁRBOLES ................................................................................................................................. 7
2.1. CONCEPTO DE ARBOL: ............................................................................................................................................. 7
2.2. ARBOL RECUBRIDOR MINIMO: ................................................................................................................................ 8
a) Funcionamiento:....................................................................................................................................................... 8
b) Algoritmo de Prim: .............................................................................................................................................. 10
c) Algoritmo de Kruskal: ......................................................................................................................................... 16
Capítulo 3: ARBORESCENCIAS ..................................................................................................................... 28
3.1. CONCEPTO DE ARBORESCENCIA: ....................................................................................................................... 28
3.2. COMPONENTES DE UNA ARBORESCENCIA: ...................................................................................................... 29
3.3. TIPOS DE ARBORESCENCIAS: ................................................................................................................................. 30
3.3. ARBORESCENCIA DEL CAMINO MÁS CORTO: ................................................................................................. 32
a) Funcionamiento:..................................................................................................................................................... 32
b) Algoritmo de Dijkstra: ............................................................................................................................................ 32
Capítulo 4: CONCLUSIONES ....................................................................................................................... 40
4.1. CONCLUSIONES: .................................................................................................................................................. 40
4.2. BIBLIOGRAFÍA: ........................................................................................................................................................... 41
Página | 42