24
Leonardo Franco Grupo de Inteligencia Computacional y Aplicaciones Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga, España http://www.lcc.uma.es/~lfranco [email protected] Inteligencia computacional en el control y operación de drones

Inteligencia computacional en el control y operación de drones

Embed Size (px)

DESCRIPTION

Diapositivas de la presentación del PhD. Leonardo Franco en el Wescis 2014 - Tucuman, Argentina

Citation preview

Page 1: Inteligencia computacional en el control y operación de drones

Leonardo Franco

Grupo de Inteligencia Computacional y Aplicaciones Departamento de Lenguajes y Ciencias de la Computación

Universidad de Málaga, España

http://www.lcc.uma.es/~lfranco [email protected]

Inteligencia computacional en el control y operación de drones

Page 2: Inteligencia computacional en el control y operación de drones

Dr. Francis Veredas Dr. Leonardo Franco Dr. José M. Jerez

Dr. Iván Gómez

Dr. José Subirats Ing. Daniel Urda

Ing. Paco Ortega

http://www.lcc.uma.es/~lfranco/

MÉTODOS DE INTELIGENCIA COMPUTACIONAL

APLICACIONES

Algoritmos constructivos de redes neuronales

Mejora de la capacidad de predicción

Arquitecturas multicapas

Algoritmos genéticos para la selección de características

Optimización de procesos industriales

Sistemas embebidos (FPGA – Microcontroladores)

Reconocimiento de imágenes

Aplicaciones biomédicas

Page 3: Inteligencia computacional en el control y operación de drones

Publicaciones relacionadas Detalles

F. Ortega-Zamorano, J.M. Jerez, D. Urda, R. Luque, and L. Franco. Efficient implementation of the Backpropagation algorithm in FPGAs and microcontrollers. Enviado a IEEE Transactions on Neural Networks (2014).

Implementación del algoritmo de retropropagación en FPGA y microcontroladores.

F. Ortega-Zamorano, J.M. Jerez, J.L. Subirats, I. Molina, and L. Franco. Smart sensor/actuator node reprogramming in changing environments using a neural network model. Engineering Applications of Artificial Intelligence, 30, pp. 179-188 (2014).

Reprogramación on-line de sensores.

F. Ortega-Zamorano, J.M. Jerez, and L. Franco. FPGA implementation of the C-Mantec Constructive Neural Network Algorithm. IEEE Transactions on Industrial Informatics, 10, pp. 1154-1161 (2014).

Algoritmo constructivo de redes neuronales C-Mantec implementado en FPGA.

F. Ortega-Zamorano, J.L. Subirats, J.M. Jerez, I. Molina and L. Franco. Implementation of the C-Mantec Neural Network Constructive Algorithm in an Arduino Uno Microcontroller. Lecture Notes in Computer Science, 7902, pp. 80-87, (2013).

Algoritmo constructivo de redes neuronales C-Mantec implementado en microcontroladores.

Constructive Neural Networks, Springer (2010)

Page 4: Inteligencia computacional en el control y operación de drones

•  Presentación

•  Boom actual, cuadricópteros vs helicópteros.

•  ¿ Drones Inteligentes ?

•  Aplicaciones de la Inteligencia Computacional en visión y control

•  Tecnologías involucradas

•  Conclusiones. Presente y Futuro

Esquema de la charla

Page 5: Inteligencia computacional en el control y operación de drones

El surgimiento de los drones

La existencia de drones no es algo reciente pero su irrupción masiva actual se debe a una combinación de diversos factores:

•  Reducción de tamaño y coste de dispositivos electrónicos.

Señalés satelitales (comunicaciones y GPS), Celular (Bluetooth, wi-fi)

•  Estabilidad automática de vuelo (electrónica, surgimiento de los cuadricópteros)

•  Conectividad

•  Incorporación de dispositivos para captura de imágenes

Si bien el reciente boom se ha originado en el sector militar, estamos viviendo un gran crecimiento en la utilización profesional y amateur.

Page 6: Inteligencia computacional en el control y operación de drones

Cuadricópteros vs Helicópteros

¿ Por qué a pequeña escala la mayoría de los drones son cuadricópteros ?

Mientras que a gran escala casi únicamente encontramos helicópteros.

Estabilidad ?

Coste ?

Simplicidad ?

Rumerman quadrotor 1924

Tipo de motor ?

Page 7: Inteligencia computacional en el control y operación de drones

Cuadricópteros vs Helicópteros

¿ Por qué a pequeña escala la mayoría de los drones son cuadricópteros ?

Mientras que a gran escala casi únicamente encontramos helicópteros.

Coste y Simplicidad Estabilidad y Coste

pequeña escala gran escala

Page 8: Inteligencia computacional en el control y operación de drones

Sistemas de vuelo: Helicóptero vs Cuadricóptero

Sistema de vuelo de un Helicóptero

Las hélices deben ajustar su inclinación mientras dan vuelta para ajustar el avance. En combinación con el rotor de cola el helicóptero consigue maniobrar. El sistema de rotación-inclinación es un mecanismo complejo y costoso.

Esencialmente un quadricóptero es menos estable, pero el mecanismo de vuelo es muy sencillo, ya que únicamente hay que ajustar la velocidad de cada motor. Manualmente es muy complicado pero gracias a la electrónica y a los sensores es bastante más sencillo. Sin embargo ajustar la velocidad de un motor grande requiere un gran esfuerzo (mayor inercia) por lo que a gran escala no es un sistema tan conveniente.

Page 9: Inteligencia computacional en el control y operación de drones

Dinámica de vuelo de un cuadricóptero

