Programa del Curso
Semana 01
Introducción
-
¿Qué hace que un robot sea inteligente?
Robots físicos vs virtuales
-
Smart Robots, Máquinas Inteligentes, Máquinas Sensibles y Automatización Robótica de Procesos (RPA), etc.
El papel de la inteligencia artificial (IA) en Robotics
-
Más allá del "si-entonces-no" y la máquina de aprendizaje
Los algoritmos detrás de la IA
Machine learning, visión artificial, procesamiento del lenguaje natural (PLN), etc.
Robótica cognitiva
El papel del Big Data en Robotics
-
Toma de decisiones basada en datos y patrones
La nube y Robotics
-
Vincular la robótica con las tecnologías de la información
Construir robots más funcionales que accedan a más información y colaboren
Caso de estudio: Robots industriales
-
Robots mecánicos
Baxter
Comunes Elements de los robots
-
Visión artificial, reconocimiento de voz, síntesis de voz, detección de proximidad, detección de presión, etc.
Marcos de desarrollo para Programming un robot
-
Marcos comerciales y de código abierto
Sistema operativo del robot (ROS)
Arquitectura: espacio de trabajo, temas, mensajes, servicios, nodos, actionlibs, herramientas, etc.
Idiomas para Programming un robot
-
C++ para control de bajo nivel
Python para orquestación
Programación de ROS nodos en Python y C++
Otros idiomas
Herramientas para simular un robot físico
-
Software comercial y de visualización 3D de código abierto y simulación
-
Semana 02
Preparación del entorno de desarrollo
Instalación y configuración del software Paquetes y utilidades útiles
Caso de estudio: Robots mecánicos
-
Robots en el campo de la tecnología nuclear
Robots en sistemas medioambientales
Programming El Robot
-
Programación de un nodo en Python y C++
Descripción del nodo ROS
Mensajes y temas en ROS
Paradigma de publicación/suscripción
Proyecto: Bump & Go con robot real
Solución de problemas
Simulación de robots con Gazebo / ROS
Fotogramas en ROS y cambios de referencia
Procesamiento de información 2D de cámaras con OpenCV
Procesamiento de la información de un láser
Proyecto: Seguimiento seguro de objetos por color
Solución de problemas
-
Semana 03
Programming El Robot (Continuación...)
Servicios en ROS Procesamiento de información 3D de sensores RGB-D con PCL Mapas y navegación con ROS Proyecto: Search para objetos del entorno Solución de problemas
Programming El Robot (Continuación...)
-
ActionLib (Lib de acción)
Speech Recognition y la generación del habla
Controlar los brazos robóticos con MoveIt!
Control del cuello robótico para la visión activa
Proyecto: Búsqueda y recogida de objetos
Solución de problemas
Probando su robot
-
Pruebas unitarias
-
Semana 04
Ampliación de las capacidades de un robot con Deep Learning
Percepción: visión, audio y háptica Representación del conocimiento Reconocimiento de voz a través de NLP (procesamiento del lenguaje natural) Computer Visión
Curso intensivo en Deep Learning
-
Artificial Neural Networks (RNA)
Artificial Neural Networks vs. Biológico Neural Networks
Avance Neural Networks
Funciones de activación
Entrenamiento Artificial Neural Networks
Curso intensivo en Deep Learning (Continuación...)
-
Deep Learning Modelos
Redes convolucionales y redes recurrentes
Convolucional Neural Networks (CNN o ConvNets) Capa de convolución
-
Capa de agrupación
Recurrente Neural Networks (RNN) Entrenamiento de una RNN Estabilización de gradientes durante el entrenamiento Redes de memoria a corto plazo
Plataformas de aprendizaje profundo y bibliotecas de software Aprendizaje profundo en ROS
Uso de Big Data en el robot
-
Conceptos de big data
Enfoques para el análisis de datos
Herramientas de Big Data
Reconocimiento de patrones en los datos
Ejercicio: PNL y Computer Vision en grandes conjuntos de datos
Dar sentido a los datos sensoriales (bucle sentido-plan-acción)
-
Ejercicio: Captura de datos de streaming
Programming Un robot autónomo de aprendizaje profundo
-
Deep Learning Componentes del robot
Configuración del simulador de robots
Ejecución de una red neuronal acelerada por CUDA con Cafe
Solución de problemas
Reconocimiento de objetos en fotografías o secuencias de vídeo Habilitación de la visión artificial con OpenCV Solución de problemas
-
Análisis de datos
Uso del robot para recopilar y organizar nuevos datos Herramientas y procesos para dar sentido a los datos
Despliegue de un robot
Transición de un robot simulado a hardware físico Despliegue del robot en el mundo físico Supervisión y mantenimiento de robots en el campo
-
Asegure su robot
Prevención de manipulaciones no autorizadas Evitar que los piratas informáticos vean y roben datos confidenciales
-
Construir un robot de forma colaborativa
Creación de un robot en la nube Unirse a la comunidad robótica
-
Futuro Outlook de los robots en el campo de la ciencia y la energía
Resumen y conclusión
Requerimientos
- Experiencia en programación en C o C++
- Experiencia en programación en Python (útil pero no necesaria; se puede enseñar como parte del curso)
- Experiencia con la línea de comandos de Linux
Audiencia
- Desarrolladores
- ingenieros
- científicos
- Técnicos
Testimonios (1)
Good conceptual explanations followed by good example exercises