05/12/2025 –, Main Stream Idioma: Español
La operación de drones en entornos complejos y peligrosos, como inspecciones industriales en interiores, presenta un alto riesgo de colisiones y requiere una gran destreza por parte del piloto. ¿Y si pudiéramos darle al piloto un copiloto de inteligencia artificial que anticipe errores y garantice la seguridad?
En esta charla, exploraremos cómo desarrollar un sistema de teleoperación asistida para cuadricópteros utilizando Python, simulación y aprendizaje por refuerzo profundo (Deep RL). Partiremos desde cero, configurando un entorno de simulación fotorrealista con Webots para entrenar un agente de IA. Veremos cómo, usando librerías como stable-baselines3 e imitation, podemos enseñar a un dron a navegar de forma óptima y, lo más interesante, cómo usar ese conocimiento para asistir a un piloto humano.
Profundizaremos en el concepto de "autonomía compartida", donde el sistema de IA no reemplaza al humano, sino que colabora con él. Mostraremos cómo simulamos pilotos con comportamientos "humanos" (con retrasos o errores) para entrenar un copiloto que interviene solo cuando es necesario, corrigiendo trayectorias peligrosas y previniendo accidentes.
Al final de esta sesión, no solo entenderás los fundamentos para aplicar aprendizaje por refuerzo en robótica, sino que también verás un caso práctico de cómo Python se convierte en el puente entre una idea compleja de IA y una aplicación funcional con impacto en el mundo real. Descubrirás un flujo de trabajo completo para prototipar, entrenar y evaluar sistemas robóticos inteligentes de manera segura y eficiente, abriendo la puerta a innumerables aplicaciones industriales.
Los vehículos aéreos no tripulados (UAVs), o drones, han revolucionado industrias como la construcción, la seguridad y el mantenimiento de infraestructuras. Sin embargo, su mayor potencial se encuentra a menudo en los entornos más desafiantes: interiores de edificios, espacios confinados o áreas con obstáculos imprevistos. En estos escenarios, un error de cálculo del piloto puede resultar en una colisión costosa, daños al equipo o el fracaso de una misión crítica. La carga cognitiva para un operador humano es inmensa. Esta charla aborda una pregunta fundamental: ¿cómo podemos usar la inteligencia artificial para hacer que estas operaciones sean más seguras y eficientes, sin eliminar la intuición y el control del piloto humano?
La Solución: un Copiloto de IA entrenado en un mundo virtual
En esta presentación, te guiaré a través del proceso de creación de un "copiloto" de IA para un cuadricóptero Crazyflie. La clave de nuestro enfoque es la simulación. Antes de arriesgar un dron real, construimos un gemelo digital de nuestro entorno en Webots, un potente simulador de robótica de código abierto. Usando Python como nuestro lenguaje principal, integramos el simulador con Gymnasium, el estándar de la industria para entornos de aprendizaje por refuerzo.
El Stack Tecnológico y Metodología
1) Entrenando al Piloto Perfecto: El primer paso fue entrenar un agente de IA para que se convirtiera en un piloto "óptimo". Utilizando la librería stable-baselines3, implementamos algoritmos de aprendizaje por refuerzo profundo (como PPO) para enseñarle al dron a navegar por el escenario simulado, evitando obstáculos y alcanzando su objetivo de la manera más eficiente.
2) Aprendiendo de los Humanos (o casi): Para que nuestro copiloto fuera realmente útil, necesitaba entender cómo ayudar a un piloto humano, no a otra IA. Aquí es donde entra en juego el aprendizaje por imitación. Con la librería imitation, utilizamos trayectorias generadas por un operador humano para refinar la política de nuestro agente, logrando un comportamiento más natural y menos "robótico".
3) Simulando la Imperfección Humana: El verdadero desafío era probar la asistencia. Para ello, creamos pilotos "subóptimos" programáticamente: un "piloto lento" que a veces tardaba en reaccionar y un "piloto ruidoso" que ocasionalmente cometía errores. Estos agentes simulados nos permitieron probar la eficacia de nuestro copiloto en un entorno controlado.
4) El Copiloto en Acción (Autonomía Compartida): El corazón de nuestro sistema es un modelo de autonomía compartida. El copiloto de IA recibe tanto las lecturas de los sensores del dron como las órdenes del piloto humano. Usando una función de calidad, evalúa si la acción del piloto es segura. Si la acción es segura, se ejecuta sin cambios. Si la acción podría llevar a una colisión, el copiloto interviene, eligiendo la acción segura más cercana a la intención original del piloto. Este equilibrio es crucial: asiste sin ser intrusivo.
¿Qué Aprenderá la Audiencia?
Esta charla está diseñada para brindar inspiración práctica y conceptual. Al finalizar, los asistentes se llevarán:
Un entendimiento claro de cómo la simulación acelera el desarrollo en robótica e IA, reduciendo costos y riesgos.
Un mapa de ruta sobre cómo usar el ecosistema de Python (Webots, stable-baselines3, imitation, Gymnasium) para aplicar aprendizaje por refuerzo a problemas del mundo real.
Una introducción práctica al concepto de autonomía compartida y cómo puede ser más efectivo que la autonomía total en ciertas aplicaciones.
Insights / ideas sobre los desafíos encontrados y las lecciones aprendidas durante el proyecto, desde el diseño de la función de recompensa hasta la evaluación del rendimiento.
La inspiración para aplicar estas técnicas en sus propios proyectos, ya sea en robótica, videojuegos, finanzas o cualquier otro campo donde se tomen decisiones secuenciales.
Esta no es solo una charla sobre drones; es una historia sobre la colaboración hombre-máquina, facilitada por el poder y la flexibilidad del ecosistema de Python.
Ana se graduó de la carrera de grado Ingeniera en Sistemas de Información y del posgrado Especialista en Inteligencia Artificial.
Es docente e investigadora en la Universidad Tecnológica Nacional.
También consultora en IA para proyectos de ciencia de datos e Internet de las cosas.
Es fundadora y co-organizadora del capítulo R-Ladies de Mendoza, Argentina.
