Υλοποίηση landmark based SLAM µε χρήση Kalman και Particle filters

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Υλοποίηση landmark based SLAM µε χρήση Kalman και Particle filters"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Υλοποίηση landmark based SLAM µε χρήση Kalman και Particle filters Αφιοντζή Ελένη Πορίτσα Σοφία ΕΠΙΒΛΕΠΩΝ: Αναπληρωτής Καθηγητής Πέτρου Λουκάς ΘΕΣΣΑΛΟΝΙΚΗ ΙΟΥΝΙΟΣ 2011

2 Ευχαριστίες Στο σηµείο αυτό θα θέλαµε να ευχαριστήσουµε τον καθηγητή µας, Λουκά Πέτρου, για την καθοδήγηση και την υποστήριξη που είχαµε καθ όλη τη διάρκεια εκπόνησης της παρούσας διπλωµατικής εργασίας. Θα θέλαµε στη συνέχεια να ευχαριστήσουµε τον διδακτορικό φοιτητή Εµµανουήλ Τσαρδούλια, ο οποίος µας βοήθησε στις δυσκολίες που αντιµετωπίσαµε στο µεγαλύτερο µέρος της υλοποίηση και συγγραφής της εργασίας αυτής. Ένα µεγάλο ευχαριστώ στον διδακτορικό φοιτητή Νικόλαο Ζήκο για την πολύτιµη βοήθεια του σε κρίσιµα για τη διπλωµατική αυτή εργασία θέµατα, καθώς και την υποµονή που επέδειξε. Τέλος, θα θέλαµε να ευχαριστήσουµε τις οικογένειές µας οι οποίες µας προσέφεραν την αµέριστη συµπαράσταση και υποστήριξή τους σε όλη τη διάρκεια των σπουδών µας. 2

3 Πίνακας Περιεχοµένων Ευχαριστίες...2 Πίνακας περιεχοµένων...3 Περίληψη...6 Κεφάλαιο 1. Εισαγωγή Γενικά Οργάνωση διπλωµατικής...9 Κεφάλαιο 2. Εργαλεία που χρησιµοποιήθηκαν USARsim Προσοµοίωση ροµπότ Προσοµοίωση αισθητήρων Προσοµοίωση περιβάλλοντος Player/Stage Γενικά οµή Σύνδεση Player-USARsim Software-Hardware που χρησιµοποιήθηκε Unreal Engine - Unreal Tournament Περιβάλλοντα προσοµοίωσης Χαρακτηριστικά Υπολογιστών...19 Κεφάλαιο 3. Probabilistic Robotics Robot Environment Interaction

4 3.2 Bayes Filters (BF) Kalman Filter (KF) Extended Kalman Filter (EKF) Particle Filter (PF) Particle Filter Algorithm Resampling Robot Motion Velocity Motion Model Mathematical derivation...35 Κεφάλαιο 4. SLAM FastSLAΜ Εισαγωγή State of the Art Data Association Γενικά Τρόποι επίλυσης του Data Association Maximum Likelihood SLAM Problem FastSLAM The Basic algorithm Factored Posterior Representation FastSLAM with Known Data Association Unknown Data Association FastSLAM algorithm Υλοποίηση FastSLAM 1.0 µε ευθείες ως landmarks Απεικόνιση του χάρτη..61 Κεφάλαιο 5. Εξαγωγή χαρακτηριστικών Εισαγωγή 65 4

5 5.2 Επιλογή χαρακτηριστικών State of the art Αλγόριθµοι εξαγωγής χαρακτηριστικών Split-and-Merge algorithm Incremental algorithm Hough Transform algorithm Line regression algorithm RANSAC algorithm EM algorithm Σύγκριση αλγορίθµων Χρήση RANSAC για line extraction Κεφάλαιο 6. Πειράµατα-Αποτελέσµατα Περιγραφή Πειραµάτων Πειράµατα στο πρώτο προσοµοιωµένο περιβάλλον Πειράµατα στο δεύτερο προσοµοιωµένο περιβάλλον Πειραµατικά Αποτελέσµατα Αποτελέσµατα πειραµάτων στο πρώτο προσοµοιωµένο περιβάλλον Αποτελέσµατα πειραµάτων στο δεύτερο προσοµοιωµένο περιβάλλον Κεφάλαιο 7. Συµπεράσµατα Προβλήµατα που συναντήθηκαν Μελλοντική µελέτη...97 Βιβλιογραφία

6 Περίληψη Η παρούσα διπλωµατική εργασία πραγµατεύεται το πρόβληµα του SLAM (Simultaneous Localization and Mapping), το οποίο έγκειται στην ταυτόχρονη κατάρτιση του χάρτη και εκτίµηση της θέσης ενός αυτοκινούµενου οχήµατος µέσα στο χάρτη αυτόν. Η µέθοδος που χρησιµοποιείται είναι το FastSLAM, που αποτελεί µία από τις πιο σύγχρονες προσεγγίσεις του προβλήµατος SLAM. Είναι βασισµένη σε particle filtering και επιδεικνύει µερικά πλεονεκτήµατα σε σχέση µε τις κλασσικές µεθόδους βασισµένες σε Kalman Filters (KFs). Χρησιµοποιώντας µια ευφυή παραγοντοποίηση του προβλήµατος SLAM, η πολυπλοκότητα της µεθόδου FastSLAM είναι γραµµική (ή ακόµα και λογαριθµική) µε τον αριθµό των χαρακτηριστικών του περιβάλλοντος, ενώ η πολυπλοκότητα των µεθόδων βασισµένων σε KFs είναι εκθετική. Συγκεκριµένα, στην παρούσα υλοποίηση ως χαρακτηριστικά (landmarks) του περιβάλλοντος του ροµπότ έχουν επιλεχθεί οι ευθείες, καθώς τα περισσότερα περιβάλλοντα εντός κτιρίων αποτελούνται από επίπεδες δοµές που αντιστοιχούν σε τοίχους, πόρτες κτλ. Η αναπαράσταση του περιβάλλοντος µε ευθείες έχει ως αποτέλεσµα ένα συµπαγή χάρτη µε αρκετά µειωµένο αριθµό παραµέτρων. Ο αλγόριθµος που χρησιµοποιείται για την εξαγωγή των χαρακτηριστικών του περιβάλλοντος είναι ο RANSAC (RANdom SAmple Consensus), ο οποίος αποτελεί µια γενική µέθοδο που βρίσκει µεγάλη εφαρµογή στο SLAM. Επίσης, έχει µια σχετικά εύκολη υλοποίηση και αποδίδει καλά για εσωτερικούς κυρίως χώρους, έχοντας παράλληλα µεγάλη ταχύτητα εκτέλεσης. Όσον αφορά το πρόβληµα της συσχέτισης δεδοµένων (data association), έχει επιλεχθεί η προσέγγιση Maximum Likelihood (ML), η οποία επαρκεί για την επίλυση προβληµάτων σε εσωτερικούς χώρους. Ο αλγόριθµος FastSLAM χρησιµοποιεί ένα EKF φίλτρο για να υπολογίσει την τοποθεσία κάθε χαρακτηριστικού στο περιβάλλον. Η πιθανότητα για την εκτίµηση του Maximum Likelihood υπολογίζεται από τις EKF εξισώσεις. Τα εργαλεία που χρησιµοποιήθηκαν για τη διεξαγωγή των πειραµάτων, καθώς και την προσοµοίωση του περιβάλλοντος και του ροµπότ περιλαµβάνουν τα προγράµµατα ανοιχτού λογισµικού Unified System for Automation and Robot Simulation (USARsim) και Player/Stage. Το µοντέλο του ροµπότ που χρησιµοποιείται στα πειράµατα είναι το Ρ2ΑΤ, το οποίο έχει αισθητήρα laser range finder και επιστρέφει τις µετρήσεις από τα σκαναρίσµατα του laser. Το ροµπότ θεωρείται σηµειακό και το κινηµατικό του µοντέλο είναι το µοντέλο της ταχύτητας (velocity motion model). Τα πειράµατα διεξήχθησαν σε δύο διαφορετικά προσοµοιωµένα περιβάλλοντα µε διαφορετικές τιµές παραµέτρων του αλγορίθµου FastSLAM. Η απεικόνιση του χάρτη του περιβάλλοντος του ροµπότ γίνεται µέσω των ευθύγραµµων τµηµάτων που απαρτίζουν την κάθε ευθεία. Προτιµήθηκε αυτός ο τρόπος απεικόνισης από τις άπειρες σε µήκος ευθείες, καθώς είναι πολύ συνηθισµένη η περίπτωση όπου µια ευθεία διακόπτεται από ένα άνοιγµα π.χ. διάδροµος, πόρτα στον τοίχο κτλ. Έτσι, έχουµε µια πιο συµπαγή και ολοκληρωµένη εικόνα του χάρτη. Τα αποτελέσµατα και τα συµπεράσµατα που αποκοµίσθηκαν από τα πειράµατα είναι ισοδύναµα µε αυτά που περιγράφηκαν από τους συγγραφείς 6

7 της µεθόδου, τονίζοντας την εφαρµογή της µεθόδου σε πραγµατικά περιβάλλοντα εσωτερικών χώρων (office-like). 7

8 ΚΕΦΑΛΑΙΟ 1. Εισαγωγή 1.1 Γενικά Το πρόβληµα της ταυτόχρονης εκτίµησης θέσης και κατάρτισης χάρτη (Simultaneous Localization And Mapping SLAM) ενός αυτοκινoύµενου οχήµατος αποτελεί τον τοµέα της ροµποτικής στον οποίο υπάρχει µεγαλύτερη ερευνητική δραστηριότητα. Είναι η τεχνική µε την οποία ένα αυτοκινούµενο ροµπότ αφού τοποθετηθεί σε µια άγνωστη θέση µέσα σε ένα άγνωστο περιβάλλον µπορεί να χτίσει σταδιακά ένα χάρτη του περιβάλλοντος προσδιορίζοντας ταυτόχρονα τη θέση του σε αυτόν. Αυτό επιτυγχάνεται µέσω µιας αλληλουχίας µετρήσεων που λαµβάνουν οι αισθητήρες του ροµπότ ενώ αυτό είναι σε κίνηση. Σε θεωρητικό και εννοιολογικό επίπεδο το SLAM µπορεί να θεωρηθεί ως ένα λυµένο πρόβληµα, ωστόσο υπάρχει ακόµα µελέτη για γενικότερες λύσεις και διαφορετικούς τρόπους υλοποίησής του ώστε να υπάρξει το βέλτιστο και ταχύτερο αποτέλεσµα. Η πρώτη διατύπωση του προβλήµατος SLAM ήταν το 1986 στο συνέδριο της IEEE Robotics and Automation στο San Francisco, California σε µια περίοδο που οι πιθανολογικές µέθοδοι µόλις είχαν αρχίσει να εισάγονται στη ροµποτική και την τεχνητή νοηµοσύνη (ΑΙ). Ένας αριθµός ερευνητών ήδη εφάρµοζε θεωρητικές µεθόδους εκτίµησης για προβλήµατα χαρτογράφησης και προσδιορισµού θέσης. Μέσω του συνεδρίου το SLAM αναγνωρίστηκε ως ένα βασικό πρόβληµα στη ροµποτική µε µεγάλα εννοιολογικά και υπολογιστικά θέµατα που έπρεπε να ερευνηθούν. Το µεγάλο πλεονέκτηµα του SLAM είναι ότι εξαλείφει την ανάγκη για την εκ των προτέρων γνώση του περιβάλλοντος. Έτσι µπορεί να χρησιµοποιηθεί σε πληθώρα εφαρµογών όπου η απόλυτη θέση ή µια ακριβής χαρτογράφηση δεν είναι δεδοµένη ή εφικτή λόγω κόστους προσέγγισης ή επικινδυνότητας της περιοχής και σε χώρους όπου εφαρµογές εντοπισµού θέσης (GPS) είναι µη αξιόπιστες (εσωτερικό κτηρίων µετά από κάποιο σεισµό, εξερεύνηση άλλων πλανητών, υποβρύχιες έρευνες, υπόγειες εργασίες εδάφους - Σχήµα 1.1). Η κυριότερη δυσκολία του προβλήµατος είναι η ύπαρξη αβεβαιότητας καθώς για την εκτίµηση της θέσης του οχήµατος είναι απαραίτητη η ύπαρξη ενός αντικειµενικού χάρτη του περιβάλλοντος, ενώ η ακριβής θέση του είναι απαραίτητη για τη δηµιουργία του ίδιου του χάρτη. Η µόνη είσοδος είναι ενθόρυβες, πιθανολογικές παρατηρήσεις του περιβάλλοντος ενώ µε κάθε κίνηση αυξάνεται η αβεβαιότητα σε µια ήδη αβέβαιη εκτίµηση θέσης του. Λόγω αυτών των προβληµάτων χρησιµοποιούνται επαναληπτικές µαθηµατικές στρατηγικές στην επίλυση του SLAM. Σε κάθε επανάληψη αν κάποια µέτρηση συσχετιστεί µε κάποια προηγούµενη µειώνεται η αβεβαιότητά της και επαναπροσδιορίζεται η θέση του αντίστοιχου χαρακτηριστικού, ενώ αν δεν συσχετιστεί προστίθεται καινούριο χαρακτηριστικό (εµπόδιο) στο χάρτη. Γενικά, η ύπαρξη υψηλού θορύβου στα περιβάλλοντα που κινείται το όχηµα έχει ως αποτέλεσµα να µην υπάρχουν συµπαγείς λύσεις του προβλήµατος. Υπάρχουν πολλές τεχνικές για να αντισταθµιστούν αυτά τα σφάλµατα οι κυριότερες από τις οποίες περιλαµβάνουν Kalman filters, particle filters(µέθοδος Monte Carlo) και ταυτοποίηση scans (scan matching). 8

9 (α) υποθαλάσσια (β) υπόγεια (γ) άλλοι πλανήτες Σχήµα 1.1: Περιβάλλοντα εφαρµογής του SLAM 1.2 Οργάνωση διπλωµατικής Η οργάνωση της διπλωµατικής εργασίας γίνεται ως εξής: Το δεύτερο κεφάλαιο, ασχολείται µε τα εργαλεία που χρησιµοποιήθηκαν και βοήθησαν στην συγγραφή και εκτέλεση της διπλωµατικής εργασίας και ως στόχο έχει να εισάγει τον αναγνώστη στις βασικές έννοιες του λογισµικού και του υλικού που ήταν απαραίτητες για την περάτωσή της. Στο τρίτο κεφάλαιο, παρουσιάζονται και αναλύονται εισαγωγικές έννοιες για τη ροµποτική και τον πιθανολογικό χαρακτήρα της όπως το φίλτρο Bayes, δυο εκ των βασικότερων Gaussian φίλτρων, το Kalman φίλτρο και το Extended Kalman φίλτρο και το particle φίλτρο που αποτελούν βάση για την ανάλυσή µας. Επίσης, αναλύεται το µοντέλο κίνησης του ροµπότ. Στο τέταρτο κεφάλαιο, περιγράφεται το πρόβληµα του SLAM, παρουσιάζεται γενικά ο αλγόριθµος FastSLAM καθώς και η συγκεκριµένη landmark based υλοποίηση του, που αποτέλεσε το βασικό κορµό της παρούσας διπλωµατικής εργασίας. Το πέµπτο κεφάλαιο, επικεντρώνεται στους αλγορίθµους εξαγωγής χαρακτηριστικών. Γίνεται µια εισαγωγή για τους πιο γνωστούς αλγορίθµους και αναλύεται περεταίρω ο RANSAC καθώς και η χρήση του στην εξαγωγή ευθειών. Στο έκτο κεφάλαιο, περιγράφονται τα πειράµατα που πραγµατοποιήθηκαν στα πλαίσια της διπλωµατικής εργασίας και τα αποτελέσµατα που προέκυψαν από αυτά. Τέλος, στο έβδοµο κεφάλαιο αναφέρονται κάποια προβλήµατα που συναντήθηκαν κατά τη διάρκεια εκτέλεσης της διπλωµατικής εργασίας, καθώς και ανοιχτά θέµατα προς µελέτη και βελτιώσεις του ήδη υπάρχοντος προγράµµατος που θα µπορούσαν να πραγµατοποιηθούν στο µέλλον. 9

10 ΚΕΦΑΛΑΙΟ 2. Εργαλεία που χρησιµοποιήθηκαν Η ενότητα αυτή, επεξηγεί τα διάφορα εργαλεία που χρησιµοποιήθηκαν σε όλη τη διάρκεια συγγραφής και εκτέλεσης της διπλωµατικής εργασίας και ως στόχο έχει να εισάγει τον αναγνώστη στις βασικές έννοιες του λογισµικού και του υλικού που αποτέλεσαν µέρος της εργασίας ώστε να µην υπάρχουν ασάφειες. Η ανάπτυξη και υλοποίηση του κύριου αλγόριθµου FastSLAM έγινε σε γλώσσα προγραµµατισµού C++ και η εκπόνηση των µετέπειτα ή παράλληλων πειραµάτων έγινε εφικτή µε τη χρήση εικονικών ροµπότ σε γραφικό περιβάλλον. Η προσοµοίωση τόσο του χώρου στον οποίο κινείται το ροµπότ όσο και του ίδιου του ροµπότ που καλείται να εκτελέσει το πείραµα γίνεται µε τη βοήθεια κατάλληλων προγραµµάτων. Το φυσικό περιβάλλον προσοµοιώνεται µέσω του Unified System for Automation and Robot Simulation (USARsim) το οποίο είναι ένα πρόγραµµα ανοιχτού λογισµικού, ενώ το ροµπότ προσοµοιώνεται µέσω του Player/Stage, πρόγραµµα επίσης ανοιχτού λογισµικού σε συνδυασµό µε το USARsim. Τέλος, στην ενότητα αυτή περιλαµβάνονται πληροφορίες για το υλικό που χρησιµοποιήθηκε για την ανάπτυξη του προγράµµατος και την εκτέλεση του. 2.1 USARsim Το USARsim είναι ένας προσοµοιωτής υψηλής ακρίβειας, ο οποίος προσοµοιώνει ροµπότ που χρησιµοποιούνται για έρευνα και διάσωση (Search and Rescue) καθώς και τα περιβάλλοντα µέσα στα οποία κινούνται και σκοπός του είναι να αποτελέσει εργαλείο που θα βοηθήσει στην µελέτη τόσο της αλληλεπίδρασης ανθρώπου ροµπότ (Human-Robot Interaction HRI), όσο και του συντονισµού πολλαπλών συνεργαζόµενων ροµπότ [1][2]. Προσοµοιώνει µεγάλη ποικιλία µοντέλων ροµπότ µε διάφορους αισθητήρες, καθώς και πολλά µοντέλα περιβάλλοντος (πίστες), τα οποία είτε υπάρχουν στο εµπόριο είτε είναι ακόµα σε ερευνητικό στάδιο. Το USARsim άρχισε να αναπτύσσεται στα µέσα του 2002 από το πανεπιστήµιο του Pittsburgh και το Carnegie Mellon University (CMU). Από την αρχή της ανάπτυξής του, το υλικό στόχευε να βοηθήσει σε εφαρµογές έρευνας και διάσωσης από όπου και πήρε το ακρωνύµιό του (Urban Search And Rescue USAR) [3]. Η πρώτη έκδοση ήταν βασισµένη στη µηχανή γραφικών Unreal Engine 2, δηλαδή τη βάση λογισµικού του δηµοφιλούς ηλεκτρονικού παιχνιδιού Unreal Tournament, που µπορούσε να ελεγχθεί µόνο µέσω του λογισµικού πολλαπλών πρακτόρων RETSINA. Στο αρχικό του στάδιο το USARsim περιλάµβανε ένα περιορισµένο αριθµό αισθητήρων και µοντέλα για τρία διαφορετικά περιβάλλοντα. Το 2005 µετά την έγκριση της οµοσπονδίας του Robocup, τα δικαιώµατα του USARsim παραχωρήθηκαν στο National Institute of Standards and Technology (NIST), το οποίο µετέφερε ότι εργασία είχε γίνει µέχρι στιγµής πάνω στο USARsim στην ιστοσελίδα ανοιχτού λογισµικού SourceForge [4] και αναδιοργάνωσε τον βασικό κώδικα, διατηρώντας παράλληλα την αρχική του δοµή έτσι όπως είχε σχεδιαστεί στο CMU. Η µετάβαση στην ιστοσελίδα του SourceForge και η ανάµιξη της κοινότητας του Robocup επέφεραν ραγδαία ανάπτυξη του 10

11 USARsim µε αποτέλεσµα η τελευταία του έκδοση να περιλαµβάνει 15 διαφορετικούς αισθητήρες και 23 ροµποτικά οχήµατα που µπορούν να προσοµοιωθούν, ανάµεσα στα οποία τροχοφόρα ροµπότ, αυτοκίνητα, ερπυστριοφόρα ροµπότ καθώς και ιπτάµενα ροµπότ. Το πεδίο έρευνας του USARsim διευρύνεται και έτσι το 2007 µετονοµάζεται σε Unified System for Automation and Robotics Simulation (USARsim). Για τη διευκόλυνση των χρηστών καθώς και για τον έλεγχο των ροµπότ στο προσοµοιωτή, το USARsim υποστηρίζει τρία προγράµµατα ανοιχτού λογισµικού, το Mobility Open Architecture Simulation and Tools (MOAST), το Pyro και το Player. Στα πλαίσια της διπλωµατικής αυτής έχει χρησιµοποιηθεί το Player, γενικά χαρακτηριστικά του οποίου θα δούµε παρακάτω. Ο πυρήνας του USARsim είναι η προσοµοίωση. Όπως αναφέραµε µπορεί να προσοµοιώσει µια ποικιλία διαφορετικών ροµπότ µε πολλαπλούς αισθητήρες καθώς και ποικιλία από περιβάλλοντα µέσα στα οποία µπορούν να κινηθούν. Παρακάτω παρατίθενται τα είδη της προσοµοίωσης [2] Προσοµοίωση ροµπότ Όλα τα ροµπότ που προσοµοιώνονται αποτελούνται από ένα αµάξωµα, πολλαπλούς τροχούς, αισθητήρες, µια κάµερα και κάποιες φορές έναν προβολέα. Τα ροµπότ µπορούν να διαµορφωθούν σύµφωνα µε τις επιθυµίες του χρήστη, ο οποίος µπορεί να προσδιορίσει ποιόν αισθητήρα θέλει να χρησιµοποιήσει και που θα τοποθετηθεί αυτός. Ακόµα ο χρήστης έχει τη δυνατότητα να ρυθµίσει πολλές ιδιότητες του ροµπότ, όπως η διάρκεια ζωής της µπαταρίας, η συχνότητα αποστολής δεδοµένων και άλλα. Τα προσοµοιωµένα ροµπότ είναι βασισµένα στα αντίστοιχα πραγµατικά µοντέλα και έχουν ποικίλες δυνατότητες. Παρακάτω παρατίθενται µερικά από τα µοντέλα ροµπότ που µπορεί να προσοµοιώσει το USARsim [5][6](Σχήµα 2.1). P2AT P2DX ATVJr 11

12 PER Corky Talon Sedan QRIO Σχήµα 2.1: Πραγµατικά ροµπότ και η προσοµοιωµένη αναπαράσταση τους [6] Passarola Προσοµοίωση αισθητήρων Οι αισθητήρες είναι απαραίτητοι για τον έλεγχο των ροµπότ και την αναπαράσταση του χώρου µέσα στον οποίο βρίσκονται. Οι περισσότεροι αισθητήρες προσθέτουν προσοµοιωµένο θόρυβο µε βάση την λειτουργία του πραγµατικού αισθητήρα [5]. Οι αισθητήρες που προσοµοιώνει το USARsim περιγράφονται παρακάτω [2]. 12

13 Κατάστασης (State): Ελέγχει τη κατάσταση του ροµπότ στο Unreal engine και την αναφέρει στο χρήστη. Οδοµετρίας (Odometry): Προσοµοιώνει την οδοµετρία και επιστρέφει την (x,y) θέση του ροµπότ σε σχέση µε την αρχική του θέση χρησιµοποιώντας τους encoders των τροχών. INU (Inertial Navigation Unit): Επιστρέφει τον προσανατολισµό του ροµπότ (roll, pitch and yaw angle). Encoder: Μετρά τη γωνία που έχει περιστραφεί ο αισθητήρας γύρω από τον άξονά του. Εµβέλειας (Sonar): Εντοπίζει απόσταση χρησιµοποιώντας είτε αισθητήρα range είτε InfraRed(IR). Laser: Έχει παρόµοια χαρακτηριστικά µε τον sonar. Το USARsim αντιµετωπίζει αυτό τον αισθητήρα ως µια σειρά από αισθητήρες απόστασης. Μπορεί να λειτουργήσει είτε αυτόµατα, όπου σαρώνει και επιστρέφει δεδοµένα σε κάθε συγκεκριµένο χρονικό διάστηµα, είτε χειροκίνητα όπου επιστρέφει µια µέτρηση µόνο όταν του δοθεί εντολή. Ήχου: Εντοπίζει τον ήχο του θύµατος, βρίσκοντας όλες τις πηγές ήχου και υπολογίζοντας την πηγή που ακούει δυνατότερα από τη θέση που βρίσκεται. Εντοπισµός ανθρώπινης κίνησης: Προσοµοιώνει πυροηλεκτρικό αισθητήρα, ανιχνεύοντας όλα τα θύµατα που βρίσκονται στο πεδίο µέτρησης του. Εκείνο που θα κουνηθεί πρώτο είναι εκείνο που θα ελεγχθεί πρώτο. Κάµερα: Οι εικόνες που µεταδίδει η κάµερα εξαρτώνται από το οπτικό πεδίο της, που αρχικοποιείται στο Unreal engine Προσοµοίωση περιβάλλοντος Το περιβάλλον παίζει πολύ σηµαντικό ρόλο στη προσοµοίωση αφού χωρίς αυτό η προσοµοίωση δεν θα είχε νόηµα. Τα περιβάλλοντα που υποστηρίζει το USARsim είναι γνωστά ως Reference Test Facility for Autonomous Mobile Robots for Urban Search and Rescue και έχουν σχεδιαστεί από το NIST. Όλες οι εικονικές αρένες έχουν σχεδιαστεί µε βάση τα µοντέλα AutoCAD των πραγµατικών, χρησιµοποιώντας στοιχεία από το πραγµατικό περιβάλλον [2][5]. Για όλες τις αρένες τα προσοµοιωµένα περιβάλλοντα χρησιµοποιούν: Γεωµετρικά µοντέλα: Είναι τα στατικά γεωµετρικά αντικείµενα που δεν µεταβάλλονται όπως το πάτωµα, τοίχοι, σκάλες, ράµπες και άλλα. Εµπόδια: Αντικείµενα που µπορούν να µετακινηθούν, να αλλάξουν κατάσταση και να αλληλεπιδράσουν µε τη συµπεριφορά του ροµπότ όπως τούβλα, σωλήνες και άλλα. Εικονικό φωτισµό: Προσοµοίωση του φωτισµού στην αρένα. Ειδικά εφέ: Ειδικά υλικά όπως γυαλιά, καθρέφτες και άλλα. Εικονικά θύµατα: Η προσοµοίωση των θυµάτων τα οποία µπορούν να πραγµατοποιήσουν αγωνιώδης πράξεις ζητώντας βοήθεια όπως να κουνούν το χέρι τους ή να αναστενάζουν. 13

14 Όλες οι εικονικές αρένες δηµιουργούνται µε τη βοήθεια του Unreal Editor και µέσω αυτού οι χρήστες µπορούν να δηµιουργήσουν τα δικά τους περιβάλλοντα. 2.2 Player/Stage Γενικά Ένα από τα βασικά προγράµµατα που χρησιµοποιήθηκαν για την διπλωµατική αυτή είναι το Player/Stage και συγκεκριµένα η έκδοση Player v που είναι κοµµάτι του Player/Stage/Gazebo Project Copyright (C). Το Player ήταν αποτέλεσµα µιας συλλογικής προσπάθειας που είχε ως στόχο τη δηµιουργία υψηλής ποιότητας προγραµµάτων ανοιχτού λογισµικού (Open Source) για την έρευνα στο τοµέα της ροµποτικής [7][8][9]. Το πρόγραµµα περιέχει τρία κοµµάτια λογισµικού (Player, Stage-2D, Gazebo-3D) που έχουν κυκλοφορήσει µε την άδεια χρήσης ελεύθερου λογισµικού, γνωστή ως Γενική Άδεια ηµόσιας Χρήσης (General Public License GNU GPL). Η ανάπτυξή του Player ξεκίνησε το 2000 στο Πανεπιστήµιο της νότιας Καλιφόρνια (University of Southern California - USC) από τους Brian P. Gerkey, Richard T. Vauhgan και Andrew Howard. Το 2001 µεταφέρθηκε στη SourceForge και από το 2003 και µετά άρχισε και η ανάπτυξη του Gazebo (3D προσοµοιωτής). Από τότε το Player/Stage έχει αναπτυχθεί και τροποποιηθεί από ερευνητές σε όλο τον κόσµο και χρηµατοδοτείται από πολλούς οργανισµούς (DARPA, NSF, SRI, ONR, JPL). Αποτελεί πλέον την πιο ευρέως χρησιµοποιούµενη διεπαφή ελέγχου ροµπότ διότι συνδυάζει ευελιξία χρήσης και ταχύτητα εκτέλεσης, καθώς και δυνατότητα άµεσου ελέγχου. Το Player/Stage είναι ένα εργαλείο προσοµοίωσης, στο οποίο ο χρήστης µπορεί να πραγµατοποιήσει πειράµατα που αφορούν ροµποτικές εφαρµογές. Αποτελείται από δυο προγράµµατα, το πρώτο από τα οποία είναι το Player, που λειτουργεί στο Hardware Abstraction Layer [10]. Αυτό σηµαίνει ότι µπορεί να επικοινωνήσει µε τα µέρη του υλικού (hardware) του ροµπότ και επιτρέπει στο χρήστη να το ελέγχει µέσω του κώδικά του, δίνοντας του τη δυνατότητα να µην χάνει πολύτιµο χρόνο προσπαθώντας να καταλάβει τον τρόπο που λειτουργούν τα επιµέρους µέρη του ροµπότ. Το δεύτερο µέρος της εφαρµογής είναι το Stage, ένα πρόσθετο (plugin) που συνδέεται στο Player και το οποίο µετατρέπει τις εντολές που δίνει ο χρήστης στο Player, σε actions στην προσοµοίωση του ροµπότ. Επίσης ρόλος του είναι να προσοµοιώνει τα δεδοµένα των αισθητήρων και να τα στέλνει πίσω στο Player, το οποίο µε τη σειρά του κάνει αυτές τις µετρήσεις διαθέσιµες στο κώδικα του χρήστη. Το Player υποστηρίζει µεγάλη ποικιλία σε ροµποτικά οχήµατα καθώς και συσκευές hardware που χρησιµοποιούνται από αυτά όπως laser, κάµερες διαφόρων τύπων, GPS και άλλα οµή Η προσοµοίωση αποτελείται από τρία µέρη [10]: 14

