Clases de grafos y problemas de optimización combinatoria

170
Clases de grafos y problemas de optimizaci´on combinatoria Flavia Bonomo DC, FCEyN, Universidad de Buenos Aires, Argentina UMA 2016, Bah´ ıa Blanca Flavia Bonomo Grafos y optimizaci´on combinatoria UMA 2016 1 / 170

Transcript of Clases de grafos y problemas de optimización combinatoria

Page 1: Clases de grafos y problemas de optimización combinatoria

Clases de grafos y problemas de optimizacioncombinatoria

Flavia Bonomo

DC, FCEyN, Universidad de Buenos Aires, Argentina

UMA 2016, Bahıa Blanca

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 1 / 170

Page 2: Clases de grafos y problemas de optimización combinatoria

Esquema del curso: problemas algorıtmicos

Clique maxima

Conjunto independientemaximo

Coloreo

Cubrimiento por cliquesmınimo

Conjunto dominantemınimo

(Todos NP-completos engeneral.)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 2 / 170

Page 3: Clases de grafos y problemas de optimización combinatoria

Esquema del curso: clases de grafos y conceptos

árboles

block

cordales

intervalos

cografos

decomposición modular

arco-circulares

circulares

permutación

perfectos

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 3 / 170

Page 4: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Definiciones basicas

Un grafo G esta formado por un par (V (G ),E (G )):

V (G ) es un conjunto finito, el conjunto de vertices de G , yE (G ) es un conjunto de pares no ordenados de vertices distintos de G ,llamados aristas, que se notan por ij o (i , j).

Notacion:

n = nG = |V (G )| y m = mG = |E (G )|;VG = V (G ), EG = E (G ).

Un grafo se dice trivial si tiene un solo vertice.

12 3

4

5

6

7

V (G ) = {1, 2, 3, 4, 5, 6, 7}

E (G ) = {(1, 2), (2, 4), (2, 7), (3, 5),(3, 6), (4, 5), (4, 6), (4, 7), (5, 6), (6, 7)}

n = 7;m = 10.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 4 / 170

Page 5: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Definiciones basicas

Decimos que G es un digrafo, o un grafo dirigido, si las aristas estandadas por un conjunto de pares ordenados de vertices.

12 3

4

5

6

7

V (G ) = {1, 2, 3, 4, 5, 6, 7}

E (G ) = {(2, 1), (4, 2), (2, 7), (3, 5),(5, 3), (3, 6), (6, 3), (4, 5), (4, 6), (7, 4),(6, 5), (6, 7)}

n = 7;m = 12.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 5 / 170

Page 6: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Definiciones basicas

Decimos que G es un multigrafo si se permite que entre un mismopar de vertices se trace mas de una arista, y un pseudografo si sepermiten aristas de tipo (v , v) (loops).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 6 / 170

Page 7: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Vecindarios

Un vertice v es adyacente a otro vertice w en G si (v ,w) ∈ E (G ).Decimos que v y w son los extremos de la arista.

El vecindario de un vertice v en un grafo G es el conjunto NG (v) queconsiste de todos los vertices adyacentes a v . El vecindario cerrado dev es NG [v ] = NG (v) ∪ {v}.Notacion: si queda claro por contexto, se usa N(v) y N[v ].

12 3

4

5

6

7

N(3)

N[1]

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 7 / 170

Page 8: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

El grado de un vertice v en G es la cardinalidad del conjunto NG (v) yse nota dG (v). Si no hay ambiguedad, se usa d(v).

Dado un grafo G , notamos δ(G ) al grado mınimo y ∆(G ) al gradomaximo entre los vertices de G .

12 3

4

5

6

7

d(2) = 3

δ(G ) = 1

∆(G ) = 4

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 8 / 170

Page 9: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

Un vertice v es aislado cuando N(v) = ∅, o equivalentemented(v) = 0.

Un vertice v es universal cuando N(v) = V (G )− {v}, oequivalentemente d(v) = n − 1.

12 3

4

5

6

7G

El vertice 1 es aislado en G .

El vertice 4 es universal en G − {1}.

Si G es no trivial y tiene un verticeaislado no puede tener tambien unouniversal.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 9 / 170

Page 10: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

Ejercicio: Probar que en todo grupo de dos o mas personas hay por lomenos dos de ellas que tienen la misma cantidad de amigos en el grupo.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 10 / 170

Page 11: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

Un grafo se dice regular si todos sus vertices tienen el mismo grado.

Un grafo se dice cubico si todos sus vertices tienen grado tres.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 11 / 170

Page 12: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

Teorema∑v∈V (G) d(v) = 2m.

Demo: Por induccion en mG . Si mG = 0, entonces dG (v) = 0 para todov ∈ V (G ), y por lo tanto 0 =

∑v∈V (G) d(v) = 2m. Supongamos mG > 0, y

consideremos G ′ obtenido a partir de G sacando una arista cualquiera (i , j).Entonces:

mG ′ = mG − 1

dG ′ (i) = dG (i)− 1 y dG ′ (j) = dG (j)− 1

dG ′ (v) = dG (v) si v 6= i , j

i

j

Por hipotesis inductiva,∑

v∈V (G ′) dG ′(v) = 2mG ′ . Luego

dG ′(i) + dG ′(j) +∑

v∈V (G ′),v 6=i,j dG ′(v) = 2mG ′ . Reemplazando,

dG (i)− 1 + dG (j)− 1 +∑

v∈V (G),v 6=i,j dG (v) = 2(mG − 1). Es decir,

(∑

v∈V (G) d(v))− 2 = 2mG − 2 y por lo tanto∑

v∈V (G) d(v) = 2mG . 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 12 / 170

Page 13: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Grado

Corolario

Todo grafo cubico tiene un numero par de vertices.

Demo: 2m =∑

v∈V (G) d(v) = 3n. Luego 2 | n. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 13 / 170

Page 14: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Complemento

El complemento de un grafo G , denotado por G , es el grafo que tieneel mismo conjunto de vertices de G y tal que dos vertices distintosson adyacentes en G si y solo si no son adyacentes en G .

12 3

4

5

6

7

12 3

4

5

6

7

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 14 / 170

Page 15: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Subgrafos

Un grafo H es un subgrafo de un grafo G si V (H) ⊆ V (G ) yE (H) ⊆ E (G ).

Si V (H) = V (G ), decimos que H es un subgrafo generador de G .

Dado un conjunto de vertices X ⊆ V (G ), el subgrafo de G inducidopor X es el subgrafo H de G tal que V (H) = X y E (H) es elconjunto de aristas de G que tiene ambos extremos en X .

Notacion: Si v ∈ V (G ), G − v denota el subgrafo de G inducido porV (G )− {v}.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 15 / 170

Page 16: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Definiciones

Isomorfismo

Dos grafos G y H son isomorfos si existe una biyeccion entre V (G ) yV (H) que conserva las adyacencias. En este caso, notamos G = H.

Mas formalmente, G y H son isomorfos si existe f : V (G )→ V (H)biyectiva tal que (v ,w) ∈ E (G ) si y solo si (f (v), f (w)) ∈ E (H).

El isomorfismo es una relacion de equivalencia.

12 3

4

5

6

7 G

1

2

3

4

5

6

7

H

f (1) = 7f (2) = 5f (3) = 3f (4) = 6f (5) = 4f (6) = 2f (7) = 1

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 16 / 170

Page 17: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Familias de grafos

Grafos completos

Un grafo G es completo si cualquier par de vertices distintos de G sonadyacentes. Llamamos Kn al grafo completo con n vertices.

K3 se llama tambien triangulo.

¿Cuanto valen mKn , δ(Kn) y ∆(Kn)?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 17 / 170

Page 18: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Familias de grafos

Caminos

Un camino en un grafo G es una secuencia de vertices distintosP = v1, v2, . . . , vk , donde (vi , vi+1) ∈ E (G ), i = 1, . . . , k − 1.

Una cuerda en P es una arista que une dos vertices no consecutivosde P.

Un camino inducido es un camino sin cuerdas. Denotamos por Pk alcamino inducido de k vertices.

¿Cuanto valen mPk, δ(Pk) y ∆(Pk)?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 18 / 170

Page 19: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Familias de grafos

Circuitos y ciclos

Un circuito en un grafo G es una secuencia de verticesC = v1, v2, . . . , vk , no necesariamente distintos, donde v1 = vk y(vi , vi+1) ∈ E (G ), i = 1, . . . , k − 1.

Si k ≥ 3 y v1, . . . , vk−1 son distintos, C se llama ciclo.

Una cuerda en C es cualquier cuerda del camino v1, v2, . . . , vkexcepto (v1, vk).

Un ciclo es un ciclo inducido si no posee cuerdas. Llamamos Ck alciclo inducido de k vertices.

¿Cuanto valen mCk, δ(Ck) y ∆(Ck)?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 19 / 170

Page 20: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Familias de grafos

Grafos bipartitos completos

Un grafo G es bipartito si V (G ) = V1 ∪ V2, con V1 y V2 disjuntos, ytoda arista tiene un extremo en V1 y otro en V2.

Un grafo G es bipartito completo si ademas todo vertice de V1 esadyacente a todo vertice de V2. Llamamos Kr ,s al grafo bipartitocompleto tal que |V1| = r y |V2| = s.

¿Cuanto valen nKr,s , mKr,s , δ(Kr ,s) y ∆(Kr ,s)?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 20 / 170

Page 21: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Familias de grafos

Teorema

Si un grafo tiene 6 o mas vertices, entonces el grafo o su complementotienen un triangulo.

Demo: Sea v ∈ V (G ). Como dG (v) + dG (v) = n − 1 ≥ 5, podemos asumir s.p.g.que dG (v) ≥ 3.

v

Si hay dos vertices adyacentes w y z en NG (v), entonces v ,w , z forman un

triangulo. Si no hay dos vertices adyacentes en NG (v), entonces NG (v) induce un

subgrafo completo en G , y como |NG (v)| ≥ 3, G contiene un triangulo. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 21 / 170

Page 22: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Un grafo G es conexo si para todo par de vertices distintos v y w deG existe un camino de v a w .

¿Cuales de los siguientes grafos son conexos?

12 3

4

5

6

7

1

2

3 4

5

6

7

1

2

3

4

56

7

1

2

3

4

5

6

7

8

1 2 3 4

56

78

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 22 / 170

Page 23: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Un conjunto S es maximal (minimal) en relacion a una determinadapropiedad P si S satisface P, y todo conjunto S ′ que contienepropiamente a S (que esta contenido propiamente en S) no satisfaceP.

Una componente conexa de un grafo es un subgrafo conexo maximal.

¿Cuales son las componentes conexas de estos grafos?

12 3

4

5

6

7

1

2

3 4

5

6

7

1

2

3

4

56

7

1

2

3

4

5

6

7

8

1 2 3 4

56

78

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 23 / 170

Page 24: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Observaciones

1. Todo vertice de un grafo pertenece a alguna componente conexa.

2. Un grafo es conexo si y solo si tiene una sola componente conexa.

3. Dos componentes conexas distintas de un grafo son disjuntas.

