Aprimorando a Especificação de Propriedade de Sistemas Ciber-Físicos utilizando Seleção Negativa
Sistemas Cyber-físicos, Especificação de Propriedades, Seleção Negativa, Diagnóstico de Falhas, Verificação
Os sistemas ciberfísicos são uma realidade definitiva na nossa vida quotidiana, especial- mente nos últimos anos. No entanto, a complexidade inerente a estes domínios suscita alguns desafios como por exemplo acontecimentos imprevistos, dificuldades em represen- tar os processos cibernéticos ou físicos, e o conhecimento incompleto dos contextos do ambiente. Tudo isso pode tornar os CPS pouco fiáveis em tempo de execução, causando efeitos desastrosos. Procurar inspiração em processos de outros campos é uma atividade muito comum na Informática. A natureza, especialmente a biologia, há muito que serve como uma fonte frutuosa de metodologias como as abordagens de inteligência artificial. O Algoritmo de Selecção Negativa, por exemplo, é uma técnica de base imunológica com múltiplas aplicações bem sucedidas em CPS, principalmente no campo do diagnóstico de falhas para a identificação de comportamentos anômalos. A explicabilidade do algoritmo pode trazer benefícios expressivos para a concepção e verificação de CPS, ajudando a compreender os padrões de violação de propriedade, e assim melhorar a especificação do sistema. Neste trabalho, é proposta uma metodologia que visa aumentar a fiabilidade de CPS. Isto é feito através de um diagnóstico sistemático das violações das propriedades do sis- tema baseado em dados gerados por um protótipo, realizado nas fases iniciais de desen- volvimento. Um algoritmo de inspiração imunológica chamado Seleção Negativa (NSA) serve como método de redundância analítica para isolar e identificar a causa da viola- ção de propriedade no sistema. É possível que, através do arrazoamento sobre as razões pelas quais as violações de propriedade acontecem, a especificação do sistema e a pró- pria propriedade possam ser refinadas, mecanismos tolerantes a falhas possam ser criados permitindo, assim, o desenvolvimento de aplicações mais seguras e melhores.