Introdução à Sistemas Inteligentes Geber Ramalho CIn-UFPE Pergunta O que é Inteligência Artificial? Qual é seu objetivo? CIn-UFPE 2 O que a mídia diz... AI MATRIX Blade Runner O que a gente pensa... IA é o camarão da empada (da computação) O que é IA? A IA que estudaremos é, portanto, aquela embutida em aplicações reais do seu cotidiano... Agricultura Processamento de imagem Negócios e finanças Direito Química Indústria Comunicações Comércio Computação Educação Eletrônica Engenharia Ciência Meio ambiente Tecnologia espacial Geologia Transportes, ... CIn-UFPE Internet Matemática Redes e Sistemas Distribuídos Banco de dados Medicina Engenharia de software Meteorologia Interfaces Robótica Militar Jogos Hardware (projeto e análise) Sistemas de potência Etc. 5 Produção de jogos e histórias interativas Como modelar o ambiente físico e o comportamento/personalidade dos personagens? Como permitir uma boa interação com usuário? The Sims CIn-UFPE FIFA Soccer 6 Controle de robôs Como obter navegação segura e eficiente, estabilidade, manipulação fina e versátil? E no caso de ambientes dinâmicos e imprevisíveis? HAZBOT: ambientes com atmosfera inflamável CIn-UFPE 7 Automação de sistemas complexos Como modelar os componentes do sistema e dar-lhes autonomia? Como assegurar uma boa comunicação e coordenação entre estes componentes? CIn-UFPE 8 Busca de informação na Web Como localizar a informação relevante? CIn-UFPE 9 Recomendação de produtos Como fazer recomendações personalizadas de produtos? Como modelar os perfis dos compradores? CIn-UFPE 10 Previsão Como prever o valor do dólar (ou o clima) amanhã? Que dados são relevantes? Há comportamentos recorrentes? CIn-UFPE Parreira de novo !!! 11 Detecção de Intrusão e Filtragem de Spam Como saber se uma mensagem é lixo ou de fato interessa? Como saber se um dado comportamento de usuário é suspeito e com lidar com isto? CIn-UFPE 12 Sistemas de Controle Como brecar o carro sem as rodas deslizarem em função da velocidade, atrito, etc.? Como focar a câmera em função de luminosidade, distância, etc.? Como ajustar a temperatura em da quantidade de roupa, fluxo de água, etc.? CIn-UFPE 13 Interface Como dar ao usuário a ajudar de que ele precisa? Como interagir (e quem sabe navegar na web) com celular sem ter de digitar (hands-free)? CIn-UFPE 14 O que estes problemas têm em comum? Grande complexidade (número, variedade e natureza das tarefas) Não há “solução algorítmica”, mas existe conhecimento Modelagem do comportamento de um ser inteligente (conhecimento, aprendizagem, iniciativa, etc.) CIn-UFPE 15 Inteligência Artificial (IA) Área da computação que, há décadas, lida com esses problemas. Objetivo • construir (e aprender a construir) programas que, segundo critérios definidos, exibem um comportamento inteligente na realização de uma dada tarefa. Decomposta em várias sub-áreas • representação do conhecimento, percepção, aprendizagem, processamento de linguagem natural, planejamento,... Interagindo com outras áreas • Computação, sociologia, estatística, economia, psicologia, lingüística, lógica, educação, ... CIn-UFPE 16 Inteligência Artificial A computação é uma ciência do artificial com processo de desenvolvimento empírico • Ciências naturais x Ciências do artificial • Aspecto mais marcante na IA... Como definir a IA: tarefas ou métodos? • Tarefas são melhor realizadas por seres humanos que por máquinas... CIn-UFPE 17 Como a IA resolve estes problemas... É preciso desenvolver software com novas “capacidades”... Autonomia (raciocínio com conhecimento) Adaptabilidade e aprendizagem Comunicação, coordenação,... Estas capacidades se agrupam na noção de “Agente Inteligente” CIn-UFPE 18 O que é um agente? Agente é qualquer entidade que: • percebe seu ambiente através de sensores (ex. câmeras, microfone, teclado, finger, ...) • age sobre ele através de atuadores (ex. vídeo, autofalante, impressora, braços, ftp, ...) Mapeamento: seqüência perceptiva => ação ambiente sensores Raciocinador atuadores Agente modelo do ambiente Agente Racional Agente Racional: fazer a melhor coisa possível • segue o princípio da racionalidade: dada uma seqüência perceptiva, o agente escolhe, segundo seus conhecimentos, as ações que satisfazem melhor seu objetivo. • É uma metáfora de modelagem Racionalidade Onisciência, limitações de: • • • • CIn-UFPE assim como objetos, funções e procedimentos Sensores atuadores raciocinador (conhecimento, tempo, etc.) Agir para obter mais dados perceptivos é racional 20 Porque usar a Metáfora de Agentes? (1) Livro-texto de IA mais didático e mais moderno (2) Fornece visão unificadora das várias sub-áreas da IA (3) Fornece metodologias de desenvolvimento de sistemas inteligentes (4) Ajuda a embutir/integrar a IA em sistemas computacionais tradicionais (5) Permite tratar melhor a interação com ambiente (6) Permite tratamento natural da IA distribuída CIn-UFPE 21 (1) Livro texto Stuart J. Russell and Peter Norvig Artificial Intelligence: A Modern Approach (2nd Ed) (AIMA) • http://aima.cs.berkeley.edu CIn-UFPE 22 (1) Evolução da IA Pensando “A automação de atividades que nós associamos com o pensamento humano (e.g., tomada de decisão, solução de problemas, aprendizagem, etc.)” (50-60) – Simon&Newell “O estudo das faculdades mentais através do uso de modelos computacionais” (60-70) - McCarthy Idealmente (racionalmente) Humanamente “A arte de criar máquinas que realizam funções que requerem inteligência quando realizadas por pessoas” (50-70) - Turing “O ramo da Ciência da Computação que estuda a automação de comportamento inteligente” (1995) – Russel&Norvig Agindo (2) visão unificadora da IA Exemplo: RoboCup • planejamento, visão, raciocínio, coordenação, controle, comunicação, aprendizagem,... CIn-UFPE 24 (3) Metodologias de desenvolvimento Decompõe problema em: • percepções, ações, objetivos, e ambiente (e outros agentes) Decompõe 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 CIn-UFPE 25 Agente de policia Raciocínio Agente Conhecimento: - leis - comportamento dos indivíduos, ... Percepção Ambiente Objetivo: - fazer com que as leis sejam respeitadas Execução Ações: - multar - apitar - parar, ... (4) Embutir IA Agente = Objeto com autonomia e/ou adaptabilidade • Agent-Oriented Programming Autonomia • De decisão: comportamento pró-ativo (sem evocação) ex. gerenciamento de disco • De decisão: negociação (não reage à evocação) do it for free x do it for money (ex. robocup) • De raciocínio: programação declarativa O que em vez de como: abstração (ex. robocup) Existem API’s de IA • raciocínio, aprendizagem, comunicação,... CIn-UFPE 27 (5) Interação com o Ambiente Robocup: novo teste de Turing para a IA depois do xadrez? 1997: 2x1 2050?: 2x1 CIn-UFPE 28 (6) Sistemas Multi-agentes Assim como a computação, existe a IA distribuída • o que interessa é o comportamento emergente da interação Exemplo: patrulha multi-agente CIn-UFPE 29 IA nas Empresas Hoje Companhias • Microsoft • IBM • Netscape • Apple • AltaVista • Sun • Sony • Amazon.Com • LucasArts • Oracle • Motorola • Fujitsu • Toshiba CIn-UFPE • • • • • • • • • • • • Nvidia Kinetix JVC Novell Lotus Symantec Sharp Casio Panasonic Mitsubishi Hitachi 3COM ... http://www.gwu.edu/~aisoc/co mpany.html 30 E amanhã???? Com a computação ubíqua/pervarsiva • • • • • CIn-UFPE Serviços sensíveis ao contexto e ao local Serviços personalizados Interfaces amigáveis (tradutores, linguagem natural,...) Mineração de dados ... 31 Bibliografia Capítulo 1 e começo do capítulo 2 do AIMA Artigos de fundadores • • • A. Turing. Computing Machinery and Intellgence. Mind, 59, pp. 433-60, 1950 A. Newell and H. Simon. Computer science as empirical inquiry: Symbols and search. Communications of the ACM, 19(3):113--126, Mar. 1976 John McCarthy. What is Artificial Intelligence? http://wwwformal.stanford.edu/jmc/whatisai/whatisai.html Textos informais 1. Geber Ramalho. Eita! Deep Blue ganhou, e agora? Jornal do Comércio, 26/05/1997. Recife. http://www.di.ufpe.br/~glr/Publications/deepblue.htm 2. Geber Ramalho. Inteligência Artificial: ficção ou camarão? Jornal O Povo, 10/09/2001, Fortaleza. http://www.di.ufpe.br/~glr/Publications/ficcaocamarao.html CIn-UFPE 32