2. FIPA
• Uma organização da IEEE Computer Society
que promove a tecnologia baseada em agentes
• O conjunto completo de especificações da FIPA
estão disponíveis publicamente no site
http://www.fipa.org
3. Histórico e Metas
• Criada em 1996 como uma associação
internacional para desenvolver padrões para
tecnologia de agentes de software
• Agentes de software já eram bem conhecidos na
comunidade acadêmica, mas tinham recebido
pouca atenção do mercado
• Aceita pelo IEEE em 2005
4. Princípios da FIPA
• Novo paradigma para solucionar velhos e novos
problemas
• Algumas tecnologias de agentes já alcançaram
um considerável grau de maturidade
• Para ser de algum uso a tecnologia precisa ser
padronizada
• A padronização de mecanismos internos dos
próprios agentes não é o foco principal
5.
6. Conceitos chaves da FIPA
• Comunicação de Agentes
• FIPA-ACL
• Subcamadas FIPA
• Gerenciamento de Agentes
7. Comunicação Agentes
• Agentes são processos de código distribuído que
seguem o modelo de computação distribuída
formado por duas partes: componentes e
conectores
• Componentes são consumidores, produtores e
mediadores que trocam mensagens via
conectores
8. FIPA-ACL
• Um conjunto de 22 atos de comunicação
• São baseadas na lógica modal que especifica os
efeitos de enviar uma mensagem em atitudes
mentais
• FIPA definiu um conjunto de protocolos de
interação, cada um consistindo de uma
sequência de atos de comunicação
• Na estrutura da mensagem não é obrigatório o
uso de uma linguagem de conteúdo. (FIPA-KIF,
FIPA-RDF, FIPA-SL)
9. Subcamadas FIPA
• Subcamada 1 (Transporte) - IIOP, WAP, HTTP;
• Subcamada 2 (Codificação) - XML, String, Bit-
Efficient;
• Subcamada 3 (Mensagens) - Independente de
codificação. Parâmetros: conteúdo, remetente,
destinatário;
• Subcamada 4 (Ontologia) - FIPA permite o uso
de ontologias para definir termos individuais
contidos em uma mensagem;
10. Subcamadas FIPA
• Subcamada 5 (Expressão de Conteúdo) - As
mensagens podem ser de qualquer forma, mas a
FIPA definiu a FIPA-SL como guia;
• Subcamada 6 (Ato comunicativo) - É a simples
classificação de uma mensagem em termos de
uma ação ou performativa, que ela implica;
• Subcamada 7 (Protocolo de Interação) -
Geralmente as mensagens não são isoladas, elas
fazem parte de uma sequencia de interação.
11. Gerenciamento de Agentes
• Uma norma em forma de framework na qual
agentes FIPA podem existir, operar e serem
gerenciados
13. Gerenciamento de Agentes
• Agent Platform: (AP): fornece a infraestrutura
física na qual o agente é executado;
• Agent: Um agente é um processo computacional
que habita em um AP e normalmente oferece um
ou mais serviços computacionais que podem ser
publicados como uma descrição de serviço;
14. Gerenciamento de Agentes
• Directory Facilitator (DF): O DF é um
componente opcional de um AP fornecendo
serviços de páginas amarelas para outros
agentes;
15. Gerenciamento de Agentes
• Agent Management System (AMS): AMS é um
componente obrigatório de uma AP e é
responsável pelo gerenciamento da AP, tais
como criação e remoção de agentes, e
monitoramento de migração de agentes;
• Message Transport Service (MTS): MTS é um
serviço fornecido por uma AP para transportar
mensagens FIPA-ACL entre agentes em
qualquer AP.
16.
17. Especificações Chaves da FIPA
• Arquitetura abstrata FIPA
• Estrutura de Mensagem FIPA-ACL
• Atos de comunicação FIPA-ACL
• Linguagem de conteúdo FIPA-SL
• Protocolo de Interação por Requisição
• Protocolo de Interação por Rede de Contrato
18. Arquitetura Abstrata FIPA
• A arquitetura abstrata especificada pela FIPA
fornece um ponto de referência comum para
implementações FIPA.
• Os itens mais importantes da arquitetura são:
▫ Agent Messages;
▫ Message Transport Service;
▫ Agent directory Service;
▫ Service directory service.
19. Estrutura de Mensagem FIPA-ACL
• Uma mensagem FIPA-ACL contém um conjunto
de parâmetros de mensagens além do seu
conteúdo
• Único parâmetro obrigatório é a performativa
20. Estrutura de Mensagem FIPA-ACL
Tabela 1. Descrição dos parâmetros de uma mensagem FIPA-ACL
21. Exemplo de Mensagem FIPA-ACL
Figura 2. Exemplo da estrutura de mensagem FIPA-ACL
22. Atos de comunicação FIPA-ACL
• FIPA-ACL define a comunicação em termos de
uma função ou ação, chamada communicative
act ou CA, realizada durante a comunicação.
23. Tabela de CAs
Tabela 2. Descrição de atos de comunicação
24. Tabela de CAs
Tabela 3. Descrição de atos de comunicação
25. Tabela de CAs
Tabela 4. Descrição de atos de comunicação
26. Linguagem de Conteúdo FIPA-SL
• FIPA Semantic Language (SL) é utilizada para
definir a semântica para os CAs como uma lógica de
ações, formalizada em uma linguagem modal de
primeira ordem
• Expressões de conteúdo podem ser utilizadas como
conteúdos de mensagens ACL
• Existem três casos:
▫ 1. Uma proposição, que pode ser atribuído um valor
verdadeiro em um dado contexto;
▫ 2. Uma ação, que pode ser realizada;
▫ 3. Uma expressão de identificação, que identifica um
objeto em um domínio.
28. Protocolo de Interação por Requisição
• É uma sequencia de ações onde um agente
requisita um outro para realizar uma ação. O
agente processa a requisição e toma a decisão se
aceita ou recusa.
31. Protocolo de Interação de Rede de
Contrato
• Este protocolo descreve o caso onde um agente
deseja que alguma ação seja realizada por um ou
mais agentes. E deseja otimizar uma função que
caracteriza a tarefa.
44. Referências
• FABIO BELLIFEMINE, G. C. D. G. Developing
multi-agent systems with JADE. [S.l.]: John
Wiley & Sons Ltd, 2007. ISBN 978-0-470-
05747-6.
• Site oficial FIPA http://www.fipa.org