Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo....

50
Análisis de Algoritmos Teoría de grafos Dra. Elisa Schaeffer [email protected] PISIS / FIME / UANL Teor´ ıa de grafos– p. 1

Transcript of Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo....

Page 1: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Análisis de Algoritmos

Teoría de grafos

Dra. Elisa Schaeffer

[email protected]

PISIS / FIME / UANL

Teorıa de grafos– p. 1

Page 2: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos

Un grafo G es un par de conjuntos G = (V,E)

Teorıa de grafos– p. 2

Page 3: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos

Un grafo G es un par de conjuntos G = (V,E)

V = un conjunto de n verticesu, v, w ∈ V

E = un conjunto de m aristas

Teorıa de grafos– p. 2

Page 4: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos

Un grafo G es un par de conjuntos G = (V,E)

V = un conjunto de n verticesu, v, w ∈ V

E = un conjunto de m aristas|V | = n, |E| = m

Teorıa de grafos– p. 2

Page 5: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Aristas

Las aristas son típicamente pares de vertices, {u, v} ∈ E

E ⊆ V × V

También se puede definir grafos donde el producto esentre más de dos “copias” del conjunto V , el cual caso sehabla de hıpergrafos.

Teorıa de grafos– p. 3

Page 6: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Complemento

El complementode G = (V,E) es un grafo G = (V, E)donde

∀v 6= u :(

{v, u} ∈ E ⇔ {v, u} /∈ E)

.

Teorıa de grafos– p. 4

Page 7: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos especiales

Un grafo es plano si se puede dibujar en dos dimensionesasí que ninguna arista cruza a otra arista.

Teorıa de grafos– p. 5

Page 8: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos especiales

Un grafo es plano si se puede dibujar en dos dimensionesasí que ninguna arista cruza a otra arista.

En un grafo no dirigido , los vértices v y w tienen unpapel igual en la arista {v, u}.

Teorıa de grafos– p. 5

Page 9: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos especiales

Un grafo es plano si se puede dibujar en dos dimensionesasí que ninguna arista cruza a otra arista.

En un grafo no dirigido , los vértices v y w tienen unpapel igual en la arista {v, u}.

Si las aristas tienen dirección, G es dirigido (tambiéndigrafo).

Teorıa de grafos– p. 5

Page 10: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos especiales

Un grafo es plano si se puede dibujar en dos dimensionesasí que ninguna arista cruza a otra arista.

En un grafo no dirigido , los vértices v y w tienen unpapel igual en la arista {v, u}.

Si las aristas tienen dirección, G es dirigido (tambiéndigrafo).

En una arista dirigida 〈v, w〉:

v es el origen (o inicio) de la arista

w es el destino (o fin) de la arista

Teorıa de grafos– p. 5

Page 11: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos reflexivos

Un buclees una arista reflexiva, donde coinciden elvértice de origen y el vértice de destino: {v, v} o 〈v, v〉.

Si un grafo G no cuente con ningún bucle, el grafo es noreflexivo.

Teorıa de grafos– p. 6

Page 12: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Más clases de grafos

E podría ser un multiconjunto: más de una arista entre unpar de vértices.

Teorıa de grafos– p. 7

Page 13: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Más clases de grafos

E podría ser un multiconjunto: más de una arista entre unpar de vértices.

Si no se permiten aristas múltiples, el grafo es simple.

Teorıa de grafos– p. 7

Page 14: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Más clases de grafos

E podría ser un multiconjunto: más de una arista entre unpar de vértices.

Si no se permiten aristas múltiples, el grafo es simple.

Si se asignan pesos ω (v, w) a las aristas, el grafo esponderado.

Teorıa de grafos– p. 7

Page 15: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Más clases de grafos

E podría ser un multiconjunto: más de una arista entre unpar de vértices.

Si no se permiten aristas múltiples, el grafo es simple.

Si se asignan pesos ω (v, w) a las aristas, el grafo esponderado.

Si se asigna identidad a los vértices o las aristas, el grafoes etiquetado.

Teorıa de grafos– p. 7

Page 16: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Adyacencia

{v1, v2} y {w1, w2} son adyacentessi tienen un vértice encomún:

|{v1, vw} ∩ {w1, w2}| ≥ 1.

Una arista es incidentea un vértice si ésta lo une a otrovértice.

Teorıa de grafos– p. 8

Page 17: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Vecinos

v y w son adyacentessi una arista los une:

{v, w} ∈ E.

Vértices adyacentes son llamados vecinos.El conjunto de vecinos de v es su vecindario, Γ (v).

Teorıa de grafos– p. 9

Page 18: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Matriz de adyacencia

La matriz A que corresponde a la relación E se llama lamatriz de adyacenciadel grafo.

Teorıa de grafos– p. 10

Page 19: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Matriz de adyacencia

La matriz A que corresponde a la relación E se llama lamatriz de adyacenciadel grafo.

Es necesario etiquetar los vértices para que seanidentificados como v1, v2, . . . , vn.

