agentes inteligentes

50
Agentes Inteligentes Agentes Inteligentes Rosa Candida Pinto Rosa Candida Pinto Metodologias para Metodologias para Sistemas de Software Sistemas de Software Baseados em Agente Baseados em Agente

Upload: adlai

Post on 15-Jan-2016

26 views

Category:

Documents


1 download

DESCRIPTION

Agentes Inteligentes. Metodologias para Sistemas de Software Baseados em Agente. Rosa Candida Pinto. Complexidade do Software. ... muitas partes. ... com muitas interações. Engenharia de Software. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Agentes Inteligentes

Agentes InteligentesAgentes Inteligentes

Rosa Candida PintoRosa Candida Pinto

Metodologias para Metodologias para Sistemas de Software Sistemas de Software Baseados em AgenteBaseados em Agente

Page 2: Agentes Inteligentes

Complexidade do Software

... muitas partes ...

... com muitas interações...

Page 3: Agentes Inteligentes

Engenharia de Software

Seu papel

Fornecer métodos, ferramentas e procedimentos que facilitem a manipulação da complexidade do software.

É uma disciplina que se preocupa com os problemas práticos inerentes ao

desenvolvimento de sistemas de grande porte.

Page 4: Agentes Inteligentes

Ciclo de Vida do Software

Refere-se à progressão dos projetos de software, ao desenvolvimento e manutenção, e eventualmente à sua substituição.

Engenharia de Software

Especificação Projeto Validação Evolução

Page 5: Agentes Inteligentes

Engenharia de Requisitos

Atividades do Processo Estudo de viabilidade

Análise de requisitos

Definição de requisitos

Especificação de requisitos

É o processo de:

Refinamento Verificaçãodas necessidades do cliente

Aquisição

Com o objetivo de obter uma especificação correta e completa dos requisitos.

Page 6: Agentes Inteligentes

Eng. de Software X Eng. de Requisitos

Engenharia de Requisitos

Objetivos do Sistema

Engenharia de Software

Documentos de Requisito

Especificação de Software

Projeto

Pedaços de Código

Metodologia de Análise e Projeto

Metodologia de Análise e Projeto

Page 7: Agentes Inteligentes

Metodologias de Análise e Projeto Responsabilidades

Suportar o processo de elicitação dos requisitos e do sistema

Analisar o ambiente organizacional

Projetar o sistema de informação

Fases e Modelos

Fase de Requisitos Iniciais e Análise

Fase de Projeto

Page 8: Agentes Inteligentes

MAP: Fase de Análise Trata com a especificação do sistema

Modela o domínio da aplicação usando noções abstratas e gera o modelo conceitual - organizacional

Envolve a engenharia de requisito, a modelagem estratégica e a modelagem empresarial

Modelo Conceitual descreve ...

O processo organizacional

As entidades organizacionais

Relacionamentos entre as entidades organizacionais

Page 9: Agentes Inteligentes

Trata como o sistema realizará os requisitos Modela o sistema de informação

Modelo de Projeto fornece ... Informações detalhadas de com o que o sistema parece . . . . . . Sem fornecer instruções de como implementar o projeto

É similar a um plano de arquitetura: descreve a forma exata do produto final sem especificação das técnicas e métodos que devem ser usados para realizar o plano.

MAP: Fase de Projeto

Usando conceitos concretos que descrevem componentes de software diretamente . . .

. . . Gerando o modelo de projeto

Page 10: Agentes Inteligentes

Paradigmas

Orientada a Função : Top-dow [Yord,1992]

Orientada a Dados : Relacional [Cood,1970]

Orientada a Objetos : Booch/Rambough/ Jacobson [Booc, 1999]

Orientada a Agentes : Shalon [Shoh,1993]

Orientada a Requisitos : Tropos [Mylo,2000]

Metodologias de Análise e Projeto

Page 11: Agentes Inteligentes

Agentes do Ponto de vista da ES

É o sistema de computador encapsulado que se encontra situado em algum ambiente e é capaz de ter ações flexíveis e autônomas naquele ambiente a fim de alcançar seus objetivos de projeto [Wool,1995].

Esse é o conceito de agente fraco definido em [Wool,1995](i.e., tem autonomia, habilidade social, reativos e pró-ativos)

MAP Orientada a Agente- MAPOA -

Cobre as fases iniciais - especificação e projeto- do ciclo de vida de uma aplicação baseada em agente.

Page 12: Agentes Inteligentes

Abordagens da 1a. Geração de MAPOA

