Está en la página 1de 7

Teora de grafos

Los grafos son una abstraccin desarrollada especialmente para representar relaciones. Han demostrado ser muy tiles en ambas materias tanto matemticas como informtica para desarrollo de algoritmos que aprovechen estas relaciones. Afortunadamente, los grafos son bastante intuitivos y existe una gran riqueza de ejemplos que ilustran como podemos tomar ventajas de ellos.

Que es un grafo
Hay varios tipos de grafos, cada cual con su propia definicin. Desafortunadamente, alguna gente aplica el trmino grafo de forma equivocada, por lo que no se puede estar seguro de que tipo de grafo estn ablando cuando se les pregunta por uno determinado. Un grafo est formando por dos partes:

Nodos (llamados tambin vrtices): son los elementos en el grafo que tienen relaciones. Suelen ser personas, organizaciones u objetos en el mundo real y a menudo tienen propiedades adicionales tiles. Las aristas son pares de nodos conectados por una relacin. Una arista est representada por los dos nodos que conecta, tal que AB representa la arista que conecta A y B.

Ilustracion 1 muestra dos grafos. El grafo de la izquierda tiene cuatro nodos conectados por seis aristas y tiene la propiedad que hay una arista entre varias parejas de nodos. Se dice que este es un grafo completo, podra representar los vuelos diarios entre Barcelona, Sevilla, Bilbao y A Corua que sirven como ejes regionales o representar tambin 4 personas, donde todas se conocen entre si.

Ilustracin 1 El grafo de la izquierda es completo y el de la derecha tiene un eje y radios El grafo de la derecha tiene un nodo en el centro conectado a otros 4 nodos. Este puede representar vuelos diarios conectando Madrid a Valencia, Bilbao, Sevilla donde Madrid es el eje. El propio grafo captura la informacin sobre quien est conectado a quien. Sin ninguna etiqueta, puede describir diferentes tipos de situaciones. Esta es la fuerza de la abstraccin.

Algunos puntos sobre la terminologa de grafos: los grafos son muy tiles para visualizar relaciones por que lo hacen claramente, es bueno cuando los nodos y las aristas se pueden dibujar sin cruzarse. Los grafos de la ilustracin 2 tienen esta propiedad. Son grafos planos, porque pueden ser dibujados en papel sin que ninguna arista se cruce. La ilustracin 2 muestra dos grafos que no pueden ser dibujados sin que dos de sus aristas se cruce. Hay, en efecto, una proposicin en la teora de grafos que dice que si un grafo no es plano, entonces puede haber dentro de l un subgrafo como muestra la ilustracin.

Ilustracin 2 Algunos grafos no pueden ser dibujados sin que se crucen sus aristas

Cuando existe una ruta entre dos nodos en un grafo, se dice que el grafo est conectado. Algunos grafos consisten en islas o agrupaciones estrechamente conectadas, los cuales tienen solo unos pocos puentes a otras agrupaciones. Por ejemplo, la mayora de las pginas web naturalmente conectan a pginas escritas en su mismo idioma. Cada lenguaje forma una isla. Chino e Ingles son dos de los idiomas ms comunes para pginas webs, pero un representante de uno puede navegar durante horas sin encontrar una pgina del otro. Existen islas similares para pginas webs en Espaol, Japones, Portugues, Aleman, Arabe, Frances, Ruso y Koreano. Una ruta, como su nombre indica, es una secuencia ordenada de nodos conectados por aristas. Consideramos un grafo donde cada nodo representa una ciudad, y cada arista son los vuelos entre pares de ciudades. Por lo tanto, un nodo es una ciudad y una arista es un segmento de vuelo dos ciudades que estn conectados por un vuelo sin escala. Una ruta es un itinerario de segmentos de vuelo que va de una ciudad a otra, tal que desde Madrid, Barcelona a Bilbao, desde Bilbao a Sevilla, y desde Sevilla a Valencia.

Grafos dirigidos
Cuando las aristas entre nodos son como autopistas con el mismo nmero de carriles en la misma direccin, se dice que el grafico es no dirigido. Al contrario un grafo dirigido, las aristas son como carreteras de un solo sentido. Una arista que va desde A a B es

