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

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

Agentes: Conceitos e Princípios

Apresentações semelhantes


Apresentação em tema: "Agentes: Conceitos e Princípios"— Transcrição da apresentação:

1 Agentes: Conceitos e Princípios
Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

2 Inteligência Artificial
Inteligência Artificial (IA): como começou. Ênfase da inteligência é baseada em um comportamento humano individual. O foco de atenção volta-se à representação de conhecimento e métodos de inferência. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

3 Agentes - Histórico Anos 80: a comunidade de IA, desencorajada pela falta de progresso após 30 anos, começou a explorar novas áreas onde sistemas de IA pudessem ter um domínio mais dinâmico. IA evoluiu de resultados simbólicos em mundos artificiais para interações complexas com o mundo físico, através do conceito de agentes. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

4 Terminologia surgida:
Agentes - Histórico Ao mesmo tempo, estava se formando a comunidade de agentes de software, explorando o desenvolvimento de partes de código menores e mais confiáveis, para se mover entre dois ambientes distintos Terminologia surgida: agentes inteligentes, interfaces inteligentes, interfaces adaptativas, knowbots, softbots, userbots, taskbots, personal agentes e network agentes Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

5 Categorias de Agentes Inteligentes
agens Hardware Agents (e.g. robot) Human Agents (e.g. travel agent) Software agents Information agents Cooperation agents Transaction agents

6 A idéia é o software passar a ser um assistente ao usuário.
Agentes A idéia é o software passar a ser um assistente ao usuário. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

7 Inteligência Artificial Distribuída
Inteligência Artificial Distribuída (IAD): Baseada em comportamento social Ênfase é para cooperações, interações e para o fluxo de conhecimento entre unidades distintas “Inteligência” cresce com o número de “entidades” inteligentes Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

8 Artificial Inteligence
Subáreas da IAD Distributed Artificial Inteligence Paralell AI Distributed Problem Solving Multi-Agent Systems

9 Orientação a Objetivos
Agentes Orientação a Objetivos Deve ser capaz de lidar com tarefas complexas em alto nível. A decisão de como uma tarefa é melhor subdividida em tarefas menores, e em qual ordem e de que modo devem ser executadas, deve ser feita pelo próprio agente. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

10 Inteligência Artificial Distribuída
A inteligência artificial distribuída pode ser dividida em duas sub-áreas, nas quais os agentes tem um papel muito importante: Resolução Distribuída de Problemas (RDP) Sistemas Multi-Agentes (SMA) Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

11 Resolução Distribuída de Problemas
RDP: Os agentes são projetados especificamente para resolver aquele problema ou uma classe de problemas. Os agentes cooperam uns com os outros, dividindo e compartilhando conhecimento sobre o problema e sobre o processo de obter uma solução. Sob um ponto de vista externo, um sistema RDP é visto como uma unidade. O processo de coordenação das ações dos agentes é definido em tempo do projeto. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

12 Sistemas Multiagentes - SMA
SMA: Não para um problema específico, mas para um domínio específico. Coordenar o comportamento inteligente de um conjunto de agentes autônomos, mais “antigos” do que o problema em particular Raciocínio: Sobre ações e o processo de coordenação em si. Arquiteturas mais flexíveis; organização do sistema sujeita à mudanças (adaptação às variações no ambiente e/ou no problema) Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

13 Não há uma definição unificada e universal para "agente”.
Agentes no Mundo Real Não há uma definição unificada e universal para "agente”. uma pessoa autorizada a agir em nome de outra. uma pessoa que gerencia uma agência, pode ser chamado de um agente. um representante de uma agência de viagens. uma substância que causa reação química. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

14 Entidade inteligente e autônoma.
Agentes de Software Programa de software que auxilia o usuário na realização de alguma tarefa ou atividade. Entidade inteligente e autônoma. Programa que funciona em background, e desenvolve tarefas autônomas conforme delegadas pelo usuário. Programas que travam diálogos, negociam e coordenam transferência de informações. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

