Agentes Inteligentes Agente: Qualquer coisa que pode: 1. Perceber seu ambiente através de sensores e Agente 2. Agir sobre ambiente através de atuadores. Características de um agente humano: ? ? ? •Sensores: #$% 306 & @ ga% Q& #0 % •Olhos •Ouvidos •Outros órgãos para sensores •Atuadores: •Mãos •Pernas •Boca •Outras partes do corpo 1 Características de um agente robótico: •Sensores: •Câmeras •Localizadores de infravermelho •Sonares, etc •Atuadores: •Motores Características de um agente de software: function SQRT(x) z <-- 1.0 /* chute inicial */ repeat until |z2 – x| < 10-15 z <-- z – (z2 –x)/(2z) end return z •strings de bits funcionam sensores e atuadores. como 2 Diagrama de um Agente Genérico Sensor Percepção ? Agente Ambiente Ações Atuadores Adaptado de Russel & Norvig, 1995, pág. 32 Objetivo do uso de agentes: •Projetar e construir agentes que: •Tenham uma boa interação com o ambiente (façam bom uso dos sensores) •Ajam adequadamente sobre o ambiente (façam bom uso dos atuadores) Conclusão: os agentes precisam fazer um bom trabalho. => É necessário uma medida de desempenho do agente. 3 Agente racional •Faz a coisa certa (ação que faz o agente ter sucesso), segundo o princípio da racionalidade: •Dada uma seqüência percebida, o agente escolhe, segundo seus conhecimentos, as ações para atingir seu objetivo. Problema •Como e Quando se deve avaliar o sucesso de um agente? •Como •Usa-se uma medida de desempenho imposta por superiores => como um padrão (objetivo) de medida. 4 Medida de Desempenho: indica o sucesso de um agente •Problema: Não existe uma medida única! Exemplo: •Agente que faz limpeza em ambiente com um aspirador. •Possíveis medidas: •quantidade de pó coletado em 8 horas de trabalho •quantidade de eletricidade quantidade de barulho consumida e a •além de limpar perfeitamente e de forma quieta, ainda vai à praia no final de semana Quando: •Tempo de realização da tarefa •Instantes inicial e final => determinação da quantidade de tempo •Problema: cuidado deve-se consideração do período de tempo. tomar na •Risco: premiar rapidez e punir consistência 5 Diferença entre racionalidade e onisciência: •Agente onisciente: •conhece as saídas de suas ações e age de acordo •Onisciência é impossível na realidade. •Racionalidade: relacionada com o esperado em função do que foi percebido sucesso Exemplo: (Racionalidade X Onisciência) Ação: Dá no pé! 6 Racionalidade depende de: •Medida de desempenho que define o grau de sucesso •Tudo que o agente percebeu (sequência percebida) •Conhecimento que o agente possui sobre o ambiente •Ações que o agente pode realizar Definição de um agente racional ideal Para cada sequência percebida, um agente racional ideal deve fazer qualquer ação esperada para maximizar sua medida de desempenho, com base na evidência provida pela sequência percebida e pelo conhecimento que o agente tem. Agente: ferramenta para análise de sistemas (diferente de uma caracterização que divide o mundo em agentes e não agentes). 7 Mapeamento: associação entre as sequências percebidas e as ações f : P* → A •Agente pode ser descrito por uma tabela (look-uptable) Sequência percebida ==> Ação => pode se tornar uma lista (mapeamento) infinita Solução: procurar as sequências possíveis e enumerá-las. Mapeamento Ideal: •Especificação de que ações o agente deve tomar como resposta a uma sequência percebida => projeto de um agente ideal. 8 Exemplo: Mapeamento Ideal: •Tabela pode se tornar infinita. •Especificação procedural (agente - Método de Newton) x Percebido 1.0 1.1 ... Ação z 1.000000000000000 1.048808848170152 ... function SQRT(x) z <-- 1.0 /* chute inicial */ repeat until |z2 – x| < 10-15 z <-- z – (z2 –x)/(2z) end return z •Autonomia (outro requisito para um agente ideal) •relacionada com o conhecimento que o agente possui) •Ação do agente baseia-se na sua própria experiência e no conhecimento sobre o ambiente onde se encontra. •Um sistema é (completamente) autônomo se seu comportamento é determinado pela sua própria experiência. •Possui capacidade de adaptação a situações novas não disponíveis na base de conhecimento 9 Estrutura de Agentes Inteligentes Programa Agente: •Função que implementa o mapeamento entre as sequências percebidas e as ações. Agente: •Executado em uma arquitetura (computador ou dispositivos eletrônicos – tipo câmera, etc). •Possui software Agentes = arquitetura + programa Agente: Policial de Trânsito raciocínio Agente Conhecimento: - leis - comportamento dos indivíduos,... percepção Objetivo: - fazer com que as leis sejam respeitadas Ações: - multar - apitar - parar, ... execução Ambiente 10 Requisitos para se projetar um agente: •O que será percebido •Ações •Os objetivos ou a medida de desempenho •O tipo de ambiente 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, ... Segurança, Ruas, pedestres, rapidez, economia, carros, ... conforto,... Escolher e tocar Músico de jazz Sons seus e de outros músicos, notas no andamento grades de acordes Tocar bem, se divertir, agradar Musicos, publico, grades de acordes Adaptado de Russel & Norvig, 1995, pág. 37. 11 Tipos de Agente: •Reflexivos •Agentes que seguem o mundo •Agentes baseados em objetivos •Agentes baseados em utilidade 12