Skip to content. | Skip to navigation

Emergences

Lettre d'information n° 39

Image emergences pour impression
Personal tools
You are here: Home 2015 Lettre d'information n° 39 Une ingénierie des langages pour les systèmes cyber-physiques
Document Actions

Une ingénierie des langages pour les systèmes cyber-physiques

Souvent désignés par le sigle anglais CPS, les systèmes cyber-physiques associent du logiciel et des éléments empruntés à l'environnement réel. Leurs créateurs viennent de mondes différents. Informaticien, ingénieur ou scientifique, chacun utilise un langage métier qui lui est propre. Membre de l'équipe de recherche DiverSE* au centre Inria Rennes - Bretagne Atlantique, Benoît Combemale étudie des méthodes pour faciliter le dialogue entre ces langages et les doter de niveaux d'abstraction plus élevés afin d'améliorer le raisonnement sur le système.

Souvent désignés par le sigle anglais CPS, les systèmes cyber-physiques associent du logiciel et des éléments empruntés à l'environnement réel. Leurs créateurs viennent de mondes différents. Informaticien, ingénieur ou scientifique, chacun utilise un langage métier qui lui est propre. Membre de l'équipe de recherche DiverSE* au centre Inria Rennes - Bretagne Atlantique, Benoît Combemale étudie des méthodes pour faciliter le dialogue entre ces langages et les doter de niveaux d'abstraction plus élevés afin d'améliorer le raisonnement sur le système.

Autrefois, le logiciel était fabriqué par un petit groupe de personnes très homogène. Aujourd'hui, les concepteurs appartiennent à des mondes radicalement différents. Ils utilisent des méthodes tout aussi différentes,” constate Benoît Combemale. Dans l'ingénierie dirigée par les modèles, un des buts initiaux était justement de “faire en sorte que tous puissent collaborer. Qu'un expert en sécurité puisse dialoguer avec un spécialiste des protocoles de communication ou du calcul distribué. Mais aussi qu'un informaticien puisse parler avec un électronicien ou un ingénieur de la mécanique. Notre équipe de recherche élabore donc des outils et méthodes pour permettre à tous les intervenants au projet de mieux travailler ensemble.

Chacun de ces spécialistes utilise un langage de modélisation pour exprimer son point de vue sur le système. On appelle ces langages métiers des DSL (Domain Specific Languages). C'est leur interfaçage qui se trouve au cœur des travaux de Benoît Combemale. “Comment permettre à chacun de définir son propre DSL. Et comment le coordonner avec ceux des autres. Nous voyons le DSL comme un pivot socio-technique. D'un point de vue social, il sert à communiquer sur la base des modèles qu'on établit. D'un point de vue technique, il permet une coordination avec d'autres modèles pour effectuer des raisonnements globaux sur le système.

Détecter la zone Edge

Parallèlement à l'ingénierie logicielle, une véritable ingénierie des langages commence à émerger. “Il y a 15 ans, il existait peu de langages. Leurs créateurs, des experts en langages, n'avaient pas besoin d'ingénierie particulière pour les concevoir. Aujourd'hui, celle-ci s'avère nécessaire pour définir, personnaliser et faire évoluer de plus en plus de langage par de plus en plus d’ingénieurs.” Elle prend encore plus d'importance avec l'avènement des systèmes cyber-physiques. “Ce sont des systèmes logiciels qui réagissent à un environnement physique. Quand votre portable passe de la 3G à la couverture Edge, il n'interrompt pas la communication. Il détecte une zone Edge. Il bascule automatiquement. Il s'adapte. Il réagit à l'environnement. C'est un CPS.

La conception de ces CPS augmente au passage l'hétérogénéité des langages. “Des informaticiens définissent certains aspects fonctionnels du système. Des scientifiques modélisent l'environnement physique. À un moment donné, il faut bien réunir les deux. C'est là que réside la difficulté. Nous avons beaucoup étudié cette thématique dans le contexte des systèmes embarqués critiques temps réels. Nous travaillons depuis longtemps avec des groupes comme Airbus, Thalès, Aréva... Même s'il reste des défis, nous avons un savoir-faire.”

Les chercheurs se tournent désormais vers les systèmes cyber-physiques intelligents, ou ‘smart CPS’. Principale caractéristique : “ils évoluent dans un environnement hautement ouvert. Ils peuvent réagir à quantité de stimuli qui n'ont pas été prévus et ne sont pas totalement connus au moment de la conception.”

Cette terra incognita donne du fil à retordre. Les systèmes adaptatifs ont besoin d'en savoir plus sur  toutes les lois qui les régissent. “Il peut s'agir de lois sociales ou humaines, ou encore environnementales. Elles n'ont parfois rien à voir directement avec le système lui-même, mais on doit les prendre en compte pour savoir comment l'adapter au mieux.

À partir de là, trois difficultés surgissent. Jusqu'alors “on utilisait les DSL pour les modèles d'ingénierie. Premier problème : comment les utiliser désormais aussi pour les modèles scientifiques ? Comment s'en servir pour favoriser la définition de lois physiques à un haut niveau d'abstraction tout en étant capable de les coordonner avec les modèles du système lui-même, et essayer aussi de voir la répercussion en terme d'adaptation ?

Laver son linge à heure variable

Deuxième question : “comment offrir aussi ces langages à l'utilisateur final pour qu'il exprime directement ses préférences en terme d'adaptabilité ? Si l'utilisateur ne comprend pas ce qui se passe, il n'acceptera pas l'adaptation. Il veut bien que le système s'adapte, mais à condition de comprendre pourquoi.” Exemple ? “La machine à laver qui démarre en heure creuse. Tout le monde programme le lancement à la même heure : au début de la plage horaire. Or, on pourrait très bien étaler. Démarrer plus tard dans la nuit. Peu importe, du moment que le linge soit propre et sec à 8 h du matin. On pourrait donc minimiser le coût électrique et même optimiser le démarrage pour bénéficier d'un meilleur pourcentage d'énergie verte. L'utilisateur va accepter de voir sa machine démarrer à une heure qu'il n'a pas choisi précisément mais qui satisfait ses exigences. Pourquoi ? Parce qu'il a eu la capacité de rentrer ses préférences et de comprendre ce qui se passait.

Mais reste alors un troisième défi : “comment les modèles scientifiques et les préférences usagers peuvent-ils être utilisés pour améliorer les modèles d'ingénierie, et donc le système lui-même ? Nous sommes à la recherche d'un optimum dans l'idée ensuite de reconfigurer le système de manière à atteindre cet optimum.” Cet écheveau de questionnements concerne “par exemple les réseaux électriques, les architectures domotiques ou encore la gestion des futures villes intelligentes.

-----
Note :

(1) DiverSE est une équipe-projet Inria/CNRS/Université de Rennes/Insa Rennes commune à l'Irisa (UMR  6074).