Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial Internet of Things >> Sensor

Inteligencia artificial en automóviles:dentro del cerebro

Los vehículos autónomos (AV), o incluso los vehículos con sistemas avanzados de asistencia al conductor (ADAS), dependen de los datos de muchos sensores:múltiples cámaras, lidar, radar y, a veces, incluso sonar. Tratar con los flujos de datos provenientes de este conjunto de sensores es una tarea enorme y, al mismo tiempo, crítica. Todos esos datos deben convertirse en información en tiempo real para ser utilizados para conducir el automóvil de manera segura al menos tan bien como si un conductor humano perfecto estuviera al mando. “En la carretera, los conductores humanos deben tener cuidado con su entorno actual, interactuar con otros conductores y tomar decisiones. Al igual que los conductores humanos, los vehículos autónomos también deben percibir, interactuar y tomar decisiones. Además, los vehículos autónomos deberían establecer una buena relación con sus pasajeros". 1

Estas funciones se basan en la inteligencia artificial (IA) para asimilar los datos de los diferentes sensores y combinarlos para obtener una imagen instantánea del vehículo y su entorno dinámico, el proceso llamado fusión de sensores. Óptimamente para uso automotriz, la IA emplea redes neuronales profundas (DNN). Siguiendo el modelo de la forma en que el cerebro humano procesa la información, las DNN aprenden a atravesar el mundo real de la conducción aprendiendo de la experiencia, en lugar de que un programador les diga qué hacer. La DNN funciona aceptando múltiples entradas, asignándoles diferentes pesos y extrayendo inferencias. Requiere una plataforma informática de rendimiento extremadamente alto pero con eficiencia energética para hacer todo eso en "tiempo real". Esto se puede acelerar usando un acelerador de procesamiento.

Poner la IA en acción

Para saber qué incluye una plataforma de alto rendimiento para la IA automotriz, entrevisté a Gil Abraham de CEVA, Inc. sobre sus herramientas para implementarla.

La unidad de negocio Vision and AI de CEVA tiene lo que Abraham llamó tres pilares:NeuPro-M, que es el procesador AI; SensPro, que es un procesador de señal digital (DSP) concentrador de sensores de alto rendimiento; y el software CDNN-Invitar. CDNN-Invite permite a los fabricantes ingresar sus propios aceleradores DNN patentados para trabajar conjuntamente con el procesador NeuPro-M AI de CEVA, así como con el DSP SensPro y disfrutar de un sistema unificado que puede administrarse de manera centralizada mediante el mismo kit de desarrollo de software de flujo y memoria ( SDK).

SensPro DSP puede realizar el procesamiento de señales en las entradas de muchos sensores diferentes, incluidos múltiples lidars, radares y cámaras, y convolucionarlos, un proceso llamado fusión de sensores, que reúne las entradas de muchos sensores. Esto es fundamental para el uso automotriz porque cada sensor tiene sus propias limitaciones.

Por ejemplo:

El SensPro DSP puede tomar entradas de estos, así como sensores de tiempo de vuelo (ToF), unidades de medición inercial (IMU), procesar eficientemente algoritmos para localización y mapeo simultáneos (SLAM) y usarlos todos, puede crear "conciencia contextual" - una imagen completa de la situación del automóvil y su entorno. También puede agregar un conjunto de instrucciones dedicadas en el hardware para obtener una aceleración adicional de otro procesamiento específico si es necesario.

Integrando el Sistema

NeuPro-M aborda muchos de los desafíos clave de las funciones de vehículos autónomos, incluida la operación escalable de alta velocidad y baja latencia, baja potencia operativa, alta seguridad y la capacidad de cumplir con los requisitos funcionales de la norma ISO 26262 para sistemas eléctricos/electrónicos relacionados con la seguridad. en la producción de vehículos de carretera. También es escalable, por lo que, por ejemplo, se puede usar para sensores individuales, grupos de sensores en una zona o incluso se puede integrar como parte de la unidad de control del motor (ECU) del automóvil.

La arquitectura de una plataforma de IA automotriz de alto rendimiento