15 Τον κώδικα του χρήστη, ο οποίος χρησιµοποιεί το Application Programming Interface (API) του Player. Το Player, το οποίο αφενός χρησιµοποιεί τον κώδικα για να δώσει εντολές στο ροµπότ και αφετέρου παίρνει δεδοµένα από τους αισθητήρες του ροµπότ και τα επιστρέφει στο κώδικα του χρήστη. Το Stage, το οποίο συνδέεται µε το Player και λαµβάνει εντολές από αυτό, τις οποίες και χρησιµοποιεί για να κινήσει το προσοµοιωµένο ροµπότ µέσα στο εικονικό περιβάλλον. Επίσης λαµβάνει τα δεδοµένα των µετρήσεων των αισθητήρων και τα στέλνει στο Player. Μαζί το Player και το Stage είναι γνωστά ως Player/Stage και αποτελούν τις απαραίτητες υποδοµές για πολλά ερευνητικά προγράµµατα ροµποτικής Σύνδεση Player-USARsim Η λειτουργία του Player επιτρέπει την ανταλλαγή µηνυµάτων µέσω του πρωτοκόλλου TCP/IP. Τα µηνύµατα αυτά είναι απαραίτητα, καθώς αποτελούν το συνδετικό στοιχείο µεταξύ του κώδικα του χρήστη, του προσοµοιωµένου ροµπότ και του εικονικού περιβάλλοντος µέσα στο οποίο κινείται το ροµπότ. Στη διπλωµατική αυτή, τη λειτουργία του Stage αντικατέστησε το USARsim. Το πρόβληµα που προκύπτει από την αντικατάσταση αυτή είναι ότι τα µηνύµατα που ανταλλάσσονται µεταξύ Player και USARsim δεν γίνονται αντιληπτά και από τις δυο πλευρές, η επίλυση του οποίου δόθηκε µε την προσθήκη ενός αρχείου patch. 2.3 Software-Hardware που χρησιµοποιήθηκε Unreal Engine - Unreal Tournament Η µηχανή γραφικών για παιχνίδια Unreal Engine, η οποία χρησιµοποιείται από τον προσοµοιωτή, δηµιουργήθηκε από την Epic Games το 1998 [11] και αποτέλεσε βάση για πολλά video games αλληλοεξόντωσης χαρακτήρων (first person shooter). Ο πυρήνας του προγράµµατος είναι γραµµένος σε C++ δίνοντάς του µεγάλη ικανότητα µεταφοράς και προσαρµογής σε όλα σχεδόν τα λειτουργικά συστήµατα. Μέσω του Unreal Script ο χρήστης µπορεί να τροποποιήσει µεγάλα κοµµάτια του παιχνιδιού και να προσθέσει δικά του. Με βάση αυτή τη µηχανή γραφικών δηµιουργήθηκε το 1999 το πρώτο Unreal Tournament και αφού είχε µεγάλη επιτυχία, το 2003 δηµιουργήθηκε η έκδοση Unreal Tournament 2004 (Σχήµα 2.2) [12], η οποία χρησιµοποιήθηκε για τη δηµιουργία και την προσοµοίωση των εικονικών περιβαλλόντων µέσα στα οποία κινείται το ροµπότ στα πλαίσια της διπλωµατικής αυτής. 15

16 Σχήµα 2.2: Unreal Tournament 2004 [12] Περιβάλλοντα προσοµοίωσης Η έρευνα και τα πειράµατα για την χαρτογράφηση εκτελέστηκαν σε δύο περιβάλλοντα προσοµοίωσης. Το πρώτο (Σχήµα 2.3, 2.4) είναι ένας χώρος ορθογώνιου σχήµατος, διαστάσεων 20x21 µέτρων. Ο ελεύθερος χώρος προς εξερεύνηση, αν αφαιρεθούν τα τετραγωνικά που καταλαµβάνουν τα εµπόδια, είναι περίπου 350 τετραγωνικά µέτρα. Τα εµπόδια που βρίσκονται στο χώρο είναι κάθετα τοποθετηµένα τµήµατα ξύλου εγκατεστηµένα µε τέτοιο τρόπο ώστε να σχηµατίζονται τρία δωµάτια. Το πρόγραµµα µας δίνει τη δυνατότητα να βλέπουµε σε ένα µικρό µέρος της οθόνης ότι ακριβώς βλέπει µπροστά του το ροµπότ (Σχήµα 2.5 πάνω αριστερά στη δεύτερη εικόνα). Το ροµπότ εισέρχεται στη πίστα αυτή στο σηµείο που βρίσκεται το βέλος. Σχήµα 2.3 Πρώτη προσοµοιωµένο περιβάλλον εξερεύνησης του Unreal Tournament 16

17 Σχήµα 2.4 Κάτοψη του πρώτου προσοµοιωµένου περιβάλλοντος Σχήµα 2.5: Στιγµιότυπα περιήγησης του ροµπότ στο πρώτο προσοµοιωµένο περιβάλλον Το δεύτερο περιβάλλον προσοµοίωσης δεν περιλαµβάνει τεχνητά εµπόδια. Είναι µια βασική πίστα του Unreal Tournament 2004 και έχει χρησιµοποιηθεί και από το διαγωνισµό RoboCup to 2009 (Mapping_Elemental). Η έκταση της πίστας είναι αρκετά µεγάλη, στα πλαίσια 17

18 της διπλωµατικής µας χρησιµοποιήσαµε ένα µικρό µέρος της όπως φαίνεται στο Σχήµα 2.6.Το ροµπότ µας εισέρχεται στη πίστα αυτή στο σηµείο που βρίσκεται το βέλος. Τα έντονα πράσινα αντικείµενα είναι πόρτες. Σχήµα 2.6 Μέρος του δεύτερου προσοµοιωµένου περιβάλλοντος εξερεύνησης Σχήµα 2.7: Μέρος κάτοψης της του δεύτερου προσοµοιωµένου περιβάλλοντος 18

19 Σχήµα 2.8: Στιγµιότυπα περιήγησης του ροµπότ στο δεύτερο προσοµοιωµένο περιβάλλον Και στα δυο περιβάλλοντα το δάπεδο είναι επίπεδο εφόσον το USARsim δεν διαθέτει stabilizer ώστε να διατηρεί το laser πάντα οριζόντιο. Έτσι, αν το έδαφος ήταν ανώµαλο ο αισθητήρας laser θα επέστρεφε λανθασµένες ενδείξεις και το αποτέλεσµα του SLAM δεν θα ήταν το επιθυµητό Χαρακτηριστικά Υπολογιστών Στο µέρος αυτό, παρουσιάζονται τα χαρακτηριστικά του υπολογιστή στον οποίο έγινε η συγγραφή του κώδικα καθώς και εκτελέστηκαν τα πειράµατα του ροµπότ. Συνολικά για τη διεξαγωγή των πειραµάτων χρησιµοποιήθηκαν τρείς υπολογιστές. Στους δυο ήταν εγκατεστηµένο το Unreal Tournament 2004 και ο καθένας προσοµοίωνε και µια ξεχωριστή προς χαρτογράφηση πίστα. Στον τρίτο, τα χαρακτηριστικά του οποίου φαίνονται παρακάτω, εκτελέστηκε η παρούσα υλοποίηση του αλγορίθµου SLAM. Computer Running Ubuntu 9.10 (the Karmic Koala release) Processor: 4x Intel Core 2 Quad CPU 2.33GHz Memory: 3094MB (588MB used) 19

20 Operating System Version Memory Network Kernel: Linux generic (i686) Compiled: #75-Ubuntu SMP Fri Mar 18 18:08:39 UTC 2011 C Library: GNU C Library version (stable) Default C Compiler: GNU C Compiler version (Ubuntu ubuntu9) Desktop Environment: GNOME Total Memory: kb Free Memory: kb Buffers: kb Cached: kb Ethernet controller Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller(rev 03) Subsystem: Giga-byte Technology Device e000 20

21 ΚΕΦΑΛΑΙΟ 3. Probabilistic Robotics 3.1 Robot Environment Interaction Το περιβάλλον ενός ροµπότ αποτελεί ένα δυναµικό σύστηµα. Στην παρακάτω εικόνα (Σχήµα 3.1) φαίνεται η αλληλεπίδραση ενός ροµπότ µε το περιβάλλον του. Σχήµα 3.1: Αλληλεπίδραση του ροµπότ µε το περιβάλλον του [13] Καθώς το ροµπότ αποκτά πληροφορίες για το περιβάλλον του µέσω ενθόρυβων αισθητήρων (noisy sensors), διατηρεί µια εσωτερική πεποίθηση (internal belief) σχετικά µε την κατάσταση του περιβάλλοντός του, όπως φαίνεται στα αριστερά της εικόνας 3.1. Το περιβάλλον χαρακτηρίζεται από την κατάσταση x t (state), η οποία διακρίνεται σε δυναµική (dynamic) και στατική (static), ανάλογα µε το αν αλλάζει τιµή µε την πάροδο του χρόνου, καθώς και σε πλήρη (complete) και ελλιπή (incomplete), ανάλογα µε το αν είναι γνωστές προηγούµενες καταστάσεις, µετρήσεις ή είσοδοι. Τυπικές µεταβλητές της κατάστασης είναι: Η θέση του ροµπότ (pose), η οποία περιγράφει την τοποθέτηση και τον προσανατολισµό του, σχετικά µε ένα γενικό σύστηµα συντεταγµένων (global coordinate system) Η ταχύτητα Η θέση και τα χαρακτηριστικά των αντικειµένων (landmarks) του περιβάλλοντος. Τα αντικείµενα θεωρούνται σταθερά και διακριτά στο περιβάλλον και µπορούν να αναγνωρισθούν αξιόπιστα Η θέση και η ταχύτητα των κινούµενων αντικειµένων και ανθρώπων ιακρίνουµε δύο τύπους δεδοµένων ανάλογα µε το είδος της αλληλεπίδρασης του ροµπότ µε το περιβάλλον: 21

