1 / 21

AGML

PCS-5924 Teoria de Linguagens. AGML. Uma Linguagem Para Descrição de Sistemas Multiagentes. Júlio de L. do R. Monteiro 8/12/2000. Introdução. Sistema Multiagente é um conjunto de agentes que pode cooperar, competir ou simplesmente coexistir.

Download Presentation

AGML

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. PCS-5924 Teoria de Linguagens AGML Uma Linguagem Para Descrição de Sistemas Multiagentes Júlio de L. do R. Monteiro 8/12/2000

  2. Introdução • Sistema Multiagente é um conjunto de agentes que pode cooperar, competir ou simplesmente coexistir. • Agente: elemento de um sistema que age com certo grau de autonomia. • Objetivo: desenvolver uma linguagem para descrever e simular SMAs.

  3. Agentes Reativos: Reagem em resposta a sinais do meio. Não tem consciência do estado dos outros. Somente se comunicam de forma indireta, por sinais no meio. Pouca autonomia. Agentes Cognitivos: Possuem estado mental, que compreende objetivos, crenças e intenções. Aprendem sobre o estado dos outros agentes. Capazes de comunicação complexa, através de mensagens como pedir ajuda ou influenciar o outro. Planejam suas ações. Grande autonomia. Sistemas Multiagentes

  4. Sistemas Multiagentes • Os agentes não são necessariamente benevolentes com relação aos outros. Eles normalmente seguem seus objetivos individuais. • Os agentes utilizam planos para cumprir estes objetivos. Estes planos podem incluir o trabalho de outros agentes na sociedade. • Certos agentes estarão dependentes de outros agentes para cumprir seus objetivos.Gerando relações de dependência e interesse.

  5. O Conceito de Emergência • É o surgimento de um estado ou situação somente pela interação dos agentes na sociedade, de forma não pré-programada diretamente. • Surge na transição do nível micro (comportamento dos agentes) para o macro(comportamento social).

  6. Simulação em SMA • Criação de mundos artificiais, ou sociedades, habitados por agentes em interação. • Programa-se o comportamento individual e se observa o comportamento social. • Adequada para situações complexas, ou sistemas com muitas partes diversas com comportamento concorrente. • Objetivos: testar hipóteses sobre comportamentos emergentes, elaborar teorias e entender comportamentos sociais, etológicos e fenômenos coletivos.

  7. Simulação em SMA <agentes, objetos, ambiente, comunicação>. • agentes é o conjunto de indivíduos simulados. • objetos são entidades passivas que não tem um comportamento autônomo. • ambiente representa o espaço topológico onde se os agentes e objetos se situam e é o meio por onde se propagam os sinais e a comunicação. • comunicação compreende todas as formas de troca de informação entre os agentes, podendo utilizar protocolos.

  8. Dificuldades Inerentes • Alto grau de concorrência: há a necessidade de primitivas de sincronização e acesso a recursos compartilhados. Cada agente é considerado um processo independente. • Ambiente distribuídos: A simulação não é necessariamente local, pode estar distribuída através de redes de computadores. • Consistência do estado mental: Como gerenciar informações conflitantes? Em quais agentes pode-se confiar mais? • Comunicação entre agentes: preservação do conteúdo e clareza. Poder expressivo.

  9. ambiente protocolos agentes objetos AGML (AGent Modeling Language) • Paradigma derivado do orientado a objetos: orientado a agentes. • Pré-compilada e interpretada, como o Java™. • O runtime é um ambiente de simulação SMA. AGML Runtime Resultado da simulação

  10. AGML - Conceitos • Permite descrever agentes reativos e cognitivos. • Recursos opcionais embutidos para descrição de agentes cognitivos: • Planejador automático que busca atingir os objetivos do agente em ordem de prioridade. • Gerenciador de estado mental baseado em lógica. • Linguagem de comunicação entre agentes.

  11. AGML – Multissintaxe • Para a descrição geral usa-se tags, como no XML, sendo possível redefinir ou criar novos tags. • Para os comportamentos e ações se utiliza uma sintaxe procedimental, definindo-se funções e métodos da forma convencional (como o C++/Java™). • Para o estado mental pode-se usar uma descrição lógica, usando cálculo de predicados (como Prolog). • Para as mensagens trocadas pelos agentes através dos protocolos, usa-se uma variante do KQML(Knowledge Query and Manipulation Language).

  12. AGML – Sintaxe Básica • Usada para definir agentes, objetos, protocolos, eventos e o ambiente. • Utiliza-se de um arquivo de templates para nova definição ou modificação de tags. • Tipagem forte. • Identação Obrigatória. • Contextos Dinâmicos.

  13. AGML – Sintaxe Básica Alguns Tags Básicos

  14. AGML – Sintaxe Procedural • Usada para definir as ações possíveis de cada agente. • Utiliza funções e procedimentos. • Facilidades para lidar com strings e listas, de forma dinâmica. • Novas classes podem ser definidas pelo usuário. • Identação Obrigatória. • Terminadores de linha desnecessários.

  15. AGML – Sintaxe Lógica • Permite descrever o estado mental do agente, através de crenças, objetivos, conhecimentos e intenções. • Pode ser usada para definir cláusulas de Horn. • Suporta inferências dedutivas por refutação, como em Prolog. • Conteúdo lógico acessível via sintaxe procedimental e vice-versa.

  16. AGML – Sintaxe de Mensagens • As mensagens de comunicação entre agentes são definidas através de protocolos. • Protocolos utilizam uma implementação da linguagem KQML [Finn 93] para descrever a comunicação entre dois ou mais agentes. • Através dos protocolos é possível informar, perguntar, pedir ajuda, negar, etc. • Protocolos pré-definidos permitem comunicações complexas entre agentes. Além da possibilidade de definição de protocolos do usuário. • Comunicação sobre um ambiente distribuído se torna possível.

  17. AGML - Semântica • O ambiente de simulação utiliza um modelo de tempo, em turnos, onde em cada turno, cada agente realiza as ações ditadas pelo seu comportamento e então o ambiente realiza a resposta do meio. • No começo de cada “turno”, cada agente faz uma reavaliação do seu estado interno e decide qual vai ser seu comportamento. É nesse momento que o estado interno de cada agente podem ser modificado, incluindo novos objetivos, crenças, conhecimentos, intenções, ações e planos.

  18. AGML - Semântica • Cada agente deve estar definido com pelo menos um <behavior>. • Um <behavior> representa um tipo de comportamento que pode ser assumido em uma determinada situação. Dentro deste tag, todas as ações de serão executadas ao mesmo tempo em ordens distintas, contanto que não sejam de classes iguais. • Se houverem planos definidos no agente, o planejador embutido irá escolher o melhor dos planos e executar o seu behavior durante a duração especificada em turnos.

  19. SGML - Sincronismo • As ações, tanto dos agentes como dos objetos, podem ser sincronizadas, ou seja, somente um agente acessa aquela ação por vez. • Além disso, o mecanismo de classes de ações impede que duas ações conflitantes sejam executadas ao mesmo tempo. • Outro mecanismo de sincronização são os protocolos, que podem ser utilizados para coordenar um grupo de agentes.

  20. Conclusões • A linguagem AGML permite expressar agentes reativos e cognitivos com alto grau de detalhe, permitindo desenvolver aplicações complexas modeladas no paradigma orientado a agentes. • Aliada com a implementação e um simulador de agentes visual, se torna uma poderosa ferramenta para simulação em SMA. • Permite a implementação de mecanismos de rede de maneira transparente ao usuário.

  21. Bibliografia [Finn 93] 1993, Specification of The KQML Agent-Communication Language, Tim Finn et al., University of Maryland, The DARPA Knowledge Sharing Initiative.

More Related