Demo de 3.: Supongamos que v ∈ G1 ∩ G2. Entonces para todo par de verticesw , z de G1 ∪ G2 existe un camino de w a v y un camino de v a z (de longitudcero si alguno es v).

vw z vw z

De la union de esos dos caminos se puede extraer un camino simple de w a z . Porlo tanto G1 ∪ G2 es un subgrafo conexo, pero como G1 y G2 eran maximales,resulta G1 = G2 = G1 ∪ G2. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 24 / 170

Page 25: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Distancia

La longitud de un camino se mide por la cantidad de aristas que locomponen.

La distancia entre dos vertices v y w en G es la longitud del caminomas corto entre v y w y se nota dG (v ,w). Si el contexto no esambiguo, se abrevia d(v ,w).

¿Cual es la distancia entre 1 y 5?

El disco Dk(v) de centro v y radio k (k ≥ 0) es el conjunto devertices de G que estan a distancia menor o igual que k de v .

¿Cuales son los discos con centro 1 en este grafo?

12 3

4

5

6

7

12 3

4

5

6

7

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 25 / 170

Page 26: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Grafos bipartitos

Un grafo G es bipartito si V (G ) = V1 ∪ V2, con V1 y V2 disjuntos, ytoda arista tiene un extremo en V1 y otro en V2.

¿Cuales de los siguientes grafos son bipartitos?

12 3

4

5

6

7

1

2

3 4

5

6

7

1

2

3

4

56

7

1

2

3

4

5

6

7

8

1 2 3 4

56

78

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 26 / 170

Page 27: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Teorema

Un grafo G es bipartito ⇔ todos sus circuitos son pares.

Demo:⇒) Sabemos que V (G ) = V1 ∪ V2 y toda arista va de V1 a V2. Sea v1, v2, . . . , vnun circuito en G . Si v1 ∈ V1 entonces los vertices de subındice par tienen quepertenecer a V2 y los de subındice impar a V1. Como vn es adyacente a v1, ntiene que ser par.

⇐) Sea v en V (G ). Definimos V1 y V2 como los vertices que estan a distancia

impar o par de v , respectivamente. Supongamos que no es una biparticion, o sea,

existen z y w que estan a ambos a distancia par o impar de v y son adyacentes.

Como la diferencia entre las distancias es a lo sumo 1, entonces estan a la misma

distancia. Sea v ′ el primer vertice en comun entre los caminos mınimos de w a v

y de z a v . La longitud de los sub-caminos de w a v ′ y de z a v ′ tiene que ser la

misma. Entonces esos sub-caminos y la arista wz forman un ciclo impar. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 27 / 170

Page 28: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Un punto de corte de un grafo G es un vertice v tal que G − v tienemas componentes conexas que G .

¿Que vertices son puntos de corte en estos grafos?

Un grafo es biconexo si es conexo y sin puntos de corte.

¿Cuales de estos grafos son biconexos?

12 3

4

5

6

7

1

2

3 4

5

6

7

1

2

3

4

56

7

1

2

3

4

5

6

7

8

1 2 3 4

56

78

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 28 / 170

Page 29: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Un bloque o componente biconexa de un grafo es un subgrafobiconexo maximal.

¿Cuales son los bloques en estos grafos?

12 3

4

5

6

7

1

2

3 4

5

6

7

1

2

3

4

56

7

1

2

3

4

5

6

7

8

1 2 3 4

56

78

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 29 / 170

Page 30: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Observaciones

1. Un grafo es biconexo si y solo si tiene un solo bloque.

2. Dos bloques de un grafo comparten a lo sumo un vertice. Enparticular, cada arista pertenece a un unico bloque.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 30 / 170

Page 31: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Teorema

Sea G conexo y sea v un vertice de G . Son equivalentes:

1. El vertice v es un punto de corte de G .

2. Existen vertices u y w distintos de v tales que v esta en todo camino entreu y w .

3. Existe una particion de V − v en U y W tal que para todo u en U y paratodo w en W , el punto v esta en todo camino entre u y w .

Demo: 1⇒ 3) Si v es punto de corte ⇒ G − v es disconexo. Sea U unacomponente conexa de G − v y W los vertices restantes. Sean u ∈ U y w ∈W ;como estan en componentes conexas distintas de G − v , todo camino en G entreellos contiene a v .3⇒ 2) Tomamos u en U y w en W .

2⇒ 1) Si v esta en todo camino de u a w , entonces no existe un camino entre u

y w en G − v . Por lo tanto G − v no es conexo, y v es punto de corte de G . 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 31 / 170

Page 32: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Conexion

Un puente de un grafo G es una arista e tal que G − e tiene mascomponentes conexas que G .

Sea G conexo, v un punto de corte y e un puente. ¿Puede ser queG − v tenga mas de dos componentes conexas? ¿Y G − e?

¿Existe algun grafo biconexo que tenga un puente?

Rta: Solo el grafo formado por una unica arista. Si e = vw es unpuente en G , entonces las componentes conexas de G − e son G1 yG2, donde v ∈ G1 y w ∈ G2. Notemos que v es punto de corte en Gsalvo que G1 = {v} y w es punto de corte en G salvo que G2 = {w}.Entonces, si G es biconexo, V (G ) = {v ,w} y E (G ) = {e}. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 32 / 170

Page 33: Clases de grafos y problemas de optimización combinatoria

Definiciones basicas Conexion

Teorema

Sea G conexo y sea e = ij una arista de G . Son equivalentes:

1. La arista e es un puente de G .

2. La arista e no esta en ningun ciclo de G .

3. Existen vertices u y v tales que e esta en todo camino entre u y v .

Demo: 1⇒ 2) Si e esta en un ciclo C , entonces C − e es un camino P entre i yj . En cualquier camino entre dos vertices u y v , la arista e podrıa ser reemplazadapor el camino P. Luego e no es puente.2⇒ 3) Sean i y j los extremos de e. Si para todo par de vertices u, v existe uncamino que los une y no pasa por e, en particular existe un camino P entre i y jque no usa e. Pero entonces P ∪ e es un ciclo.

3⇒ 1) Si e esta en todo camino de u a v , entonces no existe un camino entre u

y v en G − e. Por lo tanto G − e no es conexo, y e es un puente de G . 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 33 / 170

Page 34: Clases de grafos y problemas de optimización combinatoria

Arboles Definiciones

Arboles

Un arbol es un grafo conexo y acıclico (sin ciclos).

Un bosque es un grafo acıclico, o sea, una union disjunta de arboles.

Una hoja en un grafo es un vertice de grado 1.

Un arbol generador de un grafo G es un subgrafo generador de G quees un arbol.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 34 / 170

Page 35: Clases de grafos y problemas de optimización combinatoria

Arboles Definiciones

Arboles dirigidos

Un arbol dirigido es un arbol con un vertice distinguido como raız y talque cada arista apunta del vertice mas cercano a la raız al mas lejano.

Si en un arbol dirigido existe la arista ij , se dice que i es el padre de j ,o que j es un hijo de i .

Obs: Todo vertice tiene un solo padre, salvo la raız que no tiene. Sellaman hojas los vertices sin hijos.

Se define el nivel de un vertice como su distancia a la raız.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 35 / 170

Page 36: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Lema 1

Si m > n − 1 entonces G tiene un ciclo.

Demo: Por induccion. Si n = 1 o 2, no puede pasar. Si n = 3, entonces Ges un triangulo y tiene un ciclo.Sea G con nG > 3 y mG > nG − 1. Si todo vertice de G tiene grado almenos 2, entonces G tiene un ciclo (ej. practica).Si no, saco un vertice v con d(v) ≤ 1. Ahora G ′ = G − v cumple

mG ′ ≥ mG − 1 > nG − 2 = nG ′ − 1

Por hipotesis inductiva G ′ contiene un ciclo, y como G ′ es un subgrafo deG , es tambien un ciclo en G . 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 36 / 170

Page 37: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Lema 2

Si G es conexo, entonces m ≥ n − 1.

Demo: Por induccion. Si n = 1 o 2, se verifica.Sea G conexo, nG ≥ 3. Si todo vertice de G tiene grado al menos 2,entonces 2mG ≥ 2nG , luego m ≥ n − 1.Si no, sea v de grado 1 (no puede haber vertices de grado cero por ser Gconexo no trivial). Como v no puede ser punto de corte, G ′ = G − v esconexo.Por hipotesis inductiva mG ′ ≥ nG ′ − 1. Entonces

mG = mG ′ + 1 ≥ nG ′ = nG − 1

2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 37 / 170

Page 38: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Teorema

Son equivalentes:

1. G es un arbol.

2. Todo par de vertices de G esta unido por un unico camino.

3. G es conexo y m = n − 1.

4. G es acıclico y m = n − 1.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 38 / 170

Page 39: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

G es un arbol ⇔ todo par de vertices de G esta unido por un unico camino

Demo: ⇐) Si todo par de vertices de G esta unido por un unico camino,claramente G es conexo. Ademas, si hubiera un ciclo, cualquier par de vertices delciclo estarıa unido por al menos dos caminos distintos. Luego G es un arbol.

⇒) Si G es un arbol, es conexo, luego todo par de vertices esta unido por almenos un camino. Supongamos que u y v estan unidos por al menos dos caminosdistintos, P1 : u = w0,w1, . . . ,wk = v y P2 : u = z0, z1, . . . , zr = v . Sea i elprimer ındice tal que wi 6= zi . Entonces i > 0, y wi−1 = zi−1.

u=w =z0 0 w =zi-1

i

i-1

w

iz u=w =z0 0 w =zi-1

i

i-1

w

izP

Ademas, wi , . . . ,wk = v = zr , . . . , zi inducen en G un subgrafo conexo. Sea P un

camino mınimo entre wi y zi en ese subgrafo inducido. Entonces wi−1Pwi−1 es un

ciclo en G , absurdo. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 39 / 170

Page 40: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

G es un arbol ⇔ G es conexo y m = n − 1

Demo: ⇒) Si G es un arbol entonces es conexo y por Lema 2, n ≥ m − 1.Ademas, como es acıclico, por Lema 1, n ≤ m − 1. Luego n = m − 1.

⇐) G es conexo, probemos por induccion que es un arbol. Si n = 1, vale.Supongamos n > 1. Por propiedad de la suma de grados, G tiene al menos unvertice v de grado menor o igual que uno. Como es conexo, v tiene grado 1, yentonces no es punto de corte. Luego G ′ = G − v es conexo y

nG ′ − 1 = nG − 2 = mG − 1 = mG ′ .

Por hipotesis inductiva G ′ es un arbol, y entonces G era un arbol tambien (v

tiene grado 1, no puede pertenecer a un ciclo). 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 40 / 170

Page 41: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

G es un arbol ⇔ G es acıclico y m = n − 1

Demo: ⇒) Si G es un arbol entonces es acıclico y por Lema 1, m ≤ n − 1.Ademas, como es conexo, por Lema 2, m ≥ n − 1. Luego m = n − 1.

⇐) G es acıclico. Supongamos que tiene t componentes conexas G1, . . . ,Gt .Cada una de ellas es un arbol, y por la equivalencia anterior, mGi = nGi − 1. Peroentonces

