teoria de grafos

10
Matemática Discreta: Teoría de grafos 1 MATEMÁTICA DISCRETA 2. Introducción a la teoría de Grafos. 2.1. Grafos, Disgrafos y Multigrafos Los grafos pueden ser considerados diagramas o dibujos, o formalmente como un par de conjuntos. Un grafo G se define como un conjunto E de pares no ordenados de elementos distintos y otro conjunto de elementos V. El conjunto V es el conjunto de vértices del grafo, se denota por V(G). El conjunto E es el conjunto de aristas del grafo, se denota por E(G). G=(V, E) V={v 1 , v 2 ,..., v n } E={v i v j , v n ,v m ,...} Dos vértices v i , v j son adyacentes si son los extremos de una arista, es decir, si el par de vértices V es un elemento de E. #V es el número de vértices. #E es el número de aristas. Un grafo es finito si #V es finito. Tipos de grafos: Multigrafo: es un grafo con varias aristas entre dos vértices. Pseudografo: tiene aristas cuyos extremos coinciden (origen y fin en el mismo vértice), tales aristas se denominan lazos. Digrafo (grafo dirigido): A cada arista se le asigna un orden en sus extremos, en el dibujo se indica con una flecha. Los pares que forman los elementos de E están ordenados. V={v 1 , v 2 , v 3 } E={v 1 v 2 , v 2 v 3 , v 1 v 3 } V={v 1 , v 2 , v 3 } E={v 1 v 1 , v 1 v 2 , v 2 v 2 , v 1 ,v 3 } V={v 1 , v 2 , v 3 } E={v 1 v 2 , v 2 v 3 , v 2 v 3 , v 1 v 3 , v 1 v 3 } V={v 1 , v 2 , v 3 } E={v 1 v 2 , v 2 v 3 , v 3 v 1 }

Transcript of teoria de grafos

Page 1: teoria de grafos

Matemática Discreta: Teoría de grafos

1

MATEMÁTICA DISCRETA2. Introducción a la teor ía de Grafos.2.1. Grafos, Disgrafos y MultigrafosLos grafos pueden ser considerados diagramas o dibujos, o formalmente como un par deconjuntos.Un grafo G se define como un conjunto E de pares no ordenados de elementos distintosy otro conjunto de elementos V.

El conjunto V es el conjunto de vértices del grafo, se denota por V(G).El conjunto E es el conjunto de aristas del grafo, se denota por E(G).

G=(V, E)V={ v1, v2,..., vn}E={ vivj, vn,vm,...}

Dos vértices vi, vj son adyacentes si son los extremos de una arista, es decir, si el par devértices V es un elemento de E.

#V es el número de vértices.#E es el número de aristas.

Un grafo es finito si #V es finito.Tipos de grafos:• Multigrafo: es un grafo con varias aristas entre dos vértices.

Pseudografo: tiene aristas cuyos extremos coinciden (origen y fin en el mismo vértice),tales aristas se denominan lazos.

Digrafo (grafo dirigido): A cada arista se le asigna un orden en sus extremos, en eldibujo se indica con una flecha. Los pares que forman los elementos de E estánordenados.

V={ v1, v2, v3}E={ v1v2, v2v3, v1v3}

V={ v1, v2, v3}E={ v1v1, v1v2, v2v2, v1,v3}

V={ v1, v2, v3}E={ v1v2, v2v3, v2v3, v1v3, v1v3}

V={ v1, v2, v3}E={ v1v2, v2v3, v3v1}

Page 2: teoria de grafos

Matemática Discreta: Teoría de grafos

2

Isomorfismo:Dos grafos son isomorfos, si cada par de vértices adyacentes, se corresponde con un parde vértices adyacentes del otro.Sean G=(V, E) y G’=(V’ , E’ ) y sea f: V→→V’ una biyección tal que uv ∈ E, si y solo sif(u)f(v) ∈ E’ , esta biyección se denomina isomorfismo de G a G’ . Dos grafos isomorfospueden ser representados por figuras aparentemente diferentes.