Teorıa de grafos– p. 10

Page 20: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Matriz de adyacencia

La matriz A que corresponde a la relación E se llama lamatriz de adyacenciadel grafo.

Es necesario etiquetar los vértices para que seanidentificados como v1, v2, . . . , vn.

Para un grafo no dirigido A es simetricaMultigrafos : una matriz enteraA

′ donde a′ij ≥ 0 es el

número de aristas entre vi y vj

Grafos ponderados: una matriz (real) A′′ donde a′′ij es el

peso de la arista {vi, vj} o cero si no hay tal arista

Teorıa de grafos– p. 10

Page 21: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grado

El grado deg (v) es el número de aristas incidentes a v.

Teorıa de grafos– p. 11

Page 22: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grado

El grado deg (v) es el número de aristas incidentes a v.

Grafos dirigidos:

grado de salida−→deg (v) = el número de aristas que

tienen su origen en v

grado de entrada←−deg (v) = el número de aristas que

tienen su destino en v

Teorıa de grafos– p. 11

Page 23: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grado

El grado deg (v) es el número de aristas incidentes a v.

Grafos dirigidos:

grado de salida−→deg (v) = el número de aristas que

tienen su origen en v

grado de entrada←−deg (v) = el número de aristas que

tienen su destino en v

El grado total de un vértice de un grafo dirigido es

deg (v) =←−deg (v) +

−→deg (v) .

Teorıa de grafos– p. 11

Page 24: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Más sobre grados

En un grafo simple no dirigido, el grado deg (vi) del vérticevi es la suma de laij esima fila deA.

v∈V

deg (v) = 2m

En un grafo simple no reflexivo: deg (v) = |Γ (v)|

Si todos los grados son k, el grafo es k-regularUn grafo n− 1-regular se llama un grafo completoKn

Teorıa de grafos– p. 12

Page 25: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos bipartitos

Un grafo bipartito es un grafo G = (V,E) cuyos vérticesse pueden separar en dos conjuntos

U ∩W = ∅, U ∪W = V

así que

{u,w} ∈ E ⇒ (u ∈ U ∧ w ∈ W ) ∨ (u ∈ W ∧ w ∈ U).

Teorıa de grafos– p. 13

Page 26: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Grafos bipartitos

Un grafo bipartito es un grafo G = (V,E) cuyos vérticesse pueden separar en dos conjuntos

U ∩W = ∅, U ∪W = V

así que

{u,w} ∈ E ⇒ (u ∈ U ∧ w ∈ W ) ∨ (u ∈ W ∧ w ∈ U).

Grafo bipartito completo : están presentes todas lasaristas permitidas, K|U |,|W |.

Teorıa de grafos– p. 13

Page 27: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Densidad

El número máximo posible de aristas en un grafo simple es

mmax =

(

n

2

)

=n(n− 1)

2.

Teorıa de grafos– p. 14

Page 28: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Densidad

El número máximo posible de aristas en un grafo simple es

mmax =

(

n

2

)

=n(n− 1)

2.

Para Kn, tenemos m = mmax.

Teorıa de grafos– p. 14

Page 29: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Densidad

El número máximo posible de aristas en un grafo simple es

mmax =

(

n

2

)

=n(n− 1)

2.

Para Kn, tenemos m = mmax.

Densidad:δ (G) =

m

mmax

=m(

n

2

) .

Teorıa de grafos– p. 14

Page 30: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Densidad

El número máximo posible de aristas en un grafo simple es

mmax =

(

n

2

)

=n(n− 1)

2.

Para Kn, tenemos m = mmax.

Densidad:δ (G) =

m

mmax

=m(

n

2

) .

Un grafo densotiene δ (G) ≈ 1 y un grafo escasotieneδ (G)≪ 1.

Teorıa de grafos– p. 14

Page 31: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Caminos y distancias

Una sucesión de aristas adyacentes que empieza en vy termina en w es un caminode v a w.

Teorıa de grafos– p. 15

Page 32: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Caminos y distancias

Una sucesión de aristas adyacentes que empieza en vy termina en w es un caminode v a w.

El largo de un camino es el número de aristas quecontiene.

Teorıa de grafos– p. 15

Page 33: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Caminos y distancias

Una sucesión de aristas adyacentes que empieza en vy termina en w es un caminode v a w.

El largo de un camino es el número de aristas quecontiene.

La distanciadist (v, w) entre v y w es el largo mínimode todos los caminos de v a w.

Teorıa de grafos– p. 15

Page 34: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Caminos y distancias

Una sucesión de aristas adyacentes que empieza en vy termina en w es un caminode v a w.

El largo de un camino es el número de aristas quecontiene.

La distanciadist (v, w) entre v y w es el largo mínimode todos los caminos de v a w.

La distancia de un vértice a si mismo es cero.

Teorıa de grafos– p. 15

Page 35: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Caminos y distancias

