Teoría de Grafos - 1 UPC

Post on 06-Dec-2015

44 views 2 download

description

Teoría de Grafos - 1 UPCTeoría de Grafos - 1 UPCTeoría de Grafos - 1 UPCTeoría de Grafos - 1 UPC

Transcript of Teoría de Grafos - 1 UPC

MATEMÁTICA COMPUTACIONAL - MA475 1

Matemática Computacional

Introducción a la Teoría de Grafos

MATEMÁTICA COMPUTACIONAL - MA475 2

Logro

El alumno, al término de la unidad, será capaz de manejar los distintos tipos de aplicaciones concernientes a la teoría de grafos, así como saber utilizar los algoritmos que resuelven problemas de camino más corto y redes de transporte.

MATEMÁTICA COMPUTACIONAL - MA475 3

Contenido

• Conceptos básicos asociados a los grafos.• Representación matricial de un grafo.• Caminos, conexión y componentes conexas.

4

INTRODUCCIÓN

¿Es posible recorrer los siete puentes de la ciudad de Königsberg pasando por todos ellos una única vez, partiendo y llegando al mismo sitio?

L. Euler, en 1 736, resolvió este problema proponiendo el concepto de grafo.

MA475 MATEMÁTICA COMPUTACIONAL

grafo

C

B

DA

5

APLICACIONES

MA475 MATEMÁTICA COMPUTACIONAL

Tiempo de vuelos aéreos

Madrid

Coruña

Valencia

Barcelona

Sevilla

Santander2 2

1

4

12

23

2

Planificación de tareas (Pert/CPM)

inicio A(3)

B(2)

D(2)

C(4) E(3) finalI(1)

6

APLICACIONES

MA475 MATEMÁTICA COMPUTACIONAL

Arquitectura de redes de telefonía móvil

7

CONCEPTO DE GRAFO

Un grafo G = (V, E) está compuesto de:

V : conjunto de vértices o nodos

E : conjunto de aristas o arcos que conectan los vértices en V.

Una arista e = (v, w) está formada por dos vértices v y w, en los cuales v es el nodo origen y w es el nodo destino.

Ejemplo:

MA475 MATEMÁTICA COMPUTACIONAL

a b

d e

cV = { a, b, c, d, e}E = { (a, b), (a, c), (a, d), (b, e), (c, d), (c, e), (d, e) }

MATEMÁTICA COMPUTACIONAL - MA475 8

GRAFO DIRIGIDO Y NO DIRIGIDO

Un grafo dirigido o digrafo es un tipo de grafo en el cual las aristas tienen una dirección definida, mientras que el grafo no dirigido es aquel en el que las aristas conectan a los nodos en ambas direcciones.

MATEMÁTICA COMPUTACIONAL - MA475 9

MULTIGRAFOUn multigrafo es un grafo que tiene aristas múltiples; es decir, aristas que relacionan los mismos nodos. De esta forma, dos nodos pueden estar conectados por más de una arista (en la figura se muestran 3 aristas que conectan Bogotá con Cúcuta).

Grafo que representa vuelos sin escala entre ciudades de Colombia

MATEMÁTICA COMPUTACIONAL - MA475 10

MATRIZ DE ADYACENCIA

La matriz de adyacencia de un grafo G = (V, E) ,

donde V = {v1, v2,…, vn}, es una matriz A={aij} tal

que aij = 1 si (vi, vj) E, y aij = 0 en caso contrario.

Matriz de adyacencia de un grafo dirigidoOBS. Si el grafo es no dirigido, la matriz de adyacencia es simétrica

11

EJEMPLO

Determine la matriz de adyacencia de los siguientes grafos:

MA475 MATEMÁTICA COMPUTACIONAL

MATEMÁTICA COMPUTACIONAL - MA475 12

MATRIZ DE INCIDENCIA

Se llama matriz de incidencia de un grafo de n nodos y m aristas, a la matriz B de orden n x m en la que la entrada bij = 1 si la arista  j-ésima es incidente

