Dijkstra Kortste pad algoritme
Bepaling ‘kortste’ pad ? s kortste, snelste, … weg? Dijkstra’s algoritme
Algoritme van Dijkstra Gewicht : - lengte - tijdsduur - kost Onderstelling: gewichten ³ 0 !! Optimale oplossing O(N2) s k2 k4 k3 t k5 5 3 1 2
Algoritme van Dijkstra 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t Kortste afstand s ® t ??
Algoritme van Dijkstra: labels permanente labels: correcte afstand vanuit s tijdelijke labels: voorlopige afstand vanuit s (bovengrens) ¥ ¥ label 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t ¥ ¥ ¥
Algoritme van Dijkstra Initialisatie labels permanente labels tijdelijke labels ¥ ¥ 5 3 s k2 k3 5 P 1 1 2 2 3 k5 k4 t ¥ ¥ ¥
Algoritme van Dijkstra: iteratie permanente labels tijdelijke labels Iteratie: 1. Labels aanpassen 2. Knooppermanent Iteratie: 1. Labels aanpassen 2. Knooppermanent Iteratie: 1. Labels aanpassen 2. Knooppermanent 5 ¥ ¥ 5 3 s k2 k3 5 P 1 1 2 2 3 k5 k4 t ¥ ¥ ¥ 1
Algoritme van Dijkstra permanente labels tijdelijke labels 5 ¥ ¥ 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t ¥ ¥ ¥ P 3 1
Algoritme van Dijkstra permanente labels tijdelijke labels 4 5 8 ¥ ¥ 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t ¥ ¥ ¥ 6 1 3 P
Algoritme van Dijkstra permanente labels tijdelijke labels 4 7 5 8 ¥ ¥ 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t ¥ ¥ ¥ 6 1 3 P
Algoritme van Dijkstra permanente labels tijdelijke labels Terminatie 4 7 5 8 ¥ ¥ 5 3 s k2 k3 5 1 1 2 2 3 k5 k4 t ¥ ¥ ¥ P 6 1 3
Algoritme van Dijkstra takken gericht of ongericht Bepaling van kortste pad s t in graaf G = (V,E) met positieve takkosten : algoritme van Dijkstra 1. Initialisatie : 1.1 P = Ø, T = V 1.2 l(s) = 0, l(v) = als v V \ {s} 2. Iteratie : herhaal 2.1 Kies w T waarvoor l(w) = { min l(y) | y T } 2.2 Is l(w) = of w = t ? 2.2N.1 y T waarvoor (w,y) E: l(y) = min ( l(y), l(w) + g(wy) ) 2.2N.2 P = P{w}, T = T\{w} zolang T Ø en l(w) en w t 3. Terminatie : 3.1 l(t) is lengte van kortste s t pad 3.2 kortste s t pad via labels knopen eenvoudig terug te vinden Label selectie Label update
Andere toepassingen internet Routering in telecommunicatie- en computernetwerken: pad met minimaal aantal links pad met minimale vertraging goedkoopste pad internet Navigatiesystemen in voertuigen: kortste weg goedkoopste weg snelste weg