tema2 fundamentos y aplicaciones de la teoria de grafos...

18
Tema2 Fundamentos y aplicaciones de la teoria de grafos. Diagramas en árbol

Upload: vodat

Post on 02-Aug-2018

235 views

Category:

Documents


0 download

TRANSCRIPT

Tema2

Fundamentos y aplicaciones de la teoria de

grafos. Diagramas en árbol

Tema 2. grafos

2

Indice:

1.Introducción y definiciones

1.1.Introducción

1.2. Grafo simple

1.3.Multigrafo de orden p

1.4.Grafo dirigido

1.5.Redes

1.6. Orden, tamaño y grado de incidencia.

1.7 Cadenas y ciclos

1.8 Caminos y circuitos

1.9 subgrafos

2. Grafos conexos

2.1 Definición grafos conexos.

2.2 Caracterización de los grafos conexos.

Grafo orientado fuertemente conexo

3. Grafo euleriano, puentes de könisguer.

3.1 El probrela de los puentes de Krönisguer

3.2 Grafo euleriano y semieuleriano

4. grafos hamiltonianano

5 Grafos planos 6. Diagramas de árbol.

7. Matrices asociadas a un grafo

Tema 2. grafos

3

1.-INTRODUCCIÓN

La teoría de grafos nació como una rama de la Topología, y hoy en día se ha convertido en una herramienta matemática indispensable en campos muy diversos.

De forma general puede decirse que los grafos se utilizan par representar las relaciones entre los elementos de un conjunto.

Mediante los grafos podemos resolver y plantear numerosos problemas reales de la vida diaria, como pueden ser de circulación (aérea, carreteras, de gas...) o de redes (informáticas, eléctricas...). Los grafos son usados en campos tan dispares como pueden ser la Química, Genética, Informática, Teoría de Sistemas.

2. DEFINICIONES 1.1.GRAFO SIMPLE

Definición1: Un grafo simple es un par (V,E), donde V es un conjunto de elementos, y E es grupo de pares de elementos de V, donde no se permite la repetición de ninguno y no importa la ordenación del par de elementos. E={ej=�ej1,ej2�: ej1, ej2∈V} Ejemplo: V={1,2,3} E={{1,2},{2,3}} Puede representar las conexiones aéreas entre 3 ciudades, ordenadores conectados por red, o los números del 1 al 3 cuyas diferencias tengan modulo 1. Elementos de un grafo simples:

• Un vértice o nodo son cada uno de los elementos de V • Ejes o aristas son cada una de las uniones entre dos pares de elementos

de V(vértices); son las parejas de V que forman E. • Vértices adyacentes: Dos vértices i, j ∈V son adyacentes si están

conectados por algún eje � {i,j} ó {j,i} ∈E • Bucle: Cuando en un eje los extremos coinciden, {i,i}.

Tipos de grafos:

• Grafo simple: cuando no contiene ningún bucle. • Grafo nulo: cuando no contiene ejes, E=∅ • Grafo completo cuando tiene todos los ejes posibles, incluyendo los

bucles. • Grafo simplemente completo cuando todos los vértices son adyacentes,

el grafo tiene todos los ejes excepto los bucles

1 2

3

Tema 2. grafos

4

Grafo Nulo Grafo completo Grafo simplemente completo

1.2.MULTIGRAFO DE ORDEN P Definición: Un p-grafo es un par (V,E) donde V es un conjunto de elementos y E es un conjunto de pares de V, donde el orden de los parejas no importa, y donde una pareja puede aparecer un máximo de p veces en E. E={ej={ej1,ej2}, ej1, ej2∈E : I(ej)=∑vecesj1≤p ∀j}

Con esta definición un grafo simple es un 1-grafo. Los elementos de los p-grafos son los mismos de los grafos simples. Un ejemplo clásico es el multigrafo de orden 2 que pretende estudiar los 7 puentes

de Königsberg(Prusia) que une las orillas A,C y dos islas B,D: e6

B e3 e2 V={A,B,C,D}

A C E={(A,B),(A,B),(A,D),(A,D),(A,C),(B,C),(D,C)}

e1

e4 e5

e7

D

