Résumé
Les “jumeaux numériques”, objets de la dernière expression techno-publicitaire en vogue, paraissent aujourd’hui être partout. Pourtant ils sont d’abord apparus en tant qu’outils hautement spécialisés, en ingénierie aérospatiale ou pour la gestion de cycle de vie des produits. Ils étaient, dans ce cadre d’origine, compris comme des répliques complètes et simulables d’un équipement industriel. L’expression se trouve souvent prise aujourd’hui dans un sens beaucoup plus limité, celui de représentants numériques des équipements qu’ils “jumellent”.
Dans leur sens d’origine, les jumeaux numériques sont beaucoup plus que des représentations, issues d’outils de CAO ou d’imagerie numérique, de prototypes d’objets fabriqués en usine : ils visent à être des simulations exploitables d’exemplaires uniques (instances) de ces objets, dans leur environnement réel, reflétant leur évolution complète tout le long de leur cycle de vie. Dans leurs versions “lite”, les jumeaux numériques se contentent d’être une sorte de “guichet unique numérique”, fournissant des interfaces de haut niveau, unifiées et contextualisées, pour les applications devant interagir avec un objet physique, un système, ou système de systèmes. Ils abandonnent les ambitions de reproduction exacte et de simulation multi-physique qui sont celles des jumeaux industriels, mais ils devraient par contre conserver leurs caractéristiques en tant que représentations instanciées et historicisées, si partielles soient-elles. Ce concept de “jumeau-numérique-lite” est celui que nous explicitons et développons dans cet article, en le reliant aux graphes qui sont au cœur de notre plate-forme Thing’in.
Article complet
Origines des jumeaux numériques
Les jumeaux numériques sont issus, au début des années 2000, d’exigences très spécifiques de systèmes industriels critiques. Ils ont pour objectif de fournir une réplique informationnelle/numérique complète et exacte de certains équipements avancés, afin d’optimiser leur fonctionnement et leur maintenance, en particulier lorsque l’équipement d’origine n’est pas disponible pour la surveillance directe et l’inspection, comme c’est le cas pour un satellite. Depuis ses débuts dans l’industrie aérospatiale, le concept de jumelage numérique a évolué et s’est élargi pour intégrer des capacités de monitoring et d’activation à distance via l’Internet des Objets.
Une distinction est classiquement faite entre les jumeaux numériques de prototypes (DTP, Digital Twin Prototypes), et les jumeaux numériques d’instances (DTI, Digital Twin Instances). Le DTP peut être issu d’un outil de CAO pour constituer un modèle numérique complet d’un produit physique, utilisé pour les simulations et les réglages précis avant sa fabrication. Nous nous intéressons davantage ici aux DTI en tant que jumeaux numériques d’exemplaires uniques réellement utilisés de produits physiques, prenant en compte leur intégration à des systèmes plus vastes constituant leur environnement et évoluant parallèlement à leur contrepartie physique. Idéalement, toute information pouvant être obtenue en inspectant un produit réel devrait pouvoir être obtenue à partir de son jumeau. Même s’ils peuvent être issus du DTP d’un produit générique, les DTI sont identifiés de manière unique en tant que jumeaux d’une instance de produit unique et se différencient par l’historique accumulé des interactions éventuelles de ce produit avec son environnement et ses utilisateurs. Une caractéristique essentielle des DTI est donc qu’il ne s’agit pas de descriptions ou de représentations statiques. Ils doivent évoluer tout au long du cycle de vie de leur contrepartie physique : conception, fabrication, exploitation et élimination. De manière cruciale, ils doivent également être actionnables de manière identique à leur contrepartie physique, en tenant compte de son environnement et des systèmes avec lesquels elle interagit. Une variante [i] du “test de Turing” a été proposée pour évaluer la performance d’un tel DTI : ce “jeu d’imitation” équivaut à rendre le jumeau indiscernable, par inspection sous plusieurs modalités sensorielles, à partir de son homologue physique, et à fournir, dans des conditions contrôlées, des réponses aux stimuli d’entrée et des observations d’état qui soient identiques à celles provenant du produit physique qu’ils représentent.
Twins “Lite” comme représentants (proxies)
Dans l’acception minimale d’un jumeau numérique “lite”, dépourvu de tous les attributs plus avancés d’un “véritable” jumeau numérique industriel tel qu’il a été présenté précédemment, il peut être compris comme un simple représentant/mandataire (proxy) informationnel, maintenant les informations clés sur l’équipement physique qu’il représente et pour lequel il sert d’interface de monitoring et, le cas échéant, d’activation, au travers de différentes modalités d’accès et de connexion. L’expression jumeau numérique est conservée ici même si le modèle correspondant est strictement minimal, voire inexistant.
“Device Twins” (DT)
Cette acceptation minimale a été implicitement reprise dans le monde de l’Internet des Objets, où l’interface, même de très bas niveau, fournie par une plate-forme vers un objet connecté, est parfois présentée comme un jumeau numérique de cet objet. Il s’agit clairement d’un abus de langage lorsque cette interface ne fait que transmettre à l’appareil un flux de données brutes, qui peuvent même être cryptées ! L’expression est plus pertinente quand l’ objet n’est pas simplement un capteur et qu’il encapsule à la fois des capteurs et des actionneurs (comme un appareil domestique connecté, par exemple). Dans ce cas, un jumeau “lite” peut correspondre à ce que permet une application smartphone pour cet appareil, encapsulant au moins un modèle simple semblable à une machine à états, conditionnant les actions potentielles sur l’état présent de l’appareil.
“Thing Twins” (TT)
Les devices connectés, tels qu’interfacés par les réseaux et les plates-formes IoT actuels, ne représentent en fait qu’un petit sous-ensemble des entités physiques potentiellement “jumelables” La description complète de leurs environnements s’enrichit considérablement en reliant, par ces nœuds primaires, toutes sortes d’objets non-directement connectés, qu’il s’agisse de meubles dans un bâtiment, d’arbres dans un parc ou de conduites d’eau dans une ville. La seule exigence est que ces objets soient observables par des capteurs connectés et, le cas échéant, contrôlables par des actionneurs en réseau, qui sont tous deux des devices connectés déjà “jumelés” comme expliqué précédemment. C’est ce que nous avons proposé d’appeler un lien “phénotropique” ou “stigmergique”, constituant un Internet des objets étendu, au-delà des devices connectés. Ces objets non-connectés peuvent être vus comme des boîtes noires, représentées par un jumeau numérique qui capture leurs interfaces, leurs propriétés et éventuellement leur état. Nous proposons d’utiliser l’expression “Thing Twins” (TT en abrégé) pour décrire la nature de ces représentants d’objets saisis comme “atomiques”, ce qui signifie que leurs sous-systèmes ne sont pas représentés à leur tour par des jumeaux à part entière.
“System Twins” (ST)
Les visions classiques et étendues de l’IoT telles que présentées précédemment, axées sur les devices et objets atomiques, ne suffisent pas pour saisir la structure de niveau système des environnements cibles, englobant tous les sous-systèmes imbriqués et entrelacés du système référent global, tels que des systèmes de sécurité ou de CVC dans un bâtiment, systèmes de distribution d’eau, d’éclairage ou de gestion du trafic dans une ville. Nous devons associer chacun de ces systèmes à une catégorie différente de jumeaux, que nous proposons de définir comme “System Twins” (ST en abrégé).
Tout comme pour les jumeaux DT/TT présentés précédemment, ces “system twins” sont des jumeaux au sens “lite” des systèmes qu’ils représentent. Ils capturent seulement quelques caractéristiques structurelles clés de ces systèmes, telles que les interrelations et propriétés de leurs composants, ainsi que leurs propres relations avec les systèmes qui les englobent.
Ce niveau de description correspond en gros à la notion de systèmes cyber-physiques (CPS), définis à l’origine comme étant l’évolution, à l’ère des réseaux ouverts, des systèmes de contrôle industriels (fermés) traditionnels. Les CPS sont issus de systèmes industriels classiques qui sont non seulement fermés, mais également conçus de manière “top-down”, chaque composant et sous-système étant conçu en fonction de son intégration dans le système englobant. L’intégration des CPS avec les réseaux et plates-formes ouvertes et banalisées de l’IoT est le stade d’évolution dans lequel nous nous trouvons aujourd’hui, qui élargira également le spectre d’applications de l’IoT actuel, au-delà des objets grand public et de la simple collecte de données ascendante (provenant de capteurs), vers plus d’intégration avec les actionneurs et le contrôle en temps réel.
“System of Systems Twins” (SoST)
Un graphe comprenant des “Thing Twins” imbriqués dans des “System Twins” pourrait être considéré, à son niveau et à son échelle, comme un jumeau numérique global de “Système de systèmes”. Contrairement au jumeau numérique d’un équipement ou système traditionnel conçu en ingénierie “top-down”, il ne peut pas être issu d’un modèle de prototype, car il n’existe par définition aucun prototype pour un système de systèmes qui est une fédération plus ou moins spontanée et “bottom-up” de systèmes qui n’ont pas été conçus au départ pour fonctionner ensemble. Un jumeau numérique de système de systèmes doit de même se constituer et évoluer de manière organique, de bas en haut, au fur et à mesure de l’agrégation et de l’interconnexion d’informations partielles provenant des nœuds “Thing Twins” et “System Twins” qui représentent ses composants
Les environnements IoT comme par exemple les bâtiments, usines, villes, rassemblent un grand nombre de sources de données et utilisateurs de données (applications IoT /CPS), pour lesquels cet environnement est à la fois un ancrage physique et un commun dénominateur. Un modèle complet de cet environnement est indispensable pour prendre en charge le partage, la consolidation et l’enrichissement de ces données et éviter que chacune de ces applications ne reste intégrée verticalement au sein de son propre silo, et dédiée à l’utilisation exclusive de ses propres sources de données.
L’évolution des CPS vers les systèmes de systèmes (que nous pouvons appeler CPSS) est tout aussi cruciale que la précédente évolution des systèmes de contrôle fermés traditionnels vers les CPS en réseaux ouverts. Il s’agit de l’évolution des systèmes traditionnels, conçus de haut en bas et fortement couplés, vers des systèmes faiblement couplés s’assemblant de bas en haut. Des systèmes de systèmes au sens propre, tels que les villes ou les grands bâtiments sont les homologues techniques des “systèmes complexes” étudiés par les sciences physiques, biologiques et sociales depuis les années 1980.
Et c’est ici que l’idée de graphe réapparaît ! Depuis la consolidation du domaine de la “Network Science” dans les années 1990, les graphes sont devenus un modèle clé pour l’analyse de systèmes complexes. Ils devraient également devenir un modèle essentiel pour la modélisation des systèmes de systèmes. Ces modèles ne sont en aucun cas destinés à reproduire l’ensemble du système de manière exhaustive : ils ne font que capturer les interdépendances pertinentes entre les sous-systèmes pour supporter l’analyse de phénomènes émergents potentiellement imprévus pouvant résulter de l’interfonctionnement de systèmes qui n’avaient pas été conçus pour fonctionner conjointement.
Intégrer conjointement “Thing Twins” (TT) et “System Twins” (ST) dans un graphe multi-échelle
L’exemple de la figure 1 montre comment les nœuds “TT” représentant des entités physiques individuelles, correspondant à des objets et des devices (rectangles noirs) qui sont capturés dans un graphe avec leurs relations mutuelles (losanges noirs) et leurs propriétés ovales noires, pour le prédicat/clé de la propriété, hexagone pour la valeur correspondante.
Les sous-graphes du graphe représenté en noir, intégrant les TT comme nœuds, correspondent aux sous-systèmes pertinents qui sont mis en correspondance avec les nœuds “ST” du graphe rouge superposé, par le biais de la relation spéciale “isNodeOfGraph” (losange rouge). Cette relation s’applique à tous les nœuds du sous-graphe correspondant, mais elle n’apparaît qu’une fois pour éviter d’encombrer le diagramme. Les nœuds ST sont eux-mêmes pris dans des relations de graphe, telles que la relation exprimant que le système de gestion du trafic de la ville peut imposer des contraintes au système de gestion des feux de signalisation, ou l’inclusion de ces systèmes (distribués) dans le graphe global capturant la ville dans son ensemble en tant que système de système, via la relation “isSubGraphOf”.
Modèles de graphes pour la représentation de jumeaux numériques de système
Un modèle de graphe adéquat pour la représentation des environnements IoT / WoT au sens large, en tant que systèmes de systèmes cyber-physiques, doit avoir un niveau d’expressivité suffisant pour représenter la structure de ces environnements. Les graphes CPS ont une sémantique qui leur est propre, basée sur l’homologie structurelle, lorsqu’ils sont censés refléter la structure d’un réseau physique tel que par exemple un réseau de transport. Cette sémantique s’applique aux graphes dans leur ensemble et n’est pas réductible au type de sémantique “par ressource” que RDF est censé décrire. La plateforme Thing’in a fait le choix des “property graphs” (PG) comme le meilleur méta-modèle existant pour la capture de ces graphes CPS. Ce choix est celui du modèle de données de gestion des informations de contexte NGSI-LD, issu du groupe CIM de l’ETSI. Les PG sont une classe de multi-graphes orientés, étiquetés et attribués, définis de manière informelle comme le commun dénominateur des bases de données graphes existantes. La définition du méta-modèle NGSI-LD par l’ETSI, leur apporte le fondement formel et standardisé qui leur faisait défaut, dans la mesure où leur utilisation par les praticiens des bases de données graphes résultait d’un compromis pour l’incorporation, dans les bases de données graphes, des méta-modèles clé-valeur et orientés-objet. Les PG permettent, de manière cruciale, de distinguer comme relations (et donc comme citoyens de première classe du méta-modèle) les arcs du graphe qui représentent les liens physiques réels entre des entités physiques, elles-mêmes représentées sous forme de nœuds. De simples propriétés (correspondant aux “data-type properties” de OWL) sont directement associées aux entités et aux relations, comme les attributs le seraient dans un modèle basé-objet. Aussi paradoxal que cela puisse paraître, dans un graphe de propriétés, les propriétés ne sont généralement pas représentées sous forme d’arcs du graphe proprement dit ! Ceci permet au graphe de mieux refléter dans sa structure propre les relations en tant que représentations des connexions physiques entre entités qui constituent l’échafaudage structurel d’un système. Ceci permet d’exécuter des algorithmes de théorie des graphes, exploitant directement cette structure : il peut s’agir d’algorithmes extrêmement classiques tels que le calcul du flot maximal ou des outils d’analyse de complexité tels que l’évaluation de longueurs de chemins moyennes ou de distributions de degrés, ou d’outils plus sophistiqués issus de la théorie spectrale des graphes.
Perspectives
Le fait que la majorité des systèmes résultant de l’ingénierie doivent évoluer pour devenir des systèmes cyber-physiques, à différentes échelles et à différents niveaux, fait désormais consensus. Du point de vue présenté ici, la plupart des systèmes cyber-physiques évoluent également pour devenir des systèmes de systèmes, à différentes échelles et à différents niveaux. La représentation proposée ici, basée sur un graphe de jumeaux numériques multi-échelles, est destinée à prendre en compte cette évolution clé. Aussi complète qu’elle puisse être pour ce qui concerne l’environnement physique, cette description de structure de système n’inclut pas les personnes, leurs rôles ou leurs entités juridiques. Ceci serait évidemment utile, ne serait-ce que pour des raisons techniques (association de rôles administratifs à divers intervenants ou contractants exploitant les sous-systèmes correspondants), mais cela n’a pas encore été inclus dans la partie publique du graphe Thing’in. Un couplage à des graphes de réseaux sociaux classiques (avec des liens vers des passants dans la rue, par exemple) poserait des problèmes tout à fait rédhibitoires de respect de la vie privée, et n’est donc pas envisagé, même si le graphe hybride à trois niveaux qui résulterait de la combinaison de graphes cyber-physiques, de graphes connaissances et de graphes sociaux serait l’incarnation ultime du “Giant Global Graph” envisagé par Tim Berners-Lee.
Remerciements
Nous reconnaissons les contributions cruciales de tous nos collègues du projet de plate-forme intégrative Thing’in d’Orange, qui ont mis en œuvre dans une plate-forme dotée d’une base de données graphes les concepts de jumelage multiniveaux présentés ici et les composants logiciels associés. Nous reconnaissons également les contributions des partenaires du groupe de spécification industrielle ETSI CIM (gestion de l’information contextuelle) avec lesquels nous avons mis au point le modèle d’information NGSI-LD utilisé pour ce projet.
[i] appelée “Test de Virtualité de Grieves” (GVT), par Michael Grives, qui est à l’origine du concept de jumeau numérique.