Page 10: Inteligencia computacional en el control y operación de drones

¿ Son los drones actuales inteligentes ?

Video de Hexa-drone de seguimiento

Page 11: Inteligencia computacional en el control y operación de drones

HEXO + : El drone que te sigue

Desde una posición y distancia predeterminadas Hexo+ realiza un seguimiento a un teléfono móvil usando el protocolo MAV link.

Crowdfunding: más de un millón de dólares conseguidos en un par de meses.

Los primeros modelos comenzarán a comercializarse en 2015

Page 12: Inteligencia computacional en el control y operación de drones

¿ Son los drones actuales inteligentes ?

Para poder discutir correctamente la pregunta planteada debemos establecer una definición sobre inteligencia.

Podemos utilizar la definición dada por Norvig & Russell, autores de uno de los libros más utilizados en el área de Inteligencia Artificial.

Un agente inteligente es un sistema autónomo que recibe señales de su entorno por medio de sensores, siendo capaz de tomar decisiones correctas ante escenarios cambiantes con el fin de conseguir realizar una tarea determinada.

Aspecto extra a considerar: Aprendizaje

Page 13: Inteligencia computacional en el control y operación de drones

INTELIGENCIA ARTIFICIAL E INTELIGENCIA COMPUTACIONAL

Page 14: Inteligencia computacional en el control y operación de drones

Redes neuronales artificiales

Modelos de computación que tratan de emular el funcionamiento del cerebro

Las redes de neuronas artificiales son modelos computacionales paralelos que constan de unidades de proceso (neuronas)

adaptativas y masivamente interconectadas.

Son, por tanto, procesadores distribuidos masivamente en paralelo para almacenar conocimiento experimental y hacerlo

disponible para su uso.

Page 15: Inteligencia computacional en el control y operación de drones

Muchos procesadores 1 CPU

Computación distribuida Computación en serie

Aprendizaje a través de la experiencia Programación

Cálculo matemático, Problemas en los cuales conocemos el Algoritmo

Problemas que no conocemos una solución algorítmica exacta (Tenemos datos del problema)

Redes Neuronales Artificiales Computadoras tradicionales (Máquina de Von neumann)

Page 16: Inteligencia computacional en el control y operación de drones

Aplicaciones en control y operación de drones

Tarjetas FPGA

Micro- controladores Arduino

Implementación de métodos supervisados de redes neuronales:

•  Algoritmo constructivo de redes neuronales C-Mantec

Control de vuelo inteligente

Módulo de reconocimiento de imágenes: aplicaciones en vigilancia de edificios

•  Algoritmo de retro-propagación de errores

Page 17: Inteligencia computacional en el control y operación de drones

Tarjetas FPGA : Circuitos reprogramables utilizados como prototipos de chips. Aplicaciones en telecomunicaciones y en sistemas de control en tiempo real.

FPGA

Dado su íntrinseco paralelismo están siendo muy utilizadas en aplicaciones neuronales.

F. Ortega-Zamorano, J.M. Jerez, and L. Franco. FPGA implementation of the C-Mantec Constructive Neural Network Algorithm. IEEE Transactions on Industrial Informatics, 10, pp. 1154-1161 (2014).

Page 18: Inteligencia computacional en el control y operación de drones

Neurobotics

Modem prototyping Infrastructure monitoring

FPGA: Field Programmable Gate Array

Page 19: Inteligencia computacional en el control y operación de drones

Microprocesadores Arduino

•  Bajo coste •  Bajo consumo •  Hardware libre •  Fácil programación •  Conectividad modular

Poder de cómputo limitado

Permite conectar diferentes sensores y programar diferentes operaciones

La capacidad de cómputo de las tarjetas FPGA es mayor, aunque su programación es mucho más compleja, tienen un consumo más elevado y son más costosas.

ArduPilot - Arduino Compatible UAV Controller w/ ATMega328

Page 20: Inteligencia computacional en el control y operación de drones

Drones y aplicaciones

Programar un vuelo alrededor de un edificio para reconocer y fotografiar grietas, daños, imperfecciones.

Sistema de reconocimiento de imágenes no-supervisado + supervisado.

Hexo+

Phenox es un drone pequeño, interactivo y programable. Utiliza un sistema de auto-control inteligente para mantenerse estable de forma autónoma. Analizar el sistema de vuelo para incorporar modificaciones de acuerdo a la experiencia.

Phenox

Page 21: Inteligencia computacional en el control y operación de drones

Drones made in Málaga

Preguntas ?

Page 22: Inteligencia computacional en el control y operación de drones

CONCLUSIONES

Estamos viviendo un verdadero boom en el desarrollo y aplicación de drones, siendo diversas las aplicaciones en las que pueden utilizarse y sin duda empezaremos a acostumbrarnos a ver en nuestra vida cotidiana la aparición de drones.

Irán surgiendo drones con ciertas capacidades inteligentes que permitirán automatizar funciones de vigilancia y reconocimiento, y de control del mismo drone, y en este sentido la inteligencia computacional es una de las ramas candidatas a utilizarse.

Los kits de desarrollo basados en herramientas “open source” permitirán explorar diferentes algoritmos “inteligentes” en la medida que la capacidad de cómputo de los procesadores lo permitan.

Page 23: Inteligencia computacional en el control y operación de drones

Otros temas actuales de relevancia

Vuelos colectivos

Comunicación encriptada para evitar hackeos

Raspberry pi

7 de Agosto de 2014 Truenorth chip Un millón de neuronas

Baterías solares

Diseño modificable

Page 24: Inteligencia computacional en el control y operación de drones

Muchas Gracias !

Preguntas ?