Ottimizzazione del percorso per più veicoli


12

Ho 100 destinazioni e 5 veicoli e devo codificare una soluzione che instrada efficientemente i veicoli verso ciascuna destinazione, quindi ogni destinazione è visitata da 1 dei veicoli. Alcune di queste destinazioni potrebbero avere anche finestre temporali da visitare durante.

Sto usando PostgreSQL e PostGIS e stavo cercando di usare pgrouting ma non sono sicuro che sia adatto a più veicoli - dalla mia conoscenza limitata di Dijkstra ecc. Penso che siano progettati per un singolo veicolo.

Qualche idea sul fatto che pgrouting possa risolvere questo problema e, in caso affermativo, qualche esempio di codice? In caso contrario, ci sono alternative open source che possono farlo?


Mi capita di avere un bisogno simile al tuo. Gestisco un'azienda NPO NEMT (trasporto di emergenza non medica). dobbiamo trasportare i pazienti ai loro appuntamenti con finestre temporali per ritiri o consegne. La maggior parte delle richieste vengono ricevute in anticipo, altre sono sul posto. DARP sembra essere un buon algoritmo. Hai bisogno del risolutore DARP per lo stesso motivo? Nick
Nick Bazzi,

Risposte:


10

pgRouting ha una funzione chiamata solutore DARP (Dial-a-Ride Problem) :

Il solutore DARP (Dial-a-Ride Problem) cerca di ridurre al minimo i costi di trasporto soddisfacendo al contempo i vincoli del livello del servizio clienti (violazione dei finestrini, tempi di attesa e di viaggio) e i vincoli della flotta (numero di auto e capacità, nonché la posizione del deposito).

Altro su DARP e pgRouting:

Per utilizzare questa nuova funzione, è necessario installare il ramo darp di pgRouting .


Le risposte a questa domanda su stackexchange potrebbero fornire ulteriori informazioni: Algoritmo di routing per più veicoli con più cadute .


Inizialmente ho visto l'algoritmo DARP ma l'ho ripassato perché non mi rendevo conto che potesse essere usato per i corrieri. Sembra che farà bene il lavoro! È un peccato che la pagina della documentazione non abbia alcun esempio di utilizzo, potrebbe essere un caso di ricerca nel codice sorgente per vedere come funziona.
RichW,


1

Sebbene ESRI ArcLogistics non soddisfi chiaramente le vostre particolari esigenze di utilizzo di PostGIS o open source, per gli altri che potrebbero non avere le capacità di programmazione o il tempo di implementare le proprie soluzioni, è una buona estensione standardizzata e pagata per ArcGIS progettato per eseguire le attività descritte.

Al momento offrono anche una prova gratuita di 30 giorni se si desidera testarlo.


Sono andato alla sede centrale di ESRI la scorsa settimana per discutere di questo software per loro, ma non sembra soddisfare le nostre esigenze (deve essere eseguito su un server ed è anche piuttosto costoso). Ottimo pezzo di kit però!
RichW

Il nostro prodotto FleetEngine funziona come un server con un'interfaccia SOAP. 100 destinazioni, 5 veicoli e finestre temporali rientrano sicuramente nelle capacità. È molto vicino alla produzione pronta, contattami per una licenza di prova. Non è open source o gratuito, ma d'altra parte non è costoso come ArcLogistics.
Uffe Kousgaard,

1
Ciao Uffe, può tener conto delle restrizioni del veicolo (peso e dimensioni) e ordinare i pacchi sui veicoli di conseguenza? Inoltre, funziona nel Regno Unito e utilizza i dati della cronologia delle strade per calcolare la velocità, ecc.?
RichW

Sì a tutte le tue domande. Utilizza semplici additivi di peso / volumi. Non può fare anche il 3D packaging, sarebbe troppo sperare. Supporto completo per le reti stradali anche in qualsiasi paese, ma è necessario fornire la rete stradale. Purtroppo non ho visto prima la risposta, pensavo che questa discussione fosse finita. Ping me a uffe@routeware.dk se vuoi discuterne ulteriormente.
Uffe Kousgaard,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.