499 research outputs found

    Méthodologie de développement de systÚmes multi-agents adaptatifs et conception de logiciels à fonctionnalité émergente

    Get PDF
    Environments within which applications are embedded are growing in complexity and dynamicity, considering the large number and the diversity of the takeholders. Functions of such systems become more and more difficult to define, and their specifications are often incomplete, even if their components are easily identifiable and specifiable. Without new design and modeling methods, managing such project will become too constraining, long and costly to cope with.We propose to use cooperative self-organising adaptive multi-agent systems (AMAS) to tackle these design problems. The functionality of such systems emerges from coopera- tive interactions between agents. Nevertheless, developing using AMAS is still an ad-hoc process and reduced to a small group of users. Several applications have been designed by using AMAS, but it has never been executed by novices and non AMAS experts. To answer to this lack of visibility and openess, the ADELFE project – for Atelier de DEveloppement de Logiciels Ă  FonctionnalitĂ© Emergente or Toolkit for developing applications with emergent functionalities – proposes to develop a methodology based on these emergence oriented principles. This methodology is defined in three points : process, notations and tools. The ADELFE process is based on the Rational Unified Process and extends or adds some agent specific activities. Notations are extensions of UML and A-UML. Tools have been developed or extended in to support notations, with OpenTool, and following the process is eased by using AdelfeToolkit.The relevance of this approach has been confronted to the development of experimental applications. Some results from a dynamic timetable solver, ETTO, and from a multi-robot transportation task are presented and analysed.Les environnements des applications d’aujourd’hui sont de plus en plus complexes et dy- namiques, compte tenu du grand nombre et de la diversitĂ© des acteurs en jeu. Les fonctions de tels systĂšmes deviennent alors de plus en plus difficiles Ă  dĂ©finir, et leur spĂ©cification est souvent incomplĂšte, mĂȘme si les composantes restent pleinement identifiables et spĂ©cifiables. Si de nouvelles mĂ©thodes de conception et de modĂ©lisation ne sont pas mises au point, la gestion des projets deviendra de plus en plus contraignante, longue et coĂ»teuse.Nous proposons d’utiliser les systĂšmes multi-agents adaptatifs par auto-organisation coopĂ©rative pour palier ces problĂšmes de conception. La fonctionnalitĂ© de ces systĂšmes est une rĂ©sultante Ă©mergeant des interactions coopĂ©ratives entre agents. Toutefois, le dĂ©veloppement de tels systĂšmes est restĂ© confidentiel et rĂ©duit Ă  un groupe autour de ses crĂ©ateurs directs. Certes de nombreuses applications ont Ă©tĂ© conçues grĂące Ă  ces systĂšmes, mais jamais par des novices, non experts du domaine. Pour rĂ©pondre Ă  ce manque de visibilitĂ© et d’ouverture, le projet ADELFE - pour Atelier de DEveloppement de Logiciels Ă  FonctionnalitĂ© Emergente - propose de dĂ©velopper une mĂ©thode de dĂ©veloppement d’applications repo- sant sur ces principes et dĂ©finie en trois points : un processus, des notations et des outils. Le processus d’ADELFE est basĂ© sur le Rational Unified Process et y ajoute des activitĂ©s spĂ©cifiques Ă  l’ingĂ©nierie orientĂ©e agent. Les notations sont une extension des notations UML et A-UML. Des outils ont Ă©tĂ© dĂ©veloppĂ©s ou Ă©tendus afin de prendre en charge Ă  la fois les notations, grĂące Ă  OpenTool, et le processus, grĂące Ă  un outil d’aide au suivi appelĂ© AdelfeToolkit.La pertinence de cette mĂ©thodologie a Ă©tĂ© mise Ă  l’épreuve au cours de dĂ©veloppements d’applications diverses. Nous prĂ©sentons ici les rĂ©sultats obtenus pour un problĂšme de rĂ©solution dynamique d’emploi du temps, ETTO (pour Emergent Time Tabling Organisation), et pour un problĂšme de transport multi-robot de ressources

    Méthodes orientées agent et multi-agent

    Get PDF
    http://www.emse.fr/~picard/publications/bernon09industrie.pdfNational audienceLes systÚmes multi-agents (SMA) ont montré leur pertinence pour la conception d'applications distribuées (logiquement ou physiquement), complexes et robustes. Le concept d'agent est aujourd'hui plus qu'une technologie efficace, il représente un nouveau paradigme pour le développement de logiciels dans lesquels l'agent est un logiciel autonome qui a un objectif, évolue dans un environnement et interagit avec d'autres agents au moyen de langages et de protocoles (voir le chapitre 1 " Introduction aux systÚmes multi-agents "). Souvent, l'agent est considéré comme un objet " intelligent " ou comme un niveau d'abstraction au-dessus des objets et des composants (voir le chapitre 5 " Composants logiciels et systÚmes multi-agents "). Les méthodes de développement orientées objet - au vu des différences entre les objets et les agents - ne sont pas directement applicables au développement de SMA. Il est alors devenu nécessaire d'étendre ou de développer de nouveaux modÚles, de nouvelles méthodologies et de nouveaux outils adaptés au concept d'agent

    Quelle R&D Mener pour le DĂ©veloppement Des RĂ©seaux D'Ă©nergie De Demain ? Les Propositions de L'ancre en 2015

    Get PDF
    Feuille de route sur les rĂ©seaux Ă©lectriques et stockage Ă©laborĂ©e par le GP10 RĂ©seaux et Stockages de l'Energie de l'ANCRECette feuille de route concerne les rĂ©seaux d’énergie Ă©lectrique, de chaleur et de froid, les rĂ©seaux de gaz (hydrogĂšne, gaz naturel), leurs stockages associĂ©s, ainsi que leurs couplages Ă  venir dans le cadre de la transition Ă©nergĂ©tique et des Ă©volutionsqui l’accompagneront, que ce soit sur les modes de production d’énergie ou sur l’évolution des usages.Le focus est portĂ© sur les rĂ©seaux Ă©lectriques qui seront les premiers impactĂ©s par cette transition Ă©nergĂ©tique. Hormisquelques Ă©lĂ©ments trĂšs spĂ©cifiques aux rĂ©seaux Ă©lectriques (et qui seront notĂ©s dans le texte par une couleur diffĂ©rente)il est Ă  souligner que la quasi-totalitĂ© des considĂ©rations et axes de R&D Ă©voquĂ©s pour les rĂ©seauxĂ©lectriques et le dĂ©veloppement de leur « intelligence » et/ou de leur flexibilitĂ© s’appliquentĂ©galement aux autres rĂ©seaux d’énergie. Par ailleurs, si le groupe programmatique« RĂ©seaux et Stockage » de l’ANCRE (GP10) s’est largement appuyĂ© sur les nombreuses feuilles de route Ă©mises tant au niveau national, dont celles de l’ADEME, qu’europĂ©en, il a Ă©galement souhaitĂ© s’en dĂ©marquer en insistantlargement et en dĂ©taillant les recherches scientifiques et technologiques Ă  mener face aux verrous actuellement identifiĂ©s

    Collective and emergent problem solving based on multi-agent systems : principles and applications

    Get PDF
    A multi-agent system is composed of numerous entities, called agents, interacting in various ways between them and their common environment. This technology is applied in many domains like computer vision, robotics, system simulation or electronic commerce. We consider that problems occuring in signal processing could also be tackled by this technology. We present first the basic tools available for multi-agent systems designers : models, platforms and methodologies. Two projects illustrate our purpose : SCALA in the management of aerospace fighter patrol, and goods routing. We focus then on the adaptation ability of these systems considered as an emergent problem solving question. We detailed in this field the AMAS (Adaptive Multi-Agent System) theory allowing a MAS design where the global fonction is derived from the cooperative self-organisation of its components. An example on flood forecast gives implementation information of this theory.Un systĂšme multi-agent est constituĂ© d’un grand nombre d’entitĂ©s, appelĂ©es agents, en interaction entre elles au sein d’un mĂȘme environnement. Cette technologie aborde de nombreux domaines d’applications comme la vision par ordinateur, la robotique, la simulation de systĂšmes, le commerce Ă©lectronique. Nous considĂ©rons que les questions abordĂ©es en traitement du signal sont trĂšs pertinentes dans un cadre multi-agent. Nous prĂ©sentons d’abord les principaux outils dont disposent les concepteurs de systĂšmes multi-agents Ă  savoir : des modĂšles, des plates-formes et des mĂ©thodes de dĂ©veloppement. Puis, le projet SCALA de simulation de rĂ©solution de problĂšmes par des patrouilles aĂ©riennes et un projet de simulation de systĂšme de transports illustrent la rĂ©solution de problĂšmes Ă  l’aide de systĂšmes multi-agents. Ensuite, nous nous intĂ©ressons plus particuliĂšrement aux capacitĂ©s d’adaptation de tels systĂšmes que nous abordons comme une question de rĂ©solution Ă©mergente de problĂšmes. Dans ce cadre nous dĂ©crivons en dĂ©tail la thĂ©orie AMAS (Adaptive Multi-Agent System) qui permet de concevoir des systĂšmes dont la fonction globale Ă©merge Ă  partir d’un processus d’auto-organisation coopĂ©rative de ses parties. Une application en prĂ©vision de crues donne une indication plus prĂ©cise des capacitĂ©s de telles approches

    Auto-organisation de fragments pour la conception de processus de développement

    Get PDF
    Dans le domaine de l'ingĂ©nierie du logiciel, plusieurs mĂ©thodes ont Ă©tĂ© conçues, chacune avec ses avantages et ses inconvĂ©nients. MĂȘme s'il en existe Ă  ce jour de nombreuses, l'expĂ©rience a montrĂ© que ces mĂ©thodes ne sont pas universelles et ne peuvent prĂ©voir toutes les situations possibles. L'Ă©volution actuelle des systĂšmes impose des modifications de plus en plus rapides et frĂ©quentes de leurs mĂ©thodes. Certaines tentatives ont essayĂ© d'unifier des processus de dĂ©veloppement et leurs mĂ©ta-modĂšles mais se sont rĂ©vĂ©lĂ©es infaisables jusqu'Ă  prĂ©sent. Une autre voie explorĂ©e a Ă©tĂ© de profiter de ces nombreuses mĂ©thodes en essayant de combiner leurs caractĂ©ristiques particuliĂšres. Les travaux sur l'ingĂ©nierie des mĂ©thodes situationnelles ont cherchĂ© plus prĂ©cisĂ©ment Ă  permettre la rĂ©utilisation de fragments de dĂ©marches existantes pour en construire de nouvelles mieux adaptĂ©es aux spĂ©cificitĂ©s d'une situation. Cette famille d'approches a l'avantage de prĂ©server les acquis et d'apporter Ă©galement une certaine flexibilitĂ© en fournissant les moyens d'adapter une mĂ©thode aux besoins spĂ©cifiques d'une situation particuliĂšre. C'est dans ce contexte que s'est inscrit mon travail de thĂšse. Ma contribution dans ce domaine vise Ă  apporter des Ă©lĂ©ments de rĂ©ponses pour la conception automatique de processus composĂ© de fragments dont les verrous sont les suivants : (i) comment sĂ©lectionner les fragments ; (ii) comment les composer pour obtenir un processus de mĂ©thode ; (iii) comment Ă©valuer le rĂ©sultat de la composition. Une premiĂšre contribution essentielle de cette thĂšse est axĂ©e sur l'analyse des contraintes et besoins nĂ©cessaires Ă  la composition automatique de fragments Ă  savoir la standardisation de fragments, leur sĂ©lection et assemblage ainsi que rĂŽle de l'utilisateur avant et pendant la composition. Ces travaux m'ont permis de proposer le systĂšme SCoRe (\textit{Self-Combining method fRagments}) qui auto-compose des fragments de mĂ©thodes Ă  l'aide d'un systĂšme multi-agents adaptatif afin de dĂ©terminer un processus adaptĂ© et adaptable Ă  des situations spĂ©cifiques. Son objectif est, d'une part, d'assister au maximum l'Ă©quipe de dĂ©veloppement dans la rĂ©alisation de son projet, et, d'autre part, de s'adapter aux potentielles Ă©volutions pendant l'exĂ©cution du processus composĂ©. Une deuxiĂšme contribution rĂ©side dans la dĂ©finition de critĂšres et mĂ©thodes pour l'Ă©valuation de processus existants ou rĂ©sultants de la production du systĂšme multi-agent adaptatif SCoRe. L'objectif de ses Ă©valuations est de mesurer les caractĂ©ristiques structurelles et les performances des mĂ©thodes Ă©valuĂ©es.Software systems are becoming more and more complex. A common dilemma faced by software engineers in building complex systems is the lack of method adaptability. In the Software Engineering field, several methods have been created with advantages and drawbacks but the experience shows that existing methods are not universal and cannot answer all situations. The system evolution requires method modifications more rapid and frequent. Some researchers tried to unify metamodel. Another way explored was to take advantage of the different methods by combining their characteristics. The situational method engineering (SME) approaches focus on the in-house construction of methods for systems development which are tuned to specific situations of development projects. My work of thesis is included in this context. My main contribution aims at bringing first answers to the automatic process composition. The issues of the creation of tailored processes are the following: (i) selecting appropriate method components from a repository of reusable method components; (ii) tailoring these method components as appropriate; (iii) integrating these tailored method components to form the new situation-specific method. A first main contribution of this thesis aims at studying the ability to design process and adjust the proposed process according to the characteristics of application domain and users profile. I propose an original system called SCoRe (Self-Combined method fRagments) to automatically build a self-adaptive design process where each fragment is encapsulated in an autonomous agent. On one hand, the goal of SCoRe is to assist the designer in the choice of fragment and therefore in the definition of a process most suitable to the current situation. On the other, its goal is to react dynamically to potential modifications. A second contribution resides in the definition of criteria and methods for evaluating existing processes or processes assembled by SCoRe. The aim of these evaluations is to measure structural characteristics and performance of evaluated methods

    Kevoree (Model@Runtime pour le développement continu de systÚmes adaptatifs distribués hétérogÚnes)

    Get PDF
    La complexitĂ© croissante des systĂšmes d'information modernes a motivĂ© l'apparition de nouveaux paradigmes (objets, composants, services, etc), permettant de mieux apprĂ©hender et maĂźtriser la masse critique de leurs fonctionnalitĂ©s. Ces systĂšmes sont construits de façon modulaire et adaptable afin de minimiser les temps d'arrĂȘts dus aux Ă©volutions ou Ă  la maintenance de ceux-ci. Afin de garantir des propriĂ©tĂ©s non fonctionnelles (par ex. maintien du temps de rĂ©ponse malgrĂ© un nombre croissant de requĂȘtes), ces systĂšmes sont Ă©galement amenĂ©s Ă  ĂȘtre distribuĂ©s sur diffĂ©rentes ressources de calcul (grilles). Outre l'apport en puissance de calcul, la distribution peut Ă©galement intervenir pour distribuer une tĂąche sur des nƓuds aux propriĂ©tĂ©s spĂ©cifiques. C'est le cas dans le cas des terminaux mobiles proches des utilisateurs ou encore des objets et capteurs connectĂ©s proches physiquement du contexte de mesure. L'adaptation d'un systĂšme et de ses ressources nĂ©cessite cependant une connaissance de son Ă©tat courant afin d'adapter son architecture et sa topologie aux nouveaux besoins. Un nouvel Ă©tat doit ensuite ĂȘtre propagĂ© Ă  l'ensemble des nƓuds de calcul. Le maintien de la cohĂ©rence et le partage de cet Ă©tat est rendu particuliĂšrement difficile Ă  cause des connexions sporadiques inhĂ©rentes Ă  la distribution, pouvant amener des sous-systĂšmes Ă  diverger. En rĂ©ponse Ă  ces dĂ©fi scientifiques, cette thĂšse propose une abstraction de conception et de dĂ©ploiement pour systĂšmes distribuĂ©s dynamiquement adaptables, grĂące au principe du Model@Runtime. Cette approche propose la construction d'une couche de rĂ©flexion distribuĂ©e qui permet la manipulation abstraite de systĂšmes rĂ©partis sur des nƓuds hĂ©tĂ©rogĂšnes. En outre, cette contribution introduit dans la modĂ©lisation des systĂšmes adaptables la notion de cohĂ©rence variable, permettant ainsi de capturer la divergence des nƓuds de calcul dans leur propre conception. Cette couche de rĂ©flexion, dĂ©sormais cohĂ©rente "Ă  terme", permet d'envisager la construction de systĂšmes adaptatifs hĂ©tĂ©rogĂšnes, regroupant des nƓuds mobiles et embarquĂ©s dont la connectivitĂ© peut ĂȘtre intermittente. Cette contribution a Ă©tĂ© concrĂ©tisĂ©e par un projet nommĂ© ''Kevoree'' dont la validation dĂ©montre l'applicabilitĂ© de l'approche proposĂ©e pour des cas d'usages aussi hĂ©tĂ©rogĂšnes qu'un rĂ©seau de capteurs ou une flotte de terminaux mobiles.The growing complexity of modern IT systems has motivated the development of new paradigms (objects, components, services,...) to better cope with the critical size of their functionalities. Such systems are then built as a modular and dynamically adaptable compositions, allowing them to minimise their down-times while performing evolutions or fixes. In order to ensure non-functional properties (i.e. request latency) such systems are distributed across different computation nodes. Besides the added value in term of computational power (cloud), this distribution can also target nodes with dedicated properties such as mobile nodes and sensors (internet of things), physically close to users for interactions. Adapting a system requires knowledge about its current state in order to adapt its architecture to its evolving needs. A new state must be then disseminated to other nodes to synchronise them. Maintaining its consistency and sharing this state is a difficult task especially in case of sporadic connexions which lead to divergent state between sub-systems. To tackle these scientific problems, this thesis proposes an abstraction to design and deploy distributed adaptive systems following the Model@Runtime paradigm. From this abstraction, the proposed approach allows defining a distributed reflexive layer to manipulate heterogeneous distributed nodes. In particular, this contribution introduces variable consistencies in model definition and divergence in system conception. This reflexive layer, eventually consistent allows the construction of distributed adapted systems even on mobile nodes with intermittent connectivity. This work has been realized in an open source project named Kevoree, and validated on various distributed systems ranging from sensor networks to cloud computing.RENNES1-Bibl. Ă©lectronique (352382106) / SudocSudocFranceF

    Les environnements numĂ©riques d’apprentissage (ENA) : État des lieux et prospective

    Get PDF
    Rapport d’analyse et de synthùs

    Gestion dynamique d'ontologies Ă  partir de textes par systĂšmes multi-agents adaptatifs

    Get PDF
    Une ontologie est une représentation structurée des connaissances d'un domaine sous la forme d'un réseau conceptuel. Les ontologies sont considérées comme un support indispensable à la communication entre agents logiciels, à l'annotation des sites Web et des ressources documentaires dans une optique de recherche sémantique de l'information. Parce que les connaissances d'un domaine sont amenées à évoluer, une ontologie doit elle aussi évoluer pour rester en cohérence avec le domaine qu'elle modélise. Actuellement, la plupart des travaux traitant de l'évolution d'ontologies se préoccupent de la vérification et du maintien de la cohérence de l'ontologie modifiée. Ces travaux n'apportent pas de solutions concrÚtes à l'identification de nouvelles connaissances et à leur intégration dans une ontologie. Les travaux en ingénierie d'ontologies à partir de textes quant à eux traitent ce problÚme d'évolution comme un problÚme de reconstruction d'une nouvelle ontologie. Souvent, le résultat produit est complÚtement différent de l'ontologie à modifier. Par ailleurs, les logiciels d'évolution spécifiques à un domaine particulier rendent impossible leur utilisation dans d'autres domaines. Cette thÚse propose une solution originale basée sur les systÚmes multi-agents adaptatifs (AMAS) pour faire évoluer des ontologies à partir de textes. Chaque terme et concept sont représentés par un agent qui essaie de se situer au bon endroit dans l'organisation qui n'est autre que l'ontologie. Ce travail est concrétisé par un outil nommé DYNAMO. Un besoin d'évolution est déclenché par l'ajout de nouveaux textes dans un corpus de documents. DYNAMO utilise les résultats d'un extracteur de termes et de relations lexicales ainsi qu'un AMAS, nommé DYNAMO MAS, pour proposer une ontologie modifiée à un ontographe. Ce dernier interagit avec DYNAMO MAS via une interface graphique en modifiant l'ontologie proposée (déplacement, ajout, modification de concepts, de termes et/ou de relations), produisant ainsi des contraintes auxquelles l'AMAS doit s'adapter. Cette "coévolution" entre l'AMAS et l'ontographe cesse lorsque l'ontographe juge que l'ontologie modifiée est cohérente avec le nouveau corpus.An ontology is a structured representation of domain knowledge based on a conceptual network. Ontologies are considered as an essential support for the communication between software agents, the annotation of Web sites and textual resources to carry out semantic information retieval. Because domain knowledge can evolve, an ontology must also evolve to remain consistent with the domain that it models. Currently, studies on ontologies evolution are focusing on checking and maintaining the consistency of the evolved ontology. These works do not provide concrete solutions to the identification of new knowledge and its integration into an ontology. Ontology engineering from texts considers evolution as a problem of ontology reconstruction. The result produced by this kind of software is often completely different from the initial ontology. Moreover, it is almost impossible to reuse software designed only for a particular domain. This PhD thesis proposes an original solution based on adaptive multi-agent systems (AMAS) to evolve ontologies from texts. Each term and each concept are agentified and try to find its own right place in the AMAS organization that is the ontology. This work is implemented in a software called DYNAMO. An ontology evolution requirement is triggered by the addition of new texts in a corpus of documents. DYNAMO uses the results of a term extractor and a lexical relation extractor. These results are the input data of an AMAS, called DYNAMO MAS, that evolves an ontology and proposes it to an ontologist. Then, the ontologist interacts with DYNAMO MAS via a graphical interface by modifying the proposed ontology (moving, addition, suppression of concepts, terms and / or relationships). The ontologist's actions are feedback used by the AMAS to adapt the evolved ontology. This "coevolution" process between the AMAS and the ontologist ends when the ontologist judges that the modified ontology is consistent with the new corpus

    Patrons de conception pour l’intégration graduelle de mécanismes d’adaptation dans les interfaces graphiques

    Get PDF
    Les interfaces graphiques de logiciels modernes requièrent de plus en plus de s’adapter à diverses situations et divers utilisateurs, rendant leur développement plus complexe. Peu de guides et de solutions à faible coût d’intégration dans un projet existent et sont trop souvent dépendants d’une technologie ou d’une plateforme donnée. Ce mémoire présente une technique pour l’implémentation graduelle de comportements adaptatifs dans les interfaces graphiques par le biais de patrons de conception. Les patrons de conception sont des solutions formalisées répondant à des problèmes récurrents, dans ce cas-ci de structuration d’un logiciel pour l’ajout de l’adaptation. Ces derniers sont présentés dans un format normalisé et une implémentation de référence a été développée sous forme de librairie baptisée AdaptivePy. Un prototype démonstratif est utilisé pour comparer une approche d’implémentation ad hoc à celle utilisant la librairie et donc les patrons. Les gains observés sont au niveau de la séparation des préoccupations, de la cohésion des méthodes, de la localisation des changements pour l’ajout de l’adaptation et de l’extensibilité. Aussi, ce mémoire présente des métriques visant la vérification de l’organisation des composants d’un logiciel structuré par l’application des patrons de conception. Ces métriques sont des indicateurs de la proportion des situations contextuelles du système que supporte un composant. Les métriques et leur calcul sont présentés dans un format basé sur ce- lui de l’ISO/IEC 25023 et une implémentation de référence a également été développée. Une application typique est évaluée grâce aux métriques et des actions correctives sont présentées pour résoudre les problèmes détectés. L’utilité des métriques pour valider une application développée en utilisant la structure induite par les patrons de conception est ainsi mise en évidence. La méthodologie du projet a suivi un processus itératif pour l’élaboration des patrons de conception et la recherche des métriques pour appuyer leur application dans un contexte pratique. Par l’analyse de la littérature pour identifier les concepts communs de l’adaptation et les éléments de mesure dans le domaine de l’adaptation, des solutions plus générales et adaptées à une grande variété de domaines d’application sont proposées. Parmi les contributions du projet sont trois nouveaux patrons de conceptions : Moniteur, Proxy routeur et Composant adaptatif. Aussi, deux métriques spécifiques ont été formalisées : la couverture modélisée de l’espace d’adaptation ainsi que la couverture effective de l’espace d’adaptation. En plus, deux métriques générales supplémentaires sont proposées : la profondeur de l’arbre de substitution et la stabilité de l’adaptation
    • 

    corecore