22 εδοµένα µέτρησης (measurement data) z t, περιέχουν πληροφορίες για την κατάσταση του περιβάλλοντος τη χρονική στιγµή t, π.χ. εικόνες από κάµερα, µετρήσεις laser κτλ. εδοµένα ελέγχου (control data) u t, περιέχουν πληροφορίες σχετικά µε την αλλαγή της κατάστασης του περιβάλλοντος στο χρονικό διάστηµα (t-1,t], π.χ. ταχύτητα του ροµπότ, περιστροφή των τροχών του ροµπότ (odometers) κτλ. Παρακάτω (Σχήµα 3.2) φαίνεται η εξέλιξη των καταστάσεων x t και των µετρήσεων z t, όπως προσδιορίζονται από την πιθανότητα µέτρησης (measurement probability) p(z t x t ) και από την πιθανότητα µετάβασης κατάστασης (state transition probability) p(x t x t-1,u t ). Αυτό το χρονικά παραγωγικό µοντέλο είναι γνωστό ως Dynamic Bayes Network (DBN) ή Hidden Markov Model (HMM). Σχήµα 3.2: Dynamic Bayes Network [14] Η πεποίθηση (belief) του ροµπότ αντανακλά την εσωτερική γνώση του σχετικά µε την κατάσταση του περιβάλλοντος. Στην πιθανολογική ροµποτική (probabilistic robotics) οι πεποιθήσεις αναπαριστώνται µέσω κατανοµών πιθανότητας υπό συνθήκη (conditional probability distributions): bel x ) = p( x z, u ) (3.1) ( t t 1: t 1: t Η πρόβλεψη (prediction) του ροµπότ δίνει την πληροφορία της κατάστασης την χρονική στιγµή t βάσει προηγούµενων καταστάσεων χωρίς την προσµέτρηση της µέτρησης τη χρονική στιγµή t: bel ( xt t 1: t 1 1: t ) = p( x z, u ) (3.2) 3.2 Bayes Filters (BF) Ο αλγόριθµος του Φίλτρου Bayes (Bayes Filter Algorithm) [14] είναι ο πιο γενικός αλγόριθµος για τον υπολογισµό πεποιθήσεων (beliefs) και φαίνεται παρακάτω (Σχήµα 3.3): 22

23 Σχήµα 3.3: Αλγόριθµος του φίλτρου Bayes Ο αλγόριθµος είναι αναδροµικός και υπολογίζει την πεποίθηση bel(x t ) από την προηγούµενη κατάσταση bel(x t-1 ) και από δεδοµένα µετρήσεων z t και ελέγχου u t. Τα βασικά βήµατα του αλγορίθµου είναι δύο: Υπολογισµός της πρόβλεψης (prediction) από το ολοκλήρωµα που προκύπτει από τις κατανοµές της x t-1 και της πιθανότητας ότι ο έλεγχος u t επηρεάζει την µεταβολή από x t-1 σε x t (γραµµή 2). Υπολογισµός της ενηµέρωσης της µέτρησης (measurement update) από τον πολλαπλασιασµό της πρόβλεψης µε την πιθανότητα ότι η µέτρηση z t έχει παρατηρηθεί (γραµµή 3). (3.3) Τα Φίλτρα Bayes υποθέτουν ότι το δυναµικό σύστηµα είναι τύπου Markov (Markov assumption), που σηµαίνει ότι η στιγµιαία µεταβλητή κατάστασης x t περιέχει όλες τις σχετικές πληροφορίες. Όσον αφορά την τοποθέτηση αντικειµένων, οι µετρήσεις των αισθητήρων εξαρτώνται µόνο από την στιγµιαία φυσική θέση των αντικειµένων και η θέση του αντικειµένου τη χρονική στιγµή t εξαρτάται µόνο από την προηγούµενη κατάσταση x t-1. [15] 3.3 Kalman Filter (KF) Τα Φίλτρα Kalman είναι µια τεχνική για φιλτράρισµα (filtering) και πρόβλεψη σε γραµµικά Γκαουσιανά συστήµατα (linear Gaussian systems), η 23

24 οποία θεωρείται ως η καλύτερα µελετηµένη και πλέον διαδεδοµένη τεχνική για την υλοποίηση φίλτρων Bayes. Στην ουσία, αναπαριστούν την πεποίθηση bel(x t ) για τη χρονική στιγµή t µέσω της µέσης τιµής µ t (mean) και της συνδιακύµανσης Σ t (covariance). Είσοδος του φίλτρου είναι η πεποίθηση bel(x t-1 ) τη χρονική στιγµή t-1, η µέτρηση z t και ο έλεγχος u t, ενώ η έξοδος είναι η πεποίθηση bel(x t ) τη χρονική στιγµή t, όπως φαίνεται στον Αλγόριθµο 2 (Σχήµα 3.4): Σχήµα 3.4: Αλγόριθµος του Φίλτρου Kalman Το Φίλτρο Kalman υπολογίζει µια δυναµική διεργασία µε τη χρήση µιας µορφής ελέγχου ανάδρασης (feedback control): εκτιµά την κατάσταση σε κάποια χρονική στιγµή και έπειτα λαµβάνει την ανάδραση υπό τη µορφή (ενθόρυβων) µετρήσεων (noisy measurements). Έτσι, οι εξισώσεις του φίλτρου χωρίζονται σε δύο κατηγορίες (Σχήµα 3.5): Εξισώσεις χρονικών αναπροσαρµογών (time update) Εξισώσεις αναπροσαρµογών λόγω µετρήσεων (measurement update) Σχήµα 3.5: Ο συνεχής κύκλος του διακριτού φίλτρου Kalman [16] Οι εξισώσεις χρονικών αναπροσαρµογών είναι υπεύθυνες για την προβολή (στο χρόνο) των εκτιµήσεων της σύγχρονης κατάστασης (µέση τιµή µ t-1 - mean και συνδιακύµανση Σ t-1 - covariance) ώστε να προκύψουν οι αρχικές (priori) εκτιµήσεις για την επόµενη χρονική στιγµή (γραµµές 1-2 του αλγορίθµου). Οι εξισώσεις αναπροσαρµογών λόγω µετρήσεων είναι 24

25 υπεύθυνες για την ανάδραση, π.χ. για την ενσωµάτωση µιας µέτρησης z t στην αρχική εκτίµηση ώστε να προκύψει µια βελτιωµένη (posterior) εκτίµηση (µ t και Σ t ) (γραµµές 3-5 του αλγορίθµου). Η µεταβλητή K t που υπολογίζεται στη γραµµή 3 του αλγορίθµου ονοµάζεται κέρδος Kalman (Kalman Gain) και προσδιορίζει το βαθµό στον οποίο η µέτρηση ενσωµατώνεται στην εκτίµηση της νέας κατάστασης. Στη γραµµή 4 προσαρµόζεται η µέση τιµή µ t ανάλογα µε το κέρδος Kalman K t και µε τη διαφορά της πραγµατικής µέτρησης από την εκτιµώµενη (innovation): z µ ) (3.4) ( t C t t Παρακάτω (Σχήµα 3.6) φαίνεται το µπλοκ διάγραµµα του φίλτρου Kalman. 3.6: Kalman Filter Block Diagram [17] 3.4 Extended Kalman Filter (EKF) Ιδιαίτερα σηµαντικό ρόλο για την ορθότητα του Φίλτρου Kalman παίζει η υπόθεση ότι οι παρατηρήσεις είναι γραµµικές συναρτήσεις της κατάστασης και ότι η επόµενη κατάσταση είναι γραµµική συνάρτηση της προηγούµενης. Καθώς όµως οι περισσότερες εκτιµώµενες διαδικασίες (όπως τα κινούµενα ροµπότ) είναι µη-γραµµικές και η σχέση µέτρησης-διαδικασίας είναι µηγραµµική, είναι επιτακτική η χρήση ενός φίλτρου το οποίο γραµµικοποιεί το πρόβληµα γύρω από την τρέχουσα µέση τιµή και διασπορά. Αυτό το φίλτρο ονοµάζεται Εκτεταµένο Φίλτρο Kalman (Extended Kalman Filter, EKF) και βασίζεται στην υπόθεση ότι η πιθανότητα µετάβασης της κατάστασης (state transition probability) και η πιθανότητα µέτρησης (measurement probability) αναπαριστώνται µε µη-γραµµικές συναρτήσεις g και h: x t = g ( u, x ) 1 + ε (3.5) t t t z = h( ) + δ (3.6) t x t t 25

26 Η βασική ιδέα της προσέγγισης µε EKF είναι η γραµµικοποίηση, δηλαδή η µη-γραµµική συνάρτηση g προσεγγίζεται µε µια γραµµική συνάρτηση που είναι εφαπτοµένη της g στη µέση τιµή της Gaussian. Μια παρόµοια γραµµικοποίηση εφαρµόζεται και στη συνάρτηση h. Από τις πολλές τεχνικές για γραµµικοποίηση µη-γραµµικών συναρτήσεων ο EKF χρησιµοποιεί την (πρώτης τάξης) επέκταση Taylor (first order Taylor expansion), όπου κατασκευάζει µια γραµµική προσέγγιση της g µέσω της τιµής και κλίσης της (value and slope). Έτσι, οι µη-γραµµικές συναρτήσεις g και h έχουν τη µορφή: g ( u, ) (, ) t xt 1 g utµ t 1 + g ( ut, µ t 1 )( xt 1 µ t 1 ) = g( ut, µ t 1) + Gt ( xt 1 µ t 1) (3.7) h x ) h( µ ) + h ( µ )( x µ ) = h( µ ) + H ( x µ ) (3.8) ( t t t t t t t t t Ο πίνακας G t είναι η Ιακωβιανή (Jacobian) του µοντέλου µετάβασης κατάστασης (state transition model) και αντικαθιστά τους πίνακες Α t και B t του γραµµικού συστήµατος στο Φίλτρο Kalman, ενώ ο πίνακας H t είναι η Ιακωβιανή του µοντέλου µέτρησης (measurement model) και αντικαθιστά τον πίνακα C t. Παρακάτω φαίνεται ο Αλγόριθµος EKF (Σχήµα 3.7). Σχήµα 3.7: Αλγόριθµος EKF Ένας σηµαντικός περιορισµός του EKF προέρχεται από το γεγονός ότι γραµµικοποιεί χρησιµοποιώντας επέκταση κατά Taylor. Η αποδοτικότητα της γραµµικής προσέγγισης εξαρτάται από δύο παράγοντες: το βαθµό της αβεβαιότητας και το βαθµό της µη-γραµµικότητας των συναρτήσεων που προσεγγίζονται. Καθώς η επέκταση κατά Taylor εξαρτάται µόνο από την µέση τιµή, σε διαφορετικές κατανοµές µε την ίδια µέση τιµή αλλά µε διαφορετική διασπορά θα εφαρµοστεί η ίδια γραµµική προσέγγιση. 26

27 Εκτός από την επέκταση κατά Taylor που εφαρµόζεται στον EKF, υπάρχουν δύο ακόµα προσεγγίσεις για τη γραµµικοποίηση Gaussian µετασχηµατισµών: Assumed Density Filter (ADF), όπου η γραµµικοποίηση υπολογίζεται διατηρώντας την πραγµατική µέση τιµή και διασπορά της κατανοµής. Unscented Kalman Filter (UKF), όπου εφαρµόζεται στοχαστική γραµµικοποίηση µέσω σταθµικής στατιστικής γραµµικής παλινδρόµησης (weighted statistical linear regression process). 3.5 Particle Filter (PF) Μια µη-παραµετρική (nonparametric) υλοποίηση του Φίλτρου Bayes είναι το Φίλτρο Particle, όπου η επόµενη κατάσταση (posterior) προσεγγίζεται από έναν πεπερασµένο αριθµό παραµέτρων. Στα µη-παραµετρικά φίλτρα, η ποιότητα της προσέγγισης εξαρτάται από τον αριθµό των παραµέτρων που χρησιµοποιούνται. Καθώς ο αριθµός αυτός τείνει στο άπειρο, οι µηπαραµετρικές τεχνικές συγκλίνουν στη σωστή εκτίµηση της επόµενης κατάστασης. Καθότι το Φίλτρο Particle είναι κατάλληλο για την αναπαράσταση σύνθετων πολυτυπικών πεποιθήσεων (complex multimodal beliefs), συχνά επιλέγεται στην περίπτωση όπου ένα ροµπότ έχει να αντιµετωπίσει φάσεις γενικής αβεβαιότητας και δύσκολα προβλήµατα συσχέτισης δεδοµένων (data association), τα οποία αποφέρουν ξεχωριστές και διακριτές υποθέσεις. Ένα από τα πιο σηµαντικά χαρακτηριστικά του φίλτρου είναι η δυνατότητα προσαρµογής του αριθµού των παραµέτρων ανάλογα µε την (εκτιµώµενη) πολυπλοκότητα της επόµενης κατάστασης: αν η πολυπλοκότητα είναι µικρή (π.χ. µία µόνο κατάσταση µε µικρά όρια αβεβαιότητας) τότε χρησιµοποιείται ένας µικρός αριθµός παραµέτρων, ενώ για πιο σύνθετες καταστάσεις ο αριθµός των παραµέτρων αυξάνεται. Η βασική ιδέα του Φίλτρου Particle είναι η αναπαράσταση της πεποίθησης bel(x t ) µέσω ενός τυχαίου σετ δειγµάτων της κατάστασης, όπου τα δείγµατα προέκυψαν από αυτήν την πεποίθηση µε συσχετιζόµενα βάρη (associated weights). Αυτά τα δείγµατα ονοµάζονται particles: X t = { x t [1], x t [2],..., x t [Μ] } (3.9) Κάθε particle x t [m] (όπου 1 m M) είναι µια απεικόνιση (ή αλλιώς µια υπόθεση) της κατάστασης τη χρονική στιγµή t. Ο αριθµός των particles M στην πράξη είναι συνήθως µεγάλος αριθµός, π.χ. Μ=1000. Ιδανικά, η πιθανότητα να συµπεριληφθεί το particle x t στο particle set X t πρέπει να είναι ανάλογη της πεποίθησης του Φίλτρου Bayes bel(x t ): x t [m] ~ p(x t z 1:t, u 1:t ) (3.10) Ως αποτέλεσµα της (3.10), είναι πιο πιθανό η πραγµατική κατάσταση να βρίσκεται στην περιοχή όπου τα δείγµατα είναι πιο πυκνά. 27

28 3.5.1 Particle Filter Algorithm Παρακάτω φαίνεται ο Αλγόριθµος του Φίλτρου Particle (Σχήµα 3.8). Όπως και στους υπόλοιπους αλγορίθµους του Φίλτρου Bayes, έτσι και στον Αλγόριθµο του Φίλτρου Particle η πεποίθηση bel(x t ) προκύπτει αναδροµικά από την πεποίθηση bel(x t-1 ) της προηγούµενης χρονικής στιγµής (γραµµή 4 του αλγορίθµου), δηλαδή το particle set X t προκύπτει από το particle set X t-1. Σχήµα 3.8: Αλγόριθµος του Φίλτρου Particle Στο επόµενο βήµα του αλγορίθµου υπολογίζεται ο συντελεστής βάρους [m] (importance factor) w t για κάθε particle x [m] t, δηλαδή η πιθανότητα της µέτρησης z t υπό συνθήκη του particle x [m] t (γραµµή 5). w i t = = target distribution proposal distribution η p( zt xt ) p( xt xt 1, ut 1) Bel p( x x, u ) Bel ( x ) p( z t x ) t t t 1 t 1 t 1 ( x t 1 ) (3.11) Το πιο σηµαντικό βήµα όµως του αλγορίθµου είναι το resampling (γραµµές 9-12), όπου κάθε ένα από τα Μ particles από το αρχικό particle set X t αντικαθίσταται από ένα particle του προσωρινού particle set µε 28

29 πιθανότητα ίση µε τον συντελεστή βάρους w t [m]. Έτσι, προκύπτει ένα particle set αποτελούµενο από Μ particles µε διαφορετική κατανοµή σε σχέση µε το αρχικό set, καθώς ένα particle µε µεγαλύτερο συντελεστή βάρους είναι πιο πιθανό να βρίσκεται περισσότερες φορές µέσα στο particle set από ένα άλλο µε µικρότερο συντελεστή βάρους. Αυτό το βήµα του resampling είναι µια πιθανοκρατική υλοποίηση της ιδέας του Darwin Survival of the Fittest [18]: εστιάζει το particle set σε περιοχές όπου η πιθανότητα επόµενης κατάστασης (posterior probability) είναι µεγαλύτερη και έτσι οι υπολογιστικές πηγές του αλγορίθµου του φίλτρου εστιάζονται στις πιο σηµαντικές περιοχές. Παρακάτω απεικονίζεται η κατανοµή του particle set (Σχήµα 3.9). Η κατανοµή p(x) (target distribution) προσεγγίζεται από ένα set από particles τα οποία προκύπτουν από τον Αλγόριθµο του Φίλτρου Particle (Σχήµα 3.8). Αρχικά, τα δείγµατα εξάγονται από µια προτεινόµενη κατανοµή (proposal distribution) και έπειτα δειγµατοληπτούνται ξανά σύµφωνα µε το συντελεστή βάρους του κάθε προτεινόµενου particle. Στις περιοχές όπου η p(x) έχει µεγαλύτερη τιµή από την προτεινόµενη κατανοµή, τα δείγµατα παίρνουν µεγαλύτερα βάρη και συνεπώς επιλέγονται πιο συχνά, σε αντίθεση µε τις περιοχές όπου p(x) έχει µικρότερη τιµή Resampling Σχήµα 3.9: Κατανοµή του Φίλτρου Particle [14] Το resampling είναι ένα πολύ κρίσιµο βήµα στην υλοποίηση του particle filtering γιατί χωρίς αυτό η διακύµανση των βαρών των particles αυξάνεται συνεχώς. Έτσι, υποβαθµίζεται η ορθότητα του συµπεράσµατος καθώς ένας µικρός µόνο αριθµός particles λαµβάνεται υπόψη. Η τεχνική του resampling είναι να αποµακρύνει τα particles µε µικρό βάρος και να αντιγράψει εκείνα µε µεγαλύτερο βάρος [19]. 29

30 Σχήµα 3.10: Resampling [20] Ωστόσο, αυτό συµβαίνει µε το κόστος της άµεσης προσθήκης κάποιας διακύµανσης (additional variance). Αν τα particles έχουν µη-κανονικοποιηµένα βάρη µε µικρή διακύµανση τότε το βήµα του resampling µπορεί να µην είναι απαραίτητο. Συνεπώς, είναι λογικό να γίνεται resampling µόνο όταν η διακύµανση των µη-κανονικοποιηµένων βαρών είναι ανώτερη από ένα προκαθορισµένο όριο (pre-specified threshold) [21]. Συχνά χρησιµοποιείται ο όρος effective sample size, ο οποίος ορίζεται ως εξής: όπου το πραγµατικό βάρος είναι: (3.12) (3.13) Το µέγεθος N eff δεν µπορεί να υπολογιστεί µε ακρίβεια αλλά µια καλή εκτίµηση του είναι το µέγεθος ESS (Effective Sample Size): (3.14) [k] όπου w t είναι το κανονικοποιηµένο βάρος των particles. Η εξαγωγή συµπεράσµατος βασισµένη σε Μ σταθµικά δείγµατα είναι περίπου ίση µε το συµπέρασµα που προκύπτει από ESS τέλεια δείγµατα της 30

31 κατανοµής-στόχου (target distribution). Το µέγεθος ESS παίρνει τιµές από 1 έως Μ και γίνεται resampling µόνο όταν πέσει κάτω από ένα όριο Ν Τ. Ένας σηµαντικός περιορισµός εισάγεται όµως στα particle filters µε τη µέθοδο του resampling, καθώς χάνεται η ποικιλία στον πληθυσµό των particles και εισάγεται σφάλµα προσέγγισης: παρόλο που η διακύµανση του ίδιου του particle set µειώνεται, η διακύµανση του ως εκτιµητή της πραγµατικής κατάστασης αυξάνεται. Υπάρχουν δύο κυριότερες στρατηγικές για τη µείωση της διακύµανσης (variance reduction). Κατά πρώτον, µπορεί να µειωθεί η συχνότητα µε την οποία γίνεται resampling. Όταν η κατάσταση είναι γνωστό ότι παραµένει σταθερή (x t = x t-1 ) τότε δε θα πρέπει να γίνεται resampling, όπως στην περίπτωση όπου το ροµπότ σταµατά να κινείται. Αλλά και στην περίπτωση όπου αλλάζει η κατάσταση είναι καλό να µειώνεται η συχνότητα, καθώς πολλαπλές µετρήσεις µπορούν να ενσωµατωθούν µέσω πολλαπλής ανανέωσης του συντελεστή βάρους. Συγκεκριµένα, διατηρείται ο συντελεστής βάρους στην µνήµη και ανανεώνεται ως εξής: (3.15) Η επιλογή σχετικά µε τη συχνότητα του resampling είναι δύσκολη και απαιτεί πρακτική εµπειρία: η αυξηµένη συχνότητα αυξάνει τον κίνδυνο να χαθεί η ποικιλία, ενώ µικρότερη συχνότητα µπορεί να οδηγήσει στην απώλεια δειγµάτων σε περιοχές µικρής πιθανότητας. Η δεύτερη στρατηγική για τη µείωση του σφάλµατος δειγµατοληψίας είναι γνωστή ως δειγµατοληψία χαµηλής διακύµανσης (low variance sampling) αλλά συχνά συναντάται και ως systematic resampling. Η τακτική που ακολουθείται εδώ είναι ότι αντί για ανεξάρτητη επιλογή των δειγµάτων στο βήµα του resampling, η επιλογή περιλαµβάνει µια ακολουθιακή στοχαστική διαδικασία (sequential stochastic process). Αντί δηλαδή για την επιλογή Μ particles που αντιστοιχούν σε Μ τυχαίους αριθµούς, ο αλγόριθµος αυτής της στρατηγικής (Σχήµα 3.11) υπολογίζει έναν τυχαίο αριθµό και επιλέγει δείγµατα σύµφωνα µε αυτόν τον αριθµό, αλλά συγχρόνως µε πιθανότητα ανάλογη του βάρους του δείγµατος. Αυτό επιτυγχάνεται επιλέγοντας έναν τυχαίο αριθµό r στο διάστηµα [0;Μ -1 ], όπου Μ είναι ο αριθµός των δειγµάτων την χρονική στιγµή t. Έπειτα, ο αλγόριθµος επιλέγει particles προσθέτοντας επαναλαµβανόµενα τη σταθερή ποσότητα Μ -1 στο r και επιλέγοντας το particle που αντιστοιχεί στον τελικό αριθµό. Κάθε αριθµός U στο διάστηµα [0;1] αντιστοιχεί σε ακριβώς ένα particle: (3.16) 31

32 Σχήµα 3.11: Αλγόριθµος Low Variance Sampler Η διαδικασία που υλοποιείται µε τον αλγόριθµο φαίνεται και παρακάτω (Σχήµα 3.12): Σχήµα 3.12: Low Variance Resampling [13] Στην παρούσα διπλωµατική εργασία, όσον αφορά το resampling step υλοποιείται ο παραπάνω αλγόριθµος µε τη µέθοδο Roulette Wheel [22]. Σε αυτήν τη µέθοδο δηµιουργείται µια ρουλέτα αποτελούµενη από Μ τµήµατα (slots) (Σχήµα 3.13). Τα βάρη είναι κανονικοποιηµένα ως προς τη µονάδα. Κάθε κανονικοποιηµένο βάρος αντιπροσωπεύει το ποσοστό της γωνίας που καταλαµβάνει το συγκεκριµένο particle στη ρουλέτα. Έπειτα η ρουλέτα γυρνάει και ανάλογα που θα σταµατήσει επιλέγεται το αντίστοιχο particle. Αυτή η διαδικασία επαναλαµβάνεται Μ φορές. Μια εξίσου δηµοφιλής µέθοδος είναι γνωστή ως stratified sampling, στην οποία τα particles οµαδοποιούνται σε υποσύνολα. Η δειγµατοληψία από αυτά τα σύνολα πραγµατοποιείται σε δύο στάδια. Αρχικά, ο αριθµός των δειγµάτων που εξάγονται από κάθε υποσύνολο καθορίζεται µε βάση το συνολικό βάρος των particles που ανήκουν στο υποσύνολο αυτό. Στο δεύτερο στάδιο, εξάγονται τυχαία δείγµατα από κάθε υποσύνολο. Ακόµα και µε µεγάλο αριθµό particles, µπορεί να µην υπάρχουν particles στη γειτονιά της πραγµατικής κατάστασης. Αυτό το πρόβληµα είναι γνωστό ως πρόβληµα απώλειας particles (particle deprivation problem). Συµβαίνει συνήθως όταν ο αριθµός των particles είναι πολύ µικρός για να καλύψει την περιοχή µεγάλης πιθανότητας, δηλαδή αν µια σειρά από ατυχείς αριθµούς εξαλείψει όλα τα particles κοντά στην πραγµατική κατάσταση. 32

33 Σχήµα 3.13: Roulette Wheel [13] Ωστόσο, αυτό µπορεί να συµβεί τελικά σε κάθε φίλτρο ανεξάρτητα από το µέγεθος Μ του particle set. Μια γνωστή λύση σε αυτό το πρόβληµα είναι η πρόσθεση ενός µικρού αριθµού από τυχαία δηµιουργηµένα particles στο set µετά από κάθε διαδικασία resampling, ανεξάρτητα από την πραγµατική ακολουθία των εντολών κίνησης και µέτρησης. Αυτή η µεθοδολογία µπορεί να µειώσει αλλά όχι να εξαλείψει το particle deprivation problem, µε το κόστος µιας λανθασµένης εκτίµησης της επόµενης κατάστασης. 3.6 Robot Motion Τα Μοντέλα Κίνησης (Motion Models) περιέχουν την πιθανότητα µετάβασης κατάστασης (state transition probability) p(x t u t,x t-1 ), η οποία παίζει σηµαντικό ρόλο στο βήµα της πρόβλεψης του Φίλτρου Bayes. Ο σχηµατισµός ενός κινητού ροµπότ περιγράφεται από έξι µεταβλητές: τις καρτεσιανές συντεταγµένες τριών διαστάσεων και τις τρεις γωνίες Euler (roll, pitch, yaw) αναφορικά µε ένα εξωτερικό πλαίσιο συντεταγµένων. Η θέση (pose) ενός ροµπότ που κινείται στο επίπεδο περιγράφεται µε τις καρτεσιανές συντεταγµένες δύο διαστάσεων (x,y) και µε το γωνιακό προσανατολισµό θ, όπως φαίνεται παρακάτω (Σχήµα 3.14). Σχήµα 3.14: Θέση ροµπότ σε γενικό σύστηµα συντεταγµένων [14] 33

34 Υπάρχουν δύο πιθανοκρατικά µοντέλα κίνησης για ροµπότ κινούµενα στο επίπεδο: Μοντέλο Κίνησης µε βάση την ταχύτητα (velocity motion model), όπου γίνεται η υπόθεση ότι τα δεδοµένα κίνησης (motion data) προσδιορίζουν τις εντολές ταχύτητας Μοντέλο Κίνησης µε βάση την οδοµετρία (odometry motion model), όπου θεωρείται ότι υπάρχει πρόσβαση στις πληροφορίες οδοµετρίας (odometry information) Και τα δύο Μοντέλα Κίνησης εφαρµόζονται ικανοποιητικά σε ενθόρυβη κίνηση, επιτρέποντας σε Αλγορίθµους SLAM να εκτιµούν τη θέση του ροµπότ µε επαρκή ακρίβεια. Σχήµα 3.15: Μοντέλα Κίνησης [14] Στην παρούσα διπλωµατική χρησιµοποιείται το πρώτο µοντέλο κίνησης οπότε θα αναλυθεί παρακάτω Velocity Motion Model Στο συγκεκριµένο µοντέλο γίνεται η υπόθεση ότι µπορούµε να ρυθµίσουµε ένα ροµπότ µέσω δύο ταχυτήτων, της γραµµικής και της γωνιακής. Έτσι το διάνυσµα ελέγχου είναι: (3.17) όπου θετική γραµµική ταχύτητα u t αντιστοιχεί σε κίνηση προς τα εµπρός και θετική γωνιακή ταχύτητα ω t αντιστοιχεί σε αριστερόστροφη κίνηση. Παρακάτω φαίνεται ο αλγόριθµος του µοντέλου (Σχήµα 3.16), όπου παράγει τυχαία δείγµατα από p(x t u t,x t-1 ) για σταθερό έλεγχο u t και θέση x t-1. Στις γραµµές 1 έως 3 του αλγορίθµου εισάγεται θόρυβος στις παραµέτρους ελέγχου, ο οποίος προέκυψε από τις παραµέτρους σφάλµατος (µεταβλητές α1 έως α6) του κινηµατικού µοντέλου κίνησης. Έπειτα χρησιµοποιούνται αυτές οι ενθόρυβες τιµές για τη δηµιουργία νέας θέσης του δείγµατος (γραµµές 4 έως 7 του αλγορίθµου). 34

35 Σχήµα 3.16: Velocity Motion Model Έτσι, η διαδικασία δειγµατοληψίας υλοποιεί ένα απλό φυσικό µοντέλο κίνησης του ροµπότ το οποίο ενσωµατώνει το θόρυβο ελέγχου στην πρόβλεψη. Στην περίπτωση όπου η γωνιακή ταχύτητα ισούται µε µηδέν, οι πράξεις των γραµµών 4 και 5 του αλγορίθµου δεν µπορούν να υλοποιηθούν, οπότε χρησιµοποιείται το όριο της παράστασης για τη γωνιακή ταχύτητα να τείνει στο µηδέν: (3.18) Mathematical derivation (3.19) Αρχικά θα αναφέρουµε το κινηµατικό µοντέλο ενός ιδανικού ροµπότ χωρίς θόρυβο. Αν κρατήσουµε σταθερές τις τιµές των ταχυτήτων σε όλο το χρονικό διάστηµα (t-1,t] τότε το ροµπότ κινείται σε κύκλο µε ακτίνα: (3.20) όπως φαίνεται και στο παρακάτω σχήµα (Σχήµα 3.17). 35

36 Σχήµα 3.17: Κίνηση µε σταθερές ταχύτητες [13] Το κέντρο του κύκλου βρίσκεται στις συντεταγµένες: (3.21) (3.22) Μετά την παρέλευση t χρόνου κίνησης το ροµπότ θα βρίσκεται στη θέση: (3.23) Στην πράξη φυσικά οι ταχύτητες δεν παραµένουν σταθερές. Για τον υπολογισµό του κινηµατικού µε µη-σταθερές ταχύτητες χρησιµοποιούµε µικρές τιµές για το διάστηµα t ώστε να προσεγγίσουµε την πραγµατική ταχύτητα µε µια σταθερή τιµή µέσα σε αυτό το διάστηµα. Στη συνέχεια λαµβάνουµε υπόψη το θόρυβο που εισάγεται στις ταχύτητες µε τις οποίες κινείται το ροµπότ. Η διαφορά των πραγµατικών ταχυτήτων από τις µετρήσιµες µοντελοποιείται από µια τυχαία µεταβλητή εστιασµένη γύρω από το µηδέν (zero-centered). Συγκεκριµένα, υποθέτουµε ότι οι πραγµατικές ταχύτητες δίνονται: 36

37 (3.24) Ένα καλύτερο µοντέλο κίνησης προκύπτει αντικαθιστώντας την εξίσωση (3.24) στην (3.23): (3.25) Τέλος, λαµβάνουµε υπόψη και το θόρυβο που εισάγεται στη γωνία και υποθέτουµε πως το ροµπότ όταν φθάνει στην τελική του θέση περιστρέφεται κατά την ποσότητα: Οπότε η γωνία δίνεται: (3.26) (3.27) Αντικαθιστώντας την εξίσωση (3.27) στην (3.25) προκύπτουν οι εξισώσεις του κινηµατικού µοντέλου (γραµµές 4 έως 6 του Αλγορίθµου). Στην παρούσα εργασία, ο θόρυβος που εισάγεται στις ταχύτητες είναι µια τυχαία τιµή της τάξης του ±20% επί της κάθε ταχύτητας και στη γωνία ο θόρυβος είναι µηδενικός. Το κινηµατικό µοντέλο του ροµπότ p2ατ που χρησιµοποιείται φαίνεται στο παρακάτω Σχήµα 3.18: Σχήµα 3.18: Κινηµατικό Μοντέλο ροµπότ p2ατ [23] 37

38 ΚΕΦΑΛΑΙΟ 4: SLAM FastSLAM 4.1 Εισαγωγή Όπως αναφέρθηκε και προηγουµένως, ως SLAM (Simultaneous Localization and Mapping) ορίζουµε τη διαδικασία κατά την οποία ένα ροµπότ χαρτογραφεί το περιβάλλον του, και την ίδια στιγµή χρησιµοποιεί το χάρτη αυτό για να υπολογίσει τη θέση του. Θεωρείται ένα από τα πιο βασικά προβλήµατα που εµποδίζουν τα ροµπότ να γίνουν εντελώς αυτόνοµα και έτσι αποτελεί πλέον έναν από τους µεγαλύτερους τοµείς έρευνας στον κλάδο της ροµποτικής [24]. Η χρησιµότητα επίλυσης του προβλήµατος γίνεται αντιληπτή από το γεγονός ότι τα µοντέλα κίνησης των ροµπότ δεν είναι ακριβή, ο θόρυβος που προέρχεται από την οδοµετρία των τροχών είναι αθροιστικός και οι αισθητήρες µπορεί να έχουν σφάλµατα στις ενδείξεις τους [25]. Οι αλγόριθµοι που έχουν αναπτυχθεί τα τελευταία χρόνια είναι βασισµένοι σε πιθανολογικές τεχνικές. Κάποιοι από αυτούς λειτουργούν αυξητικά ως φίλτρα και µπορούν να χρησιµοποιηθούν σε εφαρµογές πραγµατικού χρόνου, ενώ άλλοι απαιτούν την επεξεργασία όλου του ιστορικού των δεδοµένων, ίσως και περισσότερες από µία φορές. Για τη δηµιουργία ακριβής χαρτογράφησης κάποιοι αλγόριθµοι γνωρίζουν τη θέση του ροµπότ, κάτι το οποίο απλοποιεί σηµαντικά το πρόβληµα. Στην παρούσα διπλωµατική, εστιάζουµε στο πιο πολύπλοκο πρόβληµα χαρτογράφησης χωρίς να γνωρίζουµε την ακριβή θέση του ροµπότ. Σε αυτήν την περίπτωση, µια λύση είναι να χρησιµοποιηθεί η οδοµετρία του ροµπότ, µε το µειονέκτηµα ότι προσλαµβάνει αρκετό θόρυβο και είναι επιρρεπής σε λάθη. Επιπλέον, όλοι οι αλγόριθµοι χαρτογράφησης πρέπει να αντιµετωπίσουν το πολύ δύσκολο θέµα της συσχέτισης δεδοµένων (data association). Κάποιοι αλγόριθµοι απαιτούν ειδικά χαρακτηριστικά που αναγνωρίζονται µοναδικά (known data association). Αυτό επιβάλλει τροποποιήσεις του περιβάλλοντος, γεγονός που γενικά δεν είναι επιθυµητό. Στην παρούσα υλοποίηση, χρησιµοποιούµε µεθόδους που µπορούν να περιγράψουν το περιβάλλον µε άγνωστη συσχέτιση δεδοµένων (unknown data association). Κάποιες τεχνικές αντιµετώπισης του προβλήµατος (µερικές από τις οποίες θα αναλυθούν και παρακάτω) είναι οι εξής [26]: EKF SLAM FastSLAM (Particle Filter) Network-Based SLAM Υβριδικές προσεγγίσεις (συνδυασµός NW και PF, NW και EKF) Τοπολογικό SLAM (κυρίως αναγνώριση περιβάλλοντος) Ταυτοποίηση scans (scan matching) / visual odometry 4.2 State of the Art Τα τελευταία χρόνια έχει παρατηρηθεί ραγδαία εξέλιξη όσον αφορά τις υλοποιήσεις διαφορετικών µεθόδων SLAM. Το µεγαλύτερο µέρος της έρευνας έχει εστιάσει στη βελτίωση της υπολογιστικής αποδοτικότητας ταυτόχρονα µε 38

39 την εξασφάλιση ορθών εκτιµήσεων του χάρτη και της θέσης του οχήµατος. Ωστόσο, θέµατα όπως η µη-γραµµικότητα (non-linearity), η συσχέτιση δεδοµένων (data association) και ο χαρακτηρισµός αντικειµένων (landmark characterization) έχουν ερευνηθεί αρκετά, καθώς είναι ζωτικής σηµασίας για την επίτευξη µιας πρακτικής και σθεναρής υλοποίησης SLAM. Σε αυτήν την ενότητα, παρουσιάζεται µια περίληψη των ερευνητικών προγραµµάτων που έχουν δηµοσιευθεί στη διεθνή βιβλιογραφία, σχετικά µε την επίλυση του προβλήµατος του SLAM. Οι πρώτες προσεγγίσεις για την κατασκευή χάρτη βασίζονταν στα ονοµαζόµενα evidence grids [27]. Χωρίζουν το χάρτη σε πλέγµα αποτελούµενο από τετράγωνα κελιά σταθερού µεγέθους (συνήθως 5 εκ.), όπου το κάθε κελί αποθηκεύει έναν πραγµατικό αριθµό [0...1]. Αυτός ο αριθµός αντιπροσωπεύει το υπολογισµένο αποδεικτικό (evidence) αυτού του κελιού που περιέχει ένα εµπόδιο. Η µέθοδος των evidence grids είναι καλά προσαρµοσµένη να ενσωµατώνει την ενθόρυβη πληροφορία χαµηλής ανάλυσης που παρέχεται από τους υπερηχητικούς αισθητήρες (ultrasonic sensors). Ωστόσο, αυτή η µέθοδος δεν µπορεί να αναπαραστήσει την αβεβαιότητα της θέσης του ροµπότ, άρα δεν µπορεί να υλοποιήσει SLAM. Άλλοι συγγραφείς ακολούθησαν µια προσέγγιση βασισµένη σε χαρακτηριστικά [28]: αναπαράσταση του χάρτη από ξεχωριστά αντικείµενα, διατηρώντας διάγραµµα από τις αβέβαιες µεταξύ τους σχέσεις [29] [30]. Αυτές οι προσεγγίσεις µπορούν να ενσωµατώσουν την αβεβαιότητα της θέσης του ροµπότ και να οδηγήσουν σε µια θεωρητική εκτίµηση του σχηµατισµού του SLAM. Στη συνέχεια, το ενδιαφέρον επικεντρώθηκε στο µαθηµατικό σχηµατισµό του SLAM εξολοκλήρου ως πρόβληµα εκτίµησης. ιαπιστώθηκε ότι οι εκτιµήσεις των χαρακτηριστικών είναι αρκετά συσχετιζόµενες λόγω του συσσωρευµένου σφάλµατος στη θέση του ροµπότ. Προτάθηκε λοιπόν η αναπαράσταση των θέσεων όλων των αντικειµένων και της θέσης του ροµπότ σε ένα κοινό διάνυσµα κατάστασης σε συνδυασµό µε τον πίνακα συνδιακύµανσης [31]. Αυτή η αναπαράσταση ονοµάζεται στοχαστικός χάρτης και είναι στην ουσία ένα Εκτεταµένο Φίλτρο Kalman (Extended Kalman Filter, EKF). Ο EKF αναπαριστά την κατάσταση αυτή ως µια πολυδιάστατη και µε πολλές µεταβλητές Gaussian, παραµετροποιηµένη µε µέση τιµή µ t (mean) και πίνακα συνδιακύµανσης Σ t (covariance matrix). Η µέση τιµή περιγράφει την πιο πιθανή θέση του ροµπότ και των χαρακτηριστικών, ενώ ο πίνακας συνδιακύµανσης κωδικοποιεί τις συσχετίσεις µεταξύ των µεταβλητών θέσης σε ζευγάρια. Παρόλα αυτά, το βασικό πρόβληµα του µεγάλου χρόνου υπολογισµού παρέµενε. Το υπολογιστικό κοµµάτι που καταναλώνει το µεγαλύτερο χρόνο είναι η ενηµέρωση του πίνακα συνδιακύµανσης, µε χρόνο O(n 2 ) για n χαρακτηριστικά. Αυτό περιόρισε τη χρήση του SLAM σε µικρά περιβάλλοντα (n<100 χαρακτηριστικά). Μια τροποποίηση του EKF είναι ο συµπιεσµένος EKF (Compressed EKF, CEKF) [32], όπου επιτρέπει τη συσσώρευση των µετρήσεων σε µια τοπική περιοχή µε k χαρακτηριστικά, µε κόστος O(k 2 ) ανεξάρτητα από το συνολικό µέγεθος n του χάρτη. Όταν το ροµπότ αποµακρυνθεί από αυτήν την περιοχή, το συγκεντρωµένο αποτέλεσµα πρέπει να διαδοθεί στο πλήρες EKF (global update) µε κόστος O(kn 2 ). Τα χαρακτηριστικά οµαδοποιούνται σε οµάδες (αλλιώς αποκαλούνται constellations), των οποίων οι συντεταγµένες τους εκφράζονται σχετικά µε κάποιο αναφορικό αντικείµενο για κάθε οµάδα. 39

40 Έτσι, οι συσχετίσεις µεταξύ χαρακτηριστικών µακρινών οµάδων γίνονται µηδαµινές και η κατά προσέγγιση ενηµέρωση (global update) µπορεί να πραγµατοποιηθεί πιο αποτελεσµατικά µε O(kn 3/2 ), όπου ο απαιτούµενος χώρος αποθήκευσης είναι O(n 3/2 ). Ουσιαστικά, µετά από κάθε επανάληψη ανανεώνονται µόνο µερικοί πίνακες µε τάξη ίση µε το µέγεθος του πίνακα που είναι ορατό. Μια άλλη µέθοδος υλοποιεί µια επαναληπτική επίλυση εξίσωσης στο σύστηµα γραµµικών εξισώσεων της εκτίµησης µέγιστης πιθανότητας (maximum likelihood), η οποία ονοµάζεται relaxation [33]. Συγκεκριµένα, εφαρµόζει µια επανάληψη µετά από κάθε µέτρηση µε υπολογιστικό χρόνο O(kn) και χώρο αποθήκευσης O(kn). Μετά το κλείσιµο ενός βρόχου, απαιτούνται περισσότερες επαναλήψεις που οδηγούν σε O(kn 2 ) υπολογιστικό χρόνο, στη χειρότερη περίπτωση. Αυτό το πρόβληµα λύθηκε πρόσφατα µε τη µέθοδο Multilevel Relaxation (MLR) [34], όπου εφαρµόζεται µια πολυεπίπεδη (multilevel) προσέγγιση παρόµοια µε πολυπλεγµατικές (multigrid) µεθόδους που χρησιµοποιούνται στην αριθµητική επίλυση µερικώς διαφορικών εξισώσεων (partial differential equations). Έτσι, ο υπολογιστικός χρόνος µπορεί να µειωθεί σε O(kn), ακόµα και µε το κλείσιµο µεγάλων βρόχων. Έπειτα, παρατηρώντας ότι οι εκτιµήσεις των χαρακτηριστικών είναι υπό συνθήκη ανεξάρτητες όταν δίνεται η θέση του ροµπότ, κατασκευάστηκε ο Αλγόριθµος FastSLAM [35]. Στην ουσία, ο Αλγόριθµος είναι ένα Particle Φίλτρο στο οποίο κάθε particle αναπαριστά την sampled τροχιά του ροµπότ και συνδεόµενες Gaussian κατανοµές των θέσεων διαφορετικών χαρακτηριστικών (όπως περιγράφεται και στην ενότητα 4.6). Ο υπολογιστικός χρόνος για την ολοκλήρωση µιας µέτρησης είναι O(Mlog(n)) για M particles µε O(Mn) απαιτούµενο χώρο αποθήκευσης. Σε σχέση µε τους παραπάνω αλγόριθµους είναι ο µόνος που µπορεί να χειριστεί αβέβαιη αναγνώριση αντικειµένων. Η αποτελεσµατικότητά του εξαρτάται από τον αριθµό Μ των particles: πρέπει να είναι αρκετά µεγάλος ώστε να κλείσει ο βρόχος και συγχρόνως να µην είναι πολύ µεγάλος. Μια άλλη προσέγγιση µε χρήση φίλτρου είναι το Sparse Extended Information Filter (SEIF) [36], όπου χρησιµοποιεί την παραµετροποίηση του Information Filter αντί του Kalman Filter. Σε αυτήν τη µέθοδο για την αναπαράσταση της αβεβαιότητας χρησιµοποιείται ένας πίνακα πληροφορίας (information matrix) Σ -1 αντί για τον πίνακα συνδιακύµανσης. Αυτή η παραµετροποίηση είναι χρήσιµη επειδή αυτός ο πίνακας είναι αραιός, όταν οι συσχετίσεις διατηρούνται σε γειτονικά χαρακτηριστικά και απαιτεί O(kn) χώρο αποθήκευσης. Η αναπαράσταση επιτρέπει ολοκλήρωση µιας µέτρησης σε O(k 2 ) υπολογιστικό χρόνο, αλλά για να δοθεί µια εκτίµηση πρέπει να λυθεί ένα σύστηµα n γραµµικών εξισώσεων. Πρόσφατα προτάθηκε ένας αλγόριθµος βασισµένος στον αποκαλούµενο χάρτη δένδρου (tree map) [37], όπου διαιρείται ιεραρχικά ο χάρτης σε τοπικές περιοχές και υποπεριοχές. Σε κάθε επίπεδο της ιεραρχίας κάθε περιοχής αποθηκεύεται ένας πίνακας που αναπαριστά τα αντικείµενα που βρίσκονται µέσα στην περιοχή. Με αυτόν τον τρόπο, αποσυνθέτει αποτελεσµατικά το µεγάλο και σποραδικά στρογγυλοποιηµένο πίνακα πληροφορίας σε ένα άθροισµα µικρότερων πινάκων, εκµεταλλευόµενος την ειδική τοπολογία τυπικών κτιρίων. Όπως και στον CEKF, µια µέτρηση ολοκληρώνεται σε τοπική υποπεριοχή χρησιµοποιώντας O(k 2 ) υπολογιστικό χρόνο. Ο συνολικός υπολογισµός µιας εκτίµησης απαιτεί χρόνο O(kn). 40

41 Επιπλέον, λύνει τα προβλήµατα γραµµικοποίησης µέσω «µη-γραµµικής περιστροφής» των ξεχωριστών περιοχών. Σύγκριση Αλγορίθµων SLAM Στον παρακάτω πίνακα του Σχήµατος 4.1 φαίνεται µια σύνοψη της επίδοσης των αλγορίθµων που συζητήθηκαν παραπάνω. Σχήµα 4.1: Υλοποίηση διαφορετικών SLAM Αλγορίθµων µε n landmarks, m µετρήσεις, p θέσεις ροµπότ και k landmarks στην περιοχή του ροµπότ [38] Η πρώτη απαίτηση (R1) ικανοποιείται πλήρως από τους αλγόριθµους ML, Relaxation, Multilevel Relaxation, Tree map και επιπρόσθετα από τους FastSLAM και CEKF, αν το σφάλµα λόγω προσανατολισµού είναι αρκετά µικρό ώστε να επιτρέπει γραµµικοποίηση. Η δεύτερη απαίτηση (R1) ικανοποιείται από Relaxation, Multilevel Relaxation, Tree map, FastSLAM για Μ= Ο(1) και SEIF. Τέλος, η τρίτη απαίτηση ικανοποιείται από FastSLAM και SEIF, δίνοντας µια εκτίµηση που δεν ικανοποιεί πάντα την πρώτη απαίτηση (R1), ενώ οι αλγόριθµοι Relaxation και CEKF σχεδόν ικανοποιούν την απαίτηση: ο πρώτος χρειάζεται γραµµικό υπολογιστικό χρόνο (µε την εξαίρεση κλεισίµατος µεγάλου βρόχου), ενώ ο δεύτερος απαιτεί µόνο O(n 3/2 ). Εκτός από τους αλγόριθµους που συζητήθηκαν παραπάνω, θα περιγραφούν παρακάτω κάποιες διαφορετικές µέθοδοι, για να διευκρινιστεί η µεγάλη προσπάθεια που έχει γίνει από ερευνητές σε αυτόν τον τοµέα και η ποικιλία των µεθόδων για την αντιµετώπισή του. Μια µέθοδος είναι η Symmetries and Perturbation Map (SPMap) [39], η οποία βασίζεται σε µια γενική πιθανοκρατική αναπαράσταση της αβέβαιης γεωµετρικής πληροφορίας. Ουσιαστικά, συνδυάζει τη χρήση της θεωρίας της πιθανότητας για την αναπαράσταση της ανακρίβειας της θέσης ενός γεωµετρικού στοιχείου, και τη χρήση της θεωρίας της συµµετρίας για την αναπαράσταση της µεροληπτικότητας λόγω των χαρακτηριστικών του κάθε τύπου γεωµετρικού στοιχείου [40] [41]. Μια τεχνική Smoothing and Mapping (SAM) [42] παρουσιάστηκε σαν µια ακριβής και γρήγορη µέθοδος για την υλοποίηση SLAM. Σε αυτήν τη 41

42 µέθοδο, στο διάνυσµα κατάστασης διατηρείται ολόκληρη η τροχιά του ροµπότ και έτσι τα σφάλµατα γραµµικοποίησης που είναι ενσωµατωµένα στη θέση του ροµπότ δε λαµβάνονται πλέον υπόψη. Για την ελαχιστοποίηση των υπολογισµών και την αποφυγή καταγραφής όλων των θέσεων µεταξύ ενηµερώσεων (updates), στο διάνυσµα κατάστασης συµπεριλαµβάνονται µόνο οι θέσεις του ροµπότ από όπου γίνονται οι παρατηρήσεις. Η εκτίµηση της µεταγενέστερης κατάστασης (posterior) στο πρόβληµα του SLAM δηµιουργεί έναν αραιό γράφο (sparse graph). Αυτός ο γράφος οδηγεί σε µια σειρά από µη γραµµικούς τετραγωνικούς περιορισµούς. Η βελτιστοποίηση αυτών των περιορισµών γίνεται µε τη χρήση ενός χάρτη µε Maximum Likelihood και µια αντίστοιχη οµάδα θέσεων ροµπότ. Ο αλγόριθµος GraphSLAM [43] λύνει το πρόβληµα γραµµικοποιώντας τους περιορισµούς αυτούς σε έναν αραιό Information Matrix και εφαρµόζοντας σταθερές τεχνικές εξαγωγής συµπεράσµατος. Έχει όµως και κάποιους περιορισµούς: το µέγεθος του γράφου αυξάνεται γραµµικά µε το χρόνο και συναντά δυσκολίες στον υπολογισµό των πιθανοτήτων του data association. Τέλος, µια εναλλακτική λύση στη διατήρηση ολόκληρου του πίνακα των συνενωµένων συνδιακυµάνσεων (joint covariance matrix) είναι ο αλγόριθµος Covariance Intersection [44]. Αυτός ο αλγόριθµος ανανεώνει τις διακυµάνσεις της θέσης του χαρακτηριστικού µε τέτοιο τρόπο που επιτρέπει όλες τις πιθανές συσχετίσεις µεταξύ παρατηρήσεων και χαρακτηριστικών και απαιτεί γραµµικότητα σε χρόνο και µνήµη. Το µειονέκτηµα αυτής της προσέγγισης είναι ότι τείνει να είναι υπερβολικά συντηρητική, οδηγώντας σε σηµαντικά αργή σύγκλιση και υψηλή αβεβαιότητα συσχέτισης δεδοµένων. 4.3 Data Association Γενικά Στις πραγµατικές εφαρµογές του SLAM, η αντιστοιχία (συµβολίζεται ως c t ) µεταξύ των παρατηρήσεων του ροµπότ z t (observations) και των πραγµατικών χαρακτηριστικών του χάρτη m t (landmarks) είναι σπάνια γνωστή. Ο αριθµός Ν των χαρακτηριστικών του περιβάλλοντος είναι επίσης άγνωστος. Όταν το ροµπότ κάνει µια παρατήρηση, το συγκεκριµένο χαρακτηριστικό πρέπει είτε να συσχετιστεί µε κάποιο άλλο που υπάρχει ήδη στο χάρτη, είτε να ενσωµατωθεί σε αυτόν ως καινούριο, αυξάνοντας τον αριθµό των στοιχείων του. Αυτή η διαδικασία είναι γνωστή ως συσχέτιση δεδοµένων (data association), και ασχολείται µε το πρόβληµα συσχέτισης παρατηρήσεων και χαρακτηριστικών [48]. Η διαδικασία επηρεάζεται τόσο από το θόρυβο που συσσωρεύεται στη θέση που θεωρεί ότι βρίσκεται το ροµπότ, όσο και από τα σφάλµατα στις µετρήσεις. υο βασικοί παράγοντες συνεισφέρουν στην αβεβαιότητα του SLAM, ο θόρυβος των µετρήσεων και ο θόρυβος από την κίνηση του ροµπότ, κάθε ένας από τους οποίους συµβάλει στην αµφιβολία της συσχέτισης των δεδοµένων. Ένα παράδειγµα της αβεβαιότητας που οφείλεται στο θόρυβο των µετρήσεων φαίνεται παρακάτω (Σχήµα 4.2), όπου οι δυο ελλείψεις απεικονίζουν το εύρος της πιθανής παρατήρησης δυο διαφορετικών χαρακτηριστικών. Η τοµή των δυο ελλείψεων µας δείχνει ότι οποιαδήποτε 42

43 παρατήρηση γίνει εκεί µπορεί να αποδοθεί εξίσου και στα δυο χαρακτηριστικά. Η απόδοση της παρατήρησης σε λανθασµένο χαρακτηριστικό αυξάνει το σφάλµα στο χάρτη και στη θέση του ροµπότ. Παρόλα αυτά, η επίδραση του λάθους θα είναι σχετικά µικρή καθώς η παρατήρηση θα µπορούσε να προέρχεται µε υψηλή πιθανότητα εξίσου και από τα δυο χαρακτηριστικά. Σχήµα 4.2: Αβεβαιότητα παρατήρησης [14] Αντίθετα, η αβεβαιότητα που προκαλείται από την κίνηση του ροµπότ µπορεί να έχει πιο σοβαρές συνέπειες στην ακρίβεια. Υψηλότερος θόρυβος από την κίνηση οδηγεί σε µεγαλύτερη αβεβαιότητα της θέσης του ροµπότ µετά την κίνηση του. Αν αυτό το σφάλµα είναι αρκετά µεγάλο, θα έχει ως αποτέλεσµα µεγάλη διαφορά στην υπόθεση που έχει γίνει για τη συσχέτιση των δεδοµένων, όπως φαίνεται και σχηµατικά (Σχήµα 4.3). Σχήµα 4.3: Αβεβαιότητα θέσης ροµπότ [14] Ένας σωστός αλγόριθµος για τη συσχέτιση δεδοµένων πρέπει να αποτελείται από δύο βασικά συστατικά. Αρχικά, έναν έλεγχο συµβατότητας µεταξύ παρατήρησης και χαρακτηριστικού για µια συγκεκριµένη εκτίµηση θέσης του ροµπότ και έπειτα ένα κριτήριο επιλογής για να γίνεται η καλύτερη αντιστοιχία µέσα από την οµάδα των συµβατών [48]. 43

44 4.3.2 Τρόποι επίλυσης του Data Association Μερικοί από τους αλγόριθµους που έχουν αναπτυχθεί για την επίλυση του προβλήµατος είναι (Συνοπτικά στο Σχήµα 4.4): Gated Nearest Neighbor (GNN): Είναι µια κλασσική τεχνική που συνήθως χρησιµοποιείται σε προβλήµατα εντοπισµού. Το κανονικοποιηµένο τετράγωνο x 2 χρησιµοποιείται για να καθοριστεί η συµβατότητα και µετά χρησιµοποιείται ο κανόνας του nearest neighbor, που παίρνει τη µικρότερη απόσταση Mahalanobis, για να επιλεγεί η καλύτερη αντιστοίχηση [45][51]. Το µεγαλύτερο πλεονέκτηµα του είναι η απλότητα υλοποίησης του και η υπολογιστική πολυπλοκότητά του είναι Ο(mn), όπου m είναι ο αριθµός χαρακτηριστικών που παρατηρούνται και n τα χαρακτηριστικά που υπάρχουν στο χάρτη. Maximum Likelihood (ML): Είναι η µέθοδος που χρησιµοποιείται στην παρούσα διπλωµατική και θα αναλυθεί µε λεπτοµέρειες παρακάτω [46]. Είναι άρρηκτα συνδεδεµένη µε τη µέθοδο Gated Nearest Neighbor. Local Map Sequencing (LMS): Σκοπός της είναι η χαρτογράφηση εσωτερικών χώρων µε τη χρήση δεδοµένων από αισθητήρες απόστασης. Ο αλγόριθµος συλλέγει δεδοµένα καθώς το ροµπότ κινείται σε µικρές αποστάσεις, τα οποία επεξεργάζονται µέσω δυο Hough Transforms που εντοπίζουν γωνίες και τµήµατα ευθειών στη γειτνιάζουσα περιοχή του ροµπότ. Με δεδοµένες όλες τις παρατηρήσεις, τα χαρακτηριστικά χρησιµοποιούνται για τη δηµιουργία ενός τοπικού χάρτη. Αν τοποθετήσουµε όλους τους τοπικούς χάρτες µαζί έχουµε το συνολικό χάρτη του περιβάλλοντος [47]. Joint Compatibility Branch and Bound (JCBB): Οι περισσότεροι αλγόριθµοι διαχειρίζονται κάθε απόφαση data association ως ένα ανεξάρτητο πρόβληµα, ενώ υπάρχει συσχέτιση µεταξύ τους. Αυτό το πρόβληµα λύνει ο αλγόριθµος Joint Compatibility Branch and Bound. Σε αυτόν τον αλγόριθµο συγκρίνονται οι από κοινού υποθέσεις data association χρησιµοποιώντας την από κοινού συµβατότητα (joint compatibility), που είναι πιθανολογικό κριτήριο της οµάδας των παρατηρήσεων που λαµβάνουν χώρα ταυτόχρονα [48]. Combined Constraint Data Association (CCDA): Ένας παρόµοιος αλγόριθµος µε τον JCBB κατασκευάζει ένα µη κατευθυνόµενο γράφο που ονοµάζεται Correspondence Graph [49]. Κάθε κόµβος αναπαριστά ένα υποψήφιο ζευγάρι παρατήρησης και χαρακτηριστικού, πιθανώς καθορισµένα από τον κανόνα του Nearest Neighbor. Οι ακµές µεταξύ των κόµβων αναπαριστούν τις από κοινού συµβατότητες µεταξύ των ζευγαριών. Τα αποτελέσµατα των JCBB και CCDA είναι παρόµοια αν και ο τελευταίος έχει καλύτερα αποτελέσµατα ακόµα και αν η θέση του ροµπότ είναι τελείως άγνωστη. Iterative Closest Point (ICP): Η µέθοδος scan matching είναι βασισµένη στην τροποποιηµένη έκδοση του αλγορίθµου Iterative Closest Point 44

45 [50]. Ο αλγόριθµος αλλάζει στο βήµα όπου αναγνωρίζονται οι αντιστοιχίες των νέων δεδοµένων και στο βήµα που υπολογίζεται η νέα θέση του ροµπότ. Multiple Hypothesis Tracking (MHT): Αντίθετα από τους αλγόριθµους που έχουν παρουσιαστεί µέχρι στιγµής, ο Multiple Hypothesis Tracking δεν επιλέγει µόνο µια υπόθεση data association, αλλά διατηρεί µια οµάδα υποτιθέµενων µονοπατιών πολλαπλών στόχων [51]. Κάποιοι ερευνητές σταµατούν προσωρινά τη δηµιουργία του χάρτη όταν η διαδικασία του data association γίνει ασαφής, για να µειώσουν το υπολογιστικό κόστος. Σχήµα 4.4: Μέθοδοι επίλυσης Data Association [14] Maximum Likelihood Η προσέγγιση Maximum Likelihood για το πρόβληµα του data association στο SLAM προτάθηκε από τους Montemerlo και Thrun [24]. Συγκεκριµένα, επιλέγεται η συσχέτιση n t που µεγιστοποιεί την πιθανότητα της παρατήρησης του αισθητήρα z t µε όλα τα διαθέσιµα δεδοµένα. (4.1) Η πιο συνηθισµένη προσέγγιση data association στο SLAM είναι η ανάθεση κάθε παρατήρησης χρησιµοποιώντας έναν κανόνα µεγιστοποίησης πιθανότητας, δηλαδή κάθε παρατήρηση ανατίθεται και κατά επέκταση συσχετίζεται µε το χαρακτηριστικό από το οποίο προήλθε. Αν η µέγιστη πιθανότητα είναι µικρότερη από ένα κατώφλι p 0, η παρατήρηση θεωρείται ως ένα καινούριο χαρακτηριστικό που πρέπει να ενσωµατωθεί στο χάρτη. Η µέθοδος λειτουργεί καλά όταν η σωστή συσχέτιση χαρακτηριστικών είναι σηµαντικά πιθανότερη από ότι οι λανθασµένες συσχετίσεις. Ωστόσο, αν 45

46 η αβεβαιότητα των µετρήσεων είναι υψηλή, περισσότερες από µια συσχετίσεις θα λάβουν υψηλή πιθανότητα, µε αποτέλεσµα να υπάρχει περίπτωση να επιλεγεί η λανθασµένη [51]. Τέτοιο πρόβληµα µπορεί να παρουσιαστεί αν οι αισθητήρες µέτρησης είναι επιρρεπείς σε θόρυβο. Μια λύση σε αυτό το πρόβληµα είναι η χρήση µόνο των παρατηρήσεων που οδηγούν σε αναµφίβολες συσχετίσεις, κάτι το οποίο είναι ανέφικτο σε θορυβώδη περιβάλλοντα επειδή πολλές παρατηρήσεις δε θα επεξεργαστούν. Ο αλγόριθµος FastSLAM που υλοποιείται στην παρούσα διπλωµατική χρησιµοποιεί ένα EKF φίλτρο για να υπολογίσει την τοποθεσία κάθε χαρακτηριστικού στο περιβάλλον. Η πιθανότητα για την εκτίµηση του Maximum Likelihood υπολογίζεται από τις EKF εξισώσεις. Παρακάτω (Σχήµα 4.5) βλέπουµε τον αλγόριθµο ο οποίος εφαρµόζει ένα EKF φίλτρο στη µέση τιµή µ j,t (mean) και τη συνδιακύµανση Σ j,t (covariance) κάθε χαρακτηριστικού j=1,...,n του χάρτη. Η πιθανότητα κάθε χαρακτηριστικού αποθηκεύεται (στο βήµα 5) και µετά ανακτάται αυτό που αντιστοιχεί στη µεγαλύτερη από όλες τις πιθανότητες (βήµα 7-9). Αν η µέγιστη αυτή πιθανότητα είναι µικρότερη Σχήµα 4.5: Αλγόριθµος Maximum Likelihood από το κατώφλι που έχει οριστεί για το p 0, η µέτρηση της παρατήρησης ενσωµατώνεται σαν νέο χαρακτηριστικό στο χάρτη. Το µοντέλο µέτρησης υποτίθεται ότι είναι επηρεασµένο από λευκό Γκαουσιανό θόρυβο (white Gaussian noise) µε µέση τιµή µηδέν και πίνακα συνδιακύµανσης Q t (βήµα 4). Ο πραγµατικός θόρυβος εξαρτάται από τους αισθητήρες και ορίζεται µε έναν πίνακα της µορφής (4.2) 46

47 που αντιπροσωπεύει το θόρυβο των παρατηρήσεων. Ο αλγόριθµος Maximum Likelihood είναι η πιο κοινή τεχνική που χρησιµοποιείται για το πρόβληµα του data association στο SLAM και επαρκεί για την επίλυση προβληµάτων κυρίως σε εσωτερικούς χώρους, καθώς τα εξωτερικά περιβάλλοντα απαιτούν πιο συµπαγείς λύσεις. Αυτός είναι και ο λόγος που έχει χρησιµοποιηθεί στην παρούσα διπλωµατική εργασία. 4.4 SLAM Problem Όταν ένα ροµπότ κινείται µέσα σε ένα άγνωστο, στατικό περιβάλλον εκτελεί ελέγχους (controls) που δίνονται από το χρήστη για να κινηθεί και συλλέγει παρατηρήσεις (observations) των χαρακτηριστικών του περιβάλλοντος. Τόσο οι έλεγχοι όσο και οι παρατηρήσεις επηρεάζονται από θόρυβο. Simultaneous Localization and Mapping (SLAM) είναι η διαδικασία της ανάκτησης του χάρτη του περιβάλλοντος και της θέσης τους ροµπότ από µια οµάδα ενθόρυβων ελέγχων και παρατηρήσεων. Αν το µονοπάτι που ακολουθεί το ροµπότ ήταν γνωστό µε βεβαιότητα (π.χ. µε τη χρήση GPS), τότε η χαρτογράφηση δε θα ήταν πρόβληµα [35]. Οι τοποθεσίες των αντικειµένων στο περιβάλλον του ροµπότ θα µπορούσαν να εκτιµηθούν µε τη χρήση ανεξάρτητων φίλτρων. Ωστόσο, όταν το µονοπάτι που θα ακολουθήσει το ροµπότ είναι άγνωστο, το σφάλµα στη θέση του ροµπότ συσχετίζεται µε το σφάλµα του χάρτη. Συµπεραίνουµε έτσι, ότι τόσο η θέση του ροµπότ όσο και ο χάρτης πρέπει να υπολογίζονται ταυτόχρονα. Η συσχέτιση µεταξύ του σφάλµατος θέσης του ροµπότ και του σφάλµατος του χάρτη φαίνονται παρακάτω γραφικά (Σχήµα 4.6). Σχήµα 4.6: Συσχέτιση σφάλµατος θέσης ροµπότ και χάρτη πριν υπάρξει κλειστός βρόχος [35] Το ροµπότ ακολουθεί το µονοπάτι που φαίνεται από τις διακεκοµµένες γραµµές παρατηρώντας κοντινά χαρακτηριστικά, που φαίνονται µε µπλε 47

48 κύκλους. Οι σκιασµένες ελλείψεις αναπαριστούν την αβεβαιότητα στη θέση του ροµπότ µε το πέρασµα του χρόνου. Λόγω του θορύβου των ελέγχων, η θέση του ροµπότ γίνεται όλο και πιο αβέβαιη καθώς αυτό κινείται. Ο υπολογισµός της θέσης των χαρακτηριστικών αναπαριστάται µε τις µη σκιασµένες κόκκινες ελλείψεις. Όπως φαίνεται ξεκάθαρα, καθώς η θέση του ροµπότ γίνεται όλο και πιο αβέβαιη, η αβεβαιότητα στις εκτιµήσεις των εκ νέου παρατηρούµενων χαρακτηριστικών αυξάνεται επίσης. Αφού το ροµπότ ολοκληρώσει έναν κλειστό βρόχο (Σχήµα 4.7), παρατηρεί ξανά ένα ήδη γνωστό του χαρακτηριστικό. Καθώς η θέση του πρώτου χαρακτηριστικού είναι γνωστή µε µεγάλη ακρίβεια, η αβεβαιότητα στην εκτιµώµενη θέση του ροµπότ θα µειωθεί σηµαντικά. Αυτές οι πληροφορίες για τη θέση του ροµπότ αυξάνουν επίσης την βεβαιότητα µε την οποία έχουν υπολογιστεί οι προηγούµενες θέσεις του ροµπότ. Αυτό µε τη σειρά του, µειώνει την αβεβαιότητα των προηγούµενων παρατηρήσεων των χαρακτηριστικών λόγω της φύσης του προβλήµατος SLAM, που συσχετίζει τα σφάλµατα στο χάρτη µέσω των σφαλµάτων στο µονοπάτι του ροµπότ. Σχήµα 4.7: Συσχέτιση σφάλµατος θέσης ροµπότ και χάρτη αφού κλείσει ο βρόχος [35] Οι πιο δηµοφιλείς λύσεις για το SLAM προσπαθούν να υπολογίσουν τη µεταγενέστερη κατανοµή πιθανότητας (posterior probability distribution) για όλους τους Θ πιθανούς χάρτες και θέσεις x t του ροµπότ, γνωρίζοντας την οµάδα ελέγχων u t και τις παρατηρήσεις z t τη συγκεκριµένη χρονική στιγµή t. Με αυτούς τους συµβολισµούς, η συνενωµένη κατανοµή της επόµενης κατάστασης (joint posterior distribution) µπορεί να εκφραστεί ως: (4.3) Αυτή η κατανοµή επιτρέπει την επίλυση του προβλήµατος του SLAM, καθώς λειτουργεί ως φίλτρο πραγµατικού χρόνου. Στην πιθανολογική διατύπωση του SLAM, ο χάρτης Θ αποτελείται από τα χαρακτηριστικά θ i για i=1,,ν, όπου Ν είναι ο αριθµός των χαρακτηριστικών του χάρτη. Η θέση του ροµπότ x t αποτελείται από την 48

49 τοποθεσία του ροµπότ (συντεταγµένες x y) και το γωνιακό προσανατολισµό του θ. Η συνολική τροχιά του ροµπότ, αποτελούµενη από τη θέση του σε κάθε χρονική στιγµή t συµβολίζεται x t. Αν υπολογίσουµε την επόµενη κατάσταση του ροµπότ µε δεδοµένο το χάρτη και το µονοπάτι του έχουµε: (4.4) Το ροµπότ αντιλαµβάνεται το περιβάλλον του µε αισθητήρες που παίρνουν µετρήσεις. Μια µέτρηση τη χρονική στιγµή t συµβολίζεται ως z t. Έστω ότι σε κάθε t γίνεται η παρατήρηση ενός χαρακτηριστικού θ t του χάρτη, που η συσχέτισή του αναγνωρίζεται ως n t. Το µοντέλο µέτρησης µπορεί να εκφραστεί ως: (4.5) Το µοντέλο αυτό ελέγχεται από µια ντετερµινιστική συνάρτηση g µε προστιθέµενο λευκό Γκαουσιανό θόρυβο (white Gaussian noise) ε t µε µέση τιµή (mean) µηδέν και συνδιακύµανση (covariance) R t [24][35]. Μια δεύτερη πηγή πληροφοριών για την επίλυση του προβλήµατος SLAM είναι οι έλεγχοι u t που δέχεται το ροµπότ στο διάστηµα [t-1,t). Η εξέλιξη της θέσης του ροµπότ εξαρτάται από το µοντέλο κίνησής του. (4.6) Η θέση x t τη χρονική στιγµή t δίνεται από µια ντετερµινιστική συνάρτηση h που εξαρτάται από την προηγούµενη θέση x t-1 και τις εντολές ελέγχου u t, µε προστιθέµενο λευκό Γκαουσιανό θόρυβο (white Gaussian noise) δ t µε µέση τιµή (mean) µηδέν και συνδιακύµανση (covariance) P t. Αν οι συναρτήσεις g και h είναι γραµµικές, αυτή η προσέγγιση είναι ισοδύναµη µε ένα Kalman φίλτρο. Αλλιώς, απαιτείται η χρήση Extended Kalman φίλτρου το οποίο προσεγγίζει τις g και h µέσω Taylor. 4.5 FastSLAM Σε αυτήν την ενότητα περιγράφεται ο βασικός αλγόριθµος FastSLAM που έχει υλοποιηθεί. Όπως έχει αναφερθεί στην ενότητα 4.2, είναι µια εναλλακτική προσέγγιση του SLAM βασισµένη σε particle φίλτρα. Εφαρµόζεται µια εκδοχή του particle φίλτρου για SLAM γνωστό ως Rao- Blackwellized Particle filter, το οποίο χρησιµοποιεί particles για την αναπαράσταση της µετέπειτα κατάστασης κάποιων µεταβλητών και ταυτόχρονα, Γκαουσιανά φίλτρα για την αναπαράσταση όλων των υπόλοιπων µεταβλητών [13]. Ειδικότερα, το FastSLAM χρησιµοποιεί particle φίλτρα για την εκτίµηση του µονοπατιού του ροµπότ. Για κάθε ένα από αυτά τα particles ο ατοµικός χάρτης των χαρακτηριστικών είναι υπό συνθήκες ανεξάρτητος. Έτσι, το πρόβληµα χαρτογράφησης µπορεί να αναλυθεί σε πολλά ξεχωριστά προβλήµατα, ένα για κάθε χαρακτηριστικό, οι τοποθεσίες των οποίων εκτιµώνται από χαµηλών διαστάσεων EKF φίλτρα στο FastSLAM. Ο βασικός αλγόριθµος µπορεί να υλοποιηθεί µε λογαριθµική πολυπλοκότητα O(logN) µε Ν τον αριθµό των χαρακτηριστικών. Υπάρχουν δυο εκδοχές του FastSLAM. Ο FastSLAM 1.0 είναι η πρώτη εκδοχή και ο 49

50 FastSLAM 2.0 είναι µια βελτίωσή του που προσπαθεί να λύσει τους περιορισµούς του προηγούµενου. Συνοπτικά, ενσωµατώνει την τρέχουσα παρατήρηση z t στην προτεινόµενη κατανοµή για να µπορέσει να αντιστοιχήσει καλύτερα την επόµενη κατάσταση. Στην παρούσα διπλωµατική υλοποιείται ο FastSLAM 1.0. Η χρήση των particle φίλτρων δηµιουργεί µια ασυνήθιστη κατάσταση, όπου το FastSLAM επιλύει τόσο το full SLAM πρόβληµα όσο και το online SLAM πρόβληµα. Όπως και θα αναλυθεί, το FastSLAM διατυπώνεται έτσι ώστε να υπολογίζει ολόκληρο το µονοπάτι που θα ακολουθήσει το ροµπότ, καθώς µόνο στο µονοπάτι σαν σύνολο µπορούν να αποδοθούν ανεξάρτητες τοποθεσίες χαρακτηριστικών. Ωστόσο, καθώς τα particle φίλτρα υπολογίζουν µια θέση κάθε φορά, ο FastSLAM καθίσταται online αλγόριθµος, λύνοντας έτσι και το online πρόβληµα. Ανάµεσα σε όλους τους SLAM αλγόριθµους που συζητήθηκαν, ο FastSLAM είναι ο µόνος που ταιριάζει και στις δυο κατηγορίες προβληµάτων [13]. Επιπρόσθετα, τα particle φίλτρα µπορούν να αντιµετωπίσουν επιτυχώς µη-γραµµικά µοντέλα κίνησης του ροµπότ, ενώ άλλες τεχνικές SLAM προσεγγίζουν τέτοια µοντέλα µέσω γραµµικών συναρτήσεων. Αυτό είναι σηµαντικό όταν το κινηµατικό µοντέλο είναι αρκετά µη-γραµµικό ή όταν η αβεβαιότητα στη θέση του ροµπότ είναι σχετικά υψηλή The Basic algorithm Στο βασικό FastSLAM αλγόριθµο κάθε particle (Σχήµα 4.8) περιέχει [k] µια υπολογισµένη θέση του ροµπότ x t και µια οµάδα Extended Kalman [k] φίλτρων µε µέση τιµή µ j,t και συνδιακύµανση Σ [k] j,t, µια οµάδα για κάθε χαρακτηριστικό θ j στο χάρτη Θ. Εδώ µε [k] συµβολίζεται ο δείκτης του κάθε particle. Ο συνολικός αριθµός των particles είναι Μ. Τα κύρια βήµατα του αλγορίθµου που επαναλαµβάνονται Μ φορές είναι: [k] Ανάκτηση (Retrieval): Ανακτάται η θέση του ροµπότ x t-1 οµάδα των particles Y t-1. από την Πρόβλεψη (Prediction): Υπολογίζεται η νέα θέση του ροµπότ x t [k] ~p(x t x t-1 [k], u t ). Ενηµέρωση της µέτρησης (measurement update): Για κάθε i παρατηρούµενο χαρακτηριστικό z t αναγνωρίζεται η αντιστοιχία c j µε ένα χαρακτηριστικό θ j του χάρτη και ενσωµατώνεται η παρατήρηση στο [k] EKF µε την ενηµέρωση της µέσης τιµής (mean) µ j,t και συνδιακύµανσης (covariance) Σ [k] j,t, Βάρος (Importance Weight): Υπολογίζεται το βάρος w [k] για το νέο particle Έπειτα γίνεται resampling στην προσωρινή οµάδα των particles που έχει αποκτηθεί. Αρχικά, γίνεται ανάκτηση ενός particle και δειγµατοληπτείται µια θέση του ροµπότ χρησιµοποιώντας το πιθανοκρατικό µοντέλο κίνησης. Έπειτα, ενηµερώνονται τα EKF για τα παρατηρούµενα χαρακτηριστικά. Τα τελικά βήµατα ασχολούνται µε τον υπολογισµό των βαρών κάθε particle, που χρησιµοποιούνται µετά για να γίνει το βήµα του resampling. 50

51 Σχήµα 4.8: Particles στο FastSLAM [35] Factored Posterior Representation Η πλειοψηφία των προσεγγίσεων του SLAM βασίζονται στην εκτίµηση της µεταγενέστερης κατάστασης σε χάρτες Θ και θέσεις ροµπότ x t : (4.7) Αντιθέτως, το FastSLAM υπολογίζει την επόµενη κατάσταση µε χάρτες Θ και µονοπάτια του ροµπότ x t : (4.8) Αυτή η µικρή διαφορά επιτρέπει την χρήση πιο απλών όρων για την επίλυση του προβλήµατος: (4.9) Αυτή η παραγοντοποίηση, που αναπτύχθηκε πρώτα από τον Murphy, υποστηρίζει ότι το πρόβληµα του SLAM µπορεί να διαχωριστεί σε ένα γινόµενο της επόµενης θέσης του ροµπότ p(x t z t,u t,c t ) και Ν επόµενων θέσεων χαρακτηριστικών p(θ n x t,z t,u t,c t ), µε δεδοµένο το µονοπάτι του ροµπότ. Είναι σηµαντικό να σηµειωθεί ότι η παραγοντοποίηση είναι ακριβής, καθώς ακολουθεί κατά βήµα τη δοµή του προβλήµατος του SLAM [24]. 51

52 Σχήµα 4.9: SLAM Bayes Network που χαρακτηρίζει την εξέλιξη των θέσεων, των ελέγχων, των µετρήσεων και των συσχετισµένων χαρακτηριστικών [14] Η ορθότητα της παραγοντοποίησης αυτής απεικονίζεται παραπάνω (Σχήµα 4.9). Όπως φαίνεται από το γράφηµα, κάθε µέτρηση z 1,.,z n είναι συνάρτηση της θέσης του αντίστοιχου χαρακτηριστικού θ i, µαζί µε τη θέση του ροµπότ x t, τη χρονική στιγµή t και τη µέτρηση z t που έχει αποκτηθεί. Η γνώση του µονοπατιού του ροµπότ διαχωρίζει τα ξεχωριστά προβλήµατα υπολογισµού των χαρακτηριστικών και τα καθιστά ανεξάρτητα το ένα από το άλλο. Αυτό σηµαίνει ότι δεν υπάρχει άµεσο µονοπάτι σε αυτήν τη γραφική απεικόνιση από το ένα χαρακτηριστικό στο άλλο που να µην συµπεριλαµβάνει µεταβλητές του µονοπατιού του ροµπότ. Εποµένως, η ακριβής θέσης κάθε χαρακτηριστικού θ i δεν µπορεί να περιέχει πληροφορίες για τη θέση όλων των άλλων χαρακτηριστικών θ j i, αν το µονοπάτι του ροµπότ είναι γνωστό. Αυτό υπονοεί ότι τα χαρακτηριστικά είναι ανεξάρτητα υπό συνθήκη µε δεδοµένο το µονοπάτι του ροµπότ FastSLAM with Known Data Association Αρχικά, οι αντιστοιχίες c t θεωρούνται γνωστές, όπως και ο αριθµός των χαρακτηριστικών Ν που έχει παρατηρηθεί. Αυτή η υπόθεση δηλώνει ότι η µοναδική αντιστοιχία ανάµεσα στη µέτρηση z t και το χαρακτηριστικό θ t είναι διαθέσιµη. Άρα το πρόβληµα του data association θεωρείται λυµένο, υπόθεση που σπάνια ισχύει στην πραγµατικότητα αλλά βοηθάει στην καλύτερη επεξήγηση του FastSLAM αλγόριθµου. Ο FastSLAM υπολογίζει το µονοπάτι του ροµπότ χρησιµοποιώντας ένα particle φίλτρο. Οι τοποθεσίες των χαρακτηριστικών εκτιµώνται µε τη χρήση EK φίλτρων. Έτσι, εκµεταλλεύεται την παραγοντοποιηµένη µορφή της Εξίσωσης 4.9 διατηρώντας (ΜΝ+1) φίλτρα. Ακόµα, µπορεί να διαχειρίζεται µη-γραµµικά µοντέλα κίνησης. Κάθε ανεξάρτητο EKF είναι συνδεδεµένο µε 52

53 ένα µονοπάτι του ροµπότ και κάθε particle έχει τη δική του οµάδα αποτελούµενη από Ν EK φίλτρα. Συνολικά υπάρχουν Ν*Μ ΕΚ φίλτρα, ένα για κάθε χαρακτηριστικό του χάρτη (από τα Ν συνολικά) και ένα για κάθε particle (από τα Μ συνολικά) του particle φίλτρου. Τα particles στο FastSLAM συµβολίζονται: (4.10) όπου [k] είναι ο δείκτης του κάθε particle, x [k] t είναι η εκτίµηση της θέσης του ροµπότ και µ [k] [k] j,t, Σ j,t είναι η µέση τιµή και η συνδιακύµανση του Gaussian για το j χαρακτηριστικό του χάρτη. Όλες µαζί αυτές οι ποσότητες σχηµατίζουν το k particle Y [k] t. Ο υπολογισµός της επόµενης κατάστασης (posterior) τη χρονική στιγµή t από τη χρονική στιγµή t-1 συµπεριλαµβάνει τη δηµιουργία ενός νέου particle Y t από το Y t-1. Η νέα οµάδα particle ενσωµατώνει τον τελευταίο έλεγχο u t και παρατήρηση z t µαζί µε την αντιστοίχηση δεδοµένων c t. Αυτή η ενηµέρωση πραγµατοποιείται µε τα ακόλουθα βήµατα: 1. Extending the path posterior by sampling new poses. Το FastSLAM δειγµατοληπτεί τη θέση του ροµπότ σύµφωνα µε το k particle ανάλογα µε το µοντέλο κίνησης: (4.11) [k] Εδώ, x t είναι η µεταγενέστερη εκτίµηση της θέσης του ροµπότ τη χρονική στιγµή t-1, για το k particle. Αυτή η διαδικασία εφαρµόζεται σε όλα τα particles για να αποκτηθεί η προσωρινή οµάδα των particles. Αυτό το βήµα απεικονίζεται γραφικά στο Σχήµα 4.10 όπου φαίνεται η οµάδα των particles. Σχήµα 4.10: είγµατα θέσεων ροµπότ µε βάση το πιθανολογικό µοντέλο κίνησης [35] 2. Updating the observed landmark estimate. Έπειτα, το FastSLAM ενηµερώνει τις εκτιµήσεις των χαρακτηριστικών στην επόµενη κατάσταση, που αναπαριστώνται µε τη µέση τιµή και τη συνδιακύµανση. Οι ανανεωµένες τιµές προστίθενται στην προσωρινή οµάδα των particles µαζί µε τη νέα θέση του ροµπότ. 53

54 Η ακριβής εξίσωση για το update εξαρτάται από το αν ένα χαρακτηριστικό θ j παρατηρήθηκε τη χρονική στιγµή t. Αν δεν έχει παρατηρηθεί παραµένει αµετάβλητο. Για τα χαρακτηριστικά που παρατηρήθηκαν η ενηµέρωση καθορίζεται µε τη χρήση του κανόνα του Bayes: (4.12) Αν η παρατήρηση δεν αντιστοιχεί σε κανένα χαρακτηριστικό του χάρτη, ενσωµατώνεται σε αυτόν. Το FastSLAM υλοποιεί την εξίσωση 4.12 µε τη χρήση ενός EKF. Αυτό το φίλτρο χρησιµοποιεί µια γραµµική Gaussian προσέγγιση για το µοντέλο παρατήρησης. Η συνάρτηση h προσεγγίζεται µε την επέκταση του Taylor. Οι νέες τιµές της µέσης τιµής και της συνδιακύµανσης αποκτώνται µε τη χρήση των τύπων του EKF: (4.13) (4.14) (4.15) (4.16) Τα βήµατα 1 και 2 επαναλαµβάνονται Μ φορές, και έτσι προκύπτει η προσωρινή οµάδα των Μ particles. 3. Resampling. Στο τελικό βήµα, το FastSLAM κάνει resample στην οµάδα των particles. Εξάγονται από την προσωρινή οµάδα Μ particles που αντικαθιστούν την προηγούµενη οµάδα, σύµφωνα µε το βάρος τους. Η οµάδα των Μ particles που προκύπτει από αυτήν τη διαδικασία είναι και το τελικό Υ t. Η ανάγκη για resampling προκύπτει από το γεγονός ότι τα particles στην προσωρινή οµάδα δεν είναι κατανεµηµένα σύµφωνα µε την επιθυµητή επόµενη κατάσταση. Αυτό συµβαίνει γιατί το βήµα 1 παράγει θέσεις ροµπότ x t µόνο σε συµφωνία µε τον πιο πρόσφατο έλεγχο u t, χωρίς να αξιοποιείται η παρατήρηση z t. Η διαδικασία του resampling είναι µια κοινή τεχνική για την αποφυγή εκφυλισµού του φίλτρου [52]. Ένα παράδειγµα του sampling φαίνεται παρακάτω (Σχήµα 4.11). Αντί να γίνει δειγµατοληψία απευθείας από την επιθυµητή κατανοµή (target distribution φαίνεται µε τη συνεχόµενη γραµµή) τα δείγµατα εξάγονται από µια απλούστερη προτεινόµενη Gaussian κατανοµή (proposal distribution φαίνεται µε τη διακεκοµµένη γραµµή). Σε περιοχές που η επιθυµητή είναι µεγαλύτερη από την προτεινόµενη, τα δείγµατα παίρνουν µεγαλύτερα βάρη. Σαν αποτέλεσµα, τα δείγµατα σε αυτή τη περιοχή επιλέγονται συχνότερα. Στην αντίθετη περίπτωση, τα βάρη είναι µικρότερα. 54

55 Σχήµα 4.11: Επιλογή δειγµάτων από τη προτεινόµενη κατανοµή (που έχει πιο απλή µορφή). Κάτω, τα δείγµατα εξάγονται µε µέγεθος ανάλογο του βάρους τους [35] Βρίσκοντας τα βάρη για τα particles και κάνοντας resampling σύµφωνα µε αυτά τα βάρη, η οµάδα των particles που προκύπτει προσεγγίζει την επιθυµητή κατανοµή (target). Για τον καθορισµό του συντελεστή βάρους (importance factor), υπολογίζεται η πραγµατική προτεινόµενη κατανοµή (proposal) του µονοπατιού στην προσωρινή οµάδα των particles. Η επιθυµητή κατανοµή λαµβάνει υπόψιν τις µετρήσεις z t µαζί µε τις αντιστοιχίες c t : (4.17) Η διαδικασία του resampling ερµηνεύει τη διαφορά της επιθυµητής και προτεινόµενης κατανοµής. Ο συντελεστής βάρους για το resampling δίνεται από το πηλίκο της επιθυµητής και της προτεινόµενης κατανοµής: (4.18) Ο τελευταίος µετασχηµατισµός είναι άµεση συνέπεια του ακόλουθου µετασχηµατισµού του αριθµητή: ( (4.19) 55

56 Ο εκτιµητής χαρακτηριστικών είναι ένα EKF και έτσι η πιθανότητα παρατήρησης µπορεί να υπολογιστεί σε κλειστή µορφή. Η πιθανότητα της παρατήρησης z t είναι ίση µε την πιθανότητα του z t - ẑ t που παράγεται από µια Gaussian µε µηδενικό mean και covariance Q ct,t που µπορεί να γραφτεί ως: (4.20) Αυτά τα τρία βήµατα µαζί αποτελούν τον κανόνα update του FastSLAM 1.0 για το πρόβληµα του SLAM µε known data association. Ο χρόνος εκτέλεσης δεν εξαρτάται από το συνολικό µονοπάτι t. Συγκεκριµένα, µόνο η [k] πιο πρόσφατη θέση x t-1 χρησιµοποιείται στη διαδικασία δηµιουργίας ενός νέου particle τη χρονική στιγµή t. Το συµπέρασµα είναι ότι οι προηγούµενες θέσεις µπορούν να απορριφθούν µε ασφάλεια. Κατά συνέπεια, ούτε οι απαιτήσεις σε χρόνο αλλά ούτε και σε µνήµη εξαρτώνται από το t Unknown Data Association Σε αυτήν την ενότητα ο FastSLAM επεκτείνεται και σε περιπτώσεις που οι αντιστοιχίες c t είναι άγνωστες. Ένα κύριο πλεονέκτηµα της χρήσης particle φίλτρων είναι ότι κάθε particle µπορεί να βασίζεται στις δικές του, τοπικές αποφάσεις συσχέτισης δεδοµένων. Έχουν περιγραφεί προηγουµένως κάποιες τεχνικές συσχέτισης δεδοµένων χρησιµοποιώντας τρόπους, όπως µέγιστης πιθανότητας (maximum likelihood). Οι περισσότερες από αυτές τις τεχνικές παρέχουν µια συσχέτιση ανά µέτρηση για ολόκληρο το φίλτρο [24]. Το FastSLAM µπορεί να υπολογίσει τις αντιστοιχίες για κάθε particle, χρησιµοποιώντας την τεχνική Maximum Likelihood που έχει αναλυθεί [k] προηγουµένως. Κάθε συσχέτιση ĉ t αποφασίζεται µεγιστοποιώντας την πιθανότητα της µέτρησης z t : (4.21) Η χρήση ML διευκολύνει τον υπολογισµό του αριθµού των χαρακτηριστικών του χάρτη. ηµιουργεί νέα χαρακτηριστικά αν η πιθανότητα είναι κάτω από ένα κατώφλι p 0 για όλα τα γνωστά χαρακτηριστικά του χάρτη. Η πιθανότητα υπολογίζεται ως εξής: (4.22) 56

57 Η γραµµική µορφοποίηση της συνάρτησης h του µοντέλου µέτρησης επιτρέπει το µετασχηµατισµό στον παρακάτω τύπο: (4.23) όπου ẑ j = h(µ [k] ct,t-1, x [k] [k] t ) είναι η εκτιµώµενη µέτρηση και Q ct,t του data association c t. η συνάρτηση FastSLAM algorithm Ο αλγόριθµος FastSLAM 1.0 µε άγνωστες συσχετίσεις δεδοµένων (unknown data association) συνοψίζεται στα Σχήµατα 4.12 και Τα particles είναι της µορφής: (4.24) Επιπρόσθετα, από τη θέση x t [k] και τις εκτιµήσεις µ j,t [k] και Σ j,t [k] για j=1,..,n t [k], κάθε particle περιέχει τον αριθµό των χαρακτηριστικών N t [k] στον τοπικό χάρτη και κάθε χαρακτηριστικό έχει µια πιθανολογική εκτίµηση της ύπαρξής του i j,t [k] (µετρητής ο οποίος καταγράφει πόσες φορές έχει εµφανιστεί κάθε χαρακτηριστικό). Η επανάληψη του φίλτρου απαιτεί γραµµική πολυπλοκότητα Ο(Ν) µε το µέγιστο αριθµό χαρακτηριστικών Ν σε κάθε χάρτη, και επίσης Ο(Μ) µε τον αριθµό Μ των particles. Συνολικά, ο FastSLAM εκτελείται µε πολυπλοκότητα Ο(ΜΝ). Ο αλγόριθµος που περιγράφεται θεωρεί ότι λαµβάνεται µια µέτρηση κάθε φορά. Αυτή η επιλογή γίνεται για σηµειογραφικούς λόγους. Οι πολλαπλές µετρήσεις µπορούν να ενσωµατωθούν µε την επεξεργασία κάθε παρατήρησης ακολουθιακά. 57

58 . Σχήµα 4.12: Αλγόριθµος FastSLAM

59 Σχήµα 4.13: Αλγόριθµος FastSLAM 1.0 (συνέχεια) 4.6 Υλοποίηση FastSLAM 1.0 µε ευθείες ως landmarks Στην ενότητα αυτή περιγράφεται η υλοποίηση του αλγορίθµου FastSLAM στα πλαίσια της διπλωµατικής αυτής εργασίας και αναλύονται οι τύποι και οι παραδοχές που χρησιµοποιήθηκαν για την εξαγωγή των αποτελεσµάτων. Ο FastSLAM 1.0 που παρουσιάστηκε παραπάνω εφαρµόζεται για ποικίλους τύπους χαρακτηριστικών. Στη συγκεκριµένη υλοποίηση ως χαρακτηριστικά θεωρούνται ευθείες, η εξαγωγή των οποίων θα αναλυθεί σε επόµενο κεφάλαιο και γίνεται µε τη χρήση αισθητήρα laser του ροµπότ και µέσω του αλγορίθµου RANSAC. 59

60 Οι παράµετροι που χρησιµοποιούνται για να εκφραστεί µια ευθεία είναι οι συντελεστές α και β της εξίσωσης της ευθείας αx+βy+1=0. Για τη χρήση αυτής της εξίσωσης θεωρήθηκε ως παραδοχή ότι οι ευθείες δεν περνάνε από την αρχή των αξόνων. Έτσι, από την κλασσική εξίσωση της ευθείας ax+by+c=0 µε διαίρεση µε το c 0 παράγεται η εξίσωση αx+βy+1=0 ( µε α=a/c και β=b/c). Laser d i θ i α j β j fast SLAM α w β w Σχήµα 4.14: Σχηµατική αναπαράσταση εισόδων εξόδων στο FastSLAM Με τη χρήση αυτών των παραµέτρων η συνάρτηση h που χρησιµοποιείται στο βήµα 5 του αλγορίθµου (Σχήµα 4.12) για την πρόβλεψη της µέτρησης ορίζεται ως η µετατροπή των παραµέτρων των ευθειών που υπάρχουν ήδη στο χάρτη από το world σύστηµα συντεταγµένων στο σύστηµα συντεταγµένων του ροµπότ. Θεωρώντας ότι η θέση του ροµπότ x t συµβολίζεται ως (x r, y r, θ) η µορφή της εξίσωσης είναι η ακόλουθη: h = α β R R = αw cosθ + β W sinθ 1+ α + W x r β W yr αw sinθ + β W cosθ 1+ αw x r + β W yr (4.25) Στο επόµενο βήµα του αλγορίθµου (βήµα 6) υπολογίζεται η Ιακωβιανή (Jacobian) συνάρτηση Η j από τη συνάρτηση h µε την παρακάτω παραγώγιση: H θα θα = θα θβ R W R W θβ θα θβ θβ R W R W = cosθ (1 + β (1 + α sinθ (1 + α (1 + α W W W yr ) x rβw sinθ 2 x r + β W yr ) x r ) yrαw cosθ 2 x + β y ) W r W r sinθ (1 + β W yr ) x rβw cosθ 2 (1 + αw x r + β W yr ) cosθ (1 + α Wx r ) + yrαw sinθ 2 (1 + α x + β y ) W r W r (4.26) 60

61 Όταν παρατηρηθεί κάποιο χαρακτηριστικό (εδώ ευθεία) που δεν έχει παρατηρηθεί προηγουµένως από το ροµπότ προστίθεται στο χάρτη. Για την αρχικοποίηση του mean της ευθείας (βήµα 16) χρησιµοποιείται η αντίστροφη της συνάρτησης h (Εξίσωση 4.25), δηλαδή η µετατροπή των παραµέτρων των ευθειών από το σύστηµα συντεταγµένων του ροµπότ στο world σύστηµα συντεταγµένων. Η εξίσωση έχει την παρακάτω µορφή: h 1 α = β W W 1 α = 1 α R R ( x r ( x r cosθ cosθ α R cosθ β R sinθ + yr sinθ ) + β R ( xrsinθ α Rsinθ + β R cosθ + y sinθ ) + β ( x sinθ r R r y y r r cosθ ) cosθ ) (4.27) Για την αρχικοποίηση του covariance (βήµα 18) χρησιµοποιείται και πάλι η συνάρτηση Η j (Εξίσωση 4.26). Μια τελευταία διαφοροποίηση της υλοποίησης αυτής έγκειται στον υπολογισµό των βαρών (βήµα 8 likelihood correspondence) για να γίνει η συσχέτιση µε τις ήδη υπάρχουσες στο χάρτη ευθείες, ώστε να αποφασιστεί αν είναι καινούρια η ευθεία ή αν έχει παρατηρηθεί στο παρελθόν. Στη συγκεκριµένη υλοποίηση ο πίνακας Σ είναι 2 ου βαθµού και έτσι ο τύπος υπολογισµού του βάρους δίνεται από την εξίσωση: w j = 1 1 Q 2 T ˆ ) Q 1 j t z j j 2π 1 exp ( z 2 ( z t zˆ j ) (4.28) Με αυτές τις τροποποιήσεις υλοποιήθηκε ο αλγόριθµος FastSLAM 1.0. Οι εξισώσεις είναι αποτέλεσµα απλών τύπων για στροφή και µετακίνηση διανυσµάτων ως προς τη σχετική θέση του ροµπότ µετά από δοσµένους ελέγχους για την κίνηση του. Στα επόµενα κεφάλαια αναφέρονται συµπεράσµατα και προβλήµατα της υλοποίησης. 4.7 Απεικόνιση του χάρτη Μετά την εφαρµογή του FastSLAM στις ευθείες που έχουν εξαχθεί, ο χάρτης που έχει δηµιουργηθεί περιέχει έναν αριθµό ευθειών εκφρασµένες µε τις παραµέτρους του α και β. Οι ευθείες αυτές όµως έχουν άπειρο µήκος, οπότε για την ορθότερη εµφάνιση του χάρτη πρέπει να απεικονισθούν τα τµήµατα από τα οποία αυτές αποτελούνται. Για αυτήν την απεικόνιση χρησιµοποιούνται τα άκρα των ευθύγραµµων τµηµάτων έτσι όπως προκύπτουν από τον αλγόριθµο RANSAC (αναλύεται στο κεφάλαιο 5). Αρχικά, τα άκρα µετασχηµατίζονται από τις συντεταγµένες του ροµπότ (x R,y R ) σε world συντεταγµένες (x w,y w ) µε τις γνωστές σχέσεις στροφής διανυσµάτων (η θέση του ροµπότ x t συµβολίζεται µε x r, y r, θ). x = x θ+ w R cos θ yr sin xr (4.29) 61

62 y = x θ+ w R sin θ+ yr cos yr (4.30) Έπειτα, οι συντεταγµένες αυτές από δισδιάστατες (x,y) µετατρέπονται σε µιας διάστασης ως προς ένα σηµείο αναφοράς, ώστε να µπορέσουν να συγκριθούν τα τµήµατα της ίδιας ευθείας και να δηµιουργηθεί ένα διάνυσµα που περιέχει ταξινοµηµένα τα τµήµατα αυτά. Παρακάτω περιγράφεται η διαδικασία που ακολουθείται. Αρχικά, υπολογίζεται η γωνία της ευθείας χρησιµοποιώντας τις α, β παραµέτρους της (σε περίπτωση που η ευθεία έχει συσχετιστεί µε κάποια προηγούµενη, χρησιµοποιούνται οι παράµετροι µετά την ανανέωση τους). th α β = 1 w tan (4.31) w Στη συνέχεια, ανάλογα µε το αποτέλεσµα η ευθεία κατατάσσεται σε µια από τις δυο κατηγορίες: σχεδόν κάθετη (αν η γωνία είναι µεγαλύτερη από 45 µοίρες) ή σχεδόν οριζόντια (αν η γωνία είναι µικρότερη από 45 µοίρες). Αν η ευθεία θεωρηθεί οριζόντια, το ευθύγραµµο µονοδιάστατο τµήµα της [d1 d2] υπολογίζεται ως εξής: th 45 o d 2 d 1 x 1 =x 0 x 2 Σχήµα 4.15: ηµιουργία διαστήµατος για σχεδόν οριζόντια ευθεία d 1 x1 x0 cos( th) = (4.32) 62

63 d 2 x2 x0 cos( th) = (4.33) Όπου x 1, x 2 είναι τα άκρα σε world συντεταγµένες, όπως έχουν υπολογιστεί από τα άκρα που παρατήρησε το ροµπότ και όπου x 0 ορίζω ότι είναι ίσο µε x 1. Στην περίπτωση που η ευθεία θεωρηθεί κάθετη το ευθύγραµµο τµήµα υπολογίζεται µε τις αντίστοιχες εξισώσεις: y 1 =y 0 d 1 th y 2 d 2 45 o Σχήµα 4.16: ηµιουργία διαστήµατος για σχεδόν κάθετη ευθεία d d 1 2 y y 1 0 = (4.34) sin( th) y2 y0 sin( th) = (4.35) Όπου y 1, y 2 είναι τα άκρα σε world συντεταγµένες, όπως έχουν υπολογιστεί από τα άκρα που παρατήρησε το ροµπότ και όπου y 0 ορίζω ότι είναι ίσο µε y 1. Τέλος, σε κάθε περίπτωση ελέγχω ότι d 1 <d 2 ώστε τα τµήµατα να είναι πάντα µε τη µικρότερη τιµή στο αριστερό άκρο. Κάθε φορά που το ροµπότ παρατηρεί µια νέα ευθεία, αυτή προστίθεται στο χάρτη και µαζί της αποθηκεύεται το ευθύγραµµο τµήµα της (εκφρασµένο ως ένα διάστηµα [d1 d2]) που παρατηρήθηκε τη συγκεκριµένη χρονική στιγµή. Καθώς το ροµπότ συνεχίζει να κινείται µπορεί να δει την ίδια ευθεία, αλλά µε µετατοπισµένο ή στραµµένο ευθύγραµµο τµήµα. Αφού γίνει η συσχέτιση των δυο ευθειών (µέσω data association) και δηµιουργηθεί το νέο ευθύγραµµο 63

64 τµήµα εκφρασµένο ως ένα νέο διάστηµα [d3 d4], αυτό ελέγχεται µε το ήδη υπάρχον και ταξινοµείται ανάλογα µε τα άκρα του. Στην παρούσα υλοποίηση, κάθε ευθεία µπορεί να αποτελείται έως και από τέσσερα διαφορετικά ευθύγραµµα τµήµατα. Με αυτόν τον τρόπο γίνεται η απεικόνιση των ευθειών που απαρτίζουν το χάρτη του χώρου. 64

65 ΚΕΦΑΛΑΙΟ 5. Εξαγωγή χαρακτηριστικών 5.1 Εισαγωγή Η διαδικασία εξαγωγής χαρακτηριστικών γνωρισµάτων (landmarks) αποτελεί αναπόσπαστο κοµµάτι της φάσης προ-επεξεργασίας πολλών αλγορίθµων εκτίµησης θέσης και κατάρτισης χάρτη (SLAM). Στον τοµέα της ροµποτικής, χαρακτηριστικό του περιβάλλοντος µέσα στο οποίο κινείται το ροµπότ, µπορεί να θεωρηθεί οποιοδήποτε ευδιάκριτο και σαφές αντικείµενο που το ροµπότ µπορεί να αναγνωρίσει σαν είσοδο από τους αισθητήρες του [53]. Ως χαρακτηριστικά µπορούν να θεωρηθούν πολλά γεωµετρικά σχήµατα, όπως σηµεία, ευθείες, τρίγωνα, κύκλοι και άλλα, και υπάρχει περίπτωση να συµπεριλαµβάνουν επιπρόσθετες πληροφορίες (π.χ. µε µορφή bar-code). Γενικά, έχουν µια καθορισµένη και γνωστή θέση, σε σχέση µε την οποία το ροµπότ µπορεί να αντιληφθεί το περιβάλλον γύρω του και να προσδιορίσει τη σχετική του θέση σε αυτό. Τα χαρακτηριστικά πρέπει να επιλέγονται µε µεγάλη προσοχή ώστε να είναι εύκολα αναγνωρίσιµα, για παράδειγµα πρέπει να υπάρχει επαρκής αντίθεση µε το φόντο που υπάρχει στο βάθος. Στο φυσικό περιβάλλον αυτό µπορεί να είναι δύσκολο καθώς οι συνθήκες µεταβάλλονται δυναµικά, ο φωτισµός δεν είναι βέλτιστος και το ένα αντικείµενο µπορεί να αποκρύπτει το άλλο [54]. Εποµένως, µια διαδικασία εξαγωγής χαρακτηριστικών πρέπει να είναι ανεξάρτητη από τις συνθήκες φωτισµού, την πιθανή µετακίνηση του αντικειµένου και την κλιµάκωση του σχήµατός του. Μπορούµε να έχουµε δύο είδη χαρακτηριστικών: τεχνητά και φυσικά. Τα φυσικά χαρακτηριστικά λειτουργούν καλύτερα σε δοµηµένα περιβάλλοντα όπως διάδροµοι, πατώµατα, δωµάτια κτιρίων και ορίζονται ως τα αντικείµενα εκείνα ή χαρακτηριστικά που υπάρχουν στο περιβάλλον και έχουν χρησιµότητα πέραν της εξερεύνησης των ροµπότ. Ως τεχνητά χαρακτηριστικά ορίζονται τα αντικείµενα εκείνα που είναι ειδικά σχεδιασµένα και εισάγονται στο περιβάλλον µε σκοπό να συµβάλλουν στη διαδικασία καθοδήγησης των ροµπότ. Ειδικότερα, ο Fuiki (1981) [55] χρησιµοποίησε χαρακτηριστικά µε µορφή διαµαντιού για να βρει τµήµατα ευθειών σε µια εικόνα, ο Borstein (1987) [56] ένα µαύρο τετράγωνο µε τέσσερα άσπρα σηµεία στις γωνίες, οι Kabuka και Arenas (1987) [57] έναν κύκλο, µισό λευκό µισό µαύρο µε ένα µοναδικό bar-code για κάθε χαρακτηριστικό και τέλος, οι Magee και Aggarwal (1984) [58] χρησιµοποίησαν µια σφαίρα µε οριζόντιους και κάθετους κύκλους για την εύρεση θέσης σε τρεις διαστάσεις από µια εικόνα. Οι διαδικασίες εξαγωγής χαρακτηριστικών γνωρισµάτων διακρίνονται σε χαµηλού και υψηλού επιπέδου. Ως χαµηλού επιπέδου ορίζονται όλα εκείνα τα γνωρίσµατα, που µπορούν να εξαχθούν άµεσα από µια εικόνα, χωρίς να απαιτείται καµία πληροφορία σχετικά µε το σχήµα τους. Στη δεύτερη κατηγορία ανήκουν οι τεχνικές που ανιχνεύουν γνωστά γεωµετρικά σχήµατα (π.χ. ευθείες, τετράγωνα, κύκλους, ελλείψεις) σε µια εικόνα. Ένα ροµπότ µπορεί να έχει στη διάθεση του για την αναγνώριση των χαρακτηριστικών: Αισθητήρες µέτρησης: sonar, infrared και Laser Range Finder Οπτικούς αισθητήρες: κάµερα 65

66 Ακουστικούς αισθητήρες: µικρόφωνο Στην παρούσα διπλωµατική εργασία έχει χρησιµοποιηθεί Laser Range Finder µε τη βοήθεια του οποίου γίνεται η εξαγωγή των χαρακτηριστικών. Τα πλεονεκτήµατα του σε σχέση µε άλλους αισθητήρες είναι ότι έχει µεγάλη ακρίβεια στις µετρήσεις, υψηλό ρυθµό δειγµατοληψίας και µεγάλη εµβέλεια. 5.2 Επιλογή χαρακτηριστικών Ο γεωµετρικός χάρτης του περιβάλλοντος παίζει πολύ σηµαντικό ρόλο στη ροµποτική καθώς συµβάλλει στον καθορισµό της θέσης του ροµπότ και στη δηµιουργία µονοπατιών για την περιήγηση του [59]. Υπάρχουν πολλοί τρόποι αναπαράστασης του περιβάλλοντος του ροµπότ. Ένας από τους πιο δηµοφιλείς είναι µέσω occupancy grid (πλέγµατος). Το πλεονέκτηµα της αναπαράστασης αυτής είναι ότι µπορεί να ανανεωθεί εύκολα. Τα µειονεκτήµατα της ωστόσο, περιλαµβάνουν τις πολύ µεγάλες απαιτήσεις σε µνήµη καθώς και τα προβλήµατα διακριτοποίησης. Για να ξεπεραστούν αυτοί οι περιορισµοί ερευνήθηκαν πιο συµπαγείς αναπαραστάσεις χάρτη, όπως µε σηµεία ή ευθείες. Η αναπαράσταση του περιβάλλοντος µε ευθείες υπερέχει από αυτή των σηµείων, καθώς έχει ως αποτέλεσµα ένα πιο συµπαγή χάρτη µε αρκετά µειωµένο αριθµό παραµέτρων [60]. Επίσης, ένας χάρτης βασισµένος σε ευθείες περιέχει περισσότερες πληροφορίες από αυτόν που είναι βασισµένος σε σηµεία καθότι χρησιµοποιεί περισσότερες µετρήσεις από τους αισθητήρες του ροµπότ. Στην παρούσα διπλωµατική εργασία ως χαρακτηριστικά γνωρίσµατα (landmarks) έχουµε επιλέξει τις ευθείες. Αυτή η αναπαράσταση του χάρτη βασίζεται στην υπόθεση ότι τα περισσότερα περιβάλλοντα εντός κτιρίων αποτελούνται από επίπεδες δοµές που αντιστοιχούν σε τοίχους, πόρτες, ντουλάπες και άλλα. Απαιτούν πολύ λιγότερο χώρο, καθώς τα επίπεδα αντικείµενα µπορούν να αναπαρασταθούν µε ένα µικρό αριθµό ευθειών και είναι πιο ακριβείς καθώς παρέχουν ακρίβεια δεκαδικού ψηφίου. Τέλος, στην αναπαράσταση µέσω ευθειών δεν προκύπτουν προβλήµατα διακριτοποίησης. Ωστόσο, οι ευθείες έχουν το µειονέκτηµα ότι σε αντίθεση µε τα αντικείµενα του περιβάλλοντος είναι άπειρες σε µήκος [61]. Μια λύση σε αυτό το πρόβληµα είναι να θεωρήσουµε τµήµατα ευθειών αντί για ολόκληρες ευθείες, παρά το γεγονός ότι και αυτή η προσέγγιση αντιµετωπίζει κάποια προβλήµατα στην αναπαράσταση γωνιών η ενώσεων µεταξύ αντικειµένων και στην ενσωµάτωσή τους στο χάρτη. 5.3 State of the art Στο παρελθόν, έχουν ερευνηθεί και αναπτυχθεί πολλές τεχνικές εξαγωγής ευθειών µε χρήση αισθητήρων απόστασης 2D laser range finder. Ο Cox (1991) [62] χρησιµοποιεί τέτοιου είδους δεδοµένα για την εύρεση της θέσης του ροµπότ σε µικρό πολυγωνικό περιβάλλον. Προτείνει έναν αλγόριθµο σύγκρισης µεταξύ σηµείων εικόνων και σηµείων ενός ήδη γνωστού χάρτη χρησιµοποιώντας µια επαναληπτική µέθοδο ελαχίστων τετραγώνων. Η δουλειά του Lu και του Milios (1994) [63] απευθύνεται στο πρόβληµα της 66

67 εύρεσης θέσης σε περιβάλλον όχι απαραίτητα πολυγωνικό. Η προτεινόµενη µέθοδος προσπαθεί να προσεγγίσει την ευθυγράµµιση δύο διαδοχικών scans και µετά µέσω επαναλήψεων να βελτιώσει την ευθυγράµµιση αυτή ορίζοντας και ελαχιστοποιώντας κάποια απόσταση µεταξύ των scans. Μια άλλη προσέγγιση που εφαρµόστηκε έντονα σε πρόσφατες έρευνες είναι ο µετασχηµατισµός των απευθείας ακατέργαστων µετρήσεων σε γεωµετρικά χαρακτηριστικά, τα οποία χρησιµοποιούνται για την ταυτοποίηση των scans από τους Crowley (1985) [64], Leonard και άλλοι 1992 [65], Castellanos και Tardos (1996) [66], Gutman και Schlegel (1996) [67], Jensfelt και Christensen (1998) [68], Schroter και άλλοι (2002) [69], Brunskill και Roy (2005) [70]. Αυτή η τεχνική έχει λιγότερες απαιτήσεις µνήµης, καθώς είναι πιο συµπαγής και µπορεί να παρέχει ακριβείς πληροφορίες. Αλγόριθµοι που στηρίζονται σε παραµετροποιηµένα γεωµετρικά χαρακτηριστικά είναι πιο αποτελεσµατικοί από εκείνους που είναι βασισµένους σε σηµεία. Ανάµεσα στα πολλά γεωµετρικά σχήµατα, τα τµήµατα ευθειών είναι τα πιο απλά και τα περισσότερα περιβάλλοντα µπορούν να περιγραφούν µε τη χρήση αυτών. Οι Castellanos και Tardόs (1996) [66] προτείνουν µια µέθοδο εµπνευσµένη από έναν αλγόριθµο που χρησιµοποιεί γνωστό χάρτη για τον εντοπισµό του ροµπότ. Ο Vandorpe και άλλοι (1996) [71] εισάγουν µια δυναµική χαρτογράφηση µε αλγόριθµο βασισµένο σε γεωµετρικά χαρακτηριστικά όπως κύκλους και ευθείες. Οι Jensfelt και Christensen (1998) [68] παρουσιάζουν µια τεχνική για την εύρεση της θέσης του ροµπότ σε ένα περιβάλλον γραφείου εξάγοντας µέσω laser ορθογώνιες ευθείες (τοίχοι). Ο Pfister και άλλοι (2003) [72] προτείνουν έναν αλγόριθµο εξαγωγής ευθειών χρησιµοποιώντας βάρη για την προσαρµογή της κάθε ευθείας, για χάρτη ενός κτιρίου βασισµένο σε ευθείες. Τέλος, οι Brunskill και Roy (2005) [69] προτείνουν µια πιθανολογική τεχνική για την εξαγωγή τµηµάτων ευθειών ως λύση για το πρόβληµα του SLAM. 5.4 Αλγόριθµοι εξαγωγής χαρακτηριστικών Σε αυτήν την ενότητα θα αναφερθούµε στους έξι πιο σηµαντικούς αλγορίθµους εξαγωγής ευθειών. Η επιλογή είναι βασισµένη στην απόδοση και την ευρεία χρήση τους στον τοµέα της ροµποτικής, γεγονός που τους κάνει τους πιο δηµοφιλείς. Συνοψίζονται µόνο οι βασικές εκδοχές τους, παρότι κάποιες λεπτοµέρειες µπορεί να αλλάζουν σε διαφορετικές υλοποιήσεις και εφαρµογές Split-and-Merge algorithm Είναι από τους πιο δηµοφιλής αλγορίθµους εξαγωγής ευθειών που δηµιουργήθηκε το 1974 από τους Pavlidis και Horowitz [73]. Έχει µελετηθεί και χρησιµοποιηθεί σε πολλές ροµποτικές έρευνες. 67

68 Σχήµα 5.1: Αλγόριθµος Split-and-Merge Συνοπτικά, σε αυτόν τον αλγόριθµο (Σχήµα 5.1) δηµιουργούνται οµάδες σηµείων σε κάθε µια από τις οποίες αντιστοιχίζεται µια ευθεία. Εντοπίζεται το σηµείο της οµάδας µε τη µεγαλύτερη απόσταση από την ευθεία, η οποία απόσταση αν είναι µεγαλύτερη από κάποιο όριο η συγκεκριµένη οµάδα χωρίζεται σε δύο µικρότερες στο σηµείο αυτό, αλλιώς παραµένει ως έχει. Όταν όλες οι οµάδες έχουν ελεγχθεί συγχωνεύονται τα τµήµατα που ανήκουν στην ίδια ευθεία. Στο δεύτερο βήµα, η αντιστοίχιση ευθείας γίνεται µε τη µέθοδο ελαχίστων τετραγώνων, αν και µπορεί να υλοποιηθεί διαφορετικά µε την ευθεία να δηµιουργείται ενώνοντας απλά το πρώτο και το τελευταίο σηµείο. Σε αυτήν την περίπτωση ο αλγόριθµος ονοµάζεται Iterative-End-Point-Fit (Duda and Hart 1973 [74], Borges and Aldon 2004 [75], Zhang and Ghosh 2000 [76]). Μια άλλη αλλαγή στην υλοποίηση µπορεί να γίνει στο τρίτο βήµα, όπου ψάχνουµε δυο γειτονικά σηµεία (αντί για ένα), που να βρίσκονται στην ίδια πλευρά της ευθείας και να έχουν ταυτόχρονα αποστάσεις από αυτήν µεγαλύτερες κάποιου ορίου (αν βρεθεί µόνο ένα τέτοιο σηµείο θεωρείται θόρυβος και αγνοείται). Σε αυτήν την περίπτωση, ο χωρισµός γίνεται στο σηµείο του τοπικού µεγίστου της απόστασης από την ευθεία Incremental algorithm Το κύριο πλεονέκτηµα αυτού του αλγορίθµου είναι η απλότητα. Έχει χρησιµοποιηθεί σε πολλές εφαρµογές (Forsyth and Ponce 2003 [77], Vandporpe και άλλοι 1996 [71]) και είναι επίσης γνωστός ως Line-Tracking (Siadat και άλλοι 1997 [78]). Ο αλγόριθµος (Σχήµα 5.2) ξεκινάει δηµιουργώντας µια ευθεία από τα δυο πρώτα σηµεία. Έπειτα προσθέτει το επόµενο σηµείο στην ευθεία, επαναλαµβάνει τον υπολογισµό των παραµέτρων και αν ικανοποιείται η συνθήκη που έχει ορίσει προσθέτει το επόµενο σηµείο. Αν η συνθήκη δεν ικανοποιείται, αφαιρεί το τελευταίο σηµείο που πρόσθεσε, υπολογίζει ακόµα µια φορά τις παραµέτρους και επιστρέφει την ευθεία συνεχίζοντας την αναζήτηση ευθειών µε τα επόµενα δύο σηµεία. 68

69 Σχήµα 5.2: Αλγόριθµος Incremental Με µια διαφορετική υλοποίηση, στο δεύτερο βήµα προστίθενται πέντε σηµεία για να επιταχυνθεί η διαδικασία. Όταν η ευθεία δεν ικανοποιεί µια καθορισµένη συνθήκη (π.χ. οι διακυµάνσεις κάποιων παραµέτρων της ευθείας να είναι µικρότερες από κάποια κατώφλια), τα τελευταία πέντε σηµεία αφαιρούνται και ο αλγόριθµος επιστρέφει στην αρχική του µορφή µε την προσθήκη ενός σηµείου κάθε φορά. Για ακόµα µία φορά, στην αντιστοίχιση των ευθειών χρησιµοποιείται η µέθοδος των ελαχίστων τετραγώνων (εναλλακτικά µπορεί να χρησιµοποιηθεί Extended Kalman Filter) Hough Transform Algorithm Ο Hough Transform τείνει να είναι πολύ επιτυχηµένος στην εύρεση ευθειών σε εικόνες (Forsyth and Ponce 2003 [77]). Στη ροµποτική, χρησιµοποιείται για την εξαγωγή ευθειών σε εικόνες µετά από σάρωση (Forsberg και άλλοι 1995 [79], Jensfelt and Christensen 1998 [68], Iocchi and Nardi 2002 [80], Pfister και άλλοι 2003 [72]). Σχήµα 5.3: Αλγόριθµος Hough-Transform Εδώ (Σχήµα 5.3), αρχικοποιείται ένα διάνυσµα συνάθροισης (accumulator array) και οι τιµές του. Έπειτα επιλέγεται το στοιχείο µε τις περισσότερες ψήφους και αν ο αριθµός των ψήφων είναι µικρότερος από ένα όριο ο αλγόριθµος τερµατίζει. Αλλιώς καθορίζονται τα inliers (σηµεία που ανήκουν στην ευθεία) και αντιστοιχίζεται µια ευθεία (µε τη µέθοδο ολικών 69

70 ελαχίστων τετραγώνων) για αυτά τα σηµεία, η οποία και αποθηκεύεται. Στη συνέχεια, τα σηµεία αυτά αφαιρούνται από το αρχικό δείγµα. Ένα βασικό µειονέκτηµα του αλγορίθµου αυτού είναι ότι δε λαµβάνει υπόψη του το θόρυβο και την αβεβαιότητα όταν υπολογίζει τις παραµέτρους της ευθείας. Έχουν προταθεί κάποιες παραλλαγές του για να αυξηθεί η απόδοση, όπως τυχαίος (randomized) Hough Transform (Xu 1990 [81]), range-weighted Hough Transform (Forsberg και άλλοι 1995 [79]) και Log- Hough Transform (Alempijevic 2004 [82]) Line regression algorithm Η βασική ιδέα του αλγορίθµου αυτού είναι εµπνευσµένη από τον αλγόριθµο Hough Transform και έχει προταθεί το 1997 (Arras and Siegwart [83]) για εύρεση θέσης µε χρήση χάρτη. Το πρόβληµα της εξαγωγής ευθειών αρχικά µετατρέπεται σε πρόβληµα εύρεσης και µοντελοποίησης της ευθείας υπό κάποιες παραµέτρους και έπειτα εφαρµόζεται ο αλγόριθµος Agglomerative Hierarchical Clustering (AHC) για τη δηµιουργία γειτονικών τµηµάτων ευθειών. Ένα µειονέκτηµά του είναι η µεγάλη πολυπλοκότητα της υλοποίησής του. Σχήµα 5.4: Αλγόριθµος Line-Regression Αρχικά (Σχήµα 5.4), καθορίζεται το µέγεθος του sliding window N f και αντιστοιχίζεται µια ευθεία (µε τη µέθοδο ολικών ελαχίστων τετραγώνων) σε κάθε N f συνεχόµενα σηµεία. Έπειτα, υπολογίζεται µια περιοχή ακρίβειας της ευθείας (το άθροισµα της απόστασης Mahalanobis µεταξύ κάθε τριών γειτονικών windows) και δηµιουργούνται τα τµήµατα ευθειών αναζητώντας σε αυτήν την περιοχή συνεχόµενα στοιχεία µε τιµές µικρότερες από ένα όριο (χρησιµοποιώντας τον AHC αλγόριθµο). Τέλος, συγχωνεύονται τα τµήµατα ευθειών που επικαλύπτονται και υπολογίζονται ξανά οι παράµετροι για κάθε ευθεία RANSAC algorithm O RANSAC Random Sample Consensus (Fischler and Bolles 1981 [84]) είναι ένας αλγόριθµος για την προσαρµογή µοντέλων ευθειών υπό την 70

71 παρουσία πολύ µακρινών σηµείων (outliers). Το µεγαλύτερο πλεονέκτηµά του είναι ότι αποτελεί µια µέθοδο γενικής χρήσης και µπορεί να λειτουργήσει µε χαρακτηριστικά πολλών διαφορετικών τύπων. Ακόµα, έχει εύκολη υλοποίηση, χαρακτηριστικό το οποίο τον κάνει πολύ δηµοφιλή στην εξαγωγή χαρακτηριστικών στη ροµποτική, και ειδικότερα στην επιστήµη όρασης των υπολογιστών (computer vision Forsyth and Ponce 2003 [77]). Σχήµα 5.5: Αλγόριθµος RANSAC Από το αρχικό σύνολο των Ν σηµείων (Σχήµα 5.5) διαλέγονται δύο τυχαία σηµεία και δηµιουργείται µια ευθεία (µε τη µέθοδο ελαχίστων τετραγώνων). Έπειτα, υπολογίζονται οι αποστάσεις των υπόλοιπων σηµείων από την ευθεία αυτή και ανάλογα µε την απόσταση, το κάθε σηµείο ανήκει (inliers) ή όχι (outliers) στην ευθεία. Αν ο αριθµός των inliers είναι πάνω από ένα όριο η ευθεία θεωρείται δεκτή και υπολογίζονται ξανά οι παράµετροί της, αλλιώς συνεχίζουµε µε δύο άλλα τυχαία σηµεία. Ο αλγόριθµος επαναλαµβάνεται µέχρι να έχουν µείνει πολύ λίγα σηµεία EM algorithm Ο αλγόριθµος Expectation Maximization (EM), είναι µια πιθανολογική µέθοδος ευρέως χρησιµοποιούµενη σε προβλήµατα που λείπει κάποια µεταβλητή. Ο ΕΜ έχει χρησιµοποιηθεί σαν εργαλείο εξαγωγής ευθειών στην ροµποτική (Liu και άλλοι 2001 [85], Pfister και άλλοι 2003 [72], Sack and Burgard 2004 [86]) και στην επιστήµη όρασης των υπολογιστών (computer vision Forsyth and Ponce 2003 [77]). Κάποια µειονεκτήµατά του είναι ότι µπορεί να παγιδευτεί σε κάποιο τοπικό ελάχιστο δηµιουργώντας ατέρµονα βρόχο, καθώς και ότι υπάρχει δυσκολία στην επιλογή αρχικών τιµών. Στον αλγόριθµο αυτό, (Σχήµα 5.6) δηµιουργούνται τυχαία οι παράµετροι για µια ευθεία και αρχικοποιούνται τα βάρη των υπόλοιπων σηµείων. Στο επόµενο βήµα, υπολογίζονται τα βάρη των σηµείων µε βάση το µοντέλο της ευθείας και υπολογίζονται για ακόµα µια φορά οι παράµετροι του µοντέλου αυτού. Το βήµα αυτό επαναλαµβάνεται µέχρι να υπάρξει σύγκλιση. Όλος ο αλγόριθµος µέχρι στιγµής επαναλαµβάνεται µέχρι να βρεθεί µια ευθεία. Αν βρεθεί, αποθηκεύονται τα σηµεία της, αφαιρούνται από το αρχικό σύνολο και ο αλγόριθµος συνεχίζεται, αλλιώς τερµατίζεται. 71

72 Σχήµα 5.6: Αλγόριθµος ΕΜ 5.5 Σύγκριση αλγορίθµων Η έρευνα για την εξαγωγή ευθειών είναι πολύ εκτεταµένη [59][87]. Ωστόσο, υπάρχει έλλειψη περιεκτικών συγκρίσεων των µέχρι στιγµής προτεινόµενων αλγορίθµων. Η επιλογή της καλύτερης µεθόδου για την εξαγωγή ευθειών είναι πολύ βασικό θέµα για την υλοποίηση του SLAM. Όσον αφορά την ταχύτητα, πρέπει να επιλεγεί ο αλγόριθµος µε την καλύτερη real time εφαρµογή. Σχετικά µε την ποιότητα, λανθασµένη επιλογή ευθειών στο SLAM µπορεί να οδηγήσει το σύστηµα σε αποτυχία. Η πολυπλοκότητα της υλοποίησης είναι επίσης ένα από τα βασικότερα θέµατα που πρέπει να ληφθούν υπόψη στην επιλογή του αλγορίθµου. Από πειράµατα που πραγµατοποιήθηκαν σε δύο χώρους [87] (έναν διάδροµο και ένα δωµάτιο) παρατηρήθηκαν τα παρακάτω αποτελέσµατα (Σχήµατα 5.7 και 5.8). Για την ανάλυση των πειραµατικών αποτελεσµάτων ως κριτήρια αξιολόγησης λαµβάνονται η πολυπλοκότητα, η ταχύτητα, η ορθότητα των αποτελεσµάτων και η ακρίβεια. Παρακάτω, φαίνεται η σύγκριση για τους έξι βασικούς αλγόριθµους και άλλους πέντε που είναι οι βασικοί µε τη χρήση οµαδοποίησης (clustering). 72

73 Σχήµα 5.7: Αποτελέσµατα σύγκρισης αλγορίθµων σε διάδροµο [87] Η ορολογία που χρησιµοποιείται επεξηγείται ως εξής: Ν: Αριθµός σηµείων από το αρχικό scan. S: Αριθµός τµηµάτων ευθειών που εξάγονται από τον αλγόριθµο. N f : Μέγεθος του sliding window για τον Line-Regression. N.Trials: Αριθµός δοκιµών για τον RANSAC. NR, NC: Αριθµός γραµµών και στηλών αντίστοιχα για το διάνυσµα συνάθροισης (accumulator array) στον ΗΤ. Ν1, Ν2: Αριθµός δοκιµών και επαναλήψεων µέχρι τη σύγκλιση για τον ΕΜ αλγόριθµο. Η ορθότητα των αποτελεσµάτων καθορίζεται ως εξής: (5.1) (5.2) όπου N.LineExByAlgo είναι ο αριθµός των εξαγόµενων ευθειών από τον αλγόριθµο, N.Matches ο αριθµός των εξαγόµενων αυτών ευθειών που έχουν ταιριάξει µε τις πραγµατικές σύµφωνα µε τον κάθε αλγόριθµο και N.TrueLines ο πραγµατικός αριθµός ευθειών στο χάρτη. 73

74 Σχήµα 5.8: Αποτελέσµατα σύγκρισης αλγορίθµων σε κλειστό χώρο (δωµάτιο) [87] Για τον προσδιορισµό της ακρίβειας των αποτελεσµάτων γίνεται σύγκριση των παραµέτρων των πραγµατικών ευθειών σε σχέση µε αυτές που επιστρέφει ο κάθε αλγόριθµος, χρησιµοποιώντας την υπόθεση ότι οι κατανοµές σφάλµατος είναι Gaussian και υπολογίζοντας τις διακυµάνσεις των κατανοµών αυτών. Για τους µη-ντετερµινιστικούς αλγόριθµους RANSAC και EM, οι τιµές αυτές λαµβάνονται µετά τις πρώτες δέκα επαναλήψεις του αλγορίθµου. Από τα αποτελέσµατα της σύγκρισης στο διάδροµο (Σχήµα 5.7) βγαίνει το συµπέρασµα, ότι οι πρώτοι πέντε αλγόριθµοι που είναι βασισµένοι στους Split-and-Merge, Incremental και Line-Regression, λειτουργούν πολύ γρηγορότερα από τους άλλους. Αυτό οφείλεται κυρίως στο ότι είναι βασισµένοι σε ντετερµινιστικές µεθόδους και ειδικότερα στη χρήση ακολουθιακών χαρακτηριστικών των ακατέργαστων σηµείων των scans. Ο Split-and-Merge ανήκει στην κλάση των αλγορίθµων «διαίρει και βασίλευε» (divide-and-conquer) και έτσι είναι ταχύτερος. Αξίζει να σηµειωθεί ότι ο αλγόριθµος Incremental µε τη χρήση clustering λειτουργεί σχεδόν σε διπλάσια ταχύτητα. Όσον αφορά την ορθότητα των αποτελεσµάτων, οι Incremental και Incremental µε clustering αλγόριθµοι φαίνεται να λειτουργούν καλύτερα, καθώς έχουν πολύ µικρό αριθµό FalsePos, ενώ ο Split-and-Merge φαίνεται να είναι καλύτερος ως προς το TruePos. Εδώ οι αλγόριθµοι ΕΜ και RANSAC φαίνεται να έχουν φτωχότερη απόδοση, γεγονός που µπορεί να εξηγηθεί λόγω του ότι αυτοί οι αλγόριθµοι αυτοί δεν χρησιµοποιούν την ακολουθιακή ικανότητα των σηµείων, µε αποτέλεσµα να προσπαθούν να συνθέσουν λανθασµένα ευθείες. Μια λύση σε αυτό το πρόβληµα µπορεί να δοθεί αυξάνοντας τον αριθµό των σηµείων που πρέπει να περιέχει η ευθεία, µε τον κίνδυνο να µη λαµβάνονται υπόψη µικρά τµήµατα. Παρά τα προβλήµατά τους στην ταχύτητα και την ορθότητα, οι αλγόριθµοι RANSAC, ΗΤ και ΕΜ+ clustering παράγουν σχετικά πιο ακριβείς ευθείες. Ένας από τους λόγους που συµβαίνει αυτό είναι ότι οι αλγόριθµοι αυτοί τείνουν να συµπεριλαµβάνουν µόνο καλά inliers (σηµεία που 74

75 θεωρούνται ότι ανήκουν στην ευθεία). Για παράδειγµα, στον RANSAC όσο περισσότερες επαναλήψεις γίνονται, η ευθεία τείνει να γίνει όλο και κοντινότερη στην πραγµατική, ή στον ΗΤ ένα λανθασµένο λόγω θορύβου inlier µιας ευθείας µπορεί να θεωρηθεί ότι ανήκει σε ένα γειτονικό κελί του πλέγµατος και έτσι σωστά να µην συµπεριληφθεί στην τελική οµάδα των σηµείων που απαρτίζουν την ευθεία. Ωστόσο, οι εξαγόµενες παράµετροι των µοντέλων των ευθειών δεν επηρεάζονται από το θόρυβο των λανθασµένων inliers. Από τα αποτελέσµατα της σύγκρισης στο κλειστό δωµάτιο (Σχήµα 5.8) η πρώτη γενική παρατήρηση είναι ότι οι αλγόριθµοι εκτελούνται µε περισσότερη ακρίβεια και έχουν καλύτερα αποτελέσµατα, κυρίως επειδή τα αποτελέσµατα των scans είναι πιο ξεκάθαρα. Επίσης, η ταχύτητα εκτέλεσης των αλγορίθµων αυξάνεται πολύ. Όσον αφορά τον κάθε αλγόριθµο ξεχωριστά, ο Split-and-Merge δείχνει να έχει την πρωταρχική θέση στα περισσότερα κριτήρια σύγκρισης. Ακολουθεί ο Incremental µε καλή ορθότητα αποτελεσµάτων. Ακόµη µπορούµε να παρατηρήσουµε ότι ο RANSAC έχει πολύ καλά αποτελέσµατα ακρίβειας σε σχέση µε τους περισσότερους από τους υπόλοιπους αλγορίθµους σε αυτόν το χώρο, που είναι πιο καλά ορισµένα τα αντικείµενα. Συνοπτικά, οι αλγόριθµοι ελέγχθηκαν σε δυο διαφορετικά περιβάλλοντα µε διαφορετικά σχήµατα και µορφές. Τα αποτελέσµατα της σύγκρισης είναι ωστόσο σχετικά µε την επίδοση του κάθε αλγορίθµου. Πρέπει να σηµειωθεί ότι στο πρώτο περιβάλλον του διαδρόµου µπορεί να εµφανίστηκαν άνθρωποι που περνούσαν στα αποτελέσµατα των scans, ωστόσο οι περισσότεροι αποµακρύνθηκαν καθώς αποτελούσαν τµήµα ευθείας µε πολύ µικρό µήκος. 5.6 Χρήση RANSAC για line extraction Ο αλγόριθµος που επιλέχτηκε να υλοποιηθεί για την εξαγωγή ευθειών στην παρούσα διπλωµατική εργασία είναι ο RANSAC. Όπως έχει αναφερθεί ήδη, είναι µια γενική µέθοδος που βρίσκει µεγάλη εφαρµογή στο SLAM. Επίσης, έχει µια συγκριτικά εύκολη υλοποίηση και αποδίδει καλά για εσωτερικoύς κυρίως χώρους έχοντας παράλληλα µεγάλη ταχύτητα εκτέλεσης. Τέλος, επιλέχθηκε επειδή ξεκινά χρησιµοποιώντας όσο το δυνατόν µικρότερο πλήθος δειγµάτων και προσπαθεί να το επεκτείνει επαναληπτικά, βελτιώνοντας το µοντέλο της ευθείας. Ο αλγόριθµος περιγράφηκε παραπάνω (Ενότητα 5.4.5) και τώρα θα γίνει µια παρουσίαση των παραµέτρων και βελτιστοποιήσεων που έχουν γίνει για τη συγκεκριµένη υλοποίηση. Οι παράµετροι που χρησιµοποιούνται για τον αλγόριθµο πρέπει να είναι οι βέλτιστοι για να επιτευχθεί όσο το δυνατόν καλύτερο αποτέλεσµα. Όσο µεγαλύτερος είναι ο αριθµός των σηµείων που χρησιµοποιούνται για τη δηµιουργία της αρχικής ευθείας, τόσο µικρότερη είναι η πιθανότητα να επιτύχει. Ακόµα, µεγαλύτερο ποσοστό inliers καθώς και περισσότερες επαναλήψεις του αλγορίθµου, έχουν ως αποτέλεσµα µεγαλύτερη πιθανότητα επιτυχίας του [88]. Στην παρούσα υλοποίηση, γίνεται χρήση του αισθητήρα laser range finder που υπάρχει στο προσοµοιωµένο ροµπότ και το οποίο έχει την 75

76 ικανότητα να µετράει αποστάσεις έως και 9,5 µέτρα. Οι µετρήσεις λαµβάνονται ανά µια µοίρα για ένα εύρος 270 µοιρών. Ο χώρος που δεν καλύπτεται είναι 90 µοίρες πίσω από το ροµπότ (όπως στο Σχήµα 5.9 αν θεωρηθεί ότι µε κόκκινο είναι το ροµπότ που κοιτάει όπως το βέλος το τµήµα του κύκλου είναι το εύρος που µπορεί να δει). Έτσι έχουµε 270 µετρήσεις απόστασης από τη θέση του ροµπότ, από τις οποίες κρατάµε όσες είναι µικρότερες των 9,3 µέτρων για να χρησιµοποιηθούν ως είσοδος για τον RANSAC. Αυτό γίνεται ώστε να λάβουµε υπόψη µόνο τις µετρήσεις που αντιστοιχούν σε εµπόδια και να µην θεωρηθεί ως εµπόδιο το όριο του laser. 9.5 m Σχήµα 5.9: Εύρος laser Μετά την αρχικοποίηση της οµάδας των σηµείων που θα αποτελέσουν την είσοδο του αλγορίθµου, ο αλγόριθµος ξεκινάει όπως αναφέρθηκε, µε την τυχαία επιλογή δυο σηµείων της οµάδας και τη δηµιουργία της ευθείας που αυτά σχηµατίζουν. Στην υλοποίησή µας, η επιλογή γίνεται από δυο γειτονικά σηµεία (η απόσταση των συντεταγµένων τους να µην ξεπερνάει το 1,5 µέτρο). Έπειτα, χρησιµοποιώντας τη µέθοδο ελαχίστων τετραγώνων ελέγχεται ποιά από τα υπόλοιπα σηµεία ανήκουν στην ευθεία αυτή. Συγκεκριµένα, θεωρείται ότι το σηµείο ανήκει στην ευθεία αν η απόστασή του από αυτήν είναι µικρότερη από 0,03 µέτρα. Για να επιτευχθεί καλύτερο αποτέλεσµα, η ευθεία που έχει βρεθεί περνάει από γραµµική παλινδρόµηση (linear regression). Οι παράµετροι της υπολογίζονται ξανά και για ακόµα µία φορά γίνεται έλεγχος όλων των σηµείων µε τη µέθοδο ελαχίστων τετραγώνων (αυτήν τη φορά το σηµείο ανήκει στην ευθεία αν η απόσταση είναι µικρότερη από 0,045 µέτρα). Αν το σύνολο των σηµείων της ευθείας είναι µεγαλύτερο µετά τη γραµµική παλινδρόµηση κρατείται αυτή ως καλύτερη ευθεία, αλλιώς δε λαµβάνεται υπόψη. Έπειτα, η τελική ευθεία ελέγχεται για να διαπιστωθεί αν αποτελείται από πολλά µικρότερα κοµµάτια και αν ισχύει κάτι τέτοιο κρατείται το µεγαλύτερο τµήµα από αυτά. Η όλη µέχρι τώρα διαδικασία επαναλαµβάνεται µέχρις ότου βρεθεί µια ευθεία που να ικανοποιεί τα κριτήρια που θέτουµε, δηλαδή το ποσοστό των σηµείων της ευθείας ως προς το σύνολο των σηµείων να είναι µεγαλύτερο από 0,3, καθώς και οι επαναλήψεις να µην ξεπεράσουν τις 200. Κάθε φορά που αποθηκεύεται µια καινούρια ευθεία που πληροί τα κριτήρια, γίνεται καινούριος έλεγχος της µε τις ήδη υπάρχουσες ευθείες που δείχνει αν πρέπει να συνενωθεί µε κάποια από αυτές. Πρέπει να σηµειωθεί ότι κάθε φορά που βρίσκεται µια ευθεία, τα σηµεία της αφαιρούνται από το σύνολο των αρχικών σηµείων. Η διαδικασία εύρεσης ευθειών συνεχίζεται όσο ισχύουν οι συνθήκες της επανάληψης, οι οποίες στη συγκεκριµένη υλοποίηση καθορίζονται ως το ποσοστό του υπολειπόµενου αριθµού σηµείων ως προς 76

77 το αρχικό να είναι µεγαλύτερο από 0,05 και οι επαναλήψεις να µην ξεπεράσουν για ακόµη µια φορά τις 200. Κάθε ευθεία για να γίνει δεκτή πρέπει να έχει στο σύνολό της πάνω από 20 σηµεία. Με αυτόν τον τρόπο ίσως δε λαµβάνονται υπόψη κάποια µικρά τµήµατα ευθειών (το ροµπότ δεν έχει προχωρήσει αρκετά ώστε να γίνεται ορατός όλος ο τοίχος). Αυτό το πρόβληµα µπορεί να διορθωθεί, καθώς το ροµπότ συνεχίζει τη διαδροµή µε αποτέλεσµα να είναι όλο και µεγαλύτερο το τµήµα της ευθείας που βρίσκεται στην εµβέλεια του laser του ροµπότ και να γίνεται αντιληπτό από αυτό. Παρακάτω έχουµε παραθέσει κάποια screenshots από τα πειράµατα που διεξήχθησαν στα δυο εικονικά περιβάλλοντα που παρουσιάστηκαν στο κεφάλαιο 2. Στην υλοποίηση αυτή έχουµε θεωρήσει ότι το ροµπότ είναι σηµειακό. Αρχικά (Σχήµα 5.10, Σχήµα 5.11), φαίνεται το τµήµα της κάτοψης του περιβάλλοντος που κινείται κάθε φορά το ροµπότ και η θέση του (απεικονίζεται µε µια κόκκινη τελεία). Έπειτα, στην µια εικόνα και µε πράσινο χρώµα φαίνεται κάθε φορά το αρχικό scan έτσι όπως το είδε το laser. Στην επόµενη βλέπουµε για κάθε περίπτωση τις ευθείες µετά τον RANSAC. Με σταυρούς ξεχωρίζουν τα άκρα τους και έχουν τυχαίο χρώµα, ενώ τα υπόλοιπα άσπρα σηµεία δεν έχουν επιλεγεί. Το πάχος των τοίχων θεωρείται 3 εκατοστά (1 pixel) και το µήκος τους αναγράφεται δίπλα από κάθε τοίχο (σε cm). 77

78 218 cm 261 cm 108 cm 425 cm 222 cm 78

79 423 cm 113 cm 294 cm 223 cm 79

80 214 cm 97 cm 333 cm 231 cm 452 cm 80

81 268 cm 118 cm 443 cm 108 cm 236 cm Σχήµα 5.10: Αρχικά scan και αποτελέσµατα RANSAC για το πρώτο προσοµοιωµένο περιβάλλον 81

82 469 cm 352 cm 321 cm 283 cm 336 cm 82

83 200 cm 181 cm 266 cm 83

84 156 cm 145 cm 292 cm 561 cm Σχήµα 5.11: Αρχικό scan και αποτέλεσµα RANSAC για το δεύτερο προσοµοιωµένο περιβάλλον Εδώ, (Σχήµα 5.11) φαίνεται το πρόβληµα που αναφέρθηκε παραπάνω, ενώ στην αρχή κάποιες ευθείες δε γίνονται αντιληπτές γιατί περιλαµβάνουν λίγα σηµεία. Στις επόµενες επαναλήψεις όµως τα σηµεία γίνονται περισσότερα και η ευθεία αναγνωρίζεται από το ροµπότ. Συµπερασµατικά, ο RANSAC είναι χαρακτηριστικός της ανοχής που παρουσιάζει όταν εµφανίζονται µετρήσεις µε µεγάλο σφάλµα εξαιτίας κάποιου θορύβου. Αυτό είναι και το κύριο πλεονέκτηµά του. Με τη χρήση του RANSAC η τελική έκβαση του αποτελέσµατος εξαρτάται από τα τυχαία σηµεία που επιλέγονται κάθε φορά για τη δηµιουργία των ευθειών (καθώς αποκαλείται και Random), µε συνέπεια να υπάρχουν διαφορετικά αποτελέσµατα κάθε φορά που εκτελείται το πείραµα. Στην πλειοψηφία όµως των περιπτώσεων η εξαγωγή των ευθειών γίνεται µε ικανοποιητικό τρόπο και σχετικά µικρό σφάλµα. Ψευδοκώδικας RANSAC: 1 Αρχικά: Οµάδα Ν σηµείων 2 Επανέλαβε: Επανέλαβε: 3 Επιλογή 2 γειτονικών σηµείων από τα Ν 4 ηµιουργία ευθείας από τα δυο σηµεία 5 Υπολογισµός αποστάσεων των υπολοίπων σηµείων από αυτήν την ευθεία 6 Αποδοχή ή µη των σηµείων (inliers or outliers) 7 Σε περίπτωση περισσότερων inliers από την προηγούµενη επανάληψη, γραµµική παλινδρόµηση ευθείας (linear regression) 84

85 υπολογισµός ξανά παραµέτρων της και έλεγχος όλων των σηµείων για αποδοχή 8 Εξαγωγή των µικρότερων τµηµάτων ευθείας (αν υπάρχουν) 9 µέχρις ότου ποσοστό σηµείων ευθείας προς συνολικό αποδεκτό ή µέγιστος αριθµός επαναλήψεων 10 Ένωση τµηµάτων ευθειών αν ικανοποιούνται κριτήρια 11 ιαγραφή σηµείων ευθείας(inliers) από αρχική οµάδα 12 µέχρις ότου µέγιστος αριθµός επαναλήψεων ή πολύ λίγα σηµεία Ο µέσος χρόνος εκτέλεσης του αλγορίθµου µετρήθηκε µετά από πειράµατα περίπου στα 321msec. 85

86 ΚΕΦΑΛΑΙΟ 6. Πειράµατα-Αποτελέσµατα Στην ενότητα αυτή θα περιγραφούν τα πειράµατα που πραγµατοποιήθηκαν και τα αποτελέσµατα που προέκυψαν από τη διεξαγωγή τους. 6.1 Περιγραφή Πειραµάτων Για τον έλεγχο επίδοσης της υλοποίησης landmark based FastSLAM µε χρήση Kalman και Particle filters εκτελέσαµε πειράµατα σε δυο διαφορετικά προσοµοιωµένα περιβάλλοντα που έχουν αναλυθεί παραπάνω µε τη βοήθεια των Player και USARsim Πειράµατα στο πρώτο προσοµοιωµένο περιβάλλον Σε αυτό το πείραµα το ροµπότ ακολούθησε τη διαδροµή που φαίνεται στο Σχήµα 6.1. Η διαδικασία επαναλήφθηκε 20 φορές για τα εξής συγκεκριµένα δεδοµένα: Particles 100 Γραµµική Ταχύτητα Ταχύτητα Περιστροφής 0.1 m/s 0.06 rad/s Θόρυβος 20% 2 σ Πίνακας = a Q t 2 0 σ β p 0 = Weight Threshold Resampling Threshold 0.75 Ο θόρυβος είναι προσθετικός στη γραµµική και περιστροφική ταχύτητα κίνησης του ροµπότ. Το 20% δηλώνει ότι στις ταχύτητες αυτές προστίθεται τυχαία τιµή από το διάστηµα [-20% 20%] επί της γραµµικής ή περιστροφικής ταχύτητας αντίστοιχα. Με αυτόν τον τρόπο εισάγεται θόρυβος σε κάθε particle για την εκτίµηση της θέσης του ροµπότ. Ο πίνακας Q t είναι ο θόρυβος που εισάγεται στο Kalman φίλτρο για την εκτίµηση της θέσης των landmarks. Με p 0 συµβολίζεται το όριο του βάρους που ορίζεται για την προσθήκη νέων ευθειών στον χάρτη και τέλος, το όριο που καθορίζει πότε θα γίνει resampling ορίζεται στο 0.75 επί τον αριθµό των particles. 86

87 Σχήµα 6.1: ιαδροµή που ακολούθησε το ροµπότ για το πρώτο προσοµοιωµένο περιβάλλον Παρακάτω παρουσιάζονται στιγµιότυπα της τελικής µορφής του χάρτη, µετά την ολοκλήρωση της διαδροµής του ροµπότ. Στο Σχήµα 6.2 απεικονίζεται η καλύτερη αναπαράσταση του χάρτη, ενώ στο Σχήµα 6.3 η χειρότερη, µετά τις 20 επαναλήψεις του πειράµατος. Με µπλε χρώµα φαίνονται τα landmarks (τοίχοι) και µε πράσινο η εκτιµώµενη θέση του ροµπότ για κάθε ένα από τα 100 particles. Σχήµα 6.2: Καλύτερη αναπαράσταση του χάρτη µετά τα 20 πειράµατα µε 100 particles 87

88 Σχήµα 6.3: Χειρότερη αναπαράσταση του χάρτη µετά τα 20 πειράµατα µε 100 particles Όπως παρατηρούµε, στο Σχήµα 6.3 ένα µέρος του χάρτη είναι στραµµένο κατά αριστερά. Αυτό οφείλεται στο γεγονός ότι ο θόρυβος που προστίθεται στη θέση του ροµπότ για κάθε particle είναι τυχαίος. Στη συνέχεια, πραγµατοποιήθηκαν πειράµατα µε τις ίδιες παραµέτρους αλλά διαφορετικό αριθµό particles, για να διαπιστωθεί ότι η επιλογή του αριθµού των 100 particles δίνει τα καλύτερα αποτελέσµατα. οκιµάστηκαν 10 και 500 particles και τα αποτελέσµατα φαίνονται παρακάτω (Σχήµα 6.4, Σχήµα 6.5): Σχήµα 6.4: Αποτέλεσµα πειράµατος για 10 particles 88

89 Σχήµα 6.5: Αποτέλεσµα πειράµατος για 500 particles Παρατηρώντας τα σχήµατα, συµπεραίνουµε ότι µε 10 particles δεν έχουµε τόσο καλά αποτελέσµατα όσο στα υπόλοιπα πειράµατα, ενώ µε 500 particles τα αποτελέσµατα είναι καλύτερα, αλλά ο συνολικός χρόνος ολοκλήρωσης του πειράµατος αυξάνεται σηµαντικά Πειράµατα στο δεύτερο προσοµοιωµένο περιβάλλον Σε αυτό το πείραµα το ροµπότ ακολούθησε τη διαδροµή που φαίνεται στο Σχήµα 6.6. Η διαδικασία επαναλήφθηκε 20 φορές για τα εξής συγκεκριµένα δεδοµένα: Particles 100 Γραµµική Ταχύτητα Ταχύτητα Περιστροφής 0.1 m/s 0.06 rad/s Θόρυβος 20% 2 σ Πίνακας = a Q t 2 0 σ β p 0 = Weight Threshold Resampling Threshold 0.85 Αντίστοιχα, το 20% δηλώνει ότι στις ταχύτητες αυτές προστίθεται τυχαία τιµή από το διάστηµα [-20% 20%] επί της γραµµικής ή περιστροφικής ταχύτητας αντίστοιχα. Με p 0 συµβολίζεται το όριο του βάρους όπου σε αυτό το πείραµα ορίζεται ίσο µε και τέλος, το όριο που καθορίζει πότε θα γίνει resampling ορίζεται στο 0.85 επί τον αριθµό των particles. 89

90 Σχήµα 6.6: ιαδροµή που ακολούθησε το ροµπότ για το δεύτερο προσοµοιωµένο περιβάλλον Τα στιγµιότυπα των αποτελεσµάτων από τη διεξαγωγή των 20 πειραµάτων φαίνονται παρακάτω. Στο Σχήµα 6.7 απεικονίζεται η καλύτερη αναπαράσταση του χάρτη, ενώ στο Σχήµα 6.8 η χειρότερη, µετά τις 20 επαναλήψεις του πειράµατος. Σχήµα 6.7: Καλύτερη αναπαράσταση του χάρτη µετά τα 20 πειράµατα µε 100 particles 90

91 Σχήµα 6.8: Χειρότερη αναπαράσταση του χάρτη µετά τα 20 πειράµατα µε 100 particles Όπως παρατηρούµε, στο Σχήµα 6.8 µια ευθεία του χάρτη είναι στραµµένη κατά δεξιά. Αυτό οφείλεται, όπως αναφέρεται παραπάνω, στον τυχαίο θόρυβο που προστίθεται στη θέση του ροµπότ για κάθε particle. Τα αποτελέσµατα των πειραµάτων µε τις ίδιες παραµέτρους για 10 και 500 particles φαίνονται παρακάτω (Σχήµα 6.9, Σχήµα 6.10 αντίστοιχα). Σχήµα 6.9: Αποτέλεσµα πειράµατος για 10 particles 91

92 Σχήµα 6.10: Αποτέλεσµα πειράµατος για 500 particles Όπως και στο προηγούµενο προσοµοιωµένο περιβάλλον, έτσι και σε αυτό, τα αποτελέσµατα των πειραµάτων επιβεβαιώνουν ότι µε 10 particles έχουµε µεγαλύτερο σφάλµα στην απεικόνιση του χάρτη, ενώ µε 500 particles επιτυγχάνεται καλύτερη αναπαράσταση του χάρτη σε σχέση µε τα 10, µε το κόστος του αυξηµένου υπολογιστικού χρόνου του αλγορίθµου. Ωστόσο, η επιλογή των 100 particles συνεχίζει να δίνει τα καλύτερα αποτελέσµατα. 6.2 Πειραµατικά Αποτελέσµατα Τα αποτελέσµατα των πειραµάτων που περιγράφηκαν παραπάνω παρατίθενται και σχολιάζονται στη συνέχεια Αποτελέσµατα πειραµάτων στο πρώτο προσοµοιωµένο περιβάλλον Στο παρακάτω διάγραµµα φαίνονται οι τυπικές αποκλίσεις κάποιων landmarks καθώς κινείται το ροµπότ (Σχήµα 6.11). Με συνεχόµενη γραµµή αναπαριστώνται οι αυτοσυσχετίσεις σ αα και µε διακεκοµµένη οι αυτοσυσχετίσεις σ ββ. Τα landmarks που απεικονίζονται πιο δεξιά στο χάρτη παρατηρούνται στην πορεία κίνησης. Όπως είναι αναµενόµενο, η αβεβαιότητα τους µειώνεται σε κάθε βήµα, καθώς το ροµπότ πιο σίγουρο για τη θέση του άρα και για τη θέση των landmarks. 92

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Monte Carlo Localization Simulator. Κάργας Νικόλαος :

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Monte Carlo Localization Simulator. Κάργας Νικόλαος : Αυτόνομοι Πράκτορες Εργασία εξαμήνου Monte Carlo Localization Simulator Κάργας Νικόλαος : 2007030045 Σκοπός της εργασίας ήταν η δημιουργία ενός προσομοιωτή του αλγορίθμου monte carlo για τον εντοπισμό

Διαβάστε περισσότερα

Υλοποίηση εντοπισμού στα Nao robots μέσω προσέγγισης του φίλτρου Kalman

Υλοποίηση εντοπισμού στα Nao robots μέσω προσέγγισης του φίλτρου Kalman Α Π Ε (Χ 2011/2012) Υλοποίηση εντοπισμού στα Nao robots μέσω προσέγγισης του φίλτρου Kalman Ιωακείμ Πέρρος, ΑΜ: 2007030085 2 Απριλίου 2012 Περιεχόμενα 1 Εισαγωγή / Πρόβλημα 1 2 Προσέγγιση / Λύση 2 2.1

Διαβάστε περισσότερα

E [ -x ^2 z] = E[x z]

E [ -x ^2 z] = E[x z] 1 1.ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτήν την διάλεξη θα πάμε στο φίλτρο με περισσότερες λεπτομέρειες, και θα παράσχουμε μια νέα παραγωγή για το φίλτρο Kalman, αυτή τη φορά βασισμένο στην ιδέα της γραμμικής

Διαβάστε περισσότερα

Kalman Filter Γιατί ο όρος φίλτρο;

Kalman Filter Γιατί ο όρος φίλτρο; Kalman Filter Γιατί ο όρος φίλτρο; Συνήθως ο όρος φίλτρο υποδηλώνει µια διαδικασία αποµάκρυνσης µη επιθυµητών στοιχείων Απότολατινικόόροfelt : το υλικό για το φιλτράρισµα υγρών Στη εποχή των ραδιολυχνίων:

Διαβάστε περισσότερα

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ Ενότητα: Αναγνώριση Διεργασίας - Προσαρμοστικός Έλεγχος (Process Identification) Αλαφοδήμος Κωνσταντίνος

Διαβάστε περισσότερα

L-SLAM: Μείωση διαστάσεων στην οικογένεια αλγορίθµων FastSLAM

L-SLAM: Μείωση διαστάσεων στην οικογένεια αλγορίθµων FastSLAM L-SLAM: Μείωση διαστάσεων στην οικογένεια αλγορίθµων FastSLAM Πετρίδης Βασίλειος, Ζήκος Νικόλαος Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης ΠΕΡΙΛΗΨΗ Στο παρών άρθρο προτείνεται µια νέα µέθοδος χαρτογράφησης

Διαβάστε περισσότερα

E[ (x- ) ]= trace[(x-x)(x- ) ]

E[ (x- ) ]= trace[(x-x)(x- ) ] 1 ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτό το μέρος της πτυχιακής θα ασχοληθούμε λεπτομερώς με το φίλτρο kalman και θα δούμε μια καινούρια έκδοση του φίλτρου πάνω στην εφαρμογή της γραμμικής εκτίμησης διακριτού

Διαβάστε περισσότερα

, και. είναι σταθερές (χρονικά αμετάβλητες), προκύπτει το χρονικά αμετάβλητο φίλτρο Kalman (Time Invariant Kalman Filter):

, και. είναι σταθερές (χρονικά αμετάβλητες), προκύπτει το χρονικά αμετάβλητο φίλτρο Kalman (Time Invariant Kalman Filter): 1 ΧΡΟΝΙΚΑ ΑΜΕΤΑΒΛΗΤΟ ΦΙΛΤΡΟ KALMAN Για το χρονικά αμετάβλητο μοντέλο, όπου οι μήτρες F( k 1, k) F, H( k 1) H, Q( k) Q και R( k 1) R είναι σταθερές (χρονικά αμετάβλητες), προκύπτει το χρονικά αμετάβλητο

Διαβάστε περισσότερα

Υλοποίηση localization στα Nao robots

Υλοποίηση localization στα Nao robots Υλοποίηση localization στα Nao robots Προσέγγιση φίλτρου Kalman Ιωακείμ Πέρρος Αυτόνομοι Πράκτορες Εργασία εξαμήνου Χειμερινό 2011-2012 4/4/2012 4 βασικά προβλήματα ρομποτικής πλοήγησης Mapping Localization

Διαβάστε περισσότερα

Οδηγίες σχεδίασης στο περιβάλλον Blender

Οδηγίες σχεδίασης στο περιβάλλον Blender Οδηγίες σχεδίασης στο περιβάλλον Blender Στον πραγματικό κόσμο, αντιλαμβανόμαστε τα αντικείμενα σε τρεις κατευθύνσεις ή διαστάσεις. Τυπικά λέμε ότι διαθέτουν ύψος, πλάτος και βάθος. Όταν θέλουμε να αναπαραστήσουμε

Διαβάστε περισσότερα

Σχεδίαση τροχιάς. (α) (β) (γ) (δ) Σχήµα 2.5

Σχεδίαση τροχιάς. (α) (β) (γ) (δ) Σχήµα 2.5 Σχεδίαση τροχιάς Η πιο απλή κίνηση ενός βραχίονα είναι από σηµείο σε σηµείο. Με την µέθοδο αυτή το ροµπότ κινείται από µία αρχική θέση σε µία τελική θέση χωρίς να µας ενδιαφέρει η ενδιάµεση διαδροµή που

Διαβάστε περισσότερα

ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ

ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ 1 ΦΙΛΤΡΟ KALMAN ΔΙΑΚΡΙΤΟΥ ΧΡΟΝΟΥ Σε αυτό το μέρος της πτυχιακής θα ασχοληθούμε λεπτομερώς με το φίλτρο kalman και θα δούμε μια καινούρια έκδοση του φίλτρου πάνω στην εφαρμογή της γραμμικής εκτίμησης διακριτού

Διαβάστε περισσότερα

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams Αλέκα Σεληνιωτάκη Ηράκλειο, 26/06/12 aseliniotaki@csd.uoc.gr ΑΜ: 703 1. Περίληψη Συνεισφοράς

Διαβάστε περισσότερα

προβλήµατος Το φίλτρο Kalman διαφέρει από τα συνηθισµένα προβλήµατα ΜΕΤ σε δύο χαρακτηριστικά: παραµέτρων αγνώστων

προβλήµατος Το φίλτρο Kalman διαφέρει από τα συνηθισµένα προβλήµατα ΜΕΤ σε δύο χαρακτηριστικά: παραµέτρων αγνώστων Φίλτρα Kalman Εξαγωγή των εξισώσεων τους µε βάση το κριτήριο ελαχιστοποίησης της Μεθόδου των Ελαχίστων Τετραγώνων. Αναλυτικές Μέθοδοι στη Γεωπληροφορική Μεταπτυχιακό Πρόγραµµα ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ ιατύπωση του

Διαβάστε περισσότερα

ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ

ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ Ευθύγραμμη Ομαλή Κίνηση Επιμέλεια: ΑΓΚΑΝΑΚΗΣ.ΠΑΝΑΓΙΩΤΗΣ, Φυσικός https://physicscorses.wordpress.com/ Βασικές Έννοιες Ένα σώμα καθώς κινείται περνάει από διάφορα σημεία.

Διαβάστε περισσότερα

Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης

Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης Σύνοψη Σκοπός της συγκεκριμένης άσκησης είναι ο υπολογισμός του μέτρου της στιγμιαίας ταχύτητας και της επιτάχυνσης ενός υλικού σημείου

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 07-08 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutras@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

x = r cos φ y = r sin φ

x = r cos φ y = r sin φ Αυτόνομοι Πράκτορες ΠΛΗ 513 Αναφορά Εργασίας Κίνηση Τερματοφύλακα Στο RoboCup Καρανδεινός Εκτωρ Α.Μ 2010030020 Περίληψη Το Robocup είναι ένας παγκόσμιος ετήσιος διαγωνισμός ρομποτικής στον οποίο προγραμματίζονται

Διαβάστε περισσότερα

Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο Intelligence Lab. Αυτόνομοι Πράκτορες. Κουσανάκης Βασίλης

Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο Intelligence Lab. Αυτόνομοι Πράκτορες. Κουσανάκης Βασίλης Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο 2012-2013 Intelligence Lab Αυτόνομοι Πράκτορες Κουσανάκης Βασίλης 2006030096 Αναφορά εργασίας εξαμήνου Mobile robots Rat s life Mapping Localization Είναι

Διαβάστε περισσότερα

ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ

ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ Καμπυλόγραμμες Κινήσεις Επιμέλεια: Αγκανάκης Α. Παναγιώτης, Φυσικός http://phyiccore.wordpre.com/ Βασικές Έννοιες Μέχρι στιγμής έχουμε μάθει να μελετάμε απλές κινήσεις,

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Βασισμένο σε μια εργασία των Καζαρλή, Καλόμοιρου, Μαστοροκώστα, Μπαλουκτσή, Καλαϊτζή, Βαλαή, Πετρίδη Εισαγωγή Η Εξελικτική Υπολογιστική

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 06-07 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutra@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

Πρακτική µε στοιχεία στατιστικής ανάλυσης

Πρακτική µε στοιχεία στατιστικής ανάλυσης Πρακτική µε στοιχεία στατιστικής ανάλυσης 1. Για να υπολογίσουµε µια ποσότητα q = x 2 y xy 2, µετρήσαµε τα µεγέθη x και y και βρήκαµε x = 3.0 ± 0.1και y = 2.0 ± 0.1. Να βρεθεί η ποσότητα q και η αβεβαιότητά

Διαβάστε περισσότερα

Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ

Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου Γεωργαρά Αθηνά (A.M. 2011030065) ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Διαβάστε περισσότερα

Κεφάλαιο 10 Περιστροφική Κίνηση. Copyright 2009 Pearson Education, Inc.

Κεφάλαιο 10 Περιστροφική Κίνηση. Copyright 2009 Pearson Education, Inc. Κεφάλαιο 10 Περιστροφική Κίνηση Περιεχόµενα Κεφαλαίου 10 Γωνιακές Ποσότητες Διανυσµατικός Χαρακτήρας των Γωνιακών Ποσοτήτων Σταθερή γωνιακή Επιτάχυνση Ροπή Δυναµική της Περιστροφικής Κίνησης, Ροπή και

Διαβάστε περισσότερα

ΕΝΤΟΠΙΣΜΟΣ ΘΕΣΗΣ ΚΑΙ ΧΑΡΤΗΓΡΑΦΗΣΗ

ΕΝΤΟΠΙΣΜΟΣ ΘΕΣΗΣ ΚΑΙ ΧΑΡΤΗΓΡΑΦΗΣΗ ΕΝΤΟΠΙΣΜΟΣ ΘΕΣΗΣ ΚΑΙ ΧΑΡΤΗΓΡΑΦΗΣΗ Δρ Γιώργος Α. Δημητρίου Ευφυή Κινούμενα Ρομπότ 139 Ρομποτικός Εντοπισμός Θέσης Δεδομένα Χάρτης του περιβάλλοντος Ακολουθία παρατηρήσεων Ζητούμενο Εκτίμηση της θέσης του

Διαβάστε περισσότερα

) = a ο αριθµός των µηχανών n ο αριθµός των δειγµάτων που παίρνω από κάθε µηχανή

) = a ο αριθµός των µηχανών n ο αριθµός των δειγµάτων που παίρνω από κάθε µηχανή Ανάλυση Συνδιακύµανσης Alsis of Covrice Η ανάλυση συνδιακύµανσης είναι µία άλλη τεχνική για να βελτιώσουµε την ακρίβεια της προσέγγισης του µοντέλου µας στο πείραµα. Ας υποθέσουµε ότι σ ένα πείραµα εκτός

