Sistemas Distribuídos
Agentes de Software
10 OUT 2003
1
Definição de agente
• Um agente pode ser uma pessoa, uma
máquina, ou software que actua por
interposta pessoa.
• Propriedades adicionais:
– Autónomos: capaz de actuar sem intervenção
externa directa.
– Tem algum grau de autonomia e controlo do seu estado
interno baseado nas suas próprias experiências.
– sem a propriedade da autonomia um agente não é uma
entidade dinâmica mas sim um objecto passivo, por isso a
autonomia é uma propriedade requerida dos agentes.
10 OUT 2003
2
Propriedades dos agentes
– Interactivo: capaz de comunicar com o
ambiente ou com outros agentes.
• podem expressar-se em graus de interactividade:
– mensagens para objectos (invocação de métodos) (forma
mais básica de interacção)
– reacção a eventos observáveis no ambiente
– interacções sociais (múltiplas a paralelas formas)
– interacção em sistemas multiagentes heterogéneos
(capazes de se coordenarem através de mecanismos
cooperativos e competitivos como negociação e
planeamento) (interacção mais complexa)
– É considerada uma propriedade necessária
10 OUT 2003
3
Propriedades dos agentes
– Adaptativos: capazes de responder a outros
agentes e ao seu ambiente.
• Na sua mais avançada forma permite ao agente
modificar o seu comportamento baseado na sua
experiência (aprendizagem e evolução).
• Envolve geralmente algoritmos genéticos.
• É considerada uma propriedade necessária
– Proactivos: orientados a um objectivo com um
propósito. Não reagem simplesmente ao
ambiente.
10 OUT 2003
4
Propriedades dos agentes
– Móveis: capacidade de se transportar de um
ambiente para outro.
• geralmente corresponde a mudar de máquina
hospedeira.
• pode ser visto como itinerante, dinâmico, roaming
ou migrante.
• Não é uma propriedade necessária.
– Inteligentes: o estado é formalizado pelo
conhecimento e interactua com outros agentes
usando linguagem simbólica
10 OUT 2003
5
Propriedade de agentes
– Racionais: capaz de escolher uma acção
baseada em objectivos internos
– Não previsível: capaz de agir em formas não
idênticas no passado mesmo se as condições
iniciais forem iguais.
– Carácter: ter personalidade ou estado emocional
acreditável.
10 OUT 2003
6
Propriedades dos agentes
– Transparente e auditado: deve ser transparente
quando requisitado e deve apresentar um
relatório de actividades se pedido.
– Coordenativo: capaz de executar uma
actividade num ambiente partilhado por outros
agentes.
• actividades são geralmente coordenadas via planos,
fluxos de trabalho, ou outro mecanismo de gestão de
processos
10 OUT 2003
7
Propriedades de agentes
– Cooperativos: capaz de se coordenar com
outros agentes para atingir um propósito
– Competitivo: capaz de se coordenar com outros
agentes num modelo onde o sucesso de um
agente implica o fracasso de outro.
– Robusto: capaz de lidar com erros e dados
incompletos
– Confiáveis: aderem às leis da robótica
10 OUT 2003
8
Sistemas de agentes
– Um agente pode ser construído para ser capaz
de fazer muitas coisas mas um “fat-agent”
representa um impedimento à velocidade,
robustez e manutenção.
– Dividir a funcionalidade entre muitos agentes
fornece modularidade, flexibilidade,
extensibilidade, escalabilidade e capacidade de
alteração.
10 OUT 2003
9
Sistemas de agentes
– Aplicações que requerem computação
distribuída são suportadas melhor por MAS.
– Tecnologia de agentes representa o SOA em
computação distribuída.
– Os ambientes MAS fornecem uma
infraestrutura específica onde se integram os
ambientes de funcionamento, protocolos de
comunicação e interacção entre agentes
10 OUT 2003
10
Uso de agentes
• Agentes para redes e gestão de sistemas
– responsáveis por tarefas tais como: detecção de
faltas, equilíbrio de carga. antecipação de faltas,
parametrização dinâmica de redes, análise de
problemas, padrões de comportamentos, síntese
de informação.
• Agentes para decisão e suporte logístico
• Agentes de negociação e formulação de
consenso.
10 OUT 2003
11
Uso de agentes
• Agentes para assistência ao utilizador
• Agentes para estruturas organizacionais
– simulação de situações ou organizações
10 OUT 2003
12
Tecnologia de Agentes
• Linguagem de Programação: Java ou C++
• Linguagem de Comunicação: KQML ou FIPA
ACL
• Representados como String ou documentos XML
• Linguagem de conteúdo: KIF or SL1
• Maior parte dos agentes móveis são enviados pela
rede usando técnicas de serialização
10 OUT 2003
13
Pontos chaves
• Comunicação
– Existe a necessidade de standardizar as
linguagens de comunicação entre agentes
(KQML, Arcol, FIPA, KIF, XML-based) para
haver interoperabilidade enter diferentes
fabricantes.
– É necessário haver um entendimento ontológico
10 OUT 2003
14
Pontos chave
• Estado interno dos agentes
– Representação dos objectivos que representam
desejos ou estados futuros.
– Ajudam o agente a determinar que acções
tomar em circunstâncias particulares
– São necessários interfaces com o exterior para
que o agente tenha uma representação do
mundo
10 OUT 2003
15
Pontos chave
• Gestão do ciclo de vida:
– Devem existir mecanismos para fazer o “start”,
“stop”, “manage” e “trace”.
– Quando são móveis adicionam-se “permissões”
para executar, actuar, ou comunicar.
– Quando são evolutivos adicionam-se serviços
para “delegar responsabilidades”
– Podem ficar adormecidos e salvaguardados
durante grandes temporadas
10 OUT 2003
16
Pontos chave
• História:
– Podem existir mecanismos para gravar as
acções do agente para futuras auditorias e para
avaliação de acções passadas
• Mobilidade
– requerem um servidor com o ambiente onde
possam ser executados
– introduzem complexidade adicional de
segurança e validação do código móvel
10 OUT 2003
17
Pontos chave
– introduzem complexidade na gestão:
• Aonde estão? Como comunicar com eles? como
trazê-los de volta quando a rede falha?
– gestão de nomes torna-se essencial
10 OUT 2003
18
Arquitectura de agentes
10 OUT 2003
19
Arquitectura de agentes
10 OUT 2003
20
Arquitectura de agentes
• Sistema de gestão de agentes
– Mantém um directório de nomes lógicos dos
agentes e seu endereço de transporte para uma
plataforma de agentes
– Responsável por fazer a gestão do ciclo de vida
dos agentes
10 OUT 2003
21
Download

ppt