Inteligência Artificial Universidade da Madeira Inteligência Artificial Agentes Inteligentes Agenda zO que é um Agente z Como Definir Agentes z Arquitectura dos Agentes 1 Inteligência Artificial Universidade da Madeira O que é um agente z Em geral um agente é qualquer entidade que: z z Percebe seu ambiente através de sensores (ex. câmaras, microfone, teclado, ...). Age sobre ele através de actuadores (ex. vídeo, impressora, braços, rodas, ftp, ...) Sensores Ambiente Percepções Agente ? modelo do ambiente Acções Actuadores O que é um agente? Definições formais z Russel & Norvig 2004 Um agente é qualquer entidade que percebe seu ambiente e através de sensores actua sobre esse mediante actuadores. Um agente é racional quando realiza a menor acção possível a partir dos dados percebidos; z Wooldridge 2004 Um agente inteligente é um sistema (hardware ou software) situado em um determinado ambiente, capaz de actuar de forma autónoma e racional dentro do ambiente para executar seus objectivos predeterminados; 2 Inteligência Artificial Universidade da Madeira O que é um agente? Definições formais z z z River 1996 Um agente é um programa de computador que funciona em background, e desenvolve tarefas autónomas conforme delegadas pelo utilizador; Michael Coen 1996 Agentes são programas que desenvolvem diálogos, negociam e coordenam transferência de informações; Virdhagriswaran 1995 Os agentes apresentam conceitos de habilidade para execução autónoma e habilidade para executar raciocínio orientado ao domínio. Exemplos de Agentes z Agente humano z z Sensores: Olho, ouvidos, pele, gosto, etc. Actuadores: Mãos, pés, pernas, boca, etc. z z Agente robot z z Sensores: Câmara, infravermelhos, pára-choques, etc. Actuadores: pinças, rodas, luzes, etc. z z Impulsionados pelos músculos. Usualmente impulsionados por motores. Agente software z z Sensores: Inputs Actuadores: Outputs 3 Inteligência Artificial Universidade da Madeira Agente Racional (McCarthy & Hayes 69, Newell 81) z Segue o princípio da racionalidade: dada uma sequência perceptiva, o agente escolhe, segundo os seus conhecimentos, as acções que satisfazem melhor o seu objectivo. z Racional NÃO É omnisciente; z Racional NÃO É clarividente; z Racional NÃO É necessariamente bem sucedido; z Existem limitações de: z z z z Sensores. Actuadores. Raciocinador (conhecimento, tempo, etc.). Agir para obter mais dados perceptivos é racional. Agente Racional (McCarthy & Hayes 69, Newell 81) Mas, como avaliar um agente? 4 Inteligência Artificial Universidade da Madeira Medida de Desempenho z Critério que define o grau de sucesso de um agente na realização de uma dada tarefa. z Esta medida deve ser imposta pelo exterior. z Objectiva / Subjectiva. z Quantitativa / Qualitativa. z Momento de avaliação (antes / depois). z Melhor / Pior / Média. Medida de Desempenho z Exemplo: z Ao atravessar uma rua deve-se observar se não vem carro das duas direcções, assim poderemos atravessar. Mas... z Não podemos condenar um agente que falha por não levar em conta algo que ele não pode perceber ou por uma acção que ele não é capaz de tomar z Agente que atravessa a rua sem olhar – não racional z A acção correcta seria olhar porque maximiza o desempenho 5 Inteligência Artificial Universidade da Madeira Propriedades dos Agentes (Wooldridge e Jennings) z Autonomia: agentes que operam sem a intervenção de humanos ou outros, e possuem algum tipo de controlo sobre as suas acções e estado interno; z Pró Actividade: agentes que não se limitam a agir em resposta ao seu ambiente. Eles são capazes de tomar a iniciativa e exibir comportamento direccionado por objectivos; z Reactividade: agentes que têm a percepção do seu ambiente e respondem rapidamente às alterações que nele ocorrem; z Habilidade Social: agentes que são capazes de interagir com outros agentes (e possivelmente com humanos) através de uma dada linguagem de comunicação de agentes. M. Wooldridge and N. R. Jennings. Intelligent Agents: Theory and Practice. In Knowledge Engineering Review 10(2), 1995. Outras Propriedades Desejáveis z Mobilidade. Capacidade de um agente se movimentar de um local para outro. Usualmente esta capacidade é mencionada no contexto de agentes de software e como tal a movimentação verifica-se no interior de uma rede de computadores. z Conhecimento e Crença. Possuir conhecimento consiste em possuir uma colecção de informação dinâmica e capacidade de raciocínio sobre essa informação. Uma crença representa a noção actual que o agente possui sobre determinado facto. São geralmente dinâmicas, isto é, podem alterar o seu valor de verdade com o tempo. 6 Inteligência Artificial Universidade da Madeira Outras Propriedades Desejáveis z Intenções e Obrigações. Intenções são objectivos de longo prazo do agente. Obrigações estão relacionadas com compromissos que o agente assumiu anteriormente. z Racionalidade. Um agente agirá de forma a atingir os seus objectivos e não agirá de forma a impedir que esses mesmos objectivos sejam atingidos. Em cada instante, face ao seu conhecimento e de acordo com as suas capacidades tentará executar a melhor acção para cumprir esses objectivos. Outras Propriedades Desejáveis z Inteligência. O estado de um agente é formalizado por conhecimento (i.e. crenças, objectivos, planos e assunções) e ele interage com outros agentes utilizando uma linguagem simbólica. Possui capacidade de raciocínio abstracto e de resolução de novos problemas e adaptação a novas situações. z Continuidade Temporal. O agente é um processo que é executado continuamente ao longo do tempo (persistente). 7 Inteligência Artificial Universidade da Madeira Outras Propriedades Desejáveis z Carácter. O agente possui uma personalidade credível e eventualmente possui também um “estado emocional”. z Aprendizagem. Capacidades de aprendizagem que fazem com que o agente adquira novo conhecimento e altere o seu comportamento baseado na sua experiência prévia. Estrutura de um Agente z Agente = programa + arquitectura z Programa Æ uma função que relaciona as percepções (entradas) do agente para acções (saídas). z Arquitectura Æ suporte dado a execução dos programas de agente. z z A aquisição de percepções (sensores) Execução de acções no ambiente (actuadores) 8 Inteligência Artificial Universidade da Madeira Agenda zO que é um Agente z Como Definir Agentes z Arquitectura dos Agentes Definindo Agentes z Percepções z Percepts z Acções z Actions z Objectivos z Goals z Ambiente z Environment 9 Inteligência Artificial Universidade da Madeira Exemplo: Agente da Policia raciocínio Agente Conhecimento: - leis - comportamento dos indivíduos,... Objectivo: - fazer com que as leis sejam respeitadas percepção Acções: - multar - apitar - parar, ... execução Ambiente Exemplo extraído de www.cin.ufpe.br/~in1006/2003/IntelligentAgents.ppt Exemplos Agente Diagnóstico médico Dados perceptivos Acções Sintomas, Perguntar, paciente, exames prescrever exames, respostas, ... testar Objectivos Ambiente Saúde do paciente, minimizar custos Paciente, gabinete, ... Análise de imagens de satélite Pixels imprimir uma categorização categorizar correctamente Imagens de satélite Tutor de português Palavras digitadas Imprimir exercícios, sugestões, correcções, ... Melhorar o desempenho do estudante Conjunto de estudantes Filtrador de mails mensagens Aceitar ou rejeitar mensagens Aliviar a carga de leitura do usuário Mensagens, usuários Motorista de táxi Imagens, velocímetro, sons travar, acelerar, dobrar, falar com passageiro, ... Músico de jazz Sons seus e de outros músicos, grades de acordes Escolher e tocar notas no andamento Segurança, Ruas, pedestres, rapidez, economia, carros, ... conforto,... Tocar bem, se divertir, agradar Músicos, publico, grades de acordes 10 Inteligência Artificial Universidade da Madeira Ambiente z Classes de Ambiente: Físicos: Robots z Software: Softbot z z As propriedades do ambiente determinam em grande parte o projecto do agente. Propriedades do Ambiente z acessível x inacessível z É acessível quando os sensores do agente conseguem perceber o estado completo do ambiente. z z Exemplo: Poker VS. Damas (Checkers) estático x dinâmico z É estático quando o ambiente não muda enquanto o agente está escolhendo a acção a realizar. z z Exemplo Civilization II VS. Age of Empires Semi-estático: o ambiente não muda enquanto o agente delibera, mas o "score" do agente muda. 11 Inteligência Artificial Universidade da Madeira Propriedades do Ambiente z determinista x não-determinista z É determinista quando o próximo estado do ambiente pode ser completamente determinado pelo estado actual e as acções seleccionadas pelo agente. z z Exemplo: Gamão (Backgammon) VS. Damas (Checkers) discreto x contínuo z É continuo quando as percepções e acções mudam em um espectro contínuo de valores. z Exemplo: ABS (Anti-Block System) Vs. BlackJack Propriedades do Ambiente z episódico x não-episódico z É episódico quando a experiência do agente é dividida em episódios. Cada episódio consiste em o agente perceber e então agir. Cada episódio não depende das acções que ocorreram em episódios prévios. z Exemplo: Roleta vs Xadrez 12 Inteligência Artificial Universidade da Madeira Exemplos de Ambientes estático discreto xadrez sem relógio Agente\Ambiente acessível determinista episódico Sim Sim Não Sim Sim xadrez com relógio Sim Sim Não Semi sim gamão sim não não sim sim motorista de táxi Não Não Não Não Não médico Não Não Não Não Não tutor Não Não Não Não Sim Analisador de imagem Sim Sim Sim Semi Não Sim Busca na web Não Não Sim Não Filtrador de mail Sim Não Sim Não Sim Músico Sim Não Não Não Não Outras Propriedades z agente único x agentes múltiplos z z z z z Palavras cruzadas – agente único. Xadrez – agentes múltiplos -> ambiente competitivo. Conduzir um táxi – agentes múltiplos ->ambiente cooperativo. A comunicação é necessária em multi-agentes. tamanho do ambiente z número de percepções, acções, objectivos. 13 Inteligência Artificial Universidade da Madeira Agenda zO que é um Agente z Como Definir Agentes z Arquitectura dos Agentes Algoritmo Básico de um Agente function ESQUELETO_DE_AGENTE(percepção):acção static: memória (memória do agente sobre o mundo) memória ← ACTUALIZA_MEMÓRIA(memória, percepção) acção ← ESCOLHA_A_MELHOR_ACÇÃO(memória) memória ←ACTUALIZA_MEMÓRIA(memória,acção) return acção z O agente percebe apenas uma coisa de cada vez e não uma sequência. z z Deve decidir se armazena a sequência ou não. O objectivo não faz parte da “template” (medido externamente). 14 Inteligência Artificial Universidade da Madeira Arquitectura de Agentes Sensores Actuadores Gráficos originais: http://ia.ucpel.tche.br/~lpalazzo/Aulas/SMA/01-agentes-inteligentes.ppt Arquitectura de Agentes z Dependendo o que é feito em diferentes tipos de agentes •Agente tabela •Agente reactivo •Agente reactivo com estado interno (autómato) •Agente cognitivo (baseado em objectivos) •Agente optimizador •Agente que aprende temos autonomia complexidade 15 Inteligência Artificial Universidade da Madeira Agente Tabela Sensores Tabela percepções acções . . . . Actuadores Gráficos originais: http://ia.ucpel.tche.br/~lpalazzo/Aulas/SMA/01-agentes-inteligentes.ppt Agente Tabela z z Dada uma percepção simplesmente procura a resposta. Problemas z A tabela pode ser muito grande. z z z Mesmo que fosse possível construí-la esta poderia levar muito tempo. O agente não tem autonomia, pois as acções são derivadas do seu conhecimento interno (e não da sua experiência). z z z Ex.: um agente para jogar xadrez teria 35100 entradas. Uma troca inesperada no ambiente poderia resultar em falha. Se for dado ao agente um mecanismo de aprendizagem para aumentar o grau de autonomia, ele poderá ficar aprendendo para sempre sem que todas as entradas da tabela sejam preenchidas. Ambientes z Acessível, determinista, episódico, estático, discreto e minúsculo! 16 Inteligência Artificial Universidade da Madeira Agente Reactivo z A tabela perfeita / completa é totalmente inviável. z É possível sumarizar a tabela usando: z z z Entradas/saídas comuns. Pré processamento do sinal de entrada para identificar condições comuns. Usa regras de condição Æ acção z Se velocidade > 60 então multar Agente Reactivo Sensores Como é o mundo agora? Regras condição-acção Que acção deve ser executada? Actuadores 17 Inteligência Artificial Universidade da Madeira Agente Reactivo z Problemas z z z z z A decisão do agente só depende da percepção actual. Muitas soluções não podem ser alcançadas se o agente não souber o que fez antes ou como o mundo era antes. Não pode armazenar uma sequência perceptiva, e tem pouca autonomia. Aplicabilidade restrita: funciona apenas se o ambiente for completamente observável. z Exemplo: Para carros sem luz central de freio, um agente reactivo não consegue determinar com uma única imagem se o carro da frente está fazendo sinal de mudança de direcção, alerta ou freio. Ambientes z z Reflexo imprescindível em ambientes dinâmicos Acessível, episódico, pequeno Agente Reactivo com Estado Interno z O estado actual é dado em função do estado anterior (histórico) e do que foi percebido no ambiente. z O agente tem um estado interno com as informações colectadas do ambiente. z Dois tipos de conhecimento são necessários para actualizar a memória do agente (modelo do mundo): z Como o ambiente evoluí independente do agente z z Um carro que está ultrapassando em geral estará mais perto do que estava um instante antes. Como as acções do próprio agente afectam o mundo z Se o agente virar o volante à direita, o carro irá virar para a direita. 18 Inteligência Artificial Universidade da Madeira Agente Reactivo com Estado Interno Estado Sensores Como o mundo evolui? O que minhas acções fazem? Regras condição-acção Como é o mundo agora? Que acção deve ser executada? Actuadores Agentes Reactivos com Estado Interno z Problemas z z Conhecer os estados do ambiente não é suficiente para tomar uma boa decisão. Exemplo: o agente Motorista de Táxi chega a um cruzamento com três caminhos, qual será a direcção que deve escolher? z z z z simplesmente reagir não dá, existem três reacções possíveis saber do passado do ambiente também não ajuda a decidir qual o caminho A decisão depende apenas do destino que o táxi está tentando chegar. Ambientes z determinista e pequeno 19 Inteligência Artificial Universidade da Madeira Agente Cognitivo (baseado em objectivo) z O agente precisa de algum tipo de informação sobre o seu objectivo. z z Objectivos descrevem situações desejáveis. Ex.: estar no destino. Combinando informações sobre: z z O objectivo do agente. Os resultados de suas acções. z O agente pode escolher acções que alcancem o objectivo. z A selecção da acção baseada em objectivo pode ser: z z Directa: quando o resultado de uma única acção atinge o objectivo. Mais complexa: quando será necessário longas sequências de acções para atingir o objectivo. Agente Cognitivo (baseado em objectivo) z Para encontrar sequências de acções que alcançam os objectivos z z A tomada de decisão envolve a consideração do futuro. z z z Algoritmos de Busca (procura) e Planeamento. “O que acontecerá se eu fizer isso ou aquilo?” “O quanto isso melhorará o meu desempenho?” Exemplos: z Objectivo: não bater no carro da frente. z Se o carro da frente pára, pela forma de funcionamento do mundo, a única acção que atinge o objectivo de não bater é também parar. 20 Inteligência Artificial Universidade da Madeira Agente Cognitivo (baseado em objectivo) Estado Sensores Como o mundo evolui? Como é o mundo agora? O que minhas acções fazem? Como ele será se for executada a acção A? Objetivos Que ação deve ser executada? Actuadores Agente Cognitivo (baseado em objectivo) z Considerações / Problemas z O agente que funciona orientado a objectivos é mais flexível. z z z Mais flexível – representação do conhecimento permite modificações z z Ex.: Se começar a chover, todas as informações relevantes podem ser alteradas para se operar de forma eficiente. Contudo, o objectivo não garante o melhor comportamento para o agente, apenas a distinção entre os estados, objectivos e não objectivos. z z Agente reflexo Æ acções pré compiladas. Agente p/ objectivo Æ pode alterar somente o objectivo sem necessidade de se reescrever as regras de comportamento. Exemplo: algumas alternativas de planeamento de acções futuras podem ser mais rápidas, seguras ou baratas que outras. Ambientes z Determinista. 21 Inteligência Artificial Universidade da Madeira Agente Optimizador z Também chamado “baseado em utilidade”. z Se um estado do mundo é mais desejável que outro, então ele terá maior utilidade para o agente. z Utilidade é uma função que relaciona um estado para um número real, que representa o grau de satisfação com este estado. z Nos casos onde existem objectivos conflituantes (velocidade x segurança) a utilidade pode determinar o peso adequado a cada objectivo. z Qualquer agente racional deve se comportar como se possuísse uma função de utilidade, cujo o valor esperado ele tenta maximizar. z (A origem da utilização da função de utilidade vem da teoria da decisão). Agentes Optimizador Estado Sensores Como o mundo evolui? Como é o mundo agora? O que minhas acções fazem? Como ele será se for executada a acção A? Quanto mais feliz serei eu? Utilidade Que acção deve ser executada? Actuadores 22 Inteligência Artificial Universidade da Madeira Agentes Optimizador z Desvantagem z z Não tem adaptabilidade Ambientes z sem restrição Agentes que Aprendem z Quatro componentes conceituais z Elemento de aprendizado: z z Responsável pela execução dos aperfeiçoamentos. Crítico: z z O elemento de aprendizado “realimenta” o crítico sobre como o agente está funcionando. Determina de que maneira o elemento de desempenho deve ser modificado. 23 Inteligência Artificial Universidade da Madeira Agentes que Aprendem z Quatro componentes conceituais z Elementos de desempenho: z z z Responsável pela selecção de acções externas. Antes visto como o agente completo – recebe percepções e decide sobre acções. Gerador de problemas: z Responsável por sugerir acções que levarão a experiências novas e informativas. Agentes que Aprendem Padrões de Desempenho Sensores Crítica Aprendizado Graduação do Desempenho Gerador de Problemas Actuadores 24 Inteligência Artificial Universidade da Madeira Agentes que Aprendem z Ambientes z Sem restrição. Agentes Inteligentes z Constituem um paradigma especialmente adequado para a modelagem de sistemas de IA. z A racionalidade dos agentes é o seu principal atributo e corresponde ao seu componente inteligente. z Apresentam-se em diferentes graus de complexidade e sempre são capazes de aprender. 25 Inteligência Artificial Universidade da Madeira Leituras LIVROS z Russel, Norvig, Artificial Intelligence: A Modern Approach, Cap. 2. z Costa, Simões, Inteligência Artificial. Fundamentos e Aplicações. Cap 1.5, 2.1,3.1,4.1,5.1. ARTIGOS z Intelligent Agents: Theory and Practice. M. Wooldridge e N. R. Jennings. Knowledge Engineering Review 10(2), 1995. http://www.csc.liv.ac.uk/~mjw/pubs/ker95.pdf FIM 26