mG =t∑

i=1

mGi =t∑

i=1

(nGi − 1) =t∑

i=1

nGi − t = nG − t.

Luego t = 1, por lo tanto G es conexo. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 41 / 170

Page 42: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Teorema

Todo arbol no trivial tiene al menos dos hojas.

Demo: Si T es un arbol no trivial, por ser conexo tiene una arista v0w0. Ov0 es una hoja, o puedo elegir un vecino v1 de v0, tal que v1 6= w0. En cadapaso, o vi es una hoja o tiene un vecino distinto de vi−1 y tambien distintodel resto de los vertices del camino, porque T es acıclico. Como los verticesson finitos, hay algun vk que es una hoja. Con el mismo argumento apartir de w0, hay algun wt que es una hoja, y es distinto de todos los vi .2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 42 / 170

Page 43: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Teorema

1. Toda arista de un arbol es un puente.

2. Un vertice de un arbol no trivial es un punto de corte sii no es unahoja.

Demo: 1. Sea T un arbol y vw una arista de T . Como en T hay un unicocamino entre v y w (es v-e-w), no existe camino que una v y w en T − e.2. En cualquier grafo, una hoja nunca puede ser punto de corte. Sea T unarbol no trivial y v vertice de T que no es hoja. Entonces tiene al menosdos vecinos, z y w . Como en T existe un unico camino que une a z y w(es zvw), no existe camino entre z y w en T − v . 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 43 / 170

Page 44: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Teorema

Un grafo es conexo sii admite un arbol generador.

Idea de demo: ⇐) Sea T un a.g. de G . Sean v ,w vertices de G . En Texiste un camino de v a w . Como T es subgrafo de G , en particular es uncamino en G de v a w . Por lo tanto G es conexo.

⇐) Por induccion. Si G es trivial, G es un a.g. de si mismo. Si no, sea vun vertice de G . Por hipotesis inductiva, cada componente conexa Gi deG − v tiene un a.g. Ti . Como G era conexo, v tiene un vecino vi en cadaGi . Sea T el grafo obtenido agregando a la union de los Ti el vertice v ylas aristas viv . T es un a.g. de G : es facil ver que es conexo y quemT = nT − 1, sabiendo que los Ti son conexos y mTi

= nTi− 1. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 44 / 170

Page 45: Clases de grafos y problemas de optimización combinatoria

Arboles Propiedades

Corolario

Todo grafo conexo no trivial tiene al menos dos vertices tales que al sacaralguno de ellos, sigue siendo conexo.

Idea de demo: Si G es conexo, tiene un arbol generador T . Como G es notrivial, T tambien, y por lo tanto tiene al menos dos hojas v , w . ComoT − v y T − w siguen siendo arboles, son arboles generadores de G − v yG − w , respectivamente. Luego G − v y G − w son conexos. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 45 / 170

Page 46: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Arbol generador mınimo

Un grafo pesado es un grafo tal que sus aristas tienen asociado unpeso.

El peso de un subgrafo es la suma de los pesos de sus aristas.

Un arbol generador mınimo en un grafo pesado es un arbol generadorde peso mınimo.

1

1

13

2

2

44

561

1

13

2

2

44

56

peso=16

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 46 / 170

Page 47: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Ejemplo de aplicacion

Tengo que construir caminos entre ciertos pares de ciudades, de modo quetodo el paıs me quede conectado. ¿Como puedo hacerlo minimizando lalongitud total de camino construido?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 47 / 170

Page 48: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Algoritmo de Kruskal para AGM

Partir de un subgrafo generador cuyo conjunto de aristas es vacıo, y encada paso agregar una arista de peso mınimo que no forme ciclos con lasdemas aristas del conjunto, hasta haber agregado n − 1 aristas.

Ej:

1

1

13

7

7

45

261

1

13

7

7

45

261

1

13

7

7

45

26

1

1

13

7

7

45

261

1

13

7

7

45

261

1

13

7

7

45

26

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 48 / 170

Page 49: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Demostracion de que Kruskal construye un AGM

Para ver que el algoritmo construye un arbol generador, como en cada paso elsubgrafo B elegido hasta el momento es generador y acıclico, basta ver que elalgoritmo termina con mB = nG − 1. Si mB < nG − 1, B es no conexo. Sea B1

una componente conexa de B. Como G es conexo, va a existir alguna arista conun extremo en B1 y el otro en V (G )−B1, que por lo tanto no forma ciclo con lasdemas aristas de B. Entonces, si mB < nG − 1, el algoritmo puede realizar unpaso mas.

Sea G un grafo, TK el arbol generado por el algoritmo de Kruskal y{e1, e2, . . . , en−1} la secuencia de aristas de TK en el orden en que fueron elegidaspor el algoritmo de Kruskal. Para cada arbol generador T de G definimos p(T )como el maximo k ≤ n tal que ∀j < k , ej ∈ T .

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 49 / 170

Page 50: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Demostracion de que Kruskal construye un AGM

Ahora, sea T un AGM que maximiza p. Si p(T ) = n, entonces T coincide conTK , con lo cual TK resulta ser mınimo. Si TK no es mınimo, entonces p(T ) < ny ep(T ) 6∈ T . Como T es conexo, en T hay un camino C que une los extremos deep(T ).

Como TK es acıclico, hay alguna arista e en C tal que e 6∈ TK . Comoe1, . . . , ep(T )−1 ∈ T y T es acıclico, e no forma ciclos con e1, . . . , ep(T )−1. Por laforma en que fue elegida ep(T ) por el algoritmo de Kruskal,peso(ep(T )) ≤ peso(e).

Pero entonces T ′ = T − e ∪ {ep(T )} es un arbol generador de G de peso menor oigual a T y p(T ′) > p(T ), absurdo.

Luego TK es un arbol generador mınimo. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 50 / 170

Page 51: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Algoritmo de Prim para AGM

Partir de un conjunto de aristas A = {e} y un conjunto de verticesW = {v ,w}, donde e es una arista de peso mınimo en G y v y w son susextremos. En cada paso, agregar a A una arista f de peso mınimo con unextremo en W y el otro en V (G )−W . Agregar a W el extremo de f queno estaba en W , hasta que W = V (G ).Ej:

1

1

13

7

7

45

261

1

13

7

7

45

261

1

13

7

7

45

26

1

1

13

7

7

45

261

1

13

7

7

45

261

1

13

7

7

45

26

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 51 / 170

Page 52: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Demostracion de que Prim construye un AGM

Para ver que construye un arbol generador, se puede ver que en cada paso delalgoritmo, el subgrafo elegido hasta el momento es conexo y con m = n − 1.Finalmente, como el grafo es conexo, mientras W 6= V (G ) va a existir algunaarista de W a V (G )−W con lo cual el algoritmo termina construyendo un arbolgenerador del grafo.

Sea G un grafo, P el arbol generado por el algoritmo de Prim y {e1, e2, . . . , en−1}la secuencia de aristas de P en el orden en que fueron elegidas por el algoritmo dePrim. Para cada arbol generador T de G definimos p(T ) como el maximo k ≤ ntal que ∀j ≤ k , ej ∈ T .

Ahora, sea T un AGM que maximiza p. Si p(T ) = n, entonces T coincide con P,con lo cual P resulta ser mınimo. Si P no es mınimo, entonces p(T ) < n yep(T ) 6∈ T . Como T es conexo, en T hay un camino C que une los extremos deep(T ).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 52 / 170

Page 53: Clases de grafos y problemas de optimización combinatoria

Arboles Algoritmos

Demostracion de que Prim construye un AGM

Si p(T ) = 1, como e1 es de peso mınimo, peso(e1) ≤ peso(e) ∀e ∈ C .Luego T ′ = T − e ∪ {ep(T )} es un arbol generador de G de peso menor oigual a T y p(T ′) > p(T ), absurdo.

Si p(T ) > 1, sea V1 el conjunto de extremos de las aristas e1, . . . , ep(T )−1 yV2 = V − V1. Por la forma de elegir las aristas en Prim, ep(T ) es de pesomınimo entre las que tienen un extremo en V1 y otro en V2. El camino C vade un vertice de V1 a un vertice de V2, con lo cual, existe e ∈ C con unextremo en V1 y otro en V2 (sus vertices se pueden partir entre los de V1 ylos de V2, ambos conjuntos son no vacıos y C es conexo). Entoncespeso(ep(T )) ≤ peso(e) y T − e ∪ {ep(T )} es un arbol generador de pesomenor o igual a T y p mayor a p(T ) (e no es ninguna de las ei con i < p(T )porque esas tienen ambos extremos en V1, por definicion de V1), absurdo.

Luego P es un arbol generador mınimo. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 53 / 170

Page 54: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Pintando mapas...

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 54 / 170

Page 55: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

La Conjetura de los Cuatro Colores

La Conjetura de los Cuatro Colores fue enunciada en el siglo XIX:

Todo mapa puede ser coloreado usando a lo sumo cuatro colores demanera tal que regiones limıtrofes (i.e. que comparten una fronterade dimension uno, no solo un punto) reciban colores diferentes.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 55 / 170

Page 56: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

En terminos de grafos...

A partir de cualquier mapa podemos construir un grafo donde las regionesse representan por vertices y dos vertices son adyacentes si y solo si lasregiones correspondientes son limıtrofes.

El grafo resultante es planar, es decir, se puede dibujar en el plano sinaristas que se crucen.

Entonces, la Conjetura de los Cuatro Colores dice que los vertices de ungrafo planar pueden ser coloreados usando a lo sumo 4 colores y de maneratal que no haya dos vertices adyacentes que reciban el mismo color.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 56 / 170

Page 57: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Ejemplo...

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 57 / 170

Page 58: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Historia

Aparentemente, la Conjetura de los Cuatro Colores fueformulada por primera vez por Francis Guthrie. El eraun estudiante del University College de Londres y fuealumno de Augusts De Morgan.

Despues de graduarse en Londres estudio derecho, peroalgunos anos despues su hermano Frederick Guthriecomenzo a estudiar con De Morgan. Francis le mostro asu hermano algunos resultados que habıa estadointentando probar sobre coloreo de mapas y le pidio quele pregunte a De Morgan sobre ese problema.

Guthrie

De Morgan

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 58 / 170

Page 59: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

De Morgan no pudo darle una respuesta pero ese mismo dıa (el 23 de octubre de1852) le escribio una carta a Sir William Hamilton en Dublin:

A student of mine asked me today to give him a reason for a fact which I did notknow was a fact - and do not yet. He says that if a figure be anyhow divided andthe compartments differently colored so that figures with any portion of commonboundary line are differently colored - four colors may be wanted, but not more -the following is the case in which four colors are wanted. Query cannot anecessity for five or more be invented. ... If you retort with some very simple casewhich makes me out a stupid animal, I think I must do as the Sphynx did...

Hamilton le respondio el 26 de octubre de 1852 (mostrandotanto su eficiencia como la del correo):

I am not likely to attempt your quaternion of colors verysoon.

Hamilton

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 59 / 170

Page 60: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

