1 Agentes Inteligentes Experimento... Wumpus Ambientes Arquiteturas CIn- UFPE Lembrando... Agente Inteligente ambiente • dada uma seqüência perceptiva, escolhe, segundo seus conhecimentos, as ações que satisfazem melhor seu objetivo sensores Raciocinador efetuadores Agente modelo do ambiente. conhecimento. objetivos,... 3 Experimento do “Robô Humano” CIn- UFPE 4 Partes do robô Partes: • 1 Cérebro (1 pessoa) • 2 Braços (1 por pessoa = 2 pessoas) • 1 sistema de visão (1 pessoa) Cérebro • não pode ver • fala com todas as partes do robô • controla os braços indicando – ângulos de giro – deslocamento em uma direção e distância dadas – força a aplicar • pode fazer perguntas aos braços e sistema de visão • pode pedir para o sistema de visão se deslocar para obter outros ângulos de visão • pode desenhar ambiente em uma folha de papel CIn- UFPE 5 Partes do robô Braços • • • • não podem ver não devem ouvir o que diz o sistema de visão tem tato pouco refinado podem responder sim ou não ao cérebro (ex. estão tocando em algo?) • seguem instruções do cérebro Sistema de visão • não pode fornecer informação sem ter sido claramente perguntado pelo cérebro • pode distinguir diferentes objetos e estimar distâncias • pode mover-se de forma a dar informações visuais a partir de diferentes ângulos CIn- UFPE 6 A tarefa Voluntários? • Braços e olhos saem da sala... • Cérebro recebe a tarefa Algumas conclusões • Um modelo do mundo – é imprescindível e econômico (resume todo o ocorrido) – dá suporte ao raciocínio • • • • • Conhecimento prévio do mundo é importante Coordenar diferentes sistemas é complicado A percepção e a execução são imperfeitas Feedback visual e de força são imprescindíveis No mundo real é mais complicado – tem muito conhecimento implícito – A maioria dos sistemas de visão não são móveis • ... CIn- UFPE 7 O Mundo do Wumpus CIn- UFPE 8 Bem-vindos ao “Mundo do Wumpus” Wumpus Agente caçador de tesouros CIn- UFPE O Mundo do Wumpus: formulação do problema 9 Ambiente: • paredes, Wumpus, cavernas, buracos, ouro Estado inicial: • agente na caverna (1,1) com apenas uma flecha • Wumpus e buracos em cavernas quaisquer Objetivos: • pegar a barra de ouro e voltar à caverna (1,1) com vida CIn- UFPE O Mundo do Wumpus: formulação do problema 10 Percepções: • • • • • fedor (ao lado do Wumpus) brisa (ao lado dos buracos) brilho (na caverna do ouro) choque (contra a parede da caverna) grito do Wumpus (quando morre) Ações: • • • • avançar para próxima caverna girar 90 graus à direita ou à esquerda pegar um objeto na mesma caverna que o agente atirar na direção para onde o agente está olhando (a flecha pára quando encontra uma parede ou mata o Wumpus) • sair da caverna CIn- UFPE 11 Codificação do Mundo do Wumpus 4 3 fedor W O fedor brisa, luz brisa B B brisa 2 fedor 1 A brisa brisa B A - Agente W - Wumpus B - Buraco O - Ouro X? - possível X V - Caverna visitada brisa início 1 2 3 4 Percepção = [fedor,brisa,brilho, choque,grito] CIn- UFPE Raciocinando e Agindo no Mundo do Wumpus 12 Representação do conhecimento do agente: [nada,nada,nada,nada,nada] [nada,brisa,nada,nada,nada] 4 4 3 3 2 ok 1 A ok ok 1 2 (a) início 3 4 2 ok 1 V B? ok 1 b A ok 2 B? 3 4 (b) depois do 1o movimento CIn- UFPE Raciocinando e Agindo no Mundo do Wumpus 13 Depois de passar por (1,1), chega a (2,1)... [fedor,nada,nada,nada,nada] 4 3 2 1 4 W A f ok V ok 1 ok b V ok 2 B! 3 A 3 W 2 f V ok V ok V b V ok 1 4 B? ok 1 B? fbl 2 ok B! 3 4 (c) Decide ir para (2,2), único OK Vai para (2,2), (2,3) e encontra o ouro!!! não visitado CIn- UFPE 14 Exercício... Vamos achar o ouro? 4 B! O 3 B! 2 1 W! A 1 2 3 4 CIn- UFPE 15 Caracterização do Ambiente CIn- UFPE Exemplos de agentes Agente Diagnóstico médico Dados perceptivos Ações Objetivos Sintomas, Perguntar, Saúde do paciente, paciente, exames prescrever exames, minimizar custos respostas, ... testar Ambiente 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 mails mensagens Aceitar ou rejeitar mensagens Aliviar a carga de leitura do usuário Mensagens, usuários Motorista de taxi Imagens, velocímetro, sons brecar, acelerar, dobrar, falar com passageiro, ... Músico de jazz Sons seus e de Escolher e tocar outros músicos, notas no andamento grades de acordes Segurança, Ruas, pedestres, rapidez, economia, carros, ... conforto,... Tocar bem, se divertir, agradar Musicos, publico, grades de acordes 17 Ambiente Classes de ambientes • Físico: robôs • Software: softbots • Realidade virtual (simulação do ambiente físico): softbots e avatares Propriedades de um ambiente • • • • • • acessível x inacessível estático x dinâmico determinista x não-determinista discreto x contínuo episódico x não-episódico tamanho: número de percepções, ações, objetivos,... CIn- UFPE 18 Ambientes: propriedades Acessível: quando os sensores do agente conseguem perceber todos os aspectos relevantes do ambiente para a escolha da ação • ex. wumpus não é acessível, xadrez é Determinista: o próximo estado do ambiente pode ser completamente determinado pelo estado atual e as ações selecionadas pelo agente (= incerteza do fruto da ação) • semi-determinista: se tem outros atores agindo imprevisivelmente para mudar o “estado do mundo” • ex. wumpus determinista, robocup não-determinista, xadres semi-determinista CIn- UFPE 19 Ambientes: propriedades Episódico: a experiência do agente é dividida em episódios e ação em um episódio não depende das ações que ocorreram em episódios prévios • exemplo: classificador de imagens é episódico, xadrez não Estático: o ambiente não muda enquanto o agente está escolhendo a ação a realizar. • Semi-estático: o ambiente não muda enquanto o agente delibera, mas o "score" do agente muda • ex. xadrez c/ relógio semi-estático, xadrez estático, táxi dinâmico • obs: há mundos dinâmicos e deterministas (ex. esteira de fábrica) CIn- UFPE 20 Ambientes: propriedades Discreto: quando existe um número distinto e claramente definido de percepções e ações em cada turno • ex. médico (consulta) discreto, táxi dinâmico O Tamanho do ambiente é dado por: número de percepções, ações e objetivos possíveis CIn- UFPE Exemplos de ambientes Agente acessível determinista episódico estático discreto xadrez sem relógio Sim +/- Não Sim Sim xadrez com relógio Sim +/- Não Semi sim gamão sim não não sim sim motorista de taxi 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 Busca na web Não +/- Sim Não Sim Filtrador de mail Sim +/- Sim Não Sim Músico Sim Não Não Não Não 22 Simulação do ambiente Às vezes é mais conveniente simular o ambiente • mais simples • permite testes prévios • evita riscos, etc... O ambiente (programa) • recebe os agentes como entrada • fornece repetidamente a cada um deles as percepções corretas e recebe as ações • atualiza os dados do ambiente em função dessas ações e de outros processos (ex. dia-noite) • é definido por um estado inicial e uma função de atualização • deve refletir a realidade CIn- UFPE 23 Arquiteturas de Agentes CIn- UFPE 24 Algoritmo básico Ciclo de Agente • Percebe • Raciocina (interpreta percepção e escolhe ação) • Executa ação Arquiteturas • • • • • • Agente tabela Agente reativo puro Agente reativo com estado interno (autômato) Agente cognitivo (baseado em objetivos) Agente otimizador Agente adaptativo autonomia complexidade CIn- UFPE 25 Agente tabela sensores ambiente Agente Tabela percepções ações . . . . efetuadores Funcionamento • Para cada percepção, procura na tabela a ação correspondente Vantagens • muito eficiente!! CIn- UFPE 26 Agente tabela Limitações • Mesmo Problemas simples -> tabelas muito grandes – ex. xadrez 30^100 • Nem sempre é possível, por ignorância ou questão de tempo, construir a tabela • Não há autonomia nem flexibilidade Este agente só tem fins didáticos!!! Não vale nem a pena pensar nele CIn- UFPE 27 Agente puramente reativo Sensores Ambiente Regras Percepção Ação Efetuadores CIn- UFPE 28 Agente Reativo Puro Funcionamento • Usa regras associando diretamente percepção com ação – ex. Se velocidade > 60 então multar – ex. Se luz do freio do carro da frente acender, então frear • Dada a percepção, encontra a primeira regra que casa e executa ação Exemplo no Wumpus • IF visualPerception = glitter THEN action = pick (representação pseudo-lógica) CIn- UFPE 29 Agente Reativo Puro Vantagens e desvantagens • Regras condição-ação: representação inteligível, modular e eficiente • Não pode armazenar uma seqüência perceptiva, pouca autonomia Limitações do agente reativo puro no mundo do Wumpus • um agente ótimo deveria: – recuperar o ouro ou – determinar que é muito perigoso pegar o ouro e – em qualquer dos casos acima, voltar para (1,1) e sair da caverna. • Um agente reativo nunca sabe quando sair, – estar com o ouro e estar na caverna (1,1) não fazem parte da sua percepção (se pegou, esqueceu). – esses agentes podem entrar em laços infinitos. CIn- UFPE Agente reativo com estado interno Sensores Ambiente Efetuadores 30 Interpretador de percepção Atualizador do modelo do ambiente Modelo dos ambientes passados e atual Escolhedor de ação CIn- UFPE Agente reativo com estado interno Funcionamento: idem anterior + modelo do mundo (memória) • Regras associando indiretamente percepção com ação via construção e manutenção de um modelo do ambiente – Ação depende da percepção atual + anteriores + ações anteriores... • Antes de agir, já atualiza o modelo do ambiente – Ex. Fazer uma ultrapassagem em um carro Motivação • O ambiente inteiro não é acessível no mesmo momento – ex. ultrapassagem de um carro • Percepções instantâneas iguais podem corresponder a estados diferentes – ex. Wumpus: cavernas visitadas Agente reativo com estado interno Novos conhecimentos (regras) para atualização do mundo • • • • percepção modelo modelo’ Modelo’ modelo’’ Modelo’’ ação ação modelo’’ modelo’’’ (talvez) Regras percepção modelo modelo • IF visualPercept at time T is glitter AND location of agent at time T is (X,Y) THEN location of gold at time T is (X,Y) • X,Y,T see(glitter,T) loc(agent,X,Y,T) loc(gold,X,Y,T). Regras de agente reativo com estado interno 33 Regras modelo modelo • IF known that agent is with gold at time T AND known that location of agent at time T is (X,Y) THEN known that location of gold at time T is (X,Y) Regras modelo ação • IF known that location of agent at time T = (X,Y) AND known that location of gold at time T = (X,Y) THEN choose action at time T to be pick CIn- UFPE Regras de agente reativo com estado interno 34 Regras ação modelo modelo • IF choosen action at time T was pick THEN known that agent is with gold at time T+1 Desvantagem: • Autonomia, mas não muito • não tem objetivo, não pensa no futuro (só na ação imediata)!!! CIn- UFPE Agente deliberativo/cognitivo (baseado em objetivo) Sensores Ambiente Efetuadores Interpretador de percepção Atualizador do modelo do ambiente Atualizador do objetivos 35 Modelo dos ambientes passados e atual Objetivos Preditor de ambientes futuros Escolhedor de ação Modelo de ambientes futuros hipotéticos CIn- UFPE Agente Cognitivo Funcionamento (associação percepção-ação) • Mediada por modelo do ambiente e objetivo do agente • Pode envolver encadear regras para construir plano multipasso necessário para atingir objetivo a partir de modelo – ex. taxista encontrando a rota para o destino do passageiro – ex. taxista freia porque quer evitar prejuízo e dor de cabeça no futuro Contém os 4 tipos de regras do agente reativo com estado interno + 2 novos tipos de regras: • Regras: objetivo modelo ação • Regras: objetivo modelo objetivo’ Trata o objetivo explicitamente e pensa no futuro!!!! 37 Regras de agente Cognitivo Regras objetivo modelo ação (ações) //O agente escolhe um caminho para o objetivo • IF goal of agent at time T is to be in location (X,Y) AND agent is in (X-1, Y-1) at time T-N AND known that location (X,Y-1) is safe at time T-N AND known that location (X,Y) is safe at time T-N THEN choose action Go to X,Y via (X,Y-1) CIn- UFPE 38 Regras de agente deliberativo Regras objetivo modelo ação (ações) //O agente pode variar a escolha conforme o objetivo, como não matar o wumpus para pegar logo o ouro • IF goal of agent is to get the gold AND agent is in (X-1, Y) at time T AND known that the gold is in location (X,Y) AND known that location (X,Y) is safe at time T AND known that Wumpus is in location (X-1,Y+1) at time T AND known that the agent has na arrow at time T THEN choose action Go to X,Y CIn- UFPE 39 Regras de agente deliberativo Regras objetivo modelo objetivo //Se o agente queria estar com o ouro e conseguiu, atualizar objetivo para ir para (1,1) • IF goal of agent at time T is to be with gold at time T+N AND agent is with gold at time T+1 THEN update goal of agent at time T+1 to be in location (1,1) at time T+M CIn- UFPE 40 Agente cognitivo (baseado em objetivo) Vantagens e desvantagens: • Mais complicado e ineficiente, • porém mais flexível e autônomo – ex. se começa a chover, já sabe que não pode confiar no freio • Não trata objetivos conflitantes – ex. chegar ao destino pelo caminho mais curto, seguro, barato, rápido e bonito CIn- UFPE Agente otimizador (baseado em utilidade) Sensores Interpretador de percepção Atualizador do modelo do ambiente Ambiente Efetuadores Atualizador do objetivos Preditor de ambientes futuros Escolhedor de ação 41 Modelo dos ambientes passados e atual Objetivos potencialmente conflitantes Utilidades dos objetivos ou ações Modelo de ambientes futuros hipotéticos CIn- UFPE 42 Regras de agente otimizador Associação percepção-ação: – Mediada por modelo do ambiente, objetivos do agente e utilidades da realização parcial de conjuntos de objetivos – Envolve métodos de otimização: busca, pesquisa operacional, etc. Contém 5 dos 6 tipos de regras do agente deliberativo, substituindo: • regras objetivo modelo ação ...por: • regras objetivo modelo utilidade, e • regras utilidade ação CIn- UFPE Agente que aprende Agente sensores t+1 crítico avaliação ambiente t elemento de execução (agente) trocas elemento de conhecimento aprendizagem objetivos de aprendizagem t efetuadores Gerador de problemas Vantagem: tem adaptabilidade (aprende) • Ex. motorista sem o mapa da cidade