Stratégie pour trouver votre meilleur itinéraire en Transport en commun seulement?

De trouver des voies pour une voiture est assez simple: vous stocker un graphe pondéré de toutes les routes et vous pouvez utiliser L'algorithme de Djikstra [1]. Un trajet de bus est moins évident. Avec un bus, vous avez pour représenter des choses comme "attendre 10 minutes pour le bus suivant" ou "pied d'un bloc à un autre arrêt de bus" et de nourrir ceux qui sont dans votre algorithme de pathfinding.

Il n'est même pas toujours simple pour les voitures. Dans certaines villes, certaines routes sont à sens unique dans la ville le matin, et à sens unique de la ville dans la soirée. Certaines avancées Gps savoir comment éviter les routes très fréquentées pendant les heures de pointe.

Comment voulez-vous représenter efficacement ce genre de temps dépendant de graphique et de trouver une route? Il n'est pas nécessaire pour un prouvable solution optimale; si le voyageur voulait être à l'heure, ils achètent une voiture. 😉

[1] Un merveilleux algorithme de mentionner dans un exemple parce que tout le monde en a entendu parler, mais A* est un choix de chances pour cette application.

  • Le temps ne peut pas être un facteur, mais la voie la plus directe à distance peut être souhaitable ou moins les transferts. Une autre chose à considérer est le pied les chemins entre les bornes de l'origine et de la destination.
InformationsquelleAutor joeforker | 2009-01-27