distinta a la que va de B a A ( y una puede existir sin la otra). Una arista dirigida desde A a B es una arista saliente de A y una entrante de B. Los grafos dirigidos son una forma potente de representacin de datos:

Segmentos de vuelo que conectan un conjunto de ciudades. Hyperlinks entre paginas webs. Patrones de llamadas de telfono. Diagramas de transicin de estados Recomendaciones en una red social.

Dos tipos de nodos son de inters particular en los grafos dirigidos. Todas las aristas conectadas a un nodo fuente son aristas salientes. No hay aristas entrantes porque no existe la ruta desde cualquier otro nodo en el grafo a algn nodo fuente. Cuando todas las aristas en un nodo son entrantes, el nodo se llama nodo hundido. La existencia de nodos fuente y hundidos es una diferencia importante entre grafos dirigidos y los no dirigidos.

Grafos balanceados
La ilustracin 3 es un ejemplo de grafo balanceado, un tipo de grafo cuyas aristas tienen pesos asociados con todas. En este caso, los nodos representan productos comprados por los clientes, los pesos representan el apoyo a la asociacin, el porcentaje de cesta de la compra que contiene a la vez los productos. Este grafo de asociacin de productos es un ejemplo de grafo no dirigido, el cual muestra que el 22.1 % de la cesta de la compra en un tienda de alimentacin contiene a la vez bananas y pimiento amarillo. Por si mismo, esto no explica si la venta de bananas conduce a la compra de pimientos amarillos o viceversa, o si algo de esto conduce a la compra de productos amarillos. Un problema comn en el anlisis de enlace es encontrar la ruta ms corta entre dos nodos. La definicin de la ms corta depende del peso asignado a las aristas, consideramos el grafo de vuelos entre las ciudades. A qu se refiere la distancia ms corta? Los segmentos con menos cantidad de vuelos? El tiempo ms corto de vuelo? O El menos caro? Todas estas preguntas son contestadas de la misma forma usando el mismo grafo de vuelos conectando ciudades la nica diferencia en las aristas son los pesos.

Ilustracin 3 Este es un ejemplo de un grafo balanceado donde el peso de las aristas son el numero de transacciones que contienen los items representados por los nodos Las siguientes tres secciones describen tres problemas clsicos en teora de grafos que ilustran la potencia de los estos para representar y resolver problemas.

7 puentes de knigsberg
El problema de los siete puentes de Knigsberg (Prusia oriental en el siglo XVIII y actualmente, Kaliningrado, provincia rusa) fue resuelto en 1736 por Leonhard Euler y dio origen a la teora de grafos. Consiste en lo siguiente: En la ciudad de Knigsberg hay una isla y el ro que la rodea se divide en dos brazos. La distintas zonas de tierra estn unidos mediante siete puentes. Es posible dar un paseo empezando por una cualquiera de las cuatro partes de tierra firme, cruzando cada puente una sola vez y volviendo al punto de partida?

Plano de los siete puentes de Knigsberg y grafo utilizado por Euler.

Euler enfoc el problema representando cada parte de tierra por un punto y cada puente, por una lnea, uniendo los puntos que se corresponden. Entonces, el problema anterior se puede trasladar a la siguiente pregunta: se puede recorrer el dibujo sin repetir las lneas? Euler demostr que no era posible puesto que el nmero de lneas que inciden en cada punto no es par. En teora de grafos esta idea se corresponde con la posibilidad de encontrar un camino euleriano en un grafo.

Detectando ciclos en un grafo


