El problema de encontrar un ciclo (o camino) hamiltoniano en un grafo arbitrario se sabe que es NP-completo.
Los caminos y ciclos hamiltonianos fueron nombrados después que William Rowan Hamilton, inventor del juego de Hamilton, lanzara un juguete que involucraba encontrar un ciclo hamiltoniano en las aristas de un grafo de un dodecaedro. Hamilton resolvió este problema usando cuaterniones, pero esta solución no se generaliza a todos los grafos.
Un camino hamiltoniano es un camino que visita cada vértice exactamente una vez. Un grafo que contiene un camino hamiltoniano se denomina un ciclo hamiltoniano ó circuito hamiltoniano si es un ciclo que visita cada vértice exactamente una vez (excepto el vértice del que parte y al cual llega). Un grafo que contiene un ciclo hamiltoniano es llamado grafo hamiltoniano.
También se puede decir que los grafos hamiltonianos son cuando cumplen con :
-Circuito hamiltoniano -debe ser conexo -debe ser cerrado.
para resumir:: el camino de hamilton es un camino que recorre todas las aristas solo 1 vez, llegando al mismo punto de partida.
Ejercicio:
hay un problema famoso para este tipo de ejemplos:
en un tablero de ajedrez tratar de hacer el que caballo, recorra todas las casillas del tablero
Ninguno de los dos algoritmos garantiza una solución óptima. Sin embargo, normalmente ambos dan soluciones buenas, próximas a la óptima.
TEOREMA:
Sea K∗n un grafo dirigido completo, es decir K∗n tiene n v´ertices
y para cualquier par de v´ertices distintos x,y al menos la arista (x,y) o (y,x)
est´a en K∗n. Dicho grafo siempre contiene un camino de Hamilton.
DEMOSTRACIÓN:
Sea m≥2 con tm un camino simple que contiene las m−1 aristas: (v1,v2),(v2,v3),...,(vm−1,vm). Si m =n se ha terminado, en otro caso sea v un v´ertice que no aparece en tm.
Si (v,v1) es una arista de K∗n se puede ampliar tm añadiendo esta arista. En
otro caso(v1,v)debe ser una arista. Supongase ahora que(v,v2) esta en el grafo. Entonces se tiene la trayectoria mayor: (v1,v),(v,v2),(v2,v3),...,(vm−1,vm).Si
(v,v2) no es una arista de K∗n entonces (v2,v) debe serlo. Según continua este
proceso hay solo dos posibilidades:
1. para 1 ≤k ≤m−1 las aristas (vk,v),(v,vk+1) están en K∗n y se sustituye (vk,vk+1) por este par de aristas
2. (vm,v) esta en K∗n y se añade esta arista a tm.
En cualquier caso, obtenemos como resultado un camino simple tm+1 que incluye m+1 vértices y tiene m aristas. Este proceso puede repetirse hasta que se tenga un camino de n vértices.
http://es.wikipedia.org/wiki/Camino_hamiltoniano
http://docs.google.com/viewer?a=v&q=cache:JNDPlNjUeggJ:www.matap.uma.es/profesor/magalan/MatDis/material/GrafosTema5_1_MatDiscreta.pdf+caminos+de+hamilton&hl=es&gl=mx&pid=bl&srcid=ADGEESjhF5pcBVaMbrj8kWCfuPdH4CVND5lKIyifHirJg6Wi48mGQJPdZAnrvC3y5aU6zwOJstFridndiLhVsNnEZmHNiT4Dq8eyp4XnqA6tEjWcK9wj3hffTsTdMiynAwAKVx1boWKm&sig=AHIEtbTAHM1-WypcKHRi25gFE92alt3ofQ
http://docs.google.com/viewer?a=v&q=cache:7CjbQrO-eUIJ:www.fing.edu.uy/tecnoinf/cursos/mdl2/material/teo/teorico2.pdf+caminos+de+hamilton&hl=es&gl=mx&pid=bl&srcid=ADGEESgw7LRDpcJCpSyzGyrAJuGasfz72trbe0_BF6Og_cA9O-tIqipWnMUho-aEnjfg5C0ev4FPu3B2OvQJ__szzb8icdE-K4e-QOxk-idphdOji1T_hOiEzTHd9USgf8ysHBTyDU7s&sig=AHIEtbRANt1P1qlH2c9kBAV0a2ck182FtA
Bueno pues este agoritmo yo lo utilizo muy seguido, nadamaes que no sabia que se le llamaba asi, por ejemplo, yo lo aplico cuando tengo distintos lugares a los cuales ir, por que aveces tengo que conseguir algnos materiales que me pide mi mama o ir a varios lugares para encntrarme con amigos, entonces si son como unos 5 lugares a los cuales ir pues primero checo que debo hacer en cada lugar, y despues decido a cual lugar debo ir primero y cual enseguida, para evitarme contratiempos, pero no se si este sea un algoritmo de decision o de optimizacion o ambos??? bueno muy buena info (Y) bye.
ResponderEliminarasi es , tu algoritmos es muy aplicable al problema del viajero.
ResponderEliminarsobre loq ue comento mi compañero arriba yo pienso que son ambos porque como desides a donde ir y tambien optimizacion porque buscar el menor costo o distancia , pero pues es mas conveniente que nos confirmes ya que peude que no este bien lo que piense
ojala que nos puedas repsonder a esa pregunta
respondiendo a la pregunta y corrigiendo la informacion este problema es de decision, ya que tiene que evaluar cada posible solucion ( vertice) al cual llegar y checar de no pasar por el mismo de nuevo.
ResponderEliminaroptimizacion creo que no, porque este no busca una mejoria solo, si se puede encontrar un camino
Sip, es un problema de decisión. Instancias "sí" son aquellos grafos donde existe por lo menos un ciclo hamiltoniano y las instancias "no" son los que no tienen ninguno.
ResponderEliminar