You are on page 1of 14

Curso de doctorado Problemas de optimizaci on sobre grafos

Departament de Matem`atica
Conceptos basicos sobre grafos y digrafos
Denicion de grafo
Un grafo G = (V, E) esta formado por un conjunto nito y no vaco V y por un conjunto E de
pares no ordenados de elementos distintos de V .
Elementos de V : vertices (o nodos).
Elementos de E: aristas.
Si e = {u, v} (e = uv) es una arista, entonces
u y v son adyacentes (u v);
e es incidente con los vertices u y v.
El orden de G es el numero de vertices (|V |) y la medida de G es el numero de aristas (|E|).
Ejemplo: G = (V, E), con V = {a, b, c, d, e, f} y E = {ab, ac, bc, bd, cd, de}.
Grado de un vertice
El grado de un vertice v en un grafo G, que se denota por g(v), es el numero de aristas de G
incidentes con v.
Teorema 1 (Lema de las encajadas de manos). La suma de todos los grados de los
vertices de un grafo G = (V, E) es igual al doble de su medida; es decir,

vV
g(v) = 2|E|.
Corolario 1. Todo grafo tiene un numero par de vertices de grado impar.
Ejemplo:
Grados de los vertices: g(a) = 2, g(b) = g(c) = g(d) = 3, g(e) = 1 y g(f) = 0.
Representacion de un grafo
Sea G = (V, E) un grafo con conjunto de vertices V = {v
1
, v
2
, . . . , v
n
} y conjunto de aristas
E = {e
1
, e
2
, . . . , e
m
} (representaci on inicial de un grafo).
La matriz de adyacencia de G es la matriu A = (a
ij
) de orden n n denida por
a
ij
=
_
_
_
1, si v
i
y v
j
son adyacentes,
0, en caso contrario.
La matriz de incidencia de G es la matriu B = (b
ij
) de orden n m denida por
b
ij
=
_
_
_
1, si e
j
es incidente con v
i
0, en caso contrario.
La lista de listas de adyacencia de G es una n-tupla formada per n sublistas (conjuntos),
una por cada vertice v
i
, donde guran los vertices adyacentes al correspondiente vertice v
i
.
Actividad: Analizar las propiedades y comparar las ventajas (y desventajas) de cada una de estas
representaciones.
Representacion de un grafo: ejemplo
Sea G = (V, E) el grafo con V = {a, b, c, d, e, f} y E = {ab, ac, bc, bd, cd, de}.
Matriz de adyacencia:
A =
_
_
_
_
_
_
_
_
_
_
_
_
_
0 1 1 0 0 0
1 0 1 1 0 0
1 1 0 1 0 0
0 1 1 0 1 0
0 0 0 1 0 0
0 0 0 0 0 0
_
_
_
_
_
_
_
_
_
_
_
_
_
Lista de listas de adyacencia:
L = ({b, c}, {a, c, d}, {a, b, d}, {b, c, e}, {d}, {}).
Isomorsmo de grafos
Idea intuitiva: Dos grafos son isomorfos si uno puede obtenerse a partir del otro reetiquetando
sus vertices.
Denici on: Dos grafos G = (V, E) y G

= (V

, E

) son isomorfs, G

= G

, si existe una
aplicaci on biyectiva f entre sus respectivos conjuntos de vertices, V y V

, que preserva las


adyacencias; es decir,
u, v V, u v f(u) f(v).
Un invariante de un grafo G es un parametro (propiedad) asociado a G que toma el mismo valor
en todos los grafos isomorfos a G. (Ejemplos: orden, medida, secuencia de grados, ...).
Problemas abiertos:
Determinar un sistema de invariantes de un grafo que lo determine completamente.
No se sabe la complejidad algortmica del problema del isomorsmo:
No se conoce un test de isomorsmo cuyo coste sea polin omico (no se sabe si el problema
del isomorsmo es de la llamada clase P).
No se ha probado que el problema del isomorsmo sea de la llamada clase NP-completo.
Isomorsmo de grafos: ejemplos
Determinar cuales de las siguientes parejas de grafos son isomorfos entre s:
Actividad: Enumerar todos los grafos no isomorfos de orden 3 y 4.
Clases importantes de grafos (I)
El grafo nulo de orden n, que se denota por N
n
, es un grafo que tiene n
vertices y ninguna arista.
El grafo completo de orden n, que se denota por K
n
, es un grafo con n
vertices, donde cada vertice es adyacente a todos los demas.
Un grafo es regular (de grado d) si todos sus vertices tienen el mismo grado
(d).
Actividad: Deducir la medida de un grafo regular de orden n y grado d. Cual
es la medida del grafo completo K
n
?
Clases importantes de grafos (II)
Un grafo G = (V, E) es bipartito si su conjunto de vertices V admite una partici on en dos
subconjuntos (disjuntos), V
1
y V
2
, de modo que cada arista de G sea incidente con un vertice
de V
1
y con un vertice de V
2
(no hay adyacencias entre vertices de una misma parte).
Si cada vertice de V
1
es adyacente a todos los vertices de V
2
, el grafo G se denomina
bipartito y completo. (G = K
m,n
, donde m = |V
1
| y n = |V
2
|).
Ejemplos de grafos bipartitos:
Actividad: Pensar en problemas reales que puedan modelizarse mediante grafos bipartitos.
Subgrafos. Grafos derivados de un grafo
Un grafo H = (V

, E

) es un subgrafo de G = (V, A) si V

V y E

E. Si V

= V
entonces H es un subgrafo generador de G.
Dado un grafo G = (V, E) y un subconjunto de vertices S de G, el subgrafo inducido por S
es el subgrafo < S >= (S, E

), donde los elementos de E

son todas las aristas de G que


unen vertices de S.
Si S = V {v} el subgrafo inducido por S, que se denota por Gv, se obtiene suprimiendo
de G el vertice v (y todas las aristas incidentes con v).
La supresion de una arista e de un grafo G = (V, E) da lugar al subgrafo
Ge = (V, E {e}); es decir, se elimina la arista e pero no los vertices incidentes con ella.
Actividad: Pensar que signicado tiene la supresion de vertices y aristas en diferentes
aplicaciones reales. Como afectan dichas transformaciones la representacion de un grafo?
Operaciones entre grafos (I)
El grafo complementario de G = (V, A) es el grafo G = (V, A), donde A = P
2
(V ) A
representa el conjunto complementario de A; es decir, dos vertices diferentes u, v V son
adyacentes en G si y solo si no lo son en G.
Actividad: Demostrar que en cualquier reunion de seis personas hay tres de ellas que o bien se
conocen todas entre s o bien ningun par de estas tres se conocen.
Sean G = (V, E) y H = (V

, E

) dos grafos cuyos conjuntos de vertices son disjuntos.


El grafo union de G y H es el grafo G H = (V V

, E E

).
El grafo suma de G y H es el grafo G+H = (V V

, E E

{uv | u V y v V

}).
Operaciones entre grafos (II)
Dados dos grafos G
1
= (V
1
, E
1
) y G
2
= (V
2
, E
2
), el grafo producto cartesiano de G
1
con G
2
,
que se denota por G
1
G
2
, tiene por conjunto de vertices V
1
V
2
y sus adyacencias vienen
denidas por
(u
1
, u
2
) es adyacente con (v
1
, v
2
) (u
1
= v
1
y u
2
v
2
E
2
) o (u
2
= v
2
y u
1
v
1
E
1
).
El grafo hipercubo de dimension n, Q
n
se dene (de manera recurrente) como
Q
n
=
_
_
_
K
2
, si n = 1,
Q
n1
K
2
, si n > 1.
Grafos dirigidos o digrafos
Un digrafo G = (V, E) esta formado per un conjunto nito y no vaco V (vertices) y por un
conjunto E de pares ordenados de elements distintos de V (arcos).
Si e = (u, v) es un arco, entonces u es adyacente hacia v y e es incidente desde u hacia v.
Un digrafo G = (V, E) es simetrico si (u, v) E (v, u) E, u, v V u = v.
(Todo grafo puede pensarse como un digrafo simetrico, y al reves).
Un digrafo G = (V, E) es asimetrico si (u, v) E (v, u) E, u, v V u = v.
(Cualquier orientaci on de un grafo da lugar a un digrafo asimetrico).
Variantes del concepto de grafo (digrafo)
Si en un grafo se permite la existencia de mas de una arista entre un mismo par de vertices
(arista multiple), entonces se denomima multigrafo.
Si ademas se permite que un elemento este relacionado consigo mismo (lazo), entonces se
llama pseudografo.
Un grafo G cuyas aristas tienen asociados valores reales, llamados pesos, se denomina grafo
ponderado.
(Advertencia: no hay una terminologa unicada).
Actividad: Mostar situaciones reales que puedan modelizarse mediante digrafos, multigrafos y
pseudografos, respectivamente. Como varan sus representaciones?

You might also like