Διαβάστε περισσότερα

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού Κινητά Δίκτυα Επικοινωνιών Συμπληρωματικό υλικό Προσαρμοστική Ισοστάθμιση Καναλιού Προσαρμοστικοί Ισοσταθμιστές Για να υπολογίσουμε τους συντελεστές του ισοσταθμιστή MMSE, απαιτείται να λύσουμε ένα γραμμικό

Διαβάστε περισσότερα

Είδη Μεταβλητών. κλίµακα µέτρησης

Είδη Μεταβλητών. κλίµακα µέτρησης ΠΕΡΙΕΧΟΜΕΝΑ Κεφάλαιο 1 Εισαγωγικές Έννοιες 19 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Η Μεταβλητότητα Η Στατιστική Ανάλυση Η Στατιστική και οι Εφαρµοσµένες Επιστήµες Στατιστικός Πληθυσµός και Δείγµα Το στατιστικό

Διαβάστε περισσότερα

Q 12. c 3 Q 23. h 12 + h 23 + h 31 = 0 (6)

Q 12. c 3 Q 23. h 12 + h 23 + h 31 = 0 (6) Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Πολιτικών Μηχανικών Τοµέας Υδατικών Πόρων Μάθηµα: Τυπικά Υδραυλικά Έργα Μέρος 2: ίκτυα διανοµής Άσκηση E0: Μαθηµατική διατύπωση µοντέλου επίλυσης απλού δικτύου διανοµής

