Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
pathplanning [2019/03/11 20:06] sshen [Amélioration d’algorithme RRT] |
pathplanning [2019/04/25 14:08] (current) |
||
---|---|---|---|
Line 36: | Line 36: | ||
Dans ce programme, la taille de la carte que nous avons conçue est ajustable. Nous pouvons ajuster la taille de la carte en fonction de la taille de la carte d'entrée. Pour assurer que le labyrinthe a un point de départ et un point d'arrivée uniques, nous spécifions deux cercles, dont l'un représente le point de départ sur le coin inférieur gauche pour et le point d'arrivée est sur le coin supérieur droit. À part des positions de départ et d'arrivée, les frontières sont entourées de "murs" et la carte présentes des obstacles de formes différentes. | Dans ce programme, la taille de la carte que nous avons conçue est ajustable. Nous pouvons ajuster la taille de la carte en fonction de la taille de la carte d'entrée. Pour assurer que le labyrinthe a un point de départ et un point d'arrivée uniques, nous spécifions deux cercles, dont l'un représente le point de départ sur le coin inférieur gauche pour et le point d'arrivée est sur le coin supérieur droit. À part des positions de départ et d'arrivée, les frontières sont entourées de "murs" et la carte présentes des obstacles de formes différentes. | ||
Les détails de la configuration d’environnement continue sont les suivants : \\ | Les détails de la configuration d’environnement continue sont les suivants : \\ | ||
+ | |||
- Point de départ : (400, 100), le point jaune dans le coin inférieur gauche\\ | - Point de départ : (400, 100), le point jaune dans le coin inférieur gauche\\ | ||
- Point d'arrivée : (200, 450), le point jaune dans le coin supérieur droit\\ | - Point d'arrivée : (200, 450), le point jaune dans le coin supérieur droit\\ | ||
Line 107: | Line 108: | ||
Le chemin bleu est le chemin réel, et le noir est le chemin idéal. Nous pouvons remarquer que les formes de deux chemins sont presque les mêmes. | Le chemin bleu est le chemin réel, et le noir est le chemin idéal. Nous pouvons remarquer que les formes de deux chemins sont presque les mêmes. | ||
\\ | \\ | ||
+ | Pour comparer les 3 algorithmes de RRT, nous avons calculé la valeur moyenne de 10 fois et les résultats sont dans le tableau suivant :\\ | ||
| ^ Longueur de noeud_liste ^ Longueur de chemin ^Temps (s)^ | | ^ Longueur de noeud_liste ^ Longueur de chemin ^Temps (s)^ | ||
^ RRT | 919 | 110 |9,56 | | ^ RRT | 919 | 110 |9,56 | | ||
Line 131: | Line 133: | ||
Par exemple, il est difficile à obtenir la solution plus optimale pour l’algorithme RRT. Nous pouvons utiliser l'algorithme RRT* pour l’amélioration. Il existe également un effet de "longue traîne", tel que le point au début de l'expansion est utile, et le point d'échantillonnage aléatoire suivant ne peut pas être utilisé complètement. Il a perdu plusieurs temps. Nous pouvons utiliser RRT en temps ou RRT dynamique pour optimiser l'algorithme RRT ,etc. | Par exemple, il est difficile à obtenir la solution plus optimale pour l’algorithme RRT. Nous pouvons utiliser l'algorithme RRT* pour l’amélioration. Il existe également un effet de "longue traîne", tel que le point au début de l'expansion est utile, et le point d'échantillonnage aléatoire suivant ne peut pas être utilisé complètement. Il a perdu plusieurs temps. Nous pouvons utiliser RRT en temps ou RRT dynamique pour optimiser l'algorithme RRT ,etc. | ||
- | ===== Conclusion de Projet===== | + | ===== Descriptif des fichiers/code===== |
- | Ce projet a été très enrichissant pour moi car il m’a permis de découvrir dans les détails de secteur du planification de chemin et il m’a permis de participer concrètement à ses enjeux au travers de mes missions variées comme celle de l’implémentation d’algorithmes différents que j’ai particulièrement apprécié. Ce projet m’a aussi permis d’appliquer mes compétences apprises en majeure Système d’Information, et j’ai aussi eu l’occasion de me former sur de nombreuses technologies que je n’avais pas eu l’occasion d’étudier à l’école (par exemple, C et CUDA). | + | ==== Installation de projet==== |
+ | Télécharger le projet: \\ | ||
+ | git clone https://github.com/Pikalchemist/lems\\ | ||
+ | Installer les librairies:\\ | ||
+ | ./install-dependencies.sh \\ | ||
+ | sudo python3 -m pip install -e . \\ | ||
+ | Changer la branche: \\ | ||
+ | git checkout sheng\\ | ||
+ | Enter la répertoire ./lems/examples: \\ | ||
+ | cd ./lems/examples \\ | ||
+ | Utiliser Jupyter pour ouvrir mon projet: \\ | ||
+ | jupyter notebook \\ | ||
- | J'ai beaucoup amélioré mes propres compétences de programmation (Python). J'ai également utilisé beaucoup d'algorithmes avancés pour compléter ce projet. En plus, comme on a souvent besoin de communiquer avec mes collègues et présenter notre projet, mon niveau de français a également été grandement amélioré. | + | \\ |
- | + | {{ ::jupyter.png?800 }} | |
- | Je suis très satisfait d’avoir eu l’occasion de participer à ce projet. Fort de cette expérience, je peux m’orienter vers les métiers d’ingénieur en développement informatique qui me conviennent mieux. | + | \\ |
+ | Il existe plusieurs fichiers, ce que nous utilisons est les fichiers suivants:\\ | ||
+ | rrt.ipynb : l'algorithme RRT\\ | ||
+ | rrt-connect.ipynb : l'algorithme RRT-Connect\\ | ||
+ | p-rrt.ipynb : l'algorithme parallèle RRT\\ | ||
+ | Environnement.ipynb : il permet de créer l'environnement continu ou discret\\ | ||
+ | rrt.py : exemple de pygame RRT\\ | ||
Pour les détails de ce projet, vous pouvez regarder mon rapport technique et les codes sur ce Github (https://github.com/Pikalchemist/lems/tree/sheng). | Pour les détails de ce projet, vous pouvez regarder mon rapport technique et les codes sur ce Github (https://github.com/Pikalchemist/lems/tree/sheng). |