Una importa propiedad de los grafos dirigidos es si el estos contienen alguna ruta que comienza y acaba en el mismo nodo, tal ruta es llamada ciclo, implica que la ruta podra repetirse a si misma sin fin: ABCABCABC etctera. Si un grafo dirigido contiene al menos un ciclo, este se llama cclico. Hay un algoritmo simple para detectar si un grafo dirigido tiene ciclos, si un grafo dirigido no tiene nodos hundidos, y tiene al menos una arista, entonces la ruta puede ser extendida arbitrariamente, en cambio si no tiene nodos hundidos, el nodo de terminacin de una ruta esta siempre conectado a otro nodo, tal que la ruta puede ser ampliada aadiendo ese nodo. Similarmente, si el grafo no tiene nodos fuente, siempre se puede anteponer un nodo al comienzo de la ruta. Cuando una ruta contiene ms nodos que los que hay en el grafo, se sabe que la ruta debe visitar al menos el nodo dos veces, llamamos a este nodo X, la porcin de la ruta entre el primer X y el segundo X en la ruta es un ciclo, tal que el grafo es cclico. Ahora consideramos un grafo que tiene uno o ms nodos fuentes y uno o ms nodos hundidos, obviamente, los nodos fuente y los hundidos no pueden ser parte de un ciclo. Eliminando la fuente y los nodos hundidos desde el grafo, junto con todas sus aristas, no afecta si el grafo es cclico. Si el grafo resultante no tiene nodos hundidos ni fuentes, entonces contiene un ciclo, como hemos demostrado. El proceso para eliminar nodos hundidos, fuentes y sus aristas es repetido hasta que ocurre alguna de las siguientes situaciones:

No mas aristas o nodos a la izquierda. En este caso, el grafo no tiene ciclos Algunas aristas permanecen pero no hay nodos fuente ni hundidos. En este caso el grafo es cclico.

Si no existen ciclos, entonces el grafo se llama grafo aciclico. Estos grafos son tiles para describir dependencias o relaciones uno a uno este cosas. Por ejemplo, diferentes productos perteneciendo a jerarquas anidadas pueden ser representados por grafos aciclicos. En un grafo aciclico, hay dos nodos que tienen una relacin de precedencia entre si bien definida. Si el nodo A precede al nodo B en alguna ruta que contiene ambos, entonces A preceder a B en todas las rutas que contienen a B, y B es un sucesor de A. Si la ruta no contiene ni A ni B, entonces A y B son disjuntos. Este ordenamiento estricto puede ser una propiedad importante de los nodos y a veces til para el anlisis de enlace.

El problema del vendedor viajero

Los grafos son una representacin natural de ciudades conectadas por carreteras o segmentos de vuelos. En el grafo que representa este problema, los nodos son ciudades y cada arista tiene un peso correspondiente a la distancia o el tiempo de viaje entre dos ciudades conectadas por la arista. Encontrando la ruta que visita exactamente todos los nodos no es suficiente; de todos los posibles caminos debes de encontrar el mas corto. Todas las rutas eulerianas tienen exactamente la misma longitud, porque contienen exactamente las mismas aristas, preguntar por el camino euleriano mas corto no tiene sentido. Mucho antes de Facebook, socilogos y antroplogos ya estaban realizando anlisis de redes sociales. Las redes o grficos se pueden utilizar para representar todo tipo de relaciones entre las personas, tales como el parentesco, el comercio (que vende qu a quin), e incluso la transmisin de la enfermedad (que infectan quin). El anlisis de redes sociales arroj resultados importantes en los campos de la economa a epidemiologa, pero el trabajo siempre se ve obstaculizada por la incapacidad de los investigadores para ver toda la red, excepto en casos especiales, como las relaciones en una sola escuela o pueblo.

Hoy en da, muchas conexiones importantes entre las personas se capturan en los datos. Los registros detallados de llamadas telefnicas se pueden utilizar para crear un grfico de que quin llama a quin. Una amplia variedad de servicios basados en la web ayudan a crear redes sociales ms explcitas. Sitios de redes profesionales como LinkedIn para facilitar los contactos entre los solicitantes de empleo y gerentes de contratacin as como entre los aspirantes a colaboradores. Los sitios de citas forman conexiones concentraciones entre personas que buscan pareja. Facebook permite a los padres saber lo que sus hijos estn haciendo, aunque tambin ofrece la posibilidad de volver a conectar con sus antiguos compaeros. El propsito principal de estas redes es que los

miembros puedan interactuar, pero un beneficio adicional es que los investigadores ahora pueden estudiar grandes redes sociales con datos verificables.

También podría gustarte