Grado de un vértice:Es el número de aristas que parten de él. El grado de un vértice se conserva porisomorfismo. Dado un vértice u de G(V), su grado es gr(u).Subgrafo:Sea G=(V,E) un grafo , un subgrafo de G es cualquier grafo H=(V(H),E(H)), de modoque V(H) está contenido en V y E(H) está contenido en E.Un subgrafo se obtiene eliminando alguna(s) arista(s) y/o vértice(s). Si se suprime unvértice, se suprimen todas las aristas que tienen por origen o fin dicho vértice.

Grafo regular:Todos los vértices tienen el mismo grado, si dicho grado es k, el grafo se denominarák-regular. El grafo G anterior es un grafo 3-regular. La regularidad de grafos seconserva por isomorfismo.Grafo completo:Cada par de vértices son los extremos de una arista. Dos grafos completos con el mismonúmero de vértices son isomorfos. Designaremos el grafo completo con n vértices porK n. El grafo G es K 4, el grafo G’ es K 3.Podemos representar Kn, para n mayor o igual a tres, mediante los vértices de unpolígono regular Pn de n lados siendo las aristas de Kn los lados y todas las diagonalesde Pn.• Para todo grafo G=(V, E) se verifica: #E≤≤½#V(#V-1).• Si dado G=(V, E) tal que #E=½#V(#V-1) es un grafo completo.Primer teorema de la teoría de Grafos:

∑=

=p

1i

E#2)v(gr i , es decir, la suma de los grados de los vértices es igual al número de

aristas multiplicado por 2.Por lo tanto, todo grafo contiene (además de los vértices de grado par) un número par (ocero) de vértices de grado impar.Si H es un subgrafo de G y v∈ V(H) contenido en V(G), donde

grH(v)≤grG(v),donde grH(v) denota el grado del vértice v como vértice del grafo H y grG(v) es el gradodel vértice v como vértice del grafo G.

V(G)={ w, x, y, z}E(G)={ xy, xz, xw, yz, yw, wz}V(H)={ t, s, v, u}E(H)={ sv, su, st, vu, vt, tu}f(w)=t, f(x)=s, f(y)=v, f(z)=u

G’ es un subgrafo de G, al suprimirel vértice x y las aristas que llegana él.

Page 3: teoria de grafos

Matemática Discreta: Teoría de grafos

3

Un caminoEn un grafo G es una sucesión finita de vértices y aristas alternos, donde cada aristatiene por extremos los vértices adyacentes.

(v0, v0v1, v1, v1v2,..., vn-1, vn-1vn, vn)A v0 y vn se les denomina extremos del camino.Longitud del caminoEs el número de aristas que contiene.Camino cerradoLos extremos coinciden, v0=vn.En un grafo (no un multigrafo), un camino puede expresarse por la sucesión de vértices

(v0, v1,..., vn-1, vn)Camino simple:En la sucesión de vértices no hay ninguno repetido.Un cicloEs un camino cerrado donde el primero y último vértice son el mismo (camino simplecerrado). En un multigrafo se considera ciclo a aquellos caminos cerrados que norepiten aristas.Un circuitoEs un camino cerrado que no repite aristas.

2.2. Grafos eulerianos y hamiltonianosUn camino euleriano:Es un camino que conecta todas las aristas, apareciendo cada una de ellas una sola vez,si sus extremos coinciden se trata de un circuito euleriano.Un grafo euleriano,Es aquel grafo conexo que admite un circuito euleriano.LEMA:

1. En un grafo euleriano, todos los vértices tienen grado par.2. Hay grafos conexos no eulerianos que admiten camino euleriano, si dos de sus

vértices tienen grado impar.Teorema:Un grafo conexo es euleriano si y solo si cada vértice tiene grado par.LEMA:

3. Sea H un grafo tal que todo vértice de H tiene grado par. si u y v son dos vérticesde H que son adyacentes entonces existe un circuito g que contiene la arista uv.

Para saber si un grafo es euleriano:1º Todos sus vértices tienen grado par.2º Algoritmo para obtener el circuito euleriano:

