Está en la página 1de 14

Universidad Abierta y a distancia de México

Matemáticas Discretas
Unidad 2
M.S.C. y Mat. Laura Pontón

“No te preocupes por tus dificultades en matemáticas. Te puedo asegurar que las
mías son aún mayores” Albert Einstein

Evidencia de Aprendizaje: Árbol de peso mínimo

Propósito de la Actividad.
El propósito de la actividad es resolver problemas reales por medio del concepto del algoritmo de
Dijkstra, algoritmo de Prim y algoritmo de Kruskal.

Desarrollo:
En esta actividad se presentan problemas donde deberás aplicar los conceptos aprendidos en la
unidad sobre el algoritmo de Dijkstra, el algoritmo de Prim y de Kruskal; creando los grafos
correspondientes y determinando árboles de peso mínimo por medio de los algoritmos
anteriormente mencionados utilizando el programa Grafos.

Criterios de Evaluación y Recepción de Actividades


Para la evaluación de la actividad se tomará en cuenta que las operaciones sean correctas.
Aspecto Ponderación
Aspecto 1 30 puntos
Aspecto 2 30 puntos
Aspecto 3 30 puntos
Portada, Conclusiones y Referencias en 10 puntos
formato APA
Envíos permitidos: 2 intentos con revisión de plagio

Fecha de Entrega: Del 10 al 16 de Agosto

Fecha límite de entrega para evaluación con ponderación sobre 100 puntos: 16 de Agosto
11:55 pm.

Fecha límite de entrega extraordinaria para evaluación con ponderación sobre 80 puntos:
23 de Agosto 11:55 pm.

Aquellas actividades que sean enviadas después del periodo extraordinario serán
evaluadas con ponderación sobre 70 puntos. Con excepción de aquellos Estudiantes que hayan
cumplido con los requisitos establecidos en la Sección 4 de Requisitos para evaluar actividades
extemporáneas en los Criterios generales para la recepción y evaluación de actividades publicada
por la Universidad en la siguiente dirección electrónica:
https://ceit.unadmexico.mx/contenidos/DCEIT/Archivos_generales/DCEIT_Criterios_generales_re
cepcion_y_evaluacion_actividades_2020_B1.pdf

El estudiante perderá la oportunidad de envío de su actividad cuando realice cualquiera de las


siguientes acciones:
a) Entregar documentos en blanco.
b) Guardar en el aula virtual actividades de otras asignaturas distintas al que corresponde.
c) Enviar una actividad que aborda un tema distinto al solicitado.
d) Enviar una actividad que no sea de su autoría, (plagio parcial o total).
En estos casos se asignará calificación de 1 (uno) al trabajo entregado y se tomará este envío
como intento realizado sin derecho a reposición o anulación del mismo por parte del docente en
línea.

Tipo de Actividad.
 Actividad Individual.

Requerimientos para realizar la actividad:


Revisar, analizar y estudiar detenidamente el Programa Desarrollado por la Universidad para la
Unidad 2. Teoría de Grafos y relaciones, el cual se encuentra para descarga directamente en la
plataforma.

Material Audiovisual Complementario


 Árbol de expansión mínima, ejemplo:

https://www.youtube.com/watch?v=DuCvEUj2hzg

 Algoritmo de Dijkstra

https://www.youtube.com/watch?v=fgdCNuGPJnw

https://www.youtube.com/watch?v=eLFEIxDEphA

https://www.youtube.com/watch?v=VENf0GXRd6E

https://www.youtube.com/watch?v=4I7W5WUQQQI

https://www.youtube.com/watch?v=ZF0LbqZwoU4

https://www.youtube.com/watch?v=skF82H7dt1s

https://www.youtube.com/watch?v=LLx0QVMZVkk
 Algoritmo de Kruskal

https://www.youtube.com/watch?v=OZKuWP1KxdY

https://www.youtube.com/watch?v=SilS8f8icWY

https://www.youtube.com/watch?v=YHzllcQpEdA

https://www.youtube.com/watch?v=1nTMN3qwl18

