Está en la página 1de 48

Tema 5: Grafos

I.S.C. Jorge Salgado Hernandez

Indice
1.
2.
3.
4.
5.
6.
7.
8.

Tipos de grafos
Conceptos Bsicos
Representacin de grafos
Subgrafos. Grafos complementarios
Caminos y conectividad
Grafos Bipartitos
Recorridos, eulerianos o
hamiltonianos
Isomorfismo de grafos
I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Un grafo G es un par (V,E) donde:


V ={v1,,vn} es un conjunto de vrtices

E = {e1,,em} es un conjunto de aristas,


con cada ek {vi, vj}, con vi, vj V, vi vj

Los vrtices se representan como puntos y las


aristas como lneas entre vrtices
Ejemplo:

G = (V,E)
V = {a,b,c,d }
E = {{a,b}, {b,c}, {a,c}, {a,d}, {d,b} }

I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Ejemplo: red de ordenadores

I.S.C. Jorge Salgado Hernandez

Tipos de grafos

Es importante recordar que un mismo grafo


puede tener diferentes representaciones grficas
Ejemplo:

Dos representaciones del mismo grafo


G = ({a,b,c,d,e,f},{{a,b},{a,e},{a,f}{e,f},{b,c},
{c,d},{e,d},{d,f}})
I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Si el orden influye en la aristas se habla de


grafos dirigidos:

En este caso a las aristas se les llama arcos y se


representan como pares para indicar el orden:

V = { a,b,c,d,e}
A ={(e,a), (a,b), (b,a), (d,a), (c,d), (d,c),(b,c),
(c,b) }

I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Si se permite que haya ms de una


arista se habla de multigrafos:

I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Cuando las aristas tienen un valor numrico


asociado se llama de grafos valorados:

Al valor numrico asociado se le llama coste de la


arista
I.S.C. Jorge Salgado Hernandez

Tipos de Grafos

Los tipos anteriores pueden


combinarse, dando lugar por
ejemplo a multigrafos valorados, o
grafos dirigidos valorados, etc.

En el resto del tema cuando no se


diga lo contrario G representar un
grafo o multigrafo no dirigido
I.S.C. Jorge Salgado Hernandez

Conceptos Bsicos

Dos vrtices se dicen adyacentes si


existe una arista que los une
Los vrtices que forman una arista son
los extremos de la arista
Si v es un extremo de una arista a, se
dice que a es incidente con v
El grado de un vrtice v, gr(v) es el
nmero de aristas incidentes en v. Si
hace falta indicar el grafo en el que
est v escribiremos gr(G,v)
I.S.C. Jorge Salgado Hernandez

10

Conceptos Bsicos
Teorema (de los apretones de
manos)
Sea G=(V,A) un grafo. Entonces: gr(v)
= 2|A|

v V

Significado: la suma de los grados de


todos los vrtices es igual a 2 veces el
nmero de aristas
Explicacin:
I.S.C. Jorge Salgado Hernandez

11

Conceptos Bsicos

Para cada n1 se llama grafo completo de orden n, y se


representa por Kn, al grafo de n vrtices conectados de todas
las formas posibles:

Pregunta: Cuntas aristas tiene en general Kn?


I.S.C. Jorge Salgado Hernandez

12

Conceptos Bsicos

Se llama ciclo de grado n, y se denota Cn,


a G=({v1,,vn},
{{v1, v2}, {v2, v3},, {vn-1, vn}, {vn, v1}} )

Nota: A menudo slo se consideran ciclos


para n3
I.S.C. Jorge Salgado Hernandez

13

Representacin de
Grafos

Para representar los grafos a menudo se utiliza la llamada


matriz de adyacencia
Se construye imaginando que en las filas y las columnas
corresponden a los vrtices. Se pone un 0 para indicar que 2
vrtices no son adyacentes, y un 1 para indicar que s lo son:
1 2 3 4
5 6
2
1
3

4
5

6
Matriz
de
Adyacencia
de matriz
G
Para representarla en un ordenador
se utilizan
de

valores lgicos (booleanos). True hay arista, False no


hay arista
I.S.C. Jorge Salgado Hernandez

14

Representacin de
Grafos

En el caso de un grafo no dirigido la


matriz ser simtrica. No ocurre lo
mismo para grafos dirigidos:

Se supone que la fila representa el


vrtice origen, y la columna el vrtice
destino del arco
I.S.C. Jorge Salgado Hernandez

15

Representacin de
Grafos

La matriz de adyacencia tambin permite


representar grafos valorados

El valor guardado es el coste de la arista/arco


En lugar de 0, a menudo se emplea un valor
especial para indicar que dos vrtices no
estn conectados

I.S.C. Jorge Salgado Hernandez

16

Representacin de
Grafos

En informtica a menudo en lugar de


la matriz se usa la lista de
adyacencia
A cada vrtice le corresponde una
lista con sus adyacentes:
G
Lista de Adyacencia
de G
I.S.C. Jorge Salgado Hernandez

17

Subgrafos

Sea G=(V,A). G=(V,A) se dice