1. Obtener un circuito euleriano.2. Elegir una arista con extremo en el circuito anterior y repetir el proceso.3. Unir los distintos circuitos obtenidos y tendremos el circuito buscado.

En un grafo euleriano pueden existir varios circuitos eulerianos diferentes.Corolario:Un grafo conexo admite un camino euleriano no cerrado si y sólo si exactamente dosvértices tienen grado impar

Un grafo es conexo:Si para cada par de vértices existe un camino que los conecta, en caso contrariodiremos que es desconexo.

Page 4: teoria de grafos

Matemática Discreta: Teoría de grafos

4

Camino hamiltoniano:Es un camino simple que contiene todos los vértices del grafo sin repetir ninguno.Ciclo hamiltoniano:Es un camino hamiltoniano cerrado.Un grafo hamiltoniano:Es un grafo que contiene un ciclo hamiltoniano.• Todo grafo completo contiene un ciclo hamiltoniano.� Sea G=(V, E) un grafo tal que #V≥≥3, si G es hamiltoniano, para cada subconjunto

U de V el subgrafo de G cuyos vértices son V-U y sus aristas son todas las de Gque tienen extremos en V-U, tienen a lo más #U componentes.

• Sea G=(V, E) un grafo conexo, se llama punto de corte a un vértice v de G, demodo que el subconjunto Gv de G con vértices V-{v} y cuyas aristas son aquellasde E cuyos vértices están en V-{v} no es conexo.

• Se llama istmo a una arista a de G de modo que el grafo (V, E-{a}) no es conexo.

• Sea un grafo G=(V, E) que posee k componentes conexas, se verifica ladesigualdad: #E≤≤

