¿Cuál es la longitud esperada del camino hamiltoniano más corto en puntos seleccionados al azar de una cuadrícula plana?

9

puntos distintos se seleccionan aleatoriamente de unacuadrícula p × q . (Obviamente, k p × q y es un número constante dado.) Se construye un gráfico ponderado completo a partir de estos k puntos de modo que el peso del borde entre el vértice i y el vértice j sea igual a la distancia de Manhattan de dos vértices en la cuadrícula original.kp×qkp×qkij

Estoy buscando una forma eficiente de calcular la longitud esperada de la ruta hamiltoniana más corta (peso total mínimo) que pasa por estos nodos. Más precisamente, no se desean los siguientes enfoques ingenuos:k

Calcular la longitud de ruta exacta para todas las combinaciones de k nodos y derivar la longitud esperada.

Calcular la longitud aproximada de la ruta para todas las combinaciones de k nodos usando la heurística básica de usar un árbol de expansión mínimo que da hasta un 50% de error. (Una mejor heurística con menos error puede ser útil)

Javad
fuente
Actualmente, no hay esperanza para un algoritmo eficiente ya que el problema de la ruta Hamiltoniana no ponderada en la cuadrícula plana es NP-completo.
Mohammad Al-Turkistany
Cuando habla del camino hamiltoniano, ¿está pensando en el camino hamiltoniano con el menor peso (también conocido como el problema del vendedor ambulante)?
a3nm
@ MohammadAl-Turkistany la dureza de HAM PATH no es necesariamente un obstáculo, ya que el OP simplemente es una estimación de puntos aleatorios.
Suresh Venkat
@ a3nm sí, y lo arreglé.
Suresh Venkat
¿Qué tiene de malo calcular la duración exacta del recorrido para muchas muestras aleatorias de puntos y encontrar la expectativa y la desviación estándar? ¿Qué tan grande necesitas k , p , q para ser? kk,p,q
Peter Shor

Respuestas:

6

Suponiendo que y q son bastante grandes, uno esperaría que la longitud esperada sobre todo dependería de la densidad, con algún término de corrección en función del perímetro. Por lo tanto, en primer orden, sería una función de la siguiente forma.pq

L(pqk)1/2f(k/pq)+(p+q)g(k/pq).

Ahora, podría usar experimentos en problemas de menor tamaño para descubrir qué son y g . Primero, para estimar f , desea hacer experimentos en una muestra sin límite: la forma más fácil de hacerlo es usar una cuadrícula p × p con el lado izquierdo conectado a la derecha y la parte superior a la inferior, formando un toro . Para estimar g , puede usar experimentos en una cuadrícula p × q .fgfp×pgp×q

Para la estimación, debe resolver (exactamente o aproximadamente) TSP relativamente grandes, ya que cuanto más grandes sean los que usa para la estimación, mejores serán sus resultados. Puede usar heurísticas que se encuentran dentro de un pequeño porcentaje o el código TSP exacto. Vea aquí algunas buenas heurísticas. El solucionador de TSP Concorde de Bill Cook encontrará el óptimo exacto para instancias razonablemente grandes (es el mejor código TSP disponible), y puede usarse sin cargo para la investigación académica.

Peter Shor
fuente
E[L](k1)/k
E[L]LLE[L]kE[L]
k2k2/(pq)pq
k2p×qp×qθ(pq/k)kfpqkf(k/pq)
k106