Návrh Školení
Týden 01
Úvod
- Co udělává robota chytrým?
Fyzické vs. Virtuální Roboťáci
- Chytré roboťáky, chytré stroje, vědomé stroje a automatizace procesů robota (RPA), atd.
Úloha umělé inteligence (AI) ve robotice
- Mimo "if-then-else" a učící se stroj
- Algoritmy za AI
- Učení strojem, počítačové vidění, zpracování přirozeného jazyka (NLP), atd.
- Kognitivní robotika
Úloha velkých dat ve vývoji roboťáků
- Rozhodování založené na datech a modelech
Cloud a robotika
- Spojení robotiky s IT
- Vytváření funkcionalitnějších roboťáků, které přístupují k více informacím a spolupracují
Případový studie: Průmyslové roboťáky
- Mechanické roboťáky
- Baxter
- Roboťáky v jaderných zařízeních
- Detekce a ochrana před radiací
- Roboťáky v jaderných reaktorech
- Detekce a ochrana před radiací
Hardwarové komponenty roboťáků
- Motory, senzory, mikrokontrolery, kamery atd.
Společné prvky robotů
- Strojové vidění, rozpoznávání hlasu, syntéza řeči, čidla přibližnosti, čidla tlaku atd.
Rozvojové rámce pro programování roboťáků
- Otevřený zdroj a komerční frameworky
- Robot Operating System (ROS)
- Architektura: pracovní prostor, témata, zprávy, služby, uzly, actionlibs, nástroje atd.
Jazyky pro programování roboťáků
- C++ pro nízkorozchodné ovládání
- Python pro orchestraci
- Programování uzlů ROS v Pythonu a C++
- Jiné jazyky
Nástroje pro simulaci fyzických roboťáků
- Komerční a otevřený zdrojový 3D software pro simulaci a vizualizaci
Týden 02
Příprava vývojového prostředí
- Instalace a nastavení software
- Užitečné balíčky a nástroje
Případový studie: Mechanické roboťáky
- Roboťáky v oblasti jaderné technologie
- Roboťáky v prostředích životního prostředí
Programování roboťáků
- Programování uzlu v Pythonu a C++
- Pochopení uzlů ROS
- Zprávy a témata v ROS
- Paradigma publikace/předplatitelského modelu
- Projekt: Bump & Go s fyzickým roboťákem
- Řešení problémů
- Simulace roboťáků pomocí Gazebo/ROS
- Systémy s referenčními rámcovými změnami v ROS
- Zpracování 2D informací kamer pomocí OpenCV
- Informační zpracování laseru
- Projekt: Bezpečné sledování objektů barvou
- Řešení problémů
Týden 03
Programování roboťáků (Pokračování...)
- Služby v ROS
- Zpracování 3D informací z senzorů RGB-D pomocí PCL
- Mapy a navigace s ROS
- Projekt: Hledání objektů v prostředí
- Řešení problémů
Programování roboťáků (Pokračování...)
- ActionLib
- Rozpoznávání řeči a generace řeči
- Ovládání robotických paží pomocí MoveIt!
- Ovládání robotického krku pro aktivní vidění
- Projekt: Hledání a sběr objektů
- Řešení problémů
Testování roboťáků
- Jednotkové testy
Týden 04
Rozšiřování schopností roboťáku pomocí hlubokého učení
- Perceptivita - vidění, zvuk a haptika
- Reprezentace znalostí
- Rozpoznávání řeči prostřednictvím NLP (zpracování přirozeného jazyka)
- Strojové vidění
Základní kurz hlubokého učení
- Umělé neuronové sítě (ANNs)
- Umělá neuronová síť proti biologické neuronové síti
- Feedforward neuronové sítě
- Aktivace funkce
- Trénink umělých neuronových sítí
Základní kurz hlubokého učení (Pokračování...)
- Hluboká učení modely
- Konvoluční sítě a rekurentní sítě
- Konvoluční neuronové sítě (CNNs nebo ConvNets)
- Konvoluční vrstva
- Pooling vrstva
- Architektura konvolučních neuronových sítí
Týden 05
Základní kurz hlubokého učení (Pokračování...)
- Rekurentní neuronové sítě (RNN)
- Trénink RNN
- Stabilizace gradientů při tréninku
- Dlouhodobá paměťová síťová sítě (LSTM)
- Platformy a software pro hluboké učení
- Hluboké učení v ROS
Použití velkých dat ve vašem roboťákovi
- Koncepty velkých dat
- Přístupy k analýze dat
- Nástroje pro velká data
- Rozpoznávání vzorů v datech
- Cvičení: Zpracování přirozeného jazyka a počítačové vidění na velkých souborech dat
Použití velkých dat ve vašem roboťákovi (Pokračování...)
- Distribuované zpracování velkých souborů dat
- Spolupráce a vzájemný vliv Velkých dat a robotiky
- Roboťák jako generátor dat
- Čidla pro měření dosahu, polohu, vizuální, dotykové čidlo a jiná modality
- Výklad sensorických dat (sense-plan-act smyčka)
- Cvičení: Zaznamenání streamovacích dat
Programování autonomního roboťáku se systémem hlubokého učení
- Komponenty roboťáků s hlubokým učením
- Nastavení simulátora roboťáku
- Spuštění CUDA-akcelerované neuronové sítě s Cafe
- Řešení problémů
Týden 06
Programování autonomního roboťáku se systémem hlubokého učení (Pokračování...)
- Rozpoznávání objektů na fotografiích nebo video streamech
- Zapojení počítačového vidění pomocí OpenCV
- Řešení problémů
Analýza dat
- Použití roboťáku k sběru a organizaci nových dat
- Nástroje a procesy pro zpracování dat
Nasazení roboťáků
- Přechod od simulovaného roboťáku k fyzickým zařízením
- Nasazení roboťáku ve fyzickém světě
- Monitorování a servisování roboťáků v poli
Zabezpečení vašeho roboťáku
- Prevence neoprávněného rušení
- Prevence hackerů přistupujících k citlivým datům
Společná vytváření roboťáků
- Vytvoření roboťáku ve cloudu
- Účast na komunitě robotiky
Pohled do budoucna roboťáků v oblasti vědy a energie
Shrnutí a závěr
Požadavky
- Zkušenosti s programováním v C nebo C++
- Zkušenosti s programováním v Pythonu (použitelné, ale nepodstatné; může být naučeno jako součást kurzu)
- Zkušenosti se systémem Linux a příkazovým řádkem
Cílová skupina
- Vývojáři
- Inženýři
- Vědci
- Technici
Reference (1)
I feel I get the core skills I need to understand how the ROS fits together, and how to structure projects in it.