La mayoría de autores coinciden en considerar el nacimiento del nacimiento del grafo cuando Euler(S XVIII) estudiaba este 2-grafo como pasatiempo, viendo la forma de cruzar todos los puentes sin pasar dos veces por el mismo.

Tema 2. grafos

5

1.3.GRAFO DIRIGIDO U ORIENTADO A veces las relaciones entre los vértices no son simétricas y no es equivalente {ei,ej} a {ej,ei} como era en el caso de los p-grafos. Por ejemplo la relación de “hijos de”, “divisores de” no tienen esa bidireccionalidad; surge así los grafos orientados. Definición: Grafo orientado es un par (V,A) donde V es un conjunto de elementos y A es un conjunto formado por parejas de elementos de V, donde si importa el orden de los elementos del par, siendo distinto {ei,ej} a {ej,ei}con ej y ei pertenecientes a V. Ejemplo: V={a,b,c,d} A={(a,b),(b,a),(d,b),(c,b)}. En los grafos orientados el eje se llama arco. Arco es cada par de elementos que forma parte de A. Los demás elementos son los mismos que en grafos no oriebtados Todo grafo no orientado se puede considerar orientado si a cada eje {i,j} lo sustituimos por dos arcos {i,j} y {j,i}. i j i j Dado un arco {i,j}, i será el vértice inicial y j el vértice final. Se dice que i es predecesor de j y j sucesor de i. i � j

1.4. OPERACIONES Y APLICACIONES EN LOS GRAFOS. 1.4.1. Isomorfismo Muchas veces tenemos grafos (o p-grafos) de apariencia diferente, pero que nos dan

la misma información. La diferencia entre estos reside en la distinta numeración de ejes y/o vértices. Cuando tenemos dos grafos con misma información decimos que estos son isomórficos. Veamos como podemos determinar si dos grafos so isomórficos:

Isomorfismo de grafos: dos grafos son isomórficos si existe alguna aplicación

Φ:V � V´ que cumpla que : Si {ei,ej}∈E � {Φ(ei),Φ(ej)}∈E´

1.4.2 Aplicaciones Adyacente, Antecesor y Predecesor. La aplicación adyacente ΓΓΓΓ es una aplicación de los grafos (p-grafo) dirigidos o no.

Esta aplicación nos relaciona los vértices que están unidos a otro dado mediante un eje (arco si es grafo dirigido).

Γ: V V : Γ(ei)={ej : (ej,ei}ó (ei,ej)∈E} ei ej (En los p-grafos nos tienen que decir las veces que (ei,ej}εA)

Tema 2. grafos

6

Así como la anterior aplicación válida tanto para grafos orientados como no, las dos siguientes sólo definidas en los grafos orientados:

La aplicación sucesor ,Γs, de un vértice de un grafo (p-grafo) orientado, es una aplicación que nos lleva al conjunto de vértices que están unidos con el vértice dado mediante un arco que sale de él.

Γs :V � V : Γs(ei)={ej, : (ei,ej)∈A} La aplicación predecesor Γp, es igual que la aplicación sucesor, con la diferencia

que ahora los arcos llegan al vértice, y no salen de él: Γp:V � V : Γp(ej)={ei : (ei,ej)∈A} Para conocer un grafo orientado basta con conocer V y la aplicación Γs o Γp.

1.5. REDES

Podemos establecer que a cada eje o arco le pueda asignar un valor numérico (asociarle una medida) que nos indique la longitud, tensión entre los nudos... Esto nos da lugar al concepto de redes o redes dirigidas. Definición: Una red(dirigida) es una terna (V,E,l) donde (V,E) es un grafo(dirigido) y la aplicación l:E�ℜk que asocia a cada eje(arco) un valor numérico, pudiendo ser multivaluado. Ejemplo: (V,E,l)

V={León, Salamanca, Valladolid}; E={(León, Salamanca),(Salamanca,Valladolid), (León,Valladolid)} l= aplicación que nos da la distancia en Km y el tiempo medio de camino por un autobús entre las 3 ciudades en horas: l(León,Valladolid)=170km,1,8h; l(León,Valladolid)=200km,2,2h l(Valladolid, Salamanca)=140km,1,1h. 1.6.ORDEN, TAMAÑO Y GRADO DE INCIDENCIA.

Definición: Orden de un grafo(dirigido) G=(V,E) es el número de vértices y se denota como O(G).