https://www.youtube.com/watch?v=yr32qcdMXCg

https://www.youtube.com/watch?v=JyFG_z7iMyo

 Algoritmo de Prim

https://www.youtube.com/watch?v=naprs1_qvyo

https://www.youtube.com/watch?v=KW5gvhOPdcA

https://www.youtube.com/watch?v=SEsyfJHJOFw

https://www.youtube.com/watch?v=O8XEOz8FCDQ

https://www.youtube.com/watch?v=1rOGJUP7Fig

https://www.youtube.com/watch?v=RXL8Z-HfdHQ

Material Adicional en PDF


http://mat.izt.uam.mx/mcmai/documentos/tesis/Gen.11-O/Maria_Elena_Martinez_Cuero.pdf
Ejercicio resuelto del Algoritmo de Dijkstra:

Recuerda que Algoritmo de Dijkstra, resuelve el problema de los caminos más cortos desde un único
vértice origen hasta todos los otros vértices del grafo.
Veamos el siguiente caso como un ejemplo: debemos diseñar un algoritmo para determinar la
mejor ruta para que un pasajero del metro tome de una estación designada a otra en un sistema de
metro bien desarrollado similar a los de ciudades como Washington, D.C. y Londres, Reino Unido.

Por lo que para diseñar un algoritmo con esas especificaciones, consideraremos para tal efecto el
metro de la Ciudad de México, así que:

1) Consideramos el plano general del Metro


2) Vaciaremos el Mapa General en un grafo y a partir de ahí presentaremos el grafo ya con los
tiempos de cada estación.
3) Determinamos los tiempos en cada una de las líneas a través de las siguientes tablas junto con
los tiempos entre estaciones

Nodo 1 Nodo 2 Tiempo


P15 P1 2.41
P1 P2 1.83
P2 P3 1.36
P3 P16 3.35
Total 8.95

Nodo 1 Nodo 2 Tiempo


P15 P5 4.26
P5 P9 2.15
P9 P13 4.70
Total 11.11

Nodo 1 Nodo 2 Tiempo


P1 P4 4.25
P4 P6 2.18
P6 P10 1.08
P10 P13 4.16
Total 11.67

Nodo 1 Nodo 2 Tiempo


P2 P4 5.15
P4 P5 2.15
Total 7.30

Nodo 1 Nodo 2 Tiempo


P3 P7 4.72
P7 P11 1.76
P11 P14 3.19
Total 9.67
Nodo 1 Nodo 2 Tiempo
P16 P8 4.71
P8 P12 1.50
P12 P20 2.59
Total 8.8

Nodo 1 Nodo 2 Tiempo


P5 P6 1.75
P6 P17 2.51
P17 P7 2.23
P7 P8 2.51
Total 9.00

Nodo 1 Nodo 2 Tiempo


P9 P10 1.05
P10 P18 2.46
P18 P11 3.22
P11 P12 2.51
Total 9.24

Nodo 1 Nodo 2 Tiempo


P13 P19 3.17
P19 P14 4.13
P14 P20 2.30
Total 9.60

***Considerando que los únicos puntos donde no hay cruce son


los puntos 17 y 18
Ahora por el algoritmo de Dijkstra, resolvemos el problema de los caminos más cortos desde un
único vértice origen hasta todos los otros vértices del grafo, entonces si quisiéramos que un pasajero
viajara desde el vértice P12 hacia el vértice P1

Así que dicho algoritmo de forma explicativa debe plantearse en


torno a lo siguiente:
Primero consideramos todos los vértices como no utilizados. El algoritmo parte de un vértice origen
(origen de la ruta del viajero), a partir de ese vértice se evalúan los adyacentes, así que para que un
camino sea óptimo, todos los caminos que contiene también deben ser óptimos; es decir que el
tiempo sea el menor entre todos los vértices adyacentes, y se ubica aquel que se encuentre más
cercano del punto origen, lo tomamos como punto intermedio y vemos si podemos llegar más
rápido a través de este vértice a los demás.

