Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Αυτόνομη περιήγηση εκθεμάτων με τη βοήθεια ρομπότ
Εκπόνηση:
Επιβλέπων:
Ανοιξιάδου Αθηνά 7136
Συμεωνίδης Ανδρέας Επίκ. Καθηγητής
Πέτρου Λουκάς Αναπ. Καθηγητής
Τσαρδούλιας Εμμανουήλ Διδάκτωρ
Ιούλιος 2017
Κίνητρο και σκοπός της διπλωματικής εργασίας
● Έναυσμα
Μεγάλη ανάπτυξη αυτόνομων ρομποτικών οχημάτων
● Σκοπός
Αυτόνομη πλοήγηση ρομπότ σε εσωτερικούς χώρους
● Υλοποίηση
Σχεδιασμός βέλτιστου μονοπατιού και αποφυγή δυναμικών εμποδίων με
σκοπό την επίσκεψη διαδοχικών στόχων
Γνώσεις που αποκτήθηκαν
➔Χρήση και εντολές Linux
➔ROS και χρήση εργαλείων ROS (rviz)
➔Εργαλείο ρομποτικής STDR_simulator
➔github
➔C++
Activity diagram
Εργαλεία και τεχνικές που χρησιμοποιήθηκαν
➔Monte Carlo Localization (MCL)
◆ particles: πιθανές θέσεις του ρομπότ μέσα στον χώρο
➔Αλγόριθμος A*
◆ αλγόριθμος εύρεσης βέλτιστου μονοπατιού
◆ open set και closed set
Δομή υλοποίησης
Πρώτο μέρος
➥ Δημιουργία γράφου
➥ Εύρεση μονοπατιού μεταξύ δύο στόχων
➥ Βελτίωση μονοπατιού για αποφυγή
συγκρούσεων
➥ Επίσκεψη διαδοχικών στόχων
Δεύτερο μέρος
➥ Αναγνώριση δυναμικών εμποδίων
➥ Εντοπισμός της θέσης του ρομπότ σε
δυναμικό περιβάλλον
➥ Δυναμικός επανασχεδιασμός μονοπατιού
Δημιουργία γράφου PRM
● Γράφος ομοιόμορφης δειγματοληψίας
● Οι κόμβοι είναι διαμορφώσεις που ανήκουν στον ελεύθερο χώρο
● Για κάθε κόμβο ελέγχεται η σύνδεση και με τους 8 γειτονικούς κόμβους
● Οι ακμές αντιστοιχούν σε εφικτές διαδρομές
Δημιουργία γράφου PRM
Εύρεση μονοπατιού
Εκτίμηση κόστους διαδρομής:
Βελτίωση εκτίμησης κόστους
διαδρομής:
f(n) = g(n) + h(n), όπου
n = 1, 2, 3, …
g(n): συνάρτηση για τον υπολογισμό του κόστους της διαδρομής
από τον αρχικό κόμβο μέχρι τον κόμβο n
h(n): heuristic συνάρτηση για τον υπολογισμό του κόστους της
διαδρομής από τον κόμβο n μέχρι τον τελικό στόχο
f(n) = g(n) + h(n) + brushfire_const / brushfire(n), όπου
brushfire_const: σταθερά
brushfire(n): απόσταση του κόμβου n από το κοντινότερο εμπόδιο
Υλοποίηση αλγορίθμου Brushfire
Βήμα 1ο Βήμα 2ο
Υλοποίηση αλγορίθμου Brushfire
Βήμα 3ο Τελικός χάρτης
Μονοπάτι απλού A* Μονοπάτι επαυξημένου A*
Επίσκεψη διαδοχικών στόχων
● Οι στόχοι επιλέγονται είτε από τους κόμβους του γράφου είτε από το σύνολο
του χώρου.
● Σχεδιασμός ενός μονοπατιού κάθε φορά.
● Κάθε μονοπάτι χωρίζεται σε υποστόχους.
Δεύτερο μέρος υλοποίησης: αναγνώριση δυναμικών
Dynamic replanning
1. Έλεγχος για την ύπαρξη δυναμικών εμποδίων κοντά στο μονοπάτι που έχει
υπολογιστεί.
2. Ανανέωση των τιμών του πίνακα Brushfire.
3. Επαναπροσδιορισμός του νέου μονοπατιού.
Παράδειγμα dynamic replanning
Πείραμα path planning 1
Απλός Α*
Χρόνος εκτέλεσης αλγορίθμου: 147.796
(msec)
Μήκος μονοπατιού: 5.6568 (m)
Επαυξημένος Α*
Χρόνος εκτέλεσης αλγορίθμου: 124.871
(msec)
Μήκος μονοπατιού: 5.6568 (m)
Πείραμα path planning 2
Απλός Α*
Χρόνος εκτέλεσης αλγορίθμου: 141.056 (msec)
Μήκος μονοπατιού: 14.994 (m)
Επαυξημένος Α*
Χρόνος εκτέλεσης αλγορίθμου: 138.978 (msec)
Μήκος μονοπατιού: 17.548 (m)
Διασπορά
Χάρτες πειραμάτων dynamic localization
Πείραμα 1: Ύπαρξη μόνο στατικών εμποδίων
Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης
μέση απόσταση6000 = 0.01334 m
μέση απόσταση9000 = 0.01289 m
Πείραμα 2: Ύπαρξη λίγων δυναμικών εμποδίων
Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης
μέση απόσταση6000 = 0.13323 m
μέση απόσταση9000 = 0.0812 m
Πείραμα 3: Ύπαρξη αρκετών δυναμικών εμποδίων
Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης
μέση απόσταση6000 = 0.18249 m
μέση απόσταση9000 = 0.1734 m
Πείραμα 4: Ύπαρξη πολλών δυναμικών εμποδίων
Συμπεράσματα
Πειράματα πρώτου μέρους
Ο επαυξημένος Α* αλγόριθμος είναι πιο αξιόπιστος από τον απλό A* στην
ολοκλήρωση μιας διαδρομής χωρίς συγκρούσεις.
Πειράματα δεύτερου μέρους
Με τη χρήση περισσότερων particles το ρομπότ μπορεί να εντοπιστεί με
μεγαλύτερη ακρίβεια.
Όσο μεγαλύτερο είναι το πλήθος των δυναμικών εμποδίων τόσο πιο δύσκολη
γίνεται η εύρεση της θέσης του ρομπότ.
Μελλοντικές Επεκτάσεις
Χρησιμοποίηση κινούμενων αντικειμένων με τη βοήθεια του εργαλείου
προσομοίωσης gazebo.
Υλοποίηση στο πραγματικό ρομπότ.
Ευχαριστίες
Τον κ. Συμεωνίδη και τον κ. Πέτρου για την ανάθεση αυτής της εργασίας και την
ευκαιρία που μου έδωσαν να ασχοληθώ με τον τομέα της ρομποτικής.
Τον Μάνο Τσαρδούλια για την καθοδήγησή του και τις συμβουλές που μου έδινε.
Την οικογένειά μου και τους φίλους μου για την στήριξή τους όλα αυτά τα χρόνια.