Expansão de metodologias existentes

MAP Orientada a Agente- MAPOA -

Metodologia Orientada a Objeto

Engenharia do Conhecimento

Page 13: Agentes Inteligentes

MAPOA: Extensão OOVantagens

Há similaridade entre os paradigmas - OO e OA

Linguagens OO são usadas comumente para implementar sistemas baseados em agentes

Popularidade da metodologia OO

As visões de sistemas em metodologias OO são úteis na descrição de agentes. - estática, dinâmica e funcional -

Page 14: Agentes Inteligentes

Comunicam-se por passagem de mensagem

OO: é só uma invocação de método; Sempre executa a ação solicitada.

OA: distingue diferentes tipos de mensagens; Modela as mensagens com ato-de-fala; Usa protocolos complexos para negociar; Pode ou não executar a ação solicitada.

MAPOA: Extensão OOOA X OO

Page 15: Agentes Inteligentes

Estado Mental OA: agentes podem ser caracterizados pelo seu estado mental OO: não define técnicas para modelagem de como o agente executa suas inferências, seus processos de planejamento, etc.

Dimensão Social

OA: agentes são caracterizados pelas suas dimensões sociais OO: não define procedimentos para modelagem desses relacionamentos sociais entre agentes.

MAPOA: Extensão OOOA X OO

Page 16: Agentes Inteligentes

Metodologia Orientada a Agente Baseada em BDI - Beliefs, Desires and Intentions [Kinn,1996]

MAPOA: Extensão OOSoluções Existentes

AUML Agente [Odel,2000]

Metodologia Gaia para Análise e Projeto Orientado a Agente [Wool,2000]

Page 17: Agentes Inteligentes

MAPOA: Extensão ECVantagens

Fornece as técnicas para modelagem do conhecimento do agente.

A definição de conhecimento do agente pode ser considerada como um processo de aquisição de conhecimento

Popularidade Experiência já adquirida nessa metodologia

Page 18: Agentes Inteligentes

MAPOA: Extensão ECVantagens

É possível reusar:

Ferramentas existentes

Bibliotecas de Ontologias desenvolvidas;

Biblioteca de Métodos de Resolução de Problemas

Page 19: Agentes Inteligentes

Aspecto Distribuído

EC: concebem um sistema baseado em conhecimento como algo centralizado. OA: os agentes possuem: Aspectos sociais ou distribuídos; Atitudes refletidas e orientadas a objetivos.

MAPOA: Extensão ECOA X EC

Page 20: Agentes Inteligentes

MAPOA: Extensão ECSoluções Existentes

CoMoMAS: CommonKADS para modelagem MAS

MAS-CommonKADS

Page 21: Agentes Inteligentes

CoMoMAS X MAS-CommoKADS

MAPOA: Extensão ECSoluções Existentes

Construídos sobre técnicas e modelos do CommonKADS

Estendidos para capturar aspectos relevantes de sistemas multiagentes

CoMoMAS: é uma MAP para desenvolvimento de sistemas multiagentes MAS-CommonKADS: é um ambiente para suportar o desenvolvimento de descrições conceituais de sistemas multiagentes

Page 22: Agentes Inteligentes

MAP Orientada a AgenteUm Estudo de Caso

Sistema de Gerenciamento de Tráfego Aéreo

Metodologia: Técnicas de Modelagem de Agentes para Sistemas de Agentes BDI

Page 23: Agentes Inteligentes

MAP Orientada a AgenteUm Estudo de Caso

Metodologia: Técnicas de Modelagem de Agentes para Sistemas de Agentes BDI - MOA/BDI -

Page 24: Agentes Inteligentes

Ponto de Vista Externo

MOA/BDI: Níveis Principais

Consiste da decomposição do sistema em agentes e das definições de suas interações

Ponto de Vista Interno

Executa a modelagem de cada classe do agente BDI

A decomposição é executada usando dois modelos de Agentes / de Interações

A modelagem é executada usando três modelos de Crença / de Objetivo / de Plano

Page 25: Agentes Inteligentes

Modelo de Agente

MOA/BDI: Ponto de Vista ExternoModelos de Execução

Descreve os relacionamentos hierárquicos entre as diferentes classes de agentes

Identifica as instâncias do agente que podem existir no sistema

Modelo de Interação Descreve as responsabilidades, serviços e

interações entre agentes e o sistema externo Inclui a sintaxe e a semântica das mensagens usadas para a comunicação

Page 26: Agentes Inteligentes