Διαβάστε περισσότερα

ισδιάστατοι μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί

ισδιάστατοι μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί Πολλά προβλήματα λύνονται μέσω δισδιάστατων απεικονίσεων ενός μοντέλου. Μεταξύ αυτών και τα προβλήματα κίνησης, όπως η κίνηση ενός συρόμενου μηχανισμού.

Διαβάστε περισσότερα

Αριθμητικές μέθοδοι σε ταλαντώσεις μηχανολογικών συστημάτων

Αριθμητικές μέθοδοι σε ταλαντώσεις μηχανολογικών συστημάτων ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Καθηγητής κ. Σ. Νατσιάβας Αριθμητικές μέθοδοι σε ταλαντώσεις μηχανολογικών συστημάτων Στοιχεία Φοιτητή Ονοματεπώνυμο: Νατσάκης Αναστάσιος Αριθμός Ειδικού Μητρώου:

Διαβάστε περισσότερα

Μηχανισµοί & Εισαγωγή στο Σχεδιασµό Μηχανών Ακαδηµαϊκό έτος: Ε.Μ.Π. Σχολή Μηχανολόγων Μηχανικών - Εργαστήριο υναµικής και Κατασκευών - 3.

Μηχανισµοί & Εισαγωγή στο Σχεδιασµό Μηχανών Ακαδηµαϊκό έτος: Ε.Μ.Π. Σχολή Μηχανολόγων Μηχανικών - Εργαστήριο υναµικής και Κατασκευών - 3. ΜΗΧΑΝΙΣΜΟΙ & ΕΙΣΑΓΩΓΗ ΣΤΟ ΣΧΕ ΙΑΣΜΟ ΜΗΧΑΝΩΝ - 3.1 - Cpright ΕΜΠ - Σχολή Μηχανολόγων Μηχανικών - Εργαστήριο υναµικής και Κατασκευών - 2012. Με επιφύλαξη παντός δικαιώµατος. All rights reserved. Απαγορεύεται