15 Agentes de Software Agente é uma entidade cognitiva, ativa e autônoma, ou seja, que possui um sistema interno de tomada de decisões, que age sobre um mundo e sobre os outros agentes que o rodeiam e, por fim, que é capaz de funcionar sem necessitar de algo ou de alguém para o guiar (tem mecanismos próprios de percepção do exterior). Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

16 Agentes de Software Computação Distribuída e Mobilidade
João Bosco Mangueira Sobral

17 Algumas características esperadas foram estabelecidas.
Agentes Não tem consenso sobre uma definição formal de agente tal que englobe todo o espectro possível. Algumas características esperadas foram estabelecidas. A analogia feita com agentes no mundo real nos leva a conceituar um agente como uma entidade ativa, sempre ao lado do usuário e que possui conhecimento especifico sobre um determinado domínio de aplicação. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

18 Devem ter bases de conhecimento.
Agentes Inteligentes Devem ter bases de conhecimento. Devem ter mecanismos de raciocínio. Devem ser capazes de reconhecer situação em que devam se ativar, sem que o usuário perceba, ou seja, de forma transparente ao usuário. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

19 Características de Agentes Inteligentes
Environment Agente Communication Autonomy Learning Mobility Cooperation Character Proactivity Reactivity Coordination Goal-oriented

20 Reatividade Um agente deve ser capaz de reagir apropriadamente a influências ou informação de seu ambiente. Este ambiente pode consistir de outros agentes, usuários humanos, fontes de informação externas ou objetos físicos.

21 Reatividade Reatividade forma um dos requisitos fundamentais para um agente inteligente e deve ser suportada para algum grau por todos os agentes. Esses agentes são chamados agentes reativos.

22 Agentes - Propriedades
 Reatividade Agentes percebem seus ambientes (o mundo físico, um usuário via uma interface gráfica, uma coleção de agentes, a Internet, ou talvez todos esses combinados), e respondem numa maneira oportuna à mudanças que ocorrem nele. Os agentes percebem e reagem às mudanças no seu ambiente; eles respondem às alterações do ambiente. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

23 Reatividade O agente deve ter sensores e possuir seu próprio modelo interno de seu ambiente (do qual ele pode tirar conclusões por ele próprio) no sentido de ser capaz a reagir a mudanças no ambiente. Esse são os chamados agentes deliberativos

24 Agentes Reativos Um agente reativo comporta-se num modo estímulo-resposta, isto é, ele não tem memória da ação realizada no passado nem qualquer previsão da ação a ser tomada no futuro. Sociedades de agentes reativos têm usualmente um grande número de membros. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

25 Proatividade É um nível acima da reatividade. Um agente inteligente não apenas reage a mudanças de seu ambiente, porém ele próprio tem iniciativa sob circunstâncias específicas. Este é chamado comportamento proativo.

26 Orientado à Meta As metas formam o escopo de processamento potencial do agente, porque elas representam as alternativas de processamento disponíveis em um instante de tempo específico. É um dos fatores que constitui o estado mental dos agentes deliberativos.

27 Orientado à Meta A característica de orientação à meta está proximamente relacionada à de proatividade. A capacidade do próprio agente tomar iniciativa requer que o agente tenha metas bem-definidas ou mesmo um sistema de metas complexo.

28 Orientado à Meta Somente assim, faz sentido para um agente influenciar seu ambiente e assim alcançar suas próprias metas.

29 Raciocínio e Aprendizado
Todo agente deve ter um certo grau mínimo de inteligência, no sentido de ser projetado como sendo um agente. Contudo, uma variação muito ampla, quanto ao grau de inteligência pode ser considerada, desde agentes simples com inteligência limitada, até agentes que formam sistemas altamente inteligentes.

30 Raciocínio e Aprendizado
A inteligência de um agente é formado de três principais componentes: sua base de conhecimento interna, a capacidade de raciocínio baseada sobre o conteúdo da base de conhecimento e a habilidade do agente para aprender ou adaptar-se a mudanças de seu ambiente (comportamento adaptativo).