Posteriormente tomamos al siguiente más cercano y se repite el proceso, hasta que el vértice no
utilizado más cercano sea el destino del viajero. Y cada vez que extraiga un elemento nos deberá
debe devolver el de menor valor,

Por lo que tendríamos las siguientes tablas de rutas para el


viajero.
Ruta 1
Nodo 1 Nodo 2 Tiempo
P12 P11 2.51
P11 P18 3.22
P18 P10 2.46
P10 P6 1.08
P6 P4 2.18
P4 P1 4.25
Total 15.7
Ruta 2
Nodo 1 Nodo 2 Tiempo
P12 P8 1.50
P8 P7 2.51
P7 P3 4.72
P3 P2 1.36
P2 P1 1.83
Total 11.92

Ruta 3
Nodo 1 Nodo 2 Tiempo
P12 P8 1.50
P8 P7 2.51
P7 P17 2.23
P17 P6 2.51
P6 P4 2.18
P4 P1 4.25
Total 15.18
Ruta 4
Nodo 1 Nodo 2 Tiempo
P12 P8 1.50
P8 P16 4.71
P16 P3 3.35
P3 P2 1.36
P2 P1 1.83
Total 12.75

Por lo que la ruta más corta es la ruta 2


Ejercicio resuelto aplicando el Algoritmo de Kruskal:

Use el algoritmo de Kruskal para encontrar un árbol de expansión mínima de la gráfica


siguiente:

Método:

El método de Kruskal para construir un árbol de expansión mínima puede describirse brevemente
como sigue:

1. Del conjunto de aristas, seleccionar la de menor peso. Ésta constituye la subgráfica inicial
construida parcialmente que después será desarrollada en un árbol de expansión mínima.

2. A esta gráfica construida parcialmente súmese la siguiente arista ponderada más pequeña si esto
no provoca la formación de un ciclo. En caso contrario, eliminar la arista seleccionada.

3. Terminar si el árbol de expansión contiene n – 1 aristas. En caso contrario, ir a 2. (Lee, 2007) p.


76.

Comenzando con la de menor


peso y yendo siempre con la de
menor peso y a cada paso
eliminando cada arista que nos
genera un ciclo, el esquema
queda de la siguiente manera:
Ejercicio resuelto aplicando el Algoritmo de Prim para encontrar un árbol de expansión
mínima de la gráfica.

ÁRBOL DE VALOR TOTAL MÍNIMO - ALGORITMO DE PRIM

1 ----(2) 3

2 ----(2) 3

2 ----(4) 4

2 ----(4) 5

3 ----(3) 6

Costo total = 15
Matriz de Arcos del árbol con costo mínimo:

N1\N2 1 2 3 4 5 6

1 0 0 1 0 0 0

2 0 0 1 1 1 0

3 0 0 0 0 0 1

4 0 0 0 0 0 0

5 0 0 0 0 0 0

6 0 0 0 0 0 0

Por lo que el grafo queda de la siguiente manera observándose el árbol de expansión o coste
mínimo en rojo:
Actividad
Aspecto 1:

Encontrar aplicando el algoritmo de Dijkstra los caminos más cortos entre 𝒂𝟏 y el resto de los
nodos en la siguiente topologías de red.

Aspecto 2:

Use el algoritmo de Kruskal para encontrar un árbol de expansión mínima de la gráfica


siguiente:
Aspecto 3:

Use el algoritmo de Prim para encontrar un árbol de expansión mínima de la gráfica.

Referencias

Lee, R.C., Tseng,S.S. y Chang, R.C. (2014). Introducción al diseño y análisis de algoritmos:
un enfoque estratégico. McGraw-Hill Interamericana.
Soltys Kulinicz, M. (2012). Introduction to the Analysis of Algorithms. World Scientific
Publishing Co.

Cualquier duda favor de comunicarse conmigo a través del mensajero de la Universidad o mi


correo electrónico laura.pontonbe@nube.unadmexico.mx

Saludos.

También podría gustarte