Articulo de referencia

Planarización

En el campo matemático de la teoría de grafos , la planarización es un método para extender los métodos de dibujo de grafos desde grafos planares a grafos que no son planares, m...

En el campo matemático de la teoría de grafos , la planarización es un método para extender los métodos de dibujo de grafos desde grafos planares a grafos que no son planares, mediante la incrustación de los grafos no planares dentro de un grafo planar más grande. [ 1 ] [ 2 ]

La planarización puede realizarse utilizando cualquier método para encontrar un dibujo (con intersecciones) del grafo dado, y luego reemplazando cada punto de intersección por un nuevo vértice artificial , lo que provoca que cada arista cruzada se subdivida en un camino . El grafo original se representará como un menor de inmersión de su planarización.

En la planarización incremental , el proceso de planarización se divide en dos etapas. Primero, se encuentra un subgrafo planar grande dentro del grafo dado. Luego, las aristas restantes que no forman parte de este subgrafo se agregan una a una y se enrutan a través de una incrustación del subgrafo planar. Cuando una de estas aristas cruza una arista ya incrustada, las dos aristas que se cruzan se reemplazan por caminos de dos aristas, con un nuevo vértice artificial que representa el punto de cruce ubicado en el medio de ambos caminos. [ 1 ] [ 2 ] En algunos casos, se agrega una tercera etapa de optimización local al proceso de planarización, en la que las aristas con muchos cruces se eliminan y se vuelven a agregar en un intento de mejorar la planarización. [ 1 ]

Encontrar el subgrafo planar más grande

El uso de la planarización incremental para el dibujo de grafos es más efectivo cuando el primer paso del proceso encuentra el grafo planar más grande posible. Desafortunadamente, encontrar el subgrafo planar con el número máximo posible de aristas (el problema del subgrafo planar máximo [ 3 ] ) es NP-difícil y MaxSNP-difícil , lo que implica que probablemente no exista un algoritmo de tiempo polinomial que resuelva el problema exactamente o que lo aproxime arbitrariamente bien. [ 4 ]

En un grafo conexo de n vértices , el subgrafo planar más grande tiene como máximo 3 n 6 aristas, y cualquier árbol de expansión forma un subgrafo planar con n 1 aristas. Por lo tanto, es fácil aproximar el subgrafo planar máximo dentro de una razón de aproximación de un tercio, simplemente encontrando un árbol de expansión. Se conoce una razón de aproximación mejor, 9/4, basada en un método para encontrar un 2-árbol parcial grande como un subgrafo del grafo dado. [ 1 ] [ 4 ] Alternativamente, si se espera que el subgrafo planar incluya casi todas las aristas del grafo dado, dejando solo un pequeño número k de aristas no planas para el proceso de planarización incremental, entonces se puede resolver el problema exactamente usando un algoritmo tratable de parámetro fijo cuyo tiempo de ejecución es lineal en el tamaño del grafo pero no polinomial en el parámetro k . [ 5 ] El problema también puede resolverse exactamente mediante un algoritmo de ramificación y corte , sin garantías en el tiempo de ejecución, pero con un buen rendimiento en la práctica. [ 1 ] [ 6 ] Este parámetro k se conoce como la asimetría del grafo. [ 3 ] [ 7 ]     

También se ha estudiado un problema relacionado: encontrar el subgrafo inducido planar más grande de un grafo dado. Nuevamente, este problema es NP-difícil, pero tratable con parámetros fijos cuando todos los vértices, excepto unos pocos, pertenecen al subgrafo inducido. [ 8 ] Edwards y Farr (2002) demostraron una cota ajustada de 3 n /(Δ  +  1) para el tamaño del subgrafo inducido planar más grande, en función de n , el número de vértices en el grafo dado, y Δ, su grado máximo ; su demostración conduce a un algoritmo de tiempo polinomial para encontrar un subgrafo inducido de este tamaño. [ 9 ]

Agregar aristas a una planarización

Una vez encontrado un subgrafo planar grande, el proceso de planarización incremental continúa considerando las aristas restantes una por una. Al hacerlo, mantiene una planarización del subgrafo formado por las aristas que ya se han considerado. Agrega cada nueva arista a una incrustación planar de este subgrafo, formando un dibujo con cruces, y luego reemplaza cada punto de cruce con un nuevo vértice artificial que subdivide las dos aristas que se cruzan. [ 1 ] [ 2 ] En algunas versiones de este procedimiento, el orden para agregar aristas es arbitrario, pero también es posible elegir el orden como una permutación aleatoria , ejecutando el mismo algoritmo varias veces y devolviendo la mejor planarización que encuentra. [ 1 ]