31 Aprendizagem Agentes precisam ser autônomos e demonstrarem raciocínio. Para manter estas capacidades, o agente precisa ter alguns mecanismos para avaliar o estado atual de seu domínio externo e incorporar isto em suas "decisões" sobre futuras ações. Eles examinam o "sucesso" de ações prévias e adaptam suas ações para melhorar a probabilidade de atingir prosperamente suas metas. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

32 Aprendizagem Um agente é capaz de aprender quando possui a capacidade de acumular conhecimento baseado em experiência passada, e conseqüentemente modificar seu comportamento em resposta à novas situações. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

33 Autonomia Autonomia é a capacidade do agente de perseguir suas metas, independentemente de seu usuário, isto é, sem interações ou comandos do seu ambiente. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

34 Autonomia Autonomia é a capacidade de tomar ações conduzindo para o término de algumas tarefas ou objetivos, sem a interferência do usuário final. Autonomia é a habilidade de exercer controle sobre suas próprias ações. Agentes exercem controle exclusivo sobre seus estados e comportamentos internos. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

35 Agentes Autônomos Agentes autônomos são sistemas capazes de apresentarem autonomia, propondo-se a agir no mundo real. Um agente autônomo é um sistema situado dentro e em uma parte de um ambiente que sente o ambiente e age sobre ele, através do tempo, em perseguição de sua própria agenda e para efetuar o que ele sente no futuro. Computação Distribuída João Bosco Mangueira Sobral

36 Capacidade de transportar-se numa rede de uma máquina para outra;
Mobilidade Capacidade de transportar-se numa rede de uma máquina para outra; Habilidade para movimentar-se pela rede eletrônica; Habilidade para mover-se de uma localização para outra, enquanto preservam seu estado interno. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

37 Continuidade Temporal
Os agentes executam continuamente processos que tanto podem estar ativos, em foreground, quanto adormecidos, em background. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

38 Agentes comunicam-se com outros agentes.
Comunicação Capacidade de trocar informações com outras entidades (agentes, humanos, objetos, ambiente) Agentes comunicam-se com outros agentes. Eles devem acessar informações sobre o estado atual do ambiente externo, via os repositórios dessa informação, que podem ser outros agentes (pedido/levantamento com um simples e conciso conjunto de respostas possíveis ou comunicação complexa com respostas variáveis) Computação Distribuída João Bosco Mangueira Sobral

39 Comunicação Eles devem acessar informações sobre o estado atual do ambiente externo, via os repositórios dessa informação, que podem ser outros agentes (pedido/levantamento com um simples e conciso conjunto de respostas possíveis ou comunicação complexa com respostas variáveis)

40 Adaptabilidade Um agente deve ser capaz de ajustar-se às preferências de seus usuários. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

41 Colaboração Não deve aceitar instruções sem considerações, mas deve prever erros, omissão de informações importantes e/ou informações ambíguas, e no caso, fazer perguntas ao usuário. Deve ser permitido a um agente recusar executar certas tarefas. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

42 Artificial inteligence
Áreas de Influência Decision Theory communication Network Autonomy Learning capability Mobility inteligence Artificial CHARACTERISTICS Proactivity communication Reactivity cooperation character Distributed Artificial inteligence Psichology

43 Agentes - Propriedades
 Sociabilidade Interação com outros agentes (e possivelmente humanos) através de algum tipo de linguagem para comunicação de agente.  Veracidade Suposição de que um agente não comunicará informações falsas. O usuário deve ser altamente confiante de que seu agente atuará e relatará verdadeiramente, e atuará para o próprio bem do usuário. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

44 Agentes - Propriedades
 Benevolência Suposição de que um agente não terá objetivos conflitantes, e que agente sempre tentarão fazer o que lhes foi pedido.  Racionalidade Suposição de que um agente atuará para atingir seus objetivos, e não atuará de modo que impeça que seu objetivo seja alcançado. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

45 Noção fraca e forte de Agente
Estas propriedades estão agrupadas em torno de duas noções, identificada como fraca e forte. Noção fraca de Agente Autonomia Habilidade Social Reatividade Iniciativa Continuidade Temporal Orientação à Metas Computação Distribuída João Bosco Mangueira Sobral