La primera referencia publicada se encuentra en elpaper de Arthur Cayley, On the colorings of maps,Proc. Royal Geographical Society 1, 259–261, 1879.

El 17 de julio de 1879 Alfred Bray Kempe anuncio enNature que tenıa una demostracion de la Conjetura delos Cuatro Colores.

Kempe era un abogado de Londres que habıa estudiadomatematica con Cayley en Cambridge y dedicado algode su tiempo a la matematica durante su vida.

Por sugerencia de Cayley, Kempe envio su Teorema alAmerican Journal of Mathematics donde fue publicadoa fines de 1879.

Cayley

Kempe

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 60 / 170

Page 61: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Idea de la demostracion de Kempe

Kempe uso un argumento inductivo-constructivo:

Si tenemos un mapa en el cual cada region es coloreada conrojo, verde, azul o amarillo excepto una, digamos X. Si X noesta rodeada por regiones de todos los colores, me queda uncolor para asignarle a X. Supongamos entonces que X tieneregiones limıtrofes de los 4 colores.

Si X esta rodeada por regiones A, B, C, D en orden,coloreadas rojo, amarillo, verde y azul entonces hay dos casosa considerar.

(i) No existe una cadena de regiones adyacentes uniendo Ay C, coloreadas alternadamente de rojo y verde.

(ii) Existe una cadena de regiones adyacentes uniendo A yC, coloreadas alternadamente de rojo y verde.

BA C

D

X

BA C

D

X

BA C

D

X

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 61 / 170

Page 62: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Casos:

(i) No existe una cadena roja/verde uniendo A y C.

(ii) Existe una cadena roja/verde uniendo A y C.

Si vale (i), entonces cambiamos A a verde, y luegointercambiamos los colores rojo/verde en la componentebicromatica rojo/verde que contiene a A. Como C no esta enla componente, permanece verde y ahora no hay masregiones rojas adyacentes a X. Coloreamos X con rojo.

Si vale (ii), entonces no puede haber una cadenaamarilla/azul de regiones adyacentes uniendo B y D. [Nopodrıa cruzar la cadena verde/roja.] Entonces la propiedad(i) vale para B y D y cambiamos los colores como antes.

BA C

D

X

BA C

D

X

X

BA C

D

X

BA C

D

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 62 / 170

Page 63: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

El Teorema de los Cuatro Colores volvio a ser Conjetura de los Cuatro Colores en1890.

Percy John Heawood, un docente en Durham England,publico un paper llamado Map coloring theorem. Ahi decıaque su objetivo era “...mas destructivo que constructivo, yaque voy a mostrar un defecto en la aparentemente reconocidaprueba...”.

Aunque Heawood mostro que la prueba de Kempe eraerronea, el probo en ese paper que todo mapa puede sercoloreado usando a lo sumo 5 colores. Heawood

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 63 / 170

Page 64: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Primera prueba

Finalmente, en 1976 (si, 100 anos despues...) laConjetura de los Cuatro Colores fue probada porKenneth Appel y Wolfgang Haken en la Universidad deIllinois. John Koch colaboro con partes del algoritmo.

K. Appel and W. Haken, Every planar map is fourcolorable. Part I. Discharging, Illinois J. Math. 21(1977), 429–490.

K. Appel, W. Haken and J. Koch, Every planarmap is four colorable. Part II. Reducibility, IllinoisJ. Math. 21 (1977), 491–567. Appel

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 64 / 170

Page 65: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Idea de la demostracion

Para demostrar la inexistencia de un contraejemplo (y en particular de uncontraejemplo minimal), Appel y Haken redujeron mediante argumentosteoricos el problema de los infinitos mapas posibles a 1,936 configuracionesque debieron ser chequeadas una a una por computadora, con unalgoritmo que corrio cientos de horas.

La parte teorica a su vez incluye 500 paginas de contra-contra-ejemplosescritos a mano (esos coloreos fueron verificados por el hijo de Haken!).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 65 / 170

Page 66: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Pero muchos cientıficos cuestionaron la demostracion de Appel-Haken pordos motivos:

Parte de la prueba usaba una computadora, y no podıa ser verificadaa mano.

Aun la parte supuestamente chequeable a mano es extremadamenteengorrosa, y nadie la verifico por completo.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 66 / 170

Page 67: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Segunda prueba

Hace veinte anos aparecio otra prueba:

N. Robertson, D. P. Sanders, P. D. Seymour and R. Thomas, Thefour color theorem, J. Combin. Theory Ser. B. 70 (1997), 2–44.

N. Robertson, D. P. Sanders, P. D. Seymour and R. Thomas, A newproof of the four color theorem, Electron. Res. Announc. Amer. Math.Soc. 2 (1996), 17–25 (electronic).

Robertson Sanders Seymour Thomas

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 67 / 170

Page 68: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Esquema de la demostracion

La idea basica de la prueba es la misma que la de Appel y Haken. Losautores exhibieron un conjunto de 633 configuraciones reducibles, es decir,configuraciones que no pueden aparecer en un contraejemplo minimal.Usaron tambien un resultado conocido desde 1913 sobre la estructura quedeberıa tener un tal contraejemplo.

En la segunda parte de la demostracion, probaron que todo grafo condicha estructura contiene alguna de las 633 configuraciones reducibles, ypor lo tanto no existe tal contraejemplo.La primera parte de la prueba requiere de una computadora, pero lasegunda puede ser chequeada a mano en pocos meses o, usando unacomputadora, en unos 20 minutos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 68 / 170

Page 69: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

En diciembre de 2004 en una reunion cientıfica en Francia, un grupo degente de Microsoft Research en Inglaterra e INRIA en Francia anunciaronla verificacion de la demostracion de Robertson et al. formulando elproblema en el lenguaje Coq y confirmando la validez de cada uno de suspasos (Devlin 2005, Knight 2005).

De todas formas, no se conoce hasta el momento una demostracion delTeorema de los Cuatro Colores al estilo tradicional (completamenteverificable por humanos con lapiz y papel).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 69 / 170

Page 70: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Coloreo de grafos

Un k-coloreo de un grafo G es una asignacion de colores a susvertices de manera que no se usan mas de k colores y no hay dosvertices adyacentes que reciban el mismo color.

Un grafo se dice k-coloreable si admite un k-coloreo.

4-coloreo 3-coloreo

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 70 / 170

Page 71: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Numero cromatico

Una clique en un grafo es un subgrafo completo maximal. Se denotapor ω(G ) el tamano de una clique maxima.

Un conjunto independiente es un conjunto de vertices no adyacentesdos a dos. Se denota por α(G ) el tamano de un conjuntoindependiente maximo.

El numero cromatico de un grafo G es el menor numero k tal que Ges k-coloreable, y se denota por χ(G ).

ω = 3 α = 3 χ = 4

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 71 / 170

Page 72: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Aplicaciones

El problema de coloreo de grafos y sus variantes tienen muchasaplicaciones, entre ellas problemas de scheduling, asignacion de frecuenciasen radios y telefonos celulares, etc.

Ejemplo: Planificacion de examenes

Cada alumno tiene que rendir un examen en cada una de las materias que

esta cursando. Sea X el conjunto de materias e Y el conjunto de estudiantes.

Como el examen es escrito, es conveniente que todos los alumnos lo rindan a la

vez. Por resolucion del CD, los alumnos tienen derecho a no rendir dos examenes

el mismo dıa. ¿Cual es la mınima cantidad de dıas de examen necesarios?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 72 / 170

Page 73: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Ejemplo: Planificacion de examenes

Modelemos este problema como un problema de coloreo de grafos.

Vertices: materias.

Colores: dıas.

Aristas: Dos vertices son adyacentes si sus correspondientes materiastienen alumnos en comun.

Correspondencia con el modelo: Dos materias [vertices] no puedentomar examen el mismo dıa [usar el mismo color] si hay alumnos quecursan ambas [son adyacentes].

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 73 / 170

Page 74: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Algunas propiedades de χ(G ), ω(G ) y α(G )

Lema

Sea G un grafo de n vertices y G su complemento. Entonces:

1. α(G ) = ω(G )

2. χ(G ) ≥ ω(G )

3. χ(G ) ≤ ∆(G ) + 1

4. χ(G )α(G ) ≥ n

5. χ(G ) + α(G ) ≤ n + 1

6. χ(G ) + χ(G ) ≤ n + 1

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 74 / 170

Page 75: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Demostraciones:

1. α(G ) = ω(G )

Por definicion, ya que los conjuntos independientes maximales de G soncliques de G . 2

2. χ(G ) ≥ ω(G )

Los vertices de una clique tienen que usar colores distintos, ya que sonadyacentes dos a dos. 2

3. χ(G ) ≤ ∆(G ) + 1

Pintando secuencialmente los vertices con el mınimo color no utilizado porun vecino ya pintado, obtenemos un coloreo valido (no siempre optimo) cona lo sumo ∆(G ) + 1 colores. 2

1

42

3

4

11111

1 1 1 1

2 2 2

3 3

12

Ej: El coloreo obtenido usa 4 colores, ∆(G) + 1 = 6 y χ(G) = 3.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 75 / 170

Page 76: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Demostraciones:

4. χ(G )α(G ) ≥ n

Tomemos un coloreo optimo de G , y llamemos Vi al conjunto de verticescoloreados con i , para i = 1, . . . , χ(G ). Como cada Vi es un conjuntoindependiente, |Vi | ≤ α(G ).

Entonces n =∑χ(G)

i=1 |Vi | ≤ χ(G )α(G ). 2

5. χ(G ) + α(G ) ≤ n + 1

Sea W un conjunto independiente maximo de G . Si pintamos los vertices deW de un color y los de V −W de otros colores diferentes entre si,obtenemos un coloreo valido de G con 1 + n − α(G ) colores. Luegoχ(G ) ≤ n + 1− α(G ). 2

Ej: α(G) = 3, el coloreo obtenido usa n + 1− α(G) = 5 colores, y χ(G) = 3.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 76 / 170

Page 77: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Demostraciones:

6. χ(G ) + χ(G ) ≤ n + 1

Por induccion. Si G es trivial, χ(G ) + χ(G ) = 1 + 1 = n + 1.Si n ≥ 2, sea v ∈ V (G ). Tenemos dos casos para G − v :

(1) χ(G − v) = χ(G )(2) χ(G − v) = χ(G )− 1.

Y dos casos para G − v = G − v :

(a) χ(G − v) = χ(G )(b) χ(G − v) = χ(G )− 1.

Por hipotesis inductiva, χ(G − v) + χ(G − v) ≤ (n − 1) + 1, luego lapropiedad para G vale en los casos 1a, 1b y 2a. Supongamos que se da elcaso 2b. Si dG (v) < χ(G − v) entonces χ(G ) = χ(G − v). LuegodG (v) ≥ χ(G − v) = χ(G )− 1. Analogamente, dG (v) ≥ χ(G )− 1.

Por lo tanto, n − 1 = dG (v) + dG (v) ≥ χ(G )− 1 + χ(G )− 1, entonces

χ(G ) + χ(G ) ≤ n + 1. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 77 / 170

Page 78: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Teorema de Brooks

