Projet Chemin, sujet 1
identifiant : G2S1
- Daniel Gilardoni
- Felipe Paris Mollo Christondis
- Leopold Abignoli
Le projet consiste en une application graphique. Dans cette application, une grille sera generée, puis un point de départ et un point d'arrivée seront placés dans cette grille par l'utilisateur.
L'utilisateur pourra placer (ou pas) des murs qui vont bloquer un chemin dans la grille. Ensuite l'utilisateur doit choisir un "algorithme de plus court chemin" parmis ceux qui seront proposés. Lorsque l'algorithme à été choisit, l'interface graphique affichera le chemin optimal calculé grâce à cette algorithme.
source: image produit par l'équipe G2S1
- Longueur et nombre de chemins de longueurs minimales dans une grille
Étudier la longueur et le nombre de chemin de longueur minimale dans une grille (sans mur) de hauteur h et largeur l.
Assigné à Daniel Gilardoni - Borne maximale du nombre de chemins dans une grille
Donner une borne maximale du nombre de chemin dans une grille.
Assigné à Daniel Gilardoni et Leopold Abignoli - L'algorithme de parcours en largeur
Décrire l’algorithme de parcours en largeur.
Assigné à Leopold Abignoli et Paris Mollo - Programme calculant un des plus court chemin dans une grille
Écrire un programme qui prend en entrée un plan de ville représenté par un graphe issue d'une grille où certaines arêtes ont été enlevées, et renvoie un des plus court chemin.
Assigné à Leopold Abignoli et Daniel Gilardoni - Complexité de l'algorithme calculant le plus court chemin
Calculer la complexité de l’algorithme calculant le plus court chemin dans un graphe issue d'une grille dans le pire des cas. Comparer avec une méthode naïve qui ferait la liste des chemins de la grille avant d’enlever ceux bloqués par des murs puis de prendre l’un des chemins restant de longueur minimale
Assigné à Paris Mollo et Daniel Gilardoni
Une application graphique codé en java.
- Représentation des graphes (issue de grilles) dans le code : Paris Mollo
- Algorithmes implémentés:
- Greedy : Daniel Gilardoni
- A* : Paris Mollo
- Dijkstra : Leopold Abignoli - L'architecture du code : Tous les membres
- L'interface Graphique : Leopold Abignoli et Paris Mollo
- Installer Maven
- Déplacez dans le dossier du projet et génerez le fichier jar avec maven:
mvn package
- Lancez le fichier jar
java -jar target/annexe.jar
Note: Les actions d'insertion sont faites à travers un clique gauche de la souris.
- Choisissez un point de départ (répresenté par la couleur vert)
- Choisissez un point d'arrivée (répresenté par la couleur bleue)
- Inseréz des murs (répresenté par la couleur jaune)
- Tenir la touche gauche de la souris appuyé afin de placer plusiers murs
- Après avoir inséré le point de départ et d'arrivée, lancez l'algo avec les touches
A pour AStar
D pour Djkistra
G pour Greedy
- Toute autre touche pour effacer le resultat du algorithme.
Remarque : Greedy est implémenté car il calcul un chemin de maniére différente de A* et Dijkstra mais il ne trouve pas un plus court chemin dans tous les cas.