1. Identifica os papéis do domínio da aplicação para encontrar os agentes e organiza-los em classes hierárquicas

MOA/BDI: Ponto de Vista ExternoProcesso de Desenvolvimento

Para cada papel: identifica as responsabilidades junto com os serviços fornecidos e usados para cumprir-la

2. Identifica as interações necessárias para cada serviço, o conteúdo de informação e o ato da fala de todas elas

3. Introduz as instâncias dos agentes baseados em considerações de tempo de vida e multiplicidade.

Page 27: Agentes Inteligentes

Modelo de Crença - belief

MOA/BDI: Ponto de Vista InternoModelos de Execução

Descreve:

Consiste em um ou mais estado de crença que pode ser definido e usado para especificar o estado inicial do agente

O conjunto de crenças do agente sobre o ambiente

O estado interno do agente

As ações que o agente pode executar

Page 28: Agentes Inteligentes

Modelo de Objetivo - goal

MOA/BDI: Ponto de Vista InternoModelos de Execução

Descreve os:

Consiste em:

Um conjunto de objetivos que especificam as metas e o domínio de eventos Um ou mais estados de objetivos usados para especificar o estado mental inicial do agente

Objetivos e ...

... Eventos que o agente pode responder e adotar

Page 29: Agentes Inteligentes

Modelo de Plano - plan

MOA/BDI: Ponto de Vista InternoModelos de Execução

Descreve os planos usados para que os agentes alcancem os seus objetivos

Consiste em um conjunto de planos que descrevem:

As propriedades e as estruturas de controle de planos individuais

Page 30: Agentes Inteligentes

1. Analisa os diferentes planos para encontrar os objetivos do agente seguindo os passos:

MOA/BDI: Ponto de Vista InternoProcesso de Desenvolvimento

Para cada objetivo, analisa os diferentes contextos nos quais o objetivo tem que ser encontrado;

Para cada um desses contextos, decompõe os objetivos em atividades representados por subobjetivos e ações;

Para cada objetivo, analisar em que ordem e sobre que condições essas atividades e ações necessitam ser executadas, como falhas devem ser conduzidas e gerar um plano para encontrar o objetivo.

Page 31: Agentes Inteligentes

2. Constrói as crenças do sistema, seguindo os passos:

MOA/BDI: Ponto de Vista InternoProcesso de Desenvolvimento

Analisa os vários contextos e condições que controlam a execução das atividades e das ações;

Analisa os dados de entradas e saídas requeridos por cada sub-objetivo no plano e assegura-se que essa informação seja disponível tanto como crença ou como saída de sub-objetivos anteriores no plano.

Page 32: Agentes Inteligentes

MAP Orientada a AgenteUm Estudo de Caso

Sistema de Gerenciamento de Tráfego Aéreo

Page 33: Agentes Inteligentes

Responsabilidade

Sistema de Gerenciamento de Tráfego AéreoEstrutura do Sistema GTA

Auxiliar o controlador de fluxo de tráfego aéreo a:

Determinar a seqüência de aterrissagem de uma aeronave num aeroporto com múltiplas pistas;

Manter a segurança e outras restrições;

Minimizar atrasos e congestionamentos.

Page 34: Agentes Inteligentes

Agentes

Sistema de Gerenciamento de Tráfego AéreoEstrutura do Sistema GTA

Permanentes: Coordenador Sequenciador

Modelador do tempo - windmodel.

Variáveis Aeronaves onde cada uma delas: 1. Está associada a um vôo particular e 2. Só existe durante o tempo que está sob controle do controlador de fluxo.

Page 35: Agentes Inteligentes

Coordenador

Estrutura do Sistema GTAResponsabilidades dos Agentes Permanentes

Criar e remover os agentes aeronave

Distribuir os planos de vôo iniciais das aeronaves

Sequenciador Determinar o tempo de aterrissagem Interage com os agentes aeronaves e o controlador de vôo para executar essa tarefa.

Modelador do Tempo - windmodel.

Manter um modelo 4-dimensional das condições de clima passada, presente e futura no espaço aéreo controlado

Page 36: Agentes Inteligentes

Consistes de três componentes ativos

Estrutura do Sistema GTAAgentes Variáveis Aeronaves

Preditor

Monitor

Agregados num agente concreto simples

Tempo de vida são comuns

Planejador

Interações close

Page 37: Agentes Inteligentes

Estrutura do Sistema GTAResponsabilidades dos Preditor

Executar vários serviços entre eles há o principal que: Computa o tempo esperado de chegada - TC

