En el campo matemático de la teoría de grafos , un camino hamiltoniano (o camino trazable ) es un camino en un grafo dirigido o no dirigido que visita cada vértice exactamente una vez. Un ciclo hamiltoniano (o circuito hamiltoniano ) es un ciclo que visita cada vértice exactamente una vez. Un camino hamiltoniano que comienza y termina en vértices adyacentes se puede completar agregando una arista más para formar un ciclo hamiltoniano, y la eliminación de cualquier arista de un ciclo hamiltoniano produce un camino hamiltoniano. Los problemas computacionales para determinar si tales caminos y ciclos existen en grafos son NP-completos ; consulte el problema del camino hamiltoniano para obtener más detalles.
Los caminos y ciclos hamiltonianos reciben su nombre de William Rowan Hamilton , quien inventó el juego icosiano , ahora también conocido como el rompecabezas de Hamilton , que consiste en encontrar un ciclo hamiltoniano en el gráfico de aristas del dodecaedro . Hamilton resolvió este problema utilizando el cálculo icosiano , una estructura algebraica basada en raíces de la unidad con muchas similitudes con los cuaterniones (también inventados por Hamilton). Esta solución no se generaliza a gráficos arbitrarios.
A pesar de que llevan el nombre de Hamilton, los ciclos hamiltonianos en poliedros también habían sido estudiados un año antes por Thomas Kirkman , quien, en particular, dio un ejemplo de un poliedro sin ciclos hamiltonianos. [1] Incluso antes, los ciclos y caminos hamiltonianos en el grafo del caballo del tablero de ajedrez , el recorrido del caballo , habían sido estudiados en el siglo IX en las matemáticas indias por Rudrata , y aproximadamente al mismo tiempo en las matemáticas islámicas por al-Adli ar-Rumi . En la Europa del siglo XVIII, los recorridos del caballo fueron publicados por Abraham de Moivre y Leonhard Euler . [2]
Un camino hamiltoniano o camino trazable es un camino que visita cada vértice del grafo exactamente una vez. Un grafo que contiene un camino hamiltoniano se llama grafo trazable . Un grafo es hamiltoniano-conexo si para cada par de vértices hay un camino hamiltoniano entre los dos vértices.
Un ciclo hamiltoniano , circuito hamiltoniano , recorrido de vértices o ciclo de grafo es un ciclo que visita cada vértice exactamente una vez. Un grafo que contiene un ciclo hamiltoniano se denomina grafo hamiltoniano .
Se pueden definir nociones similares para gráficos dirigidos , donde cada borde (arco) de una trayectoria o ciclo solo se puede trazar en una única dirección (es decir, los vértices están conectados con flechas y los bordes se trazan "de cola a cabeza").
Una descomposición hamiltoniana es una descomposición de los bordes de un gráfico en circuitos hamiltonianos.
Un laberinto de Hamilton es un tipo de rompecabezas lógico en el que el objetivo es encontrar el ciclo hamiltoniano único en un gráfico dado. [3] [4]
Cualquier ciclo hamiltoniano se puede convertir en un camino hamiltoniano eliminando uno de sus bordes, pero un camino hamiltoniano se puede extender a un ciclo hamiltoniano solo si sus puntos finales son adyacentes.
Todos los grafos hamiltonianos son biconexos , pero un grafo biconexo no necesita ser hamiltoniano (véase, por ejemplo, el grafo de Petersen ). [9]
Un grafo euleriano G (un grafo conexo en el que cada vértice tiene grado par) necesariamente tiene un recorrido de Euler, un recorrido cerrado que pasa por cada arista de G exactamente una vez. Este recorrido corresponde a un ciclo hamiltoniano en el grafo lineal L ( G ) , por lo que el grafo lineal de cada grafo euleriano es hamiltoniano. Los grafos lineales pueden tener otros ciclos hamiltonianos que no corresponden a los recorridos de Euler y, en particular, el grafo lineal L ( G ) de cada grafo hamiltoniano G es en sí mismo hamiltoniano, independientemente de si el grafo G es euleriano. [10]
Un torneo (con más de dos vértices) es hamiltoniano si y sólo si está fuertemente conexo .
El número de ciclos hamiltonianos diferentes en un grafo completo no dirigido en n vértices es( n – 1)!/2 y en un grafo dirigido completo en n vértices es ( n – 1)! . Estos conteos suponen que los ciclos que son iguales aparte de su punto de partida no se cuentan por separado.
La mejor caracterización del grado de vértice de los grafos hamiltonianos fue proporcionada en 1972 por el teorema de Bondy - Chvátal , que generaliza resultados anteriores de GA Dirac (1952) y Øystein Ore . Tanto el teorema de Dirac como el de Ore también pueden derivarse del teorema de Pósa (1962). La hamiltonicidad ha sido ampliamente estudiada en relación con varios parámetros como la densidad del grafo , la tenacidad , los subgrafos prohibidos y la distancia , entre otros parámetros. [11] Los teoremas de Dirac y Ore establecen básicamente que un grafo es hamiltoniano si tiene suficientes aristas .
El teorema de Bondy-Chvátal opera sobre el cierre cl( G ) de un grafo G con n vértices, obtenido añadiendo repetidamente una nueva arista uv que conecta un par de vértices no adyacentes u y v con deg( v ) + deg( u ) ≥ n hasta que no se puedan encontrar más pares con esta propiedad.
Teorema de Bondy-Chvátal (1976) : Un grafo es hamiltoniano si y sólo si su cierre es hamiltoniano.
Como los grafos completos son hamiltonianos, todos los grafos cuyo cierre es completo son hamiltonianos, que es el contenido de los siguientes teoremas anteriores de Dirac y Ore.
Teorema de Dirac (1952) : Un grafo simple con n vértices ( ) es hamiltoniano si cada vértice tiene grado o mayor.
Teorema de Ore (1960) : Un grafo simple con n vértices () es hamiltoniano si, para cada par de vértices no adyacentes, la suma de sus grados es n o mayor.
Los siguientes teoremas pueden considerarse versiones dirigidas:
Ghouila–Houiri (1960) — Un gráfico dirigido simple fuertemente conexo con n vértices es hamiltoniano si cada vértice tiene un grado completo mayor o igual a n .
Meyniel (1973) — Un gráfico dirigido simple fuertemente conectado con n vértices es hamiltoniano si la suma de los grados completos de cada par de vértices distintos no adyacentes es mayor o igual a
El número de vértices debe duplicarse porque cada arista no dirigida corresponde a dos arcos dirigidos y, por lo tanto, el grado de un vértice en el gráfico dirigido es el doble del grado en el gráfico no dirigido.
Rahman– Kaykobad (2005) — Un gráfico simple con n vértices tiene una trayectoria hamiltoniana si, para cada par de vértices no adyacentes, la suma de sus grados y la longitud de su trayectoria más corta es mayor que n . [12]
El teorema anterior sólo puede reconocer la existencia de una trayectoria hamiltoniana en un gráfico y no de un ciclo hamiltoniano.
Muchos de estos resultados tienen análogos para los gráficos bipartitos equilibrados , en los que los grados de los vértices se comparan con el número de vértices en un solo lado de la bipartición en lugar del número de vértices en todo el gráfico. [13]
Teorema : Una triangulación planar con 4 conexiones tiene un ciclo hamiltoniano. [14]
Teorema : Un gráfico plano con 4 conexiones tiene un ciclo hamiltoniano. [15]
Una representación algebraica de los ciclos hamiltonianos de un dígrafo ponderado dado (cuyos arcos tienen pesos asignados a partir de un cierto campo de base) es el polinomio del ciclo hamiltoniano de su matriz de adyacencia ponderada definida como la suma de los productos de los pesos de los arcos de los ciclos hamiltonianos del dígrafo. Este polinomio no es idénticamente cero como función de los pesos de los arcos si y solo si el dígrafo es hamiltoniano. La relación entre las complejidades computacionales de calcularlo y calcular el permanente fue demostrada por Grigoriy Kogan. [16]