Σκοπός Δημιουργία αυτόνομου πράκτορα για το ρομπότ Nao, ικανού να παίξει ποδόσφαιρο 3x3 στο περιβάλλον προσωμοίωσης Webots Συνησφορά στην ομάδα Κουρέτες του Π.Κ. Ευσεβής Πόθος Νίκη στο διαγωνισμός RobotStadium.org αντίστοιχο του RoboCup Λήξη διαγωνισμού 14 Ιουλίου 2008
Ικανότητες Πράκτορα Δυνατότητα Κινήσεων Εμπρός, 5 βήματα εμπρός, πίσω Στροφή δεξιά, αριστερά, 30,40,60,180 μοίρες Πλάγιος βηματισμός Σκήψιμο μπροστά, ανάνηψη από πτώσεις Πρόβλεψη θέσης Αντίληψη χώρου (beta) Αναγνώριση τερμάτων, Localization Update Αναζήτηση μπάλας Μετακίνηση προς την διεύθυνση της μπάλας
Κινήσεις Ένα configuration ανά 40 ms Χρήση ακολουθιών configuration Ακολουθίες κινήσεων Webots Ελαχιστοποίηση μήκους ακολουθιών Συσχετισμένη πληροφορία κινήσεων Δειγματοληψία αρχικών ακολουθιών Λιγότερη πληροφορία δυνατότητα ευκολότερης επεξεργασίας Υλοποίηση παρεμβολής Ομαλή μετάβαση μεταξύ configuration Δυνατότητα Μεταβολής αριθμού βημάτων κίνησης
Τηλεκατεύθυνση Παίκτη
Monte Carlo Localization Particles Filter Προσέγγιση κατανομής με πληθυσμό δειγμάτων Ενημέρωση Sampling Importance Resampling particle filter (SIR) διάδοση σωματιδίων (μοντέλο κίνησης) ανάθεση βάρους ατομικά (μοντέλο παρατήρησης) αναδειγματοληψία (από τον πληθυσμό των σωματιδίων μετά τη διάδοση) Θέση ρομποτ Robust Mean: μέση τιμή των σωματιδίων που απέχουν λιγότερο από e από το σωματίδιο με το μεγαλύτερο βάρος.
Πρόβλεψη Εξέληξη δίκυκλου μοντέλου Δεδομένα < Θέση x, θέση y, διεύθυνση σώματος γωνία θ > Μοντέλο κίνησης Διανιόμενη απόσταση Σχετική διέυθυνση κίνησης, γωνία σε σχέση με το σώμα. Διαμέρηση κίνησης σε Κ βήματα όσα χρειάζονται για να γίνει μια κίνηση, εμφάνηση πρόβλεψης.
Γωνία σώματος Νέα = παλιά + Ν(Emean, Edev) Βοηθητικές μεταβλητές Διεύθυνση μετακίνησης tempdir = διέυθυνση + Ν(Emean, Edev) Απόσταση μετακίνησης tempdist = απόσταση + Ν(Emean, Edev) Νέα Θέση x = Παλιά θέση x + cos(tempdir+parts[i].phi)*tempdist Νέα Θέση y = Παλιά θέση y + sin(tempdir+parts[i].phi)*tempdist
Παρατήρηση αναγκαία για τον εντοπισμό θέσης Ανάλυση εικόνας Αναγνώρηση χρωμάτων Απλή εξαγωγή γωνιών Θέασης μπάλας Θέασης Τέρματος Σύνθετη εξαγωγή στοιχείων (pre-alpha) Δημιουργία και εμφάνιση Ιστογραμμάτων Πορτοκαλί, Κίτρινο, Γαλάζιο
Εντοπισμός θέσης Update βαρών σωματιδίων παίκτη σύμφωνα με GoalDir, GoalDist Update βαρών σωματιδίων μπάλας σύμφωνα με Ball Dir, Ball Dist, Mean of other players belief Επαναδειγματοληψία σωματιδίων Select with Replacement Linear Time Resampling Not Tested, lack of observation
Το Γήπεδο σε αντιστοιχία με το κανονικό Pixels = Πραγματικές Διαστάσεις (mm) / 10 Αρχικές Θέσεις διαγωνισμού Εμφάνιση σωματιδίων Θέση παίκτη Robust mean Αντίστοιχα για την μπάλα Εμφάνιση των άλλων παικτών Προς το παρόν σταθεροί Θέση παικτών λαμβανόμενη πληροφορία από τους άλλους παίκτες
Πειραματισμοί Εξαγωγή παραμέτρων A,B ακολουθιών Fourier για το περπάτημα. Χρήση των παραμέτρων αυτών για την ανακατασκευή της κίνησης. Ενδοεπικοινωνία ρομπότ Δυνατότητα αποστολής δεδομένων στο δίκτυο Περιορισμένο bandwidth 500kbps Αποστολή στοιχείων από ένα ρομπότ στα υπόλοιπα Λίγοι ακέραιοι αρκούν για ομαδικό παιχνίδι!
Βιβλιογραφία Σημειώσεις μαθήματος Αυτόνομοι Ρομποτικοί Πράκτορες I. Rekleitis, Particle Filter Tutorial for Mobile Robots, Technical Report TR-CIM-04-02, McGill University, Canada, 2002. M. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking, IEEE Transactions on Signal Processing, 50(2):174-188, 2002.