La función del procesador CEVA NeuPro-M AI es tomar decisiones de conducción de alto nivel. Estas decisiones se basan en las entradas de DNN que brindan información situacional, como:¿Hay automóviles que se aproximan? ¿el automóvil permanece en el carril? ¿Cuál es la ubicación absoluta (SLAM)?

El procesador NeuPro-M AI es quien toma las decisiones sobre qué acciones tomar, dada la información que recibe. La IA requiere una gran cantidad de cálculos para tomar decisiones, y estos deben hacerse casi en tiempo real. Por lo tanto, se necesita un procesador potente. Para las aplicaciones automotrices, también es necesario minimizar el consumo de energía:a medida que aumenta la cantidad de cálculos y disminuye el tiempo para realizarlos, aumenta la energía consumida. La medida del rendimiento del procesador se puede resumir en un número:tera operaciones por segundo por vatio (TOPS/vatio):cuanto mayor sea el número, mejor será el rendimiento. La eficiencia energética del NeuPro-M es de 24 TOPS/vatio, que es significativamente más alta que la mayoría de los demás procesadores de IA para automóviles.

La seguridad es de suma importancia; de hecho, se puede decir que la seguridad y la protección son los requisitos más importantes para las aplicaciones automotrices. El procesador de IA en un vehículo autónomo es el conductor a cargo. Las redes neuronales que realizan el procesamiento de IA asignan pesos a cada una de sus entradas, y esos pesos son vulnerables a la manipulación maliciosa. Por lo tanto, los sistemas de seguridad son una pieza integral del procesador para protegerse contra esos ataques.

Optimización del rendimiento

Para optimizar el rendimiento, es importante darse cuenta de que no importa qué tan rápido sea el procesador, el sistema puede encontrarse con un cuello de botella debido a las limitaciones de ancho de banda en el movimiento de información al procesador, principalmente debido a las limitaciones de la interfaz del sistema en términos de memoria. Las unidades de cómputo funcionan mucho más rápido que el tiempo que lleva almacenar y recuperar las enormes cantidades de datos para informar a la memoria. Una forma de abordar esto es dirigiendo un flujo continuo de datos al procesador en lugar de esperar a que haya suficiente información para realizar un cálculo en particular.

Otra forma en que se puede optimizar el rendimiento es ser adaptativo:usar una topología adaptativa modular. Las topologías del procesador se pueden optimizar para procesar diferentes tipos de sensores y realizar diferentes tipos de operaciones. Una función, por ejemplo, podría ser optimizar la eficiencia del tren motriz, lo que requiere muchas matemáticas, o por otro lado, podría estar procesando un solo sensor.

Si necesita calcular algo con mucha precisión, puede usar aritmética de punto flotante en lugar de punto fijo, dentro de un procesador vectorial. Otra forma de abordar la reducción del ancho de banda es comprimir los datos, para que no tenga que moverlos todos en el sistema. Estas son correcciones de software, pero también debe buscar optimizar los DSP y el procesador de IA, haciendo una inmersión profunda para abordar todos los cuellos de botella en cada una de estas áreas.

Procesamiento en paralelo

El procesador NeuPro-M (NPM) consta de tres partes (consulte la figura 2):el controlador maestro; el subsistema común de la NGP; y el motor NPM. El procesador puede incluir de uno a ocho motores, que se pueden seleccionar para satisfacer las necesidades de una aplicación en particular. El funcionamiento del procesador se puede escalar eligiendo el número de motores. “Así es como obtienes más y más caballos de fuerza”, dijo Abraham.

El subsistema común de NPM está en comunicación constante con el motor de NPM. Ese canal se monitorea para asegurarse de que no se convierta en un cuello de botella, para asegurarse de que los datos sigan fluyendo hacia el sistema. La IA de inferencia se ejecuta con dos conjuntos de datos:los datos en sí, tal vez una imagen; y el peso, que se aplica a los datos para hacer la inferencia. El subsistema común mantiene el canal abierto aplicando compresión tanto a los datos como a los pesos.

El procesamiento en paralelo se puede implementar utilizando múltiples motores y también utilizando los coprocesadores dentro de los motores, cada uno de los cuales contiene cinco coprocesadores y una memoria interna compartida.

Ejemplo:controlar un vehículo con un NPM de cuatro motores

