Aquí está a C# program enfoque para lo que estás buscando.
En cuanto al interés (o falta de ella) de la aplicación cruzado, todo depende de la lógica de selección particular usará su aplicación (y/o la función de evaluación en sí, si por ejemplo se incluye una evaluación de la velocidad de mejora). En muchos casos, las operaciones cruzadas "rescatarán de la tabla de cortar" algunas soluciones que son efectivas/óptimas en un área del gráfico pero que de alguna manera se "pegan" en otras. Esto no quiere decir que si el algoritmo general es lo suficientemente lento y cubre un buen porcentaje del espacio de solución, las mismas soluciones pueden no haber sido descubiertas nuevamente, pero el cruce también puede aumentar estos descubrimientos (y/o permitirte estar atrapado en otro mínimo local ;-))
No relacionado directamente pero de notable interés para quien mira GA, es el experimento original "original "ultimate" experiment in GA" en GA por el Prof. Alderman (de fama RSA), que utilizó moléculas de ADN reales [ en un programa C - es una broma] para resolver un problema gráfico relacionado, el de los gráficos hamiltonianos.
Editar: Al releer la pregunta entiendo por qué pidió que o más precisamente qué quieres un "No que no quiere cross-over" responder ;-)
Su genonme está directamente relacionado con el gráfico en sí (nada de malo con eso, a priori), pero esto trae el impedimento de que la mayoría de los desvíos cruzados no serán viables, ya que pueden tener nodos duplicados (visitar la misma ciudad dos veces o más) y faltan nodos (no visitan algunas ciudades) ... Además, los cruces viables afectarán gráficos similares, y por lo tanto, tal vez simplemente gasten incrementalmente la búsqueda, en comparación con lo que cambia iones habría descubierto ...
Hum ... Entonces quizás cross-over, en esta implementación particular no ayudará mucho al algoritmo (y de hecho tomará mucho de su CPU para crear, probar y, a menudo, descartar derivaciones cruzadas, CPU que se usaría mejor al permitir más iteraciones, y una velocidad de enfriamiento más lenta ...). ¡A no ser que! Encontrará una manera inteligente de realizar operaciones cruzadas ;-)
Me vino la razón por la que hiciste la pregunta ;-) Ver mi edición. – mjv