En la forma más simple de este proceso, la incrustación planar del subgrafo planarizado no puede cambiar mientras se agregan nuevas aristas. Para agregar cada nueva arista de manera que se minimice el número de cruces que forma, se puede usar un algoritmo de camino más corto en el grafo dual de la incrustación actual, para encontrar la secuencia más corta de caras de la incrustación y aristas que se deben cruzar y que conecta los extremos de la nueva arista entre sí. Este proceso toma tiempo polinomial por arista. [ 2 ]

Fijar la incrustación del subgrafo planarizado no es necesariamente óptimo en términos del número de cruces resultantes. De hecho, existen grafos formados al añadir una arista a un subgrafo planar, donde el dibujo óptimo tiene solo dos cruces, pero donde fijar la incrustación planar del subgrafo obliga a crear un número lineal de cruces. [ 1 ] Como compromiso entre encontrar la planarización óptima de un subgrafo planar más una arista y mantener una incrustación fija, es posible buscar entre todas las incrustaciones del subgrafo planarizado y encontrar la que minimiza el número de cruces formados por la nueva arista. [ 1 ] [ 10 ]

Referencias

  1. 1 2 3 4 5 6 7 8 9 Buchheim, Christoph; Chimani, Markus; Gutwenger, Carsten; Jünger, Michael; Mutzel, Petra (2014), "Cruces y planarización", en Tamassia, Roberto (ed.), Manual de dibujo y visualización de grafos , Matemáticas discretas y sus aplicaciones (Boca Ratón), CRC Press, Boca Ratón, Florida.
  2. 1 2 3 4 Di Battista, Giuseppe; Eades, Peter ; Tamassia, Roberto ; Tollis, Ioannis G. (1998), Graph Drawing: Algorithms for the Visualization of Graphs (1.ª ed.), Prentice Hall, pp. 215–218 , ISBN   0133016153.
  3. 1 2 Chimani, Markus (2008), Cálculo de números de cruce (PDF) , tesis doctoral, Universidad Técnica de Dortmund , Sección 4.3.1, archivado del original (PDF) el 16 de noviembre de 2015.
  4. 1 2 Calinescu, Gruia; Fernández, Cristina G.; Finkler, Ulrich; Karloff, Howard (1998), "Un mejor algoritmo de aproximación para encontrar subgrafos planos", Journal of Algorithms , 27 (2): 269–302 , CiteSeerX 10.1.1.37.4317 , doi : 10.1006/jagm.1997.0920 , MR 1622397 , S2CID 8329680   .
  5. Kawarabayashi, Ken-ichi ; Reed, Bruce (2007), "Cálculo del número de cruces en tiempo lineal", Actas del Trigésimo Noveno Simposio Anual de la ACM sobre Teoría de la Computación (STOC '07) , págs. 382–390 , doi : 10.1145/1250790.1250848 , ISBN  978-1-59593-631-8, MR 2402463 , S2CID 13000831  .
  6. Jünger, M.; Mutzel, P. (1996), "Subgrafos planares máximos e incrustaciones agradables: herramientas prácticas de diseño" (PDF) , Algorithmica , 16 (1): 33–59 , doi : 10.1007/s004539900036 , MR 1394493 .
  7. Weisstein, Eric W. "Asimetría de grafos" . MathWorld .
  8. Kawarabayashi, Ken-ichi (2009), "Planaridad que permite pocos vértices de error en tiempo lineal", 50.º Simposio Anual IEEE sobre Fundamentos de la Informática (FOCS '09) (PDF) , págs. 639–648 , doi : 10.1109/FOCS.2009.45 , ISBN  978-1-4244-5116-6, MR 2648441 , S2CID 11647021  .
  9. Edwards, Keith; Farr, Graham (2002), "Un algoritmo para encontrar subgrafos planares inducidos grandes", Graph Drawing: 9th International Symposium, GD 2001 Viena, Austria, 23–26 de septiembre de 2001, Artículos revisados , Lecture Notes in Comp. Sci., vol. 2265, Springer, pp. 75–80 , doi : 10.1007/3-540-45848-4_6 , ISBN   978-3-540-43309-5, MR 1962420 .
  10. Gutwenger, Carsten; Mutzel, Petra ; Weiskircher, René (2005), "Inserting an edge into a planar graph", Algorithmica , 41 (4): 289–308 , doi : 10.1007/s00453-004-1128-8 , MR 2122529 , S2CID 6441726  .