Una trayectoria Hamiltoniana, también llamado camino de Hamilton, es un camino gráfico entre dos vértices de un grafo que visita cada vértice exactamente una vez. Si existe un camino hamiltoniano cuyos puntos finales son adyacentes, entonces el ciclo del grafo resultante se llama ciclo hamiltoniano (o ciclo hamiltoniano).
Un grafo que posee un camino hamiltoniano se llama grafo trazable.
En general, el problema de encontrar un camino hamiltoniano es NP-completo (Garey y Johnson 1983, pp. 199-200), por lo que la única forma conocida de determinar si un grafo general dado tiene un camino hamiltoniano es realizar una búsqueda exhaustiva
Cualquier grafo bipartito con un desequilibrio de paridad de vértices no tiene caminos hamiltonianos.
La búsqueda de un único camino hamiltoniano de un grafo se implementa en Wolfram Language como FindHamiltonianPath. Todas las trayectorias hamiltonianas de un grafo dado pueden encontrarse (de manera ineficiente) utilizando el comando HamiltonianPath en el paquete Combinatorica` de Wolfram Language. Se puede obtener una lista precalculada de todas las trayectorias hamiltonianas de muchos grafos con nombre utilizando GraphData, donde se incluyen y ambas orientaciones de las trayectorias (de modo que se considera distinto de ). Un recuento precalculado del correspondiente número de caminos hamiltonianos viene dado por GraphData.
Los números totales de caminos hamiltonianos dirigidos para todos los grafos simples de órdenes , 2, … son 0, 2, 8, 50, 416, 5616, 117308, 4862736, … (OEIS A193352).
Rubin (1974) describe un procedimiento de búsqueda eficiente que puede encontrar algunos o todos los caminos y circuitos de Hamilton en un grafo utilizando deducciones que reducen en gran medida el backtracking y las conjeturas. Un algoritmo probabilístico debido a Angluin y Valiant (1979), descrito por Wilf (1994), también puede ser útil para encontrar ciclos y caminos hamiltonianos. Un camino hamiltoniano entre dos vértices y puede encontrarse si se dispone de un algoritmo para ciclos hamiltonianos. Esto puede hacerse comprobando si el grafo original contiene la arista y añadiéndola en caso contrario para obtener . Como un camino hamiltoniano con puntos finales adyacentes es un ciclo hamiltoniano y como y son ahora adyacentes, encontrar un ciclo hamiltoniano y dividir en el borde da una trayectoria hamiltoniana desde hasta en . Del mismo modo, si no existe ningún ciclo hamiltoniano en , entonces no hay ningún camino hamiltoniano desde hasta en .
La siguiente tabla resume el número de caminos hamiltonianos (no dirigidos) en varias clases de grafos.
grafo | fórmula | |
grafo barbell | ||
grafo de cóctel | ||
gráfico completo | ¡ | |
grafo bipartito completo | ||
-Gráfico del prisma cruzado | ||
grafo de ciclo | ||
grafo de engranaje graph | ||
ladder graph | ||
Escalera de Möbius | ||
Gráfico de trayectorias | 1 | |
gráfico del prisma | ||
Gráfico del sol | ||
gráfico de la rueda |
Las relaciones de recurrencia para el número de caminos hamiltonianos dirigidos para algunas familias de grafos se resumen a continuación.
grafo | orden | recurrencia |
Gráfico del antiprisma | 9 | |
Gráfico de la corona | 3 | |
gráfico del prisma |