AGENTES INTELIGENTES Cedric Luiz de Carvalho 2/60 Introdução Envolvem estudos em várias áreas: Psicologia Sociologia Filosofia Ciência da Computação: Inteligência Artifical Cedric Luiz de Carvalho 3/60 Críticas “Qualquer coisa que possa ser feita com agentes (...) também pode ser feita em C”. Outras áreas da IA não obtiveram o sucesso esperado (SE, RN). O novo paradigma seria uma “válvula de escape”. Cedric Luiz de Carvalho 4/60 Críticas Tudo com o rótulo agente vende. Alguns softwares no mercado têm uma arquitetura nem complexa nem sofisticada - por quê então inteligentes? Cedric Luiz de Carvalho 5/60 Defesa Arquiteturas multi-agentes se distinguem por oferecer soluções razoáveis a custo aceitável para certa classe de problemas. Cedric Luiz de Carvalho 6/60 Defesa Os agentes tornam possível superar as diferenças entre os diversos tipos de redes e plataformas. Os agentes podem tratar melhor os problemas em ambientes distribuídos. Cedric Luiz de Carvalho 7/60 Conceito “Um agente inteligente é um software que ajuda as pessoas, agindo no seu lugar”- Don Gilbert - IBM Cedric Luiz de Carvalho 8/60 Tarefas dos Agentes Automatizar ações repetitivas; Analisar dados; Organizar dados de maneira inteligente; Fazer sugestões; Relembrar coisas; etc. Cedric Luiz de Carvalho 9/60 Propriedades Gerais Autonomia. Habilidade social. Reatividade. Iniciativa. Continuidade temporal. Orientação a Objetos. Cedric Luiz de Carvalho 10/60 Propriedades Específicas Mobilidade. Benevolência. Racionalidade. Adaptabilidade. Colaboração. Cedric Luiz de Carvalho 11/60 Programação Orientada a Objetos - POO Objetos: Porções do mundo real. Caracterizados por um estado e um comportamento. Interação: passagem de parâmetros. Estrutura interna: oculta aos demais objetos. Métodos: procedimentos para tratar mensagens. Ex.: um “cão” pode “latir” quando perturbado. Cedric Luiz de Carvalho 12/60 Programação Orientada a Agentes - POA Lida com objetos e agentes. Agentes: meta-objetos (caracterizados por estado e comportamento). Cedric Luiz de Carvalho 13/60 Programação Orientada a Agentes - POA Agentes: Possuem metas pré-definidas e orientam seu trabalho para satisfazê-las. Conseguem sintetizar planos para lidar com situações não previstas originalmente. Podem aprender com a experiência. Cedric Luiz de Carvalho 14/60 Princípios básicos da POO Encapsulamento: estruturas de dados ocultas. Herança: reutilização de código. Polimorfismo: correspondência dinâmica entre métodos e mensagens recebidas. Cedric Luiz de Carvalho 15/60 Princípios Básicos da POA Execução orientada a metas. Gerenciamento transparente dos objetos do domínio. Cedric Luiz de Carvalho 16/60 Agência e Inteligência Agência: autonomia e autoridade do agente. Cedric Luiz de Carvalho 17/60 Agência e Inteligência Inteligência de um agente: grau de raciocínio; capacidade de aprender padrões de comportamento; capacidade de aceitar declarações do usuário; capacidade de executar tarefas que lhe são delegadas. Cedric Luiz de Carvalho 18/60 Aplicações Aplicações atuais: na maioria são de natureza experimental e de fundamentação ad hoc. Cedric Luiz de Carvalho 19/60 Exemplos Agentes que automatizam caixas de correio eletrônico (total ou parcialmente). Agentes que pesquisam ou filtram listas de discussão. Agentes que agendam, registram e executam o flow-up de reuniões ou conferências on-line. Cedric Luiz de Carvalho 20/60 Outras Aplicações Gerenciamento de Sistema de Redes; Acesso e gerenciamento móvel; Acesso e gerenciamento de informação; Colaboração: infra-estrutura para compartilhamento de recursos e gerenciamento de equipes e produtos de seu trabalho. Cedric Luiz de Carvalho 21/60 Outras Aplicações Gerenciamento administrativo; Comércio eletrônico; Interfaces inteligentes. Cedric Luiz de Carvalho 22/60 Agentes Entidade: com metas; com ações; com domínio do conhecimento; situado em um ambiente. Cedric Luiz de Carvalho 23/60 Sistemas Multiagentes Subcampo da IA Princípios para a construção de sistemas complexos envolvendo múltiplos agentes. Mecanismos de coordenação do comportamento dos agentes independentes. Cedric Luiz de Carvalho 24/60 Taxonomia Computação Distribuída Inteligência Artificial IA Distribuída Resolução Distribuída de Problemas Sistemas Multiagentes Cedric Luiz de Carvalho 25/60 Taxonomia Computação distribuída: Vários processos compartilham dados, mas não controle. Foco: paralelização de baixo nível ou sincronização. Cedric Luiz de Carvalho 26/60 Taxonomia IA Distribuída: Controle inteligente; Dados distribuídos. Foco: resolução de problemas, comunicação e coordenação. Cedric Luiz de Carvalho 27/60 Taxonomia Resolução distribuída de problemas: Decomposição de tarefas; Síntese da solução; Gerenciamento da informação. Cedric Luiz de Carvalho 28/60 Taxonomia Sistema Multiagentes: Coordenação de comportamento; ou Coordenação de gerenciamento. Cedric Luiz de Carvalho 29/60 Comunicação Taxonomia dos MAS Aumento da Complexidade Poder e Centralização. Centralizado (único agente) Heterogêneo, com comunicação. Heterogêneo, sem comunicação. Heterogeneidade Homogêneo, sem comunicação. Cedric Luiz de Carvalho 30/60 Taxonomia dos MAS Agentes Homogêneos e não comunicantes Reativos / deliberativos. Perspectiva local / global. Modelagem dos estados dos outros agentes. Como afetam os outros agentes. Cedric Luiz de Carvalho 31/60 Taxonomia dos MAS Agentes Heterogêneos e não comunicantes Benevolência / competitividade. Estáticos / evolutivos. Modelagem das metas, ações e conhecimento dos outros agentes. Gerenciamento de recursos – ações interdependentes. Convenções sociais. Papéis desempenhados Cedric Luiz de Carvalho 32/60 Taxonomia dos MAS Agentes Heterogêneos comunicantes Entendimento mútuo. Planejamento de atos de comunicação. Benevolência / competitividade. Gerenciameto de recursos – esquema de coordenação. Compromentimento / descomprometimento. Cedric Luiz de Carvalho 33/60 Por quê MAS? Se existe diferentes pessoas ou organizações com diferentes metas e informações particulares. Um sistemas multiagente para tratar seus interesses. Cedric Luiz de Carvalho 34/60 Por quê MAS? Múltiplos agentes: Pode-se implementar paralelismo – aumento de performance. Cedric Luiz de Carvalho 35/60 Paralelismo Diferentes tarefas ou habilidades atribuídas a diferentes agentes. Redundância: melhora a tolerância a falhas. Cedric Luiz de Carvalho 36/60 Escalabilidade Sistema inerentemente modular. Muito fácil acrescentar novos agentes – novas capacidades. Cedric Luiz de Carvalho 37/60 Implementação Programação modular: mais simples Cedric Luiz de Carvalho 38/60 Agente único ou Sistema Multiagente Agente único: o agente modela a si mesmo, o ambiente e suas interações. Se existem outros agentes – são considerados como parte do ambiente. Entidades independente, com suas metas, ações e conhecimento. Cedric Luiz de Carvalho 39/60 Agente Único Ambiente Sensores Atuadores •Metas •Ações •Domínio do Conhecimento Agente Cedric Luiz de Carvalho 40/60 Agente único ou Sistema Multiagente Sistema Multiagente: Vários agentes existem, cada um com suas metas e ações. Incerteza: agentes intencionalmente afetam o ambiente de uma maneira não previsível: sistema dinâmico. Cedric Luiz de Carvalho 41/60 Múltiplos Agentes Ambiente Sensores Agente •Metas •Ações •Domínio do Conhecimento Sensores Atuadores •Metas •Ações •Domínio do Conhecimento Agente Cedric Luiz de Carvalho 42/60 Agentes homogêneos e não comunicantes Mesma estrutura interna; Mesmas metas; Mesmo domínio do conhecimento; Mesmas possíveis ações. Cedric Luiz de Carvalho 43/60 Agentes homogêneos e não comunicantes Diferença entre os agentes: Entrada dos sensores; Ação real que executam – depende de sua posição no mundo. Cedric Luiz de Carvalho 44/60 Agentes homogêneos e não comunicantes Diferença entre os agentes: Entrada dos sensores; Ação real que executam – depende de sua posição no mundo. Cedric Luiz de Carvalho 45/60 Agentes homogêneos e não comunicantes Itens a serem considerados: Reativos / deliberativos. Reativos: comportamento pré-definido: similar aos reflexos – não mantém estados internos. Deliberativos: buscam em um espaço de comportamentos, mantém um estado interno e podem prever os efeitos de suas ações. Cedric Luiz de Carvalho 46/60 Agentes homogêneos e não comunicantes Itens a serem considerados: Perspectiva local / global. Todos os agentes têm uma visão global: não tentam obter um recurso já em uso, ou Os agentes têm uma visão limitada do mundo e tentam obter diferentes recursos. Cedric Luiz de Carvalho 47/60 Agentes homogêneos e não comunicantes Itens a serem considerados: Modelagem dos estados dos outros agentes. Finalidade: prever suas ações. Mesmo se os agentes são homogênios, suas ações futuras podem não ser previsíveis. Cedric Luiz de Carvalho 48/60 Agentes homogêneos e não comunicantes Itens a serem considerados: Como afetam os outros agentes. Podem ser detectados, pelos sensores dos outros. Podem alterar o ambiente – alterando a entrada dos sensores dos outros agentes. Podem alterar o ambiente – mudando o efeito das ações dos outros agentes. Cedric Luiz de Carvalho 49/60 Agentes heterogêneos e não comunicantes Podem ter diferentes metas. Podem ter diferentes modelos de domínio. Podem executar ações diferentes. Cedric Luiz de Carvalho Agentes heterogêneos e não comunicantes 50/60 Itens a serem considerados: Benevolência / competitividade. Agentes podem tentar ajudar outros agentes a atingirem suas respectivas metas ou ser egoístas e somente considerarem suas próprias metas ao realizar suas ações. Agentes egoístas podem ser eficientes e mais próximos dos agentes biológicos. Cedric Luiz de Carvalho Agentes heterogêneos e não comunicantes 51/60 Itens a serem considerados: Estáticos / evolutivos. Ambientes dinâmicos – agentes precisam evoluir. Cedric Luiz de Carvalho Agentes heterogêneos e não comunicantes 52/60 Itens a serem considerados: Modelagem das metas, ações e conhecimento dos outros agentes. Sistema homogêneo – a modelagem ajuda a prever as ações do outros. Sistema heterogêneo – modelagem mais difícil Esta modelagem pode ser feita pela observação das ações – pode haver aprendizado. Cedric Luiz de Carvalho Agentes heterogêneos e não comunicantes 53/60 Itens a serem considerados: Gerenciamento de recursos Usando o “aprendizado por reforço” agentes heterogêneos podem atingir uma equilíbrio de carga sem a necessidade de controle central nem comunicação entre os agentes. Os agentes observam quanto tempo uma tarefa toma quando ela é escalonada sobre um recurso e é dado incentivos para explorar processadores que não foram alocados que que tiveram desempenho pobre no passado. Cedric Luiz de Carvalho 54/60 Agentes que se comunicam Com a comunicação, sistemas podem se tornar arbitrariamente complexos e arbitrariamente centralizados, onde um agente assume todo o controle. O bandwidth da comunicação pode se tornar extremamente baixo. Cedric Luiz de Carvalho 55/60 Agentes que se comunicam Itens a serem considerados. Entendimento mútuo. Planejamento dos atos de comunicação. Benevolência / competitividade. Gerenciamento de recursos Comprometimento / descomprometimento. Cedric Luiz de Carvalho 56/60 Agentes que se comunicam Itens a serem considerados. Entendimento mútuo. Linguagens e protocolos. Ex.: Conteúdo da informação - KIF. Formato da mensagem- KQML. Convenções de coordenação - COOL. Cedric Luiz de Carvalho 57/60 Agentes que se comunicam Itens a serem considerados. Planejamento dos atos de comunicação. Quando um agente envia uma mensagem a outro agente, isto provoca um efeito como provocaria qualquer outra ação sua. Quando combinado com modelos de outros agentes, o efeito do ato de comunicação pode ser alterar a crença do agente a respeito do estado de outro(s) agente(s). Cedric Luiz de Carvalho 58/60 Agentes que se comunicam Itens a serem considerados. Benevolência / competitividade. Cedric Luiz de Carvalho 59/60 Agentes que se comunicam Itens a serem considerados. Gerenciamento de recursos. Cedric Luiz de Carvalho 60/60 Agentes que se comunicam Itens a serem considerados. Comprometimento / descomprometimento. Quando os agentes se comunicam podem decidir cooperar em uma data tarefa ou um período de tempo: se compromentem. Perseguir uma meta, de uma dada maneira. Deve haver meios de um agente “acreditar” nos outros. Cedric Luiz de Carvalho 61/60 Atividade 1 Leia o artigo original de Turing sobre IA (Computing Machinery and Intelligence (Mind, Vol. 59, No. 236, pp. 433-460), e faça um resumo (no máximo 20 linhas) sobre os principais tópicos abordados. No artigo, Turing discute várias objeções potenciais a suas propostas e ao seu teste de inteligência. Que objeções ainda têm algum peso? Suas refutações são válidas? Referência: http://cogsci.ucsd.edu/%7easaygin/tt/ttest.html Cedric Luiz de Carvalho 62/60 Atividade 2 Todo ano, o prêmio Loebner é entregue ao programa que chega mais perto de ser aprovado em uma versão do Teste de Turing. Qual o último vencedor do prêmio Loebner de 2005. Que técnicas ele utiliza? Que avanço o programa representou no estado da arte em IA? Referência: http://www.loebner.net/Prizef/loebner-prize.html Cedric Luiz de Carvalho