UEA: Diseño de Algoritmos
Trimestre: 2007 Invierno
Entrega: 23 de marzo de 2007 a las 10pm

Esta tarea consiste en programar otras dos heurísticas para la variante del problema del agente viajero descrita en la Tarea 5.

Problema 1
: Escriba un programa llamado elige basado en la siguiente heurística: Comience el camino en el vértice 1. A cada paso elija de forma aleatoria alguno de los vértices que no haya visitado todavía y vaya a él. La probabilidad de escoger un vértice deberá ser inversamente proporcional a su distancia al vértice actual. Al final regrese al vértice 1. En cada uno de estos pasos debe usar el camino más corto posible. En caso de haber empates, escoja de forma arbitraria. Observe que todos los vértices por los que vaya pasando ya han sido visitados.

Problema 2: Escriba un programa llamado arbol basado en la siguiente heurística: Encuentre un árbol abarcador de costo mínimo de la gráfica. Haga un recorrido en profundidad del árbol obtenido comenzando en el vértice 1, sustituyendo cada arista vista por el camino más corto posible que una a sus extremos. En caso de haber empates, escoja de forma arbitraria. En nuestro ejemplo el árbol abarcador de costo mínimo consistiría de las aristas 12, 23 y 24. Un recorrido en profundidad de este árbol comienza en el vértice 1, sigue al 2, de allí podría ir al 3 o al 4 (digamos al 3), de allí iría al 2, de allí iría al 4, de allí iría al 2 y de allí regresaría al 1, de modo que el camino encontrado sería 1-2-3-2-4-2-1.