46 Nocão forte de Agente "Agentes Inteligentes" são objetos de pesquisa nos campos da psicologia, sociologia e ciência da computação. Alguns consideram que o termo agente possui um significado mais específico e forte e devem ser implementados usando conceitos que são aplicados mais normalmente aos humanos. Noção forte de agente: Mobilidade Benevolência Racionalidade Adaptabilidade Colaboração Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

47 Agentes - Classificação
A classificação apresentada tenta oferecer uma noção das propriedades básicas que um agente deve ter para ser considerado como tal. Para poder dizer que um agente é de tal forma, ele precisa atender algumas dessas características. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

48 Utilização de Agentes Os agentes tem sido muito usados nas últimas décadas em muitas áreas de aplicações, como Interface Gráfica (Win95 Wizards), Aplicações como Assistente Ortográfico do Word), Sistemas Especialistas. O uso de agentes móveis é novo. Os candidatos são por exemplo: agentes de viagem (General Magic Corporation's Telescript agentes) e agentes de colaboração comercial (Crystaliz, Inc.'s MuBot agentes). Na literatura existem linguagens para criação de agentes móveis: Java da Sun; Telescript da General Magic; Safe-Tcl da Sun e Object Rexx da IBM. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

49 Coordenação de Agentes
Coordenação é o ato de gerenciar interdependências entre atividades dos agentes. Pode ser dividida três partes: especificação (criação de objetivos compartilhados), planejamento (expressando conjunto de tarefas ou estratégias para acompanhamento dos objetivos) e seqüenciamento (distribuindo tarefas, criando planos e seqüências compartilhadas, alocando recursos, ...). Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

50 Agentes Aprendizes / Adaptativos
Um agente-aprendiz observa as ações do usuário em background, encontra padrões repetitivos e automatiza-os. Agentes-aprendizes são, em particular, aplicáveis quando o domínio da aplicação contém comportamento repetitivo significante. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

51 Agentes Cognitivos Agentes cognitivos são baseados em modelos de organizações sociais, no sentido de sociedades humanas (grupos, hierarquias, ... ). Com os agentes, há uma representação explícita de ambiente e de membros da sociedade. Eles podem raciocinar sobre as ações tomadas no passado e planejar as ações a serem tomadas no futuro. Do ponto de vista de uma sociedade, ela é geralmente composta de um número pequeno de membros. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

52 Agentes Inteligentes No mundo científico, há muita discussão do que representa ser inteligente. Considerar um ser humano inteligente implica em classificá-lo em níveis de inteligência. Os agentes também possuem níveis de inteligência (quanto mais se aproximam de algumas propriedades apresentadas, maior é a condição de desempenhar suas tarefas e, por isso maior é o seu grau de inteligência) Agentes inteligentes podem se descritos por três dimensões de grau de autonomia, grau de inteligência e até mobilidade. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

53 Agentes Inteligentes O grau de autonomia e autoridade colocado no agente (medido qualitativamente pela natureza da interação). No mínimo, precisa funcionar assincronamente. Inteligência é o grau de raciocínio e a habilidade do agente para aceitar a declaração de objetivo do usuário e realizar a tarefa delegada a ele. No mínimo, deve haver algumas declarações de preferências. Mais acima, numa escala de inteligência estão os sistemas de aprendizagem e adaptação ao seu ambiente. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

54 Agentes Inteligentes A mobilidade aparece numa terceira dimensão (agente é projetado para atuar em uma rede). Mobilidade é o grau para o qual agentes por si próprios navegam pela rede. Alguns agentes podem ser estáticos, outros residem numa máquina cliente (para gerenciar a interface do usuário, por exemplo) ou instanciado no servidor. Mobilidade traz a questão de segurança, privacidade e o desafio do gerenciamento. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

55 Agentes - Protocolos de Agentes
Se os agentes interagem em uma rede remota de comunicação, eles devem possuir um protocolo de comunicação. Este protocolo é responsável pelas informações que trafegam pela rede local ou remota. Os protocolos definem os passos de diálogos a serem executados pelos agentes em cada tipo de interação possível numa sociedade de agentes. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