�(#V-k)(#V-k+1).

• Si G=(V, E) se verifica: #E>�

(#V-1)(#V-2). →Grafo conexo con un componente.• Todo grafo completo es hamiltoniano.• Todo grafo con un punto de corte no es hamiltoniano.Para multigrafos:• Si un multigrafo es euleriano, todo vértice de G tiene grado par.• Si un multigrafo G tiene un camino euleriano no cerrado, entonces G tiene

exactamente dos vértices con grado impar.• Si todos los vértices de un multigrafo conexo tienen grado par entonces dicho

multigrafo es euleriano.• Si un multigrafo conexo tiene exactamente dos vértices con grado impar, entonces,

admite un camino euleriano no cerrado.2.3. Exploración de GrafosMatriz de adyacencia:Sea G=(V, E) un grado con V={v1,..., vn}. Se denomina matriz de Adyacencia M=(mij)de orden pxp, cuyas entradas son 1 o 0 siguiendo la siguiente ley:

mij=1 si vivj ∈ E.mij=0 si vivj ∉ E.

Para digrafos:mij=1 si vivj ∈ E y la orientación de la arista es vi→vj.mij=0 si vivj ∉ E, o bien, vivj ∈ E pero la orientación de la arista es vj→vi.

v1v1 v1v2 ... v1vn

v2v1 v2v2 ... v2vn

G= ......vn-1v1 ... vn-1vn

vnv1 ... vnvn

Son puntos de corte: (e, d, c).La arista: (ed), es un istmo.

Page 5: teoria de grafos

Matemática Discreta: Teoría de grafos

5

La matriz de adyacencia de un grafo o digrafo, posee toda la información parareconstruir el grafo o digrafo.Ejemplo: A≠≠B

(Grafo) (Digrafo)0 1 1 0 0 1 0 01 0 1 1 0 0 1 0

A= 1 1 0 0 B= 1 0 0 00 1 0 0 0 1 0 0

• Dos grafos con la misma matriz de adyacencia, son isomorfos. Dos grafos isomorfospueden tener distinta matriz de adyacencia si se permutan el orden de los vértices.

Teorema:Sea M la matriz de adyacencia de un grafo (digrafo) G con p vértices, p>1. Entonces laentrada (i, j) de la matriz Mn=M..n..M es el número de caminos de caminos de longitudn con extremos vi y vj (en el caso de digrafos es el número de caminos de longitud n conorigen vi y fin vj).Sea M la matriz de adyacencia de un grafo G con p vértices, p>2.Sea C=Mp-1+MP-2+...+M, existe un camino entre vi y vj si y solo si la entrada en el lugar(i,j) de la matriz C es no nula, esto nos da un criterio para saber si un grafo es conexo.

Estudiaremos el grafo A.

=

0010

0011

1101

0110

A

=

+

+

=++=

1242

2465

4656

2564

0010

0011

1101

0110

1101

1211

0131

1112

0131

1243

3424

1342

23 AAAC

En la matriz A2 aparecen el número de caminos de longitud 2 existentes en losvértices vi, vj, por ejemplo, existe 1 camino de longitud 2 entre los vértices v1, v3; y noexiste ningún camino de longitud 2 entre los vértices v4, v2;

Todas las entradas de la matriz C son no nulas, por lo que el grafo A es conexo.

Sea M la matriz de adyacencia de un grafo G con p vértices, p>2.Sea C=Mp-1+Mp-2+...+M. El grafo G es conexo, si y solo si, todas las entradasde C son no nulas.

Para recordar producto y suma de matrices, ver comose obtienen en la asignatura de Algebra

Page 6: teoria de grafos

Matemática Discreta: Teoría de grafos

6

Un árbol:es un grafo conexo sin ciclos, es decir, 2 vértices se conectan por un único caminosimple.

Todo subgrafo de un árbol, es también un árbol.• Todo grafo conexo con menor número de aristas que de vértices, debe ser un árbol.Un grafo o digrafo, se dice que es etiquetado,si sus aristas tienen asignado un número.A la etiqueta de una arista a de G se le suele designar longitud de a.• Dado un camino, en un grafo etiquetado, se denomina longitud del camino a la

suma de las etiquetas de las aristas, si todas las etiquetas son 1, la longitud delcamino, en un grafo etiquetado, coincide con la longitud de un camino en un grafo odigrafo.

• Dados dos vértices de un grafo etiquetado, se denomina distancia entre talesvértices, a la suma de los valores de sus aristas, por el camino de longitud mínima.

Algoritmo de Dijkstra:Sea G=(V, E) un digrafo etiquetado por números positivos d: E � � C, donde C es unsubconjunto finito de los números reales positivos (y no nulos). Sean x, y dos vértices deG. Usar este algoritmo para encontrar la distancia entre x e y:Paso 1: Considerar la aplicación L: V � � R∪∪{∞} (R es el conjunto de los números

reales), dado por L(x)=0 y L(v)=∞, para todo vértice G(V) diferente dex. Sea T=V, la aplicación L y el conjunto T irán transformándose en elcurso del algoritmo.

Paso 2: Encontrar el vértice v∈∈T con etiqueta L(v) mínima.Paso 3: Si v=y, la distancia entre x e y es L(y) y el algoritmo acaba.Paso 4: Para todo w∈T, tal que existe una arista vw con origen en v y fin en w, si

L(w)>L(v)+d(vw) entonces se redefine el valor de L sobre w de modoque L(w)=L(v)+d(vw).

Paso 5: Elimínese en el conjunto T el vértice v y volvemos al Paso 2.• Para adaptar el algoritmo a grafos, basta considerar todos los digrafos que se pueden

obtener orientando las aristas del grafo dado.2.4. Mapas y coloracionesUn grafo o multigrafo, se dice que es plano, si admite una representación en el plano,en el que las aristas solo se cortan en los vértices (sin cruces).El grafo K 4 es plano, pues admite representación gráfica plana.Dos representaciones de K 4 son:

Es interesante buscar representaciones planas de grafos.

Page 7: teoria de grafos

Matemática Discreta: Teoría de grafos

7

Un mapaes una representación plana (sin cruce de aristas) de un grafo plano.• Un mapa es conexo, si el grafo que representa es conexo.• Un mapa divide al plano en varias regiones, y su número lo representamos por #R.Un mapa de K4 divide al plano en 4 regiones, cada región en un mapa está bordeado porun camino cerrado en el grafo, que no siempre es un circuito.

El grado de una región es la longitud del camino cerrado que la bordea.Teorema de las regiones:

∑=

=p

i

i ERgr1

#2)( , La suma de los grados de las regiones es igual al número de aristas

multiplicado por 2.• Un poliedro regular define un mapa del grafo formado por sus vértices y sus aristas.

Teorema (Formula de Euler)Sea M un mapa conexo con #R regiones que represente al grafo G=(V, E), entonces:#V-#E+#R=2, es decir, #R+#V=#E+2.

• Sea G=(V, E) un grafo plano conexo, con #V>2, entonces #E≤≤3#V-6.

5 vértices y 10 aristas:10>(3*5)-6=9 ≠≠ #E≤≤3#V-6Entonces K5 no es plano.

#V=4, #=E=66=(3*4)-6=6 = #E≤≤3#V-6Entonces K4 es plano.

Ejemplo:

Grafo plano Mapa del grafo plano

Page 8: teoria de grafos

Matemática Discreta: Teoría de grafos

8

• Sea G=(V, E) un grafo plano conexo, con #V>2 que no contiene ningún subgrafoisomorfo a K 3, entonces #E≤≤2#V-4.Todo grafo completo Kr, con r>2 tiene un subgrafo isomorfo con K3.

Una subdivisión elemental de un grafo G es otro grafo, donde se sustituye una arista porun nuevo vértice unido a los extremos de la arista suprimida por dos nuevas aristas.En un mapa se trata de añadir un vértice sobre el interior de una arista existente.

Una subdivisión de un grafo G es el grafo obtenido efectuando un número finito (puedeser 0) de subdivisiones elementales sucesivas.Teorema de KuratowskiUn grafo G es plano si y solo si, no contiene subgrafos que sean isomorfos a unasubdivisión de K 5, o K 3,3.Dos regiones de un mapa son adyacentes si los caminos que las bordean tienen algunaarista en común.• El pseudomultigrafo dual GM de un mapa M se construye de la siguiente forma:

1) En medio de cada región del mapa se pone un vértice, es decir, cada regiónse sustituye por un vértice.

2) Cada vértice se une con una arista a otro vértice de las regiones adyacentes.3) Los vértices y las aristas antiguas se eliminan.

