L'algoritmo Dijkstras è utilizzato nei moderni sistemi di ricerca del percorso?


10

L'algoritmo Dijkstra è utilizzato nei moderni sistemi di ricerca di percorsi come Google Maps o il navigatore satellitare nella tua auto? In caso contrario, che cos'è?


Suppongo che intendi il componente di routing che trova la tua strada, una volta che il GPS, che è principalmente un posizionamento globale, Syatem ha determinato dove ti trovi . Ancora un altro caso di coda che scuote un cane.
babou,

1
Non posso dare una fonte per questo, ma il mio attuale docente di algoritmi lavora nel settore e afferma che è molto usato in pratica, specialmente per il GPS. Se usi la distanza euclidea come euristica, tendi a ottenere miglioramenti rispetto a quelli di Dijstra ignorando percorsi insensati nella vita reale. Potresti già saperlo, ma Dijkstra può essere descritto come A con euristico h ( x ) = 0 . AAh(x)=0
jmite,

Risposte:



8

Google Maps nel 2009 ha utilizzato le gerarchie di contrazioni : vedi questo discorso tecnico .

Da allora, sono stati scoperti alcuni metodi strabilianti, in grado di eseguire il routing attraverso paesi in millisecondi frazionari - i cosiddetti "oracoli della distanza di etichettatura a due hop". Vedi qui o cerca "Etichettatura hub" o "Percorsi più brevi per le masse". Penso di aver sentito che Bing usa questo. Ha anche applicazioni come la capacità di trovare il punto di interesse più vicino (ad esempio la stazione di servizio più vicina) con una complessità indipendente dal numero di stazioni di servizio.


2
Questo sembra essere riferimenti utili. Tuttavia, puoi a) fornire riferimenti citabili e / o b) dipingere il quadro generale di come funzionano? In particolare, risolvono esattamente il problema?
Raffaello
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.