FATEP – Faculdade de Tecnologia Paulo Freire Curso de Tecnólogo em Programação de Jogos Digitais Disciplina: Inteligência Artificial Inteligência Artificial I Agentes Inteligentes Prof.a Daniele Erica Damke Schroeder [email protected] Agentes Inteligentes Tópicos Agentes Inteligentes 2 O que é um Agente? Agente é qualquer entidade que: percebe seu ambiente através de sensores (ex. câmeras, microfone, teclado,mensagens de outros agentes,...); age sobre ele através de atuadores (ex. vídeo, autofalante, impressora, braços, ftp, mensagens para outros agentes,...). Medida de desempenho: critério que define o grau de sucesso das ações. Agentes Inteligentes Agentes que operam em ambientes imprevisíveis, abertos e em constante mudança, onde há elevada possibilidade de que ações possam falhar. Agentes que são capazes de ação autônoma flexível, incluindo reatividade, aprendizado, pró-atividade e habilidade social. 4 Agentes Inteligentes São capazes de perceber seu ambiente por meio de sensores e de agir sobre esse ambiente por intermédio de atuadores. 5 ambiente Agentes Inteligentes sensores raciocinador Agente modelo do ambiente efetuadores Fonte: Russel e Norvig, Inteligência Artificial. 6 Tipos de Agentes Agente humano Agente robótico Agente de software Tipos de Agentes Agente humano Sensores: olhos, ouvidos, nariz, ... Atuadores: mãos, pernas, boca, ... Agente robótico Sensores: câmeras, detectores da faixa de infravermelho, ... Atuadores: motores, ... Tipos de Agentes Agente de software Sensores: teclas digitadas, conteúdo de arquivos, pacotes de redes, ... Atuadores: exibição de algo na tela, gravação de arquivos, envio de pacotes de rede, ... Exemplos de Agentes Fonte: Russel e Norvig, Inteligência Artificial. Metodologia de Desenvolvimento de Agentes Decompõe o problema em: Ambiente de tarefas: percepções (sensores); ações (atuadores); objetivos (desempenho); ambiente; além de outros agentes. 11 Metodologia de Desenvolvimento de Agente Decompõe o tipo de conhecimento em: Quais são as propriedades relevantes do mundo? Como o mundo evolui? Como identificar os estados desejáveis do mundo? Como interpretar suas percepções? Quais as conseqüências de suas ações no mundo? Como medir o sucesso de suas ações? Como avaliar seus próprios conhecimentos? Indica arquitetura e método de resolução de problema 12 Exemplos de Agentes Agente Dados perceptivos Ações Objetivos Ambiente Diagnóstico médico Sintomas, paciente, exames respostas, ... Perguntar, prescrever exames, testar Saúde do paciente, minimizar custos Paciente, gabinete, ... Análise de imagens de satélite Pixels imprimir uma categorização categorizar corretamente Imagens de satélite Tutorial de portuguê s Palavras digitadas Imprimir exercícios, sugestões, correções, ... Melhorar o desempenho do estudante Conjunto de estudantes Filtrador de emails mensagens Aceitar ou rejeitar mensagens Aliviar a carga de leitura do usuário Mensagens, usuários Motorista de táxi Imagens, velocímetro, sons brecar, acelerar, dobrar, falar com passageiro, ... Segurança, rapidez, economia, conforto,... Ruas, pedestres, carros, ... Músico de jazz Sons seus e de outros músicos, grades de acordes Escolher e tocar notas no andamento Tocar bem, se divertir, agradar Músicos, publico, grades de acordes Fonte: Russel e Norvig, Inteligência Artificial. 13 Agentes - Percepção Faz referência às entradas perceptivas do agente em qualquer momento. A seqüência de percepções do agente é a história completa de tudo que o agente já percebeu. “O comportamento de um agente é descrito pela função de agente que mapeia qualquer seqüência de percepções específicas para uma ação. A função de agente pode ser demonstrada matematicamente por uma tabela que registra todas as seqüências de percepções registrando as ações que ao agente executa em resposta.” Fonte: Russel e Norvig, Inteligência Artificial. 14 Agentes - Percepção Exemplo da tabela de funções do agente do aspirador de pó; 15 Agentes - Desempenho O que torna uma agente bom ou ruim, inteligente ou estúpido? 16 Agentes - Desempenho Um agente racional é aquele que faz tudo certo – em termos conceituais toda entrada na tabela corresponde à função de agente é preenchida de forma correta. O que é fazer tudo certo? O que é fazer tudo errado? A ação certa é aquela que fará ao agente obter maior sucesso. 17 Agentes - Desempenho Uma medida de desempenho é um critério para se medir o sucesso do comportamento do agente: O agente é inserido em um ambiente; O agente recebe uma seqüência de percepções; O agente gera uma seqüência de ações; As ações fazem o ambiente passar por uma seqüência de estados; Se a seqüência é desejável, quer dizer que o agente funcionou bem. 18 Agentes - Desempenho Ex, caso o aspirador de pó: Medida de desempenho: quantidade de poeira aspirada em um determinado período de tempo com uma penalidade pela eletricidade gerada e pelo ruído emitido. Em qualquer situação não existe uma receita mágica para a definição de medidas de desempenho. 19 Agentes - Racionalidade A Racionalidade de um agente depende de quatro fatores: Medida de desempenho que define o sucesso do agente; O conhecimento anterior que o agente possui do ambiente; As ações que o agente pode executar; A seqüência de percepções do agente até o momento. 20 Agentes - Racionalidade Para cada seqüência de percepções possível, um agente racional deve selecionar uma ação que se espera venha a maximizar sua medida de desempenho, dada a evidência fornecida pela seqüência de percepções e por qualquer conhecimento interno do agente. 21 Agentes – Racionalidade X Perfeição Um agente perfeito sabe o resultado real de suas ações e pode agir de acordo com ele, porém a onisciência (perfeição) é impossível na realidade. Racionalidade: Maximiza o desempenho esperado. Perfeição: Maximiza o desempenho real. 22 Agentes – Racionalidade X Perfeição Ex: Em uma rodovia possuo plena visão de mais de 1KM para ultrapassagem, inicio a ultrapassagem mas cai uma peça de um avião na pista na qual estou realizando a ultrapassagem. Fui irracional ao iniciar a ultrapassagem? 23 Agentes – Racionalidade X Perfeição Impossível projetar um agente cujo projeto deve escolher a melhor ação após a ocorrência do fato. Ou seja, os agente projetados só dependem das seqüência de percepções até o momento. Coleta de informações Aprender Autonomia 24 Ambiente de Tarefas Completamente observável versus parcialmente observável Determinístico versus estocástico Episódico versus seqüencial Estático versus dinâmico Discreto versus contínuo Agente único versus multiagente 25 Ambiente de Tarefas Completamente observável os sensores permitem acesso ao estado completo do ambiente em cada instante; os sensores detectam todos os aspectos que são relevantes para a escolha da ação: onde a relevância dependerá da medida de desempenho; o agente não precisa manter estados internos para controlar o mundo. 26 Ambiente de Tarefas Parcialmente observável ruídos na leitura dos sensores; imprecisão dos sensores; limitação dos sensores. 27 Ambiente de Tarefas Determinístico o próximo estado do ambiente é determinado pelo estado atual e pela ação executada pelo agente. Estocástico o próximo estado do ambiente não pode ser determinado pelo estado atual e pela ação executada pelo agente. Estratégico o ambiente é determinístico exceto pelas ações de outros agentes. Em um ambiente completamente observável e determinístico o agente não precisa se preocupar com a incerteza deste ambiente.Um ambiente parcialmente observável pode parecer estocástico. 28 Ambiente de Tarefas Episódico cada episódio é atômico; cada percepção consistem em uma única ação; o episódio seguinte não depende das ações executadas no episódio anterior; a ação do episódio só depende do próprio episódio. Ex: peças defeituosas em uma linha de montagem. Seqüencial diversas percepções podem compor uma única ação. os episódios seguintes são dependentes das ações executadas no episódio anterior. Ex: jogo de xadrez. 29 Ambiente de Tarefas Estático o ambiente não se alterar quando o agente atua; o agente não precisa observar o mundo enquanto está atuando; mais fáceis de manipular. Ex: jogo de palavras cruzadas. Dinâmico o ambiente pode se alterar enquanto o agente está atuando; o agente precisa observar o mundo enquanto está atuando; ambientes dinâmicos estão continuamente perguntando ao agente o que ele deseja fazer, se ele não tiver decidido, a resposta é não fazer nada. Ex: dirigir um carro. 30 Ambiente de Tarefas Semi dinâmico o ambiente não pode se alterar enquanto o agente está atuando; o desempenho do agente pode mudar enquanto ele está atuando. Ex: jogo de palavras xadrez com contagem de tempo (onde o tempo é um fator de desempenho). 31 Ambiente de Tarefas Discreto depende do estado do ambiente, modo como o tempo é tratado, e ainda às percepções e ações do agente. Ex: jogo de xadrez com número finito de estados distintos e conjunto discreto de percepções e ações. Contínuo depende do estado do ambiente, modo como o tempo é tratado, e ainda às percepções e ações do agente. Ex: dirigir um carro. 32 Ambiente de Tarefas Agente único um único agente participa do programa. Ex: jogo de palavras cruzadas. Multiagente mais de um agente participa do programa. Ex: jogo de xadrez, dirigir um taxi. Um programa multiagente em determinados problemas pode ser modelado com um programa de agente único no seguinte caso: O agente B pode ser tratado com um comportamento estocástico. O agente B precisa de uma medida de desempenho cujo valor depende do agente A. 33 Ambiente de Tarefas Ambiente multiagente Competitivo onde, um agente A tenta maximizar suas medidas de desempenho e minimizar as medidas de desempenho do agente B. Ex: jogo de xadrez. Cooperativo onde, um agente A tenta maximizar suas medidas de desempenho e as dos demais agentes. Ex: dirigir um carro (parcialmente cooperativo). 34 Ambiente de Tarefas Fonte: Russel e Norvig, Inteligência Artificial. 35 Estrutura de Agentes agente = arquitetura + programa O processo de tomada de decisão através do raciocínio e com conhecimento central em IA e no projeto de um agente de sucesso meios para representar conhecimento são importante. 36 Estrutura de Agentes Agentes reativos simples Agentes reativos baseados em modelo Agentes baseados em objetivos Agentes baseados na utilidade Agentes com aprendizagem 37 Estrutura de Agentes Agentes reativos simples Selecionam a ação baseados na percepção atual; Ignora o restante do histórico de percepções. Vantagens São extremante simples; Funcionam corretamente em ambientes completamente observáveis. Desvantagens Inteligência limitada. Regra condição-ação 38 Estrutura de Agentes Agentes reativos simples 39 Estrutura de Agentes Agentes reativos baseados em modelo O conhecimento de “como o mundo funciona” – seja ele implementado em circuitos bolleanos simples ou em teoria científicas completas – é chamado de modelo do mundo 40 Estrutura de Agentes Agentes reativos baseados em modelo Possibilidade de controlar parte do mundo que o agente não vê no momento; Mantém um estado interno de controle; Utiliza a percepção atual do mundo juntamente com um estado interno para gerar a descrição interna do estado atual; Utiliza informações a respeito da evolução do mundo para controlar as partes não-vistas; Controla o estado atual do mundo usando um modelo interno. Em seguida, ele escolhe uma ação da mesma maneira que o agente reativo simples. 41 Estrutura de Agentes Agentes reativos baseados em modelo 42 Estrutura de Agentes Agentes baseados em objetivos Utilizam a descrição do estado atual, além de informações sobre os objetivos que descrevam situações desejáveis; A decisão baseada em objetivo pode ser : direta, quando a satisfação do objetivo resulta de uma única ação; indireta, quando o agente tem que considerar uma seqüência de ações para encontrar um meio de atingir um objetivo. ... 43 Estrutura de Agentes Agentes baseados em objetivos Envolvem considerações do futuro; Utilizam busca e planejamento que são técnicas utilizadas para determinar seqüências de ações que alcançam os objetivos do agente; Controlam o estado do mundo, bem como um conjunto de objetivos que estão tentando atingir e escolhem uma ação que (no final) levará a realização de seus objetivos. 44 Estrutura de Agentes Agentes baseados em objetivos 45 Estrutura de Agentes Agentes baseados na utilidade Mapeiam um estado (ou uma seqüência de estados) em um número real, que descreve o grau de felicidade associado; Especificam um meio pelo qual a probabilidade de sucesso pode ser ponderada em relação a importância dos objetivos, quando estes não puderem ser alcançados; ... 46 Estrutura de Agentes Agentes baseados na utilidade Tentam maximizar o valor de sua função de utilidade; Usam um modelo do mundo juntamente com a função de utilidade que mede suas preferências entre estados do mundo; Em seguida, escolhem a ação que leva a melhor utilidade esperada, na qual a utilidade esperada é calculada pela média entre todos os estados resultantes possíveis, ponderados pela probabilidade do resultado. 47 Estrutura de Agentes Agentes baseados na utilidade 48 Estrutura de Agentes Agentes com aprendizagem Dividido em quatro componentes: Elemento de aprendizagem: responsável pela execução de aperfeiçoamentos. Recebe informações de como o agente está funcionando (análise da percepção – crítico) e determina de que maneira o elemento de desempenho deve ser modificado para funcionar melhor no futuro; Elemento de desempenho: responsável pela seleção de ações externas; Crítico; Gerador de problemas. 49 Estrutura de Agentes Agentes com aprendizagem Mapeiam um estado (ou uma seqüência de estados) em um número real, que descreve o grau de felicidade associado; Especifica um meio pelo qual a probabilidade de sucesso pode ser ponderada em relação a importância dos objetivos, quando estes não puderem ser alcançados; Tenta maximizar o valor de sua função de utilidade. 50 Estrutura de Agentes Agentes com aprendizagem 51 IA Clássica Metáfora basicamente psicológica Uma pessoa ou entidade resolve o problema. Inteligência atomizada, restrita aos micro aspectos de sua própria racionalidade. 52 Inteligência : Centralizada ou Distribuída? Cada um fa(e)z um pouco, e... somos UM! Não aproveitamos muito o trabalho alheio. A Internet nos faz trabalhar de forma mais inteligente (nenhum componente é crítico). Resolução de problemas: Há alguns cuja solução é inerentemente distribuída ou fica mais fácil distribuindo! Somos centralizados ou distribuídos ?? 53 Inteligência : Centralizada ou Distribuída? Porque pensar a inteligência/racionalidade como propriedade de um único indivíduo? Não existe inteligência ... Em um time de futebol? Em um formigueiro? Em uma empresa (ex. correios)? Na sociedade? Solução: IA Distribuída Agentes simples que juntos resolvem problemas complexos tendo ou não consciência do objetivo global Proposta por Marvin Minsky e em franca expansão... O próprio ambiente pode ser modelado como um agente 54 IA Distribuída (IAD) População de agentes Autônomos que podem interagir metáfora da organização social realça a ação e a interação entre os agentes Relacionada aos macro aspectos dos agentes: agentes enquanto sociedade. Inspirada também em lingüística, sociologia, economia,filosofia, biologia e ... Redes Neurais! 55 IAD - Quando usar? Problema complexo Problema intrinsecamente distribuído ex. jogos com personagens, administração de sistemas, controle de tráfego, etc. Problemas exigindo rápido tempo de resposta Dividir e conquistar ex. jogo dos 8 números, ordenação, etc. processamento paralelo ex. busca na internet. Problema com domínios de conhecimento ou tarefas um agente para cada tipo de conhecimento/tarefa 56 Experimento do Robô MultiHumano Robô simulado por 4 humanos: 1 Cérebro (1 pessoa), raciocinador 2 Braços (1 por pessoa = 2 pessoas), atuadores 1 sistema de visão (1 pessoa), sensor Agente Sensores P Ambiente Atuadores Interpretação das percepções: I = f(P) Raciocínio A Escolha das ações: A = g(I,O) 1. Percepções ambientais 2. Própriocepções 3. Percepções comunicativas Objetivos 1. Ações de alterações ambientais 2. Ações perceptivas 3. Ações comunicativas 57 Exemplos - Sistemas Multiagentes SMarket: Um Sistema Multiagentes para Compras on-line Fonte: http://wwwhome.cs.utwente.nl/~alme/cvitae/smarket-techreport.pdf 58