56 Agentes - Sistemas Multi-Agentes
Como os agentes devem ser organizados para conseguirem colaborar entre si ? Duas abordagens diferentes tem sido exploradas: comunicação direta - os agentes mesmos cuidam da coordenação - e a coordenação auxiliada, na qual há programas especiais para organizar a coordenação. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

57 Agentes - Sistemas Multi-Agentes
Os agentes se comunicam através de um supervisor, que comunica com os diversos supervisores e seus agentes. Alguns requisitos básicos, permitindo que os agentes possam: pedir informações de outros agentes, observar as atividades de outros agentes, interceptar e mudar os pedidos destinados a outros agentes, estabelecer comunicação com agentes sob o controle de outros supervisores. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

58 Arquitetura de Agentes Inteligentes

59 Agentes - Arquitetura Todas as propriedades que um agente apresenta devem estar implícitas em sua arquitetura. O conjunto dos módulos e suas interações devem prover uma resposta para a questão de como os sensores de dados e o estado interno corrente do agente determinam suas ações e futuros estados internos. Uma arquitetura abrange técnicas e algoritmos para suportar esta metodologia. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

60 Arquitetura de Agentes
As arquiteturas podem ser divididas em três áreas: a arquitetura deliberativa (abordagem clássica do Paradigma de IA), a arquitetura reativa. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

61 Visão Mínima Agente como uma caixa preta.
Recebe entradas utilizando percepção. Usa inteligência para processar as entradas Produz saidas, normalmente na forma de ações. Necessário inteligência para que as caracteristicas de autonomia, cooperacao e proatividade sejam possiveis. Aceita pela comunidade científica. Bastante incompleta do ponto de vista arquitetônico.

62 Agente como uma Caixa Preta
Processamento Inteligente Entradas (Percepção) Saídas (Ações)

63 Processo de Trabalho de um Agente Inteligente
Interação Interação Processamento da Informação Ação Fusão Da Informação Entrada Saída Processamento Inteligente

64 Processo de Trabalho de um Agente Inteligente
Possui um ou mais módulos de interação com o ambiente O ambiente pode ser outros agentes, usuarios humanos ou quaisquer outras fontes de informações Para cada tipo de ambiente, o agente possui um módulo de interação normalmente adaptado às características do ambiente correspondente Interação X Processar e interpretar as infomações e definir suas proprias metas.

65 Processo de Trabalho de um Agente Inteligente
Fusão da Informação Integrar a informação à base de conhecimentos do agente de forma apropriada. Receber informações diferentes de fontes diferentes e interpretá-los de forma similar. Reconhecer e corrigir inconsistências

66 Processo de Trabalho de um Agente Inteligente
Processamento da Informação Módulo central do Agente Uma vez aceita a infomação, esta deve ser processada Reflete a verdadeira funcionalidade do agente Avaliar os dados disponíveis e definir planos de ação específicos Repassar o plano de ação para o módulo de ação

67 Processo de Trabalho de um Agente
Ação Utiliza os serviços dos módulos de interação quando é necessário interagir com o ambiente. Encarregado da monitoração da execução da ação.

68 Agentes Deliberativos
Possui um modelo simbólico do ambiente e capacidade de raciocínio lógico como base para a tomada de ações inteligentes, seguindo os modelos da IA clássica. É dificil para estes agentes armazenarem novas informações e conhecimentos sobre o ambiente, além do que já tem. Capacidade de tomar decisões lógicas. Utiliza o conhecimento contido no modelo para modificar seu estado interno.

69 Agentes Deliberativos
knowlodge Beliefs Desires Plans Goals Intentions

70 Agentes Deliberativos
Beliefs (crenças) : Contém as visões fundamentais de um agente com relação ao seu ambiente. Desires: São derivados diretamente das Beliefs, contém os julgamentos de situações futuras do agente. Goals (Metas): Subconjunto dos Desires contendo somente os estados que o agente realmente pode assumir. Intentions (Intenções): Subconjunto das metas; se um agente decide seguir uma meta específica, esta meta torna-se uma Intenção. Plans (Planos): Combina as Intentions dentro de unidades consistentes.