Teorema de Brooks (1941)

Sea G un grafo conexo. Entonces G es ∆(G )-coloreable, salvo que:

1. ∆(G ) 6= 2, y G es un completo de tamano ∆(G ) + 1, or

2. ∆(G ) = 2, y G es un ciclo impar.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 78 / 170

Page 79: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Algoritmo para coloreo de grafos

No se conoce un algoritmo polinomial para encontrar χ(G ). Veamos elsiguiente algoritmo (conexion-contraccion):

Consideremos un grafo G con dos vertices no adyacentes a y b. La conexionG1 se obtiene agregando la arista ab. La contraccion G2 se obtienecontrayendo {a, b} en un solo vertice c(a, b) que es vecino de N(a) ∪ N(b).

Un coloreo de G en el cual a y b usan distintos colores es un coloreo de G1,y viceversa. Un coloreo de G en el cual a y b usan el mismo color da lugar aun coloreo de G2, y viceversa.

Entonces, χ(G ) = mın{χ(G1), χ(G2)}.

Si repetimos las operaciones en cada grafo generado hasta que los grafosresultantes sean completos, χ(G ) es el tamano del menor completo obtenido.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 79 / 170

Page 80: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Ejemplo

1

2

3

45

6

1

2

3

45

6

123

45

6

1

2

3

45

6 2

3

415

6

123

45

6

3

4125

6

4125

36

3

4125

6

123

45

6

1236

452

3

415

6 2

415

36

G

χ(G)=3

1

2

3

45

6

1

2

36

45

1

2

3

45

6

13

425

6

1

2

36

45

136

425 1

2

3

45

6

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 80 / 170

Page 81: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Polinomio cromatico

El polinomio cromatico de un grafo G es una funcion PG (k) que para cadaentero k da el numero posible de k-coloreos de G .

¿Por que esa funcion es un polinomio?

Ejemplo 1: Si G es un arbol de n vertices, entonces:

PG (k) = k(k − 1)n−1

Ejemplo 2: Si G es Kn, entonces:

PG (k) = k(k − 1)(k − 2) . . . (k − n + 1)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 81 / 170

Page 82: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Polinomio cromatico

Propiedad

PG (k) = PG1(k) + PG2(k), donde G1 y G2 son los grafos definidos en elalgoritmo de conexion-contraccion.

Corolario

PG (k) es un polinomio.

Ejercicio: Probar que el polinomio cromatico de un ciclo Cn es

PCn(k) = (k − 1)n + (−1)n(k − 1)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 82 / 170

Page 83: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Ejemplo

1

2

3

45

6

1

2

3

45

6

123

45

6

1

2

3

45

6 2

3

415

6

123

45

6

3

4125

6

4125

36

3

4125

6

123

45

6

1236

452

3

415

6 2

415

36

P (k)=k(k-1)(k-2)((k-3)(k-4)(k-5) + 4(k-3)(k-4)+4(k-3)+1)

1

2

3

45

6

1

2

36

45

1

2

3

45

6

13

425

6

1

2

36

45

136

425

k(k-1)(k-2)k(k-1)(k-2)(k-3)k(k-1)(k-2)(k-3)k(k-1)(k-2)(k-3)

k(k-1)(k-2)(k-3)

k(k-1)(k-2)(k-3)(k-4)

k(k-1)(k-2)(k-3)(k-4)

k(k-1)(k-2)(k-3)(k-4)

k(k-1)(k-2)(k-3)(k-4)k(k-1)(k-2)(k-3)(k-4)(k-5)

G

G

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 83 / 170

Page 84: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Indice cromatico

El ındice cromatico χ′(G ) de un grafo G es el menos numero decolores necesarios para pintar las aristas de G de manera tal que dosaristas incidentes no tengan el mismo color.

Claramente, χ′(G ) ≥ ∆(G ).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 84 / 170

Page 85: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Indice cromatico

Propiedad

χ′(Kn) = n − 1 = ∆(Kn), si n es par

χ′(Kn) = n = ∆(Kn) + 1, si n es impar

Demo: A lo sumo b n2c aristas pueden usar el mismo color, por lo tanto

χ′(G )b n2c ≥ m. Como mKn = n(n−1)2 , para n impar χ′(Kn) ≥ n y para n par

χ′(Kn) ≥ n − 1.

Vamos a construir coloreos con esa cantidad de colores respectivamente. Para nimpar, dibujamos los vertices formando un polıgono regular, pintamos un lado decada color y cada diagonal del color de su lado paralelo. Para n par, sacamos unvertice v y pintamos el grafo Kn−1. En el coloreo resultante, cada vertice w esincidente a aristas de todos los colores salvo el color de su lado opuesto, y esecolor se asigna a la arista vw (en el dibujo anterior, v es el vertice superiorderecho). 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 85 / 170

Page 86: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Indice cromatico

Teorema de Vizing (1964)

Sea G un grafo, entonces

∆(G ) ≤ χ′(G ) ≤ ∆(G ) + 1.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 86 / 170

Page 87: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Coloreo por listas

En lugar de haber un conjunto de colores 1, . . . , k disponibles paratodos los vertices, cada vertice tiene su propia lista finita de coloresadmisibles.

1,2

1,3

1

2,3

3

2,3

21,3

1,2

1,3

1

2,3

3

2,3

21,3

3

3

3

2

2

2

1

1

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 87 / 170

Page 88: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Precoloring Extension

Consiste en extender un k-coloreo parcial a un k-coloreo total delgrafo.

k=3

1

2

k=3

1

1

2

2

2 2

33

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 88 / 170

Page 89: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

µ-coloreo

En lugar de una cota k general, cada vertice tiene una cota propia ydebe usar un color menor o igual a su cota.

1

2

3

2

<

<

<

<

<

<

<

<

3

3

3

2

1

2

3

2

3

3

3

2

2

2

1

1

<

<

<

<

<

<

<

<

3

3

3

2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 89 / 170

Page 90: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

(γ, µ)-coloreo

Ahora cada vertice tiene tanto una cota superior como inferior.

(1,3)

(1,3)

(1,1)

(2,3)

(3,3)

(2,3)

(2,2)(1,3)

(1,3)

(1,3)

(1,1)

(2,3)

(3,3)

(2,3)

(2,2)(1,3) 1

1

2

2

2

3

3

3

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 90 / 170

Page 91: Clases de grafos y problemas de optimización combinatoria

Circuitos, planaridad y coloreo Planaridad y coloreo

Jerarquıa de problemas de coloreo

coloreo por listas

k-coloreo

(γ,µ)-coloreo

PrExt µ-coloreo

<<

<

<

<

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 91 / 170

Page 92: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP

La teorıa de NP-completitud

Se aplica a problemas de decision, o sea problemas que toman ciertosparametros y tienen como respuesta SI o NO (aunque es sencillo verque sus implicancias pueden extenderse a problemas de optimizacion).

En el caso del problema de coloreo optimo de un grafo, la variante dedecision se podrıa formular como: “Dado un grafo G y un numero k ,¿existe un coloreo de G que utilice a lo sumo k colores?”

Una instancia de un problema es una especificacion de susparametros. Un problema de decision π tiene asociado un conjuntoDπ de instancias y un subconjunto Yπ ⊆ Dπ de instancias cuyarespuesta es SI.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 92 / 170

Page 93: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP

Ejemplo: coloreo

Dado un grafo G y un numero k, ¿existe un coloreo de G que utilice a losumo k colores?

k=2

1

1

2

2

2 2

k=3

1

1

2

2

2 2

33

1

1 2

k=2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 93 / 170

Page 94: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: DTM

Modelos de Computadoras: DTM

Recordemos la nocion de Maquina de Turing Determinıstica (DTM)

Consiste de un control finito, una cabeza lecto-escritora y una cintacon el siguiente esquema.

ControlCabeza lecto-escritora

Cinta . . . . . .

Σ finito, el alfabeto; Γ = Σ ∪ {∗};Q finito, el conjunto de estados;q0 ∈ Q, estado inicial; Qf ⊆ Q, estados finales (qsi y qno paraproblemas de decision)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 94 / 170

Page 95: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: DTM

Modelos de Computadoras: DTM

Sobre la cinta tengo escrito el input que es un string de sımbolos deΣ a partir de la celda 1, y el resto de las celdas tiene ∗ (blancos).

Definimos un programa S como un conjunto de quıntuplasS ⊆ Q × Γ× Q × Γ×M, donde M = {+1,−1} son los movimientosde la cabeza a derecha o izquierda.

Para todo par (qi , sj), existe exactamente una quıntupla quecomienza con ese par (maquina determinıstica).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 95 / 170

Page 96: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: DTM

Modelos de Computadoras: DTM

¿Que significa la quıntupla (qi , sh, qj , sk ,+1)? Significa que si estando enel estado qi la cabeza lee sh, entonces escribe sk , se mueve a la derecha ypasa al estado qj .

Ej:

Σ = {a, b}; Γ = Σ ∪ {∗};

Q = {q0, q1, qsi , qno};Qf = {qsi , qno}

S = (q0, a, q0, a,+1),(q0, b, q1, a,−1),(q0, ∗, qsi , ∗,−1),(q1, a, q0, a,−1),(q1, b, qno , a,−1),(q1, ∗, q0, b,+1)

Control

. . . . . .* * * a b a a b b * * * * *

q

q q

Control

. . . . . .* * * a b a a a b * * * * *

q

q

Control

. . . . . .* * * a b a a a b * * * * *

q q

q

Control

. . . . . .* * * a b a a a b * * * * *

q q

q

Control

. . . . . .* * * a b a a a b * * * * *

q q

q

Control

. . . . . .* * * a b a a a b * * * * *

q q

q

Control

. . . . . .* * * a b a a a a * * * * *

q

q q

Control

. . . . . .* * * a b a a a a * * * * *

qq

q

Control

. . . . . .* * * a b a a a a * * * * *

qq

q

Control

. . . . . .* * * a b a a a a * * * * *

qq

q

Control

. . . . . .* * * a b a a a a * * * * *

qq

q

Control

. . . . . .* * * a b a a a a * * * * *

qq

qsi

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 96 / 170

Page 97: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: DTM

Modelos de Computadoras: DTM

Una maquina M resuelve el problema π si para toda instanciaempieza, termina y contesta bien (o sea, termina en el estado finalcorrecto).

La complejidad de una DTM esta dada por la cantidad demovimientos de la cabeza, desde el estado inicial hasta alcanzar unestado final, en funcion del tamano de la entrada.

TM(n) = max{m tq ∃x ∈ Dπ, |x | = n y M con input x tarda m}

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 97 / 170

Page 98: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: DTM

La clase P

Un problema esta en P si existe una DTM de complejidadpolinomial que lo resuelve.

P = {π tq ∃M DTM tq M resuelve π y TM(n) ∈ O(p(n)) para algunpolinomio p}

Existen otros modelos de computadoras determinısticas (maquina deTuring con varias cintas, Random Access Machines, etc.) pero puedeprobarse que son equivalentes en terminos de la polinomialidad de losproblemas a la DTM.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 98 / 170

Page 99: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: NDTM

Modelos de Computadoras: NDTM

