En teoría de grafos , una rama de las matemáticas, una base de ciclo de un grafo no dirigido es un conjunto de ciclos simples que forma una base del espacio de ciclos del grafo. Es decir, es un conjunto mínimo de ciclos que permite expresar cada subgrafo de grado par como una diferencia simétrica de ciclos de base.
Se puede formar una base de ciclo fundamental a partir de cualquier árbol de expansión o bosque de expansión del grafo dado, seleccionando los ciclos formados por la combinación de un camino en el árbol y una única arista fuera del árbol. Alternativamente, si las aristas del grafo tienen pesos positivos, la base de ciclo de peso mínimo se puede construir en tiempo polinomial .
En los grafos planares , el conjunto de ciclos acotados de una incrustación del grafo forma una base de ciclo. La base de ciclo de peso mínimo de un grafo planar corresponde al árbol de Gomory-Hu del grafo dual .
Un subgrafo generador de un grafo dado G tiene el mismo conjunto de vértices que G mismo pero, posiblemente, menos aristas. Se dice que un grafo G , o uno de sus subgrafos, es euleriano si cada uno de sus vértices tiene grado par (su número de aristas incidentes). Cada ciclo simple en un grafo es un subgrafo euleriano, pero puede haber otros. El espacio de ciclos de un grafo es la colección de sus subgrafos eulerianos. Forma un espacio vectorial sobre el cuerpo finito de dos elementos . La operación de adición vectorial es la diferencia simétrica de dos o más subgrafos, que forma otro subgrafo que consiste en las aristas que aparecen un número impar de veces en los argumentos de la operación de diferencia simétrica. [1]
Una base de ciclo es una base de este espacio vectorial en la que cada vector base representa un ciclo simple. Consiste en un conjunto de ciclos que se pueden combinar, utilizando diferencias simétricas, para formar cada subgrafo euleriano, y que es minimal con esta propiedad. Cada base de ciclo de un grafo dado tiene el mismo número de ciclos, que es igual a la dimensión de su espacio de ciclos. Este número se llama rango de circuito del grafo, y es igual a donde es el número de aristas del grafo, es el número de vértices y es el número de componentes conectados . [2]
Se han estudiado varios tipos especiales de bases de ciclo, incluidas las bases de ciclo fundamental, las bases de ciclo débilmente fundamental, las bases de ciclo disperso (o 2-) y las bases de ciclo integral. [3]
Todo grafo tiene una base de ciclo en la que cada ciclo es un ciclo inducido . En un grafo conexo de 3 vértices , siempre existe una base formada por ciclos periféricos , ciclos cuya eliminación no separa el grafo restante. [4] [5] En cualquier grafo que no sea uno formado añadiendo una arista a un ciclo, un ciclo periférico debe ser un ciclo inducido.
Si es un árbol de expansión o un bosque de expansión de un grafo dado , y es una arista que no pertenece a , entonces el ciclo fundamental definido por es el ciclo simple que consiste en junto con el camino en la conexión de los puntos finales de . Hay exactamente ciclos fundamentales, uno para cada arista que no pertenece a . Cada uno de ellos es linealmente independiente de los ciclos restantes, porque incluye una arista que no está presente en ningún otro ciclo fundamental. Por lo tanto, los ciclos fundamentales forman una base para el espacio de ciclos. [1] [2] Una base de ciclo construida de esta manera se llama base de ciclo fundamental o base de ciclo fuertemente fundamental . [3]
También es posible caracterizar bases de ciclos fundamentales sin especificar el árbol para el que son fundamentales. Existe un árbol para el que una base de ciclo dada es fundamental si y solo si cada ciclo contiene una arista que no está incluida en ningún otro ciclo de base, es decir, cada ciclo es independiente de los demás. De ello se deduce que una colección de ciclos es una base de ciclo fundamental de si y solo si tiene la propiedad de independencia y tiene el número correcto de ciclos para ser una base de . [6]
Una base de ciclo se llama débilmente fundamental si sus ciclos pueden colocarse en un ordenamiento lineal tal que cada ciclo incluye al menos una arista que no está incluida en ningún ciclo anterior. Una base de ciclo fundamental es automáticamente débilmente fundamental (para cualquier ordenamiento de aristas). [3] [7] Si cada base de ciclo de un grafo es débilmente fundamental, lo mismo es cierto para cada menor del grafo. Con base en esta propiedad, la clase de grafos (y multigrafos ) para los cuales cada base de ciclo es débilmente fundamental puede caracterizarse por cinco menores prohibidos : el grafo de la pirámide cuadrada , el multigrafo formado al duplicar todas las aristas de un ciclo de cuatro vértices, dos multigrafos formados al duplicar dos aristas de un tetraedro y el multigrafo formado al triplicar las aristas de un triángulo. [8]
Si un grafo planar finito conexo está incrustado en el plano, cada cara de la incrustación está limitada por un ciclo de aristas. Una cara es necesariamente ilimitada (incluye puntos arbitrariamente alejados de los vértices del grafo) y las caras restantes están limitadas. Por la fórmula de Euler para grafos planares , hay caras exactamente limitadas. La diferencia simétrica de cualquier conjunto de ciclos de caras es el límite del conjunto de caras correspondiente, y diferentes conjuntos de caras limitadas tienen diferentes límites, por lo que no es posible representar el mismo conjunto como una diferencia simétrica de ciclos de caras de más de una manera; esto significa que el conjunto de ciclos de caras es linealmente independiente. Como conjunto linealmente independiente de suficientes ciclos, necesariamente forma una base de ciclo. [9] Siempre es una base de ciclo débilmente fundamental, y es fundamental si y solo si la incrustación del grafo es exteriormente plana .
Para los grafos correctamente incrustados en otras superficies de modo que todas las caras de la incrustación sean discos topológicos, no es cierto en general que exista una base de ciclo que utilice solo ciclos de caras. Los ciclos de caras de estas incrustaciones generan un subconjunto propio de todos los subgrafos eulerianos. El grupo de homología de la superficie dada caracteriza a los subgrafos eulerianos que no pueden representarse como el límite de un conjunto de caras. El criterio de planaridad de Mac Lane utiliza esta idea para caracterizar los grafos planares en términos de las bases de ciclo: un grafo finito no dirigido es planar si y solo si tiene una base de ciclo dispersa o 2-base , [3] una base en la que cada arista del grafo participa en como máximo dos ciclos de base. En un grafo planar, la base de ciclo formada por el conjunto de caras acotadas es necesariamente dispersa y, a la inversa, una base de ciclo dispersa de cualquier grafo forma necesariamente el conjunto de caras acotadas de una incrustación plana de su grafo. [9] [10]
El espacio de ciclos de un grafo puede interpretarse utilizando la teoría de homología como el grupo de homología de un complejo simplicial con un punto para cada vértice del grafo y un segmento de línea para cada arista del grafo. Esta construcción puede generalizarse al grupo de homología sobre un anillo arbitrario . Un caso especial importante es el anillo de números enteros , para el cual el grupo de homología es un grupo abeliano libre , un subgrupo del grupo abeliano libre generado por las aristas del grafo. De manera menos abstracta, este grupo puede construirse asignando una orientación arbitraria a las aristas del grafo dado; entonces los elementos de son etiquetados de las aristas del grafo por números enteros con la propiedad de que, en cada vértice, la suma de las etiquetas de las aristas entrantes es igual a la suma de las etiquetas de las aristas salientes. La operación de grupo es la suma de estos vectores de etiquetas. Una base de ciclo integral es un conjunto de ciclos simples que genera este grupo. [3]
Si a las aristas de un grafo se les asignan pesos de números reales, el peso de un subgrafo puede calcularse como la suma de los pesos de sus aristas. La base de peso mínima del espacio de ciclos es necesariamente una base de ciclos: por el teorema de Veblen , [11] cada subgrafo euleriano que no sea en sí mismo un ciclo simple puede descomponerse en múltiples ciclos simples, que necesariamente tienen un peso menor.
Según las propiedades estándar de las bases en espacios vectoriales y matroides, la base de ciclo de peso mínimo no solo minimiza la suma de los pesos de sus ciclos, sino que también minimiza cualquier otra combinación monótona de los pesos de los ciclos. Por ejemplo, es la base de ciclo la que minimiza el peso de su ciclo más largo. [12]
En cualquier espacio vectorial, y más generalmente en cualquier matroide , se puede encontrar una base de peso mínimo mediante un algoritmo voraz que considere los elementos de base potenciales uno a la vez, en orden ordenado por sus pesos, y que incluya un elemento en la base cuando sea linealmente independiente de los elementos de base elegidos previamente. La prueba de independencia lineal se puede realizar mediante eliminación gaussiana . Sin embargo, un grafo no dirigido puede tener un conjunto exponencialmente grande de ciclos simples, por lo que sería computacionalmente inviable generar y probar todos esos ciclos.
Horton (1987) proporcionó el primer algoritmo de tiempo polinomial para encontrar una base de peso mínimo, en grafos para los cuales cada peso de arista es positivo. Su algoritmo utiliza este enfoque de generación y prueba, pero restringe los ciclos generados a un pequeño conjunto de ciclos, llamados ciclos de Horton . Un ciclo de Horton es un ciclo fundamental de un árbol de ruta más corta del grafo dado. Hay como máximo n árboles de ruta más corta diferentes (uno para cada vértice inicial) y cada uno tiene menos de m ciclos fundamentales, lo que da el límite en el número total de ciclos de Horton. Como mostró Horton, cada ciclo en la base de ciclo de peso mínimo es un ciclo de Horton. [13] El uso del algoritmo de Dijkstra para encontrar cada árbol de ruta más corta y luego usar la eliminación gaussiana para realizar los pasos de prueba del algoritmo de base voraz conduce a un algoritmo de tiempo polinomial para la base de ciclo de peso mínimo. Investigadores posteriores han desarrollado algoritmos mejorados para este problema, [14] [15] [16] [17] reduciendo la complejidad temporal del peor caso para encontrar una base de ciclo de peso mínimo en un gráfico con aristas y vértices a . [18]
Encontrar la base fundamental con el mínimo peso posible está estrechamente relacionado con el problema de encontrar un árbol de expansión que minimice el promedio de las distancias por pares; ambos son NP-hard . [19] Encontrar una base fundamental débilmente ponderada también es NP-hard, [7] y aproximarla es MAXSNP-hard . [20] Si se permiten pesos negativos y ciclos ponderados negativamente, entonces encontrar una base de ciclo mínimo (sin restricción) también es NP-hard, ya que se puede utilizar para encontrar un ciclo hamiltoniano : si un grafo es hamiltoniano, y a todas las aristas se les da un peso −1, entonces una base de ciclo de peso mínimo necesariamente incluye al menos un ciclo hamiltoniano.
La base de ciclo de peso mínimo para un grafo planar no es necesariamente la misma que la base formada por sus caras acotadas: puede incluir ciclos que no sean caras, y algunas caras pueden no estar incluidas como ciclos en la base de ciclo de peso mínimo. Sin embargo, existe una base de ciclo de peso mínimo en la que no hay dos ciclos que se crucen entre sí: por cada dos ciclos en la base, o bien los ciclos encierran subconjuntos disjuntos de las caras acotadas, o bien uno de los dos ciclos encierra al otro. Este conjunto de ciclos corresponde, en el grafo dual del grafo planar dado, a un conjunto de cortes que forman un árbol de Gomory–Hu del grafo dual, la base de peso mínimo de su espacio de cortes . [21] Con base en esta dualidad, se puede construir una representación implícita de la base de ciclo de peso mínimo en un grafo planar en el tiempo . [22]
Las bases de ciclos se han utilizado para resolver problemas periódicos de programación, como el problema de determinar el horario de un sistema de transporte público. En esta aplicación, los ciclos de una base de ciclos corresponden a variables en un programa entero para resolver el problema. [23]
En la teoría de la rigidez estructural y la cinemática , las bases de ciclo se utilizan para guiar el proceso de configuración de un sistema de ecuaciones no redundantes que se pueden resolver para predecir la rigidez o el movimiento de una estructura. En esta aplicación, las bases de ciclo de peso mínimo o casi mínimo conducen a sistemas de ecuaciones más simples. [24]
En la computación distribuida , se han utilizado bases de ciclo para analizar el número de pasos necesarios para que un algoritmo se estabilice. [25]
En bioinformática , las bases cíclicas se han utilizado para determinar información de haplotipos a partir de datos de secuencias del genoma. [26] Las bases cíclicas también se han utilizado para analizar la estructura terciaria del ARN . [27]
La base del ciclo de peso mínimo de un gráfico del vecino más cercano de puntos muestreados de una superficie tridimensional se puede utilizar para obtener una reconstrucción de la superficie. [28]
En quimioinformática , la base del ciclo mínimo de un gráfico molecular se denomina el conjunto más pequeño de anillos más pequeños . [29] [30] [31]