Title: Teor
1Teoría de Grafos
2Definiciones y conceptos
3Definiciones y Ejemplos
Definición Sea V un conjunto finito no vacío, y
sea E?V?V. El par (V, E) es un grafo dirigido
(sobre V), o dígrafo, donde V es el conjunto de
vértices, o nodos y E es su conjunto de aristas.
Escribimos G (V, E) para denotar tal dígrafo.
4La figura proporciona un ejemplo de un grafo
dirigido sobre V a, b, c, d, e con E (a, a),
(a, b), (a, d), (b, c).
5La dirección de una arista se indica al colocar
una flecha dirigida sobre ella, como se muestra.
Para cualquier arista, como (b ,c) decimos que la
arista es incidente con los vértices b, c b es
adyacente hacia c, mientras que c es adyacente
desde b. Además, el vértice b es el origen, o
fuente, de la arista (b, c) y el vértice c es el
término o vértice terminal. La arista (a, a) es
un ejemplo de un lazo y el vértice e que no tiene
aristas es un vértice aislado.
6Cuando no importa la dirección de las aristas, la
estructura G (V, E), donde E es ahora un
conjunto de pares no ordenados sobre V, es un
grafo no dirigido. En un grafo no dirigido hay
aristas no dirigidas, como las aristas a, b,
b, c a, c, c, d de la figura.
7Una arista como a, b representa (a, b), (b,
a). Aunque (a, b) (b, a) sólo si a b,
tenemos que a, b b, a para todos a, b.
En general si no se especifica que un grafo G es
dirigido o no, supondremos que es no dirigido.
8Definición Sean x, y vértices (no necesariamente
distintos) de un grafo no dirigido G (V, E). Un
camino x-y en G es una sucesión alternada finita
(sin lazos) x x0, e1, x1, e2, x2, e3,...,en-1,
xn-1, en, xny de vértices y aristas de G, que
comienza en el vértice x y termina en el vértice
y y que contiene las n aristas eixi-1, xi
donde 1?i?n.
La longitud de un camino es n, el número de
aristas que hay en el camino (Si n 0, no
existen aristas, x y, y el camino se denomina
trivial).
9Cualquier camino x-y donde x y (y n gt 1) es un
camino cerrado. En caso contrario, el camino es
abierto.
C1) a,b, b,d, d,c, c,e, e,d, d,b se
repiten los vértices d y b, así como las aristas
b,d(d,b. C2) b ? c ? d ? e ? c ? f se repite
el vértice c. C3) f, c, c, e, e, d, d, a.
10Definición Consideremos un camino x-y en un grafo
no dirigido G (V, E). a) Si no se repite alguna
arista en el camino x-y, entonces el camino es un
recorrido x-y. Un recorrido x-x es un circuito.
b) Cuando ningún vértice del camino x-y se
presenta más de una vez, el camino es un camino
simple x-y. El término ciclo se usa para
describir el camino simple cerrado.
11b?c?d?e?c?f es un recorrido b-f pero no un camino
simple b-f. El camino f,c,c,e,e,d,d,a es
un recorrido f-a y un camino simple f-a. Las
aristas a,b,b,d,d,c,c,e,e,d y d,a
forman el circuito a-a. Las aristas
a,b,b,c,c,d y d,a forman un ciclo a-a.
12Resumen
13Teorema Sea G (V, E) un grafo no dirigido, con
a, b ?V, a?b. Si existe un recorrido de a a b,
entonces existe un camino simple de a a b.
Demostración. Como hay al menos un recorrido de a
a b, seleccionamos el que tenga la longitud más
corta, digamos a,x1,x1,x2,...,xn,b. Si este
recorrido no es un camino simple, tenemos la
situación a,x1,x1,x2,...,xk-1,xk,xk,xk1,
xk1,xk2,..., xm-1,xm,xm,xm1,...,xn,b,
donde kltm y xkxm, posiblemente con k0 y
a(x0)xm, o mn1 y xkb(xn1). Pero
entonces a,x1,x1,x2,...,xk-1,xk,xm,xm1,..
.,xn,b es un recorrido simple más corto de a a
b.
14Definición Sea G (V, E) un grafo no dirigido.
Decimos que G es conexo si existe un camino
simple entre cualquiera dos vértices distintos de
G.
Sea G (V, E) un grafo dirigido. Su grafo no
dirigido asociado es el grafo obtenido de G si no
se tienen en cuenta las direcciones de las
aristas. Si se obtiene más de una arista no
dirigida de un par de vértices distintos de G,
entonces sólo una de estas aristas se dibuja en
el grafo no dirigido asociado. Cuando este grafo
asociado es conexo, consideramos que G es conexo.
Un grafo que no es conexo se llama disconexo.
15El grafo G (V, E), con Va, b, c, d, e, f, g,
Ea,b,a,c,a,d,b,de,f,f,g no es
conexo ya que, por ejemplo, no hay un camino
simple de a a e. Sin embargo, el grafo está
compuesto por piezas, que son grafos conexos.
16Por lo tanto, un grafo no dirigido G (V, E) es
disconexo si y sólo si V puede separarse en al
menos dos subconjuntos V1, V2 tales que no haya
una arista en E de la forma x, y donde x?V1 e
y?V2.
Un grafo es conexo si y sólo si tiene solamente
una componente.
Definición Para cualquier grafo G (V, E), el
número de componentes de G se denota con ?(G).
17EJEMPLO ?(G)2 para el grafo de la figura.
Definición Un grafo G(V, E) es un multigrafo si
existen a,b ?V, a?b, con dos o más aristas de la
forma 1) (a, b) para un grafo dirigido 2) a,
b para un grafo no dirigido.
18La figura muestra un ejemplo de un multigrafo
dirigido. Existen tres aristas de a a b, por lo
que podemos decir que (a, b) tiene multiplicidad
3. Las aristas (b, c) y (d, e) tienen
multiplicidad 2. Además, la arista (e, d) y
cualquiera de las aristas (d, e) forman un
circuito (dirigido) de longitud 2 en el
multigrafo.
19Subgrafos, Complementos e Isomorfismos de Grafos
20Qué tipo de subestructura nos sirve para
analizar un grafo? Es posible trazar dos grafos
que parezcan distintos pero que tengan la misma
estructura subyacente?
Definición Si G (V, E) es un grafo (dirigido o
no), entonces G1 (V1, E1) es un subgrafo de G
si ? ? V1? V y E1 ? E, donde cada arista de E1 es
incidente con los vértices de V1.
21La figura nos muestra un grafo no dirigido G y
dos de sus subgrafos G1 y G2. Los vértices a, b
son aislados en el subgrafo G1. La parte b) de la
figura nos muestra un ejemplo de grafo dirigido.
Aquí el vértice w es aislado en G.
22Definición Dado un grafo (dirigido o no) G (V,
E), sea G1(V1, E1) un subgrafo de G. Si V1 V,
entonces G1 es un subgrafo recubridor de G.
Los subgrafos G3 y G4 son subgrafos recubridores
del grafo G en la parte a) de la figura anterior.
Los grafos dirigidos G y G son dos grafos
recubridores de G en la parte b).
23Definición Sea G (V, E) un grafo (dirigido o
no). Si ??U ? V, el subgrafo de G inducido por U
es el subgrafo cuyo conjunto de vértices es U y
que contiene todas las aristas (de G) de la
forma 1) (x, y), para x, y ?U, si G es dirigido
o 2) x, y para x, y ?U, si G no es dirigido
Denotaremos a este subgrafo como ?U?.
Un subgrafo G de un grafo G (V, E) es un
subgrafo inducido si existe ? ? U ? V tal que G
?U?.
24Para los subgrafos de la figura, vemos que G2 es
un subgrafo inducido de G pero el subgrafo G1 no
es un subgrafo inducido ya que no aparece la
arista a, d.
25- EJEMPLO Sea G el grafo de la figura.
- Los subgrafos G1 y G2 de la figura son
inducidos. - G1?U1? para U1 b, c, d, e.
- G2?U2? para U2a, b, e, f.
- G3 no es un subgrafo inducido los vértices c, e
están en - G3, pero la arista c, e de (G) no está
presente.
26Definición Sea ? un vértice en un grafo G (V,
E) (dirigido o no). El subgrafo de G denotado G
?, tiene el conjunto de vértices V1V ? y el
conjunto de aristas E1 ? E, tal que E1 contiene
todas las aristas de G excepto las incidentes con
el vértice ?. (Por lo tanto G ? es el subgrafo
de G inducido por V1).
De forma similar si e es una arista del grafo G
(V, E) (dirigido o no), obtenemos el subgrafo G
e (V1, E1) de G, donde el conjunto de aristas
es E1E e, y el conjunto de vértices no
cambia (es decir, V1V).
27- Sea G el grafo no dirigido de la figura.
- G1 es tal que G1 G c G1 es el subgrafo de G
- inducido por el conjunto de vértices
U1a,b,d,f,g,h, y - G1 ?V c? ?U1?.
- G2 es tal que G2 G e, y e es la arista c,
d. - Podemos eliminar más de un vértice (arista).
- G3(Gb)f (Gf)b Gb, f ?U3?, para
- U3a, c,d,g,h.
28Definición Sea V un conjunto de n vértices. El
grafo completo sobre V, que se denota con Kn, es
un grafo no dirigido sin lazos tal que para todos
a, b ?V, a ? b, existe una arista a, b.
La figura anterior proporciona los grafos
completos Kn, para 1?n?4.
29En a) aparece un grafo no dirigido de cuatro
vértices. Su complementario se muestra en la
parte b). En el complementario el vértice a está
aislado.
30Definición Sean G1(V1, E1) y G2(V2, E2) dos
grafos no dirigidos. Una función f V1 ? V2 es un
isomorfismo de grafos si 1) f es biyectiva 2) ?
a, b ?V1, a, b ?E1 si y sólo si f(a), f(b)
?E2.
Cuando existe tal función, G1 y G2 son grafos
isomorfos.
31Para los grafos de las partes a) y b) de la
figura, la función f definida por f(a)w, f(b)x,
f(c)y, f(d)z da como resultado un isomorfismo.
(De hecho cualquier correspondencia uno a uno
entre a, b, c, d y w, x, y, z será un
isomorfismo, ya que ambos grafos son completos).
En consecuencia en lo que se refiere a la
estructura estos grafos se consideran iguales,
cada uno es isomorfo al grafo K4.
32Para los grafos c) y d) de la figura se necesita
un poco más de cuidado. La función g definida
por g(m)r, g(n)s, g(p)t, g(q)u es uno a
uno y sobre. Sin embargo, aunque m, q es una
arista del grafo de la parte c), g(m), g(q)
r, u no es una arista del grafo de la parte d).
En consecuencia, la función g no define un
isomorfismo de grafos.
33Para mantener la correspondencia de aristas se
considera la función uno a uno y sobreinyectiva h
tal que h(m)s, h(n)r, h(p)u, h(q)t En
este caso tenemos las correspondencias de
aristas m,n ? h(m),h(n) s,r m,p ?
h(m),h(p) s,u m,q ? h(m),h(q) s,t
n,q ? h(n),h(q) r,t p,q ?
h(p),h(q) u,t entonces h es un isomorfismo
de grafos.
34Tenemos dos grafos, cada uno con diez vértices,
no se ve de inmediato si estos grafos sean
isomorfos. a?q c?u e?r g?x i?z b?v d?y f?w h?t j?
s C1 a? f ? h ? c ? b ? g ? j ? e ? d ? i C2
q ? w ? t ? u ? v ? x ? s ? r ? y ? z C1 se
corresponde con C2
35Grados de un vértice recorridos y circuitos
Eulerianos
36Como hemos visto el número de aristas incidentes
en un vértice podría utilizarse para mostrar que
dos grafos no dirigidos no son isomorfos. Ahora
veremos que esta idea puede todavía ayudarnos
más.
Definición Sea G un grafo o multigrafo no
dirigido. Para cualquier vértice ? de G, el grado
de ?, que se denota grad(?), es el número de
aristas en G que son incidentes con ?. En este
caso, un lazo en un vértice ? se considera como
dos aristas incidentes en ?.
37EJEMPLO Para el grafo de la figura,
grad(b)grad(d) grad(f)grad(g)2, grad(c)4,
grad(e)0 y grad(h)1. Para el vértice a se
tiene grad(a)3 ya que contamos el lazo dos
veces. Como h tiene grado 1, se le llama vértice
colgante.
38(No Transcript)
39Corolario Para cualquier grafo o multigrafo no
dirigido, el número de vértices de grado impar
debe ser par.
EJEMPLO Un grafo (o multigrafo) no dirigido donde
los vértices tienen el mismo grado se denomina
grafo regular. Si grad(v) k para todos los
vértices v, entonces el grafo es k-regular. Es
posible tener un grafo 4-regular con 10 aristas?.
40(No Transcript)
41Ahora veamos la razón por la que Euler desarrolló
la idea de grado de un vértice para resolver el
problema de los siete puentes de Königsberg.
42Se decía que los habitantes hacían paseos
dominicales tratando de encontrar una forma de
caminar por la ciudad cruzando cada puente
exactamente una vez y regresando al punto donde
habían iniciado el paseo.
43Con el fin de determinar si existía o no dicho
circuito, Euler representó las cuatro zonas de la
ciudad y los siete puentes con el multigrafo que
se muestra en la figura.
Encontró cuatro vértices con grado(a)3
grado(c)3 grado(d)3 y grado(b)5. También
encontró que la existencia de tal circuito
dependía del número de vértices de grado impar
del grafo.
44Definición Sea G (V, E) un grafo o multigrafo
no dirigido sin vértices aislados. Entonces G
tiene un circuito Euleriano si existe un circuito
en G que recorra cada arista del grafo
exactamente una vez. Si existe un recorrido
abierto de a a b en G que recorre cada arista de
G exactamente una vez, este recorrido se llamará
recorrido Euleriano.
El problema de los siete puentes quedará resuelto
si caracterizamos los grafos que tienen un
circuito Euleriano.
45Teorema Sea G (V, E) un grafo o multigrafo no
dirigido sin vértices aislados. Entonces G tiene
un circuito Euleriano si y sólo si G es conexo y
todo vértice de G tiene grado par.
Demostración Si G tiene un circuito Euleriano,
entonces para cualquier a, b? V existe un
recorrido de a a b a saber, la parte del
circuito que comienza en a y termina en b, por lo
tanto de un teorema anterior se sigue que G es
conexo. Sea c el vértice inicial del circuito
Euleriano. Para cualquier otro vértice v de G,
cada vez que el circuito llega a v entonces
partirá de ese vértice . Así, el circuito pasa
por dos aristas (nuevas) incidentes con v o por
un lazo (nuevo) en v. En cada caso, se contribuye
con dos unidades a grad(v). Como v no es el punto
inicial y cada arista incidente a v se recorre
una sola vez, obtenemos dos unidades cada vez que
el circuito pasa por v, de modo que grad(v) es
par. Para el vértice inicial c, la primera arista
del circuito debe ser distinta de la última, y
como cualquier otro paso por c produce dos
unidades para grad(c), tenemos que grad(c) es
par.
46Demostración Recíprocamente, sea G un grafo
conexo tal que todos los vértices tienen grado
par. Si el número de aristas de G es 1 o 2 ,
entonces G debe ser como los grafos de la figura.
Los circuitos Eulerianos son inmediatos en estos
casos. Ahora procederemos por inducción y
supondremos que el resultado es valido para todas
las situaciones con menos de n aristas.
47Demostración (Continuación...) Si G tiene n
aristas, seleccionamos un vértice c en G como
punto inicial para construir un circuito
Euleriano. Como el grafo G es conexo y cada
vértice tiene grado par, podemos construir al
menos un circuito C que contenga a c. (Verifique
esto examinando el recorrido más largo en G que
comienza en c). Si el circuito contiene todas las
aristas de G, hemos terminado. Si no, eliminamos
las aristas del circuito de G, asegurándonos de
eliminar cualquier vértice que haya quedado
aislado. El subgrafo restante K tiene todos los
vértices de grado par, pero puede no ser conexo.
Sin embargo, cada componente de K es conexa y
tendrá un circuito Euleriano. Además, cada uno de
estos circuitos Eulerianos tiene un vértice que
está en C. En consecuencia, podemos partir de c y
recorrer C hasta llegar al vértice c1 que está en
el circuito Euleriano de una componente C1 de K.
Entonces se recorre este circuito Euleriano y al
regresar a c1, continuamos en C hasta llegar a un
vértice c2 que está en el circuito Euleriano de
la componente C2 de K. Como el grafo G es finito,
podemos continuar este proceso hasta construir un
circuito Euleriano para G.
48Si G es conexo y no tiene demasiados vértices de
grado impar, podemos hallar al menos un recorrido
Euleriano en G.
Corolario Si G es un grafo o multigrafo no
dirigido sin vértices aislados, entonces podemos
construir un recorrido Euleriano en G si y sólo
si G es conexo y tiene exactamente dos vértices
de grado impar. Demostración Si G es conexo y a
y b son los vértices de G de grado impar,
añadimos una arista adicional a, b a G. Ahora
tenemos un grafo G1 conexo tal que todos sus
vértices son de grado par. Por lo tanto, G1 tiene
un circuito Euleriano C cuando eliminamos la
arista a, b de C, obtenemos un recorrido
Euleriano para G. (Así, el recorrido Euleriano
comienza en uno de los vértices de grado impar y
termina en otro vértice de grado impar).
49Si regresamos ahora al problema de los siete
puentes de Königsberg.
Nos damos cuenta que el grafo es un multigrafo
conexo, pero tiene cuatro vértices de grado
impar. En consecuencia, no tiene ni un recorrido
Euleriano ni un circuito Euleriano.
50Definición Sea G (V, E) un grafo o multigrafo
dirigido. Para cualquier v? V, El grado de
entrada de v es el número de aristas de G que
llegan a v y se denota con ge(v). El grado de
salida de v es el número de aritas de G que
parten de v y se denota con gs(v).
Si el grafo o multigrafo dirigido tiene uno o más
lazos, cada lazo de un vértice dado v contribuye
con una unidad a ge(v) y a gs(v).
Teorema Sea G (V, E) un grafo o multigrafo
dirigido sin vértices aislados. El grafo G tiene
un circuito Euleriano dirigido si y sólo si G es
conexo y ge(v)gs(v) para todo v?V .
51Grafos Planos
52En un mapa de carreteras, las líneas que indican
las carreteras y autopistas se intersecan por lo
general solamente en puntos de confluencia o en
poblaciones. Pero hay ocasiones en que las
carreteras parecen intersecarse cuando una se
localiza sobre otra, en este caso, las carreteras
están en diferentes niveles o planos.
Definición Un grafo (o multigrafo) G es plano si
podemos dibujar G en el plano de modo que sus
aristas se intersequen sólo en los vértices de G.
Este dibujo de G se conoce como una inmersión de
G en el plano.
53EJEMPLO Los grafos de la figura son planos. El
primero es un grafo 3-regular, ya que cada
vértice tiene grado 3 es plano pues ningún par
de aristas se intersecan, excepto en los
vértices. El grafo b) parece un grafo no plano
las aristas x, z y w, y se cruzan en un punto
distinto de un vértice. Sin embargo, podemos
trazar nuevamente este grafo, como se muestra en
la parte c) de la figura. En consecuencia K4 es
plano.
54EJEMPLO Al igual que K4, también K1, K2 y K3 son
planos. En la figura se muestra un intento de
representar K5 en el plano.
55Definición Un grafo G (V, E) es bipartito si V
V1 ? V2 , V1 ? V2 ? y cada arista de G es de
la forma a, b con a ? V1 y b ? V2. Si cada
vértice de V1 está unido con los vértices de V2,
se tiene un grafo bipartito completo. En este
caso, si V1 m, V2 n, el grafo se denota con
Km,n.
El grafo a) satisface la definición con V1a, b
y V2c, d, e. Si se añaden las aristas b, d y
b, c, el resultado es el grafo bipartito
completo K2,3, que es plano.
56El grafo b) de la figura es K3,3. Sea V1 h1,
h2, h3 y V2 u1, u2, u3 interpretamos V1 como
un conjunto de casa y V2 como un conjunto de
servicios. Entonces K3,3 es el grafo de
servicios. Podemos unir las casa con los
servicios, evitando que haya superposición de las
líneas de servicio?. En la figura parece que esto
no es posible y que K3,3 no es plano.
57Definición Sea G (V, E) un grafo no dirigido
sin lazos, tal que E ? ?. Una subdivisión
elemental de G resulta cuando eliminamos una
arista e u, w de G y entonces las aristas u,
v, v, w se añaden a G e, donde v?V. Los
grafos no dirigidos sin lazos G1(V1, E1) y
G2(V2, E2) son homeomorfos si son isomorfos o si
ambos pueden obtenerse del mismo grafo no
dirigido sin lazos H por una sucesión de
subdivisiones elementales.
58Consideremos los grafos G, G1, G2 y G3 de la
figura. En este caso G1 se obtiene de G por medio
de una subdivisión elemental se elimina la
arista a, b de G y se añaden las aristas a, w
y w, b. El grafo G2 se obtiene de G mediante
dos subdivisiones elementales. Por lo tanto G1 y
G2 son homeomorfos. Así mismo, G3 puede obtenerse
de G con cuatro subdivisiones elementales, por lo
que G3 es homeomorfo a G1 y G2.
59Sin embargo G1 no puede obtenerse de G2 (o G2 de
G1) por una sucesión de subdivisiones
elementales. Además, el grafo G3 puede obtenerse
de G1 o G2 por una sucesión de subdivisiones
elementales tres para G1 y dos para G2. Pero ni
G1 ni G2 pueden obtenerse de G3 por una sucesión
de subdivisiones elementales.
60Podría pensarse que los grafos homeomorfos son
isomorfos excepto, posiblemente, por los vértices
de grado 2. En particular, si dos grafos son
homeomorfos, son simultáneamente plano (o no
planos).
Teorema (de Kuratowski) Un grafo no es plano si y
sólo si contiene un subgrafo que es homeomorfo a
K5 o K3,3.
Demostración Si un grafo G tiene un subgrafo
homeomorfo a K5 o K3,3, está claro que G no es
plano. Sin embargo, el reciproco de este teorema
es más difícil de demostrar.
61EJEMPLO La figura es un grafo conocido llamado
grafo de Petersen. La parte b) de la figura
proporciona un subgrafo del grafo Petersen que es
homeomorfo a K3,3
62La figura muestra cómo se obtiene el subgrafo de
K3,3 por una sucesión de cuatro subdivisiones
elementales. Por lo tanto, el grafo de Petersen
no es plano.
63Cuando un grafo o multigrafo es plano y conexo
obtenemos la siguiente relación descubierta por
Euler, para la cual necesitamos contar el número
de regiones determinadas por un grafo o
multigrafo conexo plano, el número (de estas
regiones) se define sólo cuando se tiene una
inmersión plana del grafo. Por ejemplo, la
inmersión plana de K4 en la parte a) de la figura
demuestra cómo esta representación de K4
determina 4 regiones en el plano 3 de área
finita, R1, R2 y R3, y la región infinita R4 .
Cuando observamos la figura b) podría pensarse
que K4 determina 5 regiones, pero esta
representación no es una inmersión plana de K4.
Así, el resultado de la figura a) es el único que
nos interesa.
64Demostración La demostración se hace por
inducción sobre e. Si e 0 o 1, entonces G es
isomorfo a uno de los grafos de la figura. El
grafo de la parte a) tiene v 1, e 0 y r 1
entonces v e r 2. Para el grafo b), v 1,
e 1 y r 2. El grafo c) tiene v 2, e 1 y r
1. En ambos casos, v e r 2.
65Demostración (Continuación...) Ahora sea k?N y
supongamos que el resultado es verdadero para
cualquier grafo o multigrafo plano conexo con e
aristas, donde 0 ? e ? k. Si G (V, E) es un
grafo o multigrafo plano conexo con v vértices, r
regiones y e k1 aristas, sean a, b?V con a,
b ? E. Considere el subgrafo H de G obtenido al
eliminar la arista a, b de G (Si G es un
multigrafo y a, b es una de un conjunto de
aristas entre a y b, entonces la eliminamos sólo
una vez). En consecuencia, se puede escribir H
G a, b o G H a, b. Consideremos los dos
casos siguientes, que dependen de si H es conexo
o disconexo.
66Demostración (Continuación...) Caso1 Los
resultados de las partes a), b), c) y d) de la
figura muestran cómo un grafo G puede obtenerse
de un grafo conexo H cuando se dibuja el lazo
(nuevo) a, a como en las partes a) y b) o
cuando la arista (nueva) a, b une dos vértices
distintos en H como en las partes c) y d). En
todas estas situaciones, H tiene v vértices, k
aristas y r 1 regiones, ya que una de las
regiones de H se divide en dos regiones para G.
La hipótesis de inducción aplicada al grafo H
indica que v k (r 1) 2 y de esto se sigue
que 2 v (k 1) r v e r. Así, en este
caso el teorema de Euler es cierto para G.
67Demostración (Continuación...) Caso2 Ahora
consideremos el caso en que G a, b H es un
grafo disconexo como se muestra en la figura e) y
f). En este caso, H tiene v vértices, k aristas y
r regiones. Así mismo, H tiene dos componentes H1
y H2, donde Hi tiene vi vértices, ei aristas y ri
regiones, para i 1, 2. Además, v1 v2 v, e1
e2 k ( e 1) y r1 r2 r 1 ya que H1 y
H2 determinan, cada uno, una región infinita.
Cuando se aplica la hipótesis de inducción a H1y
H2 vemos que v1 e1 r12 y v2 e2 r22.En
consecuencia, (v1 v2) (e1 e2) (r1 r2)
v (e 1) (r 1) 4, y de esto se sigue que
v e r 2, y así establecemos el teorema de
Euler para G.
68Para cualquier región R en una inmersión plana de
un grafo o multigrafo, el grado de R, que se
denota con grad(R), es el número de aristas
recorridas en un camino cerrado (el más corto)
por (las aristas de) la frontera de R.
Si G (V, E) es el grafo de la figura, entonces
esta inmersión plana de G tiene cuatro regiones
donde grad(R1) 5, grad(R2) 3, grad(R3) 3,
grad(R4) 7. En este caso grad(R4)7, como lo
determina el camino cerrado a?b?g?h?g?f?d?a.
69La figura muestra una segunda inmersión plana de
G, otra vez con cuatro regiones, y en este caso
grad(R5) 4, grad(R6) 3, grad(R7) 5,
grad(R8) 6. El camino cerrado b?g?h?g?f?b da
grad(R7)5. Se ve que
. Esto es cierto en general ya que cada arista de
la inmersión plana es parte de la frontera de dos
regiones
70Demostración Como G no tiene lazos ni es un
multigrafo, la frontera de cada región
(incluyendo la región infinita) contiene al menos
tres aristas, por lo tanto cada región tiene
grado ? 3. En consecuencia, 2e la suma de
los grados de las r regiones determinadas por G y
2e ? 3r. Del teorema de Euler, 2 v e r ? v
e (2/3)e v (1/3)e, por lo que 6 ? 3v e
o e ? 3v 6.
71Consideremos ahora lo que este corolario implica
y lo que no implica. Si G (V, E) es un grafo
conexo sin lazos con E?2, entonces si e?3v 6,
se sigue que G no es plano. Sin embargo, si e ?
3v 6, no se puede concluir que G sea plano.
EJEMPLO El grafo K5 no tiene lazos y es conexo
con 10 aristas y cinco vértices. En consecuencia,
3v6 156 9 ? 10 e. Por lo tanto, por el
corolario vemos que K5 no es plano.
72EJEMPLO El grafo K3,3 no tiene lazos y es conexo
con nueve aristas y seis vértices. En este caso,
3v 6 18 6 12 ? 9 e. Sería un error
concluir a partir de esto que K3,3 es plano
cometeríamos el error de estar argumentando al
revés. Sin embargo, K3,3 no es plano. Si K3,3
fuera plano, entonces como cada región del grafo
está limitada por al menos cuatro aristas,
tendríamos 4r ? 2e. Del teorema de Euler tenemos,
v e r 2 o r e v 2 9 6 2 5, y
20 4r ? 2e 18. De esta contradicción se tiene
que K3,3, no es plano.
73Caminos y ciclos Hamiltonianos
74En 1859, el matemático irlandés Sir William Rowan
Hamilton (1805-1865) desarolló un juego que
vendió a un fabricante de juguetes de Dublín. El
juego era un dodecaedro regular de madera con 20
esquinas (vértices) en las que aparecían
inscritos los nombres de las ciudades más
importantes. El objetivo del juego era encontrar
un ciclo alrededor de las aristas del sólido, de
modo que cada ciudad estuviera en el ciclo
(exactamente) una vez.
75Definición Si G (V, E) es un grafo o multigrafo
tal que V? 3, decimos que G tiene un ciclo
Hamiltoniano si existe un ciclo en G que contenga
cada vértice de V. Un camino Hamiltoniano es un
camino simple (y no un ciclo) de G que contiene
todos los vértices.
Dado un grafo con un ciclo hamiltoniano, la
eliminación de cualquier arista en el ciclo
produce un camino hamiltoniano. Sin embargo, es
posible que un grafo tenga un camino hamiltoniano
sin que tenga un ciclo hamiltoniano.
76Podría parecer que la existencia de un ciclo
(camino) Hamiltoniano y la existencia de un
circuito (recorrido) Euleriano para un grafo son
problemas similares. El ciclo (camino)
Hamiltoniano tiene como objetivo pasar por cada
vértice de un grafo una sola vez el circuito
(recorrido) recorre el grafo pasando por cada
arista exactamente una vez. Por desgracia, no
existe una relación útil entre las dos ideas y, a
diferencia de los circuitos (recorridos)
Eulerianos, no existen condiciones necesarias y
suficientes en un grafo G que garanticen la
existencia de un ciclo (camino) Hamiltoniano.
77EJEMPLO Si G es el grafo de la figura, las
aristas a,b, b,c, c,f, f,e, e,d, d,g,
g,h, h,i forman un camino hamiltoniano para
G. Pero tiene G un ciclo Hamiltoniano?.
Como G tiene nueve vértices, si existe un ciclo
Hamiltoniano en G, éste debe contener nueve
aristas. Comencemos en un vértice b y tratemos de
construir un ciclo Hamiltoniano.
Con las aristas c, f y f, i en el ciclo, no
podemos tener la arista e, f en el ciclo. Una
vez en e, ya no podemos continuar. Por lo tanto,
este grafo no tiene un ciclo Hamiltoniano.
78Sugerencias útiles para tratar de encontrar un
ciclo Hamiltoniano en un grafo G (V, E). 1) Si
G tiene un ciclo Hamiltoniano, entonces para v?V,
grad(v) ? 2. 2) Si a?V y grad(a) 2, entonces
las dos aristas incidentes con el vértice a deben
aparecer en cualquier ciclo Hamiltoniano de G. 3)
Si a?V y grad(a) ? 2, cuando tratamos de
construir un ciclo Hamiltoniano, una vez que
hemos pasado por el vértice a, dejamos de tener
en cuenta las aristas no utilizadas incidentes
con a. 4) Al construir un ciclo Hamiltoniano para
G, no podemos obtener un ciclo para un subgrafo
de G a menos que contenga todos los vértices de
G.
79EJEMPLO En la figura tenemos un grafo conexo G y
queremos saber si G contiene un camino
Hamiltoniano. La parte b) de la figura
proporciona el mismo grafo con un conjunto de
etiquetas x, y.
80Porqué funciona este argumento? En la figura se
ha vuelto a dibujar el mismo grafo y vemos que es
bipartito. Un grafo bipartito no puede tener un
ciclo de longitud impar. También es cierto que si
el grafo no tiene un ciclo simple de longitud
impar, entonces es bipartito. En consecuencia
cuando un grafo conexo no tiene ciclo de longitud
impar (y es bipartito), el método descrito
anteriormente puede ser útil para determinar si
el grafo no tiene un camino Hamiltoniano.
81EJEMPLO En el campamento que el profesor Alfredo
ha organizado con su grupo de antropología, 17
estudiantes comen juntos en una mesa circular.
Como intentan conocerse mejor, tratan cada tarde
de sentarse con dos compañeros distintos.
Durante cuántas tardes pueden hacer esto? Cómo
pueden hacerlo?.
82Consideremos el círculo de la figura a) y el
subgrafo de Kn que consta de n vértices y n
aristas 1,2, 2,3, ... , n1, n, n, 1.
Mantenemos los vértices en la circunferencia
fijos y rotamos este ciclo Hamiltoniano en el
sentido de las manecillas del reloj, hasta el
ángulo 1/(n1)(2?). Esto produce el ciclo
Hamiltoniano (ver b)) formado por las aristas
1,3, 3,5,5,2,2,7, ... , n, n3,n3,
n1, n1, 1. Este ciclo Hamiltoniano no tiene
aristas en común con el primer ciclo.
83Si n ? 7 y seguimos rotando de esta manera el
ciclo de la figura a), hasta los ángulos
k/(n1)( 2?), donde 2? k ? (n3)/2 obtenemos un
total de (n1)/2 ciclos Hamiltonianos, sin que
haya dos aristas en común. Por lo tanto, los 17
estudiantes que participan en el campamento
pueden comer durante (17-1)/2 8 días antes de
que tengan que sentarse junto a otro estudiante
por segunda vez. Usando la figura a) con n17,
podemos obtener ocho de estas posibles
disposiciones.
84El n-cubo ( hipercubo)
- La computadora tradicional llamada en serie, se
ejecuta una instrucción a la vez . - Los algoritmos que también ejecutan una
instrucción a la vez son llamados algoritmos en
serie.
85- En los últimos años, al disminuir el costo del
hardware, se han construido Computadoras
Paralelas con muchos procesadores, los cuales
pueden ejecutar varias instrucciones a la vez
Frecuentemente, se utilizan a los grafos para
ilustrar la topografía de estas maquinas
paralelas .Los algoritmos asociados con estos
equipos son algoritmos paralelos .Muchos
problemas se pueden resolver mas rápidamente en
computadoras paralelas que en computadoras
seriales, aunque no todos los problemas. - Una maquina paralela muy utilizada actualmente es
conocida como el n-cubo o hipercubo .El n-cubo
tiene 2n procesadores, n gt o 1, cada procesador
se representa mediante un nodo.
86- Cada procesador tiene su propia memoria local
.Una arista conecta dos vértices si la
representación binaria de sus etiquetas difieren
en exactamente un bit . - Durante una unidad de tiempo, todos los
procesadores de el n-cubo pueden ejecutar una
instrucción de manera simultánea y luego
comunicarse con el procesador adyacente.
871-cubo
2 procesadores 0,1
2-cubo
4 procesadores 00,01,10,11
883-cubo
000
001
8 procesadores 000,001,010,011,100,101,110,111
011
010
110
100
111
101
894-cubo
16 procesadores
90Ejemplo de 16 procesadores
91Una grafica se llama plana si puede dibujarse en
un plano sin que haya cruce en sus aristas
92Una grafica completa de n-vértices denotada por
kn , es un grafica con n vértices donde cada
nodo se conecta con todos los otros nodos del
grafo
K2
2
1
1
K3
NOTA K5 no es plano
2
3
K5
1
K4
1
2
2
3
3
4
4
5
93RECORRIDO A LO PROFUNDO DE UN GRAFO
- Es un procedimiento para visitar cada nodo y cada
arista de un grafo G(V,E), de forma ordenada y
sin repetir elementos visitados .El siguiente
algoritmo realiza esta búsqueda a lo profundo - int. dfinic ( )
-
- / Asignar color blanco (inicial) a los nodos /
- for i 1 to v
- color iblanco
- /visitar en orden los nodos/
- for i1 to v
- if (coloriblanco)dfs(i)
- else continue
- return
-
94- /función que visita en profundidad al grafo/
- int dfs(v)
-
- color vgris
- /procedimiento en preorden del vértice v/
- RemadAdyacentes (v)
- While (remadjltgtNil)
-
- Wfirst (remadj)
- if (color wblanco)dfs (w)
- else /encontró arista de retroceso/
- remadj resto (remadj)
-
- /Proceso en post-orden de v
- color vNegro
- return
95Aplicar la búsqueda a lo profundo
f
a
b
i
e
g
d
c
h
a b,d
c b,d,e
retroceso
f
b d
f g
cruce
b
a
g
i
c
retroceso
g h,i
d
e
h
cruce
cruce
96retroceso
cruce
8
1
retroceso
Ret roceso
5
6
9
retroceso
2
cruce
10
cruce
7
4
3
cruce
97BOSQUE ABARCADOR EN PROFUNDIDAD PARA GRAFOS
DIRIGIDOS
- Durante un recorrido en profundidad se tienen
diferentes clases de aristas .Los arcos que nos
llevan a vértices sin visitar se llaman ARCOS DE
ÁRBOL y forman un bosque abarcador en profundidad
del grafo de entrada .Los arcos de árbol deben
formar un bosque abarcador en profundidad del
grafo de entrada .Los arcos de árbol deben formar
realmente un bosque. - Un ARCO DE RETROCESO va de un nodo a uno de sus
antecedentes en el bosque abarcador .Observe que
un arco que va de un vértice hacia si mismo es un
arco de retroceso - Un arco que no es parte del bosque abarcador que
va de un vértice a un descendiente propio se
llama ARCO DE AVANCE - Los arcos que van de un vértice a otro que no es
antecesor ni descendiente, se conoce como ARCOS
CRUZADOS
98Árboles abarcadores
f
6
c
1
4
a
BOSQUE ABARCADOR
g
7
d
b
e
3
2
5
8
9
h
i
Tree 1
tree2
tree3
F
A
B
E
C
G
D
990
A
retroceso
ARBOL
retroceso
1
A
B
B
3
2
C
D
C
D
cruce
tree1
cruce
4
E
cruce
E
F
G
F
G
6
5
tree2
100- Suponga que se numeran los vértices de un grafo
dirigido de acuerdo con el orden en que se
marcaron los nodos visitados durante la búsqueda
en profundidad .Esto es ,se puede asignar un
arreglo que contabiliza los nodos. - Color vgrey
- Numero vcont /líneas de adicionar /
- Contcont1
- Estas dos líneas nos permiten numerar los nodos
del grafo en profundidad .Así la búsqueda en
profundidad asigna a todos los descendientes de
nodo v, números mayores al asignado a v. De hecho
un descendiente de v si y solo si numero
(v)ltnumero (w). - Los arcos de avance irán de los vértices de baja
numeración a los de alta numeración y los arcos
de retroceso van de los vértices de alta
numeración a los de baja numeración - Todos los arcos cruzados van de vértices de alta
numeración a los de baja numeración
101RECORRIDOS EN UN GRAFO
- En una gran cantidad de problemas con grafos, es
necesario visitar sistemáticamente los vértices y
aristas del grafo .La búsqueda en PROFUNDIDAD Y
EN AMPLITUD, son dos técnicas importantes de
recorrido del grafo. Analicemos ahora el
recorrido en Amplitud se basa en a partir del
nodo actual visitar a todos sus nodos adyacentes
en forma tan amplia como sea posible.
102- Al igual que en la búsqueda en profundidad, la
búsqueda en amplitud construye un árbol abarcador
del grafo de entrada .La gran diferencia en el
orden de visitar los nodos entre la búsqueda a lo
profundo y búsqueda en amplitud, consiste en la
estructura utilizada para guardar los nodos a
visitar en la búsqueda a lo profundo se utiliza
una pila o stack de procedimiento recursivo
mientras que en la búsqueda en amplitud se
utiliza una cola para guardar tales nodos a
visitar. - Los árboles abarcadores generados son diferentes
por cada recorrido. En el caso de la búsqueda a
lo profundo se trata de construir un árbol con
la mayor altura, dando control de la búsqueda
al nodo hijo que no había sido visitado
.Mientras que un árbol generado por la búsqueda a
lo ancho es un árbol frondoso, dando preferencia
a la vista de todos los nodos adyacentes no
visitados que son guardados en una estructura
cola, para dar posteriormente control de la
búsqueda al primer nodo de la cola.
103Ejemplo Recorrer el grafo G en profundidad y en
amplitud ,generando sus árboles abarcadores
4
1
7
5
2
3
6
9
8
10
104RECORRIDO A LO PROFUNDO
cruce
5
1
8
2
3
avance
cruce
cruce
cruce
cruce
9
4
cruce
10
6
7
cruce
105Recorrido a lo ancho
8
1
9
10
4
cruce
6
7
Expansión a lo ancho
106Ejemplo 2
4
1
7
5
2
3
6
9
8
10
107Recorrido a la profundo
1
retroceso
8
4
avance
avance
9
6
cruce
retroceso
10
5
retroceso
3
7
2
108Recorrido a lo ancho
COLA
retroceso
1
4 6 7 5 3 2
4
8
9 10
6
7
retroceso
cruce
5
10
9
retroceso
cruce
3
cruce
2