Αθηνά Ανοιξιάδου

  • 1.
    Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης ΤμήμαΗλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Αυτόνομη περιήγηση εκθεμάτων με τη βοήθεια ρομπότ Εκπόνηση: Επιβλέπων: Ανοιξιάδου Αθηνά 7136 Συμεωνίδης Ανδρέας Επίκ. Καθηγητής Πέτρου Λουκάς Αναπ. Καθηγητής Τσαρδούλιας Εμμανουήλ Διδάκτωρ Ιούλιος 2017
  • 2.
    Κίνητρο και σκοπόςτης διπλωματικής εργασίας ● Έναυσμα Μεγάλη ανάπτυξη αυτόνομων ρομποτικών οχημάτων ● Σκοπός Αυτόνομη πλοήγηση ρομπότ σε εσωτερικούς χώρους ● Υλοποίηση Σχεδιασμός βέλτιστου μονοπατιού και αποφυγή δυναμικών εμποδίων με σκοπό την επίσκεψη διαδοχικών στόχων
  • 3.
    Γνώσεις που αποκτήθηκαν ➔Χρήσηκαι εντολές Linux ➔ROS και χρήση εργαλείων ROS (rviz) ➔Εργαλείο ρομποτικής STDR_simulator ➔github ➔C++
  • 4.
  • 5.
    Εργαλεία και τεχνικέςπου χρησιμοποιήθηκαν ➔Monte Carlo Localization (MCL) ◆ particles: πιθανές θέσεις του ρομπότ μέσα στον χώρο ➔Αλγόριθμος A* ◆ αλγόριθμος εύρεσης βέλτιστου μονοπατιού ◆ open set και closed set
  • 6.
    Δομή υλοποίησης Πρώτο μέρος ➥Δημιουργία γράφου ➥ Εύρεση μονοπατιού μεταξύ δύο στόχων ➥ Βελτίωση μονοπατιού για αποφυγή συγκρούσεων ➥ Επίσκεψη διαδοχικών στόχων Δεύτερο μέρος ➥ Αναγνώριση δυναμικών εμποδίων ➥ Εντοπισμός της θέσης του ρομπότ σε δυναμικό περιβάλλον ➥ Δυναμικός επανασχεδιασμός μονοπατιού
  • 7.
    Δημιουργία γράφου PRM ●Γράφος ομοιόμορφης δειγματοληψίας ● Οι κόμβοι είναι διαμορφώσεις που ανήκουν στον ελεύθερο χώρο ● Για κάθε κόμβο ελέγχεται η σύνδεση και με τους 8 γειτονικούς κόμβους ● Οι ακμές αντιστοιχούν σε εφικτές διαδρομές
  • 8.
  • 9.
    Εύρεση μονοπατιού Εκτίμηση κόστουςδιαδρομής: Βελτίωση εκτίμησης κόστους διαδρομής: f(n) = g(n) + h(n), όπου n = 1, 2, 3, … g(n): συνάρτηση για τον υπολογισμό του κόστους της διαδρομής από τον αρχικό κόμβο μέχρι τον κόμβο n h(n): heuristic συνάρτηση για τον υπολογισμό του κόστους της διαδρομής από τον κόμβο n μέχρι τον τελικό στόχο f(n) = g(n) + h(n) + brushfire_const / brushfire(n), όπου brushfire_const: σταθερά brushfire(n): απόσταση του κόμβου n από το κοντινότερο εμπόδιο
  • 10.
  • 11.
  • 12.
    Μονοπάτι απλού A*Μονοπάτι επαυξημένου A*
  • 13.
    Επίσκεψη διαδοχικών στόχων ●Οι στόχοι επιλέγονται είτε από τους κόμβους του γράφου είτε από το σύνολο του χώρου. ● Σχεδιασμός ενός μονοπατιού κάθε φορά. ● Κάθε μονοπάτι χωρίζεται σε υποστόχους.
  • 14.
    Δεύτερο μέρος υλοποίησης:αναγνώριση δυναμικών
  • 15.
    Dynamic replanning 1. Έλεγχοςγια την ύπαρξη δυναμικών εμποδίων κοντά στο μονοπάτι που έχει υπολογιστεί. 2. Ανανέωση των τιμών του πίνακα Brushfire. 3. Επαναπροσδιορισμός του νέου μονοπατιού.
  • 16.
  • 17.
    Πείραμα path planning1 Απλός Α* Χρόνος εκτέλεσης αλγορίθμου: 147.796 (msec) Μήκος μονοπατιού: 5.6568 (m) Επαυξημένος Α* Χρόνος εκτέλεσης αλγορίθμου: 124.871 (msec) Μήκος μονοπατιού: 5.6568 (m)
  • 18.
    Πείραμα path planning2 Απλός Α* Χρόνος εκτέλεσης αλγορίθμου: 141.056 (msec) Μήκος μονοπατιού: 14.994 (m) Επαυξημένος Α* Χρόνος εκτέλεσης αλγορίθμου: 138.978 (msec) Μήκος μονοπατιού: 17.548 (m)
  • 19.
  • 20.
  • 21.
    Πείραμα 1: Ύπαρξημόνο στατικών εμποδίων Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης μέση απόσταση6000 = 0.01334 m μέση απόσταση9000 = 0.01289 m
  • 22.
    Πείραμα 2: Ύπαρξηλίγων δυναμικών εμποδίων Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης μέση απόσταση6000 = 0.13323 m μέση απόσταση9000 = 0.0812 m
  • 23.
    Πείραμα 3: Ύπαρξηαρκετών δυναμικών εμποδίων Διάγραμμα διασποράς Διάγραμμα μέσης διαφοράς απόστασης μέση απόσταση6000 = 0.18249 m μέση απόσταση9000 = 0.1734 m
  • 24.
    Πείραμα 4: Ύπαρξηπολλών δυναμικών εμποδίων
  • 25.
    Συμπεράσματα Πειράματα πρώτου μέρους Οεπαυξημένος Α* αλγόριθμος είναι πιο αξιόπιστος από τον απλό A* στην ολοκλήρωση μιας διαδρομής χωρίς συγκρούσεις. Πειράματα δεύτερου μέρους Με τη χρήση περισσότερων particles το ρομπότ μπορεί να εντοπιστεί με μεγαλύτερη ακρίβεια. Όσο μεγαλύτερο είναι το πλήθος των δυναμικών εμποδίων τόσο πιο δύσκολη γίνεται η εύρεση της θέσης του ρομπότ.
  • 26.
    Μελλοντικές Επεκτάσεις Χρησιμοποίηση κινούμενωναντικειμένων με τη βοήθεια του εργαλείου προσομοίωσης gazebo. Υλοποίηση στο πραγματικό ρομπότ.
  • 27.
    Ευχαριστίες Τον κ. Συμεωνίδηκαι τον κ. Πέτρου για την ανάθεση αυτής της εργασίας και την ευκαιρία που μου έδωσαν να ασχοληθώ με τον τομέα της ρομποτικής. Τον Μάνο Τσαρδούλια για την καθοδήγησή του και τις συμβουλές που μου έδινε. Την οικογένειά μου και τους φίλους μου για την στήριξή τους όλα αυτά τα χρόνια.