Διαβάστε περισσότερα

Συστήματα συντεταγμένων

Συστήματα συντεταγμένων Κεφάλαιο. Για να δημιουργήσουμε τρισδιάστατα αντικείμενα, που μπορούν να παρασταθούν στην οθόνη του υπολογιστή ως ένα σύνολο από γραμμές, επίπεδες πολυγωνικές επιφάνειες ή ακόμη και από ένα συνδυασμό από

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων HMY 795: Αναγνώριση Προτύπων Διάλεξη 6 Κατανομές πιθανότητας και εκτίμηση παραμέτρων Κατανομές πιθανότητας και εκτίμηση παραμέτρων κανονικές τυχαίες μεταβλητές Εκτίμηση παραμέτρων δυαδικές τυχαίες μεταβλητές

Διαβάστε περισσότερα

ΠΕΙΡΑΜΑΤΙΚΕΣ ΠΡΟΣΟΜΟΙΩΣΕΙΣ ΚΕΦΑΛΑΙΟ 4. είναι η πραγματική απόκριση του j δεδομένου (εκπαίδευσης ή ελέγχου) και y ˆ j

ΠΕΙΡΑΜΑΤΙΚΕΣ ΠΡΟΣΟΜΟΙΩΣΕΙΣ ΚΕΦΑΛΑΙΟ 4. είναι η πραγματική απόκριση του j δεδομένου (εκπαίδευσης ή ελέγχου) και y ˆ j Πειραματικές Προσομοιώσεις ΚΕΦΑΛΑΙΟ 4 Όλες οι προσομοιώσεις έγιναν σε περιβάλλον Matlab. Για την υλοποίηση της μεθόδου ε-svm χρησιμοποιήθηκε το λογισμικό SVM-KM που αναπτύχθηκε στο Ecole d Ingenieur(e)s