Maquinas de Turing No Determinısticas (NDTM)

No se pide unicidad de la quıntupla que comienza con cualquierpar (qi , sj).

En caso de que hubiera mas de una quıntupla, la maquina se replicacontinuando cada una por una rama distinta.

Decimos que una NDTM resuelve el problema π si para todainstancia de Yπ existe una rama que llega a un estado final qsi y paratoda instancia en Dπ \ Yπ ninguna rama llega a un estado final qsi .

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 99 / 170

Page 100: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: NDTM

Modelos de Computadoras: NDTM

qsi

qsi

q0

qno qno qnoqno

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 100 / 170

Page 101: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP Modelos de Computadoras: NDTM

Modelos de Computadoras: NDTM

Una NDTM es polinomial para π cuando existe una funcionpolinomial T (n) de manera que para toda instancia de Yπ de tamanon, alguna de las ramas termina en estado qsi en a lo sumo T (n) pasos.

Un problema π ∈ NP si existe una NDTM polinomial queresuelve π.

Claramente, P ⊆ NP.

Conjetura: P 6= NP.

Todavıa no se demostro que exista un problema en NP \ P. Mientrastanto, se estudian clases de complejidad “relativa”, es decir, queestablecen orden de dificultad entre problemas.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 101 / 170

Page 102: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

NP-completitud

Reduccion polinomial: Sean π y π′ dos problemas de decision.Decimos que f : Dπ′ → Dπ es una reduccion polinomial de π′ en π sif se computa en tiempo polinomial y para todo d ∈ Dπ′ ,d ∈ Yπ′ ⇔ f (d) ∈ Yπ. Notacion: π′ 4 π.

Notemos que si π′′ 4 π′ y π′ 4 π entonces π′′ 4 π, ya que lacomposicion de dos reducciones polinomiales es una reduccionpolinomial.

Un problema π es NP-completo si:

1. π ∈ NP.2. Para todo π′ ∈ NP, π′ 4 π.

Si un problema π verifica la condicion 2., π es NP-Hard (es al menostan “difıcil” como todos los problemas de NP).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 102 / 170

Page 103: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

¿P 6= NP? La pregunta del millon...

Si existe un problema en NP-c ∩ P, entonces P=NP.

Si π ∈ NP-c ∩ P, existe un algoritmo polinomial que resuelve π, porestar π en P. Por otro lado, como π es NP-completo, para todo π′ ∈NP, π′ 4 π.

Sea π′ ∈ NP. Apliquemos la reduccion polinomial que transformainstancias de π′ en instancias de π y luego el algoritmo polinomial queresuelve π. Por definicion de reduccion polinomial, es facil ver que loque se obtiene es un algoritmo polinomial que resuelve π′.

Hasta el momento no se conoce ningun problema en NP-c ∩ P,ası como tampoco se ha demostrado que un problema este en NP \P. En ese caso, obviamente, se probarıa que P 6= NP.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 103 / 170

Page 104: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Esquema de clases

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 104 / 170

Page 105: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

¿Como se prueba que un problema es NP-completo?

El problema SAT consiste en decidir si, dada una formula logica ϕexpresada como conjuncion de disyunciones (ej:ϕ = x1 ∧ (x2 ∨ ¬x1) ∧ (x3 ∨ ¬x4 ∨ x1)), existe una valuacion de susvariables que haga verdadera ϕ.

Teorema de Cook (1971): SAT es NP-completo.

La demostracion de Cook es directa: considera un problema generico π ∈NP y una instancia generica d ∈ Dπ. A partir de la hipotetica NDTM queresuelve π, genera en tiempo polinomial una formula logica ϕπ,d en formanormal (conjuncion de disyunciones) tal que d ∈ Yπ si y solo si ϕπ,d essatisfactible.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 105 / 170

Page 106: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

¿Como se prueba que un problema es NP-completo?

A partir del Teorema de Cook, la tecnica standard para probar que unproblema π es NP-completo aprovecha la transitividad de 4, y consiste enlo siguiente:

1. Mostrar que π esta en NP.

2. Elegir un problema π′ apropiado que se sepa que es NP-completo.

3. Construir una reduccion polinomial f de π′ en π.

La segunda condicion en la definicion de problema NP-completo saleusando la transitividad: sea π′′ un problema cualquiera de NP. Como π′ esNP-completo, π′′ 4 π′. Como probamos que π′ 4 π, resulta π′′ 4 π.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 106 / 170

Page 107: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Coloreo es NP-completo

A partir de un algoritmo de backtracking para coloreo es facil construiruna NDTM para el problema de coloreo, por lo tanto esta en NP.

Para probar que coloreo es NP-completo, vamos entonces a reducirSAT a coloreo.

Tomemos una instancia generica de SAT ϕ = C1 ∧ · · · ∧ Cm. Vamos aconstruir un grafo G y determinar un numero k de manera que ϕ seasatisfactible si y solo si G se puede colorear con k-colores.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 107 / 170

Page 108: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Reduccion de SAT a coloreo

G tiene:

V1: un vertice por cada variable negada yafirmada, todos adyacentes entre si.

V2: un vertice por cada clausula, adyacente alos literales de V1 que no aparecen en laclausula.

V3: otro vertice por cada variable, adyacente atodo V2 y a los literales de V1 correspondientesa otras variables.

k = dos veces la cantidad de variables.

ϕ = (x1∨¬x2∨x3)∧(x2∨¬x3)

C1

C2

x1

x2

x3

x1

x2

x3

x1

x2

x3

completo G

k=6

Queda como ejercicio escribir formalmente la reduccion y demostrar que es unareduccion polinomial de SAT a coloreo.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 108 / 170

Page 109: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Reduccion de SAT a coloreo

ϕ = (x1 ∨ ¬x2 ∨ x3) ∧ (x2 ∨ ¬x3)

C1

C2

x1

x2

x3

x1

x2

x3

x1

x2

x3

completo G

k=6

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 109 / 170

Page 110: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Reduccion de SAT a 3-SAT

El problema 3-SAT es una variante del problema SAT, en el cual cadaclausula tiene exactamente tres literales. Como es una restriccion deldominio de SAT, esta en NP, y en principio es “no mas difıcil” que SAT.

Para probar que 3-SAT es NP-completo, vamos entonces a reducir SAT a3-SAT.

Tomemos una instancia generica de SAT ϕ = C1 ∧ · · · ∧ Cm. Vamos areemplazar cada Ci por una conjuncion de disyunciones ϕ′i , donde cadadisyuncion tenga tres literales, y de manera que ϕ sea satisfactible si y solosi ϕ1 ∧ · · · ∧ ϕm lo es.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 110 / 170

Page 111: Clases de grafos y problemas de optimización combinatoria

Clases de complejidad computacional: P y NP NP-completitud

Reduccion de SAT a 3-SAT

Si Ci tiene tres literales, queda como esta.

Ci tiene menos de tres literales, agregamos nuevas variables como enel ejemplo:

(x1 ∨ ¬x2)→ (x1 ∨ ¬x2 ∨ y) ∧ (x1 ∨ ¬x2 ∨ ¬y)

Si Ci tiene cuatro o mas literales, agregamos nuevas variables comoen el ejemplo:

(x1 ∨ ¬x2 ∨ x3 ∨ x4 ∨ ¬x5)→

(x1 ∨ ¬x2 ∨ y1) ∧ (¬y1 ∨ x3 ∨ y2) ∧ (¬y2 ∨ x4 ∨ ¬x5)

Queda como ejercicio escribir formalmente la reduccion y demostrar que esuna reduccion polinomial de SAT a 3-SAT.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 111 / 170

Page 112: Clases de grafos y problemas de optimización combinatoria

Esquema del curso: problemas algorıtmicos

Clique maxima

Conjunto independientemaximo

Coloreo

Cubrimiento por cliquesmınimo

Conjunto dominantemınimo

(Todos NP-completos engeneral.)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 112 / 170

Page 113: Clases de grafos y problemas de optimización combinatoria

Esquema del curso: clases de grafos y conceptos

árboles

block

cordales

intervalos

cografos

decomposición modular

arco-circulares

circulares

permutación

perfectos

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 113 / 170

Page 114: Clases de grafos y problemas de optimización combinatoria

Propiedades deseables para una clase de grafos C

Hereditaria: G ∈ C y H subgrafo inducido de G entonces H ∈ C !Existe una caracterizacion por subgrafos prohibidos inducidosminimales (tal vez una familia infinita).

Hereditaria por subgrafos: G ∈ C y H subgrafo de G entonces H ∈ C.(A veces es pedir demasiado, todo grafo es subgrafo de una cliquesuficientemente grande.)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 114 / 170

Page 115: Clases de grafos y problemas de optimización combinatoria

Propiedades deseables para un parametro ϕ en grafos

Monotonıa: H subgrafo inducido de G entonces ϕ(H) ≤ ϕ(G ) (oϕ(H) ≥ ϕ(G ), dependiendo del problema).

Monotonıa en subgrafos: H subgrafo de G entonces ϕ(H) ≤ ϕ(G ) (oϕ(H) ≥ ϕ(G )).

Monotonıa en subgrafos generadores: H subgrafo generador de G(V (H) = V (G )) entonces ϕ(H) ≤ ϕ(G ) (o ϕ(H) ≥ ϕ(G )).

Problema Monotono M. en subgrafos M. en subg. gen.

clique ≤ ≤ ≤

cto. indep. ≤ x ≥

coloreo ≤ ≤ ≤

cub. cliques ≤ x ≥

cto. dominante x x ≥

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 115 / 170

Page 116: Clases de grafos y problemas de optimización combinatoria

Conexion

La propiedad de ser conexo no es hereditaria (version hereditaria:cliques).

No puede ser expresada en terminos de subgrafos inducidos prohibidosminimales.

Muchos de los problemas (sobre todo parametros monotonos) sepueden resolver en cada componente conexa y combinar lassoluciones.

Muchas veces vamos a suponer conexion aunque no la vamos arequerir.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 116 / 170

Page 117: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Los basicos: arboles y bosques

G es un bosque sii no tiene ciclos Cn, n ≥ 3. ! caracterizacion porsubgrafos inducidos prohibidos, mas aun, por subgrafos prohibidosun arbol es un bosque conexotodo arbol no trivial tiene al menos dos hojas ! secuencia dedesmantelamiento/construcciontodo vertice v que no es una hoja es un punto de corte y descomponeel arbol en d(v) partes ! teorema de descomposicion/composiciontoda arista es un puente ! teorema de descomposicion/composicionpara todo vertice v y todo k , Nk(v) es un conjunto independiente !estructura de nivelesun arbol es bipartito ! particion de vertices

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 117 / 170

Page 118: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Los basicos: arboles y bosques

Uso algorıtmico:

List-coloring ! hojas + recursion

Conjunto independiente maximo ! hojas + recursion o puntos decorte/estructura de niveles + programacion dinamica

Conjunto dominante mınimo ! puntos de corte/estructura deniveles + programacion dinamica

Cubrimiento por cliques mınimo ! forzado usando hojas

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 118 / 170

Page 119: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Como generalizar los arboles? Grafos block

