1 / 34

Trazado de grafos mediante m todos dirigidos por fuerzas

Andr

Leo
Télécharger la présentation

Trazado de grafos mediante m todos dirigidos por fuerzas

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. Trazado de grafos mediante mtodos dirigidos por fuerzas Revisin del estado del arte y presentacin de algoritmos para grafos donde los vrtices son regiones geogrficas

    2. Andrs Aiello y Rodrigo I. Silveira

    3. Andrs Aiello y Rodrigo I. Silveira Contenido Introduccin al trazado de grafos. Revisin del estado del arte de los mtodos dirigidos por fuerzas. Algoritmos para grafos donde los vrtices son regiones geogrficas. Conclusiones y trabajo futuro.

    4. Andrs Aiello y Rodrigo I. Silveira Consiste en encontrar para cada vrtice del grafo una posicin en el plano. Si las aristas se dibujan como segmentos, esto define un dibujo o trazado del grafo. Hay infinitas formas de dibujar un grafo. La intencin es que el dibujo resultante sea estticamente bueno. Qu es el trazado de grafos

    5. Andrs Aiello y Rodrigo I. Silveira Ejemplo Dos trazados del mismo grafo:

    6. Andrs Aiello y Rodrigo I. Silveira Criterios estticos Definen qu hace que un trazado sea estticamente bueno. Los ms comunes: Minimizar cruces. Minimizacin de rea. Distribuir vrtices uniformemente. Maximizacin del ngulo entre ejes. Mostrar simetra. Longitud uniforme de aristas.

    7. Andrs Aiello y Rodrigo I. Silveira Pueden entrar en conflicto Ej. simetra vs. evitar cruces.

    8. Andrs Aiello y Rodrigo I. Silveira Familias de algoritmos Para clases especficas de grafos Arboles. Grafos dirigidos. Planares. Para grafos generales Para trazado ortogonal. Algoritmos dirigidos por fuerzas. Algoritmos espectrales.

    9. Mtodos dirigidos por fuerzas: revisin del estado del arte

    10. Andrs Aiello y Rodrigo I. Silveira Mtodos dirigidos por fuerzas Modelan al grafo con un sistema fsico. El trazado es obtenido buscando un equilibrio de ese sistema fsico. Tienen dos partes bien diferenciadas: Un modelo fsico. Un algoritmo para buscar un equilibrio.

    11. Andrs Aiello y Rodrigo I. Silveira Mtodos dirigidos por fuerzas (2) El primero fue el spring embedder. Plantea una analoga con resortes (Eades, 84). Veinte aos despus del algoritmo de Eades, existen cientos de variantes distintas. El objetivo de la primer parte del trabajo es presentar de manera organizada todas las publicaciones relevantes de la literatura.

    12. Andrs Aiello y Rodrigo I. Silveira Ventajas Intuitivos Sencillos de programar: AlgoritmoDF(Grafo G) Asignar posicin inicial a los vrtices. Repetir hasta que el sistema est en equilibrio: Seleccionar un vrtice v en G. Mover v de manera que las fuerzas del sistema disminuyan. Dan buenos resultados Muy flexibles Desventajas? Ms adelante

    13. Andrs Aiello y Rodrigo I. Silveira Spring embedder (Eades, 84) Present la analoga de los resortes. Modelo fsico: Fuerzas atractivas: Fuerza repulsivas: Criterios estticos que considera: Distribucin de nodos uniforme. Longitud de aristas uniforme.

    14. Andrs Aiello y Rodrigo I. Silveira Spring embedder (2) Algoritmo: SpringEmbedder(Grafo G) Asignar una posicin al azar a cada vrtice de G. Repetir M veces: Para cada v?V Calcular f(v) (usando las fuerzas de la diapositiva anterior) Para cada v?V pv= pv+C4f(v) Complejidad: O(n3)

    15. Andrs Aiello y Rodrigo I. Silveira Mejoras del SE FR (Fruchterman y Reingold, 91) Otras fuerzas Atractivas: cuadrticas en la distancia (sin logaritmo). Repulsivas: inversas a la distancia. Temperatura global para acelerar convergencia. GEM (Frick et al., 95) Fuerzas similares a las de FR. Temperatura local para cada vrtice. Deteccin de oscilaciones y rotaciones. Misma complejidad que FR y SE. Pero en la prctica es uno de los ms rpidos.

    16. Andrs Aiello y Rodrigo I. Silveira Mejoras del SE (2) SM (Sugiyama y Misue, 95) Algunos resortes estn magnetizados. Hay campos magnticos que influyen en la direccin de esos resortes.

    17. Andrs Aiello y Rodrigo I. Silveira KK (Kamada y Kawai, 89) Un nico tipo de fuerzas (resortes) entre todos los pares de vrtices, con longitudes ideales distintas. Criterio esttico que considera: La distancia entre vrtices debe ser igual a la distancia terica. Mantiene implcitamente los dos criterios anteriores.

    18. Andrs Aiello y Rodrigo I. Silveira KK (2) Enfoque basado en energa: Equivalente a usar fuerzas lineales. Para encontrar el mnimo de la energa usan Newton-Raphson.

    19. Andrs Aiello y Rodrigo I. Silveira DH (Davidson y Harel, 89) Enfoque basado en energa. Modelo: definido por una suma de potenciales Distribucin de nodos. Longitud de aristas. Cruces de aristas. Distancia nodo arista. Espacio de dibujo. Extremadamente flexible.

    20. Andrs Aiello y Rodrigo I. Silveira DH (2) Algoritmo: utiliza Simulated Annealing Idea bsica: Para cada v?V Elegir al azar una nueva posicin para v. Si la energa disminuye con esa posicin, la acepto. Sino, con cierta probabilidad, la acepto igual. Cunto moverse en cada paso depende de una temperatura que va decreciendo. Al comienzo los movimientos son grandes. Y se van haciendo cada vez ms cortos. Es de los algoritmos ms lentos.

    21. Andrs Aiello y Rodrigo I. Silveira Comparacin No hay muchos estudios que los comparen. Los pocos que hay (Brandenburg, 95), (Behzadi, 99) concluyen que: Todos obtienen trazados estticamente agradables. El ms flexible es DH. GEM y KK son los ms rpidos, mientras que DH es el ms lento. Conclusin: no hay un ganador universal.

    22. Andrs Aiello y Rodrigo I. Silveira Ejemplos Mismo grafo, distintos algoritmos

    23. Andrs Aiello y Rodrigo I. Silveira Desventajas Tres puntos dbiles: Alto costo computacional (en tiempo). Pueden caer en mnimos locales pobres. Encontrar los ptimos globales es NP-Hard. Falta de fundamentos tericos.

    24. Andrs Aiello y Rodrigo I. Silveira Aspectos numricos Todos los algoritmos dirigidos por fuerzas minimizan una funcin. La forma en que lo hacen marca las diferencias entre cada uno. Todos usan alguna tcnica numrica. Aunque en la mayora de los casos, est implcita. Hacerla explcita es importante!

    25. Andrs Aiello y Rodrigo I. Silveira Fuerzas vs. energa Los algoritmos se dedican a: Buscar un equilibrio de un sistema fsico (ej. spring embedder, FR, GEM). O a minimizar una funcin de energa (ej. KK, DH). Pero son equivalentes La fuerza neta que afectan a un nodo constituye el gradiente (negativo) de su energa. Mnimos de energa son equilibrios del sistema de fuerzas.

    26. Andrs Aiello y Rodrigo I. Silveira Mtodo del gradiente Consiste en moverse siempre hacia (menos) la direccin del gradiente. La funcin que estamos minimizando es la energa del trazado. El spring embedder mueve cada nodo en la direccin de la fuerza neta Que es igual a moverse en la direccin opuesta al gradiente. El spring embedder y sus derivados (FR, SM, etc.) usan el mtodo del gradiente.

    27. Andrs Aiello y Rodrigo I. Silveira Otros mtodos de optimizacin KK usa Newton-Raphson para buscar un equilibrio. DH usa Simulated Annealing. Tunkelang (99) usa gradiente conjugado. Branke et al. (96) usan algoritmos genticos. El algoritmo baricntrico de Tutte resuelve un sistema lineal con Gauss-Seidel. Muchos otros son posibles!

    28. Andrs Aiello y Rodrigo I. Silveira Trazados 3D En lugar de buscar posiciones en el plano, buscamos en el espacio. Ventajas: Ms libertad de movimiento. Es ms fcil llegar a un equilibrio Los cruces de aristas no son un problema. Desventajas: Es necesario proyectar los resultados a 2D. Pueden aparecer cruces!

    29. Andrs Aiello y Rodrigo I. Silveira A pesar de todo... Pruebas empricas indican que se puede trasmitir ms informacin (Dwyer, 00) El uso de programas interactivos de visualizacin hace que el usuario visualice el trazado 3D desde cualquier ngulo. Se hace necesario disear algoritmos para trazar grafos en 3D.

    30. Andrs Aiello y Rodrigo I. Silveira Adaptar algoritmos a 3D Algunos son difciles de llevar a 3D (ej. ortogonales, por capas) Los dirigidos por fuerzas no requieren casi adaptaciones! Los que modelan con resortes no tienen ningn problema. Tampoco los que usan funciones generales Otros como KK, GEM y SM requieren adaptar algunas partes. Pero sigue siendo relativamente fcil.

    31. Andrs Aiello y Rodrigo I. Silveira Hay muchas otras adaptaciones posibles Para trazar grafos dinmicos. Para trazar grafos con restricciones: Vrtices con forma y tamao. Aristas especiales (curvas, con pesos). Restricciones en la posicin de los vrtices. Para trazar grafos con clusters. Para trazar grafos grandes. Comentaremos muy brevemente sobre ellos.

    32. Andrs Aiello y Rodrigo I. Silveira Grafos dinmicos Grafos que cambian a lo largo del tiempo Se quiere ir trazando el grafo a medida que cambia. Preservando el mapa mental:

    33. Andrs Aiello y Rodrigo I. Silveira Grafos dinmicos (2) Los algoritmos dirigidos por fuerzas se adaptan muy bien a esta situacin: Se pueden agregar vrtices ficticios (fijos) en las posiciones anteriores de cada vrtices, conectados por resortes a sus respectivos vrtices (Brandes et al., 00). Si se usa DH o similar, se agrega un potencial que penalice ubicar a un vrtice lejos de su posicin anterior. Tambin suelen animarse los movimientos El spring embedder y derivados son ideales para esto.

    34. Andrs Aiello y Rodrigo I. Silveira Restricciones Los grafos que se deben trazar en las aplicaciones concretas suelen venir con restricciones. Una muy comn es forma y tamao: los vrtices suelen ser dibujados con figuras geomtricas. El tamao y la forma deben ser considerados por los algoritmos, sino: Algunos vrtices pueden solaparse Algunas aristas pueden atravesar vrtices

    35. Andrs Aiello y Rodrigo I. Silveira Restricciones (2) Ejemplo:

    36. Andrs Aiello y Rodrigo I. Silveira Restricciones (3) Posibles soluciones: Adaptar las longitudes ideales de los resortes para contemplar forma y tamao (Wang y Miyamoto, 95), (Harel y Koren, 02). Agregar potenciales o fuerzas que penalicen el solapamiento de vrtices (Kamps et al., 95). Trazar el grafo normalmente, luego arreglar los solapamientos (Gasner y North, 98). Usar campos potenciales (Chuang et. al, 04).

    37. Andrs Aiello y Rodrigo I. Silveira Restricciones (4) Otras consideraciones: Aristas con pesos. Se pueden adaptar las longitudes ideales para contemplarlos (Ej. Erbacher et. al, 04). Aristas curvas. Se toman los puntos de control de las curvas como vrtices, y se traza el grafo normalmente. (Ej. Finkel, 04)

    38. Andrs Aiello y Rodrigo I. Silveira Restricciones (5) Tambin puede haber restricciones en la posicin de los vrtices: Un vrtice debe estar fijo. Un vrtice debe estar dentro de una regin. La distancia entre dos vrtices debe ser fija. Y muchas otras. Muchas soluciones posibles: Son fciles de integrar al spring embedder. Ej: Antes de mover cada vrtice, controlo que no se viole ninguna restriccin. Si uso DH o similar, puedo agregar un potencial que penalice la violacin de las restricciones.

    39. Andrs Aiello y Rodrigo I. Silveira Ejemplos Aristas curvas (Finkel, 04) Restricciones en los vrtices (He y Marriot, 98)

    40. Andrs Aiello y Rodrigo I. Silveira Grafos con clusters Los grafos pueden tener clusters. Objetivo: que el trazado refleje las agrupaciones entre vrtices. Solucin sencilla: agregar vrtices atractores (ej. Huang y Eades, 00):

    41. Andrs Aiello y Rodrigo I. Silveira Clusters (2) Ejemplos: (Wang y Miyamoto, 95) (Huang y Eades, 00)

    42. Andrs Aiello y Rodrigo I. Silveira Grafos grandes La complejidad cbica de los algoritmos clsicos los hace poco prcticos para grafos de ms de unos pocos cientos de nodos. Dos formas de lidiar con grafos grandes: Simulacin de N-cuerpos. Algoritmos multinivel/multidimensionales.

    43. Andrs Aiello y Rodrigo I. Silveira Grafos grandes (2) Simulacin de N-cuerpos Problema comn en la fsica. En nuestro caso, los cuerpos son los vrtices. Objetivo: evitar calcular todas las fuerzas repulsivas, que es O(n2). Motivacin: a medida que los vrtices se alejan, las fuerzas repulsivas dejan de tener peso en la fuerza neta. No calcular todos los pares de fuerzas, sino slo los de los vrtices ms cercanos.

    44. Andrs Aiello y Rodrigo I. Silveira Grafos grandes (3) Algoritmos multinivel Separan el grafo en distintos niveles de abstraccin. Partiendo del grafo original, se lo va simplificando hasta llegar a un grafo de unos pocos vrtices. Se hace el trazado de ese grafo simple, se fijan los nodos ubicados y se agregan los del nivel siguiente (Gajer, 00), (Walshaw, 03) (Hachul 04). La cantidad de nodos no fijos es siempre pequea.

    45. Andrs Aiello y Rodrigo I. Silveira Ejemplos Grafos de unos 1.000 vrtices (Gajer et al., 00) Grafos de 5.000, 15.000 y 88.000 vrtices (Walshaw, 03):

    46. Andrs Aiello y Rodrigo I. Silveira Trazado inicial La mayora de los algoritmos parten de un trazado inicial al azar. El trazado inicial influye en dos factores: Velocidad de convergencia. Calidad del resultado. Ej.:

    47. Andrs Aiello y Rodrigo I. Silveira Trazado inicial (2) Se pueden realizar trazados ms elaborados. Ej.: Para obtener trazados planos de grafos planares (Harel y Sardas, 95). Para evitar mnimos pobres (Behzadi, 99). Para acelerar la convergencia (Mutton y Rodgers, 02).

    48. Andrs Aiello y Rodrigo I. Silveira Comentarios La flexibilidad y sencillez de los algoritmos dirigidos por fuerzas ha hecho que surgieran cientos de variantes. Sin existir (hasta ahora) un compendio ordenado y completo de los algoritmos existentes. En esta tesis se intent abarcar a todos los trabajos relevantes. En esta presentacin slo hemos mencionado algunas de las principales variantes.

    49. Algoritmos para grafos donde los vrtices son regiones geogrficas De aqu en adelante dejaremos de lado las generalidades de trazado de grafos para focalizarnos en nuestro problema particular que es cuando los vrtices son regiones geogrficas. De aqu en adelante dejaremos de lado las generalidades de trazado de grafos para focalizarnos en nuestro problema particular que es cuando los vrtices son regiones geogrficas.

    50. Andrs Aiello y Rodrigo I. Silveira Contenido Introduccin. Anlisis y definicin de los criterios estticos. Algoritmos propuestos. Primero vamos a plantear una pequea introduccin definiendo el problema, para luego poder hacer un analisis de los criterios estticos estudiados y con estos propondremos algoritmos que satisfagan dichos criterios.Primero vamos a plantear una pequea introduccin definiendo el problema, para luego poder hacer un analisis de los criterios estticos estudiados y con estos propondremos algoritmos que satisfagan dichos criterios.

    51. Andrs Aiello y Rodrigo I. Silveira Nuestro problema Dado un grafo G = (V,E) y un conjunto de regiones R, donde R es la regin (no vaca) del plano representada por el vrtice , encontrar un trazado de G en el plano que sea estticamente bueno y donde para todo vrtice Formalmente nuestro problema se define de la siguiente forma: dado un grafo G=(VE) y un conjunto de regiones R donde Rv es una regin del plano no vaca que es representada por el vrtice v, encontrar un trazado de G en el plano que sea estticamente bueno y donde cada vrtice se ubique dentro de su regin correspondiente. Notar la importancia de la palabra representada, visto que existe bibliografa en la cual se limitan los movimientos a una regin, pero como veremos ms adelante esto no alcanza para representarla de forma efectiva.Formalmente nuestro problema se define de la siguiente forma: dado un grafo G=(VE) y un conjunto de regiones R donde Rv es una regin del plano no vaca que es representada por el vrtice v, encontrar un trazado de G en el plano que sea estticamente bueno y donde cada vrtice se ubique dentro de su regin correspondiente. Notar la importancia de la palabra representada, visto que existe bibliografa en la cual se limitan los movimientos a una regin, pero como veremos ms adelante esto no alcanza para representarla de forma efectiva.

    52. Andrs Aiello y Rodrigo I. Silveira Nuestro problema (2) Consideraciones generales Regiones representadas por polgonos o discos. Presentamos nuevas soluciones. Los algoritmos se basaron en SE y DH pero pueden utilizarse las mismas ideas en cualquier otro. Algunas aclaraciones generales sobre nuestro trabajo. Por simplicidad consideramos solo 2 tipos de regiones: polgonos y discos. Esto se debe a la simplicidad de estas regiones y a que cualquier figura podra ser aproximada por un polgono se as se desea. Es importante aclarar que nosotros presentamos soluciones para un problema aun no tratado por lo tanto no son necesariamente ptimas, pero aportan un nuevo punto de vista. Y justamente, como lo importante que presentamos es el nuevo punto de vista, pese a que basamos nuestros algoritmos en DH y SE, las mismas ideas pueden aplicarse a cualquier otro algoritmo de trazado de grafos de forma relativamente sencilla.Algunas aclaraciones generales sobre nuestro trabajo. Por simplicidad consideramos solo 2 tipos de regiones: polgonos y discos. Esto se debe a la simplicidad de estas regiones y a que cualquier figura podra ser aproximada por un polgono se as se desea. Es importante aclarar que nosotros presentamos soluciones para un problema aun no tratado por lo tanto no son necesariamente ptimas, pero aportan un nuevo punto de vista. Y justamente, como lo importante que presentamos es el nuevo punto de vista, pese a que basamos nuestros algoritmos en DH y SE, las mismas ideas pueden aplicarse a cualquier otro algoritmo de trazado de grafos de forma relativamente sencilla.

    53. Andrs Aiello y Rodrigo I. Silveira Nuestro problema (3) Trabajo previo No encontramos trabajos previos para nuestra problema particular, sino para restricciones parecidas pero que no alcanzan. Restricciones sobre la posicin de vrtices Restricciones respecto a otros vrtices. (Kamps et al., 95) (Wang y Miyamoto, 82). Restricciones lineales arbitrarias. (He y Marriot, 98). Restricciones no lineales. (Hansen et al., 02). Limitar los movimientos. (DiBattista et al., 99). No hemos encontrado trabajo previo sobre nuestro problema, lo ms semejante que se encuentra son trabajos sobre restricciones en la posicin de los nodos. Es muy importante notar la diferencia entre restringir un nodo a una regin y buscar que ste la represente, cuando veamos los criterios estticos veremos cuan diferente es.No hemos encontrado trabajo previo sobre nuestro problema, lo ms semejante que se encuentra son trabajos sobre restricciones en la posicin de los nodos. Es muy importante notar la diferencia entre restringir un nodo a una regin y buscar que ste la represente, cuando veamos los criterios estticos veremos cuan diferente es.

    54. Andrs Aiello y Rodrigo I. Silveira Nuestro problema (4) Ejemplo: Para ilustrar, un pequeo ejemplo de un mapa de espaa muestra la red IRISPara ilustrar, un pequeo ejemplo de un mapa de espaa muestra la red IRIS

    55. Andrs Aiello y Rodrigo I. Silveira Similitudes y diferencias Representar una regin vs. estar dentro. Criterios estticos. Algoritmos. Similutudes y diferencias de nuestro problema con el problema general. Como hemos venido diciendo, existen diferencias entre nuestro problema y el problema general que no permiten aplicar de forma directa los algoritmos existentes. Uno de los principales problemas como puede verse en la figura es que no es lo mismo representar una regin que estar dentro de ella. En la figura todos los vrtices cumplen estar dentro de la regin, pero claramente no representan bien la relacin entre stas. Este problema se debe a que los criterios estticos que debe cumplir no son los mimos que antes, sino que se agregan algunos propios de nuestro nuevo dominio. Los algoritmos para conseguir estos criterios son adaptaciones de los algoritmos clsicos visto que no tiene sentido reinventar la rueda y como ya hemos visto los algoritmos dirigidos por fuerzas son muy flexibles.Similutudes y diferencias de nuestro problema con el problema general. Como hemos venido diciendo, existen diferencias entre nuestro problema y el problema general que no permiten aplicar de forma directa los algoritmos existentes. Uno de los principales problemas como puede verse en la figura es que no es lo mismo representar una regin que estar dentro de ella. En la figura todos los vrtices cumplen estar dentro de la regin, pero claramente no representan bien la relacin entre stas. Este problema se debe a que los criterios estticos que debe cumplir no son los mimos que antes, sino que se agregan algunos propios de nuestro nuevo dominio. Los algoritmos para conseguir estos criterios son adaptaciones de los algoritmos clsicos visto que no tiene sentido reinventar la rueda y como ya hemos visto los algoritmos dirigidos por fuerzas son muy flexibles.

    56. Andrs Aiello y Rodrigo I. Silveira Criterios estticos Anlisis de criterios previos. Presentacin de nuevos criterios. Criterios especiales para segmentos. Primero hagamos un anlisis de los criterios estticos ya existentes.Primero hagamos un anlisis de los criterios estticos ya existentes.

    57. Andrs Aiello y Rodrigo I. Silveira Criterios estticos: previos Minimizar cruces entre aristas. Maximizar el ngulo entre aristas adyacentes. Maximizar el ngulo entre aristas que se cruzan. Mostrar simetra. Distribucin uniforme de los vrtices. Longitud uniforme de aristas. El criterio de minimizacin de cruces sigue teniendo sentido, pero no es as todos los referentes a ngulos visto que ahora los vrtices tienen cierta regin asociada que determina su orientacin. Lo mismo pasa con la simetra, es muy reducida considerando los acotados movimientos que puede tener cada nodo. La distribucin uniforme carece totalmente de sentido visto que la distribucin est dada en gran medida por las regiones. El caso de la longitud de aristas es uno de los ms importantes visto que claramente una arista entre dos regiones tiene una longitud mnima y una mxima predefinida, pero cual es la longitud ideal no est del todo claro. Sobre este tema abordaremos ms adeltante.El criterio de minimizacin de cruces sigue teniendo sentido, pero no es as todos los referentes a ngulos visto que ahora los vrtices tienen cierta regin asociada que determina su orientacin. Lo mismo pasa con la simetra, es muy reducida considerando los acotados movimientos que puede tener cada nodo. La distribucin uniforme carece totalmente de sentido visto que la distribucin est dada en gran medida por las regiones. El caso de la longitud de aristas es uno de los ms importantes visto que claramente una arista entre dos regiones tiene una longitud mnima y una mxima predefinida, pero cual es la longitud ideal no est del todo claro. Sobre este tema abordaremos ms adeltante.

    58. Andrs Aiello y Rodrigo I. Silveira Criterios estticos Anlisis de criterios previos. Presentacin de nuevos criterios. Criterios especiales para segmentos. Lo importante de esto es notar que no alcanza con evaluar los criterios existentes, sino que hay que investigar para ver si existen nuevos criterios, y esto es lo que desarrollaremos a continuacin.Lo importante de esto es notar que no alcanza con evaluar los criterios existentes, sino que hay que investigar para ver si existen nuevos criterios, y esto es lo que desarrollaremos a continuacin.

    59. Andrs Aiello y Rodrigo I. Silveira Criterios estticos: nuevos Los vrtices deben estar ubicados cerca del centro de sus regiones. Los vrtices no deben estar cerca de los bordes. Bsicamente los criterios mas importantes que definimos son dos, uno respecto al centro de las regiones y otro respecto a los bordes. En la figura se puede ver claramente como un mismo trazado puede quedar de una forma u otra con el solo hecho de considerar los centros y bordes de las regiones. La importancia de estos criterios es porque los centros de las regiones son un punto significativo de la figura, entonces ayuda a identificarla fcilmente, aqu es donde se ve reflejado que los nodos representen a las regiones. El caso de los bordes es por dos motivos. Por un lado si un nodo se encuentra muy cerca de un borde se encuentra lejos de su centro, entonces no la representa bien, pero por otro lado tambin crea confusin por una cuestin de no poder distinguir bien cual es la regin de origen.Bsicamente los criterios mas importantes que definimos son dos, uno respecto al centro de las regiones y otro respecto a los bordes. En la figura se puede ver claramente como un mismo trazado puede quedar de una forma u otra con el solo hecho de considerar los centros y bordes de las regiones. La importancia de estos criterios es porque los centros de las regiones son un punto significativo de la figura, entonces ayuda a identificarla fcilmente, aqu es donde se ve reflejado que los nodos representen a las regiones. El caso de los bordes es por dos motivos. Por un lado si un nodo se encuentra muy cerca de un borde se encuentra lejos de su centro, entonces no la representa bien, pero por otro lado tambin crea confusin por una cuestin de no poder distinguir bien cual es la regin de origen.

    60. Andrs Aiello y Rodrigo I. Silveira Criterios estticos: nuevos Anlisis de criterios previos. Presentacin de nuevos criterios. Criterios especiales para segmentos. Para el caso de los segmentos hemos hecho un anlisis aparte pero sin encontrar resultados interesantes en lo que respecta a los criterios. Sorprendentemente no suele importar tanto el centro como en las regiones anteriormente vistas, pero no llegamos a mayores conclusiones. DECIR LO Q C SACO BASICAMENTEPara el caso de los segmentos hemos hecho un anlisis aparte pero sin encontrar resultados interesantes en lo que respecta a los criterios. Sorprendentemente no suele importar tanto el centro como en las regiones anteriormente vistas, pero no llegamos a mayores conclusiones. DECIR LO Q C SACO BASICAMENTE

    61. Andrs Aiello y Rodrigo I. Silveira Algoritmos propuestos Por qu no utilizar los algoritmos ya presentados? Algoritmos utilizados Spring Embedder. DH. Muchos se preguntarn porque no utilizar los algoritmos ya existentes. La respuesta es sencilla, porque estos algoritmos no estn diseados para los criterios que consideramos. Un ejemplo claro es el que puede verse en la figura, en donde el trazado obtenido es bueno pero no se puede apreciar a que regin pertenece cada nodo. Por este motivo es necesario adaptar los algoritmos a nuestro problema particular. En los siguientes minutos explicaremos las modificaciones que debimos hacer a SR y a DH para poder utilizarlos en nuestro problema.Muchos se preguntarn porque no utilizar los algoritmos ya existentes. La respuesta es sencilla, porque estos algoritmos no estn diseados para los criterios que consideramos. Un ejemplo claro es el que puede verse en la figura, en donde el trazado obtenido es bueno pero no se puede apreciar a que regin pertenece cada nodo. Por este motivo es necesario adaptar los algoritmos a nuestro problema particular. En los siguientes minutos explicaremos las modificaciones que debimos hacer a SR y a DH para poder utilizarlos en nuestro problema.

    62. Andrs Aiello y Rodrigo I. Silveira Adaptaciones Forma de proyectar. Longitud ideal de las aristas. Longitudes fijas NO! Longitudes variables Fuerzas centrpetas. Evitar vrtices muy cercanos a los bordes. Minimizar cruces entre aristas. Las adaptaciones que realizamos se pueden dividir bsicamente en 5 grupos aqu enumerados. El primer problema es la forma de proyectar un nodo cuando ste se va fuera de la regin. La primer aproximacin es simplemente rechazar cualquier movimiento hacia fuera, pero perjudica claramente la esttica y el modelo fsico. La segunda opcin es proyectar al punto mas cercano, dando la idea de que el nodo resbala sobre el borde, lo cual si se acomoda al modelo fsico real. El segundo problema, y uno de los ms importantes es el de la longitud de las aristas. Cuando comenzamos a trabajar venamos con la idea de longitudes uniformes del problema general, pero nos dimos cuenta que en nuestro problema no se puede aplicar, visto que las regiones ya determinan un mnimo y un mximo que no necesariamente coincide de una arista a otra. Por este motivo las longitudes de las aristas deben ser variables, dependiendo de cada aristas. Ms adelante entraremos en detalle de cmo definir una longitud ideal para cada arista. La siguiente adaptacin importante es la incorporacin de fuerzas centrpetas que explicitan el criterio de que los nodos deben mantenerse cerca de los centros. Lo mismo pasa con evitar vrtices muy cercanos a los bordes, que intenta de forma explicita hacer que se cumpla el criterio esttico. Tambin hicimos algunas adaptaciones para minimizar la cantidad de cruces entre aristas que aunque no es propio de nuestro problema, no deja de ser un criterio vlido.Las adaptaciones que realizamos se pueden dividir bsicamente en 5 grupos aqu enumerados. El primer problema es la forma de proyectar un nodo cuando ste se va fuera de la regin. La primer aproximacin es simplemente rechazar cualquier movimiento hacia fuera, pero perjudica claramente la esttica y el modelo fsico. La segunda opcin es proyectar al punto mas cercano, dando la idea de que el nodo resbala sobre el borde, lo cual si se acomoda al modelo fsico real. El segundo problema, y uno de los ms importantes es el de la longitud de las aristas. Cuando comenzamos a trabajar venamos con la idea de longitudes uniformes del problema general, pero nos dimos cuenta que en nuestro problema no se puede aplicar, visto que las regiones ya determinan un mnimo y un mximo que no necesariamente coincide de una arista a otra. Por este motivo las longitudes de las aristas deben ser variables, dependiendo de cada aristas. Ms adelante entraremos en detalle de cmo definir una longitud ideal para cada arista. La siguiente adaptacin importante es la incorporacin de fuerzas centrpetas que explicitan el criterio de que los nodos deben mantenerse cerca de los centros. Lo mismo pasa con evitar vrtices muy cercanos a los bordes, que intenta de forma explicita hacer que se cumpla el criterio esttico. Tambin hicimos algunas adaptaciones para minimizar la cantidad de cruces entre aristas que aunque no es propio de nuestro problema, no deja de ser un criterio vlido.

    63. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: aristas de longitud variable (2) Longitud ideal de aristas Distancia mnima Distancia mxima Distancia entre centros Distancia de compromiso Una vez definido el centro de la regin, las posibles longitudes ideales de una arista podran ser penadas como la distancia minima entre las regiones, la distancia mxima y la distancia entre sus centros. Luego de analiss experimentales llegamos a la conclusin que la mejor no es ninguna, sino la que definimos como distancia de compromiso que esta definida por la siguiente frmula. Es un promedio ponderado de la distancia mnima y la distancia entre centros. Es muy importante notar las grandes mejoras que trajo la inclusin de esta longitud a nuestros algoritmos.Una vez definido el centro de la regin, las posibles longitudes ideales de una arista podran ser penadas como la distancia minima entre las regiones, la distancia mxima y la distancia entre sus centros. Luego de analiss experimentales llegamos a la conclusin que la mejor no es ninguna, sino la que definimos como distancia de compromiso que esta definida por la siguiente frmula. Es un promedio ponderado de la distancia mnima y la distancia entre centros. Es muy importante notar las grandes mejoras que trajo la inclusin de esta longitud a nuestros algoritmos.

    64. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: fuerzas hacia el centro (SE) Fuerza centrpeta: Idea de nodo ficticio Siguiendo con la idea de cumplir con los criterios estticos que definimos agregamos una fuerza centrpeta. Para poder conseguir esto implementamos dos soluciones distintas, una para SE y una para DH. En el caso de SE agregamos un nodo ficticio en el centro de cada regin unido nicamente con el nodo correspondiente a dicha regin, pero tomando como longitud ideal de dicha arista cierto valor psilon.Siguiendo con la idea de cumplir con los criterios estticos que definimos agregamos una fuerza centrpeta. Para poder conseguir esto implementamos dos soluciones distintas, una para SE y una para DH. En el caso de SE agregamos un nodo ficticio en el centro de cada regin unido nicamente con el nodo correspondiente a dicha regin, pero tomando como longitud ideal de dicha arista cierto valor psilon.

    65. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: fuerzas hacia el centro (DH) Penalizar distancia entre un vrtice y su centro. Potencial: Para el caso de DH simplemente agregamos un potencial que penalice a cada nodo segn la distancia al centro de su regin.Para el caso de DH simplemente agregamos un potencial que penalice a cada nodo segn la distancia al centro de su regin.

    66. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: evitar vrtices muy cercanos a los bordes Implementado en DH. Primera idea: Segunda idea: Por qu elegir la segunda? El otro criterio que era necesario tratar era el de la distancia a los bordes. Para esto se nos presentaron dos ideas a implementar en DH. Pese a lo confusa que parece la segunda permite ajustar de forma no uniforme la prioridad de alejarse del borde segn la distancia que se est de ste.El otro criterio que era necesario tratar era el de la distancia a los bordes. Para esto se nos presentaron dos ideas a implementar en DH. Pese a lo confusa que parece la segunda permite ajustar de forma no uniforme la prioridad de alejarse del borde segn la distancia que se est de ste.

    67. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: minimizar cruces entre aristas Implementado sobre DH. Distancia entre todo par de aristas. Para minimizar la cantidad de cruces lo primero que hicimos fue expresar este problema de forma continua considerando la distancia entre todo par de aristas. Es muy importante poder darle un tratamiento continuo al problema visto que esto ayuda a la convergencia.Para minimizar la cantidad de cruces lo primero que hicimos fue expresar este problema de forma continua considerando la distancia entre todo par de aristas. Es muy importante poder darle un tratamiento continuo al problema visto que esto ayuda a la convergencia.

    68. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: minimizar cruces entre aristas (2) Distancia mnima entre vrtices y cruces. El problema de oslo considerar la distancia entre aristas es que cuando se produce un cruce estas se encuentran a distancia 0, al margen de si el cruce se puede salir facilmente o no. Con la idea de atacar los problemas en los cuales existe un nodo que claramente es el que puede romper el cruce de forma sencilla decidimos considerar tambin un potencial a la distancia mnima al cruce. De esta forma el nodo mas cercano al cruce tendera a intentar seguir acercandose hasta cruzarlo mientras que los dems no se vern afectados. Aclarar xq se usa la mnima y no la suma de las distancias o algo as. Aclarar q es O(1).El problema de oslo considerar la distancia entre aristas es que cuando se produce un cruce estas se encuentran a distancia 0, al margen de si el cruce se puede salir facilmente o no. Con la idea de atacar los problemas en los cuales existe un nodo que claramente es el que puede romper el cruce de forma sencilla decidimos considerar tambin un potencial a la distancia mnima al cruce. De esta forma el nodo mas cercano al cruce tendera a intentar seguir acercandose hasta cruzarlo mientras que los dems no se vern afectados. Aclarar xq se usa la mnima y no la suma de las distancias o algo as. Aclarar q es O(1).

    69. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: SER2 y DHR2 Implementacin en Java. Incluyen todas las ideas presentadas. Pueden probarse en http://www.luchemos.org.ar/rodrigo/tesis.

    70. Andrs Aiello y Rodrigo I. Silveira Adaptaciones: SET Criterio que intenta cumplir: los nodos no deben estar cerca de las aristas. Agrega fuerza de repulsin nodo-arista. Distancia ideal es la formada por el tringulo equiltero. Otra adaptacion que realizamos es la que se puede encontrar en el algoritmo llamado SET. Esta adaptacion no para un criterio propio de nuestro problema pero igual lo adaptamos visto que se enfoca en el criterio de que los nodos no deben estar cerca de las aristas, lo cual en nuestro contexto tambien es perjudicial. La forma de hacer cumplir este criterio es definir una distancia ideal de cada nodo a cada arista no incidente, es decir que no esta conectado. Consideramos que dicha distancia ideal debera ser la que forma un triangulo equilatero visto que es lo que intuitivamente es mas agradable a la vista. Los resultados obtenidos fueron buenos, pero en el problema de regiones hace que los nodos vayan demasiado a los bordes visto que son muy empujados. Consideramos que en trabajos futuros podra tratarse de solo tener en cuenta las aristas que se encuentran cercanas.Otra adaptacion que realizamos es la que se puede encontrar en el algoritmo llamado SET. Esta adaptacion no para un criterio propio de nuestro problema pero igual lo adaptamos visto que se enfoca en el criterio de que los nodos no deben estar cerca de las aristas, lo cual en nuestro contexto tambien es perjudicial. La forma de hacer cumplir este criterio es definir una distancia ideal de cada nodo a cada arista no incidente, es decir que no esta conectado. Consideramos que dicha distancia ideal debera ser la que forma un triangulo equilatero visto que es lo que intuitivamente es mas agradable a la vista. Los resultados obtenidos fueron buenos, pero en el problema de regiones hace que los nodos vayan demasiado a los bordes visto que son muy empujados. Consideramos que en trabajos futuros podra tratarse de solo tener en cuenta las aristas que se encuentran cercanas.

    71. Andrs Aiello y Rodrigo I. Silveira Ejemplos Malla 4x4 utilizando DHR2 y SER2

    72. Andrs Aiello y Rodrigo I. Silveira Ejemplos (2) DH, SER2 y DHR2

    73. Andrs Aiello y Rodrigo I. Silveira Ejemplos (3) Repblica Argentina: SER2 y DHR2

    74. Andrs Aiello y Rodrigo I. Silveira Conclusiones y aportes Revisin del estado del arte Abarca la mayor parte de los trabajos publicados hasta el momento. Incluye los trabajos ms recientes. Provee una visin consistente, comparativa y transversal del tema.

    75. Andrs Aiello y Rodrigo I. Silveira Conclusiones y aportes (2) Algoritmos para grafos donde los vrtices son regiones geogrficas Se presenta y analiza un nuevo problema. Se estudian criterios estticos generales y se presentan los propios del problema. Se proponen algoritmos para los criterios definidos. Nuevo potencial para evitar cruces de aristas.

    76. Andrs Aiello y Rodrigo I. Silveira Trabajo futuro Optimizacin de los algoritmos. Problema de grafos grandes. Otros tipos de regiones. Trazado inicial. Y muchos ms!

    77. Muchas gracias! Preguntas? Para ms informacin: http://www.luchemos.org.ar/rodrigo/tesis

More Related