Brevet FR3090952A1 — publié le 20200626

Description Titre de l'invention : Plateforme et procédé de traçabilité de données et utilisation dans un environnement distribué et ouvert au partage pair à pair Domaine technique de l'invention 100011 La présente invention concerne le domaine de la détection de violation de la propriété intellectuelle dans un environnement complètement distribué et ouvert au partage. Technique antérieure [0002] De nos jours la donnée transite de façon très intense principalement dans des domaines comme le machine learning où elle est considérée comme la matière première. [0003] Ainsi il est très bénéfique et même vital de partager sa donnée afin de la confronter aux meilleures techniques d'apprentissage. Cependant ce partage est facteur de risque. En effet plusieurs questions sont soulevées par ce partage dont celle de la propriété intellectuelle. Par conséquent, comment faire pour prouver la propriété des données une fois partagées et surtout comment faire pour prouver de façon transitive le droit à la propriété intellectuelle sur les produits dérivés découlant de la donnée initiale (modèle de Machine Learning, enrichissement de données personnelles, vente des données partagées de façon détournée, ...). [0004] Une solution connue est l'application d'un marquage sur des données en particulier des données structurées de type base de données au moyen d'une clé primaire ou de tables. Une autre solution est employée pour les données multimédia et en particulier image, vidéo et son, qui est liée au type de la donnée et donc au support sur lequel elles sont diffusées, par exemple en imposant un marquage de l'image pour détecter des contrefaçons. [0005] En outre, les marquages préexistants ne se transmettent pas au résultat dérivé tel que des transformations de la donnée, des constructions de modèle, découlant de données déjà partagées. En d'autres termes, le marquage s'arrête après le partage de la donnée et ne se diffuse pas aux produits dérivés de cette donnée. H n'est donc pas transitif ou héréditaire. Exposé de l'invention [0006] La présente invention a pour but de pallier certains inconvénients de l'art antérieur et en particulier d'encourager et de faciliter le partage de données dans un environnement décentralisé, offrant la possibilité au propriétaire qui partage sa donnée d'être capable de détecter une utilisation malhonnête de sa donnée mais également des produits dérivés qui sont issus de l'exploitation de sa donnée. 2 [0007] A cet effet, la présente invention concerne un procédé mis en oeuvre dans un envi- ronnement informatique complétement distribué et ouvert au partage pair à pair entre entités, sans entité centrale de régulation des communications de partage , utilisant la hlockchain, pour permettre la traçabilité des échanges entre entités et chaque entité comportant un agencement matériel et logiciel permettant la mise en oeuvre des trois étapes suivantes : - La première étape consiste d'abord à transformer tous les attributs, qui ne sont pas déjà sous forme numérique, en valeurs numériques (homogènes) ; - La seconde étape consiste à transformer ces données initiales numériques en données secondaires numériques marquées qui pourront être partagées, le marquage de la donnée initiale s'effectuant en transformant toutes les valeurs numériques initiales de la donnée initiale grâce à une fonction «f utilisant une clé privée» en données publiques qui constitueront un Modèle de machine lcarning, ce modèle de Machine learning étant ensuite marqué par un marquage secondaire utilisant une donnée privée non partagée et stockée séparément ; - Une troisième étape de vérification de données ou modèles marqués pour connaître, l'authenticité de la donnée/ modèle ou non et identifier l'auteur ou l'entité par la traçahilité des échanges fournie par un historique des échanges mémorisés dans les noeuds de la hlockchain. [0008] Selon une autre particularité, la fonction «f » utilisant une clé privée doit avoir les particularités suivantes : - Être assez complexe pour ne pas pouvoir déduire la fonction inverse « f-1 » à partir du résultat partagé (robustesse) ; - Garder les caractéristiques de la donnée initiale afin de pouvoir arriver aux mêmes résultats de modèle en utilisant soit les données initiales soit les données transformées (utilisabilité) ; - Être paramétrable sur chaque entité afin de différencier les données transformées en fonction de l'entité avec laquelle s'effectue le partage (capacité) ; - Être unique pour chaque couple « donnée transfomnée/clé privée » ayant permis la transformation avec « f » (sécurité). [0009] Selon une autre particularité, l'étape de vérification consiste à prendre une donnée marquée (D'm'), à vérifier, dissocier grâce à la donnée (D') et le marquage (m') en utilisant dans le noeud de l'entité émettrice la fonction inverse « f-1 » sur la donnée marquée (D'm') et à comparer le marquage initial (m) réalisé par le noeud de l'entité émettrice avec le marquage (m') de la donnée (D') à vérifier puis générer par le noeud un message indiquant que la donnée est valide, si (m) et (m') sont égaux ou sinon un message indiquant qu'il y a eu contrefaçon. [0010] Selon une autre particularité, le message indiquant la contrefaçon génère également 3 l'émission d'une requête d'historique des échanges entre entités pour cette donnée (D'), ce qui permet à l'entité émettrice de repérer l'entité qui a modifié le marquage et par conséquent la source de la contrefaçon. [0011] Selon une autre particularité, l'étape de vérification consiste dans le cas d'un modèle (M' m) à utiliser les données privées (p) associées au modèle (M') dans l'historique de l'entité ayant généré M' pour interroger l'entité du modèle (M') et à vérifier les résultats de (M'm) sur ces données-là pour savoir si (M') est bien la version officielle diffusée. [0012] Selon une autre particularité, le procédé comporte une étape d'utilisation de l'historique des échanges entre les entités conservées sur un noeud en le couplant avec la comparaison des marquages des données ou modèles concernés pour les entités concernées. [0013] Selon une autre particularité, le procédé comprend une étape de répertoriage et consignation de toute transaction dans cet environnement entre entités. [0014] Selon une autre particularité, [0015] Selon une autre particularité, [0016] Selon une autre particularité, [0017] Selon un autre but l'invention concerne également une platcforme mettant en oeuvre le procédé. [0018] Ce second but est atteint par une plateforme de traçabilité utilisée dans un envi- ronnement informatique complétement distribué et ouvert au partage pair à pair entre entités, sans entité centrale de régulation des communications de partage utilisant des noeuds, ladite plateforme de traçabilité utilisant la blockchain pour permettre de tracer tous les échanges réalisés et conserver un historique de toutes les opérations réalisées par chaque entité ou noeud ayant communiqué dans l'environnement distribué et ouvert. [0019] Selon une autre particularité, les possibilités offertes par une telle plateforme de traçabilité sont au moins une des fonctionnalités suivantes : - Permettre aux entités propriétaires de garder le contrôle de leurs ensembles de données, en listant les entités qui ont une copie de ses données partagées ; - Permettre aux entités de voir par des requêtes régulières si leurs ensembles de données ont été repartagés dans le système, et par quelles autres entités : - Fournir un service de requêtes pour demander aux entités cibles de supprimer ou de modifier une partie des données initialement partagées. [0020] Selon une autre particularité, toute transaction dans cet environnement est répertoriée et consignée dans la blockchain. [0021] Un dernier but de l'invention est de proposer un environnement distribué ouvert au partage ; ce but est atteint par un environnement informatique complétement distribué et ouvert au partage pair à pair entre entités, sans entité centrale de régulation des communications de partage, utilisant une plateforme de traçabilité selon l'invention et caractérisée en ce que chaque entité peut indiquer par un message ou un attribut de message à la plateforme de traçabilité qu'elle souhaite partager ses résultats avec toute entité. [0022] Selon une autre particularité, les entités ciblées par ces requêtes comportant les iden- tifiants des entités ciblées, devront alors se conformer à la demande et répondre au propriétaire par un accusé de réception, cet accusé de réception servant de preuve qu'ils ont traité la demande. [0023] Selon une autre particularité, chaque entité comporte un agencement matériel et logiciel permettant de coupler l'utilisation de cet historique des échanges entre les entités et la comparaison des marquages des données concernées pour en déduire l'origine d'une fraude ou défaillance. [0024] Selon une autre particularité, chaque entité comporte un agencement permettant de confirmer l'échange ou l'action en tant qu'entité représentant l'interlocuteur en face. [0025] D'autres particularités et avantages de la présente invention sont détaillés dans la description qui suit. Brève description des dessins [0026] D'autres particularités et avantages de la présente invention apparaîtront plus clairement à la lecture de la description ci-après, faite en référence aux dessins annexés, dans lesquels : [0027] [fig.1] représente schématiquement le déroulement des différentes étapes de mise en oeuvre d'un procédé de marquage selon l'invention. [0028] [fig.2] représente schématiquement un scenario explicatif de fonctionnement de l'invention par la détection de partage de contrefaçon dans un environnement dédié capable de tracer les échanges entre les entités de cet environnement. [0029] [fig.3] représente schématiquement un exemple d'environnement informatique pouvant être utilisé pour mettre en oeuvre un ou plusieurs aspects de l'invention comprenant un groupe de noeuds d'un système informatique ayant une topologie de grappe du type « fat-troc ». [0030] [fig.4] représente schématiquement un exemple de noeud d'un système informatique selon l'invention. Description des modes de réalisation [0031] Ainsi, la présente invention propose un nouveau procédé de marquage de données ta- bulaires brutes sans structures particulières à l'inverse des hases de données, images, vidéo, ce marquage se transmettant aux résultats dérivés en particulier sur des données liées aux domaines de la data science et du machine learning. [0032] Notre invention traite du cas d'un partage de jeu de données tabulaires à des fins de création de modèles de machine lcarning capables de généraliser des comportements complexes dans le but de résoudre des problématiques de détection, de classification, de prédiction, ... [0033] Un jeu de données de machine lcarning est composé d'observations exprimées à l'aide de caractéristiques. Ces observations sont utilisées pour déduire le modèle généralisant un objectif recherché. Les caractéristiques également appelées attributs se présentent sous forme de colonnes de plusieurs valeurs à la suite, relatives aux différentes observations. [0034] Dans cet environnement, la méthode de marquage présente deux étapes afin d'offrir la possibilité d'un partage sous surveillance : [0035] La première étape consiste d'abord à transformer tous les attributs en valeurs nu- mériques homogènes, par une transformation utilisant une unique méthode sur l'ensemble des données en une fois. Cette homogénéité se traduit par la transformation atomique du jeu de données de façon à en garder la structure et l'expressivité. La transformation ne concernera évidemment que les attributs qui ne sont pas déjà sous forme numérique. On appelle cette étape « le feature embedding ». Comme dit précédemment, cette étape a pour contrainte de garder la même expressivité des attributs entre leur état non numérique et leur état transformé numérique. Cette étape peut être soit humaine soit automatique en fonction de la quantité de données à traiter. [0036] La seconde étape consiste à transformer ces données initiales numériques en données secondaires numériques qui pourront être partagées. C'est au cours de cette seconde étape que le procédé procède au marquage des données permettant de présenter une preuve servant à faire valoir ses droits à la propriété en détectant et identifiant les coupables à l'origine d'une fuite comme décrit ci-dessous. [0037] La seconde étape peut comprendre deux sous étapes. [0038] La première sous étape correspond à la transformation de toutes données initiales nu- mériques en données secondaires numériques effectuée grâce à une fonction « f » ayant les particularités suivantes : [0039] - -Etre assez complexe pour ne pas déduire la fonction inverse « f' » à partir du résultat partagé (robustesse). -Garder les caractéristiques de la donnée initiale afin de pouvoir an-iver aux mêmes résultats de modèle en utilisant les données initiales ou transformées (utilisabilité). -Etre paramétrable afin de différencier les données transformées en fonction de l'entité avec laquelle s'effectue le partage (capacité). Etre unique pour chaque couple «donnée transformée/clé privée » ayant permis la transformation avec « f » (sécurité) 6 [0040] La seconde sous étape consiste à intégrer le cas de la transitivité, à savoir le marquage des résultats obtenus par le biais de données partagées précédemment. Ici le marquage s'effectue sur le modèle récupéré en le modifiant légèrement afin d'y intégrer un marquage le différenciant de toute autre version conçue à partir du partage des données initiales. [0041] Ce marquage utilise des données privées inédites jamais partagées qui ont été extraites du jeu de donnée partagé avant que le partage ait eu lieu. Autrement dit, ces données doivent être gardées à part (rester privées) quand bien même issues du même jeu de données qui, après transformation par « f », est partagé pour servir à construire le modèle récupéré. [0042] L'illustration de l'organigramme des étapes susmentionnées est présentée en Figurcl . [0043] Par ailleurs, il est bon de noter que pour avoir un cycle complet de vérification de l'origine de la donnée il faut avoir procédé à la phase de mise en place du marquage ainsi qu'à celle de vérification de cc marquage : [0044] 1. Phase de mise en place du marquage : [0045] On génère la donnée (Dm) par le biais de «f » à partir de (D). Dans ce cas-là le marquage fait partie de la fonction « f ». [0046] Pour ce qui est du modèle (M) on le combine non marqué avec le marqueur (m) pour générer le modèle marqué (Mm). [0047] 1. Phase de vérification du marquage : [0048] Elle consiste à prendre une donnée marquée à vérifier (D'm'), dissocier grâce à « ' », la donnée (D') et le marquage (m') et comparer (m) avec (m'). Si (m) et (ni) sont égaux alors la donnée est valide, sinon il y a eu contrefaçon. [0049] Dans le cas d'un modèle (M'm) on utilise la partie des données privée inédite (p) qui ont été extraites avant le partage et gardée en mémoire, pour interroger le modèle (M') et l'on vérifie les résultats de (M'm) sur ces données-là. Ainsi on peut savoir si (M') est bien la version officielle diffusée. [0050] La classification de modèle occupe un rôle central dans l'apprentissage automatique a partir des données. [0051] L'apprentissage automatique comporte généralement deux phases. La première consiste à estimer un modèle à partir de données, appelées observations, qui sont disponibles et en nombre fini, lors de la phase de conception du système. L'estimation du modèle consiste à résoudre une tâche pratique, telle que traduire un discours, estimer une densité de probabilités, reconnaître la présence d'un chat dans une photographie ou participer à la conduite d'un véhicule autonome. Cette phase dite « d'apprentissage » ou « d'entraînement » est généralement réalisée préalablement à l'utilisation pratique du modèle. La seconde phase correspond à la mise en production : le modèle étant déterminé, de nouvelles données peuvent alors être soumises afin d'obtenir le résultat 7 correspondant à la tâche souhaitée. En pratique, certains systèmes peuvent poursuivre leur apprentissage une fois en production, pour peu qu'ils aient un moyen d'obtenir un retour sur la qualité des résultats produits. [0052] Notez que pour atteindre le résultat escompté par cette invention (détecter et identifier les coupables à l'origine d'une fuite), il y a besoin que le déroulement des étapes susmentionnées, ainsi que les échanges de données ou de modèles dont il est question, s'effectuent par le biais d'une plateforme décentralisée permettant de tracer tous les échanges réalisés. [0053] Ainsi, grâce à la traçahilité offerte par le réseau dans lequel on évolue, nous sommes en mesure d'appliquer les principes de notre invention. [0054] Les possibilités offertes par une telle plateforme de traçahilité sont : [0055] -Permettre aux entités propriétaires de garder le contrôle de leurs ensembles de données. Le propriétaire d'un ensemble de données peut lister les entités qui ont une copie de ses données. [0056] - Permettre aux entités de voir si leurs ensembles de données ont été repartagés dans le système, et par quelles autres entités. Il est également possible pour chaque entité de partager ses résultats. [0057] - Fournir un service de requêtes pour demander aux entités cibles de supprimer ou de modifier une partie des données initialement partagées. Les entités ciblées par ces requêtes devront alors se conformer à la demande et répondre au propriétaire par un accusé de réception. Cet accusé de réception sert de preuve qu'ils ont traité la demande. [0058] Cet environnement n'étant qu'un historique, il a l'inconvénient d'être incapable d'offrir une solution qui puisse fournir la preuve du non-respect des termes du contrat de partage ni de détecter les comportements illicites. [0059] De ce fait, le but de notre invention est de combler ce vide. Ainsi elle donnera la pos- sibilité de coupler l'utilisation de cet historique des échanges entre les entités et la comparaison des marquages des données concernées, ceci afin d'identifier les auteurs de la fuite et donc de pouvoir faire valoir ses droits à la propriété intellectuelle. [0060] Exemple de réalisation d'un scénario de marquage illustré par la figure 2 [0061] Afin d'illustrer le fonctionnement du procédé de marquage, l'exemple suivant a été développé. [0062] Deux utilisateurs « A » et « B » sont en relation grâce une plateforme de traçabilité DTP. Dès lors, toute transaction dans cet environnement est répertoriée et consignée et chaque échange/action se doit d'être confirmé par l'interlocuteur en face. [0063] L'entité "A" veut partager à l'entité "B" le jeu de données (D). [0064] L'entité "A" transforme le jeu de données (D) en jeu de données marquées (Dm) au moyen du procédé décrit ci-dessus par l'intermédiaire d'une fonction « f ». [0065] « B » étant un partenaire, son rôle du point de vue de « A » est qu'il lui fournisse un 8 modèle de données marquées (Mm) à partir de (Dm). [0066] (M) correspond au modèle obtenu sur des données (D). [0067] (Mm) correspond au modèle obtenu sur les données marquées (Dm) [0068] Les modèles (Mm) et (M) sont différents mais équivalent car ils sont issus de l'utilisation de la même fonction « f ». [0069] Une fois le modèle (Mm) récupéré par « A », « A » demande à « B » de supprimer le modèle (Mm) et les données (Dm), étant donné que (Mm) et (Dm) seront issues et utilisées uniquement sur le jeu de donnése appartenant à « A ». « B » confirme la suppression qui est répertoriée et stockée dans une blockchain. [0070] Enfin, « A » marque le modèle récupéré (Mm) grâce aux données supplémentaires particulières (p) afin d'obtenir un modèle (Mm') qui correspond : [0071] (Mm') = [(Mm) + (données supplémentaires privées)]. [0072] C'est le modèle marqué comprenant les données supplémentaires privées (Mm') qui sera utilisé par « A » dans le cadre de son partage ou de sa diffusion. [0073] Ainsi si « A » rencontre le modèle (Mm') quelque part, il est capable de vérifier que c'est une version légitime, en utilisant les données supplémentaires privées (p) stockées en mémoire qui ont permis de marquer le modèle (Mm'). Si le modèle rencontré donne un résultat qui est égal sur certains exemples tout en étant différent sur les données particulières alors c'est que "B" a diffusé sans son accord (Mm). « A » est donc en mesure de prouver que « B » ne respecte pas sa propriété intellectuelle. [0074] De même, si « A » rencontre la donnée (Dm) quelque part, « A » utilise une fonction inverse « ' » pour dissocier (D) et (m) et comparer les marquages afin de prouver que « B » diffuse des données issues de sa propriété intellectuelle. [0075] Enfin, l'enregistrement dans la blockchain permet une traçabilité de l'historique, celui-ci devient très difficilement falsifiable. C'est grâce à cette historique infalsifiable des traces d'échanges stockés sur la plateforme décentralisée, que « A » pourra faire valoir ses droits vis-à-vis de « B ». [0076] On comprendra aisément à la lecture de la présente demande que les composants de la présente invention, comme généralement décrits et illustrés dans les figures, peuvent être arrangés et conçus selon une grande variété de configurations différentes. Ainsi, la description de la présente invention et les figures afférentes ne sont pas prévues pour limiter la portée de l'invention mais représentent simplement des modes de réalisation choisis. [0077] Plusieurs unités fonctionnelles décrites dans la présente description ont été nommées « modules », afin de souligner leur indépendance d'exécution. Par exemple, un module peut être mis en oeuvre par circuit électronique, tel qu'un circuit intégré par exemple ou par d'autre types d'arrangement de composants, tels que par exemple des semiconducteurs, des portes logiques, des transistors ou d'autres composants discrets. De 9 tels modules peuvent également être mis en oeuvre par une ou plusieurs application(s) logicielle(s) ou portion(s) de code exécutable(s) au sein d'au moins un environnement logiciel, pour l'exécution par divers types de processeurs et ce, quel que soit le langage utilisé. Un module identifié peut, par exemple, comporter un ou plusieurs blocs physiques ou logiques d'instructions machine qui peuvent, par exemple, être organisés en objet, procédé, ou fonction. De plus, les routines et instructions d'un module identifié n'ont pas besoin d'être physiquement localisées ensemble, mais peuvent comporter des instructions disparates stockées dans différents endroits qui, une fois réunis fonctionnellement et logiquement ensemble, forment le module et réalisent le but indiqué pour le module. [0078] En effet, un module peut être une instruction simple de code exécutable, ou une pluralité d'instructions, et peut même être distribué parmi plusieurs différents segments de code ou parmi différents programmes et stocké dans plusieurs blocs de mémoires. De même, des données opérationnelles peuvent être identifiées et illustrées dans des modules, et peuvent être incorporées sous n'importe quelle forme appropriée et être organisées dans n'importe quel type approprié de structure de données. Les données opérationnelles peuvent être rassemblées ou peuvent être réparties sur différents endroits incluant différents dispositifs de stockage finis, et peuvent exister, au moins partiellement, simplement en tant que signaux électroniques sur un système ou un réseau. De plus, par le terme système, on entend ici tout type de terminal ou dispositif agencé pour effectuer les fonctions décrites en référence aux modules. Le système comporte des moyens de traitement de données permettant de réaliser ces fonctions décrites et pourra donc comporter des circuits spécifiques réalisant ces fonctions ou comporter, d'une manière générale, des ressources informatiques permettant d'exécuter les instructions décrites précédemment. [0079] Les références dans la présente description à une implémentation, un mode ou une variante de réalisation signifie qu'un dispositif, ou un module, ou une structure, ou une caractéristique particulière décrite est inclus dans au moins un mode de réalisation de la présente invention et que les différents exemples ne se rapportent pas forcément au même mode de réalisation. [0080] En outre, les dispositifs, les structures, ou les caractéristiques décrites peuvent être combinés de n'importe quelle façon appropriée dans un ou plusieurs mode(s) de réalisation, à moins qu'ils ne soient incompatibles entre eux. Dans la présente description, de nombreux détails spécifiques sont fournis à titre illustratif et nullement limitatif, de façon à détailler précisément l'invention. L'homme de métier comprendra cependant que l'invention peut être réalisée en l'absence d'un ou plusieurs de ces détails spécifiques ou avec des variantes. A d'autres occasions, certains aspects ne sont pas détaillés de façon à éviter d'obscurcir et alourdir la présente description et l'homme de métier comprendra que des moyens divers et variés pourront être utilisés et que l'invention n'est pas limitée aux seuls exemples décrits. [0081] La présente demande décrit diverses caractéristiques techniques et avantages en référence aux figures et/ou à divers modes de réalisation. L'homme de métier comprendra que les caractéristiques techniques d'un mode de réalisation donné peuvent en fait être combinées avec des caractéristiques d'un autre mode de réalisation à moins que l'inverse ne soit explicitement mentionné ou qu'il ne soit évident que ces caractéristiques sont incompatibles ou que la combinaison ne fournisse pas une solution à au moins un des problèmes techniques mentionnés dans la présente demande. De plus, les caractéristiques techniques décrites dans un mode de réalisation donné peuvent être isolées des autres caractéristiques de cc mode à moins que l'inverse ne soit explicitement mentionné. [0082] Il doit être évident pour les personnes versées dans l'art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration, mais peuvent être modifiés dans le domaine défini par la protection demandée, et l'invention ne doit pas être limitée aux détails donnés ci-dessus. [0083] Après avoir décrit et illustré les principes de l'invention en référence à divers modes de réalisation, il sera reconnu que les divers modes de réalisation peuvent être modifiés en termes d'agencement et de détail sans s'écarter de ces principes. On comprendra que les différents concepts et aspects de l'invention décrits ci-dessus peuvent être mis en oeuvre, par exemple, en utilisant un ou plusieurs processeurs, modules, instructions exécutables par machine, ordinateurs et / ou serveurs. Il convient de comprendre que les concepts et les aspects de l'invention décrits ici ne sont pas liés ni limités à un type particulier d'environnement informatique, sauf indication contraire. Différents types d'environnements informatiques spécialisés peuvent être utilisés avec ou effectuer des opérations conformément aux enseignements décrits ici. Les éléments des modes de réalisation montrés dans le logiciel peuvent être implémentés dans le matériel et inversement. [0084] Un ou plusieurs dispositifs, processeurs ou dispositifs de traitement peuvent être configurés pour exécuter la ou les fonctions de chacun des éléments et modules de l'agencement structurel décrit ici. Par exemple, le ou les dispositifs, processeurs ou dispositifs de traitement peuvent être configurés pour exécuter une ou plusieurs séquences d'une ou plusieurs instructions exécutables par la machine contenues dans une mémoire principale afin de mettre en oeuvre le ou les procédés ou la ou les fonctions décrits dans la présente. L'exécution des séquences d'instructions contenues dans une mémoire principale amène les processeurs à exécuter au moins certaines des étapes du 11 processus ou des fonctions des éléments décrits ici. Un ou plusieurs processeurs dans un agencement multitraitement peuvent également être utilisés pour exécuter les séquences d'instructions contenues dans une mémoire principale ou un ordinateur lisible en mémoire. Dans des variantes de modes de réalisation, des circuits câblés peuvent être utilisés à la place ou en combinaison avec des instructions logicielles. Ainsi, les modes de réalisation ne sont limités à aucune combinaison spécifique de circuits matériels et logiciels. Le terme "support lisible par ordinateur", tel qu'utilisé ici, désigne tout support qui participe à la fourniture d'instructions à un processeur pour exécution. Un tel support est non transitoire et peut prendre de nombreuses formes, y compris, mais sans s'y limiter, un support non volatile, un support volatile et un support de transmission. Les supports non volatiles incluent, par exemple, les disques optiques ou magnétiques. Les supports volatiles incluent la mémoire dynamique. Les supports de transmission comprennent les câbles coaxiaux, le fil de cuivre et les fibres optiques. Les formes courantes de supports lisibles par ordinateur incluent, par exemple, une disquette, un disque flexible, un disque dur, une bande magnétique, tout autre support magnétique, un CD-ROM, un DVD, tout autre support optique, des cartes perforées, une autre support physique avec des motifs de trous, une RAM, une PROM et une EPROM, une FLASH-EPROM, toute autre puce mémoire ou cartouche, une onde porteuse comme décrit ci-après, ou tout autre support pouvant être lu par un ordinateur. Diverses formes de supports lisibles par ordinateur peuvent être impliquées dans le transport d'une ou plusieurs séquences d'une ou plusieurs instructions au processeur pour exécution. [0085] Des programmes d'ordinateur comprenant des instructions exécutables par une machine pour la mise en oeuvre d'au moins une des étapes des procédés et / ou des aspects et / ou des concepts de l'invention décrits ici ou une ou plusieurs fonctions de divers éléments de l'agencement structurel décrit ici peuvent être mis en oeuvre ou plusieurs ordinateurs comprenant au moins une interface, un processeur physique et une mémoire non transitoire (également appelé, de manière générale, un support de stockage ou de lecture lisible par machine non transitoire). L'ordinateur est un ordinateur à usage spécial, car il est programmé pour exécuter des étapes spécifiques du ou des procédés décrits ci-dessus. La mémoire non transitoire est codée ou programmée avec des instructions de code spécifiques pour la mise en oeuvre du ou des procédés ci-dessus et de ses étapes associées. La mémoire non transitoire peut être agencée en communication avec le processeur physique afin que le processeur physique, en cours d'utilisation, lise et exécute les instructions de code spécifiques incorporées dans la mémoire non transitoire. L'interface de l'ordinateur à usage spécifique peut être agencée en communication avec le processeur physique et recevoir des paramètres d'entrée qui sont traités par le processeur physique. 12 [0086] L'homme du métier comprendra que les agencements et procédés décrits ici re- présentent une solution au problème technologique décrit ci-dessus. [0087] La figure 3 montre un environnement informatique pouvant être utilisé pour mettre en oeuvre un ou plusieurs aspects de l'invention. [0088] Un tel calcul est généralement effectué sur des systèmes de traitement de données appelés grappes. Un cluster comprend généralement un groupe de noeuds interconnectés. Certains noeuds sont utilisés pour effectuer des tâches informatiques (noeuds de calcul), d'autres noeuds servent à stocker des données (noeuds de stockage) et un autre noeud gère normalement le cluster (noeud d'administration). Chaque noeud est par exemple un serveur mettant en oeuvre un système d'exploitation tel que, par exemple, Linux (Linux est une marque déposée). La connexion entre les noeuds s'effectue, par exemple, à l'aide de liaisons de communication Ethernet ou InfiniBand (Ethernet et InfiniBand sont des marques déposées). [0089] la machine virtuelle respective d'au moins un moteur de contrôle de système de plateforme, d'au moins un dispositif de noeud de réseau ou d'au moins un dispositif est configure° pour exécuter des parties de la tâche spécifique, les parties de la tâche spécifique étant réparties en fonction de caractéristiques de capacité et d'efficacité de la machine virtuelle respective du au moins un moteur de contrôle du système de plate-forme, du au moins un dispositif de noeud de réseau ou du au moins un dispositif. [0090] La figure 3 montre schématiquement un exemple de topologie de grappes 100, du type arbre fat. La topologie comprend un groupe de noeuds généralement référencé 105. Ici, les noeuds appartenant à un groupe 110 sont (les noeuds de calcul et les noeuds d'un groupe 115 sont des noeuds de service (noeuds de stockage et noeuds d'administration). Les noeuds de calcul peuvent être regroupés dans des sous-groupes 120 appelés "îlots de calcul", le groupe 115 étant appelé "îlot de service". [0091] Les noeuds sont reliés entre eux par des commutateurs, par exemple hiérar- chiquement. Dans l'exemple représenté sur la figure 3, les noeuds sont connectés à des commutateurs de premier niveau 125, qui sont reliés à des commutateurs de second niveau 130, eux-mêmes reliés à des commutateurs de troisième niveau 135. [0092] Comme le montre la figure 4, chaque noeud comprend généralement un ou plusieurs microprocesseurs, des mémoires locales et une interface de communication. Plus précisément, le dispositif 200 comprend ici un bus de communication 202 auquel sont connectés : [0093] - unités centrales ou microprocesseurs 204; [0094] - composant de mémoire vive (RAM) 206, comprenant des registres adaptés pour en- registrer des variables et des paramètres créés et modifiés lors de l'exécution de programmes (comme indiqué, chaque composant de mémoire vive peut être associé à un microprocesseur); et, 13 [0095] - interfaces de communication 208 adaptées pour envoyer et recevoir des données. [0096] Le noeud 200 comprend en outre ici des moyens de stockage internes 212, tels que des disques durs, capables notamment de contenir le code exécutable de programmes. [0097] Le bus de communication permet une communication bidirectionnelle et une inter- opérabilité entre les différents éléments inclus dans le dispositif 200 ou connectés à celui-ci. Les microprocesseurs 204 contrôlent et dirigent l'exécution d'instructions ou de parties de code logiciel du programme ou des programmes. Lors de la mise sous tension, le ou les programmes stockés dans une mémoire non volatile, par exemple un disque dur, sont transférés dans la mémoire vive 206. [0098] Système de plate-forme Internet de multiples dispositifs de plate-forme couplés en communication pour une communication bidirectionnelle à plusieurs noeuds de réseau de communication de plate-forme, système comprenant : [0099] Un moteur de plate-forme couplé en communication pour une communication bidi- rectionnelle avec les noeuds de réseau de communication de plate-forme, et via celui-ci couplé en communication pour une communication bidirectionnelle avec les dispositifs de plateforme ; [0100] Le moteur de plate-forme ayant plusieurs modules de fonction, le moteur de plate- forme étant disposé sur un nombre sélectionnable de noeuds de serveur d'un nuage de noeuds de serveur, au moins un module de fonction des modules de fonction multiples étant un module de moteur de provisionnemcnt configuré pour remplir de manière sélectionnable les noeuds de serveur ou un des périphériques avec le moteur de la plate-forme, et un autre des modules de fonction multiples étant un module contrôlant l'affichage de tous les périphériques en fonctionnement pour délivrer un signal pour chacun permettant une distinction visuelle établie entre les dispositifs de fonctionnement normaux (en vert par exemple), l'anormal des dispositifs de commande (par exemple en rouge) et coopérant avec un module prédictif établissant des valeurs prédites des signaux délivrés par chaque dispositif et indiquant différemment les dispositifs dont la valeur de prédiction doit dépasser la valeur de seuil prédéterminée établie par l'utilisateur dans son application métier. 14 [Revendication 1] [Revendication 2] [Revendication 3]