La propiedad de los puntos de corte en arboles es equivalente a todacomponente biconexa (block) es un vertice o una arista.

Grafo block: todo bloque es una clique.

Subgrafos inducidos prohibidos: Cn, n ≥ 4, diamante.

hojas ! end blocks

Muchos algoritmos en arboles se extienden a grafos block.

Grafo sin diamantes ⇔ toda arista pertenece a una unica cliquemaximal.

diamante

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 119 / 170

Page 120: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Grafos de interseccion

Un grafo de interseccion de una familia (finita) de conjuntos F tiene unvertice por cada miembro F ∈ F y dos vertices F ,F ′ son adyacentes siiF ∩ F ′ 6= ∅.

xx

x

x

x

x

xx

x

x

Todo grafo es un grafo de interseccion?

Los grafos de interseccion de objetos especıficos pueden tener propiedadesinteresantes.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 120 / 170

Page 121: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Hay un modelo de interseccion para los grafos block?

El grafos de lınea de un grafo es el grafo interseccion de sus aristas.

G L(G) G L(G)

Grafos de lınea de arboles?

Grafos de lınea de arboles ( grafos blockFlavia Bonomo Grafos y optimizacion combinatoria UMA 2016 121 / 170

Page 122: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Arboles y grafos block

Subgrafos inducidos prohibidos minimales para la clase degrafos de lınea (Beineke, 1970)

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 122 / 170

Page 123: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Mas general: grafos cordales

Un grafo es cordal si no contiene como subgrafo inducido Cn, n ≥ 4,o sea, si todo ciclo de longitud al menos 4 tiene una cuerda.

Tambien se llaman triangulados o de circuitos rıgidos.

[lectura recomendada] Blair and Peyton, An introduction to chordalgraphs and clique trees

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 123 / 170

Page 124: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Separadores minimales de vertices

Un subconjunto S ⊂ V es un separador si dos vertices que estan en lamisma componente conexa de G estan en diferentes componentesconexas de G \ S .

Si a y b son dos vertices separados por S , se llama ab-separador.

S es un separador (resp. ab-separador) minimal si ningun subconjuntopropio de S es un separador (resp. ab-separador).

ab-separador minimalseparador minimal

S es un separador minimal de vertices si es un ab-separador minimalpara algun par de vertices ab.

Un separador minimal de vertices no necesariamente es un separadorminimal.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 124 / 170

Page 125: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Separadores minimales de vertices

Teorema (Dirac, 1961)

Un grafo es cordal si y solo si todo separador minimal de vertices escompleto.

⇐) Sea v0v1v2...vk , k ≥ 3, un ciclo, y consideremos v0v2. O v0v2 es una cuerda oexiste un v0v2-separador minimal, que tiene que contener a v1 y a algun vi ,3 ≤ i ≤ k . Como es completo, v1vi es una cuerda.

⇒) Sea S un ab-separador minimal ysupongamos que x e y en S son noadyacentes. Sean A, B las componentesconexas de G \ S que contienen a a y b,resp. Como S es minimal, tanto x comoy tienen vecinos en A y en B. Sean PA yPB caminos entre x e y con interior enA y B, resp., de longitud mınima. Elciclo xPAyPBx no tiene cuerdas. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 125 / 170

Page 126: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Orden de eliminacion perfecto

Un vertice v es simplicial si N[v ] induce un subgrafo completo en G .

Un orden v1, v2, . . . , vn de los vertices de un grafo G es un orden deeliminacion perfecto si, para cada 2 ≤ i ≤ n − 2 vi es simplicial enG [vi , vi+1, . . . , vn].

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 126 / 170

Page 127: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Orden de eliminacion perfecto

Teorema (Dirac, 1961)

Todo grafo cordal tiene un vertice simplicial. Si no es completo, tiene dosvertices simpliciales no adyacentes.

Demo. Si el grafo es completo o n = 2, trivial. Sino, induccion usando unseparador minimal de vertices. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 127 / 170

Page 128: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Orden de eliminacion perfecto

Teorema (Fulkerson y Gross, 1965)

Un grafo es cordal si y solo si tiene un orden de eliminacion perfecto.

Demo. (⇒) Por induccion. (⇐) Consideremos un ciclo y el vertice de menorındice en el orden. 2

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 128 / 170

Page 129: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Problemas algorıtmicos en grafos cordales

Como podemos resolver clique maxima, conjunto independientemaximo, coloreo, y cubrimiento por cliques mınimo en grafos

cordales?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 129 / 170

Page 130: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Problemas algorıtmicos en grafos cordales

Clique maxima. Sea v un vertice simplicial:

o v pertenece a una clique maxima o no... pero v pertenece a una solaclique maximal! Entonces...

ω(G ) = max{|N[v ]|, ω(G − v)}

Nota: hay a lo sumo n cliques maximales! (y si G tiene al menos unaarista, a lo sumo n − 1)

Conjunto independiente maximo. Un conjunto independiente maximo ocontiene a v o contiene algun vecino w , pero como N[w ] ⊇ N[v ],podemos reemplazarlo por v , entonces...

α(G ) = 1 + α(G − N[v ])

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 130 / 170

Page 131: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Problemas algorıtmicos en grafos cordales

Coloreo. Sea v un vertice simplicial:

Siempre podemos extender un coloreo optimo de G − v a G sin agregarcolores nuevos salvo que χ(G − v) < d(v). Pero en ese caso agregamos unnuevo color y, como N[v ] es una clique, eso es optimo. Entonces...

χ(G ) = max{|N[v ]|, χ(G − v)}

Cubrimiento por cliques. Tenemos que cubrir v y pertenece a una unicaclique, entonces usamos N[v ] y continuamos...

τ(G ) = 1 + τ(G − N[v ])

Estas recursiones no suenan familiares?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 131 / 170

Page 132: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Los grafos cordales son perfectos

Para todo grafo cordal G , ω(G ) = χ(G ) y α(G ) = τ(G ), y eso vale paratodos los subgrafos inducidos porque la clase es hereditaria.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 132 / 170

Page 133: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Y conjunto dominante mınimo?

Podemos evitar usar vertices simpliciales (salvo que el grafo sea completo),pero no es tan facil “patear” el problema a un grafo mas chico. Dehecho... el problema es NP-completo.

Dada una formula SAT de n variables y k clausulas, hay un conjuntodominante de tamano a lo sumo n en el grafo?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 133 / 170

Page 134: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Grafos split

El problema de conjunto dominante mınimo es NP-completo aun engrafos split, una subclase de los grafos cordales.

Un grafo G es split si V (G ) se puede particionar en una clique y unconjunto independiente.

Split = {C4,C5, 2K2}-free

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 134 / 170

Page 135: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Arboles clique

Un arbol clique de un grafo G es un arbol T (G ) cuyos vertices son lascliques maximales de G y tal que, para cada vertice v ∈ G , las cliquesmaximales de G que contienen a v forman un subgrafo conexo de T (G ).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 135 / 170

Page 136: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Arboles clique

Teorema (Gavril/Buneman/Walter, 1974)

Un grafo es cordal sii admite un arbol clique.

Como podemos calcular los separadores minimales de vertices apartir de un arbol clique?

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 136 / 170

Page 137: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Encontrando un arbol clique

Teorema (Bernstein y Goodman, 1981)

Todo arbol clique de un grafo cordal es un arbol generador de pesomaximo de su grafo clique pesado, y viceversa.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 137 / 170

Page 138: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos cordales

Grafos cordales como grafos de interseccion

Teorema (Gavril, 1974)

Un grafo es cordal sii es el grafo interseccion de subarboles de un arbol.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 138 / 170

Page 139: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos

Son los grafos interseccion de intervalos de una recta.

Entonces, es un caso particular de grafo cordal. Como son los arbolesclique de los grafos de intervalos?

Admiten un arbol clique que es un camino, pero pueden admitir otros.

Cuales son los ordenes de eliminacion perfectos?

El orden de los extremos derechos de los vertices es uno.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 139 / 170

Page 140: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos

Caracterizacion por subgrafos inducidos prohibidos (Lekkerkerker yBoland, 1962)

Una tripla asteroidal es un conjunto de tres vertices tales que existeun camino entre todo par de ellos que evita la vecindad del tercero(en particular, son mutuamente no adyacentes).

Teorema (Lekkerkerker y Boland, 1962). Un grafo es de intervalos siies cordal y no tiene triplas asteroidales.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 140 / 170

Page 141: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos

El orden de los extremos derechos de un grafo de intervalos satisfacela siguiente propiedad: para cada tripla (r , s, t) con r < s < t, sivtvr ∈ E , entonces vtvs ∈ E .

12 3

4

56

78

En otras palabras, los vecinos del vertice t con ındice menor que t sont − 1, t − 2, . . . , t − d .

Mas aun, G es un grafo de intervalos sii existe un orden de susvertices que cumple con la propiedad mencionada. (Ramalingam yPandu Rangan, 1988 / Olariu, 1991).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 141 / 170

Page 142: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos

Teorema (Fulkerson and Gross, 1965)

Un grafo G es de intervalos si y solo si sus cliques pueden ser ordenadastal que, para cada vertice v de G , las cliques que contienen v sonconsecutivas.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 142 / 170

Page 143: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos propios

Un grafo es de intervalos propio si tiene un modelo de intervalos en el cualno hay un intervalo propiamente contenido en otro.

Teorema (Roberts, 1969)

Un grafo G es un grafo de intervalos propio si y solo si sus vertices puedenser ordenados tal que, para cada clique maximal M de G , los vertices queforman M son consecutivos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 143 / 170

Page 144: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos de intervalos propios

Un grafo es un grafo de intervalos unitarios si admite un modelo con todoslos intervalos de la misma longitud.

Teorema (Roberts, 1969)

Intervalos propios = intervalos unitarios = intervalos ∩ claw-free.

claw

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 144 / 170

Page 145: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos de intervalos

Grafos amigo-enemigo

Un grafo G = (V ,E ) es amigo-enemigo en un cierto espacio metrico si susvertices pueden ser embebidos en ese espacio de manera tal que para todovertice v de G , y todo par de vertices w , z con vw ∈ E y vz 6∈ E ,d(v ,w) < d(v , z).

Ejercicio: Probar que un grafo es amigo-enemigo en la recta si y solo si esde intervalos propios.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 145 / 170

Page 146: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos arco-circulares

Un grafo arco-circular es el grafo interseccion de arcos en un cırculo.

Se usa como modelo para problemas de horarios en situaciones“non-stop”.Subgrafos inducidos prohibidos minimales: abiertoCaracterizacion por obstaculos prohibidos, del estilo de las triplasasteroidales [Hell, Francis y Stacho, 2014]Reconocimiento, clique maxima, 3-coloreo: polinomialConjunto dominante, cub. cliques, conjunto independiente: linealColoreo: NP-completo [referencias en graphclasses.org]

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 146 / 170

Page 147: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos arco-circulares

Subclases: propios (modelo sin arcos contenidos en otros), unitarios(modelo con arcos de la misma longitud), Helly (modelo tal que todaclique tiene un punto comun), normales (modelo tal que no hay dosarcos que cubran el cırculo), combinaciones.

