sistemas distribuídos

21
10 OUT 2003 1 Sistemas Distribuídos Agentes de Software

Upload: robert-butler

Post on 02-Jan-2016

23 views

Category:

Documents


1 download

DESCRIPTION

Sistemas Distribuídos. Agentes de Software. 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. - PowerPoint PPT Presentation

TRANSCRIPT

10 OUT 2003 1

Sistemas Distribuídos

Agentes de Software

10 OUT 2003 2

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 3

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 4

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 5

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 6

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 7

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 8

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 9

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 10

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 11

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 12

Uso de agentes

• Agentes para assistência ao utilizador

• Agentes para estruturas organizacionais– simulação de situações ou organizações

10 OUT 2003 13

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 14

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 15

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 16

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 17

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 18

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 19

Arquitectura de agentes

Owner

Agent Platform Agent Communication Channel

1..11..* 1..11..*

FIPA98 Agent Management Reference Model2/19/98 GAM

Agent Request BrokerAgent

Belief : typeUncertainty : typeIntention : type

1..*

0..*

1..*

0..*

1..1

0..*

1..1

0..*

<<Queries>>

Wrapper Agent NonAgent Software

10 OUT 2003 20

Arquitectura de agentesFIPA98 Agent Platform2/19/99 GAM

Internal Platform Message Transport

Directory Facilitator

deregister()modify()register()search()

Agent Management System

authenticate()register-agent()deregister-agent()modify-agent()search-agent()query-platform-profile()

Agent Communication Channel

forward()

Agent Platform Security Manager

Agent Platform

10 OUT 2003 21

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