Inteligência Artificial Definição e evolução histórica Aplicações Abordagens e problemas principais Comparação com a computação convencional 1 Inteligência artificial (IA): definição Surgiu na década de 50 Objetivo: desenvolver sistemas para realizar tarefas que, no momento são melhor realizadas por seres humanos que por máquinas, ou não possuem solução algorítmica viável pela computação convencional problemas que não possuem uma solução algorítmica IA problemas solúveis por seres humanos Se o ser humano pode, por que não a máquina? (tese de Church-Turing) 2 Interação com outras disciplinas Matemática Filosofia Lingüística Sociologia IA Psicologia Computação Neuro-fisiologia Genética 3 Aplicações (fonte 1) Matemática: demonstração de teoremas, resolução simbólica de equações, geometria, etc. Pesquisa operacional: otimização e busca heurística em geral Jogos: xadrez, damas, go, etc. Processamento de linguagem natural: tradução automática, verificadores ortográficos e sintáticos, interfaces para BDs, etc. Sistemas tutores: modelagem do aluno, escolha de estratégias pedagógicas, etc. Percepção: visão, tato, audição, olfato, paladar... Robótica (software e hardware): manipulação, navegação, monitoramento, etc. 4 Aplicações Sistemas especialistas: Atividades que exigem conhecimento especializado e não formalizado Tarefas: diagnóstico, previsão, monitoramento, análise, planejamento, projeto, etc. Áreas: medicina, finanças, engenharia, química, indústria, arquitetura, arte, computação,... Computação: engenharia de software (sobretudo na Web) programação automática interfaces adaptativas bancos de dados dedutivos e ativos mineração de dados (data mining) sistemas distribuídos, etc. 5 Aplicações da IA: Robótica (fonte 2) Como obter navegação segura e eficiente, manipulação fina e versátil, autonomia? E no caso de ambientes dinâmicos e imprevisíveis? 6 Aplicações da IA: Automação de sistemas complexos Como modelar os componentes do sistema e dar-lhes autonomia? Como assegurar boa comunicação e coordenação entre esses componentes? 7 Automação de Software Complexo Segundo o Autonomic Computing Manifesto (IBM 2001), o que queremos são sistemas capazes de: Conhecer o ambiente Auto conhecimento Auto-Configuração Auto-Recuperação Auto-Otimização Auto-Proteção Conhecimento do contexto Integração automática Realizar predição 8 Aplicações da IA: Sistemas de controle Como frear o carro sem as rodas deslizarem em função da velocidade, atrito, ...? Como focar a câmera em função de luminosidade, distância...? Como ajustar a temperatura em da quantidade de roupa, fluxo de água, ...? 9 Aplicações da IA: Simulações e jogos Como modelar o ambiente físico e o comportamento/personalidade dos personagens? Como permitir interação interessante com o usuário? The Sims FIFA Soccer 10 Aplicações da IA: Previsão Como prever o valor do dólar (ou o clima) amanhã? Que dados são relevantes? Há comportamentos recorrentes? 11 Aplicações da IA: Sistemas de Recomendação Como fazer recomendações personalizadas de produtos? Como modelar os perfis dos compradores? Como recomendar experts capazes de ajudar usuários a resolver problemas? 12 Aplicações da IA: Recuperação de informação Como localizar a informação relevante? 13 Aplicações da IA: Detecção de intrusão e filtragem de spam Como saber se uma mensagem é lixo ou Como detectar usuários suspeitos e como lidar com de fato interessa? isto? 14 Aplicações da IA: Interação Humano Máquina Como dar ao usuário a ajuda de que ele precisa? Como interagir (e até navegar na web) com celular sem ter de digitar (hands-free)? Como adaptar a informação e funcionalidades ao dispositivo e à situação do usuário? 15 Aplicações da IA Internet e Web Maior valor agregado quando Redes e Sistemas embutida em sistemas de Distribuídos computação Banco de dados Engenharia de software Hardware (projeto e análise) Robótica Interfaces Computação Gráfica Jogos Etc. 16 Aplicações da IA hoje página da AAAI: http://www.aaai.org/AITopics/pmwiki/pmwiki.php/AITopics/Applicationsl Agriculture, Natural Resource Management, and the Environment Architecture & Design Art Artificial Noses Astronomy & Space Exploration Assistive Technologies Banking, Finance & Investing Bioinformatics Business & Manufacturing Drama, Fiction, Poetry, Storytelling & Machine Writing Earth & Atmospheric Sciences Engineering Filtering Fraud Detection & Prevention Hazards & Disasters Information Retrieval & Extraction Knowledge Management 17 Today’s Diversity of AI Applications (fonte 3) Agriculture, Natural Resource Management, and the Environment Architecture & Design Art Artificial Noses Astronomy & Space Exploration Assistive Technologies Banking, Finance & Investing Bioinformatics Business & Manufacturing Drama, Fiction, Poetry, Storytelling & Machine Writing Earth & Atmospheric Sciences Engineering Filtering Fraud Detection & Prevention Hazards & Disasters Information Retrieval & Extraction Knowledge Management Law Law Enforcement & Public Safety Libraries Marketing, Customer Relations & ECommerce Medicine Military Music Networks - including Maintenance, Security & Intrusion Detection Politics & Foreign Relations Public Health & Welfare Scientific Discovery Social Science Sports Telecommunications Transportation & Shipping Video Games, Toys. Robotic Pets & Entertainment AI Pays ! AI Industry Gross Revenue: 2002: US $11.9 billions Annual growth rate: 12.2% Projection for 2007: $21.2 billions www.aaai.org/AITopics/html/stats.html Companies specialized in AI: http://dmoz.org/Computers/Artificial_Intelligence/Companies/ Corporations developing and using AI: Google, Amazon, IBM, Microsoft, Yahoo, ... Corporations using IA: www.businessweek.com/bw50/content/mar2003/a3826072.htm Wal-Mart, Abbot Labs, US Bancorp, LucasArts, Petrobrás, ... Government agencies using AI: US National Security Agency When is a Machine Intelligent? What is Intelligence? Who’s smarter? Your medical doctor or your cleaning lady? Your lawyer or your two year old daughter? Kasparov or Ronaldinho? What did 40 years of AI research discovered? Common sense intelligence harder than expert intelligence Embodied intelligence harder than purely intellectual, abstract intelligence Kid intelligence harder than adult intelligence Animal intelligence harder than specifically human intelligence (after all we share 99% of our genes with chimpanzees !) Turing Test ? 199 7: 2050 2x1 ? www.robocup.org New benchmark task for AI Annual competition associated to conference on AI, Robotics or Multi-Agent Systems Tomorrow’s AI Applications Blade Runner M A T R I X A.I. Mercado fatura alto... Faturamento da indústria da IA: 2007: $17.9 bilhões só para Jogos Robótica em franco crescimento 50 Bilhões só para produtos de Semantic Web em 2010 fonte: www.aaai.org/AITopics/html/stats.html Empresas especializadas em IA: http://dmoz.org/Computers/Artificial_Intellige nce/Companies/ 23 Mercado fatura alto... Grandes empresas desenvolvendo e utilizando IA: IBM, HP, Sun, Microsoft, Unisys, Google, Amazon.com, Oracle ... Grandes empresas utilizando IA: www.businessweek.com/bw50/content/mar2003/a3826072.htm Wal-Mart, Abbot Labs, US Bancorp, LucasArts, Electronic Arts... Órgãos governamentais utilizando IA: US National Security Agency 24 O que esses problemas têm em comum? Grande complexidade número, variedade e natureza das tarefas Não há “solução algorítmica” mas existe conhecimento (em intenção) sobre o problema Requerem modelagem do comportamento de um ser inteligente autonomia, aprendizagem, conhecimento, etc. 25 Evolução da IA Agindo humanamente (anos 50-70): Teste de Turing Problema: “mito do cérebro eletrônico“ Pensando humanamente (anos 50-60): simulação cognitiva (Simon & Newell) Boas inspirações (GPS, Sistemas Especialistas,...) mas fraca justificativa para os resultados obtidos Pensando idealmente (anos 60-70): A escola logicista (McCarthy) Desenvolvimento de formalismos de representação de conhecimento Problemas: escasez de recursos computacionais, limitação dos tipos de inferências Agindo idealmente (anos 80 em diante): Agente inteligente (Newell, Minsky, Russel & Norvig) Abrangente (atividades), unificador (domínios da IA), excelente framework para projeto e análise de programas. 26 Definições da IA Realiza tarefas Para qual não existe algoritmo conhecido ou prático No entanto efetuada com alto desempenho por humanos Problema Algoritmo X Abstrações de IA + P(A|B) 27 Definições de IA Máquina que age humanamente: Teste de Turing ? Teste de Turing envolve: Processamento de Linguagem Natural Representação de Conhecimento Raciocínio Automático Aprendizagem Visão Computacional Robótica 28 Definições de IA Máquina que raciocina humanamente: Ciências Cognitivas, Psicologia, Neurociência,… Ciências Cognitivas Teorias Inteligência Artificial Modelos Computacionais 29 Definições de IA Máquina que raciocina racionalmente: Em direção a um conceito ideal de inteligência Formalização de “leis do pensamento” que governam a mente Lógica, Probabilidades,… Inferências corretas P(A|B) 30 Definições de IA Máquina que age racionalmente: Para atingir o melhor resultado, ou em situações de incerteza, o melhor resultado esperado I.e., escolha de ações que maximizam chances do agente atingir determinados objetivos Obs.: Não necessáriamente envolvendo raciocínio racional (e.g., ato reflexo) 31 Máquinas inteligentes? evolução em direção ao paradigma dos agentes 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) “O estudo das faculdades mentais através do uso de modelos computacionais” (6070) Idealmente (racionalmente) Humanamente “A arte de criar máquinas que realizam funções que requerem inteligência quando realizadas por pessoas” (50-70) “O ramo da Ciência da Computação que estuda a automação de comportamento inteligente” Agindo 32 Histórico da IA – Primeiros Passos (1943 - 1956) Modelo matemático de um neurônio por Warren McCulloch e Walter Pitts (1943) x1 w1 x2 w2 x3 w3 θ y y = 1 se i wi * xi > θ y = 0 caso contrário 33 Histórico da IA – Primeiros Passos (1943 - 1956) Regra de Donald Hebb para aprendizado de neurônios (1949) Implementação de modelos neurais por Marvin Minsky (1950) “Computing Machinery and Intelligence”, Allan Turing (1950) 34 Histórico da IA – Nascimento da IA (1956) Dartmond Workshop organizado por John McCarthy (1956) Adoção do termo: Inteligência Artificial Logic Theorist por Allen Newell and Hebert Simon 35 Histórico da IA – “Look Ma, No hands” (1952-1969) Criação de laboratórios, grupos de pesquisa, linguagens e programas para resolução de problemas Resultados expressivos: General Problem Solver por Newell e Simon Advice Taker por McCarthy (1958) Perceptron por Rosemblatt (1962) 36 Histórico da IA – “Look Ma, No hands” (1952-1969) “Não é minha intenção supreender ou chocar vocês, mas o que eu posso dizer é que atualmente existem no mundo máquinas que pensam, que aprendem e que criam. Além disso, a habilidade dessas máquinas de realizar tarefas está crescendo tão rápido que, em um futuro visível, a quantidade de problemas que elas resolveram será comparável com a quantidade com que a mente humana tem se ocupado.” Hebert Simon (1957) 37 Histórico da IA – Fase realista (1966-1973) Entusiasmo da fase anterior foi revisto Primeiros programas tratavam apenas de instâncias simples de problemas genéricos E.g., provar teoremas simples Resolver problemas complexos não era uma questão somente de mais hardware e memória Limitações básicas existentes nos modelos mais bem sucedidos E.g., Perceptrons (Minski e Papert, 1969) 38 Histórico da IA – Sistemas Baseados em Conhecimento (1969-1979) Sistemas para resolução de problemas mais específicos usando conhecimento do domínio Fase dos Sistemas Especialistas Dendral (1969) – Classificação de estrutura modecular a partir de dados de espectrômetro Mycin (1976) – Diagnóstico de infecções sanguíneas 39 Histórico da IA – Consolidação (1980---) Aplicação intensiva de sistemas especialistas na indústria Retorno das Redes Neurais Redes Multilayer Perceptron e o algoritmo de BackPropagation (Rumelhart, Hinton 1986) Inteligência Artificial consolidada como área de conhecimento científico 40 Inteligência Artificial Fundamentos •Filosofia •Matemática • Lógica • Proba. e Estat. • Cálculo • Sociologia • Lingüística • Psicologia • Genética • Neuro-fisiologia •Economia •Computação tradicional Aplicações Problemas • Busca heurística • Representação do conhecimento • Raciocínio • Planejamento • Aprendizagem • Sistemas Multi-Agentes • Reconhecimento de Padrões •Processamento de Linguagem Natural • Jogos • Sistemas Especialistas • Robótica • Bioinformática •Sistemas de Controle •Reconhecimento de Imagens •Recuperação de Informação 41 Problemas genéricos da IA Busca heurística e resolução de problemas Planejamento Representação de conhecimento Modelagem de Agentes e Sistemas Multiagentes Aprendizagem de Máquina Reconhecimento de padrões 42 Paradigmas de raciocínio Simbólico: metáfora lingüística ex. sistemas de produção, agentes,... Conexionista: metáfora cerebral ex. redes neurais Evolucionista: metáfora da natureza ex. algoritmos genéticos, vida artificial, Estatístico/Probabilístico Ex. Redes Bayesianas, sistemas difusos 43 Paradigma Simbólico West é criminoso ou não? “A lei americana diz que é proibido vender armas a uma nação hostil. Cuba possui alguns mísseis, e todos eles foram vendidos pelo Capitão West, que é americano” Como resolver automaticamente este problema de classificação? Segundo a IA (simbólica), é preciso: Identificar o conhecimento do domínio (modelo do problema) Representá-lo utlizando uma linguagem formal de representação Implementar um mecanismo de inferência para utilizar esse conhecimento 44 Conhecimento: organizando... Programa em IA = Agente racional entidade de software que age em um ambiente segundo um princípio de racionalidade Precisa ter conhecimento sobre: quais são suas propriedades relevantes do mundo como o mundo evolui como identificar os estados desejáveis do mundo quais as conseqüências de suas ações no mundo como medir o sucesso de suas ações como avaliar seus próprios conhecimentos Conhecimento: Representação e Uso Raciocínio: processo de construção de novas sentenças a partir de outras sentenças. Deve-se assegurar que o raciocínio é plausível (sound) fatos segue-se fatos Mundo Representação sentenças implica sentenças 46 Revisitando o caso do cap. West A) " x,y,z Americano(x) Arma(y) Nação(z) Hostil(z) Vende(x,z,y) Criminoso(x) B) " x Guerra(x,USA) Hostil(x) C) " x InimigoPolítico(x,USA) Hostil(x) D) " x Míssil(x) Arma(x) E) " x Bomba(x) Arma(x) F) Nação(Cuba) G) Nação(USA) H) InimigoPolítico(Cuba,USA) I) InimigoPolítico(Irã,USA) J) Americano(West) K) $ x Possui(Cuba,x) Míssil(x) L) " x Possui(Cuba,x) Míssil(x) Vende(West, Cuba,x) M) Possui(Cuba,M1) - Eliminação: quantificador existencial e N) Míssil(M1) conjunção de K O) Arma(M1) - Modus Ponens a partir de D e N P) Hostil(Cuba) - Modus Ponens a partir de C e H Q) Vende(West,Cuba,M1) - Modus Ponens a partir de L, M e N R) Criminoso(West) - Modus Ponens a partir de A, J, O, F, P e Q 47 Paradigma Conexionista Redes Neurais Definição “Romântica”: Técnica inspirada no funcionamento do cérebro, onde neurônios artificiais, conectados em rede, são capazes de aprender e de generalizar. Definição “Matemática”: Técnica de aproximação de funções por regressão não linear. É uma outra abordagem: linguagem -> redes de elementos simples raciocínio -> aprender diretamente a função entrada-saída Redes Neurais s1 w1i sj wji sn e(i) w ji sj e(i) s(i) s(i) f (e(i)) wni camada de entrada camada escondida camada de saída Paradigma Evolutivo EVOLUÇÃO diversidade é gerada por cruzamento e mutações os seres mais adaptados ao seus ambientes sobrevivem (seleção natural) as características genéticas de tais seres são herdadas pelas próximas gerações Paradigma Evolutivo Definição: Método probabilista de busca para resolução de problemas (otimização) “inspirado” na teoria da evolução Idéia: indivíduo = solução faz evoluir um conjunto de indivíduos mais adaptados por cruzamento através de sucessivas gerações fitness function f(i): R ->[0,1] Sistemas Simbólicos: arquitetura 52 Sistemas sub-simbólicos: arquiteturas Tensões Centrais da IA conhecimento em intenção (regras) Sistemas de PLN Sistemas Nebulosos (fuzzy) Robôs numérico Algoritmos genéticos Sistemas baseados em Redes Neurais Sistemas Especialistas Redes Bayesianas Sistemas baseado em casos simbólico Sistemas de Aprendizagem simbólica indutiva conhecimento em extensão (exemplos) 54 Problemas genéricos da IA Representação de conhecimento (RC) Aquisição de conhecimento e Aprendizagem (ACA) Busca heurística e resolução de problemas (BH) Planejamento (PL) Tratamento de incerteza (TI) Reconhecimento de padrões (RP) Ambientes/linguagens de desenvolvimento Avaliação de sistemas 55 Problemas genéricos e aplicações RC ACA BH Sist. Espec. ++ ++ + PLN ++ + + ++ Robótica + ++ + ++ Percepção + ++ + Jogos + Tutores ++ ++ PL TI RP + ++ + + ++ + ++ ++ ++ ++ + 56 Paradigmas e problemas genéricos simbólico RC ACA BH PL TI ++ ++ ++ ++ + conexion. ++ evolucion. + ++ estatist. + ++ + RP ++ ++ + ++ ++ ++ 57 Paradigmas e aplicações simbólico conexion evolucion Sist. Espec. ++ + PLN ++ + Robótica ++ Jogos ++ Tutores ++ + + ++ Percepção estat + ++ + 58 Computação convencional x IA: classes de problemas Solução matemática (NÃO), conhecimento (SIM) => IA simbólica Modelo do problema (NÃO), exemplos de solução (SIM) => IA (aprendizagem) Autonomia, adaptabilidade, interoperabilidade, ... => IA simbólica Repositório de conhecimento especialista (expertise) => IA simbólica 59 Computação convencional x IA: metas Tarefas para as quais os seres humanos são ineficientes x eficientes Completeza da entrada Fornecimento de explicações inteligíveis Adaptabilidade para novas instâncias do problema Privilégio das soluções heurísticas 60 Computação convencional x IA: métodos Algoritmo passo a passo x Mecanismo geral de inferência + conhecimento ... ou então aprendizado Dados e controle embutidos em código procedimental x Separação entre conhecimento declarativo e controle SPIV (specify prove implement verify) x (run understand debug edit) RUDE Linguagens de programação: imperativas x “alto-nível” (funcional, lógica, baseada em restrições) IA: Usa metáforas de sistemas naturais (neurônio, evolução, memória, sociedade, língua,...) 61 IA no Brasil Fracamente representada nas graduações em computação no máximo, 1 disciplina obrigatória no melhor dos casos, depois do sexto período Ementa restrita e desatualizada Economicamente ainda incipiente por falta de demanda ou de profissionais bem formados? Visão “destorcida e incompleta” do que é IA No exterior é o contrário MIT, Stanford, Carnegie Mellon, Berkeley, Imperial College, Cambridge Mercado fatura alto 62