Struttura del corso
Settimana 01
Introduzione
-
Cosa rende intelligente un robot?
Robot fisici e virtuali a confronto
-
Smart Robots, macchine intelligenti, macchine senzienti e automazione robotica dei processi (RPA), ecc.
Il ruolo dell'intelligenza artificiale (AI) in Robotics
-
Oltre il "se-allora-altro" e la macchina che apprende
Gli algoritmi alla base dell'IA
Apprendimento automatico, visione artificiale, elaborazione del linguaggio naturale (NLP), ecc.
Robotica cognitiva
Il ruolo dei Big Data in Robotics
-
Processo decisionale basato su dati e modelli
La nuvola e Robotics
-
Collegare la robotica con l'IT
Costruire robot più funzionali che accedono a più informazioni e collaborano
Caso di studio: Robot industriali
-
Robot meccanici
Baxter
Comuni Elements di Robot
-
Visione artificiale, riconoscimento vocale, sintesi vocale, rilevamento di prossimità, rilevamento della pressione, ecc.
Framework di sviluppo per Programming un robot
-
Framework open source e commerciali
Sistema operativo robot (ROS)
Architettura: area di lavoro, argomenti, messaggi, servizi, nodi, actionlib, strumenti, ecc.
Lingue per Programming un robot
-
C++ per il controllo di basso livello
Python per l'orchestrazione
Programmazione ROS nodi in Python e C++
Altre lingue
Strumenti per la simulazione di un robot fisico
-
Software di simulazione e visualizzazione 3D commerciale e open source
-
Settimana 02
Preparazione dell'ambiente di sviluppo
Installazione e configurazione del software Pacchetti e utilità utili
Caso di studio: Robot meccanici
-
Robot nel campo della tecnologia nucleare
Robot nei sistemi ambientali
Programming Il Robot
-
Programmazione di un nodo in Python e C++
Informazioni sul nodo ROS
Messaggi e argomenti in ROS
Paradigma pubblicazione/sottoscrizione
Progetto: Bump & Go con robot reale
Risoluzione dei problemi
Simulazione di robot con Gazebo / ROS
Fotogrammi in ROS e modifiche di riferimento
Elaborazione delle informazioni 2D delle telecamere con OpenCV
Elaborazione delle informazioni di un laser
Progetto: Tracciamento sicuro degli oggetti in base al colore
Risoluzione dei problemi
-
Settimana 03
Programming Il Robot (Continua...)
Servizi in ROS Elaborazione delle informazioni 3D di sensori RGB-D con PCL Mappe e navigazione con ROS Progetto: Search per oggetti nell'ambiente Risoluzione dei problemi
Programming Il Robot (Continua...)
-
ActionLib
Speech Recognition e Generazione del parlato
Il controllo dei bracci robotici con MoveIt!
Controllo del collo robotico per una visione attiva
Progetto: Ricerca e raccolta di oggetti
Risoluzione dei problemi
Testare il tuo robot
-
Test unitari
-
Settimana 04
Estendere le capacità di un robot con Deep Learning
Percezione: visione, audio e tattile Rappresentazione della conoscenza Riconoscimento vocale tramite NLP (elaborazione del linguaggio naturale) Computer Visione
Corso accelerato in Deep Learning
-
Artificiale Neural Networks (ANN)
Artificiale Neural Networks vs. biologico Neural Networks
Feedforward Neural Networks
Funzioni di attivazione
Formazione Artificiale Neural Networks
Corso accelerato in Deep Learning (Continua...)
-
Deep Learning Modelli
Reti convoluzionali e reti ricorrenti
Convoluzionale Neural Networks (CNN o ConvNets) Livello di convoluzione
-
Livello di pooling
Ricorrente Neural Networks (RNN) Addestramento di un RNN Stabilizzare i gradienti durante l'allenamento Reti di memoria a breve termine a lungo termine
Piattaforme di deep learning e librerie software Deep Learning in ROS
Utilizzo di Big Data nel robot
-
Concetti relativi ai Big Data
Approcci all'analisi dei dati
Strumenti per i Big Data
Riconoscere i modelli nei dati
Esercizio: PNL e Computer Vision su grandi insiemi di dati
Dare un senso ai dati sensoriali (ciclo senso-piano-azione)
-
Esercizio: Acquisizione di dati in streaming
Programming Un robot autonomo di deep learning
-
Deep Learning Componenti per robot
Configurazione del simulatore di robot
Esecuzione di una rete neurale accelerata da CUDA con Cafe
Risoluzione dei problemi
Riconoscimento di oggetti in fotografie o flussi video Abilitazione della visione artificiale con OpenCV Risoluzione dei problemi
-
Analisi dei dati
Utilizzo del robot per raccogliere e organizzare nuovi dati Strumenti e processi per dare un senso ai dati
Distribuzione di un robot
Transizione di un robot simulato all'hardware fisico Implementazione del robot nel mondo fisico Monitoraggio e manutenzione dei robot sul campo
-
Proteggere il tuo robot
Prevenzione di manomissioni non autorizzate Impedire agli hacker di visualizzare e rubare dati sensibili
-
Costruire un robot in modo collaborativo
Costruire un robot nel cloud Entrare a far parte della comunità della robotica
-
Futuro Outlook per i robot nel campo della scienza e dell'energia
Riassunto e conclusione
Requisiti
- Esperienza di programmazione in C o C++
- Esperienza di programmazione in Python (utile ma non necessaria; può essere insegnata come parte del corso)
- Esperienza con la riga di comando di Linux
Pubblico
- Gli sviluppatori
- ingegneri
- scienziati
- Tecnici
Recensioni (1)
Good conceptual explanations followed by good example exercises