Los grafos arco-circulares propios estan caracterizados por subgrafosinducidos prohibidos [Bang Jensen y Hell], y se pueden colorear entiempo polinomial.

Surveys recientes: Lin y Szwarcfiter (algorıtmico), Duran, Grippo ySafe (caracterizaciones) .

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 147 / 170

Page 148: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares

Un grafo circular es el grafo interseccion de cuerdas de un cırculo.

Son una superclase de los arboles.

No son comparables con los arco-circulares: bipartite-claw, 5-wheel.

bipartite claw 5-wheel

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 148 / 170

Page 149: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares

Los grafos circulares son una superclase de los grafos de permutacion: losde permutacion son aquellos grafos circulares que admiten un ecuador(agregar un vertice universal).

Ejemplo: C5 no es de permutacion ⇒ W5 no es circular.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 149 / 170

Page 150: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares

Sirven como modelo para asignacion de trenes en un area de reposocon/sin “stop” nocturno.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 150 / 170

Page 151: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares: complementacion local

Dado un grafo G y un vertice v , la complementacion local de G conrespecto a v consiste en invertir las adyacencias en N(v).

Equivalencia local: grafo obtenido por una secuencia decomplementaciones locales.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 151 / 170

Page 152: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares: complementacion local

Teorema (Bouchet, 1994)

La clase de grafos circulares es cerrada bajo complementacion local.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 152 / 170

Page 153: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares: complementacion local

Teorema (Bouchet, 1994)

Un grafo G es circular sii ningun grafo locamente equivalente a G contieneW5, W7, o BW3 como subgrafo inducido.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 153 / 170

Page 154: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares: descomposicion split

Sean G1 y G2 dos grafos disjuntos con al menos tres vertices, y seanv1 ∈ V (G1), v2 ∈ V (G2). La composicion split de G1 y G2 con respecto av1 y v2 es el grafo G1 ∗ G2 tal queV (G1 ∗ G2) = (V (G1) ∪ V (G2)) \ {v1, v2} y E (G1 ∗ G2) =E (G1 − {v1}) ∪ E (G2 − {v2}) ∪ {uv : u ∈ NG1(v1), v ∈ NG2(v2)}.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 154 / 170

Page 155: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares: descomposicion split

Teorema (Bouchet, 1987)

Sea G un grafo que tiene una descomposicion split G = G1 ∗ G2.Entonces, G es circular sii G1 y G2 son circulares.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 155 / 170

Page 156: Clases de grafos y problemas de optimización combinatoria

Grafos de interseccion Grafos arco-circulares y circulares

Grafos circulares

Subclases: unitarios (modelo con todas las cuerdas de la mismalongitud) = arco-circulares unitarios, Helly (modelo tal que todaclique comparte un punto).

Que grafo es circular pero no circular Helly?

Circular Helly = circular sin diamantes (conjeturado por Duran en2000, demostrado por Daligault, Goncalves y Rao, 2010)

Caracterizacion por subgrafos inducidos prohibidos minimales: abierta

Reconocimiento, clique maxima, conjunto independiente, 3-coloreo:polinomial

Conjunto dominante, cub. cliques, coloreo: NP-completos

En grafos de permutacion, son todos polinomiales [referencias engraphclasses.org]

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 156 / 170

Page 157: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Cografos

Un cografo es un grafo sin P4 inducido (camino de 4 vertices sincuerdas).

Propiedad [Corneil, Perl, y Stewart, 1981]: Si G es un cografo notrivial, entonces o G o G no es conexo.Demo. Considerar G minimal con la propiedad de que G y G sonconexos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 157 / 170

Page 158: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Cografos

En el primer caso, G es la union de dos cografos mas chicos(G = G1 ∪ G2).

En el segundo caso, G es el join de dos cografos mas chicos(G = G1 ∨ G2).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 158 / 170

Page 159: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Problemas algorıtmicos en cografos

Clique maxima. Sea G0 un grafo trivial. Entonces ω(G0) = 1,ω(G1 ∪ G2) = max{ω(G1), ω(G2)}, y ω(G1 ∨ G2) = ω(G1) + ω(G2).

Conjunto independiente. α(G0) = 1, α(G1 ∪ G2) = α(G1) + α(G2),y α(G1 ∨ G2) = max{α(G1), α(G2)}.Coloreo. χ(G0) = 1, χ(G1 ∪ G2) = max{χ(G1), χ(G2)}, yχ(G1 ∨ G2) = χ(G1) + χ(G2).

Cubrimiento por cliques. τ(G0) = 1, τ(G1 ∪G2) = τ(G1) + τ(G2), yτ(G1 ∨ G2) = max{τ(G1), τ(G2)}.En particular, eso muestra que los cografos son perfectos.

Conjunto dominante. γ(G0) = 1, γ(G1 ∪ G2) = γ(G1) + γ(G2), yγ(G1 ∨ G2) = 1 si G tiene un vertice universal, y 2 sino.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 159 / 170

Page 160: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Otro algoritmo para colorear cografos....

El algoritmo goloso basado en elegir sucesivamente conjuntos independientesmaximos funciona para cografos!! (aun eligiendo simplemente maximales!)

Lemma [Corneil, Lerchs, y Stewart Burlingham, 1984]

Sea G un cografo. Entonces todo conjunto independiente maximal de G intersecatoda clique maximal de G .

Demo. Por induccion, usando la descomposicion. Para el grafo trivial vale. SiG = G1 ∪ G2, todo conjunto independiente maximal esta compuesto por unconjunto independiente maximal de G1 y uno de G2, y por hipotesis inductiva laparte en Gi interseca todas las cliques maximales de Gi , para i = 1, 2, y esas sonexactamente las cliques maximales de G . Si G = G1 ∨ G2, todo conjuntoindependiente maximal de G es un conjunto independiente maximal de G1 o unode G2, pero toda clique maximal se compone de una de G1 y una de G2, yentonces por hipotesis inductiva el conjunto independiente interseca la clique, oen su parte en G1 o en su parte en G2. 2

Usando el lema, el resultado sigue por induccion en ω(G ).

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 160 / 170

Page 161: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Un algoritmo mas....

El algoritmo greedy (darle a v el primer color no usado por un vecino)funciona para cografos para cualquier orden de los vertices!! [Chvatal,1984].

Notemos que el conjunto de vertices que reciben color i es un conjuntoindependiente maximal en el subgrafo de G inducido por los vertices quereciben color al menos i .

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 161 / 170

Page 162: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Descomposicion modular

Un modulo de un grafo G = (V ,E ) es un conjunto X ⊆ V de verticestal que todos los vertices en X tienen los mismos vecinos en V \ X .

V y los conjuntos de un solo vertice de V se llaman modulos triviales.

Un modulo X es fuerte si para todo otro modulo Y , o X ∩ Y = ∅ oX ⊆ Y o Y ⊆ X .

Si X es un modulo fuerte de G entonces Y es un modulo fuerte deG [X ] sii Y ⊆ X e Y es un modulo fuerte de G .

Un modulo es maximal si no esta contenido en otro modulo no trivial.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 162 / 170

Page 163: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Descomposicion modular

Entonces, los modulos fuertes se pueden organizar en una estructurade arbol donde los vertices son las hojas, y hay O(n) modulos fuertes(no hay vertices de grado 2 en el arbol salvo quizas la raız).

Esta estructura de arbol se llama descomposicion modular de G y sepuede calcular en tiempo polinomial.

Hay tres tipos de nodos X en el arbol: paralelos (G [X ] disconexo)serie (G [X ] disconexo) y primos o vecindad (G [X ] y G [X ] conexos).

En cografos, solo hay nodos serie y paralelos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 163 / 170

Page 164: Clases de grafos y problemas de optimización combinatoria

Descomposicion modular

Descomposicion modular

Ejemplo:

Si podemos caracterizar los modulos primos de una clase de grafos y lidiarcon ellos, podemos extender muchos algoritmos para cografos. Ejemplos:grafos P4-sparse, P4-tidy, y muchas de las clases definidas acotando elnumero de P4’s.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 164 / 170

Page 165: Clases de grafos y problemas de optimización combinatoria

Temas de tesis

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 165 / 170

Page 166: Clases de grafos y problemas de optimización combinatoria

Algoritmos en clases de grafos

Algoritmos exactos polinomiales para problemas de optimizacion engrafos que son en general NP-completos, pero tratables en clases de grafosmas restringidas.

Ejemplos:

coloreo en grafos sin ciertos subgrafos inducidos (resultados recientespara 3-coloreo en grafos P7-free).

conjunto independiente maximo en grafos sin ciertos subgrafosinducidos (resultados recientes para conjunto independiente maximoen grafos claw-free y cubrimiento por cliques mınimo en grafosclaw-free perfectos).

variantes de conjunto dominante mınimo en ciertas clases de grafos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 166 / 170

Page 167: Clases de grafos y problemas de optimización combinatoria

Casos abiertos de coloreo

Complejidad de k-coloreo en la clase de grafos Pt-free:

k\t 4 5 6 7 8 . . .

3 O(m) [1] O(nα) [4] O(mnα) [5] P [6] ? . . .

4 O(m) [1] P [2] ? NPC [3] NPC . . .

5 O(m) [1] P [2] NPC [3] NPC NPC . . .

6 O(m) [1] P [2] NPC NPC NPC . . .

......

......

......

. . .

[1] Chvatal, 1984, Corneil, Perl, Stewart 1984.[2] Hoang, Kaminski, Lozin, Sawada, Shu 2010.[3] Huang 2013.[4] Mellin 2002.[5] Randerath, Schiermeyer 2004.[6] Bonomo, Chudnovsky, Maceli, Schaudt, Stein, Zhong, 2016.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 167 / 170

Page 168: Clases de grafos y problemas de optimización combinatoria

Caracterizaciones estructurales de clases de grafos

Ejemplo: La clase esta definida por igualdad de ciertos parametros o poruna representacion geometrica y buscamos una caracterizacion porsubgrafos inducidos prohibidos; o la clase esta definida por subgrafosinducidos prohibidos y buscamos propiedades de descomposicion de esosgrafos, que puedan ser utiles al desarrollo de algoritmos.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 168 / 170

Page 169: Clases de grafos y problemas de optimización combinatoria

Grafos k-thin

Definicion

Un grafo G = (V ,E ) es k-thin si existe un orden v1, . . . , vn de V y una particionde V en k clases tal que para cada tripla (r , s, t) con r < s < t, si vr , vs estan enla misma clase y vtvr ∈ E , entonces vtvs ∈ E .

12

3

45

67

8

9

10

El mınimo k tal que G es k-thin se llama la thinness de G .

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 169 / 170

Page 170: Clases de grafos y problemas de optimización combinatoria

Problemas abiertos

Caracterizar grafos k-thin por subgrafos inducidos prohibidos.

Complejidad computacional de calcular la thinness de un grafo.

Detectar problemas que sean polinomiales en grafos de thinnessacotada.

Flavia Bonomo Grafos y optimizacion combinatoria UMA 2016 170 / 170