3 Trabalhos Relacionados

Documentos relacionados
Introdução Introdução

2

6 Conclusão e Trabalhos Futuros

5 Cenários de Uso A Casa Inteligente Lavar Louça

Modelagem de Sistemas Web. Modelagem de BD

Análise e projeto de sistemas

4 Framework DRP-MAS Visão Geral

Análise e Projeto Orientado a Objetos

Uso de Lógica Fuzzy no Auxílio ao Acompanhamento Automático de Alunos utilizando um Ambiente de Aprendizagem

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

TESTES DE SOFTWARE Unidade 1 Importância do Teste de Software. Luiz Leão

Sistemas Multi-agentes

Engenharia de Requisitos

SBC - Sistemas Baseados em Conhecimento

Técnicas de recuperação de informação: filtragem, agrupamento

Inteligência Artificial Agentes Inteligentes

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage. Introdução à Programação

Os pontos mais fortes do MAS-School são: A técnica orientada a objetivos para a fase de requisitos utiliza o processo recursivo de decomposição de um

LUIS OCTAVIO ADMINISTRAÇÃO PÚBLICA

Introdução à Qualidade de Software

ASSISTENTE DIGITAL PARA BUSCA INTELIGENTE DE INFORMAÇÕES

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Fundamentos de Inteligência Artificial [5COP099]

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

Engenharia de Software

CONTPATRI Plano de Garantia de Qualidade. Versão 1.1

Aula 7 - Análise de Requisitos: descrição de casos de uso. Análise de Sistemas Prof. Filipe Arantes Fernandes

TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE

ANEXO II REQUISITOS, ATRIBUIÇÕES E REMUNERAÇÕES DOS CARGOS CARGO/GRUPO ATRIBUIÇÕES REQUISITOS REMUNERA

Guia do Processo de Teste Metodologia Celepar

FORMAÇÃO DE AUDITORES INTERNOS DA QUALIDADE ISO 19011:2012 PROF. NELSON CANABARRO

Programação I Apresentação

Tópicos Especiais em Informática Fatec Indaiatuba 13/07/2017

Verificação e Validação

18º Congresso de Iniciação Científica TRATAMENTO DE REGRAS DA ASSOCIAÇÃO MULTIRELACIONAL NA FERRAMENTA DE MINERAÇÃO DE DADOS KIRA

Avaliação de Alunos em Ambientes de Ensino à Distância

Extração de Conhecimento & Mineração de Dados

Introdução à Computação Parte 2

Programação Orientada a Objetos Introdução a POO Modelo de Objetos Técnico em Informática. Prof. Marcos André Pisching, M.Sc.

1. A principal razão de dividir o processo de teste em tarefas distintas é:

RUP/PSDS. Introdução e Comparação

Generalização das técnicas de Piloto Automático para VANTs. Aluno: Raphael da Silva Teixeira (ED 14205) Professor: Cel R/R Cícero Garcez

Inteligência Artificial

Andrew Diniz da Costa. Sistema Híbrido de Diagnóstico e Recomendação para Sistemas Multi-Agentes. Dissertação de Mestrado

1.1. Objetivos do Estudo

Alguns Desafios e Oportunidades de Pesquisa em Computação Ubíqua e Pervasiva

As principais contribuições do presente trabalho são as seguintes:

Análise de Sistemas AULA 05 BCC Noturno - EMA908915A

AMOSTRAGEM EM AUDITORIA

3 Arquitetura MVC baseada em modelos

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001

Introdução 12 que inuenciam a execução do sistema. As informações necessárias para o diagnóstico de tais problemas podem ser obtidas através da instru

KURRUPAKO: UM AGENTE ANIMADO SÓCIO-AFETIVO PARA AMBIENTES DE APRENDIZAGEM

Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia

Engenharia de Software

Requisitos de Software

6.CONCLUSÕES CONCLUSÕES

Análise de Requisitos

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:

Visões Arquiteturais. Visões Arquiteturais

Nem todos os problemas algorítmicos que podem ser resolvidos em princípio podem ser resolvidos na prática: os recursos computacionais requeridos

Visão Geral do RUP.

Engenharia de Software II

