9 research outputs found

    Programmer le parallélisme avec des futures en Heptagon un langage synchrone flot de données et étude des réseaux de Kahn en vue d'une compilation synchrone

    Get PDF
    Les langages synchrones ont été fondés pour modéliser et implémenter les systèmes réactifs temps-réels critiques. Avec la complexité toujours croissante des systèmes contrôlés, la vitesse d'exécution devient un critère important. Nous sommes donc à la recherche d'une exécution parallèle, combinant efficacité et sûreté.Les langages synchrones ont toujours intégré la notion de parallélisme, mais ce, pour l'expressivité de la modélisation. Leurs compilations visent principalement les circuits ou la génération de code séquentiel. Tous ont une sémantique formelle, qui rend possible la distribution correcte du code. Mais la préservation de cette sémantique peut être un obstacle à l'efficacité du code généré, particulièrement s'il est nécessaire de préserver une notion d'instant global au système.Le modèle sémantique qui nous intéresse est celui des réseaux de Kahn. Ces réseaux modélisent des calculateurs distribués, communiquant au travers de files de taille non bornée. Dans ce cadre, la distribution ne demande aucune communication ni synchronisation supplémentaire. En considérant l'histoire des files de communication, la sémantique de Kahn permet de s'abstraire de l'exécution effective, tout en garantissant le déterminisme du calcul. Pour cela, chaque nœud du réseau doit avoir une sémantique fonctionnelle continue.Le langage que nous développons est Heptagon, un langage synchrone fonctionnel du premier ordre, déscendant de Lustre. Son compilateur est un prototype universitaire, apparenté à l'outil industriel Scade. Grâce à sa sémantique de Kahn, la distribution d'un programme Heptagon ne pose pas de question, son efficacité beaucoup plus.L'efficacité requiert de minimiser les synchronisations. Cela revêt deux aspects non indépendants. Avoir un découplage suffisant des calculs : il y a des délais dans les dépendances entre calculs. Avoir une granularité importante des calculs : un fort ratio temps de calcul sur fréquence de communication. Or la sémantique synchrone et les horloges d'un programme Heptagon reflètent exactement l'inverse. Elles permettent au programmeur de se contenter d'un découplage d'un instant et à chaque instant, au maximum une valeur est calculée. De plus, les instants sont typiquement courts, pour assurer que le système réagit rapidement.Des précédents travaux sur le sujet, nous tirons deux constats.Le premier est que nous souhaitons le contrôle du parallélisme par le programmeur, directement dans le code source. Il doit pouvoir maîtriser à quels instants il y a communication ou synchronisation. La solution que nous proposons dans ce manuscrit est l'utilisation des futures dans Heptagon. Ils fournissent ce pouvoir au programmeur, tout en restant des annotations qui peuvent être supprimées sans changer la sémantique dénotationnelle du programme.Le deuxième constat est que la question de la granularité des calculs est une question profonde, touchant en particulier aux questions de dépendance de données, de choix des horloges et de compilation modulaire. Heptagon, comme ses parents, restreint les réseaux de Kahn qui peuvent être écrits, de telle sorte que ces trois questions se traitent séparément. Pour mieux comprendre le lien entre ces éléments, nous revenons aux réseaux de Kahn. Notre principal résultat est la définition de la sous-classe des réseaux ordonnés réactifs. Ceux-ci sont les seuls pour lesquels nous pouvons décrire modulairement le comportement avec des horloges, sans restreindre les contextes d'appels. Ces réseaux ont une signature d'horloge en forme normale, qui maximise la granularité. Pour l'exprimer, nous introduisons les horloges entières, décrivant la communication de plusieurs valeurs en un seul instant. Nous appliquons ensuite nos résultats pour voir sous un nouveau jour Heptagon, Signal, les politiques des objets de Lucid Synchrone, mais aussi proposer une analyse pleinement modulaire de Lucy-n langage synchrone le plus fidèle aux réseaux de Kahn.Synchronous languages are used to program critical reactive systems. Today, systems require to find a way to execute them safely and in parallel. Parallelism has always been part of synchronous langages, but for modeling purpose. Their formal semantics allow to distribute them, but preserving the semantics may be ressource costly and prevent good parallel execution.The Kahn networks model is of great interest. It models distributed computers, communicating through unbounded FIFOs, ensuring that the computed values are deterministic, without any need of added synchronization.We develop the langage Heptagon, a first order functional synchronous son of Lustre.The compiler is an academic prototype of the industrial tool Scade. Thanks to its Kahn semantics, it can be distributed. In order to be efficient, one need to maximize the decoupling of computations and maximize the computation granularity. However, synchronous langages allow for very tight computation coupling and usually require thin computation granularity to ensure reactivity of the system.We opt for two research directions. The first one is to give the control of the execution parallelism to the programer. To this mean, we add futures to the source langage Heptagon. They provide control over starting and end of parallel computations, while preserving the functional semantics. Moreover, we provide a compilation for embedded systems, using statically allocated memory. The second one is to study Kahn synchronous semantics to understand data dependencies and maximize granularity of the computations. This touches deeply to the synchronous languages, mixing the usually separated questions of causality and clock calculus. We define the class of reactive ordered Kahn networks. They are the one which may be modularly compiled and whose behavior may be expressed with a clock signature. Moreover, we show that their is a normal form for this signature, maximizing the granularity of the network. To express it, we extend clocks to integer clocks. Then we come back to the synchronous languages we know to understand how to use it. The result is fully used and explained on Lucy-n, the synchronous language closest to Kahn networks.PARIS11-SCD-Bib. électronique (914719901) / SudocSudocFranceF

    Architectures innovantes de systèmes de commandes de vol

    Get PDF
    L'aboutissement aux Commandes de Vol Électriques (CDVE) des avions civils actuels s'est fait par étapes, après une longue maturation des différentes technologies mises en place. La prochaine étape est l'utilisation de communications intégralement numériques et d'actionneurs intelligents. Cette thèse propose de nouvelles architectures, en rupture avec l'état de l'art, avec de nouvelles répartitions des fonctions intelligentes entre l'avionique centrale (calculateurs de commandes de vols) et l'avionique déportée (électroniques locales des actionneurs) dont l'avantage est d'exiger moins de ressources par rapport aux architectures conventionnelles tout en satisfaisant les mêmes exigences de sécurité et de disponibilité ainsi que les exigences croissantes en fiabilité opérationnelle de la part des compagnies aériennes. La sûreté de fonctionnement et la robustesse des nouvelles architectures proposées ont été validées respectivement sous OCAS/Altarica et Matlab/Simulink. ABSTRACT : The current civil aircraft's electrical flight control has been changed to take benefit of technical improvements. New technologies, when mature, can be incorporated in aircrafts. Evolutions are considered towards a digital communication and intelligent actuators. This thesis is aiming at proposing alternative architectures with distribution of system functionality between flight control computers and actuators with less hardware and software resources. New architectures must meet the same safety and availability requirements with additional operational reliability (required by airlines). Dependability and robustness of new architectures have been validated trough respectively OCAS / AltaRica and Matlab / Simulin

    33èmes Journées Francophones des Langages Applicatifs

    Get PDF
    International audienceLes 33èmes Journées Francophones des Langages Applicatifs (JFLA) se sont tenues à Saint-Médard-d'Excideuil, plus précisément Domaine d'Essendiéras (Périgord), du mardi 28 juin 2022 au vendredi 1er juillet 2022.Les JFLA réunissent concepteurs, utilisateurs et théoriciens ; elles ont pour ambition de couvrir les domaines des langages applicatifs, de la preuve formelle, de la vérification de programmes, et des objets mathématiques qui sous-tendent ces outils. Ces domaines doivent être pris au sens large : nous souhaitons promouvoir les ponts entre les différentes thématiques.- Langages fonctionnels et applicatifs : sémantique, compilation, optimisation, typage, mesures, extensions par d'autres paradigmes.- Assistants de preuve : implémentation, nouvelles tactiques, développements présentant un intérêt technique ou méthodologique.- Logique, correspondance de Curry-Howard, réalisabilité, extraction de programmes, modèles.- Spécification, prototypage, développements formels d'algorithmes.- Vérification de programmes ou de modèles, méthode déductive, interprétation abstraite, raffinement.- Utilisation industrielle des langages fonctionnels et applicatifs, ou des méthodes issues des preuves formelles, outils pour le web.Les articles soumis aux JFLA sont relus par au moins deux personnes s'ils sont acceptés, trois personnes s'ils sont rejetés. Les critiques des relecteurs sont toujours bienveillantes et la plupart du temps encourageantes et constructives, même en cas de rejet

    Langage de programmation pour les simulations géoréférencées à base d'agents

    Get PDF
    Lors des dix dernières années, les technologies basées sur les agents logiciels ont été appliquées dans plusieurs domaines tels que les jeux vidéo, les films où évoluent des personnages animés, en réalité virtuelle, dans le développement d’interfaces où sont fournis des agents « assistants », dans les applications Web éducatives utilisant des personnages virtuels, pour ne nommer que ceux-là. Dans plusieurs de ces domaines, les simulations à base d’agents nécessitent l’intégration de données géographiques. Celles-ci intègrent une dimension spatiale et permettent la simulation de divers phénomènes complexes tels que ceux qui sont liés aux dynamiques urbaines. Ce qui a mené à un nouveau domaine de recherche : les simulations géoréférencées à base d’agents (ou SGBA). Certaines plateformes logicielles développées pour les SGBA permettent à l’aide de différentes techniques, la spécification et l’implantation de simulations à base d’agents. Par contre, les comportements des agents qui peuvent y être spécifiés sont encore très limités, ce qui est insuffisant pour le développement de simulations géoréférencées de phénomènes sociaux. Dans ce type de simulations, les agents doivent agir de façon autonome et posséder des capacités d’appréhension de l’espace et de prise de décisions en rapport avec l’environnement géographique dans lequel ils évoluent. Pour posséder de telles caractéristiques, nous considérons que ces agents doivent au minimum posséder un mécanisme de perception autonome et individuel (de l’espace physique, des autres objets et agents), en plus d’être proactifs et posséder des comportements autonomes prenant en compte de leur connaissance du monde dans lequel ils évoluent (leur environnement virtuel). La spécification de ce type d’agents est une tâche très difficile et, à notre connaissance, aucun environnement de développement actuel n’offre de langage de programmation permettant de créer ce type d’agents. Dans le contexte du projet PLAMAGS (Programming LAnguage for MultiAgent GeoSimulations), nous avons développé un nouveau langage de programmation orienté-agent, une démarche de conception appliquée et un environnement de développement permettant la création et l’exécution rapide et simple de simulations géoréférencées à base d’agents. Les principales contributions du projet PLAMAGS sont : - Un langage de programmation descriptif, procédural et orienté-objet complet et utilisable à toutes les étapes du processus de développement et totalement dédié aux SGBA. Ce qui permet d’éliminer l’étape de transition et de transposition du modèle théorique en langage de programmation et ainsi éviter toutes les difficultés qui y sont rattachées. - Une démarche de conception appliquée où les étapes de modélisation, conception, implémentation, exécution et validation sont fusionnées et intégrées à chaque étape de la démarche. - Un modèle comportemental puissant (pour les agents), intuitif, modulaire, extensible et flexible permettant un développement itératif incrémental à l’aide d’abstractions prenant la forme de décompositions (sous-comportements). - Un modèle d’interactions spatialisées clairement défini et directement intégré dans les primitives du langage de programmation.In the last decade, technologies based on software agents have been used in many domains such as video games, movies containing animated characters, virtual reality, in visual interfaces development where “wizards” are supplied and in educative Web applications using virtual characters, just to name a few. In many of these domains, agent-based simulations require the integration of geographic data. These add a spatial dimension and allow the simulation of many complex phenomena such as those included in urban dynamics. This has spawned a new research field: Multi-Agent- Geo-Simulation (MAGS for short). Some of the frameworks developed for MAGS use many different techniques to specify and implement tagent-based simulations. However, the agents’ behaviors that can be specified are usually very limited and are insufficient for the development of geo-referenced simulation of social phenomena. In this type of simulation, the agents must act autonomously and have the ability to perceive the environment in which they evolve, and then take decision based on these perceptions. To benefit from such characteristics, we consider that these agents must minimally have a perception mechanism that is autonomous and unique to each agent which need as well as to be proactive and have autonomous behavior in relation to their virtual environment. The specification of this type of agent is a difficult task and, to the best of our knowledge, none of the existing development environment offers a language able to fulfill it. In the context of the PLAMAGS (Programming LAnguage for Multi-Agent Geo-Simulations) Project, we developed a new agent-oriented programming language, an applied design methodology and an integrated development environment that allow a quick and simple design and execution cycle of agent-based geo-referenced simulations. The main contributions of this work are as follows: - A full-fledged descriptive programming language, procedural and object-oriented that is usable at every stage of the development cycle and that is dedicated to MAGS. This language eliminates the transition and transposition from the theoretical model to the programming language and thus avoids all the difficulties inherent to such a transposition task. - An applied development methodology where the modeling, design and implementation, execution and validation steps are merged and integrated throughout the development cycle. - A behavioral model that is powerful (agent wise), intuitive, modular, extensible and flexible and thus allows a sequential and iterative development using abstractions based on decomposition (sub-behaviors). - A spatialized interaction model that is clearly defined and directly integrated in the primitives of the programming language

    Approches formelles pour l'analyse de la performabilité des systèmes communicants mobiles (Applications aux réseaux de capteurs sans fil)

    Get PDF
    Nous nous intéressons à l'analyse des exigences de performabilité des systèmes communicants mobiles par model checking. Nous modélisons ces systèmes à l'aide d'un formalisme de haut niveau issu du p-calcul, permettant de considérer des comportements stochastiques, temporels, déterministes, ou indéterministes. Cependant, dans le p-calcul, la primitive de communication de base des systèmes est la communication en point-à-point synchrone. Or, les systèmes mobiles, qui utilisent des réseaux sans fil, communiquent essentiellement par diffusion locale. C'est pourquoi, dans un premier temps, nous définissons la communication par diffusion dans le p-calcul, afin de mieux modéliser les systèmes que nous étudions. Nous proposons d'utiliser des versions probabilistes et stochastiques de l'algèbre que nous avons défini, pour permettre des études de performance. Nous en définissons une version temporelle permettant de considérer le temps dans les modèles. Mais l'absence d'outils d'analyse des propriétés sur des modèles spécifiés en une algèbre issue du p-calcul est un obstacle majeur à notre travail. La définition de règles de traduction en langage PRISM, nous permet de traduire nos modèles, en modèles de bas niveau supports du model checking, à savoir des chaînes de Markov à temps discret, à temps continu, des automates temporisés, ou des automates temporisés probabilistes. Nous avons choisi l'outil PRISM car, à notre connaissance, dans sa dernière version, il est le seul outil à supporter les formalismes de bas niveau que nous venons de citer, et ainsi il permet de réaliser des études de performabilité complètes. Cette façon de procéder nous permet de pallier à l'absence d'outils d'analyse pour nos modèles. Par la suite, nous appliquons ces concepts théoriques aux réseaux de capteurs sans fil mobiles.We are interested in analyzing the performability requirements of mobile communication systems by using model checking techniques. We model these systems using a high-level formalism derived from the p-calculus, for considering stochastic, timed, deterministic or indeterministic behaviors. However, in the p-calculus, the basic communication primitive of systems is the synchronous point-to-point communication. However, mobile systems that use wireless networks, mostly communicate by local broadcast. Therefore, we first define the broadcast communication into the p-calculus, to better model the systems we study. We propose to use probabilistic and stochastic versions of the algebra we have defined to allow performance studies. We define a temporal version to consider time in the models. But the lack of tools for analyzing properties of models specified with p-calculus is a major obstacle to our work and its objectives. The definition of translation rules into the PRISM language allows us to translate our models in low-level models which can support model checking, namely discrete time, or continuous time Markov chains, timed automata, or probabilistic timed automata. We chose the PRISM model checker because, in our best knowledge, in its latest version, it is the only tool that supports the low-level formalisms that we have previously cited, and thus, makes it possible to realize complete performability studies. This approach allows us to overcome the lack of model checkers for our models. Subsequently, we apply these theoretical concepts to analyse performability of mobile wireless sensor networks.PARIS-CNAM (751032301) / SudocSudocFranceF

    Actes de l'Ecole d'Eté Temps Réel 2005 - ETR'2005

    Get PDF
    Pdf des actes disponible à l'URL http://etr05.loria.fr/Le programme de l'Ecole d'été Temps Réel 2005 est construit autour d'exposés de synthèse donnés par des spécialistes du monde industriel et universitaire qui permettront aux participants de l'ETR, et notamment aux doctorants, de se forger une culture scientifique dans le domaine. Cette quatrième édition est centrée autour des grands thèmes d'importance dans la conception des systèmes temps réel : Langages et techniques de description d'architectures, Validation, test et preuve par des approches déterministes et stochastiques, Ordonnancement et systèmes d'exploitation temps réel, Répartition, réseaux temps réel et qualité de service

    Définition d'un langage et d'une méthode pour la description et la spécification d'IHM post-W.I.M.P. pour les cockpits interactifs

    Get PDF
    Avec l'apparition de nouvelles technologies comme l'iPad, etc., nous rencontrons dans les logiciels grand public des interfaces de plus en plus riches et innovantes. Ces innovations portent à la fois sur la gestion des entrées (e. g. écrans multi-touch) et sur la gestion des sorties (e.g. affichage). Ces interfaces sont catégorisées de type post-WIMP et permettent d'accroitre la bande passante entre l'utilisateur et le système qu'il manipule. Plus précisément elles permettent à l'utilisateur de fournir plus rapidement des commandes au système et au système de présenter plus d'informations à l'utilisateur lui permettant par là-même de superviser des systèmes de complexité accrue. L'adoption par le grand public et le niveau de maturité de ces technos permet d'envisager leur intégration dans les systèmes critiques (comme les cockpits ou de façon plus générale les systèmes de commande et contrôle). Toutefois les aspects logiciels liés à ces technologies sont loin d'être maîtrisés comme le démontrent les nombreux dysfonctionnements rencontrés par leurs utilisateurs. Alors que ces derniers peuvent être tolérés pour des applications de jeux ou de divertissement elles ne sont pas acceptables dans le domaine des systèmes critiques présentés précédemment. La problématique de cette thèse porte précisément sur le développement de méthodes, langages, techniques et outils pour la conception et le développement de systèmes interactifs innovants et fiables. La contribution de cette thèse porte sur l'extension d'une notation formelle : ICO (Objets Coopératifs Interactifs) pour décrire de manières exhaustive et non ambiguë les techniques d'interactions multi-touch et la démonstrabilité de son application dans le cadre des applications multi-touch civils. Nous proposons en plus de cette notation, une méthode pour la conception et la validation de systèmes interactifs offrants des interactions multi-touch à leurs utilisateurs. Le fonctionnement de ces systèmes interactifs est basé sur une architecture générique permettant une structuration des modèles allant de la partie matérielle des périphériques d'entrées jusqu' à la partie applicative pour la commande et le contrôle de ces systèmes. Cet ensemble de contribution est appliqué sur un ensemble d'étude de ca dont la plus significative est une application de gestion météo pour un avion civil.With the advent of new technologies such as the iPad, general public software feature richer and more innovative interfaces. These innovations are both on the input layer (e.g. multi-touch screens) and on the output layer (e.g. display). These interfaces are categorized as post-W.I.M.P. type and allow to increase the bandwidth between the user and the system he manipulates. Specifically it allows the user to more quickly deliver commands to the system and the system to present more information to the user enabling him managing increasingly complex systems. The large use in the general public and the level of maturity of these technologies allows to consider their integration in critical systems (such as cockpits or more generally control and command systems). However, the software issues related to these technologies are far from being resolved judging by the many problems encountered by users. While the latter may be tolerated for gaming applications and entertainment, it is not acceptable in the field of critical systems described above. The problem of this thesis focuses specifically on the development of methods, languages, techniques and tools for the design and development of innovative and reliable interactive systems. The contribution of this thesis is the extension of a formal notation: ICO (Interactive Cooperative Object) to describe in a complete and unambiguous way multi-touch interaction techniques and is applied in the context of multi-touch applications for civilians aircrafts. We provide in addition to this notation, a method for the design and validation of interactive systems featuring multi-touch interactions. The mechanisms of these interactive systems are based on a generic architecture structuring models from the hardware part of the input devices up to the application part for the control and monitoring of these systems. This set of contribution is applied on a set of case studies, the most significant being an application for weather management in civilian aircrafts

    HASTECS: Hybrid Aircraft: reSearch on Thermal and Electric Components and Systems

    Get PDF
    In 2019, transportation was the fastest growing sector, contributing to environmental degradation. Finding sustainable solutions that pollute less is a key element in solving this problem, particularly for the aviation sector, which accounts for around 2-3% of global CO2 emissions. With the advent of Covid-19, air traffic seems to have come to a fairly permanent halt, but this pandemic reinforces the need to move towards a "cleaner sky" and respect for the environment, which is the objective of the Clean Sky2 program (H2020 EU), the context in which the HASTECS project has been launched in September 2016

    Manager l'interface. Approche par la complexité du processus collaboratif de conception, d'intégration et de réalisation (modèle transactionnel de l'acteur d'interface et dynamique des espaces d'échanges)

    Get PDF
    Dans de grands projets tels qu accélérateurs ou détecteurs de particules, les interfaces et les frontières se révèlent à la fois critiques et sous-estimées. Le manageur technique, acteur parmi les autres, se trouve placé à des nœuds de réseau où il doit mettre en œuvre des espaces d'échanges afin de susciter des conduites collaboratives. À partir d études de cas issus du terrain du CERN, la thèse adopte trois principes issus de la littérature de la complexité, les principes dialogique,hologrammique et d auto-éco-organisation. Elle propose une construction méthodologique matricielleoriginale menant à l'élaboration d'un modèle transactionnel de l acteur d interface.L espace d échanges collaboratif devient le lieu où se déploie la dynamique de transformation del acteur d interface en acteur-frontière. Les objets intermédiaires élaborés lors du processus deconception / intégration y sont simultanément transformés en objets frontières, qui sont mobiliséspour la réalisation du produit dans le cadre récursivement déterminé du projet. L intérêt d uneapproche globale et couplée de cette dynamique des espaces d'échanges conduit à proposer un hypercompas afin d'orienter l agir penser du manageur technique.An approach through the complexity of the collaborative process of design, integration and realization:a transactional model of the interface actor and dynamics of exchange spacesAbstractIn large projects such as particle accelerators or detectors, interfaces and boundaries revealthemselves to be both critical and underestimated. The technical manager, an actor among others,finds himself placed at network nodes where he must set up exchanges spaces in order to generatecollaborative behaviours. Starting with case studies from the field of CERN, the thesis follows threeprinciples based on the dialogical, the hologramic and the self-eco-organization principles, asexpanded in the writings on complexity. It puts forward an original methodological matrix constructionleading to a transactional model of the interface actor.The collaborative exchanges spaces builds itself as a place for the dynamic transformation of theinterface actor into a boundary actor. Intermediate objects, created during the design / integrationprocess, are simultaneously transformed into boundary objects. They are instrumental in therealization of the product: this takes place in the framework of the project which has been determinedthrough a recursive process. The interest generated by such a global and combined approach of thisdynamic process leads to the proposal of a hypercompass , with the aim of providing the means forthe technical manager to orient his acting thinking .SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF
    corecore