Coordinación de Ciencias Computacionales - INAOE (Mini) Cursos Propedéuticos 2012 Ciencias...

47
Coordinación de Ciencias Computacionales - INAOE Matemáticas Discretas (Mini) Cursos Propedéuticos 2012 Ciencias Computacionales INAOE Dr. Hugo Jair Escalante [email protected] http://ccc.inaoep.mx/~hugojair Oficina 8319 Este material se basa en versiones previas del mismo por: Dr. Enrique Muñoz de Cote Dr. Enrique Sucar Dr. Luis Villaseñor

Transcript of Coordinación de Ciencias Computacionales - INAOE (Mini) Cursos Propedéuticos 2012 Ciencias...

Conjuntos

Matemticas Discretas(Mini) Cursos Propeduticos 2012Ciencias ComputacionalesINAOE

Dr. Hugo Jair [email protected]://ccc.inaoep.mx/~hugojair Oficina 8319

Este material se basa en versiones previas del mismo por: Dr. Enrique Muoz de CoteDr. Enrique SucarDr. Luis VillaseorCoordinacin de Ciencias Computacionales - INAOE1QUINTA PARTEGrafosDefiniciones bsicasCaminos y ciclosGrafos eulerianos y hamiltonianosIsomorfismorboles

2GeneralidadesLos grafos son estructuras discretas compuestas por vrtices y aristas que conectan pares de esos puntos

Son una abstraccin til para modelar situaciones tales como:Redes de computadorasEstructuras de datosRedes elctricas y telefnicasCircuitos elctricosSistemas carreterosSistemas de toma de decisiones3Qu son?Un grafo es una representacin grfica de objetos y relaciones binarias entre stos. Un grafo se representa grficamente por medio de puntos o pequeos crculos, que designan vrtices, y lneas que los unen, que representan las aristas

154324Grafos dirigidosUn grafo dirigido/dgrafo G = (V, E) consiste de un conjunto de vrtices V (o nodos) y un conjunto de aristas (o arcos) dirigidas E VVNote que las aristas (a, b) tiene una direccin; un vrtice fuente/origen a y un vrtice terminal b

V={1,2,3,4,5} E = {(1,3), (2,3), (3,4), (4,3), (5,3), (5,4), (5,5)}

154325Grafos simplesUn grafo no dirigido G = (V,E) sin auto lazos se denomina grafo simpleE se determina por una relacin simtrica, antireflexiva, tal que {a,b} E si y solo si (a,b)R

V={1,2,3,4,5}E = {{1,2}, {1,3}, {2,3}, {3,4}, {3,5}, {4,5}, {2,5}}154326DefinicionesSi e={u, v} es una arista entonces se dice que los vrtices u y v son los extremos de e

Un vrtice y una arista son incidentes si el vrtice es uno de los extremos de la arista

Dos vrtices u y v son adyacentes si {u, v} es una arista7Representacin de grafos simples1234{3,4}{2,4}{1,3}{2,3}{1,4}{1,2}8Ejemplo: vrticesCules vrtices son adyacentes a 1?1234e3e1e2e49Ejemplo: vrticesCules vrtices son adyacentes a 1?1 es adyacente a 2 y 32 es adyacente a 1 y 33 es adyacente a 1 y 24 no es adyacente a vrtice alguno1234e3e1e2e410Ejemplo: vrticesCules aristas son incidentes a 1?e1, e2, e4 son incidentes a 22 es incidente con e1, e2, e4 3 es incidente con e2, e3 4 no es incidente con ninguna arista1234e3e1e2e411DefinicionesDos aristas asociadas al mismo par de vrtices son aristas paralelas

Una arista incidente en un slo vrtice es un ciclo

Un vrtice que no es incidente en ninguna arista es un vrtice aislado12Matriz de adyacenciaForma de representar grafos y relaciones1234

13EjemploCul es la matriz de adyacencia del grafo de la figura?1234

14Tipos de grafosUn grafo no dirigido sin auto lazos (un ciclo sobre un mismo vrtice) se denomina grafo simple

Un grafo con aristas paralelas (dos aristas pueden conectar un mismo par de vrtices) es llamado multigrafo

Un grafo completo es un grafo con arcos entre cada par de vrtices

Un grafo pesado es aquel que tiene pesos asociados a nodos y/o arcos

15Grafos completosSe llama grafo completo en n vrtices a un grafo con n vrtices v1, v2, , vn donde para todo a y b que pertenecen a V existe una arista {a, b}. Este grafo se denota Kn, y el nmero de aristas de Kn es n(n-1)/2

Cada par de vrtices distintos comparte un arista16GradosEl grado de un vrtice v de un grafo es el nmero g(v) de aristas incidentes con l. Si g(v) = 0 se dice que v es un vrtice aisladoEn grafos dirigidos existen grado de entrada y grado de salida

La sucesin de grados de un grafo se obtiene ordenando en forma creciente los grados de todos los vrtices17Ejemplo: grado de un vrticeCul es grado del vrtice 2?g(2)=1+1+1+2+2=7123e1e3e2e4e5e618Ejemplo: grado de un vrticeCules son los grado de entrada y salida de los vrtices del grafo mostrado en la figura?g-(1) = 0g-(2) = 3g-(3) = 4g+(1) = 2g+(2) = 3g+(3) = 212319Teorema de EulerEn todo grafo G=(V, E) se cumple

Las aristas se pueden contar considerando cuantas son incidentes en cada vrtice y sumando todos los nmeros obtenidos. Pero as cada arista resulta contada dos veces, una para cada uno de sus extremos

20EjemplosSi un grafo tiene una sucesin de grados 0, 0, 1, 2, 3, 4, Cuntas aristas tiene?(0+0+1+2+3+4)/2=5

