Course Outline
Εβδομάδα 01
Εισαγωγή
- Τι κάνει ένα ρομπότ έξυπνο;
Φυσικά εναντίον εικονικών ρομπότ
- Smart Robots, Smart Machines, Senentent Machines και Robotic Process Automation (RPA), κ.λπ.
Ο ρόλος του Artificial Intelligence (AI) στο Robotics
- Πέρα από το «αν-τότε-άλλο» και τη μηχανή εκμάθησης
- Οι αλγόριθμοι πίσω από την τεχνητή νοημοσύνη
- Μηχανική μάθηση, όραση υπολογιστή, επεξεργασία φυσικής γλώσσας (NLP) κ.λπ.
- Γνωστική ρομποτική
Ο ρόλος του Big Data στο Robotics
- Λήψη αποφάσεων με βάση δεδομένα και πρότυπα
Το σύννεφο και Robotics
- Σύνδεση της ρομποτικής με την πληροφορική
- Δημιουργία πιο λειτουργικών ρομπότ που έχουν πρόσβαση σε περισσότερες πληροφορίες και συνεργάζονται
Μελέτη περίπτωσης: Βιομηχανικά ρομπότ
- Μηχανικά Ρομπότ
- Μπάξτερ
- Ρομπότ σε πυρηνικές εγκαταστάσεις
- Ανίχνευση ακτινοβολίας και προστασία
- Robots in Nuclear Reactors
- Ανίχνευση ακτινοβολίας και προστασία
Εξαρτήματα υλικού ενός ρομπότ
- Κινητήρες, αισθητήρες, μικροελεγκτές, κάμερες κ.λπ.
Κοινά Element ρομπότ
- Μηχανική όραση, αναγνώριση φωνής, σύνθεση ομιλίας, αίσθηση εγγύτητας, αίσθηση πίεσης κ.λπ.
Πλαίσια ανάπτυξης για Programming ένα ρομπότ
- Ανοιχτού κώδικα και εμπορικά πλαίσια
- Λειτουργικό σύστημα ρομπότ (ROS)
- Αρχιτεκτονική: χώρος εργασίας, θέματα, μηνύματα, υπηρεσίες, κόμβοι, actionlibs, εργαλεία κ.λπ.
Languages για Programming ένα ρομπότ
- C++ για έλεγχο χαμηλού επιπέδου
- Python για ενορχήστρωση
- Programming ROS κόμβοι σε Python και C ++
- Άλλες γλώσσες
Εργαλεία για την προσομοίωση ενός φυσικού ρομπότ
- Εμπορικό λογισμικό τρισδιάστατης προσομοίωσης και οπτικοποίησης ανοιχτού κώδικα
Εβδομάδα 02
Προετοιμασία Αναπτυξιακού Περιβάλλοντος
- Εγκατάσταση και εγκατάσταση λογισμικού
- Χρήσιμα πακέτα και βοηθητικά προγράμματα
Μελέτη περίπτωσης: Μηχανικά ρομπότ
- Ρομπότ στον τομέα της πυρηνικής τεχνολογίας
- Ρομπότ σε περιβαλλοντικά συστήματα
Programming το Ρομπότ
- Programming ένας κόμβος σε Python και C ++
- Κατανόηση του κόμβου ROS
- Μηνύματα και θέματα στο ROS
- Παράδειγμα δημοσίευσης / συνδρομής
- Έργο: Bump & Go με πραγματικό ρομπότ
- Αντιμετώπιση προβλημάτων
- Προσομοίωση ρομπότ με Gazebo / ROS
- Πλαίσια στο ROS και αλλαγές αναφοράς
- 2D επεξεργασία πληροφοριών καμερών με OpenCV
- Επεξεργασία πληροφοριών ενός λέιζερ
- Έργο: Ασφαλής παρακολούθηση αντικειμένων ανά χρώμα
- Αντιμετώπιση προβλημάτων
Εβδομάδα 03
Programming το ρομπότ (Συνέχεια...)
- Υπηρεσίες σε ROS
- Τρισδιάστατη επεξεργασία πληροφοριών αισθητήρων RGB-D με PCL
- Χάρτες και Πλοήγηση με ROS
- Έργο: Αναζήτηση αντικειμένων στο περιβάλλον
- Αντιμετώπιση προβλημάτων
Programming το ρομπότ (Συνέχεια...)
- ActionLib
- Speech Recognition και Speech Generation
- Έλεγχος ρομποτικών βραχιόνων με το MoveIt!
- Έλεγχος ρομποτικού λαιμού για ενεργή όραση
- Έργο: Αναζήτηση και συλλογή αντικειμένων
- Αντιμετώπιση προβλημάτων
Δοκιμάζοντας το ρομπότ σας
- Δοκιμή μονάδας
Εβδομάδα 04
Επέκταση των δυνατοτήτων ενός ρομπότ με Deep Learning
- Αντίληψη -- όραση, ήχος και απτικά
- Αναπαράσταση γνώσης
- Αναγνώριση φωνής μέσω NLP (επεξεργασία φυσικής γλώσσας)
- Υπολογιστική όραση
Crash Course στο Deep Learning
- Τεχνητό Neural Networks (ANN)
- Τεχνητό Neural Networks έναντι Bioλογικό Neural Networks
- Feedforward Neural Networks
- Λειτουργίες ενεργοποίησης
- Τεχνητή Εκπαίδευση Neural Networks
Crash Course στο Deep Learning (Συνέχεια...)
- Deep Learning Μοντέλα
- Συνελικτικά δίκτυα και επαναλαμβανόμενα δίκτυα
- Convolutional Neural Networks (CNN ή ConvNet)
- Επίπεδο συνέλιξης
- Στρώμα συγκέντρωσης
- Convolutional Neural Networks Αρχιτεκτονική
Εβδομάδα 05
Crash Course στο Deep Learning (Συνέχεια...)
- Επαναλαμβανόμενο Neural Networks (RNN)
- Εκπαίδευση ενός RNN
- Σταθεροποίηση κλίσεων κατά τη διάρκεια της προπόνησης
- Δίκτυα μακροπρόθεσμης μνήμης
- Deep Learning Πλατφόρμες και βιβλιοθήκες λογισμικού
- Deep Learning στο ROS
Χρήση του Big Data στο ρομπότ σας
- Έννοιες μεγάλων δεδομένων
- Προσεγγίσεις στην ανάλυση δεδομένων
- Big Data εργαλειομηχανή
- Αναγνώριση προτύπων στα δεδομένα
- Άσκηση: NLP και Computer Vision σε μεγάλα σύνολα δεδομένων
Χρήση του Big Data στο ρομπότ σας (Συνέχεια...)
- Κατανεμημένη επεξεργασία μεγάλων συνόλων δεδομένων
- Συνύπαρξη και διασταυρούμενη γονιμοποίηση των Big Data και Robotics
- Το ρομπότ ως γεννήτρια δεδομένων
- Αισθητήρες μέτρησης εύρους, θέσης, οπτικοί, απτικός αισθητήρες και άλλες λεπτομέρειες
- Κατανοώντας αισθητηριακά δεδομένα (βρόχος αίσθηση-σχέδιο-πράξη)
- Άσκηση: Λήψη δεδομένων ροής
Programming ένα Αυτόνομο Deep Learning Ρομπότ
- Deep Learning εξαρτήματα ρομπότ
- Ρύθμιση του προσομοιωτή ρομπότ
- Εκτέλεση ενός νευρωνικού δικτύου με επιτάχυνση CUDA με το Cafe
- Αντιμετώπιση προβλημάτων
Εβδομάδα 06
Programming ένα αυτόνομο Deep Learning ρομπότ (Συνέχεια...)
- Αναγνώριση αντικειμένων σε φωτογραφίες ή ροές βίντεο
- Ενεργοποίηση όρασης υπολογιστή με OpenCV
- Αντιμετώπιση προβλημάτων
Αναλύσεις δεδομένων
- Χρήση του ρομπότ για συλλογή και οργάνωση νέων δεδομένων
- Εργαλεία και διαδικασίες για την κατανόηση των δεδομένων
Ανάπτυξη ρομπότ
- Μετάβαση ενός προσομοιωμένου ρομπότ σε φυσικό υλικό
- Ανάπτυξη του ρομπότ στον φυσικό κόσμο
- Παρακολούθηση και εξυπηρέτηση ρομπότ στο πεδίο
Ασφάλιση του ρομπότ σας
- Αποτροπή μη εξουσιοδοτημένης παραβίασης
- Αποτροπή χάκερ από την προβολή και την κλοπή ευαίσθητων δεδομένων
Κατασκευάζοντας ένα ρομπότ από κοινού
- Κατασκευάζοντας ένα ρομπότ στο σύννεφο
- Συμμετοχή στην κοινότητα της ρομποτικής
Future Outlook για τα ρομπότ στον τομέα της επιστήμης και της ενέργειας
Περίληψη και Συμπέρασμα
Requirements
- Programming εμπειρία σε C ή C++
- Programming εμπειρία στο Python (χρήσιμο αλλά όχι απαραίτητο, μπορεί να διδαχθεί ως μέρος φυσικά)
- Εμπειρία με τη γραμμή εντολών Linux
Ακροατήριο
- προγραμματιστές
- Μηχανικοί
- Επιστήμονες
- Τεχνικοί
Testimonials (1)
I feel I get the core skills I need to understand how the ROS fits together, and how to structure projects in it.