subgrafo de G si:
1.
2.
3.

V V
A A
(V,A) es un grafo

Resultado fcil de comprobar:

Si G=(V,A) es subgrafo de G, para


todo v G se cumple gr(G,v)
gr(G,v)
I.S.C. Jorge Salgado Hernandez

18

Subgrafos

Ejemplo:

G1 y G2 son subgrafos de G
I.S.C. Jorge Salgado Hernandez

19

Subgrafos

Un grafo se dice cclico cuando contiene


algn ciclo como subgrafo
Ejemplo:

I.S.C. Jorge Salgado Hernandez

20

Grafo Complementario

El complementario G de un grafo
G=(V,A) tiene:
Los mismos vrtices que G
Si {u,v} G, entonces {u,v} G
Si {u,v} G, entonces {u,v} G

Una forma de construirlo:


Dibujar el corresp. grafo completo Kn,
con n=|V|
Eliminar de Kn las aristas {u,v} G

I.S.C. Jorge Salgado Hernandez

21

Grafo complementario

Ejemplo : Complementario de

1 Representar
K6

2 Marcar
las aristas
de G
I.S.C. Jorge Salgado Hernandez

3
Eliminarlas
22

Caminos y conectividad

Un recorrido en un grafo G = (V,A)


es una sucesin de vrtices v0, v1, ,
vk tal que {vi,vi+1} A para todo 0 i
<k
La longitud de un recorrido v0, v1,
, vk es k
Ejemplo:
G
I.S.C. Jorge Salgado Hernandez

f,b,c,f,e,d es un
recorrido de longitud 5
sobre G
23

Caminos y conectividad

Observacin: Un recorrido puede


repetir vrtices, y puede comenzar y
acabar en vrtices diferentes
Un camino es un recorrido v0, v1, ,
vk en el que vi vj para 0 i,j k,
con i 0 o j k
Es decir en un camino todos los
vrtices son distintos entre s,
excepto quizs el primero y el ltimo
I.S.C. Jorge Salgado Hernandez

24

Caminos y conectividad

Ejemplo:

a,b,e,c,d es un
camino
I.S.C. Jorge Salgado Hernandez

25

Caminos y conectividad

Si existe un camino entre dos vrtices se


dice que estn conectados
Sea G=(V,A) un grafo. La relacin
xRy x e y estn conectados
es de equivalencia (R ___)
Si para todo par de vrtices de un grafo
estn conectados se dice que el grafo es
conexo g
Las componentes conexas de un grafo G
son los mayores subgrafos conexos de G
I.S.C. Jorge Salgado Hernandez

26

Caminos y conectividad

Ejemplo. Consideramos el grafo:

Se tiene que:

G no es conexo: no hay camino entre a y b, por


ejemplo.
[a] = {a,c,e} [c] = {a,c,e} [e]={a,c,e}
[b]={b,d} [d]={b,d}
G/R = {[a],[b]}
G tiene dos componentes conexas:

I.S.C. Jorge Salgado Hernandez

27

Caminos y conectividad

Un recorrido v0, v1, ,vk tal que v0 = vk es


un circuito
Un camino v0, v1, , vk tal que v0 = vk es
un ciclo

a,b,f,c,e,f,a es un
circuito

I.S.C. Jorge Salgado Hernandez

f,c,b,e,f es un
ciclo

28

Grafos Bipartitos
Un problema interesante en un grafo
es determinar su nmero
cromtico:
Cuntos colores son necesarios para
pintar los vrtices de forma que cada
arista una siempre colores distintos?
Ejemplo: Grafo con nmero
cromtico 4

I.S.C. Jorge Salgado Hernandez

29

Grafos Bipartitos

Aplicacin: coloreado de mapas


Cuntos colores se necesitan para
colorear un mapa de forma que no
haya dos regiones con frontera con
el mismo color?

I.S.C. Jorge Salgado Hernandez

30

Grafos Bipartitos

Idea: Transformar el mapa en un


grafo, donde cada vrtice representa
una regin y cada arista un lmite
entre regiones:

Cuntos colores se necesitan?


de este grafo?

I.S.C. Jorge Salgado Hernandez

nmero cromtico
31

Grafos Bipartitos

Resultado: Todos los mapas se pueden


colorear con un mximo de 4 colores
Solucin propuesta en 1879, probada en
1976 por K. Appel y W. Haken con la
ayuda de un ordenador.

I.S.C. Jorge Salgado Hernandez

32

Grafos Bipartitos

Nosotros vamos a interesarnos en un


caso particular: aquellos grafos que se
pueden colorear en dos colores grafos
bipartitos
Definicin: Sea G=(V,A). Se dice que G
es bipartito si existen V1, V2 tales que:
2.

V1 V2= V
V1 V2=

3.

Para toda {vi,vj} A se cumple vi V1, vj V2

1.

I.S.C. Jorge Salgado Hernandez

33

Grafos Bipartitos

Ejemplos:

Es bipartito
?

S; V1 = {2,5},
V2={0,1,3,4,6,7}