Existe algn grafo cuya sucesin de grados sea 1, 1, 2, 3, 4?No, dado que 1+1+2+3+4=11 es impar21SubgrafosSi G = (V, E) y H = (W, F) son grafos tales que W V y F E, entonces se dice que H es un subgrafo de G y que G es un supergrafo de H. Cada arista de F es incidente con vrtices en W22Ejemplobbbaceddcaed23Caminos y ciclosUn camino de longitud n+1 es un grafo G = (V, E) con V = {v0, v1, v2, . . . , vn} y E = {v0v1, v1v2, . . . , vn1vn}. Un camino se representa dando la sucesin v0v1 . . . vn de sus vrtices, entendiendo que las aristas son v0v1, v1v2,. . . , vn1vn. A v0 y vn se les llama extremos del camino.Camino: Secuencia ordenada de vrtices y arcos.Recorrido: Camino sin aristas repetidasCamino cerrado: Cuyo inicio es igual que el finalCamino elemental: Sin vrtices repetidos.Camino simple: Camino elemental sin aristas repetidas.24Caminos y ciclosUn ciclo de longitud n es un grafo G = (V,E) de orden n3, con vrtices v0, v1, . . . , vn1 y aristas v0v1, v1v2,. . . , vn2vn1 y vn1v0.

Ciclo: Camino elemental cerrado (i.e., sin vrtices repetidos).Circuito: recorrido cerrado (i.e., sin aristas repetidas).25EjemploCamino de a-b{a, b},{b, d}, {d, c}, {c, e}, {e, d}, {d, b}Camino de b a fb c d e c f Camino de f a a{f, c}, {c, e}, {e, d}, {d, a}Camino de c a cc e d c

abdcfe26Distancia y dimetroLa distancia d(u, v) entre dos vrtices u y v de un grafo es la longitud del camino ms corto de u a v. Si no existe ningn camino de u a v entonces d(u, v) = .

El dimetro de G es la mxima distancia entre dos vrtices distintos de G y se denota diam(G).

27Grafo conexoUn grafo G = (V, E) es conexo si para cualquier par de vrtices u, y v existe un camino en G que los une, es decir un camino con extremos u y v. Equivalentemente, G es conexo si diam(G) <

28EjemploSea G=(V, E) un grafo no dirigido en V={a, b, c, d, e, f, g}El grafo no es conexoLos dos sub-grafos son conexosabdfceg29Problemas de Caminos y CircuitosEncontrar si existe un camino entre un par de vrtices

Encontrar el camino ms corto entre un par de vrtices

Encontrar camino que pase por cada arista una sola vez (Euler)

Encontrar circuito que pase por cada vrtice una sola vez (Hamilton)30Camino simple de EulerUn camino simple de Euler es un camino que pasa por todas las aristas exactamente una sola vez. Los puentes de Knigsberg

31Camino simple de EulerTeorema: (a) Si un grafo conexo tiene ms de dos nodos con grado impar, no existe un camino simple de Euler.

(b) Si existen exactamente dos vrtices de grado impar, el grafo se puede recorrer, pero el camino ha de empezar en uno de los dos vrtices de grado impar y terminar en el otro.

(c) Si no existen vrtices de grado impar, el grafo se puede recorrer. El camino siempre ser cerrado. 32Ciclo de HamiltonSean G=(V, E) un grafo, se dice que G tiene un ciclo de Hamilton si existe un ciclo en G que incluye todos y cada uno de los vrtices en V.33EjemploEn el grafo de la figura, las aristas {a, b}, {b, c}, {c, f}, {f, e}, {e, d}, {d, g}, {g, h} y {h, i} producen una camino de Hamiltonabedcfhgi34Existe solucin?Dado un grafo cualquiera, es posible determinar si posee un camino Hamiltoniano?

Es una pregunta muy parecida a la de Euler, as que se esperara una respuesta del mismo tipo35Grafos bipartitosUn grafo G=(V, E) se dice que es bipartito si el conjunto de vrtices V puede particionarse en dos subconjuntos V1 y V2 tales que todas las aristas tengan un extremo en V1 y el otro en V2Grafos bi-cromticos: los vrtices pueden ser coloreados usando dos colores de tal forma que dos vrtices adyacentes no tienen el mismo color36Ejemplo: grafo bipartitoEl grafo de la figura es bipartito37Clique Grafo completo: cada par de nodos distintos son adyacentes

Conjunto completo: subconjunto W de G que induce un subgrafo completo de G

Clique: subconjunto de nodos que es conjunto completo y mximo (no hay un conjunto completo que lo contenga)38Cliques 39Cliques 40Cliques 41IsomorfismoDos grafos G={V, E} y G={V, E} son isomorfos si existe una biyeccin f: V V que preserva la relacin de adyacencia, es decir tal que{u, v} E si y solo si {f(u), f(v)} E

Dos grafos isomorfos deben tener el mismo nmero de vrtices. Todas las propiedades que se deriven de la relacin de adyacencia deben ser idnticas: mismo nmero de aristas y sucesiones de grado42Ejemplo: isomorfismoLos dos grafos representados en la figura son isomorfos:

ABCDABCD43EjemploabdcwxzyGrafos isomorfos44EjemploaxzebwyfcvudGrafos no isomorfos45Tipos de isomorfismosIsomorfismo de grafoscorrespondencia 1:1 entre dos grafos G1 - G2

Isomorfismo de subgrafoscorrespondencia entre un grafo G1 y los subgrafos de G2

Doble isomorfismo de subgrafoscorrespondencia entre los subgrafos de G1 y los subgrafos de G246