Διαβάστε περισσότερα

Ακαδηµαϊκό Έτος , Εαρινό Εξάµηνο ιδάσκων Καθ.: Νίκος Τσαπατσούλης

Ακαδηµαϊκό Έτος , Εαρινό Εξάµηνο ιδάσκων Καθ.: Νίκος Τσαπατσούλης ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΒΕΣ 6: ΠΡΟΣΑΡΜΟΣΤΙΚΑ ΣΥΣΤΗΜΑΤΑ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΕΣ Ακαδηµαϊκό Έτος 26 27, Εαρινό Εξάµηνο Καθ.: Νίκος Τσαπατσούλης ΕΡΩΤΗΣΕΙΣ ΓΙΑ ΕΠΑΝΑΛΗΨΗ Το

Διαβάστε περισσότερα

Ελεγκτικής. ΤΕΙ Ηπείρου (Παράρτηµα Πρέβεζας)

Ελεγκτικής. ΤΕΙ Ηπείρου (Παράρτηµα Πρέβεζας) Πληροφοριακά Συστήµατα ιοίκησης Management Information Systems Εργαστήριο 2 Τµήµα Χρηµατοοικονοµικής και Ελεγκτικής ΤΕΙ Ηπείρου (Παράρτηµα Πρέβεζας) ΑΝΤΙΚΕΙΜΕΝΟ: Προσοµοίωση (Simulation) και τυχαίες µεταβλητές

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 1: Μέθοδοι Αναγνώρισης Προτύπων Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Αυτόνομοι Πράκτορες(ΠΛΗ513)

