1 / 18

Modelos Baseados em Agentes

Modelos Baseados em Agentes. Plataformas Multi-Agente. Prof. André Campos Aula #1 5. Baseado no curso de Olivier Boissier (ENS Mines St. Etienne, França). Problema. O interesse em SMA tem crescido, porém Linguagens orientadas a agentes são ainda raras ou em estágio de maturação

merrill
Download Presentation

Modelos Baseados em 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. Modelos Baseados em Agentes Plataformas Multi-Agente Prof. André Campos Aula #15 Baseado no curso de Olivier Boissier (ENS Mines St. Etienne, França) DIMAp/UFRN

  2. Problema • O interesse em SMA tem crescido, porém • Linguagens orientadas a agentes são ainda raras ou em estágio de maturação • O desenvolvimento de SMA se apóia em linguagens e paradigmas de programação existentes (em geral O-O) • A implementação de SMA em O-O é complexa (distribuição, protocolos de comunicação etc) • Conseqüência = surgimento de várias ferramentas dando o suporte ao desenvolvimento SMA • Existem centenas (ver, por exemplo www.agentlink.org ou www.multiagent.org ) • Problema = qual utilizar? DIMAp/UFRN

  3. Necessidades das ferramentas • Suporte à implementação de agentes • Interação com o ambiente (sensores etc) • Comunicação (padrões, yellowpages, ACL etc) • Protocolos de negociação, cooperação etc • Suporte ao design do SMA • Análise (descrição do problema etc) • Design (arquiteturas com protocolos de interação etc) • Desenvolvimento (plataformas, frameworks etc) • Deployment (configuração, manutenção etc) • Suporte ao usuário final • Segurança (confiabilidade, integridade etc) DIMAp/UFRN

  4. Padrões em SMA • FIPA – Foundation for Intelligent Physical Agents • Especificações de interfaces de componentes do ambiente com as quais os agentes interagem • Ex.: usuários, outros agentes, ambiente físico (robôs) etc • MASIF – OMG (Object Management Group) • Padronização de agentes móveis • Serviços e interfaces de middleware • DARPA Knowledge Sharing • Outros... DIMAp/UFRN

  5. Visão geral de FIPA • Objetivo • Criar padrões internacionais que promovam a interoperabilidade entre agentes heterogêneos • Estrutura • Quadro Arquitetural da FIPA, Comitês técnicos, Grupos de trabalho • Fundado em 1996 • British Telecom, France Télécom, Fujitsu, HP, Hitachi, IBM, Imperial College, Intel, Motorola, Nasa, Nec, Nortel Networks, NTT, Philipps, Siemens, SNCF, SUN, Telecom Italia, Toshiba, ... • Primeiros padrões em 1997 – FIPA’97. Depois FIPA’98, FIPA’2000 DIMAp/UFRN

  6. Especificações de FIPA • Última versão (FIPA’2000) • Padrões nas seguintes áreas (~80) • Linguagem, conteúdo (semântica), protocolos de interação, diretório de serviços, ... • 2 tipos de especificações • Normativa • Especificações obrigatórias, assegurando a interoperabilidade entre outros sistemas FIPA • Informativa • Especificações-guias sobre como utilizar tecnologias desenvolvidas de acordo com as normas da FIPA DIMAp/UFRN

  7. Quadro de especificações • Aplicações • Arquitetura abstrata • Gerenciamento dos agentes • Comunicação dos agentes • Protocolos de interação • Atos de comunicação • Linguagens de conteúdo • Transporte de mensagem • Representação ACL (Agent Comunication Language) • Representação dos envelopes • Protocolos de transporte DIMAp/UFRN

  8. Plataformas FIPA • Para que uma plataforma seja considerada FIPA-compliant  no mínimo: AMS e ACL • Gerenciamento de agentes (AMS) • Autenticação, Recursos, “páginas brancas” (naming) • Comunicação (ACL) • Diretório de agentes (páginas amarelas) • Canal de comunicação (ACC) • transporte de mensagens • Serviços opcionais • Ontologia, Interação H-M etc AMS PA HTTP Transporte (ACC) DIMAp/UFRN

  9. Interoperabilidade entre plataformas • Comunicação entre agentes pode ocorrer • Internamente no seio na mesma plataforma • Entre plataformas – usa ACC e transporte de mensagem • Cada plataforma pode • Estar implementada em linguagem diferentes • Possuir arquiteturas diferentes • Suportar diferentes funcionalidades • Porém possuem • Mesmos serviços de transporte • Mesma linguagem de comunicação DIMAp/UFRN

  10. Tipos de plataformas • Suporte às diferentes fases de elaboração de um SMA • Design • Em geral baseadas em componentes • Middlewares • Design + Implementação • Facilita a definição dos agentes • Frameworks • Design + Implementação + Testes • Análise + Design + Imp. + Testes Análise Design Implementação Teste e validação DIMAp/UFRN

  11. Exemplos de plataformas • JADE (Java Agent Development Framework) • MadKit (Multi-Agent Development Kit) • Zeus • Outros • ADE, ADK, Agent Factory, AgentBuilder, AgentTool, Aglets, Bee-gent, BOND, DECAF, DIET, DIVA, EVO, Hive, IMPACT, Jack, JAFMAS, JIAC, JINI, Knowbot, LIME, MAGE, MAML, RETSINA, SOAR , TuCSoN, VOYAGER,... • ... e muito mais!!!! DIMAp/UFRN

  12. JADE • Java Agent Development Framework • Open source • Conforme especificações da FIPA (uma das primeiras ferramentas) • Análise e Design • N/A • Implementação • Um agente em JADE é instância de uma subclasse da classe “Agent” • Inclui uma biblioteca de protocolos de interação e comportamentos gerais de agentes (podem ser configurados) • Deployment • Alguns utilitários são fornecidos • RMA (Remote Monitoring Agent)  permite o controle do ciclo de vida dos agentes à distância • DummyAgent  permite configurar como o usuário interage com os agentes DIMAp/UFRN

  13. Modelo de comunicação em JADE • Agentes enviam/recebem objetos (Java) que representam mensagens ACL no escopo de um protocolo de interação • Usuários não se preocupam em codificar mensagens • Níveis de envelope, ACL, Linguagem de Conteúdo e Ontologia • Pode ser estendido • Biblioteca de protocolos de interação • Usuários precisam apenas implementar métodos pré-definidos • Ex.: Rede de contrato DIMAp/UFRN

  14. MadKit • Multi-Agent Development Kit • Baseado no modelo Aalaadin (organização) DIMAp/UFRN

  15. MadKit • Análise • N/A • Design • Definição de modelos organizacionais (grupos, papéis,...), modelo de interação (protocolos, mensagens,...), tarefas, objetivos • Não há software que dê suporte à definição de tais modelos • Implementação • Baseado na estrutura Agent-Micro Kernel • Deployment • Uso de G-box DIMAp/UFRN

  16. Zeus • Versões inicial (1.02) • Open source (Mozilla) • Última versão fechada: British Telecom • Análise • Modelagem de papéis através de UML • Forte ênfase na metodologia • Design • Zeus Agent Model • Implementação • Baseado em ferramentas gráficas (ontologia, agente, configuração de tarefas dos agentes etc) • Deployment • Ferramentas de visualização e monitoramento dos agentes DIMAp/UFRN

  17. Desenvolvimento em Zeus • 3 bibliotecas • Agentes utilitários • Ferramentas de construção de agentes • Biblioteca de componentes de agentes • Definição gráfica dos agentes e serviços, em seguida pode-se gerar código (Java) DIMAp/UFRN

  18. Passos de desenvolvimento • Criação de uma ontologia • Conhecimento declarativo dos conceitos significativos dentro de um domínio de aplicação (Zeus Ontology Editor) • Criação de agentes • Definição de agentes de tarefa (específico da aplicação) • Configuração dos agentes utilitários • Configuração dos agentes de tarefa (parâmetros de execução) • Implementação • Geração de código automático DIMAp/UFRN

More Related