A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

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

Apresentações semelhantes


Apresentação em tema: "AGML Uma Linguagem Para Descrição de Sistemas Multiagentes Júlio de L. do R. Monteiro 8/12/2000 PCS-5924 Teoria de Linguagens."— Transcrição da apresentação:

1 AGML Uma Linguagem Para Descrição de Sistemas Multiagentes Júlio de L. do R. Monteiro 8/12/2000 PCS-5924 Teoria de Linguagens

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 Sistemas Multiagentes 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.

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 é 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 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. Runtime AGML Resultado da simulação agentesobjetos protocolosambiente

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 Descreve um tipo de agente Usado para definir um tipo de objeto Declara um tipo de ambiente Usa-se para definir protocolos de comunicacao entre agentes Usa-se para definir um novo tipo de evento. Indica que o agente estará escutando por um determinado evento. Descreve o comportamento autonomo do agente. Define uma das ações possíveis de um agente. Define um dos objetivos do agente. Define um dos planos possíveis que o agente conhece. Usado para definir cada um dos passos de um plano Usado para definir precondicoes para um passo ou objetivo. 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. Um 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.


Carregar ppt "AGML Uma Linguagem Para Descrição de Sistemas Multiagentes Júlio de L. do R. Monteiro 8/12/2000 PCS-5924 Teoria de Linguagens."

Apresentações semelhantes


Anúncios Google