





















































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Notas Ejemplos Ejercicios Apuntes
Tipo: Ejercicios
1 / 61
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!






















































8.1 Introducción 8.2 Trayectorias y ciclos Rincón de solución de problemas: gráficas 8.3 Ciclos hamiltonianos y el problema del agente viajero 8.4 Un algoritmo de la ruta más corta 8.5 Representaciones de gráficas 8.6 Isomorfismos de gráficas 8.7 Gráficas planas 8.8 Locura instantánea Notas Repaso del capítulo Autoevaluación del capítulo Ejercicios para computadora
Aunque la primera publicación de teoría de gráficas data de 1736 (vea el ejemplo 8.2.16) y varios resultados importantes de teoría de gráficas se obtuvieron en el siglo XIX , no fue sino hasta 1920 que surgió un interés sostenido, amplio e intenso en la teoría de gráficas. En realidad, el primer libro de texto de este tema ([König]) apareció en 1936. Sin duda, una de las razones del reciente interés en la teoría de gráficas es su aplicabilidad en muchos campos, incluyendo ciencias de la computación, química, investigación de operaciones, in- geniería eléctrica, lingüística y economía. En este capítulo, primero se expone cierta terminología básica y ejemplos de gráficas. Después se analizan algunos conceptos importantes en la teoría de gráficas, que incluyen tra- yectorias y ciclos. Luego se presentan dos problemas clásicos, los ciclos hamiltonianos y el problema del agente viajero. Se presenta un algoritmo de la ruta más corta que encuentra con eficiencia la trayectoria más corta entre dos puntos dados. Después de exponer las maneras de representar las gráficas, se estudiará el tema de cuándo dos gráficas son en esencia la mis- ma (es decir, cuándo dos gráficas son isomorfas) y cuándo una gráfica se puede dibujar en el plano sin que sus aristas se crucen. Se concluirá con la presentación de una solución ba- sada en un modelo de gráfica para el juego de Locura instantánea.
DE MUERTE DE UN VENDEDOR
La figura 8.1.1 muestra el sistema de carreteras de Wyoming; cierta persona es responsable de inspeccionar este sistema. En particular, el inspector de carreteras debe recorrerlas y entregar in-
† Esta sección se puede omitir sin pérdida de continuidad.
†
formes de las condiciones de los caminos, la visibilidad de las líneas pintadas, el estado de las señales, etcétera. Como el inspector vive en Greybull, la manera más económica de inspec- cionar todos los caminos sería comenzar en Greybull, recorrer cada carretera exactamente una vez y regresar a Greybull. ¿Es esto posible? ¿Puede decidir antes de seguir leyendo? El problema se puede modelar como una gráfica. De hecho, como las gráficas se di- bujan con puntos y líneas, tienen la apariencia de mapas de carreteras. La figura 8.1.2, con- tiene el dibujo de una gráfica G que modela el mapa de la figura 8.1.1. Los puntos se llaman vértices y las líneas que conectan a los vértices se llaman aristas. (Más adelante en esta sec- ción, se definirán todos los términos con cuidado). Cada vértice se etiquetó con las primeras tres letras de la ciudad correspondiente. Las aristas se etiquetaron e 1 ,... , e 13. Cuando se di- buja una gráfica, la única información de importancia es qué vértices se conectan con qué aristas. Por esta razón, la gráfica de la figura 8.1.2 pudo haberse dibujado como la figura 8.1.3.
8.1 ◆ Introducción 319
Muddy Gap
Lander
Shoshoni
Casper
Douglas
Gillette Buffalo
Sheridan
Greybull
Worland
Figura 8.1.1 Parte del sistema de carreteras de Wyoming.
e 1
e 4
e 9
e 2
e 6
e 11 e 12
e 13
Gre
Wor
Sho
Lan
Mud
Cas Dou
Buf Gil
She
e 10
e 5 e 7 e 8
e 3
G
e 9 e 4 e 1
e 6 e 2 e 11
e 12 e 13
Gre Sho Wor
Lan
Mud
Cas
Dou Gil
Buf She
e 10 e 5 e 7
e 8 e 3 G Figura 8.1.2 Modelo de gráficas para el sistema de carreteras de la figura 8.1.1.
Figura 8.1.3 Modelo de gráficas alternativo, pero equivalente, del sistema de carreteras de la figura 8.1.1.
Si se inicia en el vértice v 0 , se viaja por una arista al vértice v 1 , por otra arista al vér- tice v 2 , etcétera, y con el tiempo se llega al vértice v n ; este viaje completo recibe el nombre de trayectoria o ruta de v 0 a vn. La trayectoria que comienza en She , va a Buf y termina en Gil corresponde a un viaje en el mapa de la figura 8.1.1 que comienza en Sheridan, va a Buffalo y termina en Gillette. El problema del inspector de carreteras se enuncia de otra manera para el modelo de gráficas G : ¿Existe una ruta del vértice Gre al vértice Gre que pase una vez por todas las aristas?
el par ordenado de vértices (v 6 , v 6 ). La arista e 1 se denota (v 2 , v 1 ), y la arista e 7 se deno- ta (v 6 , v 6 ).
La definición 8.1.1 permite que diferentes aristas se asocien con el mismo par de vér- tices. Por ejemplo, en la figura 8.1.5, las aristas e 1 y e 2 se asocian ambas con el par de vér- tices {v 1 , v 2 }. Estas aristas se llaman aristas paralelas. Una arista incidente en un mismo vértice se llama lazo. Por ejemplo, en la figura 8.1.5, la arista e 3 = (v 2 , v 2 ) es un lazo. Un vértice como v 4 en la figura 8.1.5, que no incide en ninguna arista, se llama vértice aisla- do. Una gráfica sin lazos ni aristas paralelas se llama gráfica simple.
Como la gráfica de la figura 8.1.2 no tiene aristas paralelas ni lazos, es una gráfica simple.
Algunos autores no permiten lazos o aristas paralelas cuando definen las gráficas. Se esperaría que si no se ha llegado a un acuerdo acerca de la definición de “gráfica”, muchos de los términos en la teoría de gráficas tampoco tendrían definiciones estándar. Sin duda, esto es cierto. Al leer artículos y libros de gráficas, es necesario verificar las definiciones que se emplean. Se dará un ejemplo que muestra cómo se utiliza un modelo de gráficas para analizar un problema de manufactura.
Con frecuencia en la manufactura, es necesario hacer agujeros en hojas de metal (vea la figu- ra 8.1.6). Luego se atornillan las componentes a estas hojas de metal. Los agujeros se perfo- ran usando un taladro controlado por computadora. Para ahorrar tiempo y dinero, el taladro debe moverse tan rápido como sea posible. Se modelará la situación como una gráfica. Los vértices de la gráfica corresponden a los agujeros (figura 8.1.7). Cada par de vér- tices se conecta por una arista. En cada arista se escribe el tiempo para mover el taladro en- tre los hoyos correspondientes. Una gráfica con números en las aristas (como en la figura 8.1.7) se llama gráfica ponderada. Si la arista e se etiqueta k , se dice que el peso de la
8.1 ◆ Introducción 321
Figura 8.1.5 Una gráfica con aristas paralelas y un lazo.
Figura 8.1.6 Hoja de metal con agujeros para tornillos. Figura 8.1.7 Modelo de gráficas de la hoja de metal de la figura 8.1.6. El peso de la arista es el tiempo para mover el taladro.
a
8
6
9 12
4
4
2
(^3 )
6
b
c
e
d
arista e es k. Por ejemplo, en la figura 8.1.7 el peso de la arista ( c, e ) es 5. En una gráfica ponderada, la longitud de una ruta es la suma de los pesos de las aristas en la ruta. Por ejemplo, en la figura 8.1.7 la longitud de la ruta que comienza en a , visita c y termina en b es 8. En este problema, la longitud de una trayectoria que comienza en el vértice v 1 y lue- go visita v 2 , v 3 ,... , en este orden, y termina en v n representa el tiempo que toma al tala- dro comenzar en el agujero h 1 y luego moverse a h 2 , h 3 ,... , en ese orden y terminar en h (^) n , donde el agujero h (^) i corresponde el vértice v i. Una ruta de longitud mínima que visita todos los vértices exactamente una vez representa la ruta óptima que debe seguir el taladro. Suponga que en este problema se requiere que la trayectoria comience en el vértice a y termine en el vértice e. Se puede encontrar la ruta de longitud mínima numerando to- das las rutas posibles de a a e que pasan por todos los vértices justo una vez y eligiendo la menor (vea la tabla 8.1.1). Se ve que la ruta que visita los vértices a , b , c , d , e , en ese or- den, tiene longitud mínima. Por supuesto, un par diferente de vértices de inicio y termina- ción produciría una ruta aún más corta.
Numerar todas las trayectorias de un vértice v a un vértice w , como se hizo en el ejemplo 8.1.5, es una manera bastante tardada para encontrar la trayectoria de longitud mí- nima de v a w que visita todos los vértices una vez. Por desgracia, nadie conoce un méto- do que sea mucho más práctico para gráficas arbitrarias. Este problema es una versión del problema del agente viajero. Se estudiará ese problema en la sección 8.3.
Números de Bacon
El actor Kevin Bacon ha aparecido en numerosas películas que incluyen Diner y Apollo 13. Se dice que los actores que han aparecido en una película con Bacon tienen un uno de nú- mero Bacon. Por ejemplo, Ellen Barkin tiene un uno de número Bacon porque apareció con Bacon en Diner. Los actores que no hicieron una película con Bacon pero que trabajaron con un actor cuyo número Bacon es uno, se dice que tienen dos de número de Bacon. Los números de Bacon más altos se definen de manera similar. Por ejemplo, Bela Lugosi tiene un número de Bacon de tres. Lugosi actuó en Black Friday con Emmett Vogan, quien es- tuvo en With a Song in My Heart con Robert Wagner y Wagner trabajó en Wild Things con Bacon. Se desarrollará un modelo de gráficas para los números de Bacon. Los vértices denotan actores; se coloca una arista entre dos actores diferentes si apa- recieron juntos en al menos una película (vea la figura 8.1.8). En una gráfica no pondera- da, la longitud de una ruta es el número de aristas en ella. Entonces el número de Bacon de un actor es la longitud de la ruta más corta desde el vértice correspondiente a ese actor has- ta el vértice de Bacon. En la sección 8.4 se analiza el problema general de encontrar la ru- ta más corta en una gráfica. A diferencia de la situación del ejemplo 8.1.5, existen algoritmos eficientes para encontrar la ruta más corta. Es interesante que la mayoría de los actores, incluso aquellos que murieron hace años, tienen números de Bacon de tres o menos. La página de Internet de este libro tiene un enlace a una página que verifica los números de Bacon de actores arbitrarios. Vea en el ejercicio 30 un modelo de gráficas similar.
322 Capítulo 8 ◆ Teoría de gráficas
a , b , c , d , e 21 a , b , d , c , e 28 a , c , b , d , e 24 a , c , d , b , e 26 a , d , b , c , e 27 a , d , c , b , e 22
TABLA 8.1.1 ■ Trayectorias en la gráfica de la figura 8.1.7 de a a e que pasan por todos los vértices justo una vez, y sus longitudes.
Trayectoria Longitud
se muestra la gráfica correspondiente a los programas de la tabla 8.1.2 con S = 25. En ella, los programas se agrupan en tres clases: {1, 3, 5}, {2} y {4}. En un problema real, un va- lor adecuado para S podría seleccionarse por prueba y error o el valor de S podría elegirse de manera automática de acuerdo con algunos criterios predeterminados.
La computadora tradicional, con frecuencia llamada computadora serial , ejecuta una instruc- ción a la vez. Nuestra definición de “algoritmo” también supone que se ejecuta una ins- trucción a la vez. Estos algoritmos se llaman algoritmos seriales. Conforme los costos del hardware han disminuido, se ha vuelto factible construir computadoras paralelas con mu- chos procesadores que son capaces de ejecutar varias instrucciones a la vez. Las gráficas con frecuencia son modelos convenientes para describir estas máquinas. Los algoritmos asociados se conocen como algoritmos paralelos. Muchos problemas se resuelven con mayor rapidez usando computadoras paralelas en lugar de seriales. Se analizará un mode- lo de computación paralela conocido como el cubo- n o hipercubo. El cubo- n tiene 2 n^ procesadores, n ≥ 1, que se representan por vértices (figura 8.1.10) etiquetados 0, 1,... , 2 n^ − 1. Cada procesador tiene su propia memoria local. Una arista conecta a dos vértices si la representación binaria de sus etiquetas difiere exactamente en un bit. Durante una unidad de tiempo, todos los procesadores en el cubo- n pueden ejecutar una instrucción simultáneamente y después comunicarse con el procesador adyacente. Si un procesador necesita comunicarse con uno no adyacente, el primer procesador envía un mensaje que incluye la ruta al receptor, y el destino final del mismo. Puede tomar varias unidades de tiempo que un procesador se comunique con otro no adyacente. También es posible describir el cubo- n de manera recursiva. El cubo-1 tiene dos pro- cesadores, etiquetados 0 y 1, y una arista. Sean H 1 y H 2 dos cubos-( n − 1) cuyos vértices se etiquetan en binarios 0,... , 2 n −^1 − 1 (vea la figura 8.1.11). Se coloca una arista entre cada par de vértices, una desde H 1 y otra desde H 2 , siempre que los vértices tengan etique- tas idénticas. Se cambia la etiqueta L en cada vértice de H 1 a 0 L y la etiqueta L en cada vér- tice de H 2 se cambia a 1 L. Se obtiene un cubo- n (ejercicio 39). Vea en los ejercicios 43 a 45 una manera alternativa de construir el cubo- n.
El cubo- n es un modelo importante de computación porque se han construido varias máquinas de este tipo y están trabajando. Todavía más, algunos otros modelos de compu- tación paralela se pueden simular con el hipercubo. Este último punto se considera con más detalle en los ejemplos 8.3.5 y 8.6.3.
Se concluye esta sección de introducción con las definiciones de algunas gráficas es- peciales que aparecen con frecuencia en la teoría de gráficas.
324 Capítulo 8 ◆ Teoría de gráficas
010
000
101
110
001
111
011
100
Figura 8.1.10 El cubo–3.
Figura 8.1.11 Combinación de dos cubos-3 para obtener un cubo-4.
La gráfica completa sobre n vértices , denotada por K (^) n , es la gráfica simple con n vértices en la que hay una arista entre cada par de vértices distintos.
La gráfica completa sobre cuatro vértices, K 4 , se reproduce en la figura 8.1.12.
Una gráfica G = ( V , E ) es bipartita si existen subconjuntos V 1 y V 2 (cualquiera de los dos posiblemente vacío) de V tales que V 1 ∩ V 2 = ∅, V 1 ∪ V 2 = V , y cada arista en E es inci- dente sobre un vértice en V 1 y un vértice en V 2.
La gráfica de la figura 8.1.13 es bipartita ya que si se deja
y
cada arista incide en un vértice en V 1 y en un vértice en V 2.
Observe que la definición 8.1.11 establece que si e es una arista en una gráfica bipar- tita, entonces e incide en un vértice en V 1 y en un vértice en V 2. No establece que si v 1 es un vértice en V 1 y v 2 es un vértice en V 2 , entonces hay una arista entre v 1 y v 2. Por ejemplo, la gráfica de la figura 8.1.13 es bipartita puesto que cada arista incide en un vértice en V 1 = {v 1 , v 2 , v 3 } y un vértices en V 2 = {v 4 , v 5 }. Sin embargo, no todas las aristas entre vér- tices de V 1 y V 2 están en la gráfica. Por ejemplo, la arista (v 1 , v 5 ) no está.
La gráfica de la figura 8.1.14 no es bipartita. A menudo es más fácil probar que una gráfi- ca no es bipartita por contradicción.
Suponga que la gráfica de la figura 8.1.14 es bipartita. Entonces se puede hacer una par- tición del conjunto de vértices en dos subconjuntos V 1 y V 2 tal que cada arista incida en un vér- tice en V 1 y un vértice en V 2. Ahora considere los vértices v 4 , v 5 y v 6. Como v 4 y v 5 son adyacentes, uno está en V 1 y el otro en V 2. Se puede suponer que v 4 está en V 1 y v 5 en V 2. Co- mo v 5 y v 6 son adyacentes y v 5 está en V 2 , v 6 está en V 1. Como v 4 y v 6 son adyacentes y v 4 es- tá en V 1 , v 6 está en V 2. Pero resulta que v 6 está en V 1 y en V 2 , lo cual es una contradicción ya que V 1 y V 2 son ajenos. Por lo tanto, la gráfica de la figura 8.1.14 no es bipartita.
8.1 ◆ Introducción 325
Figura 8.1.12 Gráfica
v 1
v 2
v 3
v (^4)
v (^5)
v 4
v 3
v 5
v 8 v 9
v 6
v 7
v 2
v 1
Figura 8.1.13 Gráfica bipartita.
Figura 8.1.14 Gráfica que no es bipartita.
V 1 = {v 1 , v 2 , v 3 } V 2 = {v 4 , v 5 },
16****. Defina un cubo-n. 17****. ¿Qué es una computadora serial? 18****. ¿Qué es un algoritmo serial? 19****. ¿Qué es una computadora paralela? 20****. ¿Qué es un algoritmo paralelo?
21****. ¿Qué es una gráfica completa sobre n vértices? ¿Cómo se denota? 22****. Defina gráfica bipartita. 23****. ¿Qué es una gráfica bipartita completa sobre m y n vértices? ¿Có- mo se denota?
8.1 ◆ Introducción 327
Ejercicios
En un torneo, el Nieve venció a los Faisanes una vez, el Rascacielos venció al Tuna una vez, el Nieve venció al Rascacielos dos veces, los Faisanes vencieron al Tuna una vez y los Faisanes vencieron al Rasca- cielos una vez. En los ejercicios 1 al 4, use una gráfica para modelar el torneo. Los equipos son los vértices. Describa el tipo de gráfica usa- da (no dirigida, dirigida, simple).
1****. Hay una arista entre los equipos si los equipos jugaron.
2. Hay una arista entre los equipos para cada juego jugado. 3. Hay una arista del equipo ti al equipo t (^) j si ti venció a tj al menos una vez. 4****. Hay una arista del equipo ti al equipo t (^) j por cada victoria de t (^) i so- bre tj.
Explique por qué ninguna gráfica en los ejercicios 5 al 7 tiene una tra- yectoria del vértice a al vértice a que pasa por cada arista justo una vez.
5****.
6.
7.
Pruebe que cada gráfica en los ejercicios 8 al 10 tiene una trayectoria del vértice a al vértice a que pasa por cada arista justo una vez, encon- trando la trayectoria por inspección.
8****.
9.
10.
Para cada gráfica G = ( V, E ) en los ejercicios 11 al 13, encuentre V, E, todas las aristas paralelas, lazos, vértices aislados, y diga si G es una gráfica simple. Además, diga sobre qué vértices incide la arista e 1. 11****.
12.
13.
14****. Dibuje K 3 y K 5.
15. Encuentre una fórmula para el número de aristas en Kn. 16. Dé un ejemplo de una gráfica bipartita diferente de los ejemplos de esta sección. Especifique los conjuntos ajenos de vértices.
e
c
b
a
d
a
d
b
c
a b c
f d
g (^) h i
e
a
b
d
c
e
f
a
d e f
b c
a b c
g
d e f
h i
v 1
e 6
v 2 e 3
v 3
e 1 e 2
e (^4) v 4
e 5
e 2
e 8
e 5
v 1
e 1
e 6
v 2
e 7
v 4
e 3 v 3
v 5
e 4
v 1
v 2 v 3
Determine qué gráficas en los ejercicios 17 al 23 son bipartitas. Si la gráfica es bipartita, especifique los conjuntos ajenos de vértices. 17****.
18.
19. Figura 8.1.2 20****. Figura 8.1. 21. Ejercicio 11 22. Ejercicio 12 23****. Ejercicio 13 24****. Dibuje K 2,3 y K 3,3. 25. Encuentre una fórmula para el número de aristas en Km,n. 26. Muchos autores requieren que V 1 y V 2 sean no vacíos en la defini- ción 8.1.11. Según estos autores, ¿cuáles gráficas en los ejemplos 8.1.12 a 8.1.14 son bipartitas? En los ejercicios 27 al 29, encuentre una trayectoria de longitud míni- ma de v a w en la gráfica de la figura 8.1.7 que pase por cada vértice exactamente una vez. **27****. 28.
30.** Paul Erd´´os (1913−1996) fue uno de los matemáticos más prolífi- cos de todos los tiempos. Fue autor o coautor en cerca de 1500 ar- tículos. Se dice que los matemáticos que trabajaron en un artículo con Erd´´os tienen un número de Erd´´os de uno. Los matemáticos que no son coautores con Erd´´os pero que publicaron con un matemáti- co que tiene número de Erd´´os de uno, tienen un número de Erd´´os de dos. Los números de Erd´´os mayores se definen de manera simi- lar. Por ejemplo, el autor de este libro tiene un número de Erd´´os de cinco. Johnsonbaugh es coautor de un artículo con Tadao Murata, quien es coautor con A. T. Amin; Amin es coautor con Peter J. Sla- ter; Slater es coautor con Frank Harary; y Harary es coautor de un artículo con Erd´´os. Desarrolle un modelo de gráficas para los nú- meros de Erd´´os. En su modelo, ¿qué es un número de Erd´´os? 31. El modelo de gráficas para los números de Bacon (vea el ejemplo 8.1.6), ¿es una gráfica simple? 32****. Dibuje la gráfica de similitud que se obtiene al hacer S = 40 en el ejemplo 8.1.7. ¿Cuántas clases hay? 33. Dibuje la gráfica de similitud que se obtiene al hacer S = 50 en el ejemplo 8.1.7. ¿Cuántas clases hay? 34. En general, ¿“es similar a” es una relación de equivalencia? 35. Sugiera propiedades adicionales para el ejemplo 8.1.7 que resul- ten útiles al comparar programas. 36. ¿Cómo se puede automatizar la selección de S para agrupar datos en clases usando un gráfica de similitud? 37****. Dibuje un cubo-2. 38. Haga un dibujo como el de la figura 8.1.11 para mostrar cómo se construye un cubo-3 a partir de dos cubos-2. 39. Pruebe que la construcción recursiva en el ejemplo 8.1.8 de hecho lleva a un cubo- n. 40****. ¿Cuántas aristas inciden en un vértice en un cubo- n? 41. ¿Cuántas aristas hay en un cubo- n? 42. ¿De cuántas maneras pueden etiquetarse los vértices de un cubo- n como 0,... , 2 n^ − 1, de forma que haya una arista entre dos vér- tices si y sólo si la representación binaria de sus etiquetas difiere exactamente en un bit. [Bain] inventó un algoritmo para dibujar el cubo-n en el plano. En el algoritmo, todos los vértices están en el círculo de unidad en el plano xy. El ángulo de un punto es el ángulo desde el lado positivo del eje x en sentido contrario a las manecillas del reloj hasta el rayo que va del origen al punto. La entrada es n. 1. Si n = 0, se coloca un vértice sin etiqueta en ( − 1, 0) y se de- tiene. 2. Se invoca recursivamente este algoritmo con entrada n − 1. 3. Se mueve cada vértice para que su nuevo ángulo sea la mitad del actual, manteniendo las aristas conectadas. 4. Se refleja cada vértice y arista respecto al eje x. 5. Se conecta cada vértice arriba del eje x con su imagen de es- pejo abajo del eje x. 6. Se antepone 0 a las etiquetas de cada vértice arriba del eje x, y 1 a las etiquetas de los vértices abajo del eje x. Las siguientes figuras muestran la manera en que el algoritmo dibuja un cubo-2 y un cubo-.
43****. Muestre cómo el algoritmo construye el cubo-2 a partir del cubo-1.
44. Muestre cómo el algoritmo construye el cubo-3 a partir del cubo-2. 45. Muestre cómo el algoritmo construye el cubo-4 a partir del cubo-3. Los ejercicios 46 al 48 se refieren a la siguiente gráfica. Los vértices representan oficinas. Una arista conecta dos oficinas si hay un enlace de comunicación entre las dos. Observe que cualquier oficina se puede comunicar con cualquier otra con un enlace de comunicación directo o haciendo que otros pasen el mensaje.
46****. Muestre, dando un ejemplo, que la comunicación entre las ofici- nas es posible aun cuando se rompan algunos enlaces de comuni- cación.
47. ¿Cuál es el número máximo de enlaces de comunicación que se pue- den romper teniendo todavía comunicación entre todas las oficinas? 48. Muestre una configuración en la que se rompió el número máxi- mo de enlaces de comunicación y todavía es posible la comunica- ción entre todas las oficinas.
328 Capítulo 8 ◆ Teoría de gráficas
v 1
e 4
e 2
v 4 e 5 v 5
v 3
v 2
e 1
e 3
v = b , w = e v = a , w = b
v = c , w = d
00 011 001
111 101
000
110 100
010
01
11 10
★
En la gráfica de la figura 8.2.1, la trayectoria (6) que consiste sólo en el vértice 6 es una trayectoria de longitud 0 del vértice 6 al vértice 6.
En ausencia de aristas paralelas, al denotar una trayectoria se pueden suprimir las aristas. Por ejemplo, la trayectoria (8.2.1) también se puede escribir
(1, 2, 3, 4, 2).
Una gráfica conexa es una gráfica en la que se puede ir de cualquier vértice a cual- quier otro vértice por una trayectoria. A continuación se da la definición formal.
Una gráfica G es conexa si dados cualesquiera dos vértices v y w en G , existe una trayec- toria de v a w.
La gráfica G de la figura 8.2.1 es conexa ya que, dados cualesquiera dos vértices v y w en G , existe una trayectoria de v a w.
La gráfica G de la figura 8.2.2 no es conexa ya que, por ejemplo, no hay trayectoria del vér- tice v 2 al vértice v 5.
Sea G una gráfica cuyo conjunto de vértices consiste en los 50 estados de Estados Unidos. Coloque una arista entre los estados v y w con una frontera común. Por ejemplo, hay una arista entre California y Oregon y entre Illinois y Missouri. No hay arista entre Georgia y Nueva York, como tampoco entre Utah y Nuevo México. (No cuenta si se tocan; los esta- dos debe tener una frontera común). La gráfica G no es conexa porque no hay trayectoria de Hawaii a California (o de Hawaii a cualquier otro estado).
Como se ve a partir de las figuras 8.2.1 y 8.2.2, una gráfica conexa es de una “pie- za”, mientras que una gráfica no conexa consiste en varias “piezas”. Estas “piezas” son subgráficas de la gráfica original y se llaman componentes. Se darán las definiciones for- males comenzando con la de subgráfica. Una subgráfica G ′^ de una gráfica G se obtiene seleccionando ciertas aristas y vérti- ces de G sujetas a la restricción de que si se selecciona una arista e en G que incide en los vértices v y w , deben incluirse v y w en G ′. La restricción asegura que G ′^ sea de hecho una gráfica. La siguiente es la definición formal.
Sea G = ( V , E ) una gráfica. ( V ′, E ′) es una subgráfica de G si
a) V ′^ ⊆ V y E ′^ ⊆ E.
b) Para toda arista e ′^ ∈ E ′, si e ′^ incide en v′^ y w ′, entonces v′, w ′^ ∈ V ′.
La gráfica G ′^ = ( V ′, E ′) de la figura 8.2.3 es una subgráfica de la gráfica G = ( V , E ) de la figura 8.2.4 puesto que V ′^ ⊆ V y E ′^ ⊆ E.
330 Capítulo 8 ◆ Teoría de gráficas
v 1
e 1
G
e 3 v 3
v 2
e 2
v 4
v 5
e 4
v 6
Figura 8.2.2 Gráfica no conexa.
Encuentre todas las subgráficas de la gráfica G de la figura 8.2.5 que tengan al menos un vértice. Si no se seleccionan aristas, se puede seleccionar uno o los dos vértices, lo que lleva a las subgráficas G 1 , G 2 y G 3 mostradas en la figura 8.2.6. Si se selecciona la única arista disponible e 1 , deben seleccionarse los dos vértices en los que e 1 es incidente. En este caso, se obtiene la subgráfica G 4 de la figura 8.2.6. Entonces G tiene las cuatro subgráficas mos- tradas en la figura 8.2.6.
Ahora se definirá “componente”.
Sea G una gráfica y sea v un vértice en G. La subgráfica G ′^ de G que consiste en todas las aristas y vértices de G que están contenidos en alguna trayectoria que comienza en v se lla- ma componente de G que contiene a v.
La gráfica G de la figura 8.2.1 tiene una componente, a saber, ella misma. Sin duda, una gráfica es conexa si y sólo si tiene exactamente una componente.
Sea G la gráfica de la figura 8.2.2. La componente de G que contiene a v 3 es la subgráfica
La componente de G que contiene a v 4 es la subgráfica
La componente de G que contiene a v 5 es la subgráfica
Otra caracterización de las componentes de una gráfica G = ( V , E ) se obtiene al de- finir una relación R en el conjunto de vértices V mediante la regla
v 1 R v 2 si hay una trayectoria de v 1 a v 2.
Es posible demostrar (ejercicio 68) que R es una relación de equivalencia en V y que si v ∈ V , el conjunto de vértices en la componente que contiene a v es la clase de equivalencia
8.2 ◆ Trayectorias y ciclos 331
G′ e 8
v 2
v 3 v 4 v 6 e 5 v 7
v 1
e 10 e 11
e 1 e 9 e (^10) e 11
e 4 e 8 e 5
e 7
e 6
v 1
v 3 v 4 v 6 v 7
v 8
e 3
v 2 e 2
v 5
G
Figura 8.2.3 Una subgráfica de la gráfica de la figura 8.2.4.
Figura 8.2.4 Gráfica, una de cuyas subgráficas aparece en la figura 8.2.3.
v 2
v 1 G
e 1 G 1
v 1 e 1 v 1 v 1
v 2 v 2 v 2
G 2 G 3 G 4
Figura 8.2.5 Gráfica para el ejemplo 8.2.10.
Figura 8.2.6 Las cuatro subgráficas de la gráfica de la figura 8.2.5.
G 1 = ( V 1 , E 1 ), V 1 = {v 1 , v 2 , v 3 }, E 1 = { e 1 , e 2 , e 3 }.
G 2 = ( V 2 , E 2 ), V 2 = {v 4 }, E 2 = ∅.
G 3 = ( V 3 , E 3 ), V 3 = {v 5 , v 6 }, E 3 = { e 4 }.
[v] = { w ∈ V | w R v}.
La solución a la existencia de ciclos de Euler se establece mejor con la introducción del grado de un vértice. El grado de un vértice v, δ(v), es el número de aristas que inciden en v. (Por definición, cada ciclo sobre v contribuye con 2 al grado de v). En la sección 8. se encontró que si una gráfica G tiene un ciclo de Euler, entonces todo vértice en G tiene grado par. También es posible probar que G es conexa.
Si una gráfica G tiene un ciclo de Euler, entonces G es conexa y todo vértice tiene gra- do par. Demostración Suponga que G tiene un ciclo de Euler. Se argumentó en la sección 8. que todo vértice en G tiene grado par. Si v y w son vértices en G , la porción del ciclo de Euler que lleva de v a w sirve como trayectoria de v a w. Por lo tanto, G es conexa.
El inverso del Teorema 8.2.17 también es cierto. Se da una prueba por inducción ma- temática que ideó [Fowler].
Si G es una gráfica conexa y cada vértice tiene grado par, entonces G tiene un ciclo de Euler.
Demostración La prueba se hace por inducción sobre el número n de aristas en G.
Como G es conexa, si G no tiene aristas, G consiste en un solo vértice. Un ciclo de Eu- ler consiste en un solo vértice, sin aristas.
Suponga que G tiene n aristas, n > 0, y que cualquier gráfica conexa con k aristas, k < n , donde todos los vértices tienen grado par tiene un ciclo de Euler. Es directo verificar que una gráfica conexa con uno o dos vértices, cada uno con grado par, tiene un ciclo de Euler (vea el ejercicio 69); entonces, se supone que la grá- fica tiene al menos tres vértices. Como G es conexa, hay vértices v 1 , v 2 y v 3 en G con la arista e 1 incidente en v 1 y v 2 y la arista e 2 que incide en v 2 y v 3. Se eliminan las aristas e 1 y e 2 pero no los vértices, y se agrega la arista e incidente en v 1 y v 3 para obtener la gráfica G ′^ [vea la figura 8.2.9 a) ]. Observe que cada componente de la gráfica G ′^ tiene menos de n aristas y que en cada componente de la gráfica G ′, todos los vértices tienen grado par. Se demostrará que G ′^ tiene ya sea una o dos componentes. Sea v un vértice. Como G es conexa, existe una trayectoria P en G de v a v 1. Sea P ′^ una porción de la trayectoria P que comienza en v cuyas aristas también están en G ′. Ahora bien, P ′^ termina en v 1 , v 2 o v 3 porque la única manera de que P no sea una tra- yectoria en G ′^ es que P contenga una de las aristas eliminadas e 1 o e 2. Si P ′^ termina en v 1 , entonces v está en la misma componente que v 1 en G ′. Si P ′^ termina en v 3 [vea figu- ra 8.2.9 b) ], entonces v está en la misma componente que v 3 en G ′, que está en la misma componente que v 1 en G ′^ (ya que la arista e en G ′^ incide en v 1 y v 3 ). Si P ′^ termina en v 2 , entonces v 2 está en la misma componente que v. Por lo tanto, cualquier vértice en G ′^ es- tá en la misma componente que v 1 o que v 2. Entonces, G ′^ tiene una o dos componentes. Si G ′^ tiene una componente, es decir, si G ′^ es conexa, se aplica la hipótesis induc- tiva para concluir que G ′^ tiene un ciclo de Euler C ′. Este ciclo de Euler se puede modi- ficar para producir un ciclo de Euler en G. Simplemente se sustituye la ocurrencia de la arista e en C ′^ por las aristas e 1 y e 2. Suponga que G ′^ tiene dos componentes [vea la figura 8.2.9 c) ]. Por la hipótesis in- ductiva, la componente que contiene a v 1 tiene un ciclo de Euler C ′^ y la componente que contiene a v 2 tiene un ciclo de Euler C” que comienza y termina en v 2. Un ciclo de Eu- ler en G se obtiene al modificar C ′^ sustituyendo (v 1 , v 3 ) en C ′^ por (v 1 , v 2 ) seguido de C” seguido de (v 2 , v 3 ) o sustituyendo (v 3 , v 1 ) en C ′^ por (v 3 , v 2 ) seguido de C” seguido de (v 2 , v 1 ). El paso inductivo queda completo. G es un ciclo de Euler.
8.2 ◆ Trayectorias y ciclos 333
Si G es una gráfica conexa y todo vértice tiene grado par y G tiene sólo unas cuan- tas aristas, casi siempre se encuentra un ciclo de Euler por inspección.
Sea G la gráfica de la figura 8.2.10. Use el Teorema 8.2.18 para verificar que G tiene un ci- clo de Euler. Encuentre un ciclo de Euler para G. Se observa que G es conexa y que
Como el grado de cada vértice es par, por el Teorema 8.2.18, G tiene un ciclo de Euler. Por inspección, se encuentra el ciclo de Euler
Una ficha de dominó es un rectángulo dividido en dos cuadrados, cada uno con un núme- ro comprendido entre el 0 y el 6 (vea la figura 8.2.11). Los dos cuadrados en una misma fi- cha pueden tener el mismo número. Se demuestra que las diferentes fichas se pueden arreglar en un círculo de manera que las fichas que se tocan tengan cuadrados adyacentes con números idénticos.
Se modela la situación como una gráfica G con siete vértices etiquetados 0,1,... , 6. Las aristas representan las fichas. Hay una arista entre cada par de vértices y hay un ciclo en cada vértice. Note que G es conexa. Ahora las fichas se pueden arreglar en un círculo de manera que las que se tocan tengan cuadrados adyacentes con números idénticos si y sólo
334 Capítulo 8 ◆ Teoría de gráficas
v (^1) e 1 v (^2) e 2 v 3
e
a )
P
P′
v
v 1 v 3 v 2
e 1 e 2
e
C′
C′′
v 1 e 1 e (^2) v v (^23)
b ) c )
e
Figura 8.2.9 La prueba del Teorema 8.2.18. En a) , se eliminan las aristas e 1 y e 2 y se agrega la arista e. En b) , P (discontinua clara) es una trayectoria en G de v a v 1 , y P ′^ (discontinua gruesa) es la porción de P que inicia en v cuyas aristas también están en G ′. Como se muestra, P ′^ termina en v 3. Como la arista e está en G , hay una trayectoria en G ′^ de v a v 1. Entonces v y v 1 están en la misma componente. En c) , C ′^ es un ciclo de Euler para una componente, y C ′′^ es un ciclo de Euler para la otra componente. Si se sustituye e en C ′^ por e 1 , C ′′, e 2 , se obtiene un ciclo de Euler para G.
δ(v 1 ) = δ(v 2 ) = δ(v 3 ) = δ(v 5 ) = 4, δ(v 4 ) = 6, δ(v 6 ) = δ(v 7 ) = 2.
(v 6 , v 4 , v 7 , v 5 , v 1 , v 3 , v 4 , v 1 , v 2 , v 5 , v 4 , v 2 , v 3 , v 6 ).
v 1
v 2
v 3 v 4
v 6
v 5
v 7
Figura 8.2.11 Dominó. [ Foto del autor ].
Figura 8.2.10 Gráfica para el ejemplo 8.2.19.
Si una gráfica G contiene un ciclo de v a v , G contiene un ciclo simple de v a v.
Demostración Sea
un ciclo de v a v donde v = v 0 = v n (figura 8.2.12). Si C no es un ciclo simple, enton- ces v i = v j , para alguna i < j < n. Se puede sustituir C por el ciclo
Si C ′^ no es un ciclo simple de v a v, se repite el procedimiento anterior. En algún mo- mento se obtiene un ciclo simple de v a v.
336 Capítulo 8 ◆ Teoría de gráficas
v 0 = v n = v
e 1
v 1
e n
e j + 1 v j + 1
e i
e j
v i = v j e i + 1
Figura 8.2.12 Ciclo que, o bien es simple, o se puede reducir a un ciclo simple.
1****. ¿Qué es una trayectoria? 2****. ¿Qué es una trayectoria simple? 3****. Dé un ejemplo de una trayectoria que no sea simple. 4****. ¿Qué es un ciclo? 5****. ¿Qué es un ciclo simple? 6****. Dé un ejemplo de un ciclo que no sea simple. 7****. Defina gráfica conexa. 8****. Dé un ejemplo de una gráfica conexa. 9****. Dé un ejemplo de una gráfica no conexa.
10****. ¿Qué es una subgráfica?
11****. Dé un ejemplo de una subgráfica.
12****. ¿Qué es una componente de una gráfica?
13****. Dé un ejemplo de una componente de una gráfica.
14****. Si una gráfica es conexa, ¿cuántas componentes debe tener?
15****. Defina grado de un vértice v.
16****. ¿Qué es un ciclo de Euler? 17****. Establezca una condición necesaria y suficiente para que una grá- fica tenga un ciclo de Euler. 18****. Dé un ejemplo de una gráfica que tenga un ciclo de Euler. Especi- fique el ciclo de Euler. 19****. Dé un ejemplo de una gráfica que no tenga un ciclo de Euler. Prue- be que no tiene un ciclo de Euler. 20****. ¿Cuál es la relación entre la suma de los grados de los vértices en una gráfica y el número de aristas en la gráfica? 21****. En una gráfica, ¿debe ser par el número de vértices de grado im- par? 22****. Establezca una condición necesaria y suficiente para que una grá- fica tenga una trayectoria sin aristas repetidas de v a w (v w ) que contenga todas las aristas y vértices. 23****. Si una gráfica G contiene un ciclo de v a v, ¿debe G contener un ciclo simple de v a v?
Sección de ejercicios de repaso
Ejercicios
En los ejercicios 1 al 9, diga si la trayectoria indicada en la gráfica es
a) una trayectoria simple, b) un ciclo, c) un ciclo simple.
a
d
b
e
c
1****. 2.
3. **4****.
En los ejercicios 10 al 18, dibuje una gráfica que tenga las propieda- des indicadas o explique por qué no existe esa gráfica.
10****. Seis vértices cada uno de grado 3
11. Cinco vértices cada uno de grado 3 12. Cuatro vértices cada uno de grado 1
13****. Seis vértices; cuatro aristas
14. Cuatro aristas; cuatro vértices de grados 1, 2, 3, 4 15. Cuatro vértices con grados 1, 2, 3, 4
16****. Gráfica simple; seis vértices con grados 1, 2, 3, 4, 5, 5
17. Gráfica simple; cinco vértices con grados 2, 3, 3, 4, 4 18. Gráfica simple; cinco vértices con grados 2, 2, 4, 4, 4
19****. Encuentre todas las trayectorias simples en la siguiente gráfica
20. Encuentre todas las trayectorias simples de a a e en la gráfica del ejercicio 19. 21. Encuentre todas las subgráficas conexas de la siguiente gráfica, que contengan todos los vértices de la gráfica original y tengan tan pocas aristas como sea posible. ¿Cuáles son trayectorias simples? ¿Cuáles son ciclos? ¿Cuáles son ciclos simples?
Encuentre el grado de cada vértice para las siguientes gráficas.
22****.
23.
En los ejercicios 24 al 27, encuentre todas las subgráficas que tienen al menos un vértice de la gráfica dada. 24****. 25.
26. 27****.
En los ejercicios 28 al 33, decida si las gráficas tienen un ciclo de Eu- ler. Si lo tienen, muestre uno. 28****. Ejercicio 21 29. Ejercicio 22
30. Ejercicio 23 31****. Figura 8.2. 32.
33.
34****. La siguiente gráfica se continúa hasta una profundidad finita, ar- bitraria. ¿Contiene la gráfica un ciclo de Euler? Si la respuesta es afirmativa, describa uno.
35. Una gráfica completa Kn , ¿cuándo contiene un ciclo de Euler? 36. Una gráfica bipartita Km,n , ¿cuándo contiene un ciclo de Euler? 37****. ¿Para qué valores de m y n una gráfica contiene un ciclo de Euler?
8.2 ◆ Trayectorias y ciclos 337
a
b (^) e
c
g
d
f
v 1
v 4
v 2
v 3
v 5
v 3
v 1
v 2
v 6 v 9
v 7
v 4
v 5 v 8 v 10
e 1 v 1 v 2 v 1
e 1 v 2 e 2
v 1 e 1 e 2
v 2 v 3
v 1
v 2 v 3
a g
b (^) d f
h i j
c e
b e f j
c g h k
a
d i
m vertices
n vertices
a
b (^) e
c
g
d
f
( b , b ) ( a , d , c , d , e ) ( b , c , d , a , b , e , d , c , b ) ( a , d , c , b , e ) ( d , c , b )
( e , d , c , b ) ( d , c , b , e , d ) ( b , c , d , e , b , b ) ( d )
★
m vértices
n vértices