Automated management of remedial behaviour - Faccin, João Guilherme (2020)
Atualmente, diversos sistemas de software são construídos como conjuntos de agentes que interagem entre si e estão situados em um ambiente. Por realizarem uma gama de tarefas críticas e complexas, é esperado que estes sistemas sejam capazes de resistir e se recuperar de situações que possam comprometer sua operação e a qualidade dos seus serviços. D2R2 + DR é uma estratégia existente para fornecer esse comportamento remediativo à sistemas de software. Ela especifica a execução de operações como a detecção de problemas, sua remediação, o diagnóstico de suas causas, e a recuperação do sistema a um estado normal de operação. Dada a sua natureza abstrata, instanciações desta estratégia não podem ser reutilizadas em diferentes domínios de aplicação. Mesmo que existam abordagens que forneçam soluções concretas para algumas dessas operações, elas apresentam limitações como falta de autonomia e adaptabilidade. Nesta tese, propomos um framework que visa fornecer resiliência a sistemas multiagentes por meio do gerenciamento automatizado das operações de remediação, diagnóstico e recuperação em face de eventos adversos. Esse framework dissocia o comportamento resiliente do código dependente de domínio, promovendo assim o reuso de software entre aplicações distintas, e compreende três técnicas. A primeira automatiza o gerenciamento de ações remediativas e o diagnóstico e solução das causas de problemas. A segunda especifica um protocolo de interação e papéis que descrevem como agentes podem coordenar suas ações e compartilhar informações para diagnosticar causas de problemas. Por fim, a terceira formaliza uma abordagem que permite que agentes desfaçam os efeitos de ações executadas sem a necessidade de uma declaração explícita de quais são essas ações e como elas devem ser revertidas. Essas técnicas são implementadas como uma extensão de uma plataforma de desenvolvimento de agentes, a qual serve como base para a condução de estudos empíricos com o objetivo de avaliar diferentes aspectos do framework proposto. Os resultados mostram que o framework reutilizável e as técnicas subjacentes são capazes de fornecer a agentes e sistemas multiagentes as habilidades necessárias para realizar as operações especificadas pela estratégia D2R2 + DR em diferentes domínios. A autonomia e adaptabilidade fornecidas pela nossa proposta também são demonstradas.