Blog

  • La maintenance prévisionnelle au cœur de l’industrie 4.0

    La maintenance prévisionnelle au cœur de l’industrie 4.0

    Avec la vague du numérique et la digitalisation liée à l’émergence de l’industrie 4.0, la maintenance prévisionnelle prend toute sa place dans les entreprises industrielles, en combinant différentes technologies : des capteurs intelligents (IoT, Internet of Things), des logiciels de GMAO (Gestion de Maintenance Assistée par Ordinateur) et des algorithmes performants d’analyse de données et d’intelligence artificielle. 

    Qu’est-ce que la maintenance industrielle ?

    Selon la norme NF EN 13306 (2001), la maintenance peut être définie comme « L’ensemble de toutes les actions techniques, administratives, et de management durant le cycle de vie d’un bien, destinées à le maintenir ou à rétablir dans un état dans lequel il peut accomplir la fonction requise » [EN1 01]. Elle comprend ainsi un ensemble d’actions de dépannage, de réparation, de contrôle, de vérification des équipements matériels, et doit contribuer à l’amélioration des processus industriels. Dans la vision traditionnelle, la fonction maintenance permet d’améliorer la sûreté de fonctionnement des systèmes industriels, notamment leur disponibilité. Mais, les missions de la fonction maintenance ne se limitent plus à cela. Des exigences de qualité, de sécurité, et de coûts sont apparues, et les enjeux ainsi que les prérogatives de la maintenance ont évolué ces dernières années.

    Avant les années 1960, le service de maintenance d’une entreprise avait pour principale mission d’intervenir sur les équipements en panne afin de les réparer le plus rapidement possible [1]. Ce type de maintenance, dite corrective, a ensuite été peu à peu complétée par une approche plus anticipatrice des phénomènes de défaillances, c’est-à-dire par une maintenance réalisée avant que la panne ne se produise. Ces deux grands types de maintenance, corrective et préventive, présentent certaines variantes exposées ci-dessous et résumées dans la figure 1.

    Il existe donc plusieurs types de maintenance :

    La maintenance corrective est définie selon la norme NF EN 13306 (2001) comme « une maintenance exécutée après détection d’une panne et destinée à remettre un bien dans un état dans lequel il peut accomplir une fonction requise ». La maintenance corrective intervient suite à la détection et à l’identification d’une panne ou lorsqu’il est nécessaire de remettre une machine en état. Elle comprend :

    • La maintenance palliative, qui s’apparente à un dépannage. Son rôle est de réparer de manière provisoire une ou plusieurs avaries afin que la machine puisse accomplir tout ou partie d’une fonction.
    • La maintenance curative, qui a pour but de remettre une machine dans un état donné pour qu’elle accomplisse une fonction donnée.

    La maintenance préventive est un type de maintenance planifiée à l’avance, selon un planning d’interventions régulières et des périodes prédéfinies. Cette maintenance est réalisée d’après les recommandations du constructeur des machines. Elle est définie selon la norme NF EN 13306 (2001) comme « une maintenance exécutée à des intervalles prédéterminés ou selon des critères prescrits et destinée à réduire la probabilité de défaillances ou la dégradation du fonctionnement d’un bien. »  Elle se décline comme suit :

    • La maintenance systématique intervient à des intervalles de temps bien précis, définis selon un planning qui ne tient pas compte des conditions d’utilisation de la machine. Cette maintenance peut conduire à un excès d’intervention inutile et donc à engendrer des coûts considérables pour les entreprises. Pour pallier cela, d’autres formes de maintenance préventives basées sur la surveillance de l’état réel des biens sont apparues : la maintenance conditionnelle et la maintenance prévisionnelle.
    • La maintenance conditionnelle, qui est, selon la norme NF EN 13306 une « maintenance préventive basée sur une surveillance du fonctionnement du bien et/ou des paramètres significatifs de ce fonctionnement intégrant les actions qui en découlent ». Cette stratégie repose sur l’analyse des données en temps réel des systèmes industriels complexes multi-composants (par exemple, les vibrations, la température, la pression, etc.). Elle vise la détection d’anomalies dans le fonctionnement des systèmes industriels. La découverte de changements ou d’une déviation par rapport à la normalité peut prévenir d’une défaillance à venir. Cependant, elle ne permet pas de dimensionner avec certitude les politiques de maintenance et de déterminer ainsi les états futurs du système.

    Enfin, la maintenance prévisionnelle, également appelée maintenance prédictive ou prescriptive repose sur l’estimation du temps de fonctionnement des composants des systèmes industriels avant défaillance (appelé Remaining Useful Life ‘RUL’). Elle prend en compte les conditions actuelles des équipements (par exemple la température extérieure, la pression atmosphérique, les rapports d’intervention de maintenance, les disponibilités de stocks) pour prévoir l’évolution dans le temps de l’état futur du système industriel. Le principe global est de transformer un ensemble de données brutes recueillies sur l’équipement surveillé en un ou plusieurs indicateurs de santé dont l’extrapolation dans le temps permet de planifier au mieux et avec davantage de précision les politiques de maintenance.
    La maintenance prévisionnelle est devenue un enjeu économique important dans les entreprises depuis quelques années. Les bénéfices attendus sont importants. Elle permet entre autres de réduire le nombre de pannes, d’augmenter la fiabilisation des productions, d’améliorer la sécurité du personnel, de réduire les périodes d’indisponibilités des équipements et d’augmenter le rendement des entreprises.

    Les processus de la maintenance prévisionnelle

    La surveillance et la maintenance industrielles font appel à différents processus métier dont la finalité est de maintenir le système en condition opérationnelle à moindre coût. Ces processus clé de la maintenance prévisionnelle se formalisent en la surveillance ou la détection de défaut, le diagnostic de défaillances, du choix d’action (préventive ou corrective), et la planification de ces actions dans le temps. Ces étapes correspondent à la nécessité de percevoir certains phénomènes (déviations de la normalité) ensuite de les comprendre et enfin d’agir en conséquence. Ceci ne consiste pas seulement à comprendre un phénomène (défaillance) qui vient de se produire, mais aussi à anticiper son apparition pour recourir à des actions évitant l’apparition de ces défauts et c’est l’objectif même du pronostic de défaillances. La complémentarité des activités de détection, diagnostic et pronostic peut être expliquée comme suit [2] :

    La détection vise à identifier le mode de fonctionnement du système, son état ; lorsqu’une défaillance est apparue, le diagnostic permet d’isoler et d’identifier le composant qui a cessé de fonctionner; le pronostic vise à prédire des états futurs du système. De ce fait, ces processus sont clé et se complètent parfaitement, ainsi le déploiement de la maintenance prévisionnelle requiert un ensemble de tâches regroupées sous le terme « système CBM » (Condition Based Maintenance). Ces tâches sont modélisées sous forme d’architectures. La plus connue est celle proposée par le groupe MIMOSA [3] : OSA/CBM (Open System Architecture for Condition Based Maintenance).

    L’architecture OSA/CBM se compose de sept couches fonctionnelles (voir figure 2) :

    1. Acquisition des données: ce module fournit au système des données numériques issues de capteurs (IoT). L’opérateur de maintenance peut être amené à saisir des données de façon manuelle (type d’intervention, cause, date, durée, etc.).
    2. Traitement des données: les signaux issus des capteurs sont traités afin d’extraire des informations permettant d’abord de renseigner sur la présence d’une anomalie, sur l’initiative d’une dégradation et à terme de représenter l’évolution de l’état du système surveillé au court temps.
    3. Surveillance : le module de surveillance (ou détection) compare les données en ligne avec certaines valeurs attendues ou connues. Il doit également être capable de générer des alertes en fonction de seuils préalablement fixés sur la base de critères de performance et ainsi de déceler rapidement une déviation par rapport à la normalité
    4. Diagnostic : sur la base de l’état détecté, il suggère les causes probables de défaillance (identification et isolation). Le module de diagnostic requiert une connaissance fine des composants du système. On se place donc à un niveau local en exploitant les informations des capteurs, des sollicitations et de l’environnement des composants étudiés.
    5. Pronostic : ce module s’appuie sur les données issues des modules précédents afin de prédire l’état futur du système ou du composant surveillé et de donner une estimation de la durée de de vie avant défaillance (RUL).
    6. Optimisation et aide à la décision: sa fonction principale est de planifier des actions de maintenance de manière optimale en se basant sur la RUL estimée.
    7. Présentation IHM: ce module reçoit les informations de tous les modules précédents pour une visualisation. Il peut être construit sous forme d’une IHM (Interface Homme Machine).

    Les concepts traditionnels de maintenance préventive ou corrective sont peu à peu complétés par une prise en compte plus proactives des défaillances, les industriels tendent à renforcer leur capacité à anticiper les défaillances afin de recourir à des actions préventives les plus fines possibles dans l’objectif de réduire les coûts et les risques. La littérature dans ce domaine met plus l’accent sur les défis spécifiques en lien avec le processus de modélisation et d’analyse de données (surveillance/diagnostic/pronostic). A ce niveau, le verrou le plus évident est celui de la prise en compte des spécificités du système considéré (types de dégradation, les sollicitations, condition d’utilisation, etc.) et de la nature des données recueillies (manquantes, censurées, non interprétables, etc.). Il apparait indispensable de mieux définir les limites de ces méthodes et de d’optimiser leur spécification afin que la recherche scientifique se consacre davantage à d’autres approches permettant de pallier ces manques.

    La maintenance prévisionnelle au service de la productivité des entreprises

    De nos jours, les outils liés à la maintenance prévisionnelle sont les plus implantés au sein de l’industrie mondiale. Selon les estimations, plus de 50 % des sites industriels dans le monde ont mis en place un outil pour la maintenance prévisionnelle. Selon un article publié dans Les Echos [4], la maintenance prévisionnelle permettra aux entreprises d’économiser 630 milliards de dollars d’ici 2025. Ces économies seront possibles grâce à une réduction des coûts de maintenance de 10 à 40 %, en réduisant considérablement le nombre de pannes et enfin en diminuant le montant investi dans les nouvelles machines de 3 à 5 %.  Selon le même article, les investissements liés à la maintenance prévisionnelle ont représenté 9,1 milliards de dollars en 2016 dans le monde, ce qui représente une croissance annuelle de 22 %.

    Pour finir, la mise en place de la maintenance prévisionnelle nécessite l’intervention de plusieurs compétences : les scientifiques ou les chercheurs qui sont capables de développer des algorithmes de prédiction et d’optimisation performants en associant des études d’analyse du risque mais aussi les experts métiers dont le travail est couplé avec les équipes de maintenance et les équipes de production qui connaissent la chaîne de production, les machines et leurs faiblesses. Dans les prochaines années, un travail de sensibilisation de ces équipes sera indispensable suite à l’évolution de leurs métiers et de leur rôle dans le processus de la maintenance prévisionnelle. A mon sens, le défi majeur de l’industrie 4.0 réside dans la capacité à impliquer l’humain.

     

    [1] R. Gouriveau, K. Medjaher, N, Zerhouni. Du concept de PHM à la maintenance prédictive 1. ISTE éditions, 2017.

    [2] R. Gouriveau, K. Medjaher. Chapitre 2: Industriel Prognostic- An overview. J. Andrews C.B, Jackson L. Maintenance Modelling and Applications, ISBN: 978-82-515-0316-7, p 10-30, Det Notske Veritas (DNV),2011.

    [3] MIMOSA-CBM, Condition Based Maintenance ; http://www.mimosa.org/,2016.

    [4] Pourquoi la maintenance prédictive va-t-elle révolutionner l’industrie ? Jean Regis de Vauplane. Les Echos. 2018

     

  • L’ingénierie des systèmes complexes à l’ère de la collaboration : enjeux et perspectives

    L’ingénierie des systèmes complexes à l’ère de la collaboration : enjeux et perspectives

    La complexité des systèmes ne cesse de croître, dans tous les domaines, du fait de l’intégration de toujours plus de fonctions internes au système, mais également de son interaction toujours plus forte avec son environnement, ouvrant la voie à toujours plus de services.
    L’ingénierie des systèmes se positionne comme « structuratrice » des activités de développement du système et de gestion de son cycle de vie. Son rôle est essentiel, en coordonnant les différentes ingénieries de développement et en devant composer avec les nouvelles contraintes de l’entreprise étendue. De fait, elle doit intégrer une composante majeure : la collaboration.
     

    De l’ingénierie système à l’ingénierie système collaborative

    Nous pouvons trouver de nombreuses définitions de la notion de système complexe au sein de la communauté scientifique :

    • Système constitué de nombreuses entités dont les interactions produisent un comportement global difficilement prévisible.
    • Système constitué d’un grand nombre d’entités en interaction qui empêchent l’observateur de prévoir sa rétroaction, son comportement ou évolution par le calcul.
    • Système dont la maîtrise de la conception, de la maintenance et de l’évolution est difficile, du fait de leur taille et du nombre de technologies utilisées, qui rendent l’ensemble malaisé à appréhender. En cela, les systèmes industriels complexes se distinguent d’autres systèmes techniquement compliqués mais dont les difficultés de conception peuvent être résolues par un seul ingénieur talentueux.

    Toutes se rejoignent sur l’idée d’un nombre élevé d’interfaces ou d’interactions qui ne peuvent pas être résolues par un seul homme. Ces multiples interactions font appel à de multiples parties prenantes, ce qui pose le besoin de travail en équipe comme vecteur de performance et d’efficacité.

    L’INCOSE (International Council on Systems Engineering, conseil international dédié à l’ingénierie des systèmes) présente dans sa vision 2025 de l’ingénierie système une schématisation des différents vecteurs de complexité, liés à l’émergence au fil du temps des différentes disciplines ou technologies (électronique, software, réseau et connectivité) mais également à de nouveaux modes de gouvernance (entreprise étendue), qui permettent l’émergence de systèmes de systèmes, paroxysme de la complexité des systèmes.

    L’ingénierie Système (IS) notamment basée modèles (MBSE – Model based System Engineering) est une première réponse pour gérer la complexité des systèmes. Elle se définit de façon basique et selon l’INCOSE comme « une approche transdisciplinaire et intégrative pour permettre la bonne réalisation, l’utilisation et le retrait de systèmes d’ingénierie, en utilisant les principes et les concepts des systèmes, et les méthodes scientifiques, technologiques et de management »[1], que les réflexions autour du standard IEEE 1220 Standard for Application and Management of the Systems Engineering Process (IEEE P1220-1994) ont tenté d’enrichir par une notion de collaboration : « approche collaborative interdisciplinaire pour concevoir, faire évoluer et vérifier une solution système tout au long de son cycle de vie, et qui réponde aux attentes des clients et soit acceptée »[2]. Mais cette notion n’a finalement pas été retenue dans le standard officiel ISO/IEEE, qui restitue en lieu et place “Approche interdisciplinaire régissant l’ensemble des efforts techniques et de gestion requis pour transformer un ensemble de besoins, d’attentes et de contraintes des clients en une solution et pour soutenir cette solution tout au long de son cycle de vie.”[3]

    Ainsi, la dimension collaborative de l’ingénierie système n’est pas encore acquise. Loin de là. L’INCOSE la cite ainsi dans sa vision 2025 comme un des axes de transformation à venir de l’ingénierie système :

    Entre coopération et collaboration, l’amalgame est souvent fait, le terme de coopération définissant au sens large [Larousse] l’« action de coopérer, de participer à une œuvre commune ; collaboration, concours ». Pourtant les nuances sont fortes. Le tableau ci-dessous, extrait du [guide pratique du travail collaboratif : Théories, méthodes et outils au service de la collaboration. –Brest 2009] en illustre les principaux deltas.

    Ainsi l’ingénierie système, de base coopérative, devient collaborative dès lors que le partage de responsabilité de chacun est gommé au profit d’une responsabilité partagée, engagée, collégiale, autour d’un même objectif. La collaboration s’accompagne d’une ingénierie résolument concourante ou simultanée (méthode d’ingénierie qui consiste à engager simultanément tous les acteurs d’un projet, dès le début de celui-ci, dans la compréhension des objectifs recherchés et de l’ensemble des activités qui devront être réalisées) et fait définitivement disparaitre la notion d’ingénierie séquentielle, comme l’illustre la figure ci-dessous :

    L’entreprise étendue et la vision Système de Systèmes comme défi de l’ingénierie système collaborative

    Les cas d’application de la collaboration sont aujourd’hui multiples et touchent des domaines très diversifiés : la conception collaborative et l’ingénierie système collaborative, le collaborative manufacturing, la prise de décision collaborative, la maintenance collaborative, l’économie collaborative, etc.

    L’ingénierie système collaborative se justifie pour sa part pleinement et trouve des challenges de taille avec l’entreprise étendue et la vision système de systèmes.[4] Comment faire travailler ensemble des partenaires, avec des compétences, méthodes et outils hétérogènes sur des sujets Système de Systèmes où la notion de donneur d’ordre n’existe plus et où plusieurs partenaires s’associent pour répondre à un objectif global (la mobilité autonome de demain, les villes intelligentes, la gestion du trafic aérien, etc.) ?

    L’image suivante, appliquée au domaine de l’ingénierie système, illustre le principe de structuration de l’entreprise étendue et le besoin de collaborations (espace collaboratif) :

    L’entreprise étendue pose un certain nombre de verrous sociologiques, technologiques, ou juridiques qui ne sont, pour certains, encore que très partiellement abordés. Comment réussir à se comprendre lorsque chaque partenaire, doté d’une culture qui lui est propre, recourt à son propre référentiel et qu’un même terme peut être interprété différemment par chacun ? Comment concilier les processus hétérogènes de chacun pour en faire émerger un nouveau en réponse à l’enjeu de collaboration ? Comment construire des points de vue en s’appuyant sur un ensemble d’outils et d’analyses hétérogènes en provenance des partenaires ? Comment arbitrer les choix et piloter la décision lorsque le décideur n’est pas unique ?

    Les plateformes collaboratives, en se présentant comme le trait d’union technique entre les différents partenaires et leurs outils hétérogènes, et en offrant la promesse d’un partage maîtrisé de l’information, sont à ce titre un élément essentiel de la collaboration. C’est également le cas des processus qui doivent permettre, dans un contexte où les relations contractuelles client / fournisseur ou maitrise d’ouvrage / maitrise d’œuvre s’estompent au profit d’une relation de partenariat et où les organisations et les rôles sont dépassés, de redonner un cadre et une structure au travail collaboratif afin de répondre à l’objectif visé.

    La plateforme collaborative comme support de l’ingénierie système collaborative

    Les enjeux de la plateforme collaborative sont multiples. Elle doit permettre de faciliter le travail de collaboration en entreprise étendue et d’être le support des processus collaboratifs en les outillant.

    La vue suivante illustre certaines capacités clés attendues de la part d’une plateforme collaborative :
    Partager, car elle doit permettre de partager collégialement les données (les rendre visible) en s’affranchissant des outils sources et de leur licence, en maitrisant l’exposition de la donnée et en garantissant la confidentialité de la donnée.
    Orchestrer, car elle doit permettre l’orchestration des simulateurs en connexion avec la plateforme ou l’orchestration d’analyses diverses (analyse d’impact, autres)
    Analyser car elle doit offrir des services de « requêtage » sur l’ensemble des données publiées, afin de restituer un point de vue global, en vue de construire des analyses d’impact, ou parce qu’elle doit permettre la vérification de la cohérence des données d’ingénierie système échangées, via des mécanismes de gestion spécifiques (détection des incohérences, correction ou acceptation des incohérences, …)
    Piloter, car elle doit offrir un tableau de bord de pilotage et gestion de programme collaboratif compatible avec l’environnement de l’entreprise étendue, ainsi qu’un ensemble de services permettant de faciliter la discussion, l’arbitrage et la décision avec des partenaires répartis sur différents sites, dont les revues techniques collaboratives et complètement virtuelles sont une illustration directe.

    Il n’existe à ce jour pas de plateforme collaborative intégrant l’ensemble de ces caractéristiques.

    Certaines sont spécialisées sur des services particuliers :

    • la revue collaborative pour SECollab de Sodius,
    • le partage et la synchronisation de paramètres en temps réel entre les différents outils connectés à la plateforme et en vue de faciliter l’orchestration de simulations pour KARREN de Digital Product Simulation.

    D’autres offrent un panel plus élargi de capacités comme la plateforme 3DExperience de Dassault Systèmes.

    La plateforme collaborative a encore une belle marge de progression devant elle, les aspects autour de la cohérence de données ou du requêtage et de l’analyse d’impact n’étant que très partiellement adressés.

    Les processus, vecteur essentiel de l’ingénierie système collaborative

    L’ingénierie collaborative impose d’orchestrer différents acteurs et différents rôles, en définissant des règles de fonctionnement et de collaboration que les processus décrivent. Les processus sont une composante essentielle de l’ingénierie système, que l’ISO15288 regroupe en quatre familles :

    • Les processus techniques permettent de transformer le besoin en solution et couvrent l’ensemble de la vie opérationnelle des produits correspondants.
    • Les processus de management (ou projet) permettent d’organiser, piloter et suivre la réalisation du projet (activités d’ingénierie du système et obtention des livrables du projet).
    • Les processus contractuels assurent la relation acquisition – fourniture au niveau système complet et s’appliquent également à toute relation client – fournisseur.
    • Les processus d’entreprise fournissent le support extérieur nécessaire au projet (référentiel entreprise, compétences, ressources humaines et matérielles, moyens financiers, système d’information, etc.).

    Ils sont une composante essentielle de l’ingénierie système collaborative, ce qui justifie l’existence dans les entreprises d’une ingénierie des processus, souvent associée aux activités de management de la qualité. Une plateforme collaborative, doit permettre de faciliter l’application de ces processus et idéalement d’en automatiser les étapes sensibles et critiques.

    Les perspectives de l’ingénierie Système collaborative

    Ainsi, l’ingénierie système collaborative est une réponse à l’entreprise étendue et à la complexité toujours plus forte des systèmes et systèmes de systèmes. Elle a une belle marge de progression et présente de réels enjeux de recherche articulés autour de différents axes :

    • Garantir un échange d’informations pertinentes en ne rendant visible que le juste nécessaire aux autres parties prenantes.
    • Construire un point de vue à partir d’éléments hétérogènes en provenance de sources hétérogènes.
    • Réconcilier différents points de vue pour faire émerger le point de vue de la collaboration.
    • Réaliser une analyse d’impact sur la base d’un ensemble de données hétérogènes issues d’outils hétérogènes, sans passer par une plateforme d’intégration unique.
    • Garantir la cohérence d’une même information formalisée dans différents outils hétérogènes.
    • Prendre la bonne décision face à une multiplicité croissante des critères de choix du fait de la complexité des systèmes et du nombre de parties prenantes impliquées. Étudier la pertinence du recours à des méthodes MCDA d’aide à la décision pour l’ingénierie système.
    • Répondre aux besoins d’orchestration de processus et co-simulation. L’interopérabilité entre outils en est une clé mais souffre d’un manque d’application de standards de développement qui permettrait de faciliter cette interopérabilité.

    et sans doute d’autres encore… afin notamment de répondre à l’ambition INCOSE.

     

    [1] « a transdisciplinary and integrative approach to enable the successful realization, use, and retirement of engineered systems, using systems principles and concepts, and scientific, technological, and management methods »,

    [2] « An interdisciplinary collaborative approach to derive, evolve, and verify a life-cycle balanced system solution which satisfies customer expectations and meets public acceptability”.

    [3] “interdisciplinary approach governing the total technical and managerial effort required to transform a set of customer needs, expectations, and constraints into a solution and to support that solution throughout its life”

    [4] INCOSE: A System of Systems (SoS) is a collection of independent systems, integrated into a larger system that delivers unique capabilities. The independent constituent systems collaborate to produce global behaviour that they cannot produce alone.

  • Automated driving safety validation: proposals from the French Eco-system

    Automated driving safety validation: proposals from the French Eco-system

    Reflections on the future of automated driving safety homologation/certification have been very active recently, based on the general consensus that existing validation approaches have to be significantly modified. At the United Nation level, a dedicated group has been set up on Automated and Connected Vehicles named VMAD (WP29/GRVA/VMAD). At the EU level, the Commission has launched a working group on the future of approvals approaches, led by the Joint Research Center.

    This paper, presented at VMAD meeting on January 2020, is a French contribution to on-going reflections on automated driving safety homologation/certification. It has been written by experts from the French authorities in charge of vehicle regulation and transports, in concertation with the French automated driving eco-system, i.e. “France Véhicules Autonomes”. Though this concertation is still on going, so that this document is still a draft, it provides some background to feed ongoing reflections on new homologation/certification approaches and try to cover as many Automated Driving Systems types (e.g. Traffic Jam Chauffeur Level 3, Urban Shuttle L4, Valet Parking L4 etc) as possible.

    >> Read the paper <<

  • Le machine learning au service de la conduite autonome

    Le machine learning au service de la conduite autonome

    Le machine learning est aujourd’hui omniprésent. Il transforme peu à peu l’industrie et notamment le marché des voitures autonomes. Au sein de cet article, nous expliciterons la notion de voiture autonome, dans le but d’identifier les méthodes existantes pour les faire fonctionner. L’enjeu est primordial : comprendre les liens entre l’apprentissage de la conduite par des machines et la compréhension humaine, tant sur l’aspect sémantique que sur l’aspect factuel.

    Qu’est-ce qu’une voiture autonome ?

    Les voitures autonomes s’apprêtent à bouleverser nos déplacements et notre gestion du trafic routier. Il convient donc d’en dresser une définition. Jusqu’à récemment, une définition unanime n’avait pas encore été approuvée par l’ensemble des acteurs internationaux, tant sur le plan technique (en termes de méthodes d’apprentissage), que sur le plan juridique (en termes de responsabilités et de législation routière), ou même géographique (en termes de dépendances entre les deux précédents points et selon le pays). Un consensus récent a cependant vu le jour, définissant divers niveaux d’automatisation , lesquels nous permettent non seulement d’entrevoir l’avenir mais également de situer l’avancement des recherches.

    Les niveaux d’automatisation – U.S. National Highway Traffic Safety Administration

    Le rapport du véhicule avec ce qui l’entoure et la manière qu’il peut avoir de réagir aux événements qui se déroulent autour de lui sont des enjeux primordiaux pour l’instauration d‘une confiance de la société envers cette innovation. Le fonctionnement d’une voiture autonome peut être décrit comme suit : le véhicule perçoit son environnement, planifie son trajet puis infère le trajet en fonction des informations des capteurs. Il y a donc trois sous-composantes : la perception, la planification et le contrôle. Il est alors possible d’entrevoir le rôle primordial que pourrait jouer la donnée, puisqu’elle semble être à l’origine la base d’apprentissage nécessaire à la prise de décision du véhicule autonome au sein de cette chaîne de traitement. Une question importe : comment se servir du machine learning dans ce cas ?

    La question du machine learning en conduite autonome

    Le machine learning, y compris sa variante récente deep learning, est un sous-domaine de l’intelligence artificielle. Il est possible de distinguer plusieurs types d’apprentissages adaptés à un secteur applicatif particulier. Dans le transport autonome, on se concentre sur l’apprentissage supervisé et celui par renforcement, mais ces deux derniers ne se basent pas du tout sur le même paradigme théorique.

    En apprentissage supervisé, la donnée est prépondérante. Cette dernière est labélisée (chaque donnée possède une description), et le système apprend simplement à relier un ensemble de caractéristiques observées à un label. Si nous cherchons à reconnaître quel fruit se trouve sur une image, chaque donnée pourrait décrire la circonférence et la couleur du fruit, et on connaîtrait déjà la typologie de chacune de ces entrées.

    Le système pourrait ensuite être capable de conclure la nature du fruit à chaque nouveau duo de circonférence et de couleur qu’on lui donnerait. L’explosion du deep learning a d’ailleurs rendu ces tâches beaucoup plus simples qu’auparavant et les réseaux de neurones sont maintenant au cœur des méthodes utilisées. Dans le cas des voitures autonomes, la perception identifierait un panneau de signalisation et des données sur la vitesse par exemple et prendrait une décision sur l’accéleration à appliquer ou sur le fait de freiner, en fonction de cette information.

    Workflow de perception et de prises de décision à travers les données capteurs

     

    Bien que de nombreux modèles apparaissent et sont fonctionnels, nous restons dépendants de la donnée. De grandes quantités de ces dernières sont nécessaires pour obtenir une représentativité suffisante des situations. Sans données variées, la voiture pourrait faire face à une situation qu’elle n’a jamais rencontrée . Il serait donc intéressant de pouvoir jouer sur les données différemment pour se rapprocher de l’intelligence humaine, pour aller au-delà de cet apprentissage par l’association. Mais comment faire ?

    Un paradigme différent face aux données

    L’apprentissage par renforcement pourrait être considéré comme un modèle de théorie des jeux, à la croisée de nombreux domaines allant de l’informatique aux neurosciences en passant par la psychologie. En effet, un agent agit sur un environnement au moyen d’actions. Ce dernier lui renvoie une récompense, qui est la première clé du renforcement. Nous déduisons de la connaissance à partir des observations passées et nous souhaitons maximiser la récompense à travers le temps. La donnée n’est plus le socle, mais constitue une interaction avec l’agent en décrivant l’environnement après une action ! Les équations de Bellman permettent alors de formaliser la prise décision et la maximisation de la récompense.

    Principe de l’apprentissage par renforcement

    Comment savoir si une action fut le meilleur choix ? C’est le principe d’exploration/exploitation qui constitue la seconde clé du renforcement. Imaginons que notre environnement soit constitué de deux portes qui se trouvent face à nous. La première nous offrirait une petite somme constante à chaque fois qu’on l’ouvrirait, tandis que la seconde nous offrirait un immense trésor mais seulement à de très rares ouvertures de cette dernière. Il nous faudrait alors trouver le bon équilibre. L’agent risquerait de considérer la première porte comme étant la plus intéressante, mais la seconde mériterait de ne pas complètement être délaissée : l’exploration de ce que nous ne connaissons pas, face à l’exploitation des éléments connus de l’environnement.

    Le renforcement utilise des modèles tels que les réseaux de neurones, plus connus pour leur utilisation dans l’apprentissage supervisé, pour des problèmes où l’apprentissage se fait avec des données pour lesquelles on ne connaît pas réellement la réponse attendue au premier abord. En effet, le principe d’exploration/exploitation énoncé plus haut implique une modification constante des entrées et des actions possibles, ce qui va à l’encontre des modèles supervisés qui ont ce besoin en données labélisées. Par l’utilisation de plusieurs astuces, on se retrouve pour certaines méthodes dans une situation similaire au supervisé et les réseaux de neurones sont alors en mesure d’être utilisés de manière stable. Ces derniers ont une finalité différente de ce que l’on peut rencontrer habituellement. Il faut donc relier le modèle, l’algorithme en somme, et la formulation du problème dans lequel on se trouve.

    Liens entre modèles et formulation d’un problème

    Si l’on revient à notre cas d’usage, l’environnement serait donc la route autour de notre véhicule, ce dernier prenant des actions dans cet environnement qui lui renvoie des récompenses selon les actions prises. Il s’agit donc d’un apprentissage par l’erreur, comme si le modèle raisonnait pour éviter de prendre de mauvaises décisions au fil du temps. Le nombre de portes devient cependant gigantesque, et plusieurs problèmes, déjà énoncés pour certains, apparaissent :

    • l’apprentissage est souvent complexe, le modèle met du temps à se stabiliser,
    • l’espace des actions et résultats possibles est énorme dans le cas des voitures autonomes,
    • les entrées et sorties dont le système se sert pour apprendre changent constamment, puisque l’environnement est dynamique.

    On entraîne le plus souvent les systèmes de renforcement dans des simulateurs réalistes pour veiller à étudier leurs comportements avant d’imaginer pouvoir les mettre en production pour le monde réel, compte tenu des problèmes énoncés. Après la perception et la représentation des données qui en découle, la prise de décision en renforcement pourrait aller plus loin que celle étudiée via les méthodes supervisées : l’intelligence artificielle capable de raisonner, la clé pour que les voitures autonomes soient définitivement une réalité et se rapprochent du raisonnement humain, capable de moduler ses décisions en fonction de l’environnement qui l’entoure.

     

    Entre extraction de connaissances et raisonnement, combiner le meilleur des différents mondes pourrait donc permettre à l’être humain de voir sa vison du transport révolutionnée. Comme un pas de plus vers l’intelligence artificielle généralisée, les voitures autonomes sont au cœur des préoccupations puisque la technique rencontre ici un système critique, qui nécessite une mise en relation directe de son efficacité avec les biais humains qu’elles se doivent d’outrepasser.
    Il reste encore de nombreuses travaux à effectuer, la recherche et l’industrie s’intéressant de plus en plus au renforcement comme l’avenir du domaine, et potentiellement sa sécurisation, enjeu majeur du déploiement de ces technologies.

  • A glimpse of Smart City

    A glimpse of Smart City

    By 2050, 70% of the world population is likely to live in cities. Albeit, the footprint of cities only represents a few percentage of Earth surface area, but is a major contributor to pollution. Therefore, a legitimate quest is launched for optimizing resources and organization for the sake of the well-being of inhabitants. Hence, a concept of smart city aroused few decades ago and, by the same token, a technology fantasy that would revolutionize urban way of life inherited from thousand years of collective history. Is this reality? Lyon and Singapore will be providing a realistic glimpse of smart city in the course of this article.

    City. Today, understood as an important town [1], originally coming from the French word, Cité, itself rooted in civitas, the latin description of a city-state [2]: a community of free citizens. Between Latin and English, the meaning has switched from the inhabitants to the place, and by the same token so does the understanding of city evolves over times and space. History is made. What about the future?

    Smart city. A label encompassing a future vision of an improved city. It originates from a private-business led trend in the late 20th century, promoting the use of technology to improve urban life, and in the meantime creating a new commercial market. Marketing wise, “Smart” offers a wider shade of inspiration than its French counterpart “intelligent”. So much wider, that different points of views are controversial and therefore the notion itself of a smart city shall always be defined before arguing about it. It seems that “natural” intelligence has regained strength over the initial approach purely based on “artificial” intelligence, for the sake of the collective interest.

    As a basic, a common understanding of the smart city concept would be the sustainability of the urban area, using collective intelligence with Digital technology as key enabler [3]. Either way, the topics covers larger areas of sciences (legal, social, computer science, biology, geography…), and a wide variety of applications (policy, infrastructure, health, education, mobility, energy, housing…). Let’s get a humble slice of it, looking at two footprints of the IRT SystemX in Lyon and Singapore.

    So far away, yet so close? Both cities attend the Smart City Expo World Congress held annually in Barcelona [4]. A show where primarily territories compete for exposure hoping in return to get favor of investors, and possibly new citizens: in 2018, Singapore won the city award. Yes, smart city is also a business, at least in the “western” world.

    Lyon: French pioneer of smart cities

    SystemX had the opportunity to join the Lyon Metropole booth during 2017 and 2018 edition with different communication aspiration. Interestingly, SystemX was a contributor to both of them.

    Co-construction. In the 2017 edition, SystemX featured its smart territory activities (an extended concept of the smart city) lying in mobility, energy and blockchain [5], while Lyon metropole smart-city communication strategy stressed on the “CO”, meaning collective, collaborative, partnership based, contributive, open, public-private-people etc. To this end, the booth highlighted 2 key components: Experimentation– Lyon urban area as a playground for experimentation and an Innovation Ecosystem, including dynamic companies, research institutes, collaborative places, fablabs… and last but not least citizens, as the core stakeholder.

    Truly so, the greater area of Lyon fosters distinctive smart city accelerators ranging from academics (i.e. labex), to start-ups (i.e. tuba) and industrials (i.e. Cara European cluster). In that respect, SystemX provided a true leverage for this dynamic ecosystem with its ability to build collaborative projects fostering innovation based on real use case scenario. As an example, the project definition of LCE (Lyon Covoiturage et Expérimentations) kicked off the same year, integrated Lyon’s will to include different partners to boost and test carsharing solutions over his territory [6].

    Digital security. In 2018, Lyon metropole message focused on driving health and wellbeing for all citizens. Alongside air quality, care and access, the booth underlined cybersecurity as a key concern for the smart city resilience and therefore citizen protection. Again, SystemX was well suited to share its digital security research domain and field of investigation.

    It is worth mentioning that the metropole of Lyon operates several urban systems (water distribution, waste management, traffic regulation…) critical for everyday urban life. Although these systems are not always visible to citizens, they are getting more and more connected, and therefore vulnerable to cyber-attacks. The connectivity is a real added value to smart city implementation as it fosters data cross fertilization. The metropole of Lyon implemented a proactive data strategy : providing a single publicly run data platform that provides access to over 1000 sets of qualified and reliable data, from local public and private partners. Different licenses were designed to regulate the reuse of strategic data and build a trustful environment. For the last 2 years a specific focus was made on personal data management to ensure privacy and citizens’ empowerment on data. As another example of SystemX contribution to this goal, the BWM (Blockchain Wallet de la Mobilité) project is an innovative step forward powered by blockchain to the current deployment of a citypass giving access to public and private services to Lyon inhabitants.

    Singapore: The 1st Smart Nation in the world?

    In Singapore, the concept of Smart City has been extended from 2014 to the Smart Nation one. Yet in 2014, the Prime Minister launched the Smart Nation initiative, with a view to:

    • Making Citizens’ life better
    • Creating opportunities for Businesses
    • Building a better home and community (see picture below)

    This tremendous initiative is headed at the highest level of the government, and financially supported by a significant budget. If we only consider the scope of Research and Innovation, where stands SystemX, 19BSG$, that represent more than 12 Mds€, are dedicated to the digital transformation of the country in a 5 years plan. This has to be compared to the Horizon 2020’ 5 years budget of 80 Mds€ for the whole of European Union.

    This transformation is focusing both on the public and private sectors, with all governmental bodies involved in order to financially contribute and set the pace for all key involved players coming from business, research, innovation, and public bodies.

    If you go one step deeper into the objectives, you will find the same topics as in most other big cities.

    Mobility, energy, security, health, sustainability, housing, education, infrastructures, are priorities, in no order of preference.

    Part of this massive transformation is Mobility, supported by the Smart Mobility 2030 Strategic Plan [7]. This is where SystemX came into play in Singapore, starting in 2018. SystemX came to Singapore in order to join the 1stworldwide project to build a center of excellence for the certification of the autonomous vehicles (AVs), namely the CETRAN (Centre of Excellence for Testing & Research of AVs – NTU) project. This is a flagship project for Singapore, willing to set worldwide standards for the development of AVs in megacities. In cooperation with its main partner, the Nanyang Technological University (NTU), SystemX is bringing its expertise on simulation and modelling in AVs to Singapore, together with French key partners, Renault, SNCF, Systra, and AV Simulation [8]. For SystemX, it is a highly competitive challenge, and also a way to cooperate with some of the best players in the world, be it from academia or industry. It opens new doors of development for the IRT and its human resources.

    In addition, SystemX develops contacts in other industry sectors within this Smart Nation, including energy, logistics, or cybersecurity. French companies are also part of this momentum. To name a few, Airbus, Thalès, ENGIE, EDF, PSA, Bolloré, Blue Solutions, Systra, Alstom, Safran, SopraSteria and many others use Singapore as an R&D platform to build the future of their business in Asia.

    As artificial intelligence is becoming a more and more key enabler, SystemX is also looking at partnering with academia on this unlimited chapter. NTU, NUS, A*STAR, or SUTD, are among the world best ranked academic players to do so. This is also a way for SystemX PhD students to spend time abroad in competitive research teams and bring back new expertise to France.

    To sum up, Singapore appears like a living lab where the world is coming to explore, innovate, and test technological solutions that will later on benefit to other countries. It is clearly the place to be for an Institute like SystemX and we see no limit to this cooperation.

    ———————————————————————————————————————————————————————————–

    If one tries to compare two cities like Lyon and Singapore, one may realize that key topics are very similar (mobility, energy, security…). However, the approach used to tacklethese issues might be different.

    Lyon and its surrounding suburbs was the first area to be granted the full status of French metropole in 2014. It acquired the largest set of competences a French public organization can get, after the state. As a city-state, Singapore gathers even more prerogatives, and hence long tem responsibilities.

    One example is water. Singapore has been dependent from Malaysia since before the creation of the country (1965), with 2 long term agreements signed in 1961 and 1962 to supply Singapore with water. One of these agreements ended in 2011, and Singapore managed not to renew it by putting in place the NEWater programme, focusing on recycling and desalination of water. This is a key milestone in Singapore independence and sustainability.

    The metropole of Lyon doesn’t need to bother much with foreign neighbour. However, it dedicates a lot of attention to protecting its citizens, and settles himself as a leader in strengthening people’s data , against the private digital champions. A pre occupation widely spread in Europe.

    In the end, megacities share a lot of concerns in order to improve their citizen’s lives. They address these issues according to their own culture, priorities, and skills. Comparing their strategies, methods and have them cooperate will allow fastest and innovative ways to progress. This is why SystemX is present in Singapore and Lyon: think out of the box and be humble and curious about what other players develop elsewhere.

     

    References:

    [1] https://www.lta.gov.sg/content/dam/ltaweb/corp/RoadsMotoring/files/SmartMobility2030.pdf

    [2] http://erian.ntu.edu.sg/Programmes/IRP/FMSs/Pages/Centre-of-Excellence-for-Testing-Research-of-AVs-NTU-CETRAN.aspx

    [3] https://www.cerema.fr/fr/actualites/qu-est-ce-qu-smart-city

    [4] http://www.smartcityexpo.com/en/home

    [5] https://www.irt-systemx.fr/en/feedback-on-smart-city-expo-world-congress/

    [6] http://assisescovoiturage.com/

    [7] https://www.lta.gov.sg/content/dam/ltaweb/corp/RoadsMotoring/files/SmartMobility2030.pdf

    [8] https://www.irt-systemx.fr/en/project/asv/

  • Vérification des réseaux de neurones : entre besoins et défis

    Vérification des réseaux de neurones : entre besoins et défis

    Le Réseau de Neurone (RN) est l’une des principales méthodes d’apprentissage automatique supervisé. La vérification de son comportement, c’est-à-dire l’évolution de ses sorties en fonction de la variation de ses entrées, représente un réel défi. Néanmoins, cette vérification est nécessaire dans un environnement incertain où les entrées du RN sont bruitées. Cet article introduit l’importance de la vérification du RN, donne quelques exemples d’applications et décrit la formulation de leur vérification.

    Dans un article précèdent, Loic Cantat, responsable du domaine «  Science des données, Intelligence Artificielle et Interactions » et Georges Hebrail, responsable de l’axe de recherche « Science des Données et Interaction » ont présenté un état de lieux des principales approches de Machine Learning (algorithmes, outils et plateformes). Le Réseau de Neurones (RN) est l’une des approches de Machine Learning (ML) les plus populaires. Il est appliqué à plusieurs domaines, à savoir la robotique, la télécommunication, les véhicules autonomes, etc.

    Dans le contexte des véhicules autonomes, les RNs peuvent être utilisés pour différentes problématiques :

    • la perception du véhicule (détection et reconnaissance des obstacles tels que les piétons, les panneaux de signalisation, le marquage au sol, etc.),
    • la surveillance du conducteur (état de ses yeux, angle de sa tête, sa fréquence cardiaque et respiratoire, etc.),
    • et la prise de décision en fonction de l’environnement du véhicule (changement de voie, calcul de la vitesse et angle de braquage, etc.).

    Quel que soit le domaine d’application, la décision des réseaux de neurones (détecter la présence ou l’absence d’un piéton, changer ou garder la voie, etc.) peut impacter la sécurité du conducteur, des passagers et des autres utilisateurs de la route. Par exemple, détecter l’absence du piéton alors qu’il est réellement présent peut provoquer un grave accident. Ces mauvaises décisions sont généralement causées par la perturbation de l’environnement du système de décision, d’où le besoin d’une part de métriques permettant l’évaluation de la sécurité des RNs face à l’incertitude de leur environnement extérieur, et d’autre part de stratégies adversaires permettant la sécurisation des RNs contre ces incertitudes.

    Au cours de cet article, nous rappellerons le principe de fonctionnement d’un réseau de neurones. Nous définirons ensuite la sécurité d’un RN, le défi qu’elle engendre et les applications les nécessitant. Finalement, nous présenterons quelques approches de vérification d’un RN ainsi que les critères permettront de les comparer.

    Qu’est-ce qu’un réseau de neurones ?

    Un RN est composé de trois types de couches : une couche d’entrée, une couche de sortie et un ensemble de couches cachées. Le fonctionnement générique d’un RN est le suivant :

    • La couche d’entrée prend une donnée sous n’importe quel format (image, audio, description d’un trafic réseau, etc.).
    • La couche de sortie délivre une information qui peut avoir plusieurs formats (une valeur discrète, valeur continue, un vecteur de probabilités, etc.).
    • Pour passer de la couche d’entrée à la couche de sortie, une chaine de traitement est faite à travers les couches cachées. Ces dernières peuvent être des couches de convolution, de réduction de dimensionnalité, des fonctions d’activation etc.

    Au sein de cet article, nous définirons l’espace des entrées par l’ensemble de toutes les entrées possibles du RN ; et l’espace des sorties par l’ensemble des sorties possibles du RN.

    Vocabulaire d’un réseau de neurones

    Que signifie la sécurité des réseaux de neurones et comment la vérifier ?

    L’étude de la sécurité d’un réseau de neurone consiste à vérifier la capacité du RN à prendre la même décision pour toutes les données similaires, malgré les perturbations qu’elles peuvent engendrer. On appelle « une attaque » tout bruit pouvant perturber le RN.

    Le vérificateur (le système vérifiant la sécurité du RN) prend en entrée, une donnée et une attaque, et délivre à la sortie l’information sous la forme d’une « donnée sécurisée contre l’attaque ou donnée non-sécurisée contre l’attaque ».

    L’idée principale de la vérification consiste à calculer, à partir de la donnée en entrée, toutes les données possibles suite à l’attaque en question (données bruitées), et vérifier que les propriétés de la donnée originale restent valides pour les données bruitées. Les propriétés sont fixées préalablement, elles peuvent être l’appartenance à une plage d’intervalle ou encore l’appartenance à une classe d’objet.

    Principe de la vérification du réseau de neurones

    La figure suivante schématise la vérification de la sécurité d’un réseau de neurones pour une entrée donnée et pour une attaque connue. L’espace des entrées, en bleu, est l’ensemble de toutes les entrées résultantes de l’attaque en question. L’espace atteignable des sorties du RN, en rouge, désigne l’ensemble de toutes les sorties possibles. En calculant l’ensemble atteignable, deux cas peuvent exister :

    • l’ensemble atteignable est inclus dans l’ensemble désiré en vert, c’est-à-dire les propriétés des entrées sont conservées, et donc le RN est dit sécurisé.
    • l’ensemble atteignable n’est pas inclus, totalement ou partiellement, dans l’ensemble désiré, en vert, alors les propriétés ne couvrent pas l’ensemble des entrées, et donc le RN est dit non-sécurisé.
    Sécurité d’un réseau de neurones

    Pourquoi la sécurité des réseaux de neurones est-elle un défi ?

    La variation d’éclairage d’une image de piéton peut perturber le réseau de neurones qui classera par la suite le piéton comme un autre objet. Ces facteurs perturbants sont nombreux et diffèrent d’un contexte à un autre (image, audio, vidéo, etc.). Ces facteurs peuvent être regroupés en trois catégories :

    • Les facteurs environnementaux liés à l’environnement extérieur du système : il s’agit des conditions météorologiques, de l’infrastructure routière, du comportement du trafic routier, etc.
    • Les facteurs matériaux dus à la défaillance du système liée à sa durée de vie, sa configuration, son interférence avec d’autres capteurs, etc.
    • Les facteurs algorithmiques (logiciels) liés à l’erreur de précision des variables, etc.

    Le visuel ci-dessous illustre un exemple de deux attaques de RNs : dans le contexte de traitement d’images, le port des lunettes peut être une attaque qui perturbe le système biométrique de reconnaissance des visages et dans le contexte de traitement audio, un petit bruit inséré dans le signal audio a complètement modifié la transcription du signal.

    Exemples des attaques perturbant le réseau de neurones. Gauche : exemple en traitement d’images. Droite : exemple en audio.
    Exemples des attaques perturbant le réseau de neurones. Gauche : exemple en traitement d’images. Droite : exemple en audio.

    Tous ces facteurs perturbants peuvent impacter la performance du RN. Le défi actuel n’est pas uniquement de former un système de prise de décision performant (par exemple, en matière de taux de reconnaissance, de taux de bonnes détections, etc.) mais aussi le fait que ce dernier soit sécurisé (i.e. robuste) à la perturbation de ses entrées. Il s’agit du problème de vérification (ou certification) du réseau de neurones.

    Quelles sont les applications de la vérification de RN ?

    Les algorithmes de Machine Learning sont de plus en plus utilisés pour résoudre des problèmes très complexes et très sensibles à la tolérance des fautes. Prenons l’exemple de deux applications d’utilisation de réseaux de neurones : la première consiste à estimer les ressources nécessaires pour une application dans le cloud et la deuxième consiste à estimer l’angle de braquage d’un véhicule autonome. Bien que les deux applications aient la même importance, commettre une erreur de prise de décision dans la deuxième application a plus de risques que dans la première. En conséquence, la vérification d’un RN est fortement recommandée dans les applications à risques. Avoir des outils permettant de fournir des garanties formelles sur le comportement des systèmes reste un défi.

    D’une manière générale les applications à risque nécessitent une vérification/certification du RN avant son déploiement. Parmi ces applications, nous pouvons citer la cybersécurité (détection d’anomalies, détection d’intrusion, protection du mot de passe, etc.), la médecine (une mauvaise décision pourrait mettre en danger la vie des patients) et les systèmes autonomes (véhicules, robots, avions, etc.).

    Comment le problème de vérification de réseau de neurones a-t’il été formulé dans la littérature ?

    Les approches de l’état de l’art se différencient par la façon avec laquelle le problème de vérification de réseau de neurones a été formulé. On peut identifier deux stratégies de vérification du RN :

    • La première stratégie suppose l’existence d’un contre-exemple ; un exemple où le RN n’est pas sécurisé et tente de le trouver. L’existence du contre-exemple prouve que le RN n’est pas sécurisé.
    • La deuxième stratégie consiste à calculer l’ensemble atteignable de toutes les entrées et vérifie s’il est inclus dans l’ensemble désiré. Son inclusion prouve que le RN est sécurisé.

    Quels sont les critères pertinents qui peuvent nous aider à choisir l’approche de vérification ?

    Pour un utilisateur intéressé à vérifier son RN, la question qui se pose est la suivante : quels sont les critères permettant de choisir l’approche la plus adéquate ?

    Parmi les critères qui distinguent une approche de vérification d’un réseau de neurones d’une autre, on cite :

    • Le temps moyen de réponse : il s’agit du temps moyen nécessaire pour vérifier une entrée donnée.
    • La scalabilité : certaines approches perdent leur efficacité lorsqu’elles sont appliquées sur les réseaux de neurones de large profondeur. La scalabilité est définie par la capacité de l’approche à rester efficace même pour des RNs de large profondeur.

     

    Dans cet article, nous avons évoqué le problème de vérification de réseau de neurones, un problème très important pour les systèmes à faible tolérance aux fautes pour garantir sa sécurité. D’une manière générale, ce problème est celui de la vérification de l’évolution des sorties d’un réseau de neurones en fonction de la perturbation de ses entrées. Cette perturbation est due globalement au trouble de l’environnement extérieur du réseau de neurones. Pour résoudre le problème de vérification, plusieurs approches ont été proposées avec des formulations différentes. Pour un contexte donné, l’approche la plus adéquate peut-être sélectionnée en fonction de son temps moyen de réponse et de sa scalabilité. Le comportement des approches en fonction de ces critères varie d’un contexte à l’autre et d’un type de données à un autre.

  • Challenges of the Autonomous Train

    Challenges of the Autonomous Train

    Artificial Intelligence is becoming ubiquitous in today’s world. One of the most impacted sectors, a major field of study at IRT SystemX, is Autonomous Transportation. While autonomous cars have garnered the most media attention, trains have recently joined the race towards autonomy. In this blogpost, we present the challenges that the rail industry must defeat in order to make driverless trains a reality.

    Take a look at the timeline of fundamentally important discoveries and inventions which have changed the course of history. It is straightforward to pinpoint the most disruptive ones. As the consensus would have it, the top of the list features, in chronological order, fire, the wheel, and electricity.

    Merely a century and a half after the invention of the light bulb, our world is witnessing a new revolution through the medium of technology. Forget science fiction. According to Andrew Ng, one of the world’s leading figures in Artificial Intelligence (AI) development, « AI is the new electricity ». Just as 100 years ago electricity transformed industry after industry, AI’s impact on our daily life grows by the second and is becoming preponderant. A recent report by PwC estimates that AI will add $15 trillion to the world economy by 2030.

    AI’s Projected Impact on Global GDP

    One of the most impacted sectors, a major field of study at IRT SystemX, is Autonomous Transportation. The multiplicity of projects involving autonomous vehicles around the world attest to the fact that there is a marked tendency towards automating our daily tasks and making our lives easier thanks to intelligent technology. Therefore, it is of no surprise to read that the autonomous car industry is set to be worth $6.2 trillion euros in 2050.

    Cars are far from being the only vehicle of interest in the quest towards automation: trains have recently joined the race. According to the Transparency Market Research, the market for autonomous trains will grow at a CAGR[1] of 12.70% by 2025. Even though trains are behind time in terms of vehicular automation, there is a crude sense of excitement when learning about the initiatives being spearheaded at national and international levels:

    • The German Railways (Deutsche Bahn) is planning to make a portion of its network fully autonomous by 2023.
    • The Swiss Federal Railways (SBB) and the Südostbahn AG (SOB) have already tested automation technologies without passengers.
    • East Japan Railway is confident of successfully running driverless trains in the future.
    • Australia’s ruling safety board recently approved an autonomous system for trains.
    • Last, but not least, France’s national railway company SNCF expects to see semi-autonomous trains running on the French rail network by 2020 and fully automatic trains within five years, following the establishment of two consortia of suppliers and research institutes to develop and implement the technology.

    As it happens, SNCF, along with Alstom, Systra and Université de Technologie de Compiègne (UTC), has partnered with IRT SystemX on the TAS project (Safe Autonomous Land Transport) in order to provide a proof of concept for the replication of a train driver’s observational capabilities. The project, launched in April 2017 for a two-year period, focuses on recognizing the state of railway traffic lights, and detecting obstacles on the railway. Note that the content of this article does not reflect the results of the project.

    SNCF Train

    According to the International Association of Public Transport, there are four Grades of Automation (GoA) of trains:

    1. GoA1: The first grade is manual train operation, where the train driver controls starting and stopping, operation of doors and handling of emergencies or sudden diversions.
    2. GoA2: The second handles operations like changing tracks, starting, and stopping.
    3. GoA3: The third grade is driverless train operation where there are no drivers, but an attendant is onboard in order to take control in case of an emergency.
    4. GoA4: Finally, the fourth grade corresponds to unattended train operation, which is true automation without any staff on board.
    Trains’ Grades of Automation (GoA)

    In order to achieve full autonomy, trains will be equipped with advanced (and/or intelligent) cameras, high-precision sensors, and state-of-the-art positioning systems. These components may feature AI technology and Machine Learning capabilities that should comply with safety requirements.

    Readers of this blog who are well versed in autonomous cars, may think that the presence of railways renders the challenge easier. Not so quick! Multiple factors make the train a unique problem, which cannot be solved by a simple transposition of the solutions found for other types of vehicles. Here are some illustrative examples:

    • One of the main difficulties lies in the complex interaction of the various subsystems when the train is running: monitoring the status of the railway track, the position of other trains and the physical integrity of the train, and determining the space required to brake safely. If any subsystem cannot judge the situation accurately, it will perform defensively by slowing or stopping, which hinders transport performance.
    • The variability of use cases in the rail industry is much more important than for cars:
      • Railway signalling in France

        Railway signalling is diverse and features multiple types of signals and state combinations. For example, a signalling device of type ‘H’ is configured to show up-to 18 different states, using eight light bulbs.

      • There exists a plethora of train types with matching infrastructure. Thus, an autonomous system that applies to one type of trains may not necessarily generalize to another. While there is a will for unification, overhauling a country’s entire rail infrastructure is a daunting long-term project that comes at high cost.
    • The stopping distance of a train is function of its body weight, cargo, and speed: a 10-car passenger train moving at 100 km/h requires about 500 meters to come to a halt. Therefore, it is imperative to detect obstacles and recognize the state of traffic lights well in advance before making a calculated stop.
    • A special emphasis is given on passenger safety and system dependability. Without proof of the computer system’s reliability, security, and robustness, autonomous trains cannot be certified, let alone commercialized.
    • Testing the system in situ requires access to railway infrastructure, which is not as trivial a matter compared to regular roads.

    These bottlenecks may be holding GoA4 trains back today, but there is no doubt that we are on the brink of a breakthrough that will revolutionize public transportation as we know it. Both freight and passenger trains will benefit from full autonomy: driverless operations increase system availability, network capacity and operational efficiency.

    One thing is certain: it is but a matter of time before we reach industrial maturity in this area. Indeed, autonomous trains are expected to mark the beginning of the third “rail revolution”, after electric traction and high-speed rail. Moreover, they will cement AI’s reputation for being the biggest disruption of the modern era.

     

    [1] Compound Annual Growth Rate

  • Cyber-immunité des systèmes industriels : entre mythes et réalité

    Cyber-immunité des systèmes industriels : entre mythes et réalité

    L’industrie constitue un écosystème privilégié d’innovations technologiques et de gains de productivité. Sur le plan stratégique, le tissu industriel occupe également un rôle déterminant pour la souveraineté et l’indépendance économique et énergétique d’un pays. En 2010, l’attaque Stuxnet, visant les installations nucléaires iraniennes, a révélé au grand jour l’ampleur de la menace qui pèse sur ces systèmes industriels. Depuis, la liste des incidents ne cesse de s’allonger. Dans cet article nous nous intéressons à la menace qui pèse sur les installations industrielles et apporterons un premier éclairage sur les différentes stratégies de défense mises en place.

    Digitalisation et cyber-menace : les deux faces d’une même pièce

    Les systèmes industriels doivent constamment relever de nouveaux défis afin de faire face à une concurrence mondiale accrue. C’est ainsi que ce secteur s’est massivement digitalisé ces dernières années en vue d’automatiser ses processus et d’optimiser son efficacité. Comme le démontre une étude récente de PwC [1], d’ici 2020, 907 milliards de dollars seront dépensés afin de permettre à la majorité des entreprises de passer le cap de la digitalisation. Cette évolution de paradigme industriel s’inscrit dans une démarche globale, appelée « Industrie 4.0 », « Internet industriel », « Internet des objets Connectés Industriels (IIoT) » voire « Usine digitale ».

    Au-delà du débat terminologique, intégrer le digital au sein d’une usine ou d’une installation industrielle se traduit systématiquement par de profondes transformations portées par de nouveaux composants matériels et/ou logiciels. Lao-Tseu disait « celui qui a inventé le bateau a aussi inventé le naufrage ». De ce fait, la transformation digitale peut être une « arme à double tranchant ». D’une part, elle apporte son lot d’innovations et de sophistication et, d’autre part, elle étend la surface d’attaque et rallonge la liste des vulnérabilités et des menaces auxquelles ces systèmes industriels peuvent être exposés.

    Typiquement, un système de contrôle industriel (ICS, Industrial Control System) représente l’ensemble des équipements et logiciels utilisés pour contrôler et surveiller les éléments constitutifs d’une installation industrielle. Ces éléments reposent sur des technologies éprouvées comme les Automates Programmables Industriels (API), les Systèmes Numériques de Contrôle-Commande (SNCC) et les systèmes de contrôle et d’acquisition de données (SCADA).

    Traditionnellement isolés des systèmes d’information de l’entreprise, ces composants industriels dits opérationnels voient leurs cloisons s’atténuer progressivement pour une inter-connectivité massive avec l’IT, localement en réseau ou via Internet (i.e. le Cloud). Cette convergence entre systèmes d’information et réseaux industriels n’est pas dénuée de risques, notamment lorsqu’il s’agit d’instrumenter des équipements non informatiques avec des objets connectés industriels (OCI, IIoT pour Industrial Internet of Things). Par ailleurs, désormais davantage exposés, ces composants utilisent souvent des logiciels et/ou protocoles de communication propriétaires rendant difficile leurs évolutions pour faire face aux nouvelles menaces.

    Une menace en perpétuelle évolution

    En 2005, un ver informatique, appelé Zotob, a été à l’origine d’un déni de service massif qui a affecté 13 usines automobiles de DaimlerChrysler aux États-Unis. L’attaque a duré moins de deux heures et les dégâts ont été estimés à plus de 14 millions de dollars. Le ver a initialement infecté les postes de travail du système d’information pour se propager par la suite vers le réseau industriel. Deux ans plus tôt, une attaque similaire exploitant le ver Slammer avait rendu inopérant les systèmes de sûreté de la centrale nucléaire de Davis-Bess aux États-Unis. Bien que les deux attaques ne soient pas ciblées, l’absence de cloisonnement entre systèmes d’information et réseaux industriels a facilité leur progression et aggravé leurs préjudices. L’enseignement principal de ces deux incidents réside justement dans le manque d’enseignements dont ont fait preuve les responsables de DaimlerChrysler suite à l’attaque sur la centrale nucléaire. Une simple mise en place d’un filtrage rigoureux entre le réseau IT et industriel leur aurait permis d’éviter facilement l’attaque.

    Quinze ans plus tard, la situation est toujours aussi préoccupante. Bien que le degré de sensibilisation vis-à-vis de la menace cyber ne soit plus le même qu’en début du siècle, la prise de conscience des industriels, bien qu’encourageante, est à relativiser. En effet, la menace a changé de dimension. Les attaques récréationnelles massives ont été reléguées au second plan en faveur d’une nouvelle génération d’attaques plus ciblées, plus sophistiquée et aux conséquences d’une extrême sévérité. Que ces attaques émanent d’espérions industriels, de criminels, d’hacktivistes, de terroristes ou de groupuscules soutenues par des états hostiles, le constat est le même. Désormais, le visage de la menace a évolué. Il n’est plus représenté par le jeune hackeur doué, à la recherche de sensations fortes, mais par des membres de commandos suréquipés, surentrainés et surmotivés. Il s’agit désormais de professionnels dont la mission principale est de mettre à mal la sécurité de l’installation industrielle de leurs cibles.

    L’importance des chaînes de défense pour une stratégie de sécurité de bout-en-bout

    L’écart entre le niveau de la menace et le degré de protection est en train d’atteindre son paroxysme. Preuve de ce déficit, la longue liste d’attaques visant les installations industrielles depuis Stuxnet et leurs impacts sur l’économie mondiale. Bien que la prise de conscience de la gravité de la menace cyber ne soit pas récente pour les services de l’État et les grands groupes, celle-ci n’est qu’à ses premiers balbutiements quand il s’agit de petites ou moyennes entreprises (TPE/PME) [2]. Or, une chaîne n’est pas plus solide que son maillon le plus faible et les capacités techniques, humaines et financières limitées des TPE-PME en font des proies faciles. C’est d’ailleurs ce qu’a souligné Guillaume Poupard, Directeur général de l’ANSSI (Agence nationale pour la sécurité des systèmes d’information) lors de l’édition 2019 du Forum International de la cybersécurité (FIC) : « Les attaquants ont compris que pour toucher certaines cibles, il était beaucoup plus efficace de s’en prendre aux prestataires, à la supply chain ». C’est d’ailleurs ce que démontre une étude de terrain menée depuis 2016 par l’IRT SystemX sur la quantification du risque informatique sur l’ensemble du territoire français, avec une soixantaine de petites entreprises et d’associations de loi 1901 victimes d’attaques [3-5].

    Alors que le directeur de l’ANSSI milite pour mobiliser tous les acteurs de la sécurité pour une défense collective, solidaire et globale à l’échelle de la France, voire de l’Europe, certaines voix n’hésitent plus à évoquer le sujet longtemps tabou de la défense offensive. Motivée par une situation qu’ils qualifient de « cyber-guerre », cette ligne de défense proactive est notamment portée par la Ministre des Armée, Florence Parly, au travers du volet offensif de la doctrine cyber-militaire dévoilée au FIC en janvier 2019.
    Tandis que la sécurité collaborative prônée par l’ANSSI met l’accent sur l’importance de la coopération entre les acteurs de la sécurité industrielle, la doctrine soutenue par le ministère des armées vise à instrumenter le lien entre la cible à son attaquant. Ces instruments offensifs ont pour objectif de neutraliser et mettre hors d’état de nuire la source de l’agression.

    Cependant, la plupart des entreprises visées par les cybercriminels, notamment les TPE/PME, sont très loin de ce niveau de sophistication et n’ont certainement pas la capacité de l’atteindre à court et moyen terme. Nous introduirons ci-dessous une troisième stratégie de sécurité centrée sur l’entreprise et sa gestion interne de la sécurité. Portée par des industriels et des académiques, cette approche repose sur des concepts bio-inspirés tel que « immunité », « vigilance » et « résilience ». A terme, cette approche vise à sensibiliser les entreprises à la pratique d’une sécurité robuste, complète et évolutive afin d’inscrire la mise en œuvre de politiques de sécurité interne dans un processus d’amélioration continue de la qualité de protection.

    Cyber-immunité : vers une stratégie de protection adaptative

    Le concept de cyber-immunité vise à reproduire par mimétisme les phénomènes d’autoprotection observés chez certains êtres vivants (par exemple l’Homme) pour mieux appréhender la menace cyber. En réalité, le principe de cyber-immunité fait partie d’une approche globale visant à intégrer « by design » des fonctions de protection, de détection et de réaction afin d’assurer la continuité de l’activité métier malgré les perturbations liées à des actes malveillants.

    Comme illustré dans le schéma ci-dessous, ce changement de paradigme par rapport à la pratique classique de la sécurité informatique repose sur l’intégration synergétique des concepts de cyber-immunité, cyber-vigilance et cyber-résilience afin de fournir une approche de sécurité industrielle intégrale, dite à 360°.

    1. La cyber-immunité vise à renforcer le système vis-à-vis des menaces connues. Cela implique le déploiement et la mise en œuvre de solutions de protection adaptées à l’état de l’art. Ce principe vise également à immuniser le personnel, souvent considéré comme le maillon faible de la chaîne de sécurité, en le sensibilisant et en le formant au respect des règles définies au sein de la politique de sécurité de l’entreprise. Enfin, la cyber-immunité se nourrit des expériences passées en inscrivant le système dans un processus d’amélioration continue de la qualité de la protection. Cela passe, à titre d’exemple, par une gestion efficace des correctifs et des procédures de maintien en conditions de sécurité et maintien en condition opérationnelles.
    2. La cyber-vigilance vise à maintenir le système dans une posture de méfiance permanente vis-à-vis des menaces du cyber-espace industriel. Cela se traduit par la mise en œuvre de mécanismes de surveillance des activités du système ainsi que le déploiement de solutions de détection d’intrusions. Enfin, la posture de vigilance ne saurait être complète sans une tâche de veille régulière afin d’identifier les nouvelles menaces et de s’y préparer.
    3. La cyber-résilience a pour objectif de doter le système industriel de capacités de réaction rapides et adaptées à la menace. L’objectif est d’ajuster la réaction à l’ampleur de l’attaque et cela englobe les procédures de mitigation d’attaques et de remédiation. La menace étant inévitable, le but de la cyber-résilience est de garantir la continuité des activités industrielles, même en mode dégradé, malgré la menace.

     

    Dans cet article, nous avons apporté un premier éclairage sur l’importance de la menace pesant sur les systèmes industriels. Nous avons également motivé l’intérêt d’une stratégie de cadrage simple, efficace et adaptée. Cette stratégie de cadrage, appelée « sécurité auto-adaptative », repose sur la synergie entre les concepts bio-inspirés d’immunité, de vigilance et de résilience appliquée à la pratique de la cybersécurité. Dans un prochain article, nous développerons ces trois volets et motiverons leur adéquation par rapport la mise en œuvre d’une sécurité évolutive en milieu industriel et accessible à des acteurs aux moyens limités tel que les TPE/PME.

     

    Références : 

    [1] : https://www.pwc.fr/fr/espace-presse/communiques-de-presse/2018/avril/transformation-digitale-industriels-francais-prevoient-economies-augmentation-revenus.html

    [2] : https://www.chefdentreprise.com/Thematique/digital-innovation-1074/Infographies/Plus-PME-cinq-est-victime-cyber-attaque-335996.htm

    [3 ] : https://www.irt-systemx.fr/wp-content/uploads/2017/10/ISX-IC-Cyber-Risque.pdf

    [4] : https://blog.irt-systemx.fr/le-piratage-informatique-en-france-un-cyberimpot/

    [5] : https://www.lepoint.fr/economie/les-cyberattaques-un-risque-pour-les-pme-aussi-03-11-2017-2169603_28.php

  • Le Machine Learning, un domaine de l’Intelligence Artificielle en forte évolution

    Le Machine Learning, un domaine de l’Intelligence Artificielle en forte évolution

    Le Machine Learning est l’une des principales technologies de l’Intelligence Artificielle (IA). Cet article vous propose un état des lieux des approches de Machine Learning et des plateformes et outils actuellement disponibles dans ce domaine.

    Le Machine Learning et sa place dans l’IA

    Dans leur rapport au Sénat en mars 2017 (synthèse du rapport), le député Claude de Ganay et la sénatrice Dominique Gillot retiennent six grands domaines pour définir l’intelligence artificielle, en lien étroit avec cinq domaines des sciences humaines et sociales (partie droite du graphique ci-dessous) :

    Les pourcentages indiquent la répartition estimée de manière approximative des chercheurs français entre les différents domaines de l’intelligence artificielle. (Source : Rapport Claude de Ganay/Dominique Gillot « Pour une intelligence artificielle maîtrisée, utile et démystifiée »).

    L’apprentissage automatique (« Machine Learning » en anglais) est l’un des principaux domaines de l’intelligence artificielle. Il permet de réaliser des programmes informatiques, accomplissant des tâches difficiles à programmer par des moyens traditionnels (ou bien au prix d’un effort, d’une expertise et d’un temps bien plus important). L’idée est de concevoir des algorithmes capables d’apprendre à trouver eux-mêmes une solution, soit à partir d’exemples déjà résolus (apprentissage supervisé), soit en récompensant chaque progression de l’algorithme vers une solution satisfaisante (apprentissage par renforcement).

    Les différents types de Machine Learning

    Le Machine Learning consiste à construire un algorithme qui utilise directement des données représentatives du problème que l’on cherche à résoudre. En conséquence, les différents types de Machine Learning correspondent aux manières d’utiliser ces données pour « apprendre à la machine » à résoudre un problème.
    Elles se distinguent principalement par le niveau de supervision de l’apprentissage, et/ou la manière de récompenser la progression de l’apprentissage vers une bonne solution. Nous avons dressé ci-dessous une liste des principales typologies :

    → Apprentissage supervisé (supervised)

    On présente à l’algorithme des exemples de la tâche à réaliser, où sont fournies à la fois les entrées (des images par exemple) et les sorties (résultats) souhaitées (par exemple voiture, avion, etc.). Le but de l’algorithme de Machine Learning (réseaux de neurones, SVM – machine à vecteurs de support, etc.) est alors de rechercher une règle générale qui fait correspondre les entrées aux sorties.
    Le cas général de l’apprentissage supervisé est adapté lorsque l’on connait le résultat attendu pour un grand nombre de données d’entrée. Plus les modèles sont complexes, plus la quantité de données nécessaires pour obtenir de bons résultats est grande.
    En fonction des données disponibles pour l’apprentissage, on pourra utiliser des versions dérivées de l’apprentissage supervisé telles que celles présentées ci-dessous :

    • Apprentissage semi-supervisé (semi-supervised) : l’ordinateur ne reçoit qu’un signal d’apprentissage incomplet. Pour une partie des exemples, les entrées sont disponibles mais les sorties sont manquantes.
    • Apprentissage actif (active) : l’ordinateur ne peut obtenir la sortie que pour un nombre limité d’entrées (basé sur un budget) et doit optimiser son choix des exemples pour lesquels il demande d’acquérir la sortie. L’apprentissage se déroule de manière interactive, les exemples étant présentés à l’utilisateur pour être étiquetés.
    • Apprentissage par renforcement (reinforcement) : les données d’entraînement (sous forme de récompenses et de punitions) ne sont données qu’à titre de rétroaction aux actions du programme dans un environnement dynamique, comme la conduite d’un véhicule ou le jeu contre un adversaire. Un exemple de ce type d’algorithme est le Q-Learning.

    → Apprentissage non supervisé (unsupervised)

    Cette méthode se distingue de l’apprentissage supervisé par le fait qu’il n’y a a priori pas de connaissance des sorties attendues. Dans l’apprentissage non supervisé, il y a comme entrée un ensemble de données collectées. Ensuite le programme traite ces données comme des variables aléatoires et construit un modèle de « densités jointes » pour cet ensemble de données. L’algorithme doit découvrir par lui-même la structure plus ou moins cachée des données.
    Voici deux exemples de méthode d’apprentissage non supervisé :

    • Le clustering pour identifier dans un ensemble de données, des sous-populations présentant des caractéristiques proches. Cette méthode permet par exemple d’identifier des groupes de personnes au sein d’un échantillon.
    • L’auto-encodeur correspond à la capacité à construire une représentation intermédiaire des données d’entrée, équivalente mais de plus petite dimension, et permettant de générer, à partir de cette représentation un résultat aussi proche que possible des données sources.

    Exemple : à partir d’un ensemble d’images HD couleur (1082x920x3~=3 millions de valeurs), on construit un réseau de neurones qui, pour chacune des images, fournira une représentation sous la forme de X valeurs (1000 par exemple) permettant de reconstruire une image la plus proche possible de l’original. Cette méthode peut être utilisée pour la compression d’images (on ne transfère plus que les 1000 valeurs au lieu des 3 millions), mais cette méthode peut aussi avoir d’autres usages. En effet, pour compresser l’image, le réseau va devoir chercher à « interpréter » le contenu de l’image, et donc identifier des caractéristiques propres à celles-ci. Ces caractéristiques sont utiles pour la classification d’images, on pourra donc utiliser le modèle appris via un auto-encodeur (sur des images non étiquetées), pour le réutiliser dans l’apprentissage d’un classifieur d’images.

    → Apprentissage par transfert (transfer)

    L’apprentissage par transfert peut être vu comme la capacité d’un système à reconnaître et appliquer des connaissances et des compétences apprises à partir de tâches antérieures sur de nouvelles tâches ou domaines partageant des similitudes. Les questions qui se posent alors sont : comment identifier les similitudes entre la ou les tâche(s) cible(s) et la/les tâche(s) source(s) ? Comment transférer la connaissance de la/des tâche(s) source(s) vers la/les tâche(s) cible(s) ?
    Nous avons donné un exemple de transfert dans la description de l’auto-encodeur, mais cette technique s’applique à bien d’autres cas. Elle permet souvent de pallier le faible nombre de données disponibles pour un problème donné, en utilisant les résultats obtenus avec des problématiques proches.
    Pour une vision plus complète des méthodes de Machine Learning, voici une carte mentale construite par l’IRT SystemX :

    Les applications du Machine Learning

    Avec l’informatisation de la plupart des processus dans les entreprises, de nombreuses données reflétant l’activité de l’entreprise, de ses employés et de ses clients sont générées. Ces données contiennent les « règles » ou les « équations » régissant ces processus : on peut donc envisager d’automatiser certaines tâches en utilisant ces données comme exemples d’apprentissage. On trouve donc des applications du Machine Learning dans quasiment tous les secteurs, comme l’atteste le diagramme ci-dessous issu d’un blog du 4 juin 2016 du magazine économique américain Forbes.

    Comment mettre en œuvre le Machine Learning ?

    Pour développer une application basée sur du Machine Learning, il faut trois éléments principaux :

    → Des données

    Comme le principe de ces applications est d’utiliser des données servant d’exemples pour l’apprentissage, il est indispensable de disposer de telles données, qui peuvent être notées ou non, en fonction du problème posé (supervisé ou non). On distingue les données servant à l’apprentissage, pour construire le modèle, de celles servant à l’évaluation de la performance du modèle. Dans tous les cas, on préfère utiliser des données réelles, mais dans certains cas, celles-ci ne sont pas suffisantes. Il est donc nécessaire de générer des données synthétiques pour compléter les données réelles.

    → Des algorithmes

    Les méthodes d’apprentissage automatique sont mises en œuvre par des algorithmes qui s’appliquent aux données au travers d’outils informatiques (hardware et software). On distingue plusieurs types d’outils :

    • ceux qui permettent de stocker et structurer les données (fichiers, bases de données, solutions Big Data),
    • ceux qui permettent d’appliquer les algorithmes sur les données pour construire des modèles (réseau de neurones, random forest, etc.),
    • ceux qui permettent d’évaluer leurs performances et mettre en production des modèles (plateformes de Machine Learning).

    La plupart des environnements disponibles permettent d’utiliser conjointement ces deux types d’outils.

    → De la connaissance et du savoir-faire

    Comme tout outil, il faut disposer du mode d’emploi avant de mettre en œuvre une méthode de Machine Learning. Le domaine étant très actif, les méthodes et outils évoluent très vite. Il est indispensable de se documenter pour se tenir à jour des dernières avancées. Les bonnes pratiques se trouvent en consultant régulièrement des publications scientifiques, les benchmarks, les tutoriels et les MOOC en ligne, ou bien en participant ou en organisant des hackathons et des challenges.

    Où trouve-t-on les données ?

    Lorsque l’on travaille sur un projet, les premières sources de données sont celles fournies par le projet (par exemple des données de trafic routier ou de consommation d’énergie). Néanmoins, il est souvent nécessaire de compléter les données privées disponibles dans le projet par d’autres données (par exemple, les données météo sont de bons facteurs explicatifs du trafic routier ou de la consommation d’énergie). De nombreuses plateformes dites Open Data (et des moteurs de recherche dédiés) permettent de rechercher et télécharger ces données externes aux projets, disponibles gratuitement ou devant être achetées. Ces plateformes permettent aussi de publier ses propres données (avec l’accord des commanditaires), et ainsi d’augmenter leur visibilité et de profiter du résultat de la recherche ouverte appliqués à ces données.

    Dans certains cas, la quantité et la diversité de nos données privées – éventuellement augmentées par des données externes – restent insuffisantes. Il faut alors envisager de générer des données synthétiques, les plus réalistes possible. Bien que ce problème soit récurrent, on ne trouve pour l’instant que peu d’outils génériques ou de plateformes de génération de données.

    Comment gérer les données pour le Machine Learning ?

    Nous avons expliqué dans les paragraphes précédents que la donnée était au cœur des méthodes de Machine Learning. Un élément à prendre en compte est donc le stockage et la gestion de ces données pour mettre en œuvre ces méthodes correctement.
    La gestion des données pour le Machine Learning doit répondre à plusieurs problématiques.

    → Comment collecter les données ?

    Les données brutes – publiques ou privées – sont rarement exploitables directement, les travaux suivants sont souvent nécessaires pour obtenir des résultats pertinents :

    • le nettoyage des données pour éviter l’apprentissage de comportements non souhaités,
    • l’étiquetage des données pour définir le résultat attendu de l’apprentissage,
    • la qualification des données pour estimer leur représentativité.

    De plus, cette collecte peut être effectuée ponctuellement, ou résulter d’un processus de flux avec une arrivée constante de nouvelles données. Certaines plateformes mettent à disposition tout un ensemble d’outils et/ou d’infrastructures pour simplifier ce processus.

    → Comment stocker les données ?

    Une fois collectées ces données doivent être stockées, et là encore le stockage va dépendre de la typologie de données collectées et de la phase du projet (développement/exploitation).
    En fonction de la typologie des données, il est possible d’utiliser des fichiers (par exemple des images ou bien fichiers binaires propres aux frameworks utilisés) pour des données homogènes. Par contre, si les données sont nombreuses et variées, il est préférable d’avoir recours à des bases de données.
    Concernant le déploiement, les algorithmes de Machine Learning s’insèrent dans les systèmes d’information au même titre que d’autres composants, avec un accès aux data warehouses (entrepôts de données) et aux data lakes (méthode de stockage des données utilisée par le Big Data).
    Dans tous les cas, on conserve l’historique des données et traitements associés dans la phase de développement (cahier de laboratoire) et l’exploitation (gestion de configuration).

    Où trouve-t-on les algorithmes ?

    Pour mettre en œuvre les algorithmes de Machine Learning, il n’est plus nécessaire de les programmer. De nombreux outils sont disponibles sous la forme de librairies, de framework ou de plateformes, le plus souvent sous forme de logiciel libre.

    Il est néanmoins possible de distinguer trois manières de mettre en œuvre ces algorithmes :

    → L’installation d’outils « in premises » : par exemple scikit learn, tensorflow, pytorch, R
    Les logiciels sont installés directement sur le PC du Data Scientist ou sur un serveur auquel on lui donne un accès pour travailler à distance. Ces outils nécessitent la connaissance d’un langage de programmation (majoritairement Python, mais d’autres langages sont disponibles) pour définir les modèles à utiliser, injecter les données, et piloter les phases d’apprentissage.

    → Des plateformes Cloud (MLaaS) : Azure ML, Watson, Google, Amazon
    Ces plateformes permettent de mettre en œuvre des algorithmes de Machine Learning via des applications web déployées sur le Cloud. Ces plateformes sont souvent dédiées à une typologie de données.

    → Des environnements hybrides : Dataiku, OpenML
    Ces plateformes peuvent être utilisées comme des services (MLaaS) ou déployées dans un environnement.

     

    Le Machine Learning s’avère donc être une branche de l’intelligence artificielle prometteuse, porteuse de nombreuses évolutions technologiques dans de nombreux domaines sociétaux et industriels. Afin de soutenir son développement, de nombreux outils sont aujourd’hui à disposition :

    • Des plateformes de mise à disposition de données ont été créées, telles que gouv.fr, le Machine Learning Repository de l’UC Irvine, ou encore OpenDataSoft. Ces sources de données externes peuvent être utilisées dans des projets de R&D en complément des données privées.
    • Des plateformes et/ou environnements de développement : nous citerons par exemple Amazon Machine Learning, Dataiku, SciKit-Learn et Tensorflow + Keras, pytorch.

    Des plateformes de connaissance, pour développer son expertise autour des méthodes de Machine Learning via des MOOCs, des tutoriels mis à disposition en ligne et des publications scientifiques.

    Plutôt que de décrire les technologies et algorithmes sous-jacents au Machine Learning, nous avons présenté dans cet article les spécificités de cette nouvelle approche par rapport aux méthodes analytiques[1] plus classiques de la science informatique.
    La pertinence des solutions à base de Machine Learning est très dépendante des connaissances métier (pour la formulation et l’identification du problème que l’on souhaite résoudre), des données associées (à partir desquelles le Machine Learning pourra être effectué) et de la structure du modèle utilisé pour les traiter à partir des outils disponibles (le métier des spécialistes en Machine Learning). A cette fin, nous avons partagé un vocabulaire et une compréhension des enjeux pour faciliter les collaborations entre « expert métiers » de cas d’usage et spécialistes du Machine Learning.

  • Les approches d’idéation centrées sur les usages

    Les approches d’idéation centrées sur les usages

    Les approches de conception centrées sur les usages aident à innover sur des produits et services, en intégrant les attentes et problèmes des usagers au travers d’une scénarisation de cas d’usage. Dans ce cadre, cinq activités clés structurent l’approche du concepteur : la collecte de données d’usage, l’analyse des données, la génération d’idées pour de nouveaux produits et services, la construction de prototypes et la communication auprès des parties prenantes.
    Dans cet article, nous nous intéressons à la génération d’idées ou l’idéation, étape créative dont dépend fortement le succès de la conception innovante. Nous présentons trois outils utilisés à l’IRT SystemX pour d’accompagner les équipes de recherche dans la scénarisation de nouveaux cas d’usage : la Roue de Margolis, le modèle de Persona et le Customer Journey Map.

    Conception centrée sur les usages et idéation

    Les approches de conception centrées sur les usages (ou les usagers) mettent l’humain au centre de la conception de produits et services (Giacomin, 2015). Lors du développement de projets à caractère technologique, elles permettent de formaliser des scénarios d’usage à fort potentiel de création de valeur, qui peuvent être efficacement mis en évidence par cette famille d’approches.

    La phase de génération d’idées, également appelée « idéation », est au cœur des approches de conception centrées sur les usages et sur l’humain. Si le brainstorming reste l’un des outils les plus connus lors de cette phase il en existe bien d’autres, pouvant être avantageusement mobilisés par des équipes. La plateforme web The Design Exchange recense bon nombre de ces outils. Créée par des praticiens de la conception, elle intègre des cas d’études réels qui illustrent l’utilisation des méthodes. Cinq catégories d’activités structurent la présentation des méthodes de conception centrées usager :

    Catégories d’activités décrites sur la plateforme The Design Exchange

     

    La plateforme Designwithpeople présente également un ensemble de méthodes permettant à des concepteurs d’engager une démarche créative selon trois modalités d’interactions avec les personnes :

    • design for people, où le concepteur sollicite l’expertise d’usage de la personne,
    • design with people, où les personnes deviennent des participants actifs dans le processus de conception au côté des concepteurs,
    • design by people, où les concepteurs aident les personnes à être des acteurs de la conception.

    Trois exemples d’outils sont illustrés ci-dessous : la roue de Margolis, le Customer Journey Map et les personas. Ces outils permettent de générer collectivement des scénarios d’usage, c’est-à-dire de projeter des nouvelles technologies dans des contextes d’usages multiples en tenant compte de la vision des utilisateurs finaux.

    Caractérisation des modalités d’interaction pour trois outils d’idéation centrés sur les usages

     

    Identification collective de situations d’usage : la roue de Margolis

    La roue de Margolis est un outil d’animation mobilisé dans les démarches participatives, lorsqu’il est nécessaire de partager rapidement des sujets d’intérêt au sein d’une communauté ou d’un groupe, par exemple lors d’un montage de projet de R&D. Grâce au principe de transcription des idées par celui qui écoute (et non celui qui propose), une co-construction des problématiques est garantie au sein du groupe. En effet, chaque participant endosse successivement un rôle d’écoute et d’expression face à des questions qui rythment le sens de la rotation de la roue. Au fur et à mesure que la roue tourne, chaque participant se met face à un autre en étant soit à son écoute, soit en s’exprimant pour répondre à la question posée en un temps limité à trois minutes. Le choix des questions, particulièrement important, oriente les discours dans le sens d’une expression des pain points.

    À l’issue des trois tours, les participants contribuent activement à la transcription des problématiques qu’on leur a confiées sur des notes de couleurs. Puis chaque personne est invitée à en expliquer le contenu, qui est alors partagé avec l’ensemble du groupe. La dernière phase collective consiste en un regroupement des idées en grandes thématiques, sous la forme d’un diagramme d’affinité (ou affinity map).

    Partage de problématiques de mobilité à l’aide de la Roue de Margolis

    En conclusion, la roue de Margolis permet un brassage large et rapide des ressentis des participants sur un sujet donné, ainsi qu’une forme d’empathie et de co-création des enjeux car la restitution s’opère par celui qui écoute.

    Témoignages d’utilisateurs :

    « J’ai trouvé cette activité ludique et utile à la fois pour lancer le groupe (se mettre à l’aise, donner un rythme) et pour dégager des problématiques. Les questions sont évidemment clés pour que cette activité soit réussie, dans ce cas [..] ça a permis de générer des idées variées et pertinentes, qui introduisaient bien la suite. », Sabine Tréfond, SNCF, Experte en transport et mobilité urbaine

    « La première phase m’a permis d’avoir des avis réels sur différents types d’expériences vécues liées aux transports. Malheureusement les personnes avec lesquelles j’ai discuté n’étaient pas familières des transports en commun. J’ai trouvé que le fait d’inverser les rôles (que celui qui écoute retranscrit l’expérience) permet de bien retenir les expériences partagées. », Edouard Emberger, SpirOps, Expert en Intelligence Artificielle

    Génération d’expériences usagers archetypaux : le customer journey map et les personas

    Customer journey map

    Issu des approches de User Experience Design, le Customer Journey Mapping est un processus de description des expériences vécues par des clients (ou usagers) d’un ou plusieurs services (HM Government, 2007). Le but est de mieux comprendre ce qui conditionne les comportements et attitudes des personnes, afin de mieux concevoir les produits et services en adoptant le point de vue des usagers.

    Cette approche peut être associée à une observation discrète des usagers sur le terrain, dite de shadowing (Giacomin, 2015 – Daae and Boks, 2015), permettant de caractériser plus précisément les parcours de clients-types.

    Dans le domaine de la mobilité, un Customer Journey Map est une représentation graphique qui permet de construire le voyage d’un usager d’un point de départ à un point de destination et qui trace les diverses interactions que celui-ci peut avoir ainsi que les obstacles rencontrés. Les obstacles peuvent être des accidents de parcours, des éléments du contexte et permettent l’expression d’un « Pain Point ». Ces derniers sont résolus plus tard au cours du projet par des propositions techniques.

    « Cette phase est celle qui m’a le plus aidé. Elle m’a permis de voir les visions des autres participants concernant les fonctionnalités d’une future application de navigation. Nous nous sommes basés sur la Journey Map de la personne à mobilité réduite pour définir le premier POC (Proof of concept) de l’application. », Edouard Emberger, SpirOps, Expert en Intelligence Artificielle

    Devant la diversité des expériences possibles en fonction des profils des usagers, il est utile de pouvoir construire des Journey Maps pour plusieurs usagers-type, en exploitant le modèle de persona.

    Personas

    Un persona est un modèle d’usager fictif, qui est de plus représentatif d’une classe d’usagers, et dont l’utilité au cours d’un processus de conception en équipe a été démontrée (Cooper, 1999). Courante en design industriel, l’utilisation des personas permet notamment au concepteur de s’abstraire de sa propre expérience d’usage, de mieux cibler les problématiques de groupes d’utilisateurs-cibles, et enfin de concevoir des solutions de produits ou services en cohérence avec les modes de vie attachés aux personas.

    La construction des modèles de personas peut s’effectuer de manière purement qualitative, en précisant divers attributs : homme, femme ou enfant, âge, profession, lieu et mode de vie, style de consommation, valeurs-clés, etc.

    A titre d’exemple, nous illustrons ci-dessous quatre profils et personas adaptés à la recherche de solutions de « mobilité digitale pour tous » d’après (Keolis, 2016) :

    • mobilité dans la sérénité (Thierry, retraité),
    • mobilité agile (Léa, étudiante),
    • mobilité immersive (Kate et Tim, touristes),
    • mobilité humanisée (Marion, en fauteuil roulant, et Clara, en charge d’un jeune enfant en poussette).

    Quatre personas pour la mobilité digitale, d’après [Keolis, 2016]
    Le modèle de persona a été mis en œuvre lors d’un atelier sur la définition d’informations pour les voyageurs. L’utilisation des personas avait pour objectif de faire éprouver aux participants une empathie avec le voyageur, pour pouvoir exprimer les difficultés et satisfactions éprouvées. Cela a permis de faire émerger plusieurs cas d’usage en fin d’atelier.

     

    Au-delà des méthodes et outils

    Il existe de multiples méthodologies centrées sur les usages destinés à une meilleure formulation des besoins et à l’émergence de solutions innovantes. Les outils décrits permettent de générer collectivement des scénarios d’usage porteurs de valeur pour les futurs usagers.

    S’il est clair que la réussite d’un atelier d’idéation tient à une bonne connaissance des outils à déployer, d’autres facteurs doivent être réunis. Face au grand nombre d’outils d’idéation, il est d’abord essentiel de savoir sélectionner les outils élémentaires les plus adaptés aux besoins de l’atelier. Pour l’animateur, veiller à une articulation pertinente des différents outils permettra plus de fluidité dans la construction des idées. L’animateur doit également gérer le temps et montrer sa capacité d’écoute pour amener les participants à s’exprimer sans émettre de jugement ni influencer leur propos.

    Enfin la phase de préparation en amont de l’atelier d’idéation est essentielle. Des réunions régulières avec les parties prenantes du projet permettent une meilleure compréhension des enjeux ainsi que la composition des profils des futurs participants (profils techniques, managers, etc.). Lors de cette phase préparatoire, les animateurs peuvent collecter des éléments pouvant stimuler ou inspirer la réflexion des participants au cours des ateliers (par exemple verbatim d’usagers, profils de personas existants, publications sur des réseaux sociaux, etc).

     

    Références

    Cooper, A. (1999). The inmates are running the asylum. Indianapolis, IA: SAMS/Macmillan, 1999.

    Daae J., Boks C (2015).   A classification of user research methods for design for sustainable behaviour, Journal of Cleaner Production, Vol. 106, 680-689

    Giacomin, J.(2015). What Is Human Centred Design?The Design Journal,Vol. 17:4,606-623,DOI

    HM Government (2007). Customer Journey Mapping – Guide for Practitioners. [Online]

    Keolis (2016). Enquête Keoscopie. Un regard éclairé sur la mobilité. [Online]