Plan du cours

Semaine 01

Introduction

  • Qu'est-ce qui fait d'un robot intelligent ?

Robots physiques vs virtuels

  • Robots intelligents, machines intelligentes, machines conscientes et automatisation des processus robotisés (RPA), etc.

Le rôle de l'intelligence artificielle (IA) en robotique

  • Au-delà du "si-alors-sinon" et la machine d'apprentissage
  • Les algorithmes derrière l'IA
  • Apprentissage automatique, vision par ordinateur, traitement du langage naturel (NLP), etc.
  • Robotique cognitive

Le rôle des Big Data en robotique

  • Prendre des décisions basées sur les données et les modèles

La Cloud et la robotique

  • Lier la robotique à l'informatique
  • Construire des robots plus fonctionnels qui accèdent à plus d'informations et collaborent

Étude de cas : Robots industriels

  • Robots mécaniques
    • Baxter
  • Robots dans les installations nucléaires
    • Détection et protection contre la radiation
  • Robots dans les réacteurs nucléaires
    • Détection et protection contre la radiation

Composants matériels d'un robot

  • Moteurs, capteurs, microcontrôleurs, caméras, etc.

Éléments courants des robots

  • Vision par machine, reconnaissance vocale, synthèse de la parole, détection de proximité, détection de pression, etc.

Cadres de développement pour programmer un robot

  • Cadres open source et commerciaux
  • Robot Operating System (ROS)
    • Architecture : espace de travail, sujets, messages, services, nœuds, actionlibs, outils, etc.

Langages pour programmer un robot

  • C++ pour le contrôle de bas niveau
  • Python pour l'orchestration
  • Programmation des nœuds ROS en Python et C++
  • Autres langages

Outils de simulation d'un robot physique

  • Logiciels commerciaux et open source de simulation et visualisation 3D

Semaine 02

Préparation de l'environnement de développement

  • Installation et configuration du logiciel
  • Paquets et utilitaires utiles

Étude de cas : Robots mécaniques

  • Robots dans le domaine des technologies nucléaires
  • Robots dans les systèmes environnementaux

Programmation du robot

  • Programmation d'un nœud en Python et C++
  • Comprendre ROS node
  • Messages et sujets dans ROS
  • Paradigme de publication / souscription
  • Projet : Bump & Go avec un robot réel
  • Dépannage
  • Simulation des robots avec Gazebo / ROS
  • Cadres dans ROS et changements de référence
  • Traitement d'informations 2D de caméras avec OpenCV
  • Traitement des informations du laser
  • Projet : Suivi sécurisé des objets par couleur
  • Dépannage

Semaine 03

Programmation du robot (suite...)

  • Services dans ROS
  • Traitement d'informations 3D des capteurs RGB-D avec PCL
  • Cartes et navigation avec ROS
  • Projet : Recherche d'objets dans l'environnement
  • Dépannage

Programmation du robot (suite...)

  • ActionLib
  • Reconnaissance vocale et génération de la parole
  • Contrôle des bras robotiques avec MoveIt!
  • Contrôle du cou robotique pour une vision active
  • Projet : Recherche et collecte d'objets
  • Dépannage

Test de votre robot

  • Tests unitaires

Semaine 04

Élargir les capacités d'un robot avec l'apprentissage en profondeur

  • Perception -- vision, audio et haptiques
  • Représentation des connaissances
  • Reconnaissance vocale par NLP (traitement du langage naturel)
  • Vision par ordinateur

Cours express sur l'apprentissage en profondeur

  • Réseaux de neurones artificiels (ANN)
  • Réseaux de neurones artificiels vs. réseaux de neurones biologiques
  • Réseaux de neurones feedforward
  • Fonctions d'activation
  • Formation des réseaux de neurones artificiels

Cours express sur l'apprentissage en profondeur (suite...)

  • Modèles d'apprentissage en profondeur
    • Réseaux convolutifs et réseaux récurrents
  • Réseaux de neurones convolutionnels (CNN ou ConvNets)
    • Couche de convolution
    • Couche de pooling
    • Architecture des CNN

Semaine 05

Cours express sur l'apprentissage en profondeur (suite...)

  • Réseaux de neurones récurrents (RNN)
    • Formation d'un RNN
    • Stabilisation des gradients lors de la formation
    • Réseaux à mémoire à court et long terme
  • Plateformes et bibliothèques logicielles d'apprentissage en profondeur
    • Apprentissage en profondeur dans ROS

Utilisation des Big Data dans votre robot

  • Concepts de big data
  • Approches pour l'analyse des données
  • Outils de big data
  • Reconnaissance de modèles dans les données
  • Exercice : NLP et vision par ordinateur sur grands ensembles de données

Utilisation des Big Data dans votre robot (suite...)

  • Traitement distribué d'ensembles de données volumineux
  • Coexistence et fertilisation croisée entre big data et robotique
  • Le robot comme générateur de données
    • Capteurs de mesure à distance, position, visuels, tactiles et autres modalités
  • Interpréter les données sensorielles (boucle sense-plan-act)
  • Exercice : Captation des données en streaming

Programmation d'un robot autonome avec apprentissage en profondeur

  • Composants de robots utilisant l'apprentissage en profondeur
  • Configuration du simulateur de robot
  • Exécution d'un réseau neuronal accéléré par CUDA avec Caffe
  • Dépannage

Semaine 06

Programmation d'un robot autonome avec apprentissage en profondeur (suite...)

  • Reconnaissance des objets dans les photographies ou les flux vidéo
  • Enable computer vision with OpenCV
  • Dépannage

Analyse de données

  • Utiliser le robot pour collecter et organiser de nouvelles données
  • Outils et processus pour donner du sens aux données

Déploiement d'un robot

  • Transition d'un robot simulé vers le matériel physique
  • Déploiement du robot dans le monde réel
  • Surveillance et service des robots sur site

Sécurisation de votre robot

  • Prévenir les manipulations non autorisées
  • Empêcher les hackers de voir et voler des données sensibles

Construction d'un robot collaboratif

  • Construction d'un robot dans le cloud
  • Participation à la communauté robotique

Perspectives futures des robots dans les domaines de la science et de l'énergie

Résumé et conclusion

Pré requis

  • Expérience de programmation en C ou C++
  • Expérience de programmation en Python (utile mais non nécessaire ; peut être enseigné dans le cadre du cours)
  • Expérience avec la ligne de commande Linux

Public cible

  • Développeurs
  • Ingénieurs
  • Scientifiques
  • Techniciens
 120 Heures

Nombre de participants


Prix ​​par Participant

Nos clients témoignent (1)

Cours à venir

Catégories Similaires