Program, który przyjmuje punkty na mapie i "automatycznie wyznacza najkrótszą trasę", w praktyce rozwiązuje problem najkrótszej ścieżki. Sieć dróg/ścieżek można opisać jako graf:
- węzły (wierzchołki) to np. skrzyżowania, przystanki, punkty POI albo wprowadzone punkty trasy,
- krawędzie to odcinki drogi między węzłami,
- wagi krawędzi to np. odległość, czas przejazdu, koszt lub inna miara "długości".
Odpowiedź "Algorytm Dijkstry" jest właściwa, ponieważ to klasyczny algorytm wyznaczania najkrótszych ścieżek z jednego punktu startowego do pozostałych w grafie o nieujemnych wagach. W kontekście map najczęściej wagi są nieujemne (odległość/czas), więc algorytm (lub jego modyfikacje/heurystyki) stanowi podstawę routingu.
Dlaczego pozostałe odpowiedzi nie pasują?
- "Technologię blockchain" stosuje się do rozproszonych rejestrów i weryfikacji transakcji/danych, a nie do obliczania najkrótszych ścieżek w sieci dróg.
- "Technologię rozpoznawania mowy" wykorzystuje się do zamiany mowy na tekst/komendy. Może ułatwiać obsługę aplikacji (np. dyktowanie celu), ale nie jest metodą liczenia najkrótszej trasy.
- "Algorytm sortowania bąbelkowego" służy do sortowania list, a nie do rozwiązywania problemów grafowych. "Optymalizacja" nie oznacza automatycznie "sortowanie".
W praktyce turystycznej warto pamiętać, że "najkrótsza" trasa nie zawsze jest "najlepsza": mogą liczyć się ograniczenia czasu, preferencje (widokowość), dostępność dla grupy czy warunki drogowe. Jednak rdzeń obliczeniowy dla wariantu "najkrótszy dystans/czas" zwykle opiera się na algorytmach najkrótszej ścieżki.