Definición: Tamaño de un grafo(dirigido) G=(V,E) es el número de ejes (arcos) que tiene, se denota como T(G) Ejemplos:

Tema 2. grafos

7

• Un grafo completamente simple tiene

2

n de tamaño, siendo n el orden del

grafo.

• Un grafo completo tiene

2

n+n donde estos n a mayores respecto al grafo

completamente simple son debidos a los bucles que hay por cada uno de los n vértices.

• Un grafo completamente simple dirigido tiene 2

2

n=n(n-1) de tamaño, siendo n

el orden del grafo.

• Un grafo completo dirigido tiene 2

2

n+n=n2 donde estos n a mayores respecto

al anterio son debidos a los bucles que hay por cada uno de los n vértices.

Grado de incidencia de un vértice i de un grafo(dirigido) es el nª de ejes(arcos) en

los que interviene el vértice i, considerando que el bucle {i,i} cuenta doble. Se denota como g(i).

En Grafos dirigidos: • Grado de salida g+(i) es el número de arcos donde i extremo inicial. • Grado de entrada g-(i) es el número de arcos donde i es extremo final.

Propiedades: 1. El tamaño de un grafo es igual a la semisuma de todos los grados de incidencia:

∑ ∈=

ViigGt )(

2

1)( . Es consecuencia de que cada eje (arco) contribuye 2 veces

en el grado de incidencia(uno por cada vértice) 2. En todo grafo dirigido y para todo vértice i, g(i)=g+(i)+g-(i), ya que tanto g+(i)

como g-(i) contribuyen una vez en el grado de incidencia. 3. En todo grafo hay un nº par de vértices con grado impar: Demostración:

parigGtig

imparigsumaigparigsumaigGtigigig

imparepardosseparamosGtig

par

ViVi

ViViVi Vi Vi

Vi

≡−=

→=+=

=

∑∑

∑∑∑ ∑ ∑

∈∈

∈∈∈ ∈ ∈

321

´´´

´´´´´` ´´

)()(2)(

)()()()()(2)()()(

gra)(2)(

g(i) es impar, luego para que sea par debe haber un numero par de g(i).

∑∈

´´

Vig(i)

Tema 2. grafos

8

1.7. CADENAS Y CICLOS. Definición: Dado un grafo (E,V) llamamos cadena a una secuencia elemental de vértices y ejes que comienza y acaba en un vértice(no necesariamente el mismo) Ejemplo: v1,(v1,v2),v2,(v2,v4),v4, decimos que la cadena une v1 con v4. Tipos de cadenas:

• Cadena simple : no se repite ningún eje • Cadena elemental: No se repite ningún vértice. Definición: un ciclo es una cadena donde el 1º y el último vértice es el mismo Ejemplo: v1,(v1,v2),v2,(v2,v4),v4,(v4,v1),v1. Tipos: • Elemental si solo coinciden el primer y último vértice. Nota: Si trabajamos con ,multigrafos no debemos denotar los ejes como (vi,vj), pues

puede ocurrir que con esta notación se encuentren varios ejes. Tendremos que representarlo como el nombre del eje.

1.8 CAMINOSY CIRCUITOS

Definición: Sea un grafo dirigido (V,A), llamamos camino a una secuencia de arcos a1,a2...donde el vértice final de cada arco coincide con el inicial del siguiente: final(ai)=origen(ai+1) ∀i.

Tipos : • Camino simple. No se repite ningún arco. • Camino elemental: No se repite ningún vértice.

Definición: Circuito es un camino donde el primer vértice coincide con el final

e3 e1 e2 e4 e5 Simple: e1,e2,e4 Elemental: e1,e2, Circuito: e1,e2,e5; e2,e4; e3,e4.

A B C

Tema 2. grafos

9

1.9. SUBGRAFOS Definición: diremos que (V´,E´) es un subgrafo de (V,E) si se cumple que V´⊆V y E´⊆E. Ejemplo: G1=(V1, E1), V1=(1,2,3); E1={(1,2),(2,3)} G2=(V2,E2), V2=(1,2); E2={(1,2)} G2 subgrafo de G1 Definición: Diremos que (V´,E´) es el grafo complementario de (V,E) si se cumple que V=V´y E´=Ec(complementario de E). Ejemplo: G={V=(1,2,3);E={(1,2),(2,3),(1,1)}} G´={V´=(1,2,3); E´={(1,3},(2,2),(3,3)} 1 2 3

Definición: Grafo de unión de dos grafos (V,E), (V´,E´) es el grafo resultante de unir V y V´�(V∪V´),y E y E´� (E∪E´) Ejemplo: G1={V1=(1,2,3); E1={(1,2)}} G2=(V2=(2,3,4); E2={(2,4)} G=G1∪G2={V=(1,2,3,4),E={(1,2},(2,4)}

2.-GRAFOS CONEXOS 2.1 DEFINICION GRAFOS CONEXOS Definición: Grafo G=(V,E) es conexo si no se puede poner como unión de 2 grafos disjuntos (no vértices en común), esto ocurre si en el grafo todos los vértices unidos formando un bloque. Definición: grafo inconexo es aquel que no es conexo. Ejemplo: 1 2 3 Conexo 4

Inconexo(generado por dos componentes conexas)

1 2 3 4

Tema 2. grafos

10

2.2.CARACTERIZACIÓN DE LOS GRAFOS CONEXOS.GRAFO ORIENTADO FUERTEMENTE CONEXO

Podemos caracterizar los grafos conexos mediante las cadenas: Un grafo es conexo si y sólo si para cualquier pareja de vértices existe una cadena que los une siendo esta simple y elemental. Demostración:

1)Si un vértice no unido con otro habrá un vértice( no final ni inicial de la cadena) que sólo unido con otro vértice, y no será conexo.

2)Elemental: si en la cadena se repite un vértice eliminamos el ciclo que empieza y acab en este vértice., y ahora la cadena será elemental.

3) Simple: de igual forma si no es simple es porque hay un bucle que podemos eliminar y la cadena que nos queda es simple. Ejemplo: 1 2 3 1-2�e1

e1 e2 1-3�e1,e2 e3 1-4�e1,e4 2-3�e2

4 2-4�e3 5 3-4�e2,e3 6

En grafos dirigidos la nueva definición no válida pues pueden ser conexos y no haber camino entre dos vértices (debido al sentido) Ejemplo: es conexo y 3 no se puede unir con 1, ni con 2.

1 2 3

Definición: un grafo dirigido es fuertemente conexo si hay algún camino que une todos sus vértices. Este concepto interés para saber si en una ciudad todos sus rincones están unidos, ya que hay calles con sentido único.

Ejemplo:

Tema 2. grafos

11

3. GRAFO EULERIANO, PUENTES DE KÖNISGUER.

En el siglo XVIII Euler demostró la imposibilidad de recorrer los 7 puentes de su ciudad sin pasar dos veces por el mismo puente. A partir de aquí se crea un tipo de grafos, los Eulerianos.

3.1 EL PROBLEMA DE LOS PUENTES DE KÖNISGUER

Euler demostró el siguiente teorema Teorema: todo grafo es recorrible sin repetición de ninguno de sus arcos, si el numero

de vértices impares( llegan un nº impar de ejes) no es mayor que 2, es decir que no sean 4, 6,8...(ya que como vimos en un teorema anterior, hay un numero par de vértices impares)

Demostración Si un camino no empieza y termina en un mismo vértice, cada vez que llega a un eje, este ha de salir por otro eje no utilizado. De este vértice han de salir entonces un numero par de arcos, luego es un vértice par. Puede haber dos vértices impares, en donde el camino empieza y termina, pero no puede haber mas de dos (sólo hay un comienzo y un final), pues sino tendrían que pasarse por algún eje más de una vez para pasar por todos los vértices.

Si no tenemos vértices impares, entonces el recorrido no tiene principio ni fin, pudiendo empezar y acabar en cualquier vértice.

Ejemplos: B 1 A (grafo1) (grafo2) C

5 2 6

E C 3 4 A B D Los vértices A y D son impares y en ellos Como no tiene vértices impares no empieza y termina el circuito. tiene ni principio ni fin

Tema 2. grafos

12

(Grafo 3) 1

D 5 2,6 A B

4 3,7 8 C Puente de Könisguer donde hay 4 vértices impares, luego no puede ser recorrido sin

repetición de alguno de sus ejes, como es le caso de los ejes {B,C} y {B,D}

3.2. GRAFO EULERIANO Y SEMIEULERANO Definición: Cola es una secuencia de aristas V0, V1,....,Vn-1, Vn, en la que todas las aristas son diferentes. Si los vértices final e inicial coinciden, se dice que es una cola cerrada. Definición: se dice grafo euleriano a un grafo conexo G que tiene una cola cerrada que incluye todas las aristas de G

Definición: se dice grafo semieuleriano si la cola no es cerrada.

Teorema de Euler:

1. Un grafo es euleriano si y solo si cada vértice es de grado par. 2. Un grafo es semieuleriano si y solo si tiene dos vértices impares

Demostración: 1. � Sea un grafo euleriano, entonces tiene una cola cerrada, luego de cada

arista entra el mismo número de arcos que salen, y como estos arcos no están repetidos, todos los vértices son pares.

Sea un grafo sin vertices impares, como vimos este se puede recorrer pasando por todos los arcos sin repetición de ninguno, de forma que el circuito no tiene principio ni fin, es decir es un recorrido cerrado., luego tiene una cola cerrada y por tanto es euleriano.

Tema 2. grafos

13

2. � Sea un grafo semieuleriano, entonces tiene una cola no cerrada, luego hay un vertice donde empieza la cola, que tiene un nº imapar de arcos, pues de él sale uno más que entra; de igual forma tendra un vertice final donde llegue un un arco mas que salga, luego tambien sera impar. El resto de vertices salen el mismo numero de arcos que llegan, por lo que son pares. Asi tenemos que todo grafo semieuleriano tiene 2 vértices imapares.

Si tenemos un grafo con 2 vértices impares, y el resto pares, podemos

generar un recorrido que empieza en uno de los vértices impares, y acaba en el otro, de forma que por el resto de vértices salga el mismo número de arcos que entre, ya que son pares. Así generamos una cola abierta, y con ello un grafo semieuleriano

4.GRAFOS HAMILTONIANANO En el año 1859 el matemático Hamilton puso en circulación un rompecabezas basado en dodecaedro regular (sólido formado por 12 pentágonos iguales). El juego consistía en ver si se era capaz de recorrer los 20 vértices sin repetir ninguno, salvo el inicial y el final que eran los mismos, moviéndose por las aristas. El juego tenia solución, y había varios ciclos que pasaban por todos los vértices una sola vez salvo el primero y el ultimo. Otro juego similar propuesto por Hamilton era el de recorrer todas las casillas del ajedrez con un caballo sin repetir ninguna. En este caso los vértices serian las casillas del ajedrez y las aristas todos los posibles movimientos del caballo. Los dos problemas se pueden plantear a partir de la definición de grafo hamiltoniano: Definición: se denomina grafo hamiltoniano a todo aquel en el que existe un camino cerrado que contiene todos los vértices una sola vez ( no tiene por que contener todas las aristas ). Un grafo que posea una trayectoria que pase a través de cada vértice es denominado semihalmintoniano

Es evidente que al igual que ocurre con los Eulerianos, los grafos hamiltonianos deben ser conexos. Sin embargo no se ha conseguido una propiedad sencilla para caracterizar los grafos hamiltonianos como ocurría en lo eulerianos.

Sin embargo puede comprobarse que hay grafos eulerianos que no son hamiltonianos y viceversa.

Ejemplos

No Hamiltoniano semihalmintoniano Hamiltoniano

Tema 2. grafos

14

5.- GRAFOS PLANOS

Para introducir los grafos planos empezaremos con un problema: Suponer que

tenemos que unir tres granjas (a,b,c) y tres pozos de agua (1,2,3), pero como los granjeros enemistados, los caminos no se pueden cruzar. Este problema consiste en representar el grafo V={a,b,c,1,2,3} con los vértices G={{a,1}{b,2}{c,3}{a,2}{b,2}{c,2}{a,3}{b,3}{c,3}{a,4}{b,4}{c,4}} de forma que nos e corten los ejes, tan solo en los vértices. Se puede comprobar que esto es imposible, lo que nos lleva a la definición siguiente:

Definición: Un grafo plano es un grafo donde se puede representar en el plano de

forma que los cortes entre los ejes coincidan con vértices del mismo. Si existe dicha representación la llamaremos mapa.

Estos grafos son importantes a la hora de diseñar circuitos electrónicos, ya que si

dos conexiones se cruzan producen cortocircuito. Se puede comprobar que los 5 sólidos platónicos, son planos. Es bastante complicado determinar si un grafo es plano o no. El teorema mas sencillo es el de Kuratowski, que dice que un grafo es plano si y solo si, no contiene grafo pentagonales o hexagonal tras eliminar vértices superfluos existentes en el medio de los ejes.

Los grafos planos conexos descomponen el plano en trozos poligonales, que

llamaremos caras. La parte externa del grafo suele considerarse también una cara de este. Proposición: En un grafo plano conexo el numero de vértices o(G), el numero de

ejes t(G) y el numero de caras c(G) cumplen la siguiente relación: o(G)+c(G)=t(G)+2.

Demostración: la haremos por inducción sobre el numero de caras. a) el grafo tiene una sola cara, luego no tiene ciclos con lo que o(G)=t(g)+1�

o(G)+c(G)=t(G)+2, ya que c(G)=1. b) Suponer valida la regla para k-1 caras. o(Gk-1)+k-1=t(Gk-1)+2 c) Si tenemos un grafo co k caras, podemos construirlo añadiendo la cara exterior a

un grafo con k-1 caras. Tenemos que si la cara tiene r vétices, tenmos que hay r+1 ejes nuevos, ya que tenemo que unir los r vertices entre si (r-1 ejes) y dos de ellos con los vértices antiguos. Así el nuevo grafo tendra k caras, o(Gk-1) +r vértices y t(Gk-1)+r+1 ejes. o(Gk)+k=o(Gk-1)+r+k; t(Gk)=t(Gk-1)+r+1� o(Gk-1)+r+k-1+1 ¿=? t(Gk-1)+r+1+r+1=r+12 Como por hipotesis de inducción o(Gk-1)+k-1=t(Gk-1)+2, entonces la formula anterior queda r+1=r+1. Luego es cierto

Tema 2. grafos

15

6.-DIAGRAMAS DE ARBOL

Un caso especial en los grafos son las estructuras denominados diagramas de árbol, introducir por primera vez en los trabajos de Kirchoff (1847) de redes eléctricas. Definición: Un árbol es un grafo conexo sin ciclos. Definición: Bosque es un grafo no conexo sin ciclo (unión varios árboles). Como no hay ciclo en el árbol, una vez que 2 cadenas se separan no vuelven ya a juntarse, al igual que ocurren en las ramas de un árbol al separarse del tronco o de ramas anteriores. Generalmente para representar un árbol se elige un vértice cualesquiera(vértice raíz), a continuación se representan los que están directamente unidos a el por un eje descendente, consiguiendo así que estén unidos hasta los vértices finales(sin descendientes). (1) 1 2 3 4

2 (1)=(2) , pero el árbol se suele representar como (2)

(2) 1

4 3

Conociendo el vértice raíz y la aplicación “hijos de “ de cada vértice, que nos lleva a los vértices que están unidos a éste en sentido descendente, conocemos el árbol entero. Hijos: V V*=V-{Vértice raíz}

1 2,4 4 3

Proposición 1: Un árbol con n vértices tienen n-1 ejes. Demostración: Colocando el árbol en forma padre-descendiente, se observa que

todo vértice tiene un padre, menos el vértice raíz que no tiene ascendente. Luego la aplicación padre de es un biyeción entre ejes y vértices excluyendo al vértice raiz. Luego cada vértice tiene asociado un eje, menos el vértice raíz, luego n vértices� n-1 ejes.

Proposición 2: un bosque con k componentes conexas y con n vétices tiene n-k ejes.

Tema 2. grafos

16

Demostración: Como el bosque tiene k árboles no conectadas: ejes=Σkejes árbol= =Σk(nk´-1)= Σknk´- k= n-k

Los usos árboles son muy variados: • Almacenamiento de información

- Ordenadores(disco duro) - Redes ordenadores(Internet) - Biblioteca

• Redes suministro eléctrico, agua... • Resolución de circuitos eléctricos • Clasificación de especies. • Programación y análisis de algoritmos • Reducción de problemas de probabilidad.

Relación árboles y numeración: por ejemplo en codigo decimal(o binario en los ordenadores). Para guardar un número de 3 cifras en código decimal no necesitamos 1000 “almacenamiento de memoria”, sino 3 elementos con posibilidad de almacenar 10 diferentes valores(0,1,2,3,4,5,6,7,8,9), estructurados en forma de árbol.

0 1 2 3 4 5 6 7 8 9 ......

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9

..... .. ................................ 0 1 2 3 4 5 6 7 8 9...........................................................................................

Número:225 .

La ordenación por árbol permite decodificar la información de forma rápida a partir de un vértice raíz dado..

Por ejemplo en un árbol homogéneo(mismas ramas cada vértice), como es el caso anterior del nº de 0 a 100., en donde a cada vértice le salen 10 ramas(tantos como cifras), las posibilidades disminuyen de forma logarítmica en base10:

1. Inicialmente tenemos 1000 posibilidades (del 0 al 999) 2. Después del primer paso(1er nivel), al elegir el 2 tenemos 100 posibilidades(del

200 al 299). 3. Después del segundo paso(2º nivel), al elegir el 2 tenemos 10 posibilidades (del

220 al 229). 4. Después del 4º paso(3er nivel),al elegir el 5 tenemos el numero buscado(una

posibilidades)

Tema 2. grafos

17

Mediante un diagrama de árbol hemos llegado al número en tres pasos, disminuyendo logarítmicamente las posibilidades: paso=log10(posibilidades).

Si codificáramos la información en código binario, en forma de estructura de árbol

sería semejante sólo que ahora el número de posibilidades desciende logarímicamente pero en base 2.

En árboles no homogéneos, donde cada vértice no tiene el mismo nº de ramas

descendientes, la gráfica no es tan simple pues el nº de posibilidades desciende de diferente forma según el camino elegido. Pero en todo caso el decrecimiento Posib-pasos es grande.

7.-MATRICES ASOCIADAS A UN GRAFO Definición: Dado un grafo (V,E) llamamos matriz de adyacentes a la matriz

M∈Mnxn(N) donde n son los vértices de V y definida como:

∈=

)(),(0

)(),(1

unidosnoEjiarcosi

unidosEjiarcosimij

La matriz en grafos no orientados es simétrica, pues todo par de vértices (i,j) unidos

en los dos sentidos. En grafos orientados la definición de la matriz de adyacente es la misma, pero ahora

no es simétrica. Ejemplo: 1 2 3

M=

011

101

110

1 2 3

1000

10010 10

500

1000

0 1 2 3 4

Pasos

po

sib

ilid

ad

es

3

2

1

00

1

2

3

0 1 2 3 4

Pasos

log

(po

s)

Tema 2. grafos

18

M´=

010

000

110

En el caso de p-grafos hay vértices que pueden estar unidos por p arcos, luego los valores de mij van de 0 a p. Teorema: Si en la matriz M o M´ del grafo la elevamos al cuadrado tenemos una matriz, que nos indica el número de cadenas con 2 ejes que unen dos vértices. Si lo elevamos al cubo la matriz resultado nos indica el número de cadenas con 3 ejes que unen cada par de vértices. Así Mk nos informa del número de cadenas con k ejes que unen cada par de vértices.

=

=

233

323

332

211

121

11232 MM

Demostración: Por inducción podemos ver la veracidad del teorema:

1) Para k=1 se cumple� M=1, M2,M3...=1 2) Supongamos que para k-1 se cumple y que A=Mk-1 cumple la proposición. 3) El nº de cadenas con k ejes uniendo i y j será la suma de cadenas con k-1 ejes

uniendo i con cualquier vértice s, donde exista el eje (s,j). denotaremos el nº de cadenas que une con k-1 ejes i con s como ais. Cadk(i,j)= ∑

∈Ejs

isa),(

, como msj=1 si (i,j)∈E y msj=0 si (i,j)∉E, tenemos que la

expresión anterior se reduce a la siguiente:

ijsjs isk bmajicad =⋅=∑),( , elemento i,j de la matriz.

Pero la matriz B es la definición de producto entre la matriz A y la M B=A•M, pero A=Mk-1 con lo que B=Mk, y nos define el número de cadenas que estan construidas con k ejes y que nos unen los vértices i con j.