(termina en el nodo) en el nodo i-ésimo y bij = 0, en caso contrario.

Ejemplo: Veamos la matriz de incidencia del grafo con vértices {1,2,3,4,5} y aristas {A,B,C,D,E,F,G,H}

Matriz de incidencia de un grafo

A

B C

DE

FG

H

MATEMÁTICA COMPUTACIONAL - MA475 13

CAMINOS Y CICLOS

Un camino es una secuencia finita de vértices, en la cual cada par de vértices consecutivos son adyacentes entre sí.

Un ciclo es un camino donde el vértice inicial y final coinciden.

MATEMÁTICA COMPUTACIONAL - MA475 14

MATRIZ DE CAMINOS

Se llama matriz de caminos asociada a un grafo a aquella matriz

A={aij} tal que aij = 1 si existe un camino que une vi con vj, y aij

= 0 en caso contrario.

Esta matriz se representa por:

Ejemplo: En el grafo mostrado vemos que los vértices 1 y 5 no son adyacentes pero existe un camino para llegar desde 1 hasta 5

Matriz de caminos de un grafo

MATEMÁTICA COMPUTACIONAL - MA475 15

ALGORITMO PARA CALCULAR LA MATRIZ DE CAMINOSPaso 1: Se calcula la matriz de adyacencia asociada al grafo

Paso 2: Se marcan todos los 1 existentes en la diagonal de la matriz de adyacencia.

Paso 3: Se selecciona, en orden, una fila I de la matriz que aún no ha sido trabajada.

• Se toma el primer 1 «no marcado» de la fila I, y dicho 1 corresponderá a la columna J.

• Se ubica la fila que tiene al vértice J como origen.• Se copian todos los 1’s de la fila J hacia la fila I.• Se marca el 1 correspondiente a la fila I, columna J

Paso 4:

Ir al paso 4 hasta que todos los 1’s de la fila seleccionada se encuentren marcados ó hasta que toda la fila contenga 1’s.

Paso 5:

Ir al paso 3 hasta que se hayan trabajado todas las filas existentes.

Paso 6:

MATEMÁTICA COMPUTACIONAL - MA475 16

EJEMPLO

Determine la matriz de caminos asociada al grafo:

SOLUCIÓN:

Paso 1: Se calcula la matriz de adyacencia asociada al grafo

ℳ𝑅=¿

MATEMÁTICA COMPUTACIONAL - MA475 17

Paso 2: Se marcan todos los 1 existentes en la diagonal de la matriz de adyacencia.

En este caso, no hay ningún 1 para marcar.

Paso 3: Se selecciona, en orden, una fila I de la matriz que aún no ha sido trabajada.

Primero seleccionamos la fila 1

MATEMÁTICA COMPUTACIONAL - MA475 18

Paso 4: • Se toma el primer 1 «no marcado» de la fila I, y dicho 1 corresponderá a la columna J (en este caso la columna 2).

• Se ubica la fila que tiene al vértice J como origen (en este caso la fila 2).

MATEMÁTICA COMPUTACIONAL - MA475 19

• Se copian todos los 1’s de la fila J hacia la fila I. (Es decir, de la fila 2 hacia la fila 1).

• Se marca el 1 correspondiente a la fila I, columna J.

MATEMÁTICA COMPUTACIONAL - MA475 20

Ir al paso 4 hasta que todos los 1’s de la fila seleccionada se encuentren marcados ó hasta que toda la fila contenga 1’s.

Paso 5:

MATEMÁTICA COMPUTACIONAL - MA475 21

Ir al paso 3 hasta que se hayan trabajado todas las filas existentes.

Paso 6:

Continuando el proceso, llegamos a la matriz de caminos:

MATEMÁTICA COMPUTACIONAL - MA475 22

EJERCICIOS

Determine la matriz de caminos asociada a cada uno de los siguientes grafos:

12

4

3

51

2

4

3

5