I.S.C. Jorge Salgado Hernandez

34

Grafos Bipartitos

Idea de cmo pintarlo:


Empezar por un vrtice cualquiera, de
color C1
Dibujar todos los adyacentes de color
C2
Parece que
Seguir este proceso hasta haber
No es
bipartito,
terminado

pero

cmo estar
seguros?
I.S.C. Jorge Salgado Hernandez

35

Grafos Bipartitos

Teorema: Una grafo es bipartito si y


slo si no tiene ciclos de longitud
impar

Ejemplo anterior: No bipartito;


contiene ciclos de longitud impar (en
la figura aparece marcado uno de
long. 3)
I.S.C. Jorge Salgado Hernandez

36

Recorridos eulerianos

Ciudad de Knisberg, en XVIII:

Pregunta: sera posible dar un paseo


pasando por cada uno de los siete puentes,
sin repetir ninguno, comenzando y acabando
en el mismo punto?
I.S.C. Jorge Salgado Hernandez

37

Recorridos eulerianos

Representacin propuesta por


Leonard Euler en 1736:

Existe un circuito que pase por


todas las aristas una sola vez?
I.S.C. Jorge Salgado Hernandez

38

Recorridos eulerianos

A estos circuitos se les llama circuitos


eulerianos, y a los grafos que los
contienen grafos eulerianos
Grafo o multigrafo euleriano: admite
un recorrido que pasa por todas las
aristas una sola vez, empezando y
terminando en el mismo vrtice. Los
vrtices s se pueden repetir

I.S.C. Jorge Salgado Hernandez

39

Recorridos eulerianos

Ejemplo: Grafo euleriano.

Circuito euleariano: a,b,c,d,b,f,d,e,a,c,e,f,a


Ejemplo: El siguiente grafo es euleriano

Encuentra un circuito euleriano:


I.S.C. Jorge Salgado Hernandez

40

Recorridos eulerianos

Cmo saber si un grafo (o multigrafo) es


euleriano?
Teorema de Euler: Un grafo conexo es
euleriano no tiene vrtices de grado
impar
Ejemplo:

A tiene grado 3el grafo de los puentes no es


euleriano.
I.S.C. Jorge Salgado Hernandez

41

Recorridos eulerianos

Si el grafo/multigrafo tiene slo dos


vrtices de grado impar se llama
semi-euleriano. Se puede convertir
en euleriano aadindole una arista:

Semi-euleriano

Euleriano

I.S.C. Jorge Salgado Hernandez

42

Recorridos
hamiltonianos

Un grafo se dice hamiltoniano si


existe un ciclo que recorre todos sus
vrtices. Al ciclo se le llama ciclo
hamiltoniano
Ejemplos:

I.S.C. Jorge Salgado Hernandez

43

Recorridos
hamiltonianos

No existe un mtodo sencillo para


saber si un grafo es no hamiltoniano
problema muy complejo
Ejemplo: Este grafo es hamiltoniano

...pero este no difcil de probar!

I.S.C. Jorge Salgado Hernandez

44

Isomorfismo de grafos

Idea: En ocasiones dos grafos con diferentes


vrtices presentan la misma estructura:

Cmo probarlo? Buscando una funcin biyectiva


que convierta los vrtices de uno en otro,
preservando la estructura de las aristas
Definicin: Dos grafos G=(V,A), G=(V,A) son
isomorfos si existe una funcin biyectiva f:V V
tal que {a,b} A {f(a),f(b)} A
I.S.C. Jorge Salgado Hernandez

45

Isomorfismo de grafos

Ejemplo:

f(1) = a f(2) = f f(6) =


b
f(4) = h f(5)
= d f(3) = g
f(7) = e
f(8) = c
Los dos grafos son isomorfos. Demostracin:
Construimos f como se indica al lado de la figura. Se
tiene que:
{1,2} f {a,f}
{6,8} f {b,c} {1,6} f {a,b}
{2,8} f {f,c}
{4,3} f {h,g}
{1,4} f {a,h} {2,3} f {f,g}
{5,7} f {d,e}
{4,5} f {h,d} {3,7} f {g,e}
{6,5} f {b,d}
{8,7} f {c,e}
I.S.C. Jorge Salgado Hernandez

46

Isomorfismo de grafos

Y como saber si dos grafos no son


isomorfos?
Hay que buscar alguna caracterstica que
diferencie la estructura de los dos grafos,
como por ejemplo:
Distinto nmero de vrtices o de aristas
Distinto nmero de ciclos de una longitud dada
Distinto nmero de vrtices con un mismo
grado n
Aristas conectando vrtices con dos grados
tales que no existan aristas de las mismas
caractersticas en el otro grafo

I.S.C. Jorge Salgado Hernandez

47

Isomorfismo de grafos

Ejemplo: son isomorfos estos dos


grafos?

Respuesta: no; G tiene un ciclo de


longitud 3 (b,d,c,b) y G no tiene ninguno
de longitud 3
I.S.C. Jorge Salgado Hernandez

48

También podría gustarte