Il est récemment apparu que le groupe Volkswagen, célèbre fabricant d'automobiles, avait inclus dans le logiciel embarqué dans certains de ses véhicules une fonction permettant de détecter qu'un test officiel était en cours et d'ajuster les paramètres du moteur pour s'assurer de respecter les réglementations anti-pollution. Lors d'essais en conditions réelles, une association s'est aperçue que les Volkswagen émettaient bien plus sur route que lors des tests, contrairement au véhicule tank d'une marque concurrente, BMW. Après quelques péripéties, Volkswagen a admis qu'un logiciel lui permettait d'adapter les émissions lors d'un test.

On comprend bien que ce type de manœuvre soit interdite: pour que les normes anti-pollution soient utiles, il faut que les tests soient représentatifs, dans une certaine mesure, du comportement réel des émissions de polluants. Utiliser un logiciel qui modifie les réglages du moteur quand un test est détecté ruine complètement cette représentativité puisqu'on peut alors faire des choses très différentes entre le test et l'utilisation réelle. Les mesures effectuées et répercutées dans la presse indiquent une multiplication par 30 et plus des émissions de NOx entre les tests et la conduite sur route de montagne (voir p62 du pdf). Que la production d'oxydes d'azote soit facilement modifiée n'est pas une surprise: cela résulte de la modification du mélange, où plus d'air injecté résulte dans une plus grande quantité d'oxydes d'azotes créés.

Le premier constat qu'on peut faire est que les automobiles sont désormais en grande partie contrôlées par leurs ordinateurs de bord qui sont capables de faire un certain nombre d'ajustements d'elle-mêmes. Avec l'augmentation de la puissance de calcul, on a non seulement droit au GPS, mais il est aussi possible d'essayer de deviner le comportement de l'automobiliste pour passer les rapports de vitesse, des boîtes automatiques avec de plus en plus de rapports, etc. Dans le cas présent, les ordinateurs de bords sont peut-être désormais capables d'ajuster les paramètres du moteur pour optimiser la puissance et la couple ou encore la consommation de carburant, comme le font les pilotes de F1 en piste. Avec les avancées en termes de machine learning, on peut construire des machines qui reconnaissent bien des situations et leur apprendre différents comportements suivant le situation. Bien sûr cela a des conséquences en termes de pollution, puisque le moteur ne passe sans doute pas les tests anti-pollution en dehors d'un mode de fonctionnement relativement étroit. Parmi les autres désagréments, on peut aussi maintenant pirater des voitures pour les mettre en carafe. C'est le revers de la médaille du surplus de confort et de l'optimisation des performances.

L'optimisation, justement: aujourd'hui, les produits complexes comme les automobiles sont le résultats de compromis et donc d'optimisations: on cherche à obtenir les meilleures performances, au meilleur prix. Les performances sont elle-mêmes très diverses: il faut que la voiture soit confortable, facile à conduire, performante, peu polluante: ces contraintes ne sont pas nécessairement toutes compatibles entre elles. D'où l'idée d'établir des comportements différents suivant la situation: avec la puissance de calcul actuelle, c'est envisageable! C'est même facilité par le côté stéréotypé des tests officiels, dont il est bien difficile de s'échapper. En effet, un test officiel a pour but d'être reproductible afin de donner une autorisation à la vente: le réaliser dans des conditions contrôlées et une procédure très idéalisée aide à atteindre ce but. Il se doit aussi de ne pas être trop long ou trop compliqué faute de quoi, il serait extrêmement cher et ouvrirait la porte à la contestation. Cette affaire Volkswagen va sans doute amener à ce que les tests d'homologation se déroulent dans des conditions plus proches de la réalité et pourquoi pas en situation réelle. On peut aussi noter que le fait d'établir des normes peut conduire à perdre de vue le but final de l'optimisation. C'est un peu ce qui s'est produit avant la crise des subprimes: un certain nombre de produits financiers ont été construits pour répondre à une spécification émise par les agences de notation. Les ingénieurs employés par les banques ont été chargés d'y répondre, avec pour seul but de passer le test des agences et non d'éviter le défaut de paiement. Pour Volkswagen, ceux qui ont décidé d'inclure la fonction «spécial test» ont perdu de vue le but global qui était fixé: atteindre de bonnes performances tout en polluant un minimum.

Enfin, cette histoire montre aussi qu'il est bien difficile de cacher éternellement des comportements peu recommandables lorsqu'on est une firme mondiale. Il y aura toujours quelqu'un pour tester les produits quelque part dans le monde! Et comme ils sont souvent motivés, on peut s'attendre à ce qu'ils arrivent à leurs fins. Le comportement dont il est question est bien difficile à discerner pour le commun des mortels: bien malin qui peut déterminer la composition des gaz d'échappements sans équipement perfectionner ou comparer tests officiels avec comportement routiers sans un minimum d'organisation. Alors de là à cacher une fonction qui ferait juste tomber un produit en panne après une certaine date, ce serait du pur délire tellement c'est un comportement facile à déceler: décidément, les tenants de la prétendue «obsolescence programmée» sont très proches des théoriciens du complot! Au fond, la meilleure garantie que les produits vendus aujourd'hui respectent bien la loi, c'est qu'ils soient vendus à grande échelle.