Especifica as escalas - waypoints - no plano de vôo incluindo o pondo final de aterrissagem

Entradas para execução do serviço principal Plano de vôo: pode ser modificado durante o vôo

Profile de performance da aeronave, a qual é determinada pelo tipo da aeronave e pelas condições climáticas para determinar os últimos usa o agente windmodel

Page 38: Agentes Inteligentes

A computação do tempo de chegada produz:

Tempos estimados e envelopes de performance os quais ...

... São anteriores e posteriores aqueles que a aeronave pode chegar ao ponto de escala enquanto ... ... Permanece dentro do seu perfil de operação permitido.

Fornece as informações encontradas ao Monitor e o Planejador

Estrutura do Sistema GTAResponsabilidades dos Preditor

Page 39: Agentes Inteligentes

Recebe uma informação tri-dimensional derivada dos dados do radar e da comparação do TC atual com aquele predito.

Se ocorre desvios significativos ele analisa a razão para a ocorrência e notifica o Preditor e o Planejador.

Estrutura do Sistema GTAResponsabilidades dos Monitor

Causas de desvio do vôo:

Não seguir o plano de vôo : detectado pelo radar Não voou na altitude planejada : detectado pelo radar

Não manteve a velocidade planejada : análise global

Informações imprecisas do tempo : análise global

Page 40: Agentes Inteligentes

Análise Global:

Comparar o comportamento de várias aeronaves O Monitor pede ao Windmodel para executar a análise global

Estrutura do Sistema GTAResponsabilidades dos Monitor

Page 41: Agentes Inteligentes

É solicitado pelo Sequenciador para construir um conjunto de planos que permitirão a aeronave aterrizar no horário.

Chamado quando o Sequenciador atribui, ou revisa, a indicação de tempo de pouso da aeronave

Estrutura do Sistema GTAResponsabilidades do Planejador

Plano é :

A Trajetória futura A Velocidade aérea e

O Profile de altitude da aeronave

Page 42: Agentes Inteligentes

O Planejador usa diferentes estratégias, algoritmos e heurísticas para produzir essas planos.

A escolha do melhor plano depende do estágio do vôo.

Estrutura do Sistema GTAResponsabilidades dos Planejador

O Planejador envia o conjunto de planos para o controlador de vôo o qual adota um de sua escolha

O Planejador responde as divergências detectadas pelo Monitor determinando se a aeronave pode ainda alcançar o seu tempo de aterrissagem ou não.

Se sim os planos atuais são modificados como requeridos Se não, o Planejador notifica o Sequenciador o qual computa um novo tempo de aterrissagem e repete o ciclo.

Page 43: Agentes Inteligentes

Aplicando a Técnica de Modelagem ao GTADiagrama de Classes e Instâncias

PlanejadorA

PreditorA

MonitorA

Aeronave Genérica

A

Dados do Tempo

AProfile

APlano de Vôo

ADados Radar

A

CoordenadorS

Modelo TempoS B737 B747 A320

Windmodel CoordenadorB737 B747 A320

Page 44: Agentes Inteligentes

Diagrama de Classes de Crença Predicados Derivados e Funções

Classe Predicado Função

Envelope

Time gen-time {static}Time-list toasTime-list e-toasTime-list l-toasInteger segmentWaypoint nextBoolean deviated = false

on-time (Loen, Time) {eval}Time eta (Wayponit) {eval}