Engenharia Software. Ení Berbert Camilo Contaiffer

Processos de Validação e Verificação do MPS-Br

4 Caso de Uso no Ambiente Oracle

Autor(es) HARLEI MIGUEL DE ARRUDA LEITE. Orientador(es) MARINA TERESA PIRES VIEIRA. Apoio Financeiro PIBIC/CNPQ. 1. Introdução

Lógica de Programação

2 Reconhecimento Facial

Plano de pesquisa de mestrado em ciência da computação. Márcio G. Morais

Levantamento, Análise e Gestão Requisitos. Aula 05

AULA 02 Qualidade em TI

TCC EM SISTEMAS DA INFORMAÇÃO. Aula 9- Modelando um Sistema com a UML parte 2

Sistemas de Informação e Decisão. Douglas Farias Cordeiro

EXEHDA-SS: Uma Contribuição a Sensibilidade ao Contexto na Medicina Ubíqua

Sistemas Especialistas (SE)

GERENCIAMENTO DA QUALIDADE DO PROJETO

- 1ª Lista de Exercícios -

Engenharia de Software

Gerencial Industrial ISO 9000

Engenharia de Software

Princípios da Engenharia de Software aula 03

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

QUESTIONÁRIO PARA PROVA DE GESTÃO DE PROJETOS

Linguagens de Programação I. Introdução a Algoritmos e Lógica de Programação

1.1. Declaração do Problema e Limitações dos Trabalhos Relacionados Um Framework Conceitual para SMAs

Documento Especificação de Requisitos da Ferramenta de construção de Modelos de Casos de Uso.

Gerência de Projetos de Software. Prof. Dr. João Dovicchi INE / CTC / UFSC.

Mineração de Dados - Contextualização. Fonte: Prof. Fabrício J. Barth -

Engenharia de Software.

S14 - Engenharia de Requisitos cap.5

Conformidade de PMV com NTCIP 1203

A importância dos resultados da CPA para a gestão Prof. Rogério Massaro Suriani

2 Conceitos Importantes

Engenharia de Software. UML Unified Modeling Language

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE

Inteligência Artificial (Lista 1) Prof. Alex F. V. Machado

Transcrição:

Trabalhos Relacionados 31 3 Trabalhos Relacionados Nesta seção, são descritos alguns trabalhos relacionados, a relação entre eles e o trabalho proposto, além da relação com os desafios mencionados na subseção 2.6. Em particular, consideramos os trabalhos de [Li et al., 2004], [Horling et al., 2000], [Roos et al., 2002] e [Pop et al., 2006]. 3.1. Aplicação de Sistemas Multi-Agente no Controle e no Diagnóstico de Falhas Em [Li et al., 2004], um sistema descentralizado para a realização de diagnósticos e monitoramente é proposto. A idéia geral ilustrada na Figura 6, considera a presença de um monitor (Monitoring Agent) para cada componente ou máquina que é responsável por coletar informações presentes em cada um. A partir do momento que os dados são obtidos e verifica-se a presença de mudanças, essas informações são fornecidas para um conjunto de agentes responsáveis por realizar diagnósticos. Essa comunicação é realizada através de uma camada chamada Object Request Broker. Um dos agentes mais importantes para a geração do diagnóstico é o Diagnosis agent, pois trabalha de forma colaborativa com um conjunto de outros agentes. Caso haja conflitos durante a geração, o CRA agent (core do sistema) é acionado, já que ele procura resolver todos os problemas encontrados durante a análise. O problema dessa abordagem é a violação da privacidade dos agentes, já que para cada agente há um monitor acompanhando suas execuções. Por essa razão, o trabalho proposto nesta dissertação visa realizar diagnósticos sem a necessidade de definir monitores para cada agente presente nas aplicações. Essa abordagem está relacionada com o primeiro desafio mencionado na subseção 2.6, a qual as principais dificuldades em diagnosticar e prover recomendações são apresentadas.