Αυτόνομοι Πράκτορες(ΠΛΗ513) Αυτόνομοι Πράκτορες(ΠΛΗ513) Παρουσίαση Εργασίας Εξαμήνου Mapping a Base Station Location in a Wireless Network Using Particle Filters Αλιμπέρτης Εμμανουήλ Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Intelligence Lab

Διαβάστε περισσότερα

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα Τµήµα Διοίκησης Επιχειρήσεων Τει Δυτικής Ελλάδας Μεσολόγγι Δρ. Α. Στεφανή Διάλεξη 5 2 Εγκυροποίηση Λογισµικού Εγκυροποίηση Λογισµικού

Διαβάστε περισσότερα

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΠΛΗ 513

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΠΛΗ 513 ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΠΛΗ 513 Αναφορά Εργασίας Εξαμήνου Χειμερινό Εξάμηνο 2011-2012 Γεωργάκης Γεώργιος 2006030111 RobotStadium 2012 Εισαγωγή Το Robostadium είναι ένας διαγωνισμός στο διαδίκτυο κατά τα πρότυπα

Διαβάστε περισσότερα

3. Προσομοίωση ενός Συστήματος Αναμονής.

3. Προσομοίωση ενός Συστήματος Αναμονής. 3. Προσομοίωση ενός Συστήματος Αναμονής. 3.1. Διατύπωση του Προβλήματος. Τα συστήματα αναμονής (queueing systems), βρίσκονται πίσω από τα περισσότερα μοντέλα μελέτης της απόδοσης υπολογιστικών συστημάτων,

Διαβάστε περισσότερα

Σχεδιαστικές προδιαγραφές

Σχεδιαστικές προδιαγραφές Εισαγωγή Τα τελευταία χρόνια, ένα σημαντικό πεδίο δράσης της επιστήμης της Ρομποτικής αφορά στον τομέα της ανάπτυξης και εξέλιξης αυτόνομων οχημάτων επίγειων, εναέριων, πλωτών, υποβρύχιων και διαστημικών.

Διαβάστε περισσότερα

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας Τεχνικές Μείωσης Διαστάσεων Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας 1 Εισαγωγή Το μεγαλύτερο μέρος των δεδομένων που καλούμαστε να επεξεργαστούμε είναι πολυδιάστατα.

Διαβάστε περισσότερα

RobotArmy Περίληψη έργου

RobotArmy Περίληψη έργου RobotArmy Περίληψη έργου Στην σημερινή εποχή η ανάγκη για αυτοματοποίηση πολλών διαδικασιών γίνεται όλο και πιο έντονη. Συνέχεια ακούγονται λέξεις όπως : βελτιστοποίηση ποιότητας ζωής, αυτοματοποίηση στον

Διαβάστε περισσότερα

Κεφάλαιο 10 Περιστροφική Κίνηση. Copyright 2009 Pearson Education, Inc.

Κεφάλαιο 10 Περιστροφική Κίνηση. Copyright 2009 Pearson Education, Inc. Κεφάλαιο 10 Περιστροφική Κίνηση Περιεχόμενα Κεφαλαίου 10 Γωνιακές Ποσότητες Διανυσματικός Χαρακτήρας των Γωνιακών Ποσοτήτων Σταθερή γωνιακή Επιτάχυνση Ροπή Δυναμική της Περιστροφικής Κίνησης, Ροπή και

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 3: Στοχαστικά Συστήματα Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων. Διάλεξη 2

HMY 795: Αναγνώριση Προτύπων. Διάλεξη 2 HMY 795: Αναγνώριση Προτύπων Διάλεξη 2 Επισκόπηση θεωρίας πιθανοτήτων Θεωρία πιθανοτήτων Τυχαία μεταβλητή: Μεταβλητή της οποίας δε γνωρίζουμε με βεβαιότητα την τιμή (αντίθετα με τις ντετερμινιστικές μεταβλητές)

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ ΠΡΩΤΟ: ΠΙΘΑΝΟΤΗΤΕΣ 11 ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 13

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ ΠΡΩΤΟ: ΠΙΘΑΝΟΤΗΤΕΣ 11 ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 13 ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ ΠΡΩΤΟ: ΠΙΘΑΝΟΤΗΤΕΣ 11 ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 13 ΚΕΦΑΛΑΙΟ 2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 20 2.1 Αβεβαιότητα, Τυχαία Διαδικασία, και Συναφείς Έννοιες 20 2.1.1 Αβεβαιότητα

Διαβάστε περισσότερα

Φίλτρα Kalman. Αναλυτικές μέθοδοι στη Γεωπληροφορική. ιατύπωση του βασικού προβλήματος. προβλήματος. μοντέλο. Πρωτεύων μοντέλο

Φίλτρα Kalman. Αναλυτικές μέθοδοι στη Γεωπληροφορική. ιατύπωση του βασικού προβλήματος. προβλήματος. μοντέλο. Πρωτεύων μοντέλο Φίλτρα Kalman Εξαγωγή των εξισώσεων τους με βάση το κριτήριο ελαχιστοποίησης της Μεθόδου των Ελαχίστων Τετραγώνων. Αναλυτικές Μέθοδοι στη Γεωπληροφορική Μεταπτυχιακό Πρόγραμμα ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ ιατύπωση του

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ. Εργαστήριο 8 ο. Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ. Εργαστήριο 8 ο. Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Εργαστήριο 8 ο Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα Βασική Θεωρία Σε ένα σύστημα μετάδοσης

Διαβάστε περισσότερα

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας Βασικές Έννοιες Πτυχιακή Εργασία 2015 Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping). Η Ασύρματη Επικοινωνία, χρησιμοποιώντας το πρωτόκολλο WiFi.

Διαβάστε περισσότερα

Κεφάλαιο M4. Κίνηση σε δύο διαστάσεις

Κεφάλαιο M4. Κίνηση σε δύο διαστάσεις Κεφάλαιο M4 Κίνηση σε δύο διαστάσεις Κινηµατική σε δύο διαστάσεις Θα περιγράψουµε τη διανυσµατική φύση της θέσης, της ταχύτητας, και της επιτάχυνσης µε περισσότερες λεπτοµέρειες. Θα µελετήσουµε την κίνηση

Διαβάστε περισσότερα

Προτεινόμενο διαγώνισμα Φυσικής Α Λυκείου

Προτεινόμενο διαγώνισμα Φυσικής Α Λυκείου Προτεινόμενο διαγώνισμα Φυσικής Α Λυκείου Θέμα 1 ο Σε κάθε μια από τις παρακάτω προτάσεις 1-5 να επιλέξετε τη μια σωστή απάντηση: 1. Όταν ένα σώμα ισορροπεί τότε: i. Ο ρυθμός μεταβολής της ταχύτητάς του

Διαβάστε περισσότερα

Εισαγωγή στα Προσαρµοστικά Συστήµατα

Εισαγωγή στα Προσαρµοστικά Συστήµατα ΒΕΣ 06 Προσαρµοστικά Συστήµατα στις Τηλεπικοινωνίες Εισαγωγή στα Προσαρµοστικά Συστήµατα Νικόλας Τσαπατσούλης Επίκουρος Καθηγητής Π..407/80 Τµήµα Επιστήµη και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου

Διαβάστε περισσότερα

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

Διαβάστε περισσότερα

Στοχαστικές Στρατηγικές

Στοχαστικές Στρατηγικές Στοχαστικές Στρατηγικές 3 η ενότητα: Εισαγωγή στα στοχαστικά προβλήματα διαδρομής Τμήμα Μαθηματικών, ΑΠΘ Ακαδημαϊκό έτος 2018-2019 Χειμερινό Εξάμηνο Παπάνα Αγγελική Μεταδιδακτορική ερευνήτρια, ΑΠΘ & Πανεπιστήμιο

Διαβάστε περισσότερα

Κεφάλαιο 8 Συνεχείς Κατανομές Πιθανοτήτων

Κεφάλαιο 8 Συνεχείς Κατανομές Πιθανοτήτων Κεφάλαιο 8 Συνεχείς Κατανομές Πιθανοτήτων Copyright 2009 Cengage Learning 8.1 Συναρτήσεις Πυκνότητας Πιθανοτήτων Αντίθετα με τη διακριτή τυχαία μεταβλητή που μελετήσαμε στο Κεφάλαιο 7, μια συνεχής τυχαία

Διαβάστε περισσότερα

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π.

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα 005 - Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Δυναμικός Προγραμματισμός με Μεθόδους Monte Carlo: 1. Μάθηση Χρονικών Διαφορών (Temporal-Difference Learning) 2. Στοχαστικός

Διαβάστε περισσότερα

, όπου οι σταθερές προσδιορίζονται από τις αρχικές συνθήκες.

, όπου οι σταθερές προσδιορίζονται από τις αρχικές συνθήκες. Στην περίπτωση της ταλάντωσης µε κρίσιµη απόσβεση οι δύο γραµµικώς ανεξάρτητες λύσεις εκφυλίζονται (καταλήγουν να ταυτίζονται) Στην περιοχή ασθενούς απόσβεσης ( ) δύο γραµµικώς ανεξάρτητες λύσεις είναι

Διαβάστε περισσότερα

Κλασικη ιαφορικη Γεωµετρια

Κλασικη ιαφορικη Γεωµετρια Αριστοτελειο Πανεπιστηµιο Θεσσαλονικης Σχολη Θετικων Επιστηµων, Τµηµα Μαθηµατικων, Τοµεας Γεωµετριας Κλασικη ιαφορικη Γεωµετρια Πρώτη Εργασία, 2018-19 1 Προαπαιτούµενες γνώσεις και ϐασική προετοιµασία

Διαβάστε περισσότερα

ΕΦΑΠΤΟΜΕΝΗ ΓΩΝΙΑΣ ΚΑΙ ΚΛΙΣΗ ΕΥΘΕΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β' ΓΥΜΝΑΣΙΟΥ

ΕΦΑΠΤΟΜΕΝΗ ΓΩΝΙΑΣ ΚΑΙ ΚΛΙΣΗ ΕΥΘΕΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β' ΓΥΜΝΑΣΙΟΥ 184 1 ο ΣΥΝΕΔΡΙΟ ΣΤΗ ΣΥΡΟ ΤΠΕ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ ΕΦΑΠΤΟΜΕΝΗ ΓΩΝΙΑΣ ΚΑΙ ΚΛΙΣΗ ΕΥΘΕΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β' ΓΥΜΝΑΣΙΟΥ Ιωάννου Στυλιανός Εκπαιδευτικός Μαθηματικός Β θμιας Εκπ/σης Παιδαγωγική αναζήτηση Η τριγωνομετρία

Διαβάστε περισσότερα

Στατιστική Ι. Ενότητα 7: Κανονική Κατανομή. Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών

Στατιστική Ι. Ενότητα 7: Κανονική Κατανομή. Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών Στατιστική Ι Ενότητα 7: Κανονική Κατανομή Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη μιας προσαρμοστικής πολιτικής αντικατάστασης αρχείων, με χρήση

Διαβάστε περισσότερα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv Σ ΤΑΤ Ι Σ Τ Ι Κ Η i Statisticum collegium iv Στατιστική Συμπερασματολογία Ι Σημειακές Εκτιμήσεις Διαστήματα Εμπιστοσύνης Στατιστική Συμπερασματολογία (Statistical Inference) Το πεδίο της Στατιστικής Συμπερασματολογία,

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΛΟΓΟΣ 7. ΚΕΦΑΛΑΙΟ 1: Εισαγωγικές Έννοιες 13

ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΛΟΓΟΣ 7. ΚΕΦΑΛΑΙΟ 1: Εισαγωγικές Έννοιες 13 ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΛΟΓΟΣ 7 ΚΕΦΑΛΑΙΟ 1: Εισαγωγικές Έννοιες 13 1.1. Εισαγωγή 13 1.2. Μοντέλο ή Υπόδειγμα 13 1.3. Η Ανάλυση Παλινδρόμησης 16 1.4. Το γραμμικό μοντέλο Παλινδρόμησης 17 1.5. Πρακτική χρησιμότητα

Διαβάστε περισσότερα

Β Γραφικές παραστάσεις - Πρώτο γράφημα Σχεδιάζοντας το μήκος της σανίδας συναρτήσει των φάσεων της σελήνης μπορείτε να δείτε αν υπάρχει κάποιος συσχετισμός μεταξύ των μεγεθών. Ο συνήθης τρόπος γραφικής

Διαβάστε περισσότερα

1. Κινηµατική. x dt (1.1) η ταχύτητα είναι. και η επιτάχυνση ax = lim = =. (1.2) Ο δεύτερος νόµος του Νεύτωνα παίρνει τη µορφή: (1.

1. Κινηµατική. x dt (1.1) η ταχύτητα είναι. και η επιτάχυνση ax = lim = =. (1.2) Ο δεύτερος νόµος του Νεύτωνα παίρνει τη µορφή: (1. 1. Κινηµατική Βιβλιογραφία C. Kittel W. D. Knight M. A. Rueman A. C. Helmholz και B. J. Moe Μηχανική. Πανεπιστηµιακές Εκδόσεις Ε.Μ.Π. 1998. Κεφ.. {Μαθηµατικό Συµπλήρωµα Μ1 Παράγωγος} {Μαθηµατικό Συµπλήρωµα

Διαβάστε περισσότερα

Robot Stadium Nao Controller

Robot Stadium Nao Controller Σκοπός Δημιουργία αυτόνομου πράκτορα για το ρομπότ Nao, ικανού να παίξει ποδόσφαιρο 3x3 στο περιβάλλον προσωμοίωσης Webots Συνησφορά στην ομάδα Κουρέτες του Π.Κ. Ευσεβής Πόθος Νίκη στο διαγωνισμός RobotStadium.org

Διαβάστε περισσότερα

Ανασκόπηση θεωρίας ελαχίστων τετραγώνων και βέλτιστης εκτίμησης παραμέτρων

Ανασκόπηση θεωρίας ελαχίστων τετραγώνων και βέλτιστης εκτίμησης παραμέτρων Τοπογραφικά Δίκτυα και Υπολογισμοί 5 ο εξάμηνο, Ακαδημαϊκό Έτος 2017-2018 Ανασκόπηση θεωρίας ελαχίστων τετραγώνων και βέλτιστης εκτίμησης παραμέτρων Χριστόφορος Κωτσάκης Τμήμα Αγρονόμων και Τοπογράφων

Διαβάστε περισσότερα

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ. Κεφάλαιο 10. Εισαγωγή στην εκτιμητική

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ. Κεφάλαιο 10. Εισαγωγή στην εκτιμητική ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΤΡΑΣ Εργαστήριο Λήψης Αποφάσεων & Επιχειρησιακού Προγραμματισμού Καθηγητής Ι. Μητρόπουλος ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Μηχανική ΙI Ροή στο χώρο των φάσεων, θεώρηµα Liouville

Μηχανική ΙI Ροή στο χώρο των φάσεων, θεώρηµα Liouville Τµήµα Π. Ιωάννου & Θ. Αποστολάτου 16/5/2000 Μηχανική ΙI Ροή στο χώρο των φάσεων, θεώρηµα Liouville Στη Χαµιλτονιανή θεώρηση η κατάσταση του συστήµατος προσδιορίζεται κάθε στιγµή από ένα και µόνο σηµείο

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΕΤΡΙΑ. Παπάνα Αγγελική

ΟΙΚΟΝΟΜΕΤΡΙΑ. Παπάνα Αγγελική ΟΙΚΟΝΟΜΕΤΡΙΑ Ενότητα 2: Ανασκόπηση βασικών εννοιών Στατιστικής και Πιθανοτήτων Παπάνα Αγγελική Μεταδιδακτορική ερευνήτρια, ΑΠΘ E-mail: angeliki.papana@gmail.com, agpapana@auth.gr Webpage: http://users.auth.gr/agpapana

Διαβάστε περισσότερα

Βαγγέλης Τσιλιγωνέας. Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήματα M.Sc. In Information Systems

Βαγγέλης Τσιλιγωνέας. Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήματα M.Sc. In Information Systems Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήματα M.Sc. In Information Systems Βαγγέλης Τσιλιγωνέας Εξεταστές: Σατρατζέμη Μαρία Οικονομίδης Αναστάσιος Επιβλέπων Καθηγητής: Ξυνόγαλος

Διαβάστε περισσότερα

HMY 795: Αναγνώριση Προτύπων

HMY 795: Αναγνώριση Προτύπων HMY 795: Αναγνώριση Προτύπων Διάλεξη 2 Επισκόπηση θεωρίας πιθανοτήτων Τυχαίες μεταβλητές: Βασικές έννοιες Τυχαία μεταβλητή: Μεταβλητή της οποίας δε γνωρίζουμε με βεβαιότητα την τιμή (σε αντίθεση με τις

Διαβάστε περισσότερα

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

Διαβάστε περισσότερα

----------Εισαγωγή στη Χρήση του SPSS for Windows ------------- Σελίδα: 0------------

----------Εισαγωγή στη Χρήση του SPSS for Windows ------------- Σελίδα: 0------------ ----------Εισαγωγή στη Χρήση του SPSS for Windows ------------- Σελίδα: 0------------ ΚΕΦΑΛΑΙΟ 9 ο 9.1 ηµιουργία µοντέλων πρόβλεψης 9.2 Απλή Γραµµική Παλινδρόµηση 9.3 Αναλυτικά για το ιάγραµµα ιασποράς

Διαβάστε περισσότερα

2. ΕΠΙΛΟΓΗ ΜΟΝΤΕΛΟΥ ΜΕ ΤΗ ΜΕΘΟΔΟ ΤΟΥ ΑΠΟΚΛΕΙΣΜΟΥ ΜΕΤΑΒΛΗΤΩΝ (Backward Elimination Procedure) Στην στατιστική βιβλιογραφία υπάρχουν πολλές μέθοδοι για

2. ΕΠΙΛΟΓΗ ΜΟΝΤΕΛΟΥ ΜΕ ΤΗ ΜΕΘΟΔΟ ΤΟΥ ΑΠΟΚΛΕΙΣΜΟΥ ΜΕΤΑΒΛΗΤΩΝ (Backward Elimination Procedure) Στην στατιστική βιβλιογραφία υπάρχουν πολλές μέθοδοι για 2. ΕΠΙΛΟΓΗ ΜΟΝΤΕΛΟΥ ΜΕ ΤΗ ΜΕΘΟΔΟ ΤΟΥ ΑΠΟΚΛΕΙΣΜΟΥ ΜΕΤΑΒΛΗΤΩΝ (Backward Elimination Procedure) Στην στατιστική βιβλιογραφία υπάρχουν πολλές μέθοδοι για τον καθορισμό του καλύτερου υποσυνόλου από ένα σύνολο

Διαβάστε περισσότερα

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Western Macedonia University of Applied Sciences Κοίλα Κοζάνης Kozani GR 50100

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Western Macedonia University of Applied Sciences Κοίλα Κοζάνης Kozani GR 50100 Ποσοτικές Μέθοδοι Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Western Macedonia University of Applied Sciences Κοίλα Κοζάνης 50100 Kozani GR 50100 Απλή Παλινδρόμηση Η διερεύνηση του τρόπου συμπεριφοράς

Διαβάστε περισσότερα

ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ

ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΣΤΟΧΑΣΤΙΚΑ ΣΗΜΑΤΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ Ακαδηµαϊκό Έτος 007-008 ιδάσκων: Ν. Παπανδρέου (Π.. 407/80) Πανεπιστήµιο Πατρών Τµήµα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής 1η Εργαστηριακή Άσκηση Αναγνώριση

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: βελτιστοποίηση χωρίς περιορισμούς Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 7-8 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

κριτήρια αξιολόγησης ΚΕΦΑΛΑΙΟ 5 1o Κριτήριο αξιολόγησης

κριτήρια αξιολόγησης ΚΕΦΑΛΑΙΟ 5 1o Κριτήριο αξιολόγησης 1o Κριτήριο αξιολόγησης Θέμα 1ο α Δύο σφαίρες Α και Β συγκρούονται κεντρικά ελαστικά Ποια ή ποιες από τις παρακάτω προτάσεις είναι σωστές και γιατί; Α Η σφαίρα Α θα γυρίσει προς τα πίσω αν είναι m A

Διαβάστε περισσότερα

M m l B r mglsin mlcos x ml 2 1) Να εισαχθεί το µοντέλο στο simulink ορίζοντας από πριν στο MATLAB τις µεταβλητές Μ,m,br

M m l B r mglsin mlcos x ml 2 1) Να εισαχθεί το µοντέλο στο simulink ορίζοντας από πριν στο MATLAB τις µεταβλητές Μ,m,br ΑΣΚΗΣΗ 1 Έστω ένα σύστηµα εκκρεµούς όπως φαίνεται στο ακόλουθο σχήµα: Πάνω στη µάζα Μ επιδρά µια οριζόντια δύναµη F l την οποία και θεωρούµε σαν είσοδο στο σύστηµα. Έξοδος του συστήµατος θεωρείται η απόσταση

Διαβάστε περισσότερα

ΔΥΝΑΜΙΚΗ & ΕΛΕΓΧΟΣ - ΕΡΓΑΣΤΗΡΙΟ

ΔΥΝΑΜΙΚΗ & ΕΛΕΓΧΟΣ - ΕΡΓΑΣΤΗΡΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΑΡΑΓΩΓΗΣ, ΑΥΤΟΜΑΤΙΣΜΟΥ & ΡΟΜΠΟΤΙΚΗΣ ΔΥΝΑΜΙΚΗ & ΕΛΕΓΧΟΣ - ΕΡΓΑΣΤΗΡΙΟ ΧΕΙΜ17-18 ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 2 ΕΛΕΓΧΟΣ ΤΑΧΥΤΗΤΑΣ

Διαβάστε περισσότερα

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Γιάννης Γαροφαλάκης Αν. Καθηγητής ιατύπωση του προβλήματος (1) Τα συστήματα αναμονής (queueing systems), βρίσκονται

Διαβάστε περισσότερα

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ Βασίλης Δ. Ανδριτσάνος Δρ. Αγρονόμος - Τοπογράφος Μηχανικός ΑΠΘ Επίκουρος Καθηγητής ΤΕΙ Αθήνας 3ο εξάμηνο http://eclass.teiath.gr Παρουσιάσεις,

Διαβάστε περισσότερα

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46 ΠEΡΙΕΧΟΜΕΝΑ Από το Γυμνάσιο στο Λύκειο................................................ 7 1. Το Λεξιλόγιο της Λογικής.............................................. 11. Σύνολα..............................................................

Διαβάστε περισσότερα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

Σ ΤΑΤ Ι Σ Τ Ι Κ Η ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ Σ ΤΑΤ Ι Σ Τ Ι Κ Η i ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ Κατανομή Δειγματοληψίας του Δειγματικού Μέσου Ο Δειγματικός Μέσος X είναι μια Τυχαία Μεταβλητή. Καθώς η επιλογή και χρήση διαφορετικών δειγμάτων από έναν

Διαβάστε περισσότερα

Στατιστική Ι. Ανάλυση Παλινδρόμησης

Στατιστική Ι. Ανάλυση Παλινδρόμησης Στατιστική Ι Ανάλυση Παλινδρόμησης Ανάλυση παλινδρόμησης Η πρόβλεψη πωλήσεων, εσόδων, κόστους, παραγωγής, κτλ. είναι η βάση του επιχειρηματικού σχεδιασμού. Η ανάλυση παλινδρόμησης και συσχέτισης είναι

Διαβάστε περισσότερα

Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ)

Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ) Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ) ΜΙΧΑΛΗΣ ΤΖΟΥΜΑΣ ΕΣΠΟΤΑΤΟΥ 3 ΑΓΡΙΝΙΟ. ΠΕΡΙΛΗΨΗ Η έννοια της συνάρτησης είναι στενά συνυφασµένη µε τον πίνακα τιµών και τη γραφική παράσταση.

Διαβάστε περισσότερα

Δομή Ηλεκτρονικού υπολογιστή

Δομή Ηλεκτρονικού υπολογιστή Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann

Διαβάστε περισσότερα

οµή δικτύου ΣΧΗΜΑ 8.1

οµή δικτύου ΣΧΗΜΑ 8.1 8. ίκτυα Kohonen Το µοντέλο αυτό των δικτύων προτάθηκε το 1984 από τον Kοhonen, και αφορά διαδικασία εκµάθησης χωρίς επίβλεψη, δηλαδή δεν δίδεται καµία εξωτερική επέµβαση σχετικά µε τους στόχους που πρέπει

Διαβάστε περισσότερα

Σύστημα (system) είναι ένα σύνολο φυσικών στοιχείων, πραγμάτων ατόμων, μεγεθών ή εννοιών, που σχηματίζουν μιαν ενότητα και δρα σαν μια ενότητα.

Σύστημα (system) είναι ένα σύνολο φυσικών στοιχείων, πραγμάτων ατόμων, μεγεθών ή εννοιών, που σχηματίζουν μιαν ενότητα και δρα σαν μια ενότητα. Σύστημα (system) είναι ένα σύνολο φυσικών στοιχείων, πραγμάτων ατόμων, μεγεθών ή εννοιών, που σχηματίζουν μιαν ενότητα και δρα σαν μια ενότητα. π.χ. Το ηλιακό σύστημα, το σύνολο δηλαδή των πλανητών του

Διαβάστε περισσότερα

Φυσικά μεγέθη. Φυσική α λυκείου ΕΙΣΑΓΩΓΗ. Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα. Β.

Φυσικά μεγέθη. Φυσική α λυκείου ΕΙΣΑΓΩΓΗ. Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα. Β. ΕΙΣΑΓΩΓΗ Φυσικά μεγέθη Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα Β. τα διανυσματικά Μονόμετρα ονομάζουμε τα μεγέθη εκείνα τα οποία για να τα γνωρίζουμε χρειάζεται να ξέρουμε

Διαβάστε περισσότερα

Τυχαία μεταβλητή (τ.μ.)

Τυχαία μεταβλητή (τ.μ.) Τυχαία μεταβλητή (τ.μ.) Τυχαία μεταβλητή (τ.μ.) είναι μια συνάρτηση X ( ) με πεδίο ορισμού το δειγματικό χώρο Ω του πειράματος και πεδίο τιμών ένα υποσύνολο πραγματικών αριθμών που συμβολίζουμε συνήθως

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΘΕΜΑ ο 2.5 µονάδες ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 2 Σεπτεµβρίου 2005 5:00-8:00 Σχεδιάστε έναν αισθητήρα ercetro

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

Ταυτότητα εκπαιδευτικού σεναρίου. Γνώσεις και πρότερες ιδέες των μαθητών. Σκοπός και στόχοι

Ταυτότητα εκπαιδευτικού σεναρίου. Γνώσεις και πρότερες ιδέες των μαθητών. Σκοπός και στόχοι Τίτλος: Υποδοχή εξωγήινων Ταυτότητα εκπαιδευτικού σεναρίου Σύντομη περιγραφή: Οι μαθητές και οι μαθήτριες καλούνται να κάνουν μια απλή κατασκευή με την χρήση του εκπαιδευτικού πακέτου Lego NXT Mindstorms.

Διαβάστε περισσότερα