Spelling suggestions: "subject:"asystèmes autoadaptatifs"" "subject:"asystèmes autoadaptatif""
1 |
Integrating predictive analysis in self-adaptive pervasive systems / Intégration de l’analyse prédictive dans des systèmes auto-adaptatifsPaez Anaya, Ivan Dario 22 September 2015 (has links)
Au cours des dernières années, il y a un intérêt croissant pour les systèmes logiciels capables de faire face à la dynamique des environnements en constante évolution. Actuellement, les systèmes auto-adaptatifs sont nécessaires pour l’adaptation dynamique à des situations nouvelles en maximisant performances et disponibilité. Les systèmes ubiquitaires et pervasifs fonctionnent dans des environnements complexes et hétérogènes et utilisent des dispositifs à ressources limitées où des événements peuvent compromettre la qualité du système. En conséquence, il est souhaitable de s’appuyer sur des mécanismes d’adaptation du système en fonction des événements se produisant dans le contexte d’exécution. En particulier, la communauté du génie logiciel pour les systèmes auto-adaptatif (Software Engineering for Self-Adaptive Systems - SEAMS) s’efforce d’atteindre un ensemble de propriétés d’autogestion dans les systèmes informatiques. Ces propriétés d’autogestion comprennent les propriétés dites self-configuring, self-healing, self-optimizing et self-protecting. Afin de parvenir à l’autogestion, le système logiciel met en œuvre un mécanisme de boucle de commande autonome nommé boucle MAPE-K [78]. La boucle MAPE-K est le paradigme de référence pour concevoir un logiciel auto-adaptatif dans le contexte de l’informatique autonome. Cet modèle se compose de capteurs et d’effecteurs ainsi que quatre activités clés : Monitor, Analyze, Plan et Execute, complétées d’une base de connaissance appelée Knowledge, qui permet le passage des informations entre les autres activités [78]. L’étude de la littérature récente sur le sujet [109, 71] montre que l’adaptation dynamique est généralement effectuée de manière réactive, et que dans ce cas les systèmes logiciels ne sont pas en mesure d’anticiper des situations problématiques récurrentes. Dans certaines situations, cela pourrait conduire à des surcoûts inutiles ou des indisponibilités temporaires de ressources du système. En revanche, une approche proactive n’est pas simplement agir en réponse à des événements de l’environnement, mais a un comportement déterminé par un but en prenant par anticipation des initiatives pour améliorer la performance du système ou la qualité de service. / In this thesis we proposed a proactive self-adaptation by integrating predictive analysis into two phases of the software process. At design time, we propose a predictive modeling process, which includes the activities: define goals, collect data, select model structure, prepare data, build candidate predictive models, training, testing and cross-validation of the candidate models and selection of the ''best'' models based on a measure of model goodness. At runtime, we consume the predictions from the selected predictive models using the running system actual data. Depending on the input data and the time allowed for learning algorithms, we argue that the software system can foresee future possible input variables of the system and adapt proactively in order to accomplish middle and long term goals and requirements.
|
2 |
Modeling and verification of functional and non functional requirements of ambient, self adaptative systems / Modélisation et vérification des exigences fonctionnelles et non fonctionnelles des systèmes ambiants auto-adaptatifsAhmad, Manzoor 07 October 2013 (has links)
Le contexte de ce travail de recherche se situe dans le domaine du génie logiciel, et vise plus spécifiquement les systèmes auto-adaptatifs (Self Adaptive Systems, SAS). Le travail de recherche vise les tous premiers stades du cycle de vie du développement logiciel : la phase de spécification des exigences (Requirements Engineering). Nous nous concentrons sur la définition et la modélisation des exigences (Elicitation) ainsi que sur leur vérification. La contribution globale de cette thèse est de proposer une approche intégrée pour la modélisation et la vérification des exigences des SAS à l'aide de techniques d'ingénierie des modèles (Model Driven Engineering, MDE). Nous prenons les exigences en entrée de notre processus et les divisons en exigences fonctionnelles et non fonctionnelles. Ensuite, nous appliquons un processus pour identifier les exigences qui sont adaptables et celles qui sont invariantes. Les progrès récents dans les techniques basées sur les buts en Ingénierie des Exigences nous ont poussé à intégrer ces techniques dans notre approche. En (Goal Oriented Requirements Engineering, GORE), les (Non Functional Requirements, NFR) sont exprimées sous la forme de buts, ce qui est beaucoup plus riche et complet dans la définition des relations entre les exigences. Ici, les exigences invariantes sont capturées par le concept de buts fonctionnels et les exigences adaptables sont capturées par le concept des buts non fonctionnels. Nous avons identifié quelques problèmes dans les méthodes classiques de modélisation des exigences et la vérification des propriétés. Ces approches ne tiennent pas compte des caractéristiques d'adaptabilité associées avec les systèmes auto-adaptatifs. Afin de valider notre approche, nous avons modélisé les exigences de deux études de cas et vérifié les exigences d'une étude de cas. / The overall contribution of this thesis is to propose an integrated approach for modeling and verifying the requirements of Self Adaptive Systems using Model Driven Engineering techniques. Model Driven Engineering is primarily concerned with reducing the gap between problem and software implementation domains through the use of technologies that support systematic transformation of problem level abstractions to software implementations. By using these techniques, we have bridged this gap through the use of models that describe complex systems at multiple levels of abstraction and through automated support for transforming and analyzing these models. We take requirements as input and divide it into Functional and Non Functional Requirements. We then use a process to identify those requirements that are adaptable and those that cannot be changed. We then introduce the concepts of Goal Oriented Requirements Engineering for modeling the requirements of Self Adaptive Systems, where Non Functional Requirements are expressed in the form of goals which is much more rich and complete in defining relations between requirements. We have identified some problems in the conventional methods of requirements modeling and properties verification using existing techniques, which do not take into account the adaptability features associated with Self Adaptive Systems. Our proposed approach takes into account these adaptable requirements and we provide various tools and processes that we developed for the requirements modeling and verification of Self Adaptive Systems. We validate our proposed approach by applying it on two different case studies in the domain of Self Adaptive Systems.
|
3 |
Robusta : Une approche pour la construction d'applications dynamiquesRudametkin, Walter 21 February 2013 (has links) (PDF)
Les domaines de recherche actuels, tels que l'informatique ubiquitaire et l'informatique en nuage (cloud computing), considèrent que ces environnements d'exécution sont en changement continue. Les applications dynamiques ; où les composants peuvent être ajoutés, supprimés pendant l'exécution, permettent a un logiciel de s'adapter et de s'ajuster à l'évolution des environnements, et de tenir compte de l'évolution du logiciel. Malheureusement, les applications dynamiques soulèvent des questions de conception et de développement qui n'ont pas encore été pleinement explorées. <br> Dans cette thèse, nous montrons que le dynamisme est une préoccupation transversale qui rompt avec un grand nombre d'hypothèses que les développeurs d'applications classiques sont autorisés à prendre. Le dynamisme affecte profondément la conception et développement de logiciels. S'il n'est pas manipulé correctement, le dynamisme peut " silencieusement " corrompre l'application. De plus, l'écriture d'applications dynamiques est complexe et sujette à erreur. Et compte tenu du niveau de complexité et de l'impact du dynamisme sur le processus du développement, le logiciel ne peut pas devenir dynamique sans (de large) modification et le dynamisme ne peut pas être totalement transparent (bien que beaucoup de celui-ci peut souvent être externalisées ou automatisées). <br> Ce travail a pour but d'offrir à l'architecte logiciel le contrôle sur le niveau, la nature et la granularité du dynamisme qui est nécessaire dans les applications dynamiques. Cela permet aux architectes et aux développeurs de choisir les zones de l'application où les efforts de programmation des composants dynamiques seront investis, en évitant le coût et la complexité de rendre tous les composants dynamiques. L'idée est de permettre aux architectes de déterminer l'équilibre entre les efforts à fournir et le niveau de dynamisme requis pour les besoins de l'application.
|
4 |
Formalisation et évaluation de stratégies d’élasticité multi-couches dans le Cloud / Formalization and evaluation of cross-layer elasticity strategies in the CloudKhebbeb, Khaled 29 June 2019 (has links)
L'élasticité est une propriété qui permet aux systèmes Cloud de s'auto-adapter à leur charge de travail en provisionnant et en libérant des ressources informatiques, de manière autonomique, lorsque la demande augmente et diminue. En raison de la nature imprévisible de la charge de travail et des nombreux facteurs déterminant l'élasticité, fournir des plans d'action précis pour gérer l'élasticité d'un système cloud, tout en respectant des politiques de haut niveau (performances, cout, etc.) est une tâche particulièrement difficile.Les travaux de cette thèse visent à proposer, en utilisant le formalisme des bigraphes comme modèle formel, une spécification et une implémentation des systèmes Cloud Computing élastiques sur deux aspects : structurel et comportemental.Du point de vue structurel, le but est de définir et de modéliser une structure correcte des systèmes Cloud du côté " backend ". Cette partie est supportée par les capacités de spécification fournies par le formalisme des Bigraphes, à savoir : le principe de "sorting" et de règles de construction permettant de définir les desiderata du concepteur. Concernant l'aspect comportemental, il s'agit de modéliser, valider et implémenter des stratégies génériques de mise à l'échelle automatique en vue de décrire les différents mécanismes d'auto-adaptation élastiques des systèmes cloud (mise à l'échelle horizontale, verticale, migration, etc.), en multi-couches (i.e., aux niveaux service et infrastructure). Ces tâches sont prises en charge par les aspects dynamiques propres aux Systèmes Réactifs Bigraphiques (BRS) notamment par le biais des règles de réaction.Les stratégies d'élasticité introduites visent à guider le déclenchement conditionnel des différentes règles de réaction définies, afin de décrire les comportements d'auto-adaptation des systèmes Cloud au niveau service et infrastructure. L'encodage de ces spécifications et leurs implémentations sont définis en logique de réécriture via le langage Maude. Leur bon fonctionnement est vérifié formellement à travers une technique de model-checking supportée par la logique temporelle linéaire LTL.Afin de valider ces contributions d'un point de vue quantitatif, nous proposons une approche à base de file d'attente pour analyser, évaluer et discuter les stratégies d'élasticité d'un système Cloud à travers différents scénarios simulés. Dans nos travaux, nous explorons la définition d'une "bonne" stratégie en prenant en compte une étude de cas qui repose sur la nature changeante de la charge de travail. Nous proposons une manière originale de composer plusieurs stratégies d'élasticité à plusieurs niveaux afin de garantir différentes politiques de haut-niveau. / Elasticity property allows Cloud systems to adapt to their incoming workload by provisioning and de-provisioning computing resources in an autonomic manner, as the demand rises and drops. Due to the unpredictable nature of the workload and the numerous factors that impact elasticity, providing accurate action plans to insure a Cloud system's elasticity while preserving high level policies (performance, costs, etc.) is a particularly challenging task. This thesis aims at providing a thorough specification and implementation of Cloud systems, by relying on bigraphs as a formal model, over two aspects: structural and behavioral.Structurally, the goal is to define a correct modeling of Cloud systems' "back-end" structure. This part is supported by the specification capabilities of Bigraph formalism. Specifically, via "sorting" mechanisms and construction rules that allow defining the designer's desiderata. As for the behavioral part, it consists of model, implement and validate generic elasticity strategies in order to describe Cloud systems' auto-adaptive behaviors (i.e., horizontal and vertical scaling, migration, etc.) in a cross-layer manner (i.e., at service and infrastructure levels). These tasks are supported by the dynamic aspects of Bigraphical Reactive Systems (BRS) formalism (through reaction rules).The introduced elasticity strategies aim at guiding the conditional triggering of the defined reaction rules, to describe Cloud systems' auto-scaling behaviors in a cross-layered manner. The encoding of these specifications and their implementation are defined in Rewrite Logic via Maude language. Their correctness is formally verified through a model-checking technique supported by the linear temporal logic LTL.In order to quantitatively validate these contributions, we propose a queuing-based approach in order to evaluate, analyze and discuss elasticity strategies in Cloud systems through different simulated execution scenarios. In this work, we explore the definition of a “good” strategy through a case study which considers the changing nature of the input workload. We propose an original way de compose different cross-layer elasticity strategies to guarantee different high-level policies.
|
5 |
Vers un système de vision auto-adaptatif à base de systèmes multi-agentsMahdjoub, Jason 15 December 2011 (has links) (PDF)
Il existe une multitude de traitements d'images dans la littérature, chacun étant adapté à un ensemble plus ou moins grand de cadres d'application. La généralisation ou la mise en collaboration de ces traitements pour un système plus complet et plus robuste est un problème mal posé. Les traitements d'images sont fondamentalement trop différents les uns par rapport aux autres pour être mis en commun de façon naturelle. De plus, ces derniers sont trop rigides pour pouvoir s'adapter d'eux-mêmes lorsqu'un problème non prévu à l'avance par le concepteur apparaît. Or la vision est un phénomène autoadaptatif, qui sait traiter en temps réel des situations singulières, en y proposant des traitements particuliers et adaptés. Elle est aussi un traitement complexe des informations, tant ces dernières ne peuvent être réduites à des représentations réductionnistes et simplifiantes sans être mutilées. Dans cette thèse, un système de vision est entrepris comme un tout où chaque partie est adaptée à l'autre, mais aussi où chaque partie ne peut s'envisager sans l'autre dans les tensions les plus extrêmes générées par la complexité et l'intrication des informations. Puisque chaque parcelle d'information joue un rôle local dans la vision, tout en étant dirigée par un objectif global peu assimilable à son niveau, nous envisageons la vision comme un système où chaque agent délibère selon une interférence produite par le potentiel décisionnel de chacun de ses voisins. Cette délibération est entreprise comme le résultat produit par l'interférence d'une superposition de solutions. De cette manière, il émerge du système à base d'agents une décision commune qui dirige les actions locales faites par chaque agent ou chaque partie du système. En commençant par décrire les principales méthodes de segmentation ainsi que les descripteurs de formes, puis en introduisant les systèmes multi-agents dans le domaine de l'image, nous discutons d'une telle approche où la vision est envisagée comme un système multi-agent apte à gérer la complexité inhérente de l'information visuelle tant en représentation qu'en dynamisme systémique. Nous ancrons dans ces perspectives deux modèles multi-agents. Le premier modèle traite de la segmentation adaptative d'images sans calibration manuelle par des seuils. Le deuxième modèle traite de la représentation de formes quelconques à travers la recherche de coefficients d'ondelettes pertinents. Ces deux modèles remplissent des critères classiques liés au traitement d'images, et à la reconnaissance de formes, tout en étant des cas d'études à développer pour la recherche d'un système de vision auto-adaptatif tel que nous le décrivons.
|
Page generated in 0.0553 seconds