Etiquetados Garbosos y Mágicos en Grafos Proyecto Fin de Carrera Autor: Cristina Ruiz Gómez Tutor:...

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

Transcript of Etiquetados Garbosos y Mágicos en Grafos Proyecto Fin de Carrera Autor: Cristina Ruiz Gómez Tutor:...

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

Etiquetados Garbosos y Mágicos en Grafos

Proyecto Fin de Carrera

Autor: Cristina Ruiz GómezTutor: Gregorio Hernández Peñalver

Page 2: 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

Conclusiones Bibliografía

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

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.

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

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

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

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

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

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.

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

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.

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

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.

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

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.

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

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.

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

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

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

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

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

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.

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

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.

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

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|

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

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.

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

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

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

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

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

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.

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

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 forend for

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

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.

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

TEORÍA – Etiquetado conservativo (II)

Para n impar etiquetamos las aristas de la siguiente manera:

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

TEORÍA – Etiquetado conservativo (III)

Para n par etiquetamos las aristas de la siguiente manera:

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

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.

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

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.

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

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”