Una sucesión de aristas adyacentes que empieza en vy termina en w es un caminode v a w.

El largo de un camino es el número de aristas quecontiene.

La distanciadist (v, w) entre v y w es el largo mínimode todos los caminos de v a w.

La distancia de un vértice a si mismo es cero.

El diametro diam (G) de G es la distancia máxima

diam (G) = maxv∈V

w∈V

dist (v, w) .

Teorıa de grafos– p. 15

Page 36: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Ciclos

Un camino simplesolamente recorre la misma arista unavez máximo.

Teorıa de grafos– p. 16

Page 37: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Ciclos

Un camino simplesolamente recorre la misma arista unavez máximo.

Un ciclo es un camino que regresa a su vértice inicial. Ungrafo que no cuente con ningún ciclo es acíclico.

Teorıa de grafos– p. 16

Page 38: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Ciclos

Un camino simplesolamente recorre la misma arista unavez máximo.

Un ciclo es un camino que regresa a su vértice inicial. Ungrafo que no cuente con ningún ciclo es acíclico.

Entonces, un ciclo simple empieza y regresa del mismovértice, pero no visita a ningún otro vértice dos veces.

Teorıa de grafos– p. 16

Page 39: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Ciclos

Un camino simplesolamente recorre la misma arista unavez máximo.

Un ciclo es un camino que regresa a su vértice inicial. Ungrafo que no cuente con ningún ciclo es acíclico.

Entonces, un ciclo simple empieza y regresa del mismovértice, pero no visita a ningún otro vértice dos veces.

Sin embargo, la elección del punto de inicio de un ciclo esarbitrario.

Teorıa de grafos– p. 16

Page 40: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Conectividad

G es conexosi cada par de vértices está conectado porun camino.

Teorıa de grafos– p. 17

Page 41: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Conectividad

G es conexosi cada par de vértices está conectado porun camino.

Si por algunos v y w no existe ningún camino, grafo es noconexo.

Teorıa de grafos– p. 17

Page 42: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Conectividad

G es conexosi cada par de vértices está conectado porun camino.

Si por algunos v y w no existe ningún camino, grafo es noconexo.G es fuertemente conexo si cada par de vértices estáconectado por al menos dos caminos disjuntos.

Teorıa de grafos– p. 17

Page 43: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Conectividad

G es conexosi cada par de vértices está conectado porun camino.

Si por algunos v y w no existe ningún camino, grafo es noconexo.G es fuertemente conexo si cada par de vértices estáconectado por al menos dos caminos disjuntos.

Un grafo no conexo se puede dividir en dos o máscomponentes conexosque son formados por talesconjuntos de vértices de distancia definida.

Teorıa de grafos– p. 17

Page 44: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Subgrafos

G(S) = (S, F ) es un subgrafode G = (V,E) si S ⊆ V yF ⊆ E tal que

{v, w} ∈ F ⇒(

(v ∈ S) ∧ (w ∈ S))

.

Si el subgrafo contiene todas las aristas posibles, es unsubgrafo inducidopor el conjunto S.

Teorıa de grafos– p. 18

Page 45: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Subgrafos

G(S) = (S, F ) es un subgrafode G = (V,E) si S ⊆ V yF ⊆ E tal que

{v, w} ∈ F ⇒(

(v ∈ S) ∧ (w ∈ S))

.

Si el subgrafo contiene todas las aristas posibles, es unsubgrafo inducidopor el conjunto S.

Un subgrafo que completo se dice una camarilla (inglés:clique).

Teorıa de grafos– p. 18

Page 46: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Árboles

Un arbol es un grafo conexo acíclico.

Teorıa de grafos– p. 19

Page 47: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Árboles

Un arbol es un grafo conexo acíclico.

Un arbol cubriente de G = (V,E) es un subgrafo que esun árbol y contiene todos los vértices de G.

Teorıa de grafos– p. 19

Page 48: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Árboles

Un arbol es un grafo conexo acíclico.

Un arbol cubriente de G = (V,E) es un subgrafo que esun árbol y contiene todos los vértices de G.

Si el grafo es ponderado, el árbol cubriente mınimo escualquier árbol donde la suma de los pesos de sus aristases mínima.

Teorıa de grafos– p. 19

Page 49: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Árboles

Un arbol es un grafo conexo acíclico.

Un arbol cubriente de G = (V,E) es un subgrafo que esun árbol y contiene todos los vértices de G.

Si el grafo es ponderado, el árbol cubriente mınimo escualquier árbol donde la suma de los pesos de sus aristases mínima.

Un grafo G no conexo es un bosquesi cada componenteconexo de G es un árbol.

Teorıa de grafos– p. 19

Page 50: Dra. Elisa Schaeffer · Ciclos Un camino simple solamente recorre la misma arista una vez máximo. Un ciclo es un camino que regresa a su vértice inicial. Un grafo que no cuente

Tarea en clase

¿Qué tienen en común estos tres grafos?

Teorıa de grafos– p. 20