Pour la préparation de la saison d'hiver, nous voulons calculer les itinéraires les plus optimaux pour saupoudrer le sel sur les routes. L'analyse connaît les critères suivants:
- les véhicules démarrent et s'arrêtent à un seul point de chargement
- toutes les routes disponibles doivent être saupoudrées de sel
- une route ne peut pas prendre plus d'un temps de certin (supposons 2 heures)
- en raison de la charge limitée de sel par véhicule, la distance d'un itinéraire est limitée à la quantité de sel disponible. (supposons 10 km)
L'analyste réseau d'ArcGIS (10.0) suppose que vous disposez d'un point de départ et d'un point d'extrémité pour calculer l'itinéraire. Cependant, dans ce cas, il ne s'agit pas de calculer l'itinéraire le plus rapide de l'origine à la destination, mais des itinéraires les plus optimaux pour couvrir autant de distance routière que possible dans un laps de temps limité.
Nous pensons maintenant à calculer les points médians pour chaque section de route et à les utiliser comme destinations pour calculer l'itinéraire.
arcgis-desktop
arcgis-10.0
network-analyst
route
Mark Verschuur
la source
la source
Réponses:
Je pense qu'une partie de la réponse dépend de la disposition du réseau routier, et cette question pourrait valoir la peine d'être publiée sur le Math Stack Exchange ( /math// ) car cela semble être un problème de théorie des graphes. Je ne pense pas que ce sera la solution optimale, mais cela pourrait vous aider à vous rapprocher.
Vous pouvez diviser le réseau routier en régions naturelles, où la somme de la longueur des segments sera à peu près égale au montant qu'un camion pourrait couvrir avec une charge donnée. Ensuite, pour chaque région, vous pouvez exécuter une visite eularienne pour obtenir l'itinéraire qui toucherait tous les segments. Exemple de code Python
Vous pourriez alors envisager le routage entre les régions et le dépôt, et diviser la route d'accès en segments logiques pour les camions disponibles. J'espère que cela t'aides.
la source
J'aborderais cette tâche de cette façon. ArcGIS Network Analyst dispose d'un solveur appelé VRP , qui peut vous aider à commander et à gérer vos itinéraires. Je convertirais chaque lien routier que vous avez dans votre jeu de données réseau en entités ponctuelles ( outil GP d' entité vers point (gestion des données) , par exemple, ou peut-être d'abord séparer les lignes en simples segments à deux sommets, puis obtenir un milieu pour devenir un point central ).
En termes de VRP, ceux-ci deviendront vos commandes. Ensuite, vous attribuez vos itinéraires en les limitant à un certain temps (2 heures), et votre lieu de dépôt sera à la fois un point de départ et un point d'arrêt. En supposant que vous avez plusieurs véhicules, vous pourrez obtenir plusieurs itinéraires pour un véhicule ou plusieurs itinéraires pour le même véhicule.
Je recommande fortement de suivre un didacticiel qui vous aidera à comprendre comment démarrer avec VRP dans Network Analyst. J'ai moi-même utilisé ce solveur pour plusieurs projets et je l'ai trouvé extrêmement puissant et personnalisable dans une large mesure pour répondre à mon flux de travail.
N'oubliez pas que Network Analyst fonctionnerait bien avec un nombre limité de commandes d'entrée (dans votre cas - centroïde des routes). J'ai réussi avec plusieurs milliers de commandes (jusqu'à 9 000). Donc, si vous souhaitez desservir une très grande ville, vous pouvez limiter vos itinéraires pour qu'ils ne fonctionnent que dans certaines parties de la ville (en termes de VRP - Zones de route).
Si vous recherchez une solution plus prête à l' emploi et plus puissante conçue spécifiquement pour le routage de points à haute densité, veuillez envisager d'utiliser RouteSmart . Il est construit au-dessus d'ArcGIS et a été conçu pour résoudre ce type de problèmes.
la source