Complex systems co-simulation with the CoSim20 framework : for efficient and accurate distributed co-simulations - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Theses Year : 2021

Complex systems co-simulation with the CoSim20 framework : for efficient and accurate distributed co-simulations

Co-simulation de systèmes complexes avec le framework CoSim20 : pour des co-simulations distribuées performantes et fidèles

Abstract

Cyber-Physical Systems are complex engineered systems where computational parts communicate together and with physical parts describing the environment. To tame the growing complexity of such systems, they are usually decomposed into different parts that are modeled by different experts, possibly from different organizations. These experts are using a language tailored to their problem, both syntactically and semantically. At this point, on the one hand, it results in executable models of the cyber parts and executable models of the physical parts and, on the second hand, executable models should preserve intellectual properties and are usually shared as black-box simulation units. However, to understand the behavior emerging from the whole system, it is required to do a collaborative simulation; where the simulation units from different disciplines are coordinated to exchange data when appropriate.The problems with the existing approaches are manifolds. First, simulation units exposed as black boxes do not allow taking into account the semantic specificities of each model. Second, co-simulations are nowadays mainly based on a time-driven application programming interface, which has been shown to introduce 'artificial delays' when applied to cyber-physical systems. Such delays imply a bad accuracy that may invalidate the co-simulation results. Moreover, reducing such co-simulation delays implies bad overall co-simulation performances. Third, the definition of an accurate and performant co-simulation framework may be algorithmically complex so that support is required to increase the abstraction level when defining the coordination. The thesis developed in this document is that it is possible 1) to provide a model level coordination interface that encompasses both the cyber and the physical parts of a cyber-physical system and 2) to define a language dedicated to the coordination of such parts. Based on these artifacts and an original co-simulation programming interface it is possible to automatically generate an accurate and performant distributed infrastructure for co-simulation.The thesis is supported by the implementation of two domain-specific languages. One for the definition of the Model Coordination Interface and one for the definition of the Model Coordination Specification. Additionally, the thesis is also supported by the prototype of a semantic-aware API introduced as a generalization of existing standard APIs. Finally, a compiler has been implemented so that coordinations defined with the proposed languages can be used to automatically generate a distributed co-simulation framework. The different proposals are applied to a case study where the advantages of the approach are clearly illustrated.
Les systèmes cyber-physiques sont des systèmes d'ingénierie complexe dans lesquels les parties computationnelles communiquent entre elles et avec les parties physiques décrivant l'environnement. Pour apprivoiser la complexité croissante de ces systèmes, ils sont généralement décomposés en différentes parties qui sont modélisées par différents experts, éventuellement issus de différentes organisations. Ces experts utilisent un langage adapté à leur problème, à la fois syntaxiquement et sémantiquement. À ce stade, d'une part on obtient des modèles exécutables des parties computationnelles et des modèles exécutables des parties physiques et, d'autre part, les modèles exécutables ne doivent pas violer les propriétés intellectuelles lorsqu'ils sont partagés et sont donc généralement partagés en tant qu'unités de simulation en boîte noire. Cependant, pour comprendre le comportement émergeant de l'ensemble du système, il est nécessaire de faire une simulation collaborative ; où les unités de simulation de différentes disciplines sont coordonnées pour échanger des données aux moments opportuns.Les problèmes avec les approches existantes sont multiples. Premièrement, les unités de simulation exposées sous forme de boîtes noires ne permettent pas de prendre en compte les spécificités sémantiques de chaque modèle. Deuxièmement, les co-simulations sont aujourd'hui principalement basées sur une interface de programmation dirigée par le temps, et il a été montré que de telles interfaces introduisaient, lorsqu’elles sont appliquées à des systèmes cyber-physiques, des « retards artificiels » dus à la co-simulation elle-même. De tels retards impliquent une mauvaise précision qui peut invalider les résultats de la co-simulation. De plus, réduire ces délais de co-simulation implique de mauvaises performances globales de co-simulation. Troisièmement, la définition d'un cadre de co-simulation précis et performant peut-être complexe d'un point de vue algorithmique, de sorte qu'un support est nécessaire pour augmenter le niveau d'abstraction lors de la définition de la coordination.La thèse développée dans ce document est qu'il est possible 1) de fournir une interface de coordination de niveau modèle qui englobe à la fois les modèles cyber et les modèles physiques d'un système cyber-physique et 2) de définir un langage dédié à la coordination de tels modèles. Sur la base de ces artefacts et d'une interface de co-simulation originale, il est possible de générer automatiquement une infrastructure distribuée précise et performante pour la co-simulation.La thèse est soutenue par la mise en œuvre de deux langages dédiés. Un pour la définition de l'interface de coordination du modèle et un pour la définition de la spécification de la coordination. De plus, la thèse est également soutenue par un prototype d'API respectueux de la sémantique comportementale des modèles, qui est introduite comme une généralisation des API standard existantes. Enfin, un compilateur a été défini pour que les coordinations définies avec les langages proposés puissent être utilisées pour générer automatiquement un environnement de co-simulation distribué. Les différentes propositions sont appliquées sur une étude de cas où les avantages de l'approche sont clairement illustrés.
Fichier principal
Vignette du fichier
2021COAZ4019.pdf (10.93 Mo) Télécharger le fichier
Origin : Version validated by the jury (STAR)

Dates and versions

tel-03382774 , version 1 (22-07-2021)
tel-03382774 , version 2 (18-10-2021)

Identifiers

  • HAL Id : tel-03382774 , version 2

Cite

Giovanni Liboni. Complex systems co-simulation with the CoSim20 framework : for efficient and accurate distributed co-simulations. Computer Aided Engineering. Université Côte d'Azur, 2021. English. ⟨NNT : 2021COAZ4019⟩. ⟨tel-03382774v2⟩
233 View
248 Download

Share

Gmail Facebook X LinkedIn More