Big data et voiture autonome, comment atteindre un tel degré d’intelligence ?

La réflexion autour du big data au sein du secteur automobile s'oriente immanquablement vers les stratégies à adopter en matière de gestion des données issues de la recherche sur la conduite autonome.

La marche vers l'autonomie des véhicules gagne en vitesse. Si les experts ne s'accordent pas encore sur la définition d'une date spécifique ou des premiers champs d'application, ils sont peu nombreux à démentir l'avenir des voitures autonomes. Ainsi, la réflexion autour des projets big data au sein des entreprises du secteur automobile s'oriente désormais immanquablement vers les stratégies à adopter de gestion des données issues de la recherche sur la conduite autonome.

La recherche sur la conduite autonome – de quoi s'agit-il ?

Cela peut sembler évident, "apprendre" à un véhicule à conduire dans le plus large éventail de conditions possible (conditions routières, conditions environnementales, comportement des autres véhicules, voitures ou camions, comportement des autres individus) représente un défi complexe. Selon l'Association américaine des automobilistes (AAA), 75 % des consommateurs ne sont pas prêts à adopter les voitures autonomes. Cependant, c'est justement l'enjeu auquel sont confrontés les constructeurs : apprendre aux véhicules à analyser et à répondre à toute combinaison de conditions opérationnelles de manière systématique et immédiate par le biais de règles distinctes (algorithmes).

Les machines peuvent également apprendre

Il est intéressant de constater que le processus d'apprentissage d'un être humain et d'une machine est similaire. Dans une situation donnée, les humains et les machines doivent dans un premier temps assimiler des expériences (données), avant d'appliquer un ensemble de règles (algorithmes) facilitant la résolution du problème. Que le résultat soit positif ou négatif, une leçon de l'exercice est généralement retenue.

Les approches traditionnelles de gestion des données retardent le développement de l'autonomie

Il s'avère que l'apprentissage des voitures est une démarche exigeant une quantité de données particulièrement importante. Les approches de gestion de données traditionnelles font difficilement face aux demandes qu'impose la recherche en matière de conduite autonome. Il faut considérer les défis sous deux points de vue :

1. Les défis concernant le stockage des données

Les véhicules utilisés pour les tests d'autonomie (les voitures circulant dotées d'une caméra dernier cri surdimensionnée) génèrent plusieurs téraoctets de vidéos et de données RADAR, LIDAR et de capteur par véhicule et par jour. Pour la large flotte de véhicules actuellement testée, de simples opérations mathématiques suggèrent que les constructeurs automobiles reçoivent et sauvegardent plusieurs pétaoctets de données de test sur les voitures autonomes. Pourquoi conserver tant de données ? La raison est simple. Les constructeurs automobiles tentent de capturer des données décrivant virtuellement chaque condition opérationnelle que peut rencontrer un véhicule (par exemple, traverser une intersection de nuit dans des conditions glissantes) pour utiliser ces informations afin d'"apprendre" aux voitures à conduire.

Traditionnellement, ces données de test sont sauvegardées sur de nombreux serveurs de stockage en réseau, souvent répartis sur plusieurs sites dans le monde. Cependant, compte tenu des limitations de coûts et de performances afférentes aux systèmes basés sur serveur, les constructeurs automobiles recherchent des solutions de stockage plus efficaces pour leurs recherches sur les véhicules autonomes.

2. Les défis concernant le traitement des données

Une fois l'ensemble de ces données stockées, comment les exploiter pour apprendre à une voiture à conduire ? Plusieurs étapes de traitement de données sont nécessaires. Dans un premier temps, chaque image vidéo (associée aux données RADAR, LIDAR et de capteur) est analysée pour capturer avec précision les événements « observés » (par exemple, une personne traversant une intersection) et répertoriés, fournissant une bibliothèque d’"entrées" de scénarios de conduite, sur la base desquels les ingénieurs peuvent développer des règles (algorithmes) capables de dicter la réaction d'un véhicule. Dans un deuxième temps, ces algorithmes doivent être testés par des simulations, utilisant des big data de véhicules autonomes réels collectées précédemment.

Les architectures traditionnelles ne sont pas optimisées pour les opérations de traitement de données à grande échelle qui sont requises pour tester les algorithmes par simulation. En utilisant des méthodes traditionnelles, les données relatives à la conduite des véhicules sont stockées dans des solutions sur serveurs et transférées vers des postes de travail où les ingénieurs testent les algorithmes en cours d'élaboration. Ce processus suppose deux défis fondamentaux. Le premier défi concerne les énormes volumes de données qui nécessitent d'être déplacés, ce qui requiert un temps considérable et une large bande passante. Le second défi concerne les postes de travail individuels, qui ne fournissent pas la puissance de calcul massive requise pour renvoyer les résultats de simulation dans un délai convenable. C'est donc sans surprise que les constructeurs automobiles recherchent des solutions plus efficaces.

Une solution optimisée pour une accélération du développement de l'autonomie

Parmi les acteurs du secteur automobile, une approche ressort dans l’objectif de relever les défis de gestion des données associés à la recherche sur les véhicules autonomes. Cette approche repose sur deux principes de base :

1. Le stockage de données au sein du framework libre et open source Hadoop

Grâce à la capacité de stocker des données de taille illimitée (au-delà du pétaoctet) et variées (vidéo, LIDAR, RADAR, capteur…), le système de fichiers distribué Hadoop (HDFS) fournit un support hautement performant et rentable pour stocker les données relatives à la recherche sur les véhicules autonomes.

2. Le traitement de données au sein d'Hadoop

Cette approche permet également de mettre à profit la capacité intrinsèque d'Hadoop à accomplir des charges de travail MapReduce et Spark extrêmement évolutives, particulièrement utile pour traiter les tests de simulation des algorithmes. En agissant ainsi, les entreprises remanient la stratégie de traitement des données. Plutôt que de transférer les données vers des algorithmes exécutés sur des postes de travail afin de traiter les données, cette nouvelle méthode prescrit la méthode opposée, en redéployant les algorithmes vers le lieu de stockage des données (Hadoop), où sont effectués les calculs hautes performances.

Cette approche améliore considérablement les performances de traitement des données. Les résultats des tests de simulation nécessitant plusieurs jours auparavant sont désormais obtenus en quelques minutes, accélérant ainsi les progrès vers l'autonomie. Des technologies complémentaires étendent encore ces avantages. Par exemple, en équipant les nœuds Hadoop de processeurs graphiques, les calculs de simulation reposant sur des structures d'apprentissage approfondi peuvent être considérablement accélérés. En outre, les technologies de conteneur permettent de déployer d'anciennes applications, auparavant uniquement utilisables sur des postes de travail, directement sur des clusters Hadoop hautes performances, sans avoir à les adapter.