Agentes Inteligentes e Sistemas Multi-agente Ferramentas de Contrução de Agentes ZEUS IST- 2003/2004 Ana Paiva 1 Objectivos Plataforma para construção de aplicações com agentes colaborativos (Open Source) Manipulação directa: • • Programação visual “Pick & Choose” Tecnologia standard: • JAVA, TCP/IP, FIPA ACL... A. Paiva Agentes Colaborativos Questões chave: • Descoberta da informação - descobrir a existência, localização, capacidades e papéis de outros agentes • Comunicação - usar uma linguagem comum • Ontologia - usar um vocabulário comum para conceitos iguais • • Coordenação entre agentes Integração com sistemas existentes A. Paiva Componentes do Tool-Kit A. Paiva Agent Component Library Componentes usados na construção de agentes: • • • • • Agentes de suporte Mecanismo de comunicação Motor de coordenação Planeador genérico Interface com sistemas externos A. Paiva Agentes de Suporte Resolvem o problema da descoberta de informação: • Servidor de nomes + Facilitador Constituem a infraestrutura da sociedade de agentes ZEUS oferece uma biblioteca de relações organizacionais pré-definidas: • • • • superior subordinado co-trabalhador ... A. Paiva Mecanismo de Comunição Resolve o problema da linguagem comum: • • Mensagens FIPA ACL Comunicação ponto-a-ponto sobre sockets TCP/IP A. Paiva Motor de Coordenação1 Resolve o problema da coordenação entre agentes: • recebe objectivos • invoca o planeador • localiza os agentes produtores dos recursos necessários • solicita os seus serviços • atribui tarefas A. Paiva Motor de Coordenação2 ZEUS oferece uma biblioteca de estratégias de coordenação pré-definidas: • • Master-slave Contract net Vickery auction Dutch auction • English auction • ... • • A. Paiva Interface com Sistemas Externos Resolve o problema da integração com sistemas existentes • • Motor de Coordenação pode utilizar API’s externas (BD’s, ...) ZeusExternal interface class + modelo interno por eventos - integrar código externo com o agente - verificar os eventos que ocorrem - reagir a determinados eventos A. Paiva Agente ZEUS Genérico A. Paiva Agent Building Software Conjunto de editores visuais • Editor de Ontologias - conceitos, atributos e restrições do domínio • • • Editor de Definição do Agente Editor de Descrição de Tarefas Editor de Organização - relações entre agentes • Editor de Coordenação - escolha de protocolos de coordenação A. Paiva Editor de Ontologias A. Paiva Editor de Definição do Agente A. Paiva Editor de Descrição de Tarefas A. Paiva Editor de Organização A. Paiva Editor de Coordenação A. Paiva Visualisation Tools Permitem observar o comportamento dos agentes e da sociedade em temporeal: • • • • • Visualizador de Sociedades Relatórios Estatística Visualizador de Agentes Controlo São genéricas e independentes da aplicação A. Paiva Visualizador de Sociedades A. Paiva Relatórios A. Paiva Estatística A. Paiva Visualizador de Agentes A. Paiva Metodologia de Desenho A. Paiva Conclusão1 Plataforma ZEUS permite: • • • • • Configurar um conjunto de agentes com funcionalidades e comportamentos distintos Organizar os agentes utilizando relações organizacionais oferecidas pela plataforma Equipar cada agente com mecanismos de comunicação e coordenação Definir para cada agente código específico Gerar automaticamente os executáveis A. Paiva Conclusão2 Plataforma ZEUS oferece ainda: • Agentes de suporte - Servidor de nomes + Facilitador • Visualização e “debug” de sociedades de agentes A. Paiva Bibliografia Collins J., Ndumu D.: ZEUS Technical Manual (1999) http://www.labs.bt.com/projects/agents.htm A. Paiva