Está en la página 1de 5

Nombre:

Sergio Linares Garzón

Matricula:
132537

Grupo:
K082

Materia:
ALGORITMOS Y ESTRUCTURA DE DATOS

Profesor:

Mtro. Juan Raymundo Rodriguez Van Scoit

Actividad:
Actividad de aprendizaje 4. Teoría de grafos

Ciudad y fecha:
Puebla a 3 de mayo de 2021
1. Encuentra una representación en términos de vértices y aristas de un grafo a partir del mapa
dado.

• Vértices: A B C D

• Representación:

A B

CD

• El resultado es un grafo plano no dirigido, en el que sus vértices están unidos por las aristas
de la siguiente manera:

Grafo:{(A,B)(A,C)(A,D)(B,C)(B,D)(C,D)}
2. Investiga un algoritmo que aplicado a grafos te permita ir coloreando los vértices de tal forma
que no coincidan en color, con el color de los vértices que estén unidos a ellos a través
de aristas.

• El algoritmo a utilizar es el voraz (Greedy).

Los algoritmos voraces (Greedy) se utilizan típicamente para resolver problemas de


optimización:
• Minimizar o maximizar, bajo determinadas condiciones, el valor de una función del tipo: f(x1, x2,
…,xn) = c1x1 + c2x2 +…+ cnxn.

La solución se va construyendo en etapas:

• En cada etapa se añade un nuevo elemento a la solución parcial. El que nos parece el mejor candidato
en ese momento.
• Las decisiones tomadas nunca se revisan. Voracidad: se consume el mejor elemento lo antes posible.
• Al final de cada etapa se verifica si la solución parcial ya constituye una solución total para el
problema.

Colorear grafo

El algoritmo voraz comienza la coloración de los vértices según orden de éstos en la matriz de
adyacencias del grafo. La coloración se realiza siguiendo los siguientes pasos.

• Paso inicial. Ordenamos los vértices del grafo. (el resultado del algoritmo dependerá del orden
elegido). Esto es, disponemos los vértices del grafo en una lista (v1, v2, . . . , vn) .

Ahora asignaremos colores a los vértices siguiendo el orden elegido.


2.1. A v1 le asignamos el primer color disponible; color a.

2.2. ¿Cómo coloreamos v2? Si es vecino de v1 le asignamos el color b; si no lo es, le asignamos el


color a.

2.3. Para colorear v3, comprobamos si es vecino de v1 o v2; y no podremos utilizar el color o colores que
hayamos utilizado en los que sean sus vecinos.

2.4. k-ésimo paso. ¿Cómo coloreamos el vértice vk, teniendo en cuenta que ya hemos coloreado los k−1
anteriores? En la lista de colores obviamos los colores usados en los vecinos de vk que ya hayan
sido coloreados; de los colores que quedan, elegimos para vk el primero disponible.

2.5. Se imprime la solución.


3. Como resultado presenta un documento en formato Word que ofrezca la explicación del algoritmo de
coloración que hayas utilizado, en conjunto con la corrida a mano de la coloración del grafo, la cual
representa al mapa dado en la actividad.
• Aplicando el algoritmo voraz al problema del mapa, donde tenemos cuatro vértices (A,B,C,D),
conectados por aristas entre todos y cada uno de ellos, tenemos:

➢ Grafo:

A B

CD

➢ Vértices en orden:

A B C D

3.2. Al vértice A, le asignamos el color 1.

3.3. Como el vértice B está unido con una arista a A no podemos utilizar el color a, así que le
asignamos otro color; color 2.

A B
3.4. Ahora colorearemos el vértice C, y ya que este está conectado tanto con el vértice A y el vértice B, le
asignamos otro color: color 3. Los colores se verifican del primero al último que se asignó.

A B

3.5. Por último tenemos el vértice D, verificamos si se le puede asignar el color 1, 2 o 3, pero al estar
conectado por aristas a cada uno de ellos, se le asigna un nuevo color; color 4.

A B

C D

Aquí podemos observar que queda como resultado un grafo de 4 colores, 1 para cada vértice.

También podría gustarte