Agentes

O sistema baseia-se na utilização de agentes de software que permitem um processamento distribuído da informação, por oposição aos sistemas clássicos de vigilância que concentram num computador de elevada capacidade (disco, memória e processamento) todas as funções críticas do sistema de vigilância e, ao mesmo tempo introduzem um ponto singular de falha que cria um nível de risco muito elevado. Na falha deste componente, todas as funções do sistema cessam imediatamente.

No caso do DVA, a utilização de agentes de software, com capacidade de raciocínio e processamento distribuídas permite: 
  • uma maior tolerância a falhas: a perda de um dos elementos só suspende parte do processamento. Agentes de monitorização detetam a falha e em caso de ser possível passar a funcionalidade para outro agente recuperam a funcionalidade (e.g. o agente de processamento da câmara avariou, então pode ser lançado outro agente com o mesmo algorítmo que irá processar a informação gerada pela câmara);
  • a utilização de equipamentos de baixo custo: o DVA permite utilizar agentes de software em plataformas tão distintas como computadores, telemóveis ou plataformas Raspberry Pi;
  • possibilidade de alterar a capacidade do sistema por junção de novas plataformas, fornecendo assim uma solução escalável, e de custo e dimensões facilmente ajustáveis às necessidades específicas de cada espaço.
O DVA possui vários tipos de agentes interoperáveis que possibilitam o processamento distribuído, a tolerância a falhas e a capacidade de “plug-and-play”:
  • Sensor: dados vindos diretamente do sensor físico;
  • Processador: processamento dos dados dos sensores para obter parâmetros;
  • Inferência: raciocínio sobre os parâmetros gerados no processador para produzir eventos e despoletar ações;
  • Ação: sempre que uma regra deteta um evento existe um conjunto de ações a executar em sequência. Dependendo do estado desse evento este agente controla o desenrolar dessa ação;
  • Mobile: agente de interface móvel que executa num telemóvel e que pode ser recetor de mensagens e instruções geradas pelos agentes ação e que pode criar eventos;
  • Interface: aplicação web para monitorização e interação com sistema por operadores;
  • Monitor: agente que monitoriza o estado do sistema, identificando falhas e ativando agentes alternativos para essas funções quando existam. As falhas são reportadas para que possam ser tratadas convenientemente;
  • Backup: sistema de registo de dados (dados de sensores - numéricos, imagens), estados do sistema, log de ações, etc.