Curso de Bacharelado em Sistemas de Informação e Ciências da Computação Fonte: José Francisco Salm Junior (Diretor de Engenharia de Sistemas Instituto Stela) Inteligência Artificial Introdução a Agentes Prof.a Ryan Ribeiro de Azevedo [email protected] Carga Horária: 60 horas Agentes Tópicos  Introdução a Agentes Observação: Este assunto será aprofundado posteriormente. 2 Agentes no mapa da computação Inteligência Artificial Engenharia de Software Agentes Sistemas Distribuídos Agente  Intencionalidade:      Pode iniciar ação da sua própria iniciativa para satisfazer seus objetivos (pro-atividade) Pode negar-se a um pedido de ação da parte de outro agente (negociação) Entrada e saída mais complexa: sensores e atuadores Continuidade temporal: sempre monitorando o ambiente Granularidade maior:   Objeto  Sem objetivo próprio  Sem autonomia de decisão: Encapsula objetivos próprios (mesmo que implicitamente) além de dados e métodos Autonomia de decisão   x Encapsula código do tamanho de um pacote ou componente Composto de vários objetos quando implementado no paradigma OO     Executa apenas quando invocado por outros objetos Executa sempre que invocado por outros objetos Entrada e saída: parâmetros e resultado de métodos Descontinuidade temporal: ativo apenas durante invocação dos seus métodos Agente Inteligente x Softbot “burro” Interpretação das percepções: I = f(P) Sensores Ambiente Atuadores IA Processamento Convencional Objetivos Escolha das ações: A = g(I,O) IA Processamento Convencional Agente Inteligente x Sistema de IA Clássica Sistema Inteligente Não Situado Agente Situado Sensores Interpretação das percepções IA Ambiente Raciocínio Objetivos Atuadores Dados de Entrada Objetivos Escolha das ações IA Dados de Saída IA Agentes O que é um agente?       é uma entidade real ou virtual que está inserida em um ambiente que pode perceber o seu ambiente que pode agir no ambiente que pode se comunicar com outros agentes que tem um comportamento autônomo 7 Agentes  São sistemas que podem decidir por si próprios o que é necessário fazer para satisfazer o objetivo para o qual foram projetados. Tais sistemas:  Estão situados em algum ambiente  Possuem controle parcial sobre o ambiente  São capazes de ação autônoma  Exemplo:  Sistemas de controle: termostato 8 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 efetuadores (ex. vídeo, auto-falante, impressora, braços, ftp, mensagens para outros agentes,...)  Medida de desempenho: Critério que define o grau de sucesso das ações  ambiente  sensores Raciocinador efetuadores Agente modelo do ambiente O que é um agente? Outras propriedades freqüentemente associadas  Autonomia de raciocínio:    Adaptabilidade:    Requer IA, máquina de inferência e base de conhecimento Chave para: sistemas especialistas embutidos, controle, robótica, jogos, agentes na internet ... Requer IA, aprendizagem de máquina Chave para: agentes na internet, interfaces amigáveis ... Sociabilidade:  Requer IA + técnicas avançadas de sistemas distribuídos:     Protocolos padrões de comunicação, cooperação, negociação Raciocínio autônomo sobre crenças e confiabilidade Arquiteturas de interação social entre agentes Chave para: simulação multi-agente, comercio eletrônico, ... O que é um agente? Outras propriedades freqüentemente associadas  Personalidade:    Continuidade temporal e persistência:    Requer IA, modelagem de atitudes e emoções Chave para: entretenimento digital, realidade virtual, interfaces amigáveis ... Requer interface com sistema operacional e banco de dados Chave para: filtragem, monitoramento, controle, ... Mobilidade:  Requer:     Interface com rede Protocolos de segurança Suporte a código móvel Chave para: agentes de exploração da internet, ... 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. 12 Exemplos de Agentes    Um agente humano  Sensores: olhos, ouvidos, ...  Atuadores: mãos, pernas, boca, ... Um agente robótico  Sensores: câmeras, detectores da faixa de infravermelho, ...  Atuadores: motores, ... Um 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. Agentes: metodologia de desenvolvimento  Decompõe problema em:   Decompõe tipo de conhecimento em:         percepções, ações, objetivos e ambiente (e outros agentes) 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 15 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: Teresa Ludermir & Jacques Robin, Fundamentos de Inteligência Artificial, Cin-UFPE 16 Pergunta cautelosamente evitada até agora  O que é inteligência ? Quem é mais inteligente?  Seu médico ou sua empregada doméstica?  Seu advogado ou sua criança de 1 ano?  Kasparov ou Ronaldinho?  Dica: baseia sua resposta sobre os sucessos da IA nos último 40 anos 1997: 2x1 2050? 2x1 www.robocup.org    Novo desafio benchmark e teste de turing para IA Competição anual associada a conferencia de IA Para sistemas multi-agente situados Agentes - Ambiente  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 19 Agentes - Ambiente Fonte: Russel e Norvig, Inteligência Artificial. 20 Agentes - Estrutura  Agentes reativos simples  Agentes reativos baseados em modelo  Agentes baseados em objetivos  Agentes baseados na utilidade  Agentes com aprendizagem 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 importantes. 21 Agentes - Estrutura Agentes reativos simples 22 Agentes - Estrutura Agentes reativos baseados em modelo 23 Agentes - Estrutura Agentes baseados em objetivos 24 Agentes - Estrutura Agentes baseados na utilidade 25 Agentes - Estrutura Agentes com aprendizagem 26 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. 27 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 ?? 28 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 29 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!  Metáfora basicamente sociológica 30 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 ex. usina nuclear 31 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 32 Robô Multi-Humano: regras do jogo  Braços  não podem ver  não devem ouvir o que diz o sistema de visão  tem tato pouco refinado  podem responder apenas sim ou não ao cérebro  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  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  Voluntários?  Braços e olhos saem da sala...  Cérebro recebe a tarefa 33 Exemplos - Sistemas Multiagentes SMarket: Um Sistema Multiagentes para Compras on-line Fonte: http://wwwhome.cs.utwente.nl/~alme/cvitae/smarket-techreport.pdf 34