71 Arquitetura de um Agente Deliberativo
Interaction Executor Scheduler Planner Output (actions) Manager Reasoner Intentions Goals Desires Input (perception) Knowledge Base (symbolic environment model) Information Receiver

72 Componentes da arquitetura deliberativa
A base de conhecimento contém o modelo simbólico do ambiente. Os desires, metas e intenções são derivados da base de conhecimento. O Planner toma as intenções e as combina para formar um plano completo. O Scheduler recebe os planos correntes do Planner. Todo plano consiste de um número ações únicas que devem ser processadas sequencialmente ou em paralelo. O Scheduler deve decidir quando ações esepecíficas são para ser executadas.

73 Arquitetura de Agentes Reativos
Sensores Módulo de Competência Atuadores Módulo de Competência Entrada Saida Módulo de Competência

74 Agentes Reativos Não possuem um modelo simbólico interno do ambiente.
Menor capacidade para realizar processamentos de raciocínios complexos. Agente compacto, tolerante a falhas e sobretudo flexível. Retiram sua inteligência a partir de interações com o ambiente. Tolerância a falhas devido à descentralização dos módulos de competência.

75 SMAs Reativos R. Brooks 86 - Arquitetura de subsunção (taxonomia) Controlar robôs físicos (dinamismo e desconhecimento). Inteligência pode ser gerada sem conhecimento explícito ou raciocínio abstrato! É uma propriedade emergente de certos sistemas complexos. A inteligência real está situada no mundo, e não em sistemas desincorporados ( especialistas, provadores, etc)! Comportamento inteligente emerge das interações com o ambiente. Competição entre camadas hierárquicas.

76 SMAs Reativos - Características
Não há representação explícita de conhecimento. Não há representação do ambiente. Não há memória das ações. Os agentes possuem estados internos. 3 modelos : Funcionalidade emergente Eco-resolução PACO (PAdrões de COordenação)

77 Divisão de soluções em IAD
Resolução Distribuída de Problemas - RDP Sistemas Multiagentes - SMAs Reativos Cognitivos

78 Chamada de Procedimentos Remotos
Servidor 1 Servidor 2 Servidor 3 Chamada remota de procedimentos Chamada remota de procedimentos Agente Cliente

79 Programação com Agentes Estacionários
Programas tradicionais e agentes estacionários usam RPC para trabalho remoto. A comunicação entre dois módulos de programas com RPC é o mesmo como a chamada de um procedimento de um módulo remoto.

80 Programação Remota Agente Servidor 1 Servidor 2 Servidor 3 Cliente

81 Programação Remota A própria chamada remota de procedimento do cliente é é transferida ao servidor em questão e então executada localmente. Assim, as chamadas de procedimento remoto tornam-se chamadas de procedimento local.

82 protocolos proprietários,
RCP X RP Comunicação Propriedades Agentes Programação Remota inteligência alta Móvel Chamada remota de procedimentos SQL Queries inteligência baixa, protocolos proprietários, ambiente fechado Estacionário

83 Vantagens de Agentes Móveis
Alguma redução de carga da rede. Redução da utilização de recursos no cliente. Processamento Assíncrono. Serviços reconfiguráveis. Comportamento Ativo. Estrutura Descentralizada.

84 Arquitetura de Software de Agentes Móveis
lógico real real Software Base Software Base Base de Dados migração Sistema Operacional Sistema Operacional

85 Camadas do Software Base para Agentes Móveis
Camada do Agente Funcionalidades Basicas (API) Mobilidade, Negociação, Comunicação, Filtragem, Identificação Camada de Segurança Protocolos de Segurança Criptografia Assinatura Digital Firewalls Camada de Comunicação Protocolos, Formato de Documentos, RPC, Programação Remota, RMI, serialização de Objetos

86 Camada do Agente Execução e monitoramento de todos os agentes ativos em um computador. Garantir aos agentes um ambiente de trabalho padrão e a execução independente dos agentes. Comando Parâmetros Função Move Agent-id, address Movimento Identify Agent-id, personal-key, agent-type Identificação getAvaliableAgent Agent-id, agent-type Determinar agentes disponíveis Contact Agent-id, agent-id Contactar agentes locais sendCommand Agent-id, agent-id, command Invoca função em outro agente sendMessage Agent-id, agent-id/agent-type, [address], message Envia mensagem para outro agente

87 Camada de Segurança Garantir que um objeto nao possa ser lido por pessoas não autorizadas durante sua transmissão. Garantir que objetos não autorizados acessem o sistema.

88 Camada de Comunicação Especificações de protocolos de comunicação e formato e objetos Garantir as funções básicas para a comunicação entre computadores remotos e a transmissão de documentos ou objetos entre estes computadores Utilizado para transferência de agentes Implementação e serviços como RPC, RP e serialização de objetos.

89 Agent layer Agent Agent Agent list agent-id, type, Personal key
(9) command (6) contact (10) command (7) contact (3) agent-type (5) agent-id (2) agent-data Agent layer (4) agent-id Agent list (8) agent-id;busy

90 Serialização de Objetos
Permite a conversão de um objeto em um stream de dados para que o mesmo possa ser transmitido através de uma rede para um computador remoto e a reconstrução do objeto a partir do stream de dados recebido.

91 Migração Tarefa mais complexa no uso de agentes móveis.
Um método deve ser disponibilizado para transportar objetos de programas, como os agentes móveis, entre dois computadores. É necessário determinar quais componentes do objeto serão transferidos durante a migração de um agente.

92 Migração A migração pode ocorrer de duas formas:
Migração transparente para os agentes envolvidos. O agente invoca o método move e a transferência é feita automaticamente pelas camadas de agente e de comunicação. O agente fica responsável por transformar seus componentes em uma forma persistente, de forma a permitir o envio do seu estado através da rede. O agente define qual a forma de representação do seu estado interno.

93 Agentes - Tipos de Agentes
Conselheiro: oferece ajuda e treinamento Guia: ajuda a navegação em bancos de dados e hipermídia Empregado: executa as atividades tediosas ou repetitivas Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

94 Agentes - Tipos de Agentes
Representante: trabalha na ausência do usuário, parecido ao agente Empregado. Por exemplo, pode fazer backups de arquivos de madrugada ou fazer pedidos de compras. Comunicador: trabalha com outros usuários e seus agentes. Pode, por exemplo, organizar reuniões, reunindo recursos e pessoas. Computação Distribuída e Mobilidadade João Bosco Mangueira Sobral

95 Propriedades dos Agentes
Para que o sistema seja considerado agente, ele não necessita apresentar todas as propriedades, mas algumas delas são recomendáveis. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

96 1) Anda está em fase de desenvolvimento
Agentes - Tendências Papel dos agentes no futuro e como eles serão construídos ... ? Porque ... 1) Anda está em fase de desenvolvimento 2) A maioria dos fatores e grupos que estão envolvidos exercem influência uns sobre os outros. Várias aplicações baseadas em agentes já facilitam a vida dos usuários na Internet, proporcionando o rápido desenvolvimento de áreas como comércio eletrônico, ensino à distância, gerenciamento de sistemas, correio eletrônico, busca de informação na WWW, entre outras. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral

97 Agentes - Tendências As universidades, centros de pesquisa e companhias, como a IBM e Microsoft, estão fazendo muita pesquisa. Para receber financiamento mais adiante, muitos pesquisadores e desenvolvedores destas companhias estão enfocando hoje em dia aplicações de agentes bastante básicas, demonstráveis rapidamente, como: Automatização parcial ou completa do correio eletrônico; Agentes que filtram novas informações que podem ser de interesse para seus usuários; Agentes que organizam reuniões baseado na informação de cada participante. Computação Distribuída e Mobilidade João Bosco Mangueira Sobral


Carregar ppt "Agentes: Conceitos e Princípios"

Apresentações semelhantes


Anúncios Google