Una coloraciónes una aplicación que asigna colores distintos a regiones adyacentes. Si transformamosun grafo en un pseudomultigrafo dual resulta que la coloración asigna colores distintos ados vértices que están unidos por una arista.

• Todo grafo plano admite una coloración con cuatro colores.

6 vértices y 9 aristas:9>2*6-4 ≠≠ #E≤≤2#v-4.Entonces K 3,3 no es plano.

Sea G=(V,E) un grafo y C={1, 2, ..., k} un conjunto de k colores.Una coloración con k colores del grafo G es un aplicación γ: V→C, de modoque si u, v ∈ V y uv ∈ E entonces γ(u)≠γ(v)

Page 9: teoria de grafos

Matemática Discreta: Teoría de grafos

9

Un grafo bipartitoes el que su mapa admite una coloración con dos colores.• Un grafo es bipartito, si y solo si, no tiene ciclos con longitud impar.

El grafo anterior es bipartito, en cambio K4 no es bipartito, no admite una coloracióncon dos colores.

� Los únicos grafos completos planos son los Kn para n={1, 2, 3, 4}}.

El único grafo completo bipartito es K2.Para que un grafo sea coloreable con dos colores es condición necesaria y suficiente queel pseudomultigrafo dual sea bipartito, o bien que posea todos los ciclos de longitud par.Teorema de los cinco colores:Cinco colores son suficientes para colorear todo mapa plano.Todo grafo plano contiene al menos un vértice de grado a lo más cinco, por tantocualquier grafo tiene como subgrafo alguno de las cuatro configuraciones de las figuras:

Page 10: teoria de grafos

Matemática Discreta: Teoría de grafos

10

Fecha última actualización Mayo-2002 (Por Rafael J. Vera)