92 research outputs found
A deep recurrent Q network towards self-adapting distributed microservice architecture
One desired aspect of microservice architecture is the ability to self-adapt its own architecture and behavior in response to changes in the operational environment. To achieve the desired high levels of self-adaptability, this research implements distributed microservice architecture model running a swarm cluster, as informed by the Monitor, Analyze, Plan, and Execute over a shared Knowledge (MAPE-K) model. The proposed architecture employs multiadaptation agents supported by a centralized controller, which can observe the environment and execute a suitable adaptation action. The adaptation planning is managed by a deep recurrent Q-learning network (DRQN). It is argued that such integration between DRQN and Markov decision process (MDP) agents in a MAPE-K model offers distributed microservice architecture with self-adaptability and high levels of availability and scalability. Integrating DRQN into the adaptation process improves the effectiveness of the adaptation and reduces any adaptation risks, including resource overprovisioning and thrashing. The performance of DRQN is evaluated against deep Q-learning and policy gradient algorithms, including (1) a deep Q-learning network (DQN), (2) a dueling DQN (DDQN), (3) a policy gradient neural network, and (4) deep deterministic policy gradient. The DRQN implementation in this paper manages to outperform the aforementioned algorithms in terms of total reward, less adaptation time, lower error rates, plus faster convergence and training time. We strongly believe that DRQN is more suitable for driving the adaptation in distributed services-oriented architecture and offers better performance than other dynamic decision-making algorithms
A Deep Recurrent Q Network Towards Self-adapting Distributed Microservices Architecture (in press)
One desired aspect of microservices architecture is the ability to self-adapt its own architecture and behaviour in response to changes in the operational environment. To achieve the desired high levels of self-adaptability, this research implements the distributed microservices architectures model, as informed by the MAPE-K model. The proposed architecture employs a multi adaptation agents supported by a centralised controller, that can observe the environment and execute a suitable adaptation action. The adaptation planning is managed by a deep recurrent Q-network (DRQN). It is argued that such integration between DRQN and MDP agents in a MAPE-K model offers distributed microservice architecture with self-adaptability and high levels of availability and scalability. Integrating DRQN into the adaptation process improves the effectiveness of the adaptation and reduces any adaptation risks, including resources over-provisioning and thrashing. The performance of DRQN is evaluated against deep Q-learning and policy gradient algorithms including: i) deep q-network (DQN), ii) dulling deep Q-network (DDQN), iii) a policy gradient neural network (PGNN), and iv) deep deterministic policy gradient (DDPG). The DRQN implementation in this paper manages to outperform the above mentioned algorithms in terms of total reward, less adaptation time, lower error rates, plus faster convergence and training times. We strongly believe that DRQN is more suitable for driving the adaptation in distributed services-oriented architecture and offers better performance than other dynamic decision-making algorithms
Group decision support systems for current times: Overcoming the challenges of dispersed group decision-making
We are living a change of paradigm regarding decision-making. On the one hand, there is a growing need to make decisions in group at both professional and personal levels, on the other hand, it is increasingly difficult for decision-makers to meet at the same place and at the same time. The Web-based Group Decision Support Systems intend to overcome this limitation, allowing decision-makers to contribute to the decision process anytime and anywhere. However, they have been defined inadequately which has been compromising its success. This work discusses the current Group Decision Support Systems limitations in terms of challenges and possible impediments for their acceptance by the organizations and propose a conceptual definition of a Web-based Group Decision Support System that intends to overcome the existing limitations and help them to affirm as a reliable and useful tool. In addition, some crucial topics are addressed, such as communication and perception, that are essential and sometimes forgotten in the support of dispersed decision-makers. We concluded that there are still some limitations, mostly in terms of models and applications, that prevent the design of higher quality systems.This work was supported by the GrouPlanner Project (POCI-01-0145-FEDER-29178) and by National
Funds through the FCT – Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science
and Technology) within the Projects UIDB/00319/2020 and UIDB/00760/2020
A framework for goal-oriented discovery of resources in the RESTful architecture
One of the challenges facing the current web is the efficient use of all the available information. The Web 2.0 phenomenon has favored the creation of contents by average users, and thus the amount of information that can be found for diverse topics has grown exponentially in the last years. Initiatives such as linked data are helping to build the Semantic Web, in which a set of standards are proposed for the exchange of data among heterogeneous systems. However, these standards are sometimes not used, and there are still plenty of websites that require naive techniques to discover their contents and services. This paper proposes an integrated framework for content and service discovery and extraction. The framework is divided into several layers where the discovery of contents and services is made in a representational stateless transfer system such as the web. It employs several web mining techniques as well as feature-oriented modeling for the discovery of cross-cutting features in web resources. The framework is used in a scenario of electronic newspapers. An intelligent agent crawls the web for related news, and uses services and visits links automatically according to its goal. This scenario illustrates how the discovery is made at different levels and how the use of semantics helps implement an agent that performs high-level tasks
Distributed Load Testing by Modeling and Simulating User Behavior
Modern human-machine systems such as microservices rely upon agile engineering practices which require changes to be tested and released more frequently than classically engineered systems. A critical step in the testing of such systems is the generation of realistic workloads or load testing. Generated workload emulates the expected behaviors of users and machines within a system under test in order to find potentially unknown failure states. Typical testing tools rely on static testing artifacts to generate realistic workload conditions. Such artifacts can be cumbersome and costly to maintain; however, even model-based alternatives can prevent adaptation to changes in a system or its usage. Lack of adaptation can prevent the integration of load testing into system quality assurance, leading to an incomplete evaluation of system quality.
The goal of this research is to improve the state of software engineering by addressing open challenges in load testing of human-machine systems with a novel process that a) models and classifies user behavior from streaming and aggregated log data, b) adapts to changes in system and user behavior, and c) generates distributed workload by realistically simulating user behavior. This research contributes a Learning, Online, Distributed Engine for Simulation and Testing based on the Operational Norms of Entities within a system (LODESTONE): a novel process to distributed load testing by modeling and simulating user behavior. We specify LODESTONE within the context of a human-machine system to illustrate distributed adaptation and execution in load testing processes. LODESTONE uses log data to generate and update user behavior models, cluster them into similar behavior profiles, and instantiate distributed workload on software systems. We analyze user behavioral data having differing characteristics to replicate human-machine interactions in a modern microservice environment. We discuss tools, algorithms, software design, and implementation in two different computational environments: client-server and cloud-based microservices. We illustrate the advantages of LODESTONE through a qualitative comparison of key feature parameters and experimentation based on shared data and models. LODESTONE continuously adapts to changes in the system to be tested which allows for the integration of load testing into the quality assurance process for cloud-based microservices
Autonomy and Intelligence in the Computing Continuum: Challenges, Enablers, and Future Directions for Orchestration
Future AI applications require performance, reliability and privacy that the
existing, cloud-dependant system architectures cannot provide. In this article,
we study orchestration in the device-edge-cloud continuum, and focus on AI for
edge, that is, the AI methods used in resource orchestration. We claim that to
support the constantly growing requirements of intelligent applications in the
device-edge-cloud computing continuum, resource orchestration needs to embrace
edge AI and emphasize local autonomy and intelligence. To justify the claim, we
provide a general definition for continuum orchestration, and look at how
current and emerging orchestration paradigms are suitable for the computing
continuum. We describe certain major emerging research themes that may affect
future orchestration, and provide an early vision of an orchestration paradigm
that embraces those research themes. Finally, we survey current key edge AI
methods and look at how they may contribute into fulfilling the vision of
future continuum orchestration.Comment: 50 pages, 8 figures (Revised content in all sections, added figures
and new section
A Customizable Architecture for Application-Centric Management of Context-Aware Applications
[EN] Context-aware applications present common requirements (e.g., heterogeneity, scalability, adaptability, availability) in a variety of domains (e.g., healthcare, natural disaster prevention, smart factories). Besides, they do also present domain specific requirements, among which the application concept itself is included. Therefore, a platform in charge of managing their execution must be generic enough to cover common requirements, but it must also be adaptable enough to consider the domain aspects to meet the demands at application-level. Several approaches in the literature tackle some of these demands, but not all of them, and without considering the applications concept and the customization demands in different domains. This work proposes a generic and customizable management architecture that covers both types of requirements based on multi-agent technology and model-driven development. Multi-agent technology is used to enable the distributed intelligence needed to address many common requirements, whereas model-driven development allows to address domain specific particularities. On top of that, a customization methodology to develop specific platforms from this generic architecture is also presented. This methodology is assessed by means of a case study in the domain of eHealthCare. Finally, the performance of MAS-RECON is compared with the most popular tool for the orchestration of containerized applications.This work was supported in part by the Ministerio de Ciencia, Innovacion y Universidades (MCIU)/Agencia Estatal de Investigacion (AEI)/Fondo Europeo de Desarrollo Regional (FEDER), Union Europea (UE), under Grant RTI2018-096116-B-I00; and in part by the Gobierno Vasco (GV)/Eusko Jaurlaritza (EJ) under Grant IT1324-19
Argumentation dialogues in web-based GDSS: an approach using machine learning techniques
Tese de doutoramento em InformaticsA tomada de decisão está presente no dia a dia de qualquer pessoa, mesmo que muitas vezes ela
não tenha consciência disso. As decisões podem estar relacionadas com problemas quotidianos, ou
podem estar relacionadas com questões mais complexas, como é o caso das questões organizacionais.
Normalmente, no contexto organizacional, as decisões são tomadas em grupo.
Os Sistemas de Apoio à Decisão em Grupo têm sido estudados ao longo das últimas décadas com o
objetivo de melhorar o apoio prestado aos decisores nas mais diversas situações e/ou problemas a resolver.
Existem duas abordagens principais à implementação de Sistemas de Apoio à Decisão em Grupo:
a abordagem clássica, baseada na agregação matemática das preferências dos diferentes elementos do
grupo e as abordagens baseadas na negociação automática (e.g. Teoria dos Jogos, Argumentação, entre
outras).
Os atuais Sistemas de Apoio à Decisão em Grupo baseados em argumentação podem gerar uma
enorme quantidade de dados. O objetivo deste trabalho de investigação é estudar e desenvolver modelos
utilizando técnicas de aprendizagem automática para extrair conhecimento dos diálogos argumentativos
realizados pelos decisores, mais concretamente, pretende-se criar modelos para analisar, classificar e
processar esses dados, potencializando a geração de novo conhecimento que será utilizado tanto por
agentes inteligentes, como por decisiores reais. Promovendo desta forma a obtenção de consenso entre
os membros do grupo. Com base no estudo da literatura e nos desafios em aberto neste domínio,
formulou-se a seguinte hipótese de investigação - É possível usar técnicas de aprendizagem automática
para apoiar diálogos argumentativos em Sistemas de Apoio à Decisão em Grupo baseados na web.
No âmbito dos trabalhos desenvolvidos, foram aplicados algoritmos de classificação supervisionados
a um conjunto de dados contendo argumentos extraídos de debates online, criando um classificador
de frases argumentativas que pode classificar automaticamente (A favor/Contra) frases argumentativas
trocadas no contexto da tomada de decisão. Foi desenvolvido um modelo de clustering dinâmico para
organizar as conversas com base nos argumentos utilizados. Além disso, foi proposto um Sistema de
Apoio à Decisão em Grupo baseado na web que possibilita apoiar grupos de decisores independentemente
de sua localização geográfica. O sistema permite a criação de problemas multicritério e a configuração
das preferências, intenções e interesses de cada decisor. Este sistema de apoio à decisão baseado na
web inclui os dashboards de relatórios inteligentes que são gerados através dos resultados dos trabalhos
alcançados pelos modelos anteriores já referidos. A concretização de cada um dos objetivos permitiu
validar as questões de investigação identificadas e assim responder positivamente à hipótese definida.Decision-making is present in anyone’s daily life, even if they are often unaware of it. Decisions can be
related to everyday problems, or they can be related to more complex issues, such as organizational
issues. Normally, in the organizational context, decisions are made in groups.
Group Decision Support Systems have been studied over the past decades with the aim of improving
the support provided to decision-makers in the most diverse situations and/or problems to be solved.
There are two main approaches to implementing Group Decision Support Systems: the classical approach,
based on the mathematical aggregation of the preferences of the different elements of the group, and the
approaches based on automatic negotiation (e.g. Game Theory, Argumentation, among others).
Current argumentation-based Group Decision Support Systems can generate an enormous amount
of data. The objective of this research work is to study and develop models using automatic learning techniques
to extract knowledge from argumentative dialogues carried out by decision-makers, more specifically,
it is intended to create models to analyze, classify and process these data, enhancing the generation
of new knowledge that will be used both by intelligent agents and by real decision-makers. Promoting in
this way the achievement of consensus among the members of the group. Based on the literature study
and the open challenges in this domain, the following research hypothesis was formulated - It is possible
to use machine learning techniques to support argumentative dialogues in web-based Group Decision
Support Systems.
As part of the work developed, supervised classification algorithms were applied to a data set containing
arguments extracted from online debates, creating an argumentative sentence classifier that can
automatically classify (For/Against) argumentative sentences exchanged in the context of decision-making.
A dynamic clustering model was developed to organize conversations based on the arguments used. In
addition, a web-based Group Decision Support System was proposed that makes it possible to support
groups of decision-makers regardless of their geographic location. The system allows the creation of multicriteria
problems and the configuration of preferences, intentions, and interests of each decision-maker.
This web-based decision support system includes dashboards of intelligent reports that are generated
through the results of the work achieved by the previous models already mentioned. The achievement of
each objective allowed validation of the identified research questions and thus responded positively to the
defined hypothesis.I also thank to Fundação para a Ciência e a Tecnologia, for the Ph.D. grant funding with the reference: SFRH/BD/137150/2018
Micro-intelligence for the IoT: logic-based models and technologies
Computing is moving towards pervasive, ubiquitous environments in which devices, software agents and services are all expected to seamlessly integrate and cooperate in support of human objectives.
An important next step for pervasive computing is the integration of intelligent agents that employ knowledge and reasoning to understand the local context and share this information in support of intelligent applications and interfaces. Such scenarios, characterised by "computation everywhere around us", require on the one hand software components with intelligent behaviour in terms of objectives and context, and on the other their integration so as to produce social intelligence.
Logic Programming (LP) has been recognised as a natural paradigm for addressing the needs of distributed intelligence. Yet, the development of novel architectures, in particular in the context Internet of Things (IoT), and the emergence of new domains and potential applications, are creating new research opportunities where LP could be exploited, when suitably coupled with agent technologies and methods so that it can fully develop its potential in the new context. In particular, the LP and its extensions can act as micro-intelligence sources for the IoT world, both at the individual and the social level, provided that they are reconsidered in a renewed architectural vision. Such micro-intelligence sources could deal with the local knowledge of the devices taking into account the domain specificity of each environment.
The goal of this thesis is to re-contextualise LP and its extensions in these new domains as a source of micro-intelligence for the IoT world, envisioning a large number of small computational units distributed and situated in the environment, thus promoting the local exploitation of symbolic languages with inference capabilities. The topic is explored in depth and the effectiveness of novel LP models and architectures -and of the corresponding technology- expressing the concept of micro-intelligence is tested
- …