Monografias.com > Otros
Descargar Imprimir Comentar Ver trabajos relacionados

Grafos




Enviado por merma16



    1. Grafos
    2. Aristas – Vértices –
      Caminos
    3. Clasificación de
      grafos
    4. Grafos
      Eulerianos.
    5. Grafos
      Conexos
    6. Árboles.
    7. Bosques de
      árboles.
    8. Recorrido de un
      grafo.
    9. Representación de grafos
      en programas.
    10. Dígrafo (grafo
      dirigido).
    11. Aplicaciones de los
      dígrafos
    12. Grado de un
      grafo.
    13. Ciclo de un
      grafo.
    14. Estructuras no lineales:
      Grafos
    15. Anexo

    Introducción

    Hoy en día podemos ver muchas cosas que nos
    pueden parecer de lo mas cotidianas, carreteras, líneas
    telefónicas, líneas de televisión
    por cable, el transporte
    colectivo metro, circuitos
    eléctricos de nuestras casas, automóviles, y
    tantas cosas mas; lo que no pensamos frecuentemente es que estos
    forman parte de algo que en matemáticas se denomina como grafos.

    En este trabajo se
    tratará de explicar lo que son los grafos, sus tipos, y
    algunas derivaciones de ellos, así como su
    representación gráfica y en algunos casos, su
    representación en algún programa
    informático, así como en la
    memoria.

    En este trabajo, se explicando de manera muy
    sencilla los conceptos y algunas metodologías con un
    lenguaje no
    tan rebuscado para su mayor entendimiento.

    Grafos

    Desafortunadamente no existe una terminología
    estandarizada en la teoría
    de los grafos, por lo tanto es oportuno aclarar que las presentes
    definiciones pueden variar ligeramente entre diferentes
    publicaciones de estructura de
    datos y de teoría de grafos, pero en general se puede
    decir que un grafo como indica su nombre lo indica es la
    representación (para nuestro caso) gráfica de los
    datos de una
    situación particular, ejemplo:

       Los datos contienen, en algunos casos,
    relaciones entre ellos que no es necesariamente
    jerárquica. Por ejemplo, supongamos que unas líneas
    aéreas realizan vuelos entre las ciudades conectadas por
    líneas como se ve en la figura anterior (más
    adelante se presentaran grafos con estructuras de
    datos); la estructura de
    datos que refleja esta relación recibe el nombre de
    grafo.

    Se suelen usar muchos nombres al referirnos a los
    elementos de una estructura de datos. Algunos de ellos son
    "elemento", "ítem", "asociación de ítems",
    "registro",
    "nodo" y "objeto". El nombre que se utiliza depende del tipo de
    estructura, el contexto en que usamos esa estructura y quien la
    utiliza.

    En la mayoría de los textos de estructura de
    datos se utiliza el termino "registro" al hacer referencia a
    archivos y
    "nodo" cuando se usan listas enlazadas, árboles
    y grafos.

    También un grafo es una terna G = (V,A,j
    ),
    en donde V y A son conjuntos
    finitos, y j es una aplicación que hace
    corresponder a cada elemento de A un par de elementos de
    V. Los elementos de V y de A se llaman,
    respectivamente, "vértices" y "aristas" de
    G, y j asocia entonces a cada arista con sus dos
    vértices.

    Esta definición da lugar a una representación
    gráfica, en donde cada vértice es un punto del
    plano, y cada arista es una línea que une a sus dos
    vértices.

    Aristas

    Son las líneas con las que se unen las aristas de un
    grafo y con la que se construyen también caminos.

    Si la arista carece de dirección se denota indistintamente {a,
    b}
    o {b, a}, siendo a y b los vértices que
    une.

    Si {a ,b} es una arista, a los vértices a y b
    se les llama sus extremos.

    • Aristas Adyacentes: Se dice que dos aristas son
      adyacentes si convergen en el mismo vértice.
    • Aristas Paralelas: Se dice que dos aristas son
      paralelas si vértice inicial y el final son el
      mismo.
    • Aristas Cíclicas: Arista que parte de un
      vértice para entrar en el mismo.
    • Cruce: Son dos aristas que cruzan en un
      punto.

    Vértices

    Son los puntos o nodos con los que esta conformado un
    grafo. Llamaremos grado de un vértice al número de
    aristas de las que es extremo. Se dice que un vértice es
    `par' o `impar' según lo sea su grado.

    • Vértices Adyacentes: si tenemos un par de
      vértices de un grafo (U, V) y si tenemos un arista que
      los une, entonces U y V son vértices adyacentes y se
      dice que U es el vértice inicial y V el vértice
      adyacente.
    • Vértice Aislado: Es un vértice de grado
      cero.
    • Vértice Terminal: Es un vértice de grado
      1.

    Caminos

    Sean x, y " V, se dice que hay un camino en G de x a
    y si existe una sucesión finita no vacía de
    aristas {x,v1}, {v1,v2},…,
    {vn,y}. En este caso

    • x e y se llaman los extremos del camino
    • El número de aristas del camino se llama la
      longitud del camino.
    • Si los vértices no se repiten el camino se dice
      propio o simple.
    • Si hay un camino no simple entre 2 vértices,
      también habrá un camino simple entre
      ellos.
    • Cuando los dos extremos de un camino son iguales, el
      camino se llama circuito o camino cerrado.
    • Llamaremos ciclo a un circuito simple
    • Un vértice a se dice accesible desde el
      vértice b si existe un camino entre ellos. Todo
      vértice es accesible respecto a si mismo

    Clasificación de grafos

    Los grafos se pueden clasificar en dos grupos: dirigidos
    y no dirigidos. En un grafo no dirigido el par de vértices
    que representa un arco no está ordenado. Por lo tanto, los
    pares (v1, v2) y (v2, v1) representan el mismo arco. En un grafo
    dirigido cada arco está representado por un par ordenado
    de vértices, de forma que y representan dos arcos
    diferentes.

    Ejemplos

    G1 = (V1, A1)

    V1 = {1, 2, 3, 4} A1 = {(1, 2), (1, 3), (1, 4), (2, 3), (2,
    4), (3, 4)}

    G2 = (V2, A2)

    V2 = {1, 2, 3, 4, 5, 6} A2 = {(1, 2), (1, 3), (2, 4), (2, 5),
    (3, 6)}

    G3 = (V3, A3)

    V3 = {1, 2, 3} A3 = { <1, 2>, <2, 1>, <2, 3>
    }

    Gráficamente estas tres estructuras de vértices
    y arcos se pueden representar de la siguiente manera:

    Para ver el gráfico seleccione la
    opción "Descargar" del menú superior

    Algunos de los principales tipos de grafos son los que
    se muestran a continuación:

    • Grafo regular: Aquel con el mismo grado en
      todos los vértices. Si ese grado es k lo llamaremos
      k-regular.

    Por ejemplo, el primero de los siguientes grafos es
    3-regular, el segundo es 2-regular y el tercero no es
    regular

    • Grafo bipartito: Es aquel con cuyos
      vértices pueden formarse dos conjuntos disjuntos de modo
      que no haya adyacencias entre vértices pertenecientes al
      mismo conjunto

    Ejemplo.- de los dos grafos siguientes el primero es
    bipartito y el segundo no lo es

    • Grafo completo: Aquel con una arista entre
      cada par de vértices. Un grafo completo con n
      vértices se denota Kn.

    A continuación pueden verse los dibujos de
    K3, K4, K5 y
    K6

    • Un grafo bipartito regular: se denota
      Km,n donde m, n es el grado de cada conjunto
      disjunto de vértices.

    A continuación ponemos los dibujos de
    K1,2, K3,3, y
    K2,5

     

    • Grafo nulo: Se dice que un grafo es nulo
      cuando los vértices que lo componen no están
      conectados, esto es, que son vértices
      aislados.
    • Grafos Isomorfos: Dos grafos son isomorfos
      cuando existe una correspondencia biunívoca (uno a uno),
      entre sus vértices de tal forma que dos de estos quedan
      unidos por una arista en común.

    Para ver el gráfico seleccione la
    opción "Descargar" del menú superior

    • Grafos Platónicos: Son
      los Grafos formados por los vértices y aristas de los
      cinco sólidos regulares (Sólidos
      Platónicos), a saber, el tetraedro, el cubo, el
      octaedro, el dodecaedro y el icosaedro.

    Para ver el gráfico seleccione la
    opción "Descargar" del menú superior

    Grafos Eulerianos.

    Para definir un camino euleriano es importante
    definir un camino euleriano primero. Un camino euleriano se
    define de la manera más sencilla como un camino que
    contiene todos los arcos del grafo.

    Teniendo esto definido podemos hablar de los grafos
    eulerianos describiéndolos simplemente como aquel grafo
    que contiene un camino euleriano. Como ejemplos tenemos las
    siguientes imágenes:

    El primer grafo de ellos no contiene caminos
    eulerianos mientras el segundo contiene al menos
    uno.

    Grafos
    Conexos
    .

    Un grafo se puede definir como conexo si cualquier
    vértice V pertenece al conjunto de vértices y es
    alcanzable por algún otro. Otra definición que
    dejaría esto más claro sería: "un grafo
    conexo es un grafo no dirigido de modo que para cualquier par de
    nodos existe al menos un camino que los une".

     Árboles.

    Un árbol se define como un
    tipo de grafo que no contiene ciclos, es decir es un grafo
    también acíclico, pero a su vez es conexo. Tal es
    el caso de los siguientes dos grafos en donde se puede notar que
    ninguno de los dos contiene repeticiones (ciclos).

    Bosques de árboles.

    Los bosques de árboles son un
    caso similar a los árboles, son acíclicos, pero no
    son conexos. Como ejemplo tenemos la siguiente
    figura.

    Para ver el gráfico seleccione
    la opción "Descargar" del menú
    superior

    Recorrido
    de un grafo.

    Recorrer un grafo significa tratar de alcanzar todos
    los nodos que estén relacionados con uno que llamaremos
    nodo de salida.    Existen básicamente dos
    técnicas para recorrer un grafo: el
    recorrido en anchura; y el recorrido en
    profundidad.

    • Recorrido en anchura:
         El recorrido en anchura supone
      recorrer el grafo, a partir de un nodo dado, en niveles, es
      decir, primero los que están a una distancia de un
      arco del nodo de salida, después los que están
      a dos arcos de distancia, y así sucesivamente hasta
      alcanzar todos los nodos a los que se pudiese llegar desde el
      nodo salida.
    • Recorrido en profundidad: el recorrido en
      profundidad trata de buscar los caminos que parten desde el
      nodo de salida hasta que ya no es posible avanzar más.
      Cuando ya no puede avanzarse más sobre el camino
      elegido, se vuelve atrás en busca de caminos
      alternativos, que no se estudiaron previamente.

    Representación de grafos en programas.

    Hay tres maneras de representar un grafo en un programa:
    mediante matrices,
    mediante listas y mediante matrices dispersas.

    • Representación mediante matrices:
        La forma más fácil de guardar la
      información de los nodos es mediante la
      utilización de un vector que indexe los nodos, de manera
      que los arcos entre los nodos se pueden ver como relaciones
      entre los índices. Esta relación entre
      índices se puede guardar en una matriz, que
      llamaremos de adyacencia.
    • Representación mediante listas:
         En las listas de adyacencia lo que haremos
      será guardar por cada nodo, además de la
      información que pueda contener el propio nodo, una lista
      dinámica con los nodos a los que se puede
      acceder desde él. La información de los nodos se
      puede guardar en un vector, al igual que antes, o en otra lista
      dinámica.
    • Representación mediante matrices
      dispersas:
         Para evitar uno de los
      problemas
      que teníamos con las listas de adyacencia, que era la
      dificultad de obtener las relaciones inversas, podemos utilizar
      las matrices dispersas, que contienen tanta información
      como las matrices de adyacencia, pero, en principio, no ocupan
      tanta memoria como
      las matrices, ya que al igual que en las listas de adyacencia,
      sólo representaremos aquellos enlaces que existen en el
      grafo.

    Dígrafo (grafo dirigido).

    A un grafo dirigido se le puede definir como un
    grafo que contiene aristas dirigidas, como en el siguiente
    caso.

      

    Aplicaciones de los
    dígrafos

      Una de las aplicaciones mas importantes
    es de hallar el camino mas corto hacia un destino, ya sea de una
    ciudad a otra, de unos departamentos a otros, para el recorrido
    de árboles, sirve para la representación de
    algoritmos,
    etc. Un ejemplo de esto es la tarea de freír un
    huevo.

    Grado
    de un grafo.

    • Grado de incidencia positivo: El grado
      de incidencia positivo de un nodonjes el número de arcos
      que tienen como nodo inicial anj. Ejemplo: El grado de
      incidencia de 1 es igual a 3.
    • Grado de incidencia negativo: El grado
      de incidencia negativo de un nodonjes el número de arcos
      que terminan ennj. Ejemplo: El grado de incidencia negativo de
      1 es igual a 1.
    • Grado de un nodo: Paradigrafoses el
      grado de incidencia positivo menos el grado de incidencia
      negativo del nodo. Ejemplo: El grado de 1 es igual a 3 –1
      = 2, el grado del nodo 4 es 2 –2 = 0. Para grafos no
      dirigidos es el número de líneas asociadas al
      nodo.

    Ciclo
    de un grafo.

    Ciclo: Es una cadena finita
    donde el nodo inicial de la cadena coincide con el nodo terminal
    de la misma.

    • Ciclo simple: Es el ciclo que a su vez
      es una cadena simple.

    Estructuras no lineales:
    Grafos

    Las estructuras de datos no lineales se
    caracterizan por no existir una relación de adyacencia,
    entre sus elementos, es decir, un elemento puede estar
    relacionado con cero, uno o más
    elementos.

    La estructura no lineal de datos más
    general es el grafo donde sus nodos pueden relacionarse de
    cualquier manera sin una relación de orden
    predefinida.

    Estructuras no lineales: Grafos Entre las múltiples
    aplicaciones que tienen estas estructuras podemos
    mencionar:•Para modelar diversas situaciones tales como:
    sistemas de
    aeropuertos, flujo de tráfico, y responder a preguntas
    como: ¿Qué tiempo es
    más corto?, ¿Cómo es más barato?, o
    ¿Qué camino es más corto?. •Los grafos
    también son utilizados para realizar planificación de actividades, tareas del
    computador,
    planificar operaciones en
    lenguaje de máquinas
    para minimizar tiempo de ejecución.¿Qué
    tarea debo hacer primero?. •Para representar circuitos
    eléctricos, de aguas etc… , y preguntar, están
    todas las componentes conectadas.

    Grafos Los grafos pueden ser utilizados como la
    estructura básica para múltiples aplicaciones en el
    área de la Computación. Un grafo G (N, A, f) es un
    conjunto no vacío, donde:•N={n1, n2, … ,nM) es el
    conjunto de nodos o vértices•A={a1, a2, …, a K} es
    el conjunto de aristas y•La función f
    : R →ΜΧΜindica los pares de nodos que
    estαn relacionados.•Grafos Dirigidos
    (Dígrafos) En estos grafos, las aristas que comunican dos
    nodos tienen un único sentido, una arista puede ir de x a
    y, pero no de y a x. Se expresa gráficamente con flechas
    que indican el sentido de la relación entre cada par de
    nodos.

    Grafos•Grafos no dirigidos En estos grafos,
    las aristas que comunican dos nodos tienen dos sentidos. Si una
    arista va de x a y, la misma arista va de y a x. Se expresa
    gráficamente por líneas. La representación
    gráfica de un grafo se define con un círculo o
    rectángulo para los nodos y las relaciones con
    líneas o flechas según sea un grafo no dirigido o
    un dígrafo, respectivamente.

    ANEXO

    Representación de
    grafos

    Las representaciones de grafos más
    habituales están basadas en matrices de adyacencia
    y listas de adyacencia. En este ejercicio se pretende
    representar distintos grafos utilizando tanto matrices como
    listas de adyacencia.

    Apartado
    a)

    El plan de estudios
    de determinada titulación se compone de 6 asignaturas, que
    por simplicidad, denominaremos y . A la hora de matricularse de las distintas
    asignaturas se ha de tener en cuenta una serie de dependencias
    entre ellas (prerrequisitos). De esta forma, un alumno no se
    puede matricular en una asignatura hasta haber aprobado aquellas
    otras que sean prerrequisito de dicha asignatura. Representaremos
    a continuación los prerrequisitos del plan de estudios
    como un grafo dirigido de dependencias.

    Por ejemplo, un arco del nodo al nodo indica que no es posible matricularse de sin haber aprobado previamente . A continuación se muestran las operaciones
    del TAD grafos necesarios para construir el grafo de
    dependencias.

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    Teniendo en cuenta que una operación de la
    forma

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    añade al grafo

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    un arco con origen en

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    y destino en

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    , se pide: Representar gráficamente
    y mediante matrices de adyacencia cada uno de los
    grafos

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

     

    Solución
    propuesta:

    A continuación se muestra la
    representación gráfica de los
    grafos.

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    La representación basada en matrices de
    adyacencia utiliza dos componentes. El primero es un conjunto que
    contiene los nodos del grafo. El segundo es una matriz booleana
    que representa los arcos. Existe un arco entre un nodo y otro si la posición de fila y columna tiene el valor
    (representado por una ). Las casillas vacías tienen
    valor

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    Apartado
    b)

    Una compañía telefónica
    desea realizar un estudio sobre las llamadas que realizan sus
    abonados. Para ello, se desea construir un grafo cuyos nodos son
    los abonados (identificados por su número de teléfono). La existencia de un arco con
    origen en el nodo y destino en el nodo indica que el abonado ha llamado alguna vez al abonado . En este grafo se realizan también borrados
    cuando alguno de los abonados se da de baja de la
    compañía telefónica. A continuación
    se muestra una serie de operaciones para la obtención del
    grafo de llamadas entre usuarios:

    Se pide: Representar gráficamente y
    mediante listas de adyacencia cada uno de los grafos
    , y .

    Solución
    propuesta:

    Para ver el gráfico
    seleccione la opción "Descargar" del menú
    superior

    Apartado
    c)

    • Teniendo en cuenta que el conjunto de
      asignaturas del plan de estudios no varía (aunque si lo
      pueden hacer los prerrequisitos), es posible representar el
      grafo del apartado a) ¿utilizando listas de
      adyacencia? ¿Por qué?

    Solución
    propuesta:

    Sí. De hecho, la representación
    basada en listas de adyacencia es más general que la
    basada en matrices de adyacencia. Por tanto, como es posible
    representarlo utilizando matrices de adyacencia, también
    es posible representarlo utilizando listas de
    adyacencia.

    • Teniendo en cuenta que el conjunto de abonados
      varía continuamente y es infactible dar una cota
      máxima del número de abonados, sería
      posible representar el grafo del apartado b) utilizando
      matrices de adyacencia? Por qué?

    Solución
    propuesta:

    No, ya que no podemos fijar de antemano las
    dimensiones de la matriz de adyacencia ni tampoco el nombre de
    los nodos a que corresponde cada fila y columna de dicha
    matriz.

     

    Margareth Iglesias

    República Bolivariana de Venezuela.

    Ministerio de Educación, Cultura y
    Deporte.

    I U. Politécnico "Santiago
    Mariño"

    Barcelona – Edo.
    Anzoátegui.

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter