1 / 26

Etiquetados Garbosos y Mágicos en Grafos

Etiquetados Garbosos y Mágicos en Grafos. Proyecto Fin de Carrera Autor: Cristina Ruiz Gómez Tutor: Gregorio Hernández Peñalver. Índice. Introducción Aplicación Teoría Teoría de Grafos Etiquetado Garboso Etiquetado Mágico Etiquetado Consecutivo Etiquetado Conservativo

clare
Download Presentation

Etiquetados Garbosos y Mágicos en Grafos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Etiquetados Garbosos y Mágicos en Grafos Proyecto Fin de Carrera Autor: Cristina Ruiz Gómez Tutor: Gregorio Hernández Peñalver

  2. Índice • Introducción • Aplicación • Teoría • Teoría de Grafos • Etiquetado Garboso • Etiquetado Mágico • Etiquetado Consecutivo • Etiquetado Conservativo • Conclusiones • Bibliografía

  3. INTRODUCCIÓN • Desarrollo de una aplicación concebida como un juego, que permite: • Edición de grafos. • Etiquetados garbosos, mágicos, consecutivos y conservativos en grafos.

  4. APLICACIÓN (I) • Aplicación desarrollada en J2SE (Java Standard Edition). • Orientado a objetos. • Multiplataforma. • Entre 18000 y 20000 líneas de código. • Es una aplicación standalone para la edición y cálculo de etiquetados garbosos, mágicos, consecutivos y conservativos en grafos. • Código fuente formado por cinco paquetes: • Estructuras: modelo estático • Eventos: manejadores de eventos y acciones • Interfaz: interfaz gráfico • Idioma: archivos .properties • Constantes: constantes utilizadas por la aplicación • Código comentado según la Java Code Convention • Herramienta JavaDoc

  5. APLICACIÓN (II) • Descripción genérica de la funcionalidad: • Edición de grafos • Creación y borrado de nodos • Creación y borrado de aristas • Etiquetado de nodos y aristas • Zoom del área de edición de grafos • Creación de grafos • Partiendo de un grafo vacío • Partiendo de grafos estándar • Grafo completo y ciclo • Grafo bipartito y bipartito completo • Grafo rueda y rueda dirigida • Grafos de Petersen, doble conos y producto K4 x Pn • Estrellas, caminos y orugas • Cálculo de un etiquetado de un tipo de grafo • Comprobación de un etiquetado realizado por el usuario • Guardar grafo a fichero • Abrir grafo de fichero

  6. TEORÍA – Teoría de Grafos (I) • Un grafo G = (V, A) se compone de: • V conjunto no vacío y finito de puntos (nodos). • A conjunto de pares de nodos que puede ser vacío (aristas) • Orden del grafo: número de vértices y se denota por |V| • Tamaño del grafo: número de aristas y se denota por |A| • Dos vértices son adyacentes si tienen una arista en común. • Una arista y un vértice son incidentes si el vértice es extremo de la arista. • Se llama grado de un vértice al número de aristas incidentes con él.

  7. TEORÍA – Teoría de Grafos (II) • Camino hamiltoniano: camino que recorre exactamente una vez, todos los vértices de un grafo. • Ciclo hamiltoniano: si el camino comienza y termina en el mismo vértice, estamos hablando de un ciclo.

  8. TEORÍA – Etiquetado Garboso (I) • Etiquetado Garboso: Dado un grafo G, con n vértices y q aristas, un etiquetado garboso sería aquel en el que se etiqueta a las aristas con los números comprendidos entre 1 y q y los vértices con los números comprendidos entre 0 y q y se tiene que cumplir que las diferencias de las etiquetas de los vértices que delimitan cada arista es el mismo valor de la etiqueta de la arista.

  9. TEORÍA – Etiquetado Garboso (II) • Etiquetado Garboso Perfecto: Dado un grafo con n vértices y q aristas, un etiquetado garboso perfecto sería aquel en el que se etiqueta a las aristas con los números comprendidos entre 1 y q y los vértices con los números comprendidos entre 1 y n. Y se tiene que cumplir que las diferencia de las etiquetas de los vértices que delimitan cada arista es el mismo valor de la etiqueta de la arista.

  10. TEORÍA - Etiquetado Garboso (III) • Ciclo (Cn) es garboso para: n ≡ 0, 3 (mod 4) • Si n ≡ 0 (mod 4) • A cada vértice vi le asignamos la etiqueta ai, donde: (i – 1)/2 si i es impar ai = n + 1 – i/2 si i es par y i ≤ n/2 n – i/2 si i es par y i > n/2 • Si n ≡ 3 (mod 4) • A cada vértice vi le asignamos la etiqueta bi, donde: n + 1 – i/2 si i es par bi =(i – 1)/2 si i es impar y i ≤ (n – 1)/2 (i + 1)/2 si i es impar y i > (n -1)/2 • Kn es garboso para n ≤ 4.

  11. TEORÍA - Etiquetado Garboso (IV) • Dado un grafo Ka, b, con a vértices en la capa superior y b vértices en la inferior. Asignamos: • A los vértices de la capa superior las etiquetas: 0, 1, 2,…, a -1 • A los vértices de la capa inferior las etiquetas: a, 2a, 3a,…,ba

  12. TEORÍA - Etiquetado Garboso (V) • La aplicación proporciona solución para Wn, donde n ≤ 7. • Grafos de Petersen (GP(n, k)) para n ≥ 5 y n ≤ 10 • Doble Cono para n = 3,4,5,7,8,9,11,12 • Producto K4 x Pn para n ≤ 5

  13. TEORÍA - Etiquetado Garboso (VI) • Todas las estrellas son garbosas. Etiquetamos: • El vértice central (de grado n – 1) con el valor 1. • El resto de vértices consecutivamente: 2,3,4,…, n • Las aristas con la diferencia entre las etiquetas que delimitan cada vértice. • Todos los caminos son garbosos. Dado un grafo Pn, etiquetamos: • Los vértices, comenzando por un extremo: n, 1, n–1, 2, n–2, 3,…, i, n–i. • Las aristas con la diferencia entre las etiquetas que delimitan cada vértice. • La secuencia será: n-1, n-2,…, 1.

  14. TEORÍA - Etiquetado Garboso (VII) • Todas las orugas son garbosas. Algoritmo Etiquetado: • Empezamos con uno de los vértices v extremos, pertenecientes al camino H, y dividimos los vértices en dos conjuntos X e Y, de tal forma que si dos vértices son vecinos, nunca estarán en el mismo conjunto o partición. • Etiquetamos v con n – 1. • Etiquetamos los vecinos de v a partir de 0, incrementando en 1 el valor de cada nueva etiqueta, y de tal forma que el vecino de v en el camino, w, tenga la etiqueta más alta de todas, entre los vecinos de las etiquetas de v. • A continuación, etiquetamos los vecinos de w excepto v con valores descendentes por n – 2, de tal forma que el otro vecino de w en H tenga la etiqueta más pequeña. • Continuamos hasta que todos los vértices hayan sido etiquetados.

  15. TEORÍA - Etiquetado Garboso (VIII) • Los vértices de Y tendrán los valores: 0,1,…,|Y| - 1 • Los vértices de X tendrán los valores: n – 1, n – 2,…,n - |X|

  16. TEORÍA – Etiquetado Mágico (I) • Etiquetado súper-mágico: Dado un grafo G con n vértices y q aristas, un etiquetado súper mágico es aquel en el que etiquetamos las aristas con los números comprendidos entre 1 y q, de tal forma que la suma de las etiquetas de todas las aristas incidentes con un vértice, sea la misma para todos los vértices del grafo. • En la literatura, al etiquetado súper-mágico se le conoce como mágico.

  17. TEORÍA – Etiquetado Mágico (II) • Grafos que admiten un etiquetado mágico: • Grafos bipartitos con exactamente dos ciclos hamiltonianos • Algoritmo de etiquetado: • Partimos de un vértice a. • Etiquetamos el primer ciclo hamiltoniano con: 4n – 1, 1, 4n – 3, 3,…, 2n + 1, 2n – 1 • Etiquetamos las aristas del segundo ciclo con: 2, 4n, 4, 4n – 2,…, 2n, 2n + 2

  18. TEORÍA – Etiquetado Consecutivo (I) • Dado un grafo G con n vértices y q aristas, un etiquetado consecutivo sería aquel en el que se etiqueta a los vértices y a las aristas con los números comprendidos entre 1 y n + q. Además debe cumplirse, que las diferencias de las etiquetas de los vértices que delimitan cada arista es el valor de la etiqueta de la arista. • Grafos que admiten un etiquetado consecutivo: • Estrella • Camino

  19. TEORÍA - Etiquetado Consecutivo (II) • Algoritmo de Etiquetado: • Etiquetamos el vértice central (grado n – 1) con la etiqueta 1. • Etiquetamos el resto de vértices con 3, 5,…, n + q • Etiquetamos las aristas con la diferencia de las etiquetas de los dos vértices que delimitan cada arista.

  20. TEORÍA - Etiquetado Consecutivo (III) • No existe ningún algoritmo correcto para el etiquetado consecutivo de un camino. • La solución de la aplicación se obtiene mediante fuerza bruta (pseudocódigo): for all p such that p is already labelled do for all q such that q is adjacent to p and q is not yet labelled do for all l such that l would be a label for q producing the edge with difference MaxDiff do if RecursiveLabel(G) returns a labelling then return the labelling else unlabel q end if end for end for end for

  21. TEORÍA – Etiquetado conservativo (I) • Ley de Kirchhoff. Es un grafo dirigido con un etiquetado conservativo, la suma de las etiquetas entrantes es igual a la suma de las etiquetas salientes de cada vértice del grafo.

  22. TEORÍA – Etiquetado conservativo (II) • Para n impar etiquetamos las aristas de la siguiente manera:

  23. TEORÍA – Etiquetado conservativo (III) • Para n par etiquetamos las aristas de la siguiente manera:

  24. CONCLUSIONES (I) • Aplicaciones: • Etiquetado garboso: • MPLS (protocolo de transporte de datos estándar creado por la IETF y definido en el RFC 3031). • Etiquetado garboso de orugas aplicado a problemas de multicast. • Aplicaciones teóricas: • Si un árbol T con n aristas es garboso, entonces el grafo K 2n+1 se puede descomponer en 2n+1 árboles, cada uno de ellos isomorfo al árbol dado. • El etiquetado garboso de un grafo bipartito se corresponde con un cuadrado mágico. • Aplicación: • Funciones docentes en la enseñanza de la teoría de grafos.

  25. CONCLUSIONES (II) • Afianzar conocimientos sobre Teoría de Grafos y sobre Ingeniería del Software. • Conocimientos sobre metodologías orientadas a objetos y nuevos conocimientos sobre Java. • Autodisciplina necesaria para realizar el proyecto.

  26. BIBLIOGRAFÍA • Libros • Nora Hartsfield y Gerhard Ringel, “Pearls in Graph Theory: A Comprehensive Introduction”, Courier Dover Publications, 2003 • G. Chartrand y L. Lesniak, “Graphs & Digraphs”, Chapman & Hall/CRC, 2004 • Harvey M. Deitel y Paul J. Deitel, “Java: Como Programar”, Prentice Hall Mexico, 2004 • Francisco Javier Ceballos, “Java 2. Lenguaje y Aplicaciones”, RA-MA, 2007 • Francisco Javier Ceballos, “Java 2. Interfaces Gráficas y Aplicaciones para Internet”, RA-MA, 2006 • Artículos • Joseph A. Gallian, “A Dynamic Survey of Graph Labeling”, 2005 • Mousa Alfalayleh, Ljiljana Brankovic, Helen Giggins y Md. Zahidul Islam, “Towards the Graceful Tree Conjecture: A Survey” • Brian Beavers, “Golomb Rulers and Graceful Graphs” • Timothy A. Redl, “Graceful Graphs and Graceful Labelings: Two Mathematical Programming Formulations and Some Other New Results”, 2003 • Michelle Edwards, “A Survey of Graceful Trees”, 2006 • Pavel Hrnciar y Gabriela Monoszová, “A New Family of Graceful Trees”

More Related