La figura 3 ilustra una aplicación automotriz simple de procesamiento paralelo. El lado izquierdo de la figura muestra una imagen de la carretera, que es capturada por una cámara frontal. Un procesador dentro del vehículo bloquea el carril opuesto para simplificar los cálculos necesarios para mantener el vehículo centrado en su lado de la carretera y almacena la imagen en la memoria. La imagen almacenada se ingresa desde la memoria del vehículo al subsistema común NPM, que en este ejemplo sirve a cuatro motores. Luego, el software decide cuál es el caso de uso, qué se necesita, y cómo dividir la imagen para lograr el máximo rendimiento con la mínima potencia (alta utilización) para la función deseada. En este caso, el NPM divide la imagen en cuatro partes, con cierta superposición, y cada parte se envía a un motor diferente. Luego, la inferencia de IA se ejecuta en cada uno de los cuatro segmentos de la carretera. Luego, los cuatro segmentos se vuelven a unir en la memoria del subsistema, desde donde se envía a la capa de percepción en otra parte del SoC, para realizar las tareas deseadas.

Este ejemplo ilustra los dos niveles de procesamiento paralelo, uno usando los cuatro motores para trabajar en diferentes segmentos de la imagen y dentro de cada motor, el procesamiento paralelo compartiendo los cálculos entre los cinco coprocesadores internos.

Optimización a través de software

La IA funciona principalmente a través de la convolución, que es una operación matemática sobre dos funciones que produce una tercera función que expresa cómo la forma de una es modificada por la otra. El matemático Shmuel Winograd innovó un nuevo método para realizar la convolución en la mitad del número habitual de pasos. CEVA implementó esta idea teórica en sus procesadores para lograr la misma precisión que se habría logrado con la convolución normal, pero con una aceleración de casi el doble:una ganancia en rendimiento con una reducción de potencia. Esto se puede hacer en cada uno de los cinco coprocesadores dentro del motor.

Otro truco es operar de manera diferente en diferentes tipos de datos, dependiendo de cuál sería óptimo para una aplicación en particular. Por ejemplo, la localización y el mapeo simultáneos (SLAM) requieren una precisión muy alta, por lo que debe usar aritmética de coma flotante. Para otras aplicaciones, un número fijo de bits sería perfecto. De esta forma, el fabricante de automóviles puede elegir el método de cálculo que mejor funcione para cada función dentro del vehículo.

Al usar tanto la manipulación del software como la optimización del hardware, puede obtener una aceleración significativa, hasta 16 veces con NeuPro-M según Abraham.

Resumiendo

Esta ha sido una descripción general del funcionamiento interno de un procesador de IA en particular a medida que procesa los datos de una variedad de sensores (radar, lidar, sonar, cámaras) y toma decisiones. El NPM es un procesador heterogéneo:puede operar con diferentes tipos de datos y optimizar su operación según lo medido por TOPS/vatio mediante el uso de dos niveles de procesamiento paralelo, así como un diseño específico del software.

  1. Fang Chen, PhD, Informe de investigación de SAE Edge — Cuestiones no resueltas en la autonomía de los vehículos, la inteligencia artificial y la interacción hombre-máquina.

Este artículo fue escrito por Ed Brown, editor de Sensor Technology. Para obtener más información, póngase en contacto con Ed en Esta dirección de correo electrónico está protegida contra spambots. Necesita habilitar JavaScript para verlo. o visita aquí .


Sensor

  1. ¿La inteligencia artificial es ficción o moda?
  2. Por qué Internet de las cosas necesita inteligencia artificial
  3. La inteligencia artificial juega un papel importante en el IoT
  4. Inteligencia artificial frente a aprendizaje automático frente a aprendizaje profundo | La diferencia
  5. AI:Encuentre el uso adecuado para la inteligencia artificial
  6. Video:El impacto de la inteligencia artificial (IA) en la fabricación y el mecanizado
  7. Robots de inteligencia artificial
  8. Asistente de IA:el futuro de la industria de viajes con el aumento de la inteligencia artificial
  9. El impacto de los sensores en la fabricación
  10. Inteligencia Artificial, la mejor defensa en ciberseguridad
  11. Big Data vs Inteligencia Artificial