Algorithme de DIJKSTRA Recherche d’un chemin minimal.

29
Algorithme de DIJKSTRA Recherche d’un chemin minimal

Transcript of Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Page 1: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Algorithme de DIJKSTRA

Recherche d’un chemin minimal

Page 2: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

On se donne un graphe orienté où chaque arrête est affectée d’un

poids.L’objectif est de trouver un chemin

de poids minimum entre deux sommets choisis.

Page 3: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Exemple 1 : quel est le chemin minimal entre A et H ?

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

Page 4: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

Page 5: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A

Page 6: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A

(6,C) C3

Page 7: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A

(6,C) C3

(5,B) (7,B) B4

Page 8: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A

(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

Page 9: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A

(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

- (8,E) E5

Page 10: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

34

1

3

33 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

- (8,E) E5

- (13,F) F7

Page 11: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

34

1

3

33 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

- (8,E) E5

- (13,F) F7

(12,G) G8

Page 12: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

H

G

BF

D5

34

1

3

33 3

3

5

6

4

4

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

- (8,E) E5

- (13,F) F7

(12,G) G8

H12

Page 13: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G H Définitif

(4,A) (3,A) (5,A) A(6,C) C3

(5,B) (7,B) B4

- (9,D) D5

- (8,E) E5

- (13,F) F7

(12,G) G8

H12

Conclusion : le plus court chemin pour aller de A à H est 12 et il provient de G, lui-même distant de 8 et provenant de E, lui-même distant de 5 et provenant de B, lui-même distant de 4 et provenant de A.Un chemin minimal est donc de poids 12 : A B E G H

Page 14: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Un chemin minimal est donc de poids 12 : A-B-E-G-H

A

CE

H

G

BF

D5

3

4

1

3

3

3 3

3

5

6

4

4

Page 15: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Exemple 2 : quel est le chemin minimal entre A et G ?

A

CE

G

BF

D5

3

4

4

4

5

1 2

3

5

4

2

23

Page 16: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

Page 17: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

Page 18: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

Page 19: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

(6,D) (7,D) (9,D) D5

Page 20: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

(6,D) (7,D) (9,D) D5

- (8,E) E6

Page 21: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

(6,D) (7,D) (9,D) D5

- (8,E) E6

- F7

Page 22: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A

CE

G

BF

D5

3

4

4

4

51 2

3

5

4

2

23

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

(6,D) (7,D) (9,D) D5

- (8,E) E6

- F7

G8

Page 23: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G Définitif

(4,A) (3,A) (5,A) A

(5,C) (8,C) C3

- (8,B) (8,B) B4

(6,D) (7,D) (9,D) D5

- (8,E) E6

- F7

G8

Conclusion : le plus court chemin pour aller de A à G est 8 et il provient de E, lui-même distant de 6 et provenant de D, lui-même distant de 5 et provenant de A ou C, C lui-même distant de 3 et provenant de A.Un chemin minimal est donc de poids 8 : A C D E G ou A D E G

Page 24: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Exemple 3 : quel est le chemin minimal entre A et I ?

A

CE

G

BF

D5

6

4

4

4

1

1 2

3

5

6

2

33

H

I

4

4

4

4

Page 25: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

Solution…

Page 26: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G H I Définitif

(4,A) (6,A) (5,A) A

- (8,B) (8,B) B4

(6,D) (8,D) (11,D) D5

- - C6

- (8,E) E6

- (12,F) (12,F) F8

(12,G) G8

- H12

Conclusion : le plus court chemin pour aller de A à I est de poids 12.

Page 27: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G H I Définitif

(4,A) (6,A) (5,A) A

- (8,B) (8,B) B4

(6,D) (8,D) (11,D) D5

- - C6

- (8,E) E6

- (12,F) (12,F) F8

(12,G) G8

- H12

Conclusion : le plus court chemin pour aller de A à I est de poids 12.Un chemin minimal est donc : ADEGI ou ABFI ou ADFI.

Page 28: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G H I Définitif

(4,A) (6,A) (5,A) A

- (8,B) (8,B) B4

(6,D) (8,D) (11,D) D5

- - C6

- (8,E) E6

- (12,F) (12,F) F8

(12,G) G8

- H12

Conclusion : le plus court chemin pour aller de A à I est de poids 12.Un chemin minimal est donc : ADEGI ou ABFI ou ADFI.

Page 29: Algorithme de DIJKSTRA Recherche d’un chemin minimal.

A B C D E F G H I Définitif

(4,A) (6,A) (5,A) A

- (8,B) (8,B) B4

(6,D) (8,D) (11,D) D5

- - C6

- (8,E) E6

- (12,F) (12,F) F8

(12,G) G8

- H12

Conclusion : le plus court chemin pour aller de A à I est de poids 12.Un chemin minimal est donc : ADEGI ou ABFI ou ADFI.