Trabalhos Relacionados 32 Figura 6. Sistema descentralizado para diagnósticos e monitoramento 3.2. Diagnóstico como uma parte Importante da Adaptação de Sistemas Multi-Agentes O trabalho apresentado em [Horling et al., 2000] propõe analisar como um domínio que realiza diagnóstico pode se comportar em sistemas multi-agentes. Inicialmente definiu-se que para realizar um diagnóstico, deve-se descrever qual o correto ou o esperado comportamento que o agente deve ter. Para representar essa idéia, decidiu-se usar uma linguagem de decomposição de objetivos/tarefas chamada de TAEMS [Horling and Lesser, 2007] que permite modelar: (i) os objetivos, (ii) os caminhos dos sub-objetivos disponíveis, (iii) quais métodos podem ser executados para alcançá-los, (iv) além de outras informações para a realização de diagnósticos. Outro ponto abordado é a maneira como são detectadas as possíveis falhas presentes em um sistema. Para detectá-las acredita-se que uma boa alternativa é a comparação do resultado esperado da execução de um agente com o resultado obtido. Caso sejam diferentes, podem ser usadas pressuposições para determinar a severidade do desvio. Assim, essa informação ajudaria a determinar o correto diagnóstico para ser informado mais tarde. Perceba que a maneira de como realizar diagnósticos está relacionada com o segundo e terceiro desafios mencionados na subseção 2.6. Para exemplificar a aplicação da idéia supracitada, o estudo de caso utilizado foi um sistema multi-agente que representa uma casa inteligente. Nesse

Trabalhos Relacionados 33 ambiente há a presença de diversos eletrodomésticos, como, por exemplo, máquina de lavar louça, aquecedor, ar condicionado, etc. Cada um deles é representado por um agente de software, para que possam ser usados em cenários envolvendo uso de recursos, conflitos de objetivos e cooperação entre agentes. Um dos casos citados levava em conta a relação entre uma máquina de lavar louça e um aquecedor. Para que a primeira possa lavar as louças, é utilizada a água quente fornecida por um aquecedor. No entanto, em um determinado instante, uma pessoa decide tomar banho com água aquecida. Devido a isso, o aquecedor pára de produzir água quente para a máquina de lavar louça, e assim trabalha de forma exclusiva para o banho da pessoa. A máquina de lavar pode, por exemplo, continuar seu serviço, sendo que a qualidade do serviço realizada será ruim, ou esperar que o aquecedor lhe fornecer água quente novamente. No caso em que a máquina de lavar decida continuar o serviço, o sistema de diagnóstico recebe informação sobre a qualidade do serviço realizado através de algum sensor interno, ou feedback do usuário, e em seguida determina qual recurso estava ausente, para que depois possa descobrir quem não proveu o recurso adequadamente, no nosso exemplo o aquecedor. Na Figura 7 parte das tarefas executadas pela máquina de lavar louça é representada seguindo o modelo TAEMS. Outro modelo também utilizado pelos autores é o modelo causal, que é um gráfico acíclico direcionado e responsável por organizar um conjunto de nós diagnóstico. Dessa forma, podem ser feitas hipóteses mais precisas de algum diagnóstico, já que em algumas situações torna-se difícil determinar o diagnóstico correto com 100% de certeza. Na Figura 8 é ilustrado um exemplo de um modelo causal, em que o diagnóstico LowerQuality poderia ser considerado um diagnóstico encontrado no exemplo mencionado da máquina de lavar louça. Seguindo a abordagem supracitada, o trabalho proposto nesta dissertação se baseia na idéia que para algum objetivo ser alcançado diversos caminhos (planos) podem ser seguidos. Além disso, cada caminho pode utilizar diferentes informações, como, por exemplo, informação sobre os recursos utilizados. Para ajudar a alcançar o objetivo desejado foi definido um conjunto de dados que permitam definir a relação com esses caminhos, como, por exemplo, serviços que devem ser solicitados durante a execução, quais agentes serão solicitados para prover os serviços, qualidade da execução, etc (sub seção 4.2.2). Visando permitir a definição de diferentes tipos de diagnósticos, o trabalho proposto

Trabalhos Relacionados 34 oferece um maior conjunto de informações do que aqueles oferecidos por [Horling et al., 2000], isto, é, além de informações, como, objetivo que o agente deseja alcançar, recursos utilizados e ações executadas, o trabalho permite que outros dados sobre a execução do agente possam ser informados, como, por exemplo, os serviços solicitados para outros agentes durante a execução, a possibilidade de definir o perfil do agente (sétimo desafio mencionado na subseção 2.6), etc. Além disso, considerando que o responsável por algum objetivo não ser alcançado pode ser outro agente (ex: forneceu alguma informação ruim), o trabalho proposto oferece o uso do conceito reputação (quinto desafio mencionado na sub-seção 2.6). Assim, caso um agente seja o culpado pela falha de uma execução, sua reputação pode ser modificada, para que assim não seja mais usado em uma futura interação. Figura 7 Exemplo TAEMS do agente máquina de lavar louça.

Trabalhos Relacionados 35 Figura 8 Exemplo de um modelo causal do estudo de caso Casa Inteligente. 3.3. Uma Análise de Diagnósticos em Sistemas Multi-Agentes Em [Roos et al., 2002], os autores definem um conjunto de informações genérico para ser utilizado em sistemas que realizam diagnósticos. O conjunto é o seguinte: S = (C, M, Id, Sd, Ctx, Obs) onde C é um conjunto de componentes, M uma especificação de possíveis falhas por componente, Id é um conjunto de identificadores de pontos que conectam componentes, Sd é a descrição do sistema, Ctx é uma especificação de valores de entrada do sistema e que são determinados fora do ambiente do sistema, e finalmente Obs que é um conjunto de valores observados pelo sistema. O trabalho proposto procura seguir a abordagem mencionada, ou seja, definir o conjunto supracitado. Ao contrário do [Roos et al., 2002], que propõe de forma genérica os dados a serem usados em um processo de diagnóstico, o trabalho proposto procura descrever em detalhes quais dados utilizar. Além disso, procuramos especificar quais dados podem ser usados em diferentes domínios que realizam

Trabalhos Relacionados 36 diagnósticos e de que forma outros dados relacionados de forma especifica com um domínio podem ser definidos. Essa abordagem está relacionada com o segundo desafio mencionado na subseção 2.6. Alguns dos dados que podem ser usados em diferentes domínios, já mencionados na sub-seção anterior, são os seguintes: objetivo desejado, ação executada pelo agente, recursos utilizados, etc. 3.4. Arquitetura Multi-Agent para Descobrir Conhecimento Em [Pop et al., 2006] é proposta uma arquitetura baseada em sistemas multi-agentes para representar o complexo processo referente a descoberta de conhecimento a partir de banco de dados (Knowledge Discovery from Databases - KDD) e que segue as seguintes fases: entendimento do negócio, entendimento do dado, preparação do dado, modelagem, avaliação e desenvolvimento. Esse problema deve ser resolvido por uma mineração de dados do usuário para definir qual algoritmo ou método deve ser usado em cada fase, para que assim consiga os melhores resultados a partir de um conjunto de dados. Baseado em estudos empíricos um método pode ter melhor desempenho dependendo de algumas propriedades definidas em um conjunto de dados. Visando auxiliar essa escolha, o sistema proposto oferece agentes responsáveis por recomendar métodos mais apropriados para cada fase. O sistema oferece um agente de execução com diversas capacidades (capabilities), dentre elas a responsabilidade de recomendar os cenários mais apropriados para resolver um problema no KDD. Para realizar tais recomendações o agente se baseia na comparação de um conjunto de dados corrente com dados pertencentes a cenários já existentes em sua base de conhecimento. Em cenários complexos, realizar uma série de comparações para prover recomendações, muitas vezes não é o suficiente. Assim, o desenvolvimento de algoritmos inteligentes pode ser de grande utilidade, como, por exemplo, permitir a inferência de alguma informação que seja útil para o processo de recomendação. Para ajudar a realizar recomendações (quarto desafio mencionado na subseção 2.6.), a abordagem do trabalho proposto considera que antes de um processo de recomendação deve-se executar um processo de diagnóstico (terceiro desafio), pois através dele recomendações podem ser selecionadas.

Trabalhos Relacionados 37 Além disso, o trabalho oferece um módulo com algoritmos inteligentes que podem ser usados tanto no processo de diagnóstico como no de recomendação. Dessa forma, verificações mais complexas e inteligentes podem ser definidas.