Spelling suggestions: "subject:"[een] SELF-ADAPTIVE SYSTEMS"" "subject:"[enn] SELF-ADAPTIVE SYSTEMS""
1 |
Challenges with Providing Reliability Assurance for Self-Adaptive Cyber-Physical SystemsRiaz, Sana, Kabir, Sohag, Campean, Felician, Mokryani, Geev, Dao, Cuong, Angarita-Marquez, Jorge L., Al-Ja'afreh, Mohammad A.A. 03 February 2023 (has links)
No / Self-adaptive systems are evolving systems that can
adjust their behaviour to accommodate dynamic requirements
or to better serve the goal. These systems can vary in their
architecture, operation, or adaptive strategies based on the
application. Moreover, the evaluation can happen in different
ways depending on system architecture and its requirements.
Self-adaptive systems can be prone to situations like adaptation
faults, inconsistencies in context or low performance on tasks due
to their dynamism and complexity. That is why it is important to
have reliability assurance of the system to monitor such situations
which can compromise the system functionality. In this paper, we
provide a brief background on different types of self-adaptive
systems and various ways a system can evolve. We discuss the
different mechanisms that have been applied in the last two
decades for reliability evaluation of such systems and identify
challenges and limitations as research opportunities related to
the self-adaptive system’s reliability evaluation. / This research was undertaken as a part of the “Model-based Reliability Evaluation for Autonomous Systems with Evolving Architectures” project funded by the University of Bradford under the SURE Grant scheme.
|
2 |
On the Feasibility of Integrating Data Mining Algorithms into Self Adaptive Systems for Context Awareness and Requirements EvolutionRook, Angela 20 August 2014 (has links)
Context is important to today's mobile and ubiquitous systems as operational requirements are only valid under certain context conditions. Detecting context and adapting automatically to that context is a key feature of many of these systems. However, when the operational context associated with a particular requirement changes drastically in a way that designers could not have anticipated, many systems are unable to effectively adapt their operating parameters to continue meeting user needs. Automatically detecting and implementing this system context evolution is highly desirable because it allows for increased uncertainty to be built into the system at design time in order to efficiently and effectively cope with these kinds of drastic changes. This thesis is an empirical investigation and discussion towards integrating data mining algorithms into self-adaptive systems to analyze and de fine new context relevant to specific system requirements when current system context parameters are no longer sufficient. / Graduate / 0984 / arook@uvic.ca
|
3 |
Runtime modelling for user-centric smart cyber-physical-human applicationsCastañeda Bueno, Lorena 04 December 2017 (has links)
Cyber-Physical-Human Systems (CPHSs) are the integration, mostly focused on the interactions, of cyber, physical and humans elements that work together towards the achievement of the objectives of the system. Users continuously rely on CPHSs to fulfil personal goals, thus becoming active, relevant, and necessary components of the designed system.
The gap between humans and technology is getting smaller. Users are increasingly demanding smarter and personalized applications, capable of understanding and acting upon changing situations. However, humans are highly dynamic, their decisions might not always be predictable, and they expose themselves to unforeseeable situations that might impact their interactions with their physical and cyber elements.
The problem addressed in this dissertation is the support of CPHSs' user-centric requirements at runtime. Therefore, this dissertation focuses on the investigation of runtime models and infrastructures for: (1) understanding users, their personal goals and changing situations, (2) causally connecting the cyber, physical and human components involved in the achievement of users' personal goals, and (3) supporting runtime adaptation to respond to relevant changes in the users' situations.
Situation-awareness and runtime adaptation pose significant challenges for the engineering of user-centric CPHSs. There are three challenges associated with situation-awareness: first, the complexity and dynamism of users' changing situations require specifications that explicitly connect users with personal goals and relevant context. Second, the achievement of personal goals entails comprehensive representations of user's tasks and sequences and measurable outcomes. Third, situation-awareness implies the analysis of context towards an understanding of users' changing conditions. Therefore, there is a need for representations and reasoning techniques to infer emerging situations. There are three challenges associated with runtime adaptation: first, the dynamic nature of CPHSs and users require runtime models to make explicit the components of CPHSs and their interactions. Second, the definition of architectural and functional requirements of CPHSs to support runtime user-centric awareness and adaptation. Finally, the design and implementation of runtime adaptation techniques to support dynamic changes in the specification of the CPHSs' runtime models.
The four contributions of this dissertation add to the body of knowledge for the development of smart applications centred around the achievement of users' personal goals. First, we propose a definition and architectural design for the implementation of user-centric smart cyber-physical-human applications (UCSAs). Our design proposes a context-aware self-adaptive system supported by a runtime infrastructure to manage CRUD operations. Second, we propose two models at runtime (MARTs): (1) our Galapagos Metamodel, which defines the concepts of a UCSA; and (2) our Galapagos Model, which supports the specification of evolving tasking goals, personal interactions, and the relevant contexts. Third, we propose our operational framework, which defines model equivalences between human-readable and machine-readable, available runtime operations and semantics, to manage runtime operations on MARTs. Finally, we propose our processing infrastructure for models at runtime (PRIMOR), which is a component-based system responsible for providing reading access from software components to the MARTs, executing model-related runtime operations, and managing the propagation of changes among interconnected MARTs and their realities.
To evaluate our contributions, we conducted a literature review of models and performed a qualitative analysis to demonstrate the novelty of our approach by comparing it with related approaches. We demonstrated that our models satisfy MARTs characteristics, therefore making them proper models at runtime. Furthermore, we performed an experimental analysis based on our case study on online grocery shopping for the elderly. We focused our analysis on the runtime operations specified in the framework as supported by the corresponding MART (accuracy and scalability), and our infrastructure to manage runtime operation and growing MARTs (performance). / Graduate
|
4 |
A smart autoflight control system infrastructureHeinemann, Stephan 02 May 2022 (has links)
Connected aviation, the Internet of Flying Things and related emerging technologies, such as the System-Wide Information Management infrastructure of the FAA NextGen program, present numerous opportunities for the aviation sector. The ubiquity of aeronautical, flight, weather, aerodrome, and maintenance data accelerates the development of smarter software systems to cope with the ever increasing requirements of the industry sector. The increasing amount, frequency and variety of real-time data available to modern air transport and tactical systems, and their crews, creates exciting new challenges and research opportunities. We present an architectural approach toward the vision of increasingly self-separating and self-governed flight operations within the bigger picture of an evolving set of future Autonomous Flight Rules. The challenges in this field of research are manifold and include autonomic airborne trajectory optimization, data sharing, fusion and information derivation, the incorporation of and communication with rational actors—both human and machine—via a connected aviation infrastructure, to facilitate smarter decision making and support while generating economical, environmental and tactical advantages. We developed a concept and prototype implementation of our Smart Autoflight Control System. The concept and implemented system follow the design principle of an Autonomic Element, consisting of an Autonomic Manager and its Managed Element, acting within an Autonomic Context. The Managed Element concept embraces an infrastructure featuring suitable models of manageable environments, airborne agents, planners, applicable operational cost and risk policies, and connections to the System-Wide Information Management cloud as well as to relevant rational actors, such as Air Traffic Control, Command and Control, Operations or Dispatch. The Autonomic Manager concept incorporates the extraction, that is, short-term sensing, of features from operational scenarios and the categorization of these scenarios according to their level of criticality and associated flight phase. The Autonomic Manager component, furthermore, continuously tunes, that is, actuates, manageable items of its Managed Element, such as environments and planners, and triggers competitions to assess their performance under the various extracted and dynamically changing features of their Autonomic Context. The performance reputations of the tuned manageable items are collected in a knowledge base and may serve as a long-term sensor. Both the managed items of the Managed Element as well the managing items of the Autonomic Manager are extendable and may realize very different paradigms, including deterministic, non-deterministic, heuristically guided, and biologically inspired approaches. We assessed the extensibility and maintainability of our Smart Autoflight Control System infrastructure by including manageable environments and planners of the Classical Grid Search, Probabilistic Roadmaps, and Rapidly-Exploring Random Trees families into its core component. Furthermore, we evaluated the viability of a simple heuristic and a more sophisticated Sequential Model-Based Algorithm Configuration Autonomic Manager to adaptively select and tune manageable planners of the supported families based on the extracted features from very simple to highly challenging scenarios. We were able to show that a self-adaptive approach, that heuristically tunes and selects the best performing planner following a performance competition, produces suitable flight trajectories within reasonable deliberation times. Additionally, we discovered options for improving our heuristic Autonomic Manager through a series of evaluation runs of the Sequential Model-Based Algorithm Configuration Autonomic Manager. Our contributions answer how the manageable items, that is, environments and planners, of our Smart Autoflight Control System core component have to be modified in order to embed System-Wide Information Management data that feature both spatial and temporal aspects. We show how operational cost and risk policies help to assess environments differently and plan suitable flight trajectories accordingly. We identify and implement the necessary extensions and capabilities that have to be supported by manageable and managing items, respectively, to enable continuous feature extraction, adaptive tuning, performance competitions, and planner selection in dynamic flight scenarios. / Graduate
|
5 |
Towards Emergent Configurations in the Internet of ThingsAlkhabbas, Fahed January 2018 (has links)
The Internet of Things (IoT) is a fast-spreading technology that enables new types of services in several domains, such as transportation, health, and building automation. To exploit the potential of the IoT effectively, several challenges have to be tackled including the following ones. First, the proposed IoT visions provide a fragmented picture, leading to a lack of consensus about IoT systems and their constituents. A second set of challenges concerns the environment of IoT systems that is often dynamic and uncertain, e.g. devices can appear and be discovered at runtime as well as become suddenly unavailable. Additionally, the in- volvement of human users complicates the scene as people’s activities are not always predictable . The majority of existing approaches to en- gineer IoT systems rely on predefined processes to achieve users’ goals. Consequently, such systems have significant shortcomings in coping with dynamic and uncertain environments. To piece together the fragmented picture of IoT systems, we sys- tematically identified their characteristics by analyzing and synthesizing existing taxonomies. To address the challenges related to the IoT envir- onment and the involvement of human users, we used the concept of Emergent Configurations (ECs) to engineer IoT systems. An EC consists of a dynamic set of devices that cooperate temporarily to achieve a user goal. To realize this vision, we proposed novel approaches that enable users to achieve their goals by supporting the automated formation, en- actment, and self-adaptation of IoT systems. / <p>Note: The papers are not included in the fulltext online.</p><p>Paper I in dissertation as manuscript.</p>
|
6 |
Understanding and automating application-level caching / Entendendo e automatizando cache a nível de aplicaçãoMertz, Jhonny Marcos Acordi January 2017 (has links)
O custo de serviços na Internet tem encorajado o uso de cache a nível de aplicação para suprir as demandas dos usuários e melhorar a escalabilidade e disponibilidade de aplicações. Cache a nível de aplicação, onde desenvolvedores manualmente controlam o conteúdo cacheado, tem sido adotada quando soluções tradicionais de cache não são capazes de atender aos requisitos de desempenho desejados. Apesar de sua crescente popularidade, este tipo de cache é tipicamente endereçado de maneira ad-hoc, uma vez que depende de detalhes específicos da aplicação para ser desenvolvida. Dessa forma, tal cache consiste em uma tarefa que requer tempo e esforço, além de ser altamente suscetível a erros. Esta dissertação avança o trabalho relacionado a cache a nível de aplicação provendo uma compreensão de seu estado de prática e automatizando a identificação de conteúdo cacheável, fornecendo assim suporte substancial aos desenvolvedores para o projeto, implementação e manutenção de soluções de caching. Mais especificamente, este trabalho apresenta três contribuições: a estruturação de conhecimento sobre caching derivado de um estudo qualitativo, um levantamento do estado da arte em abordagens de cache estáticas e adaptativas, e uma técnica que automatiza a difícil tarefa de identificar oportunidades de cache O estudo qualitativo, que envolveu a investigação de dez aplicações web (código aberto e comercial) com características diferentes, permitiu-nos determinar o estado de prática de cache a nível de aplicação, juntamente com orientações práticas aos desenvolvedores na forma de padrões e diretrizes. Com base nesses padrões e diretrizes derivados, também propomos uma abordagem para automatizar a identificação de métodos cacheáveis, que é geralmente realizado manualmente por desenvolvedores. Tal abordagem foi implementada como um framework, que pode ser integrado em aplicações web para identificar automaticamente oportunidades de cache em tempo de execução, com base na monitoração da execução do sistema e gerenciamento adaptativo das decisões de cache. Nós avaliamos a abordagem empiricamente com três aplicações web de código aberto, e os resultados indicam que a abordagem é capaz de identificar oportunidades de cache adequadas, melhorando o desempenho das aplicações em até 12,16%. / Latency and cost of Internet-based services are encouraging the use of application-level caching to continue satisfying users’ demands, and improve the scalability and availability of origin servers. Application-level caching, in which developers manually control cached content, has been adopted when traditional forms of caching are insufficient to meet such requirements. Despite its popularity, this level of caching is typically addressed in an adhoc way, given that it depends on specific details of the application. Furthermore, it forces application developers to reason about a crosscutting concern, which is unrelated to the application business logic. As a result, application-level caching is a time-consuming and error-prone task, becoming a common source of bugs. This dissertation advances work on application-level caching by providing an understanding of its state-of-practice and automating the decision regarding cacheable content, thus providing developers with substantial support to design, implement and maintain application-level caching solutions. More specifically, we provide three key contributions: structured knowledge derived from a qualitative study, a survey of the state-of-the-art on static and adaptive caching approaches, and a technique and framework that automate the challenging task of identifying cache opportunities The qualitative study, which involved the investigation of ten web applications (open-source and commercial) with different characteristics, allowed us to determine the state-of-practice of application-level caching, along with practical guidance to developers as patterns and guidelines to be followed. Based on such patterns and guidelines derived, we also propose an approach to automate the identification of cacheable methods, which is often manually done and is not supported by existing approaches to implement application-level caching. We implemented a caching framework that can be seamlessly integrated into web applications to automatically identify and cache opportunities at runtime, by monitoring system execution and adaptively managing caching decisions. We evaluated our approach empirically with three open-source web applications, and results indicate that we can identify adequate caching opportunities by improving application throughput up to 12.16%. Furthermore, our approach can prevent code tangling and raise the abstraction level of caching.
|
7 |
Modeling and verification of functional and non functional requirements of ambient, self adaptative systemsAhmad, Manzoor 07 October 2013 (has links) (PDF)
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.
|
8 |
Understanding and automating application-level caching / Entendendo e automatizando cache a nível de aplicaçãoMertz, Jhonny Marcos Acordi January 2017 (has links)
O custo de serviços na Internet tem encorajado o uso de cache a nível de aplicação para suprir as demandas dos usuários e melhorar a escalabilidade e disponibilidade de aplicações. Cache a nível de aplicação, onde desenvolvedores manualmente controlam o conteúdo cacheado, tem sido adotada quando soluções tradicionais de cache não são capazes de atender aos requisitos de desempenho desejados. Apesar de sua crescente popularidade, este tipo de cache é tipicamente endereçado de maneira ad-hoc, uma vez que depende de detalhes específicos da aplicação para ser desenvolvida. Dessa forma, tal cache consiste em uma tarefa que requer tempo e esforço, além de ser altamente suscetível a erros. Esta dissertação avança o trabalho relacionado a cache a nível de aplicação provendo uma compreensão de seu estado de prática e automatizando a identificação de conteúdo cacheável, fornecendo assim suporte substancial aos desenvolvedores para o projeto, implementação e manutenção de soluções de caching. Mais especificamente, este trabalho apresenta três contribuições: a estruturação de conhecimento sobre caching derivado de um estudo qualitativo, um levantamento do estado da arte em abordagens de cache estáticas e adaptativas, e uma técnica que automatiza a difícil tarefa de identificar oportunidades de cache O estudo qualitativo, que envolveu a investigação de dez aplicações web (código aberto e comercial) com características diferentes, permitiu-nos determinar o estado de prática de cache a nível de aplicação, juntamente com orientações práticas aos desenvolvedores na forma de padrões e diretrizes. Com base nesses padrões e diretrizes derivados, também propomos uma abordagem para automatizar a identificação de métodos cacheáveis, que é geralmente realizado manualmente por desenvolvedores. Tal abordagem foi implementada como um framework, que pode ser integrado em aplicações web para identificar automaticamente oportunidades de cache em tempo de execução, com base na monitoração da execução do sistema e gerenciamento adaptativo das decisões de cache. Nós avaliamos a abordagem empiricamente com três aplicações web de código aberto, e os resultados indicam que a abordagem é capaz de identificar oportunidades de cache adequadas, melhorando o desempenho das aplicações em até 12,16%. / Latency and cost of Internet-based services are encouraging the use of application-level caching to continue satisfying users’ demands, and improve the scalability and availability of origin servers. Application-level caching, in which developers manually control cached content, has been adopted when traditional forms of caching are insufficient to meet such requirements. Despite its popularity, this level of caching is typically addressed in an adhoc way, given that it depends on specific details of the application. Furthermore, it forces application developers to reason about a crosscutting concern, which is unrelated to the application business logic. As a result, application-level caching is a time-consuming and error-prone task, becoming a common source of bugs. This dissertation advances work on application-level caching by providing an understanding of its state-of-practice and automating the decision regarding cacheable content, thus providing developers with substantial support to design, implement and maintain application-level caching solutions. More specifically, we provide three key contributions: structured knowledge derived from a qualitative study, a survey of the state-of-the-art on static and adaptive caching approaches, and a technique and framework that automate the challenging task of identifying cache opportunities The qualitative study, which involved the investigation of ten web applications (open-source and commercial) with different characteristics, allowed us to determine the state-of-practice of application-level caching, along with practical guidance to developers as patterns and guidelines to be followed. Based on such patterns and guidelines derived, we also propose an approach to automate the identification of cacheable methods, which is often manually done and is not supported by existing approaches to implement application-level caching. We implemented a caching framework that can be seamlessly integrated into web applications to automatically identify and cache opportunities at runtime, by monitoring system execution and adaptively managing caching decisions. We evaluated our approach empirically with three open-source web applications, and results indicate that we can identify adequate caching opportunities by improving application throughput up to 12.16%. Furthermore, our approach can prevent code tangling and raise the abstraction level of caching.
|
9 |
Understanding and automating application-level caching / Entendendo e automatizando cache a nível de aplicaçãoMertz, Jhonny Marcos Acordi January 2017 (has links)
O custo de serviços na Internet tem encorajado o uso de cache a nível de aplicação para suprir as demandas dos usuários e melhorar a escalabilidade e disponibilidade de aplicações. Cache a nível de aplicação, onde desenvolvedores manualmente controlam o conteúdo cacheado, tem sido adotada quando soluções tradicionais de cache não são capazes de atender aos requisitos de desempenho desejados. Apesar de sua crescente popularidade, este tipo de cache é tipicamente endereçado de maneira ad-hoc, uma vez que depende de detalhes específicos da aplicação para ser desenvolvida. Dessa forma, tal cache consiste em uma tarefa que requer tempo e esforço, além de ser altamente suscetível a erros. Esta dissertação avança o trabalho relacionado a cache a nível de aplicação provendo uma compreensão de seu estado de prática e automatizando a identificação de conteúdo cacheável, fornecendo assim suporte substancial aos desenvolvedores para o projeto, implementação e manutenção de soluções de caching. Mais especificamente, este trabalho apresenta três contribuições: a estruturação de conhecimento sobre caching derivado de um estudo qualitativo, um levantamento do estado da arte em abordagens de cache estáticas e adaptativas, e uma técnica que automatiza a difícil tarefa de identificar oportunidades de cache O estudo qualitativo, que envolveu a investigação de dez aplicações web (código aberto e comercial) com características diferentes, permitiu-nos determinar o estado de prática de cache a nível de aplicação, juntamente com orientações práticas aos desenvolvedores na forma de padrões e diretrizes. Com base nesses padrões e diretrizes derivados, também propomos uma abordagem para automatizar a identificação de métodos cacheáveis, que é geralmente realizado manualmente por desenvolvedores. Tal abordagem foi implementada como um framework, que pode ser integrado em aplicações web para identificar automaticamente oportunidades de cache em tempo de execução, com base na monitoração da execução do sistema e gerenciamento adaptativo das decisões de cache. Nós avaliamos a abordagem empiricamente com três aplicações web de código aberto, e os resultados indicam que a abordagem é capaz de identificar oportunidades de cache adequadas, melhorando o desempenho das aplicações em até 12,16%. / Latency and cost of Internet-based services are encouraging the use of application-level caching to continue satisfying users’ demands, and improve the scalability and availability of origin servers. Application-level caching, in which developers manually control cached content, has been adopted when traditional forms of caching are insufficient to meet such requirements. Despite its popularity, this level of caching is typically addressed in an adhoc way, given that it depends on specific details of the application. Furthermore, it forces application developers to reason about a crosscutting concern, which is unrelated to the application business logic. As a result, application-level caching is a time-consuming and error-prone task, becoming a common source of bugs. This dissertation advances work on application-level caching by providing an understanding of its state-of-practice and automating the decision regarding cacheable content, thus providing developers with substantial support to design, implement and maintain application-level caching solutions. More specifically, we provide three key contributions: structured knowledge derived from a qualitative study, a survey of the state-of-the-art on static and adaptive caching approaches, and a technique and framework that automate the challenging task of identifying cache opportunities The qualitative study, which involved the investigation of ten web applications (open-source and commercial) with different characteristics, allowed us to determine the state-of-practice of application-level caching, along with practical guidance to developers as patterns and guidelines to be followed. Based on such patterns and guidelines derived, we also propose an approach to automate the identification of cacheable methods, which is often manually done and is not supported by existing approaches to implement application-level caching. We implemented a caching framework that can be seamlessly integrated into web applications to automatically identify and cache opportunities at runtime, by monitoring system execution and adaptively managing caching decisions. We evaluated our approach empirically with three open-source web applications, and results indicate that we can identify adequate caching opportunities by improving application throughput up to 12.16%. Furthermore, our approach can prevent code tangling and raise the abstraction level of caching.
|
10 |
Adaptive Routing for Challenging NetworksIrigon de Irigon, José 28 October 2021 (has links)
Disruption-Tolerant Networks (DTN) allow communication between devices that lack end-to-end connectivity. Even though the mobility of devices in a DTN is frequently dynamic, most proposed DTN protocols are not adaptive. This work presents an ongoing research project that aims to find out to which extent context-based adaptation may be useful to improve DTN performance. We are convinced that, in highly predictive networks, metadata exchange is a crucial factor in supporting routing decisions and recognize context changes. This paper summarizes the efforts we have made so far and presents the next steps we plan to take towards the design and implementation of an adaptive framework.
|
Page generated in 0.0416 seconds