30/1/11

Dime a donde vas y te diré como eres

Una de las primeras dudas que le surgen a los jugadores de Simutrans es como funciona exactamente el algoritmo de enrutamiento del juego. Tras mucho investigar, vamos a explicar de forma sencilla este gran misterio.
Leer más...

Supongamos el siguiente escenario, donde un pasajero tiene que viajar de A a Z, y existen dos posibles rutas: A-B-Z y A-C-Z.

A primera vista parece que motor del juego hace lo siguiente: Simutrans calcula el tiempo total de viaje y el tiempo total de espera en estaciones para ambas rutas, encaminando todos los pasajeros por la ruta cuyo tiempo de transbordo sea menor, es decir aquella ruta en que se emplee menos tiempo en hacer transbordos en las estaciones para tomar otra ruta. Esto premia las rutas directas.

Si la ruta ABZ supone menos tiempo de viaje que ACZ, todos los pasajeros serán encaminados por B, y cuando estos lleguen a B, Simutrans evaluará nuevamente todas las rutas desde B a Z, incluyendo a los pasajeros que hayan subido en B.

Pero no es exactamente así, ya que no existe un cálculo de rutas pasajeros por pasajero. Existe una gran tabla que contiene lo siguiente:
"parada actual, distancia a la parada, categoría de mercancía" ==> "siguiente parada, mejor línea"

Si un vehículo de la mejor línea está disponible, los pasajeros en cuestión harán uso del mismo. Si no, esperarán o usarán el tren actualmente disponible para la siguiente parada de la misma línea. Todos los pasajeros en A usarán alguna de las próximas paradas hasta que la tabla se actualice.

Dicho de otra forma, hay una tabla general de las mejores rutas de cualquier sitio a cualquier otro sitio. Cuando los pasajeros buscan la mejor ruta de A a Z, les indica que vayan a través de B, asumiendo que la ruta ABZ es más rápida, y también qué línea o convoy es más probable que les lleve a B de forma más rápida, aunque esperen más tiempo, tomarán cualquier vehículo que les lleve a B.

En B se repite el proceso, con la excepción de que los pasajeros irán directos a Z, embarcando posiblemente en el convoi más rápido hacia Z. Estas rutas se recalculan de forma periódica y también en el caso de que la red de transporte se modifique.

Image... Entropy ≥ Memory . Creativity ² by Jef Safi.

No hay comentarios: