1 / 36

Introdução a Sistemas Multi-Agentes

Introdução a Sistemas Multi-Agentes. Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2010.1/isma. Disciplina. Objetivos: Apresentar as propriedades e características dos agentes de software e dos sistemas multi-agentes

bond
Download Presentation

Introdução a Sistemas Multi-Agentes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introdução a Sistemas Multi-Agentes Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2010.1/isma

  2. Disciplina • Objetivos: • Apresentar as propriedades e características dos agentes de software e dos sistemas multi-agentes • Apresentar as técnicas de desenvolvimento destes sistemas • Atendimento: • Quinta: 18:00 as 19:00 (marcar antes) • Avaliação: • Trabalhos realizados em dupla ou individualmente • Apresentação de artigo em sala • (ApArtigos + Trab 1 + Trab 2) / 2 >= 6 • Trab1 e Trab2: monografia + apresentação oral

  3. Introdução • Apresentação de artigo • T1: • Monografia ou Trabalho prático • Monografia de aproximadamente 10 páginas: descrição de um tema • Trabalho prático: modelar/implementar um sistema • Apresentação oral • T2: • Monografia ou Trabalho prático • Monografia de aproximadamente 20 páginas: descrição de um tema • Trabalho prático: modelar/implementar um sistema • Apresentação oral

  4. Conteúdo • Introdução a Agentes de Software • Agentes x Objetos, e os Sistemas Multi-Agente • Modelagem de SMA • Metodologias para SMA • Linguagens de modelagem para SMA • Implementação de SMA • Frameworks e arquiteturas para SMA • Linguagens de programação para SMA • Características específicas de SMA • Sociedade de agentes • Confiança e Reputação • Comunicação • Negociação e Argumentação • Planejamento • Aprendizagem • Capacidade de Raciocinar

  5. Bibliografia • Wooldridge, Michael. Introduction to Multi-agent Systems. John Wiley and Sons, 2002 • Jennings, Nick; Wooldridge, Michael J. Agent technology: foundations, applications, and markets. Berlin: Springer, 1998 • Henderson-Sellers, Brian; Giorgini, Paolo. Agent-oriented methodologies. Hershey, PA: Idea Group Pub., 2005 • Weiss, Gerhard. Multiagent systems: a modern approach to distributed artificial intelligence. Cambridge, Mass.: MIT Press, 1999 • Ferver, Jacques. Multi-agent systems: An introduction to distributed artificial intelligence. Addison-Wesley, 1999 • Bordini, Rafael; Dastani, Mehdi; Dix, Juergen; Seghrouchni, Amal, A. Multi-Agent Programming: Languages, Platforms and Applications. Springer, 2005

  6. Agentes de Software

  7. Motivação: Sistemas Complexos I/II • Executam para alcançar nossos objetivos • Interagem com outros sistemas • Necessitam cooperar / competir com outros sistemas para alcançar os objetivos • Necessitam executar de maneira independente • Se adaptam a mudanças no ambiente • São distribuídos e heterogêneos

  8. Quando utilizar agentes de software? • Quando a tarefa é grande e complexa • Quando é necessário que as decisões sejam feitas com rapidez • Quando envolvem riscos as pessoas • Quando é muito caro ou difícil manter um grupo de pessoas controlando um software (ou um robô)

  9. Definição: Agentes • Dicionário: (dictionary.com) • Uma pessoa ou coisa que atua ou que tem o poder de atuar • Aquele que atua em benefício de outro • “Um agente é um sistema informático situado em um ambiente que é capaz de realizar ações de forma autônoma / independente para conseguir seus objetivos.” [Wooldridhe, 1997] • Não existe uma definição que seja precisa e utilizada por todos os pesquisadores

  10. Algumas características • É capaz de atuar em um ambiente • Tem uma visão parcial do ambiente • É capaz de perceber as mudanças do ambiente • Pode se adaptar a mudanças do ambiente • Pode se comunicar através de troca de mensagem com outros agentes • Atua sem a necessidade de mandar atuar • Está orientada por um conjunto de objetivos • Pode aprender e raciocinar

  11. Aplicações com agentes I/V • Controle de tráfico aéreo: ¿Como funciona? • Sistema chamado OASIS e implementado no aeroporto de Sydney • Os agentes representam tanto o avião como os distintos sistemas de controle de tráfico • Quando um avião entra no espaço aéreo de Sydney, o sistema associa um agente com a informação do avião (tamanho do avião, quantidade de combustível, …) e os objetivos do avião (aterrissar em uma determinada pista a uma determinada hora) • Os agentes controladores de tráfico controlam os agentes que representam os aviões ¿Por que agentes? • A metáfora do agente provê uma maneira útil e natural para modelar os componentes autônomos do mundo real.

  12. Aplicações com agentes II/V • Aplicações de medicina: ¿Por que agentes? • Distribuição: Conhecimento para solucionar um problema está distribuído em diferentes lugares • Interação / Coordenação: A solução de um problema depende da coordenação das tarefas que serão realizadas por diversos indivíduos com diversas habilidades e competências • Complexidade: Problema usualmente decomposto em subproblemas • Pró-atividade: Os agentes realizam tarefas que são de benefício para o usuário sem que este seja solicitado • Autonomia: Cada agente toma suas próprias decisões baseando-se no seu estado interno e na informação que recebe do usuário e de outros agentes

  13. Aplicações com agentes III/V • Aplicações em medicina: • Gestão de transplantes de órgãos • Busca informação médica na Web: MARVIN • http://www.hon.ch/Project/Marvin_project.html • Monitoramento e diagnóstico de pacientes cardíacos: Guardian • http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=00653225 • Formação de médicos: Amplia • http://www.inf.ufrgs.br/~dflores/AMPLIA/ • Atendimento as pessoas de terceira idade: TeleCARE • http://www.uninova.pt/~telecare/telecare2004/TELECARE2004_Camarinha-Matos_Afsarmanesh.pdf

  14. Aplicações com agentes IV/V • Aplicações de recuperação da informação: Como funciona? • Sistema chamado Letizia e desenvolvido pelo MIT • http://web.media.mit.edu/~lieber/Lieberary/Letizia/Letizia-Intro.html • O agente observa o comportamento do usuário (páginas web que acessa) e tenta inferir seus gostos automaticamente • Agente de informação: Tem acesso a diversas fontes de informação e são capazes de analisar e manipular a informação obtida Por que agentes? • Necessidade de automação na busca por informação qualificada • É capaz de armazenar, aprender e manejar as preferências e gostos de usuários • É capaz de se comunicar com os provedores de informação • Necessidade de adaptar-se a mudanças no seu ambiente

  15. Outras aplicações V/V • Comercio eletrônico • Agentes podem planear, negociar, argumentar,… • Gestão de processos (workflow) • Jogos e Robótica • Controle de satélites • NASA está tentando fazer com que os satélites sejam más autônomos, aumentando a capacidade de tomar decisões

  16. Evolução dos Paradígmas da ES Linguagem Assembly Abstração Funcional Programação Estruturada Orientação a Objetos Orientação a Componentes ... Agentes de Software Abstrações determinadas pela arquitetura da máquina Tempo Abstrações determinadas pelo domínio do problema

  17. Propriedade dos Agentes

  18. Interatividade (Habilidade Social) • A vida real é um ambiente multi-agente, i.e, com vários agentes executando de um vez • Muitas vezes os objetivos só podem ser cumpridos quando ocorre cooperação entre os agentes • Os agentes são capazes de interagir com outras entidades do sistema • Diferentemente dos objetos, os agentes não interagem chamando método de outros agentes. Os agentes enviam mensagens a outros agentes • Os agentes decidem a quem irão responder • Um agente pode decidir não responder a uma mensagem de outro agente, os objetos no podem

  19. Reatividade (Adaptabilidade) • Ambiente fixo x ambiente variável • Em vida real: as cosas mudam, a informação está incompleta, o ambiente é variável • A maioria dos ambientes são dinâmicos • É difícil criar programas para domínios dinâmicos • Possibilidade de falha • Um agente reativo mantém uma interação contínua com o ambiente, e responde as mudanças que ocorrem nele (se adapta).

  20. Pró-atividade (Orientação a objetivos) • Reagir a um ambiente é fácil • estímulo  regra de resposta • Mas queremos que os agentes façam coisas para nós • E que tenham um comportamento orientado a objetivose não a tarefas • Um agente proativo • é capaz de executar para cumprir seus objetivos, • não faz falta que o mande fazer algo, • não está guiado somente pelos eventos do ambiente, • tem iniciativa e reconhece oportunidades.

  21. Autonomia • Um agente autônomo: • trabalha sem a intervenção direta do usuário (não é necessário mandar para o agente execute) • é capaz de selecionar o objetivo que irá intentar cumprir (pode ser capaz de criar novos objetivos) • tem (certo) controle sobre seu estado e seu comportamento • Só o agente é capaz de modificar seu estado • O agente decide o que irá fazer

  22. Reatividade x Pró-atividade • Reatividade: queremos que nosso agente seja reativo, que responde as mudanças do ambiente a tempo e de maneira apropriada • Pró-atividade: queremos que nosso agente trabalhe de acordo com seus objetivos • Estas duas propriedades podem conviver • Criar um agente onde estas duas propriedades estejam balanceadas é um problema de pesquisa Agente mixto Agente pró-ativo Agente reativo

  23. Interatividade x Autonomia • Interatividade: agente interage com outros agentes para alcançar seus objetivos • Autonomia: agente é capaz de fazer todas suas tarefas sem depender de ninguém Interação - + Autonomia - +

  24. Outras Propriedades • Mobilidade: Mover de um computador a outro em una rede preservando seu estado • Racionalidade: os agentes irão atuar para cumprir seus objetivos y no irão atuar de maneira a prevenir que os objetivos se cumpram Um agente pode decidir: • que objetivo tentar atingir ou qual evento reagir • como atuar para conseguir um objetivo • suspender ou abandonar uma objetivo para dedicar-se a outro • Aprendizagem: o agente melhora seu rendimento com o passar do tempo • …

  25. Agentes x Objetos

  26. Entidade (Agente ou Objeto) • Toda entidade tem: • Estado + comportamento • Reação com outras entidades • Estado: armazena informações • Comportamento: conjunto de tarefas que a entidade pode executar • Relacionamento: define como as entidades estão relacionadas, conectadas

  27. Objeto • Estado: atributos • Armazena informação sobre o objeto e sobre outras entidades do sistema (podem armazenar outros objetos) • Comportamento: métodos • São tarefas que podem ser executadas • As operações podem modificar o estado do objeto

  28. Comunicação entre Objetos • Envio de mensagem >> Chamada de método • Resposta >> Execução do método e envio da resposta • Sempre que um objeto envia uma mensagem a outro objeto este responde

  29. Objeto (tradicional) • Tem controle do seu estado (encapsulamento) • Pode modificar seu estado mas não pode adicionar novos tipos de informação • Não tem controle de seu comportamento • Não pode modificar seu comportamento • Os objetos são entidades passivas • Só executam quando outras entidades pedem

  30. Agente • Estado: crenças, objetivos, planos e ações • Crenças: conhecimento sobre si mesmo, sobre o ambiente e sobre outras entidades • Tudo que o agente sabe, suas memórias e suas percepções • Objetivos: estados futuros donde o objeto quer chegar ou desejo que ele quer satisfazer

  31. Agente • Ações: execução dos agentes • Ex.: modificar seu estado, enviar e receber mensagens • Planos: composto por um conjunto de ações • Descrevem a ordem de execução das ações • Possibilitam que o agente alcance seus objetivos ou que satisfaça seus objetivos • Estão relacionados com os objetivos

  32. Agente • Comportamento: • Execução dos planos e, conseqüentemente, das ações • Os planos são executados de acordo com os objetivos • Objetivos com maior prioridade são selecionados primeiro • A definição do comportamento do agente é parte de seu estado “mental”.

  33. Comunicação entre Agentes • Envio de mensagem >> Envio de una carta (pedido, informação,…) • Resposta >> Envio de outra mensagem • Utilizam uma linguagem de comunicação • Agentes podem não responder quando recebem uma mensagem de alguém

  34. Agente • Tem controle de seu estado • Pode modificar seu estado e pode adicionar novas informações • Crenças e objetivos • Tem controle de seu comportamento • Pode modificar seu comportamento (podem criar novos planos e aprender novas ações) • Aprendizagem • Os agentes são entidades ativas • Executam sem que alguém peça

  35. Estado: Pode modificar mas não pode adicionar novas Informações Comportamento Não tem controle de seu comportamento Necessita estímulos externos para executar Responde todas mensagemque recebe Comportamento predeterminado Estado mental: Guarda informações sobre seu comportamento Pode modificar e adicionar informação Comportamento: Tem controle de seu comportamento Não necessita estímulos para executar Pode não responder uma mensagem Pode modificar seu comportamento Objeto Agente

  36. Agentes e Objetos • Agentes são autônomos:Ex: Agentes decidem quando executar uma ação requerida por outro agente • Agentes são inteligentes:Agentes podem modificar seu comportamento (reatividade, pró-atividade, habilidade social, aprendizagem…) • Agentes são entidades ativas:Uma sistema muli-agentes é tipicamente composto por várias threads, onde cada agente tem uma ou mais threads de execução que executam sem intervenção do usuário

More Related