Académique Documents
Professionnel Documents
Culture Documents
Puis : recherche du plus court chemin : map avec # mur et . case vide
Une fois que j’ai le champ de vecteur, je dois trouver le cout minimum : algo BFS : toutes les cases
sont équidistance
Algo dijsktra : mur et forêts : cahamp de vecteur, champ des pondérations, chemin trouvé
Dernier si le temps : A* : bcp plus de cases non utilisées. Commencer par le nord pour aller de lyon à
paris.
Si points d’interrogation pour questions après 3 : normal pas UFT8 autre code à changer
4) terminal : le programme peut-il partir en boucle infinie ? si un mur non franchissable –> le code
arrête si le mur donc oui terminal chaque nœud n’est étudié qu’une seule fois (il n’y a pas de
voisin quand il y a un mur)
Complétude : algo termine alors toujours solution ? non car si mur il n’y a pas de chemin donc pas
de gaantie de complétude. Par contre pour tous ceux où il existe un chemin, alors il y en a un.
Fournit le chemin le plus court ou presque (il en existe peut-être d’autres exaeco)
Dijkstra :
Question 6 manquante : je veux faire le dérouler papier sur un graphe comme celui du 3.3.4 (ce
qu’on aura pour l’IE). Partie codage importante pour les projets
On cherche le chemin le plus court de Gà E. chaque arrête à un poid. La longueur est la somme des
poids de chaque chemin
On a une file d’attente qui gère les priorités (si je pose un nœud, GAB et GBD execo )
B : 3
D :3
B :
A,C,F
Pas sur que le chemin est minimum : continuer jusqu’à ce qu’on dépile E
E dépilé :
Notion de cercle concentrique
PriorityQueue au lieu de linked list permet de trier par rapport aux valeurs
Au milieu : pour chacun des voisins, je calcule son cout la longueur du chemin du neud actuel + du
suivant, qui permet d’aller à la destination
Pour aller depuis ce nœud vers l’autre newCost dans la liste de priorité mais peut encore
changer
L’élément que je prend il était déjà atteint ? je l’ai peut être dejà vu dans un autre chemin ?
si dejà atteint, j’ai déjà trouvé mieux. Sinon je l’empile.
Distance : java