envelope{inverse = flightplan

Flight Plan

Name flight {static}Name profile-name {static}Boolean verifiedInteger priority = 2Altitude cruise-altLoen originWaypoint-list pathTime lta

on-path (Loen) {eval}

gen-time (Envelope, Time)toas (Envelope, Time-list)e-toas (Envelope, Time-list)l-toas (Envelope, Time-list)segment (Envelope, Integer)next (Envelope, Waypoint)deviated(Envelope)

on-time (Envelope, Loen, Time)

envelope (Flightplan, Envelope)flightplan (Envelope, Flightplan)

Time gen-time (Envelope)Time-list toas (Envelope)Time-list e-toas (Envelope)Time-list l-toas (Envelope)Integer segment (Envelope)Waypoint next (Envelope)Boolean devialed (Envelope)

Time eta (Envelop, Wayponit)

Envelope envelope (Flightplan)Flightplan flightplan (Envelop)

flight (Flightplan, Name)profile-name (Flightplan, Name)verified (Flightplan)priority (Flightplan, Integer)cruise-alt (Flightplan,Alttidude)origin (Flightplan, Loen)path (Flightplan, Waypoint-list)lta (Flightplan, Timr)

on-path (Flight, Loen)

Name flight (Flightplan)Name profile-name (Flightplan) Boolean verified (Flightplan)Integer priority(Flightplan)Altitude cruise-alt (Flightplan)Loen origin (Flightplan)Waypoint-list path (Flightplan)

Page 45: Agentes Inteligentes

Aplicando a Técnica de Modelagem ao GTAGráfico de Planos

Plan Name

Plan Graph

activation event [ activatrion condition ] / activation action

Plan Body

event [ condition ] / action

[ condition ] / actionevento/ [ condition ]evento/ action

any [ abort condition ] /abort action

fail / fail action

pass / pass action

Documentatiosn

activy formula

Page 46: Agentes Inteligentes

MSS - Baseadas em Agentes

Metodologias para Sistemas Metodologias para Sistemas de Software Baseados em de Software Baseados em

AgenteAgente

Page 47: Agentes Inteligentes

MSS - Baseados em AgenteMSS - Baseados em Agente

Várias metodologias vem surgindo normalmente extensões de modelos já existentes – OO e EC

Várias características não estão sendo tratadas nessas metodologias – Ex.: projeto de agentes móveis e de interface do usuário

Pode-se concluir que a área encontra-se aberta o suficiente para vários pesquisadores encontrem soluções para os problemas não resolvidos.

Conclusões

Page 48: Agentes Inteligentes

MSS - Baseados em AgenteMSS - Baseados em Agente

[Booc-1999] Booch, G., Rumbaugh and Jacobson, I. The Unified Modeling Language User Guide Ed. Addison-Wesley - 1999.

Bibliografias

[Cood-1970] Cood, E. F. A relational Model of Data for Large Shared Data Banks. Communication of the ACM, 13 (06) June 1970.

[Gene-1994] Genesereth, M. R. e Ketchpel, S.P. Softwares Agents. Communications od the

ACM, 37(7):48-53, 1994.

[Buss-1999] Busetta, Paolo, Rönnquist, Ralph, Hodgson, Andrew and Lucas , Andrew. JAKE Intelligent Agents – Components for Intelligent Agents in Java.AgentLink

Newsletter.

[Kinn-1996] Kinny, D., Georgeff, M. and Rao, A. A Methodology and Modelling Technique for Systems of BDI Agents, in W. Van Der Velde and J. Perram, editors., Agents Breaking Away: Proceedings of the Seventh European Workshop on Modelling Autonomous Agents in a Multi-Agent World MAAMAW’96, (LNAI Volume 1038). Springer-Verlag: Heidelberg, Germany, 1996.

Page 49: Agentes Inteligentes

MSS - Baseados em AgenteMSS - Baseados em AgenteBibliografias

[Shoh-1993] Shoham, Y. Agent-Oriented Program .Artificial Intelligence, 60(1):51-92, 1993.

[Somm-1996] Sommerville, I., Software Engineering – Addison-Wesley – England, 1996.

[Odel-2000] Odell, J., Parunak, H. and Bauer, B. Representing Agents in UML, Proceedings of the AAAI Agents 2000 Conference, (paper submitted), Barcelona, Spain, June 3-7, 2000.

[Mylo-2000] Mylopoulos, J. e Castro J. Tropos: A Framework for Requirements-Driven Software Development. Brinkkemper, J. and Solvberg, A. (eds.), Information Systems Engineering: State of the Art and Research Themes, Springer-Verlag, June 2000, pp. 262-273.

Page 50: Agentes Inteligentes

MSS - Baseados em AgenteMSS - Baseados em AgenteBibliografias

[Wool-2000] Wooldridge, M., Jennings, N. and Kinny D. The Gaia Methodology for Agent-Oriented Analyis and Design, Journal of Autonomous Agents and Multi-Agent Systems, (to appear) 2000.

[Wool-2001] Wooldridge M. and Ciancarini , P. Agent-Oriented Software Engineering: The State of the Art In P. Ciancarini and M. Wooldridge, editors, Agent-Oriented Software Engineering. Springer-Verlag Lecture Notes in AI Volume 1957,

January 2001.

[Your-1992] Yourdon, E. Análise Estrutrada Moderna – Ed. Campos - 1992

[Wool-1995] Wooldrige, M. and Jennings, N. R. Intelligent Agents: Theory and Practice, Knowledge Engineering Review 10 (2) (1995) 115-152.