Inteligência Artificial Uma Visão Geral Profa. Dra. Flavia Cristina Bernardini PURO – UFF Tópicos O que é IA História da IA Inteligência e Aprendizado O que constitui inteligência? Exercício: ◦ O que vocês entendem por inteligência? O que constitui inteligência? A inteligência é o termo usado no discurso comum para se referir à habilidade cognitiva Cognição é o conjunto dos processos mentais usados no pensamento na classificação, reconhecimento e compreensão para o julgamento através do raciocínio para o aprendizado de determinados sistemas e soluções de problemas Cognição é a forma como o cérebro percebe, aprende, recorda e pensa sobre toda informação captada através dos cinco sentidos O que constitui inteligência? Capacidade mental de: ◦ ◦ ◦ ◦ ◦ Raciocinar Planejar Resolver problemas Abstrair e compreender ideias e linguagens Aprender Etimologia: Latim intellectus, de intelligere = inteligir, entender, compreender. Composto de íntus = dentro e lègere = recolher, escolher, ler. A inteligência é somente humana? O que nos diferencia dos outros seres da natureza não é a inteligência ou a capacidade de ter emoções, de sentir prazer, dor, medo, de nos comunicar ou criar ferramentas, pois isso várias espécies também fazem em diferentes graus de eficiência. O que nos torna únicos é a consciência de nossa individualidade e, entre as consequências disso, está o sentimento de separação do mundo, dos outros, da natureza, pois se somos nós não podemos ser o outro. O que é IA? O que constitui inteligência? O que diferencia inteligência artificial de inteligência presente na natureza dos seres? Como você define a IA? Vamos divagar... IA – Definições “Uma área de pesquisa que investiga formas de habilitar o computador a realizar tarefas nas quais, até o momento, o ser humano tem um melhor desempenho”. Elaine Rich 1995 “Tão logo algum problema de IA é resolvido ele não é mais considerado um problema da área de IA...” Chuck Thorpe CMU, Robotics Institute, 2000 IA – Definições “Inteligência Artificial é o estudo dos sistemas que agem de um modo que a um observador qualquer parece inteligente” Problema: ◦ Parecer inteligente significa ser inteligente? IA – Definições Conjunto de técnicas para a construção de máquinas “inteligentes”, capazes de resolver problemas que requerem inteligência humana. (Nilsson) Ramo da Ciência da Computação dedicado à automação de comportamento inteligente. (Luger e Stubble) Tecnologia de processamento de informação que envolve processos de raciocínio, aprendizado e percepção. (Winston) Inteligência Artificial é o estudo das faculdades mentais com o uso de modelos computacionais. (Charniac & McDermott) IA – Definições “IA envolve utilizar métodos baseados no comportamento inteligente de humanos e outros animais para solucionar problemas complexos.” Coppin Podem ser projetados para se comportar de modo inteligente (comportamento humano) OU para dar conta de alguma função útil IA Forte x IA Fraca IA Forte: ◦ Se houver um computador com capacidade de processamento e suficiente inteligência, é possível criar um computador que possa literalmente pensar e ser consciente do mesmo modo que o humano IA Fraca: ◦ Comportamento inteligente pode ser modelado e utilizado por computadores para solucionar problemas complexos ◦ Agir inteligentemente não prova que seja verdadeiramente inteligente como um humano As 4 categorias das definições de Inteligência Artificial Sistemas que Sistemas que pensam como os pensam humanos racionalmente Sistemas que Sistemas que agem agem como racionalmente humanos As 4 categorias das definições de Inteligência Artificial Pensando como humanos: Ex: A abordagem da modelagem cognitiva Agindo como humanos: “The exciting new effort to make computers think... Ex: A abordagem Teste deinTuring machinesdo with minds, the full and literal sense” (Haugeland, 1985) Pensando racionalmente: “The automation of activities that we associate with Ex: A abordagem das leis do pensamento human thinking, activities such as decision- making, problem solving, learning...” (Bellman, 1978) Agindo racionalmente: Ex: A abordagem de agentes racionais As 4 categorias das definições de Inteligência Artificial Pensando como humanos: Ex: A abordagem da modelagem cognitiva Agindo como humanos: Ex: A abordagem do Teste de Turing Pensando “The racionalmente: art of creating machines that perform Ex: A abordagem leis dointelligence pensamento functionsdas that require when performed by people” (Kurzweil, 1990) Agindo racionalmente: “The study of how to make computers do things at Ex: A abordagem racionais which, atde theagentes moment, people are better” (Rich and Knight, 1991) As 4 categorias das definições de Inteligência “The study of Artificial mental faculties through the use of models” (Charniak and McDermott, Pensando computational como humanos: 1985) Ex: A abordagem da modelagem cognitiva “The study of the computations that make it possible to perceive, reason, and act” (Winston, Agindo como humanos: 1992) do Teste de Turing Ex: A abordagem Pensando racionalmente: Ex: A abordagem das leis do pensamento Agindo racionalmente: Ex: A abordagem de agentes racionais As 4 categorias das definições de Inteligência Artificial Pensando como humanos: Ex: A abordagem da modelagem cognitiva “A field of study that tries to explain and emulate intelligent behavior in terms of computational Agindo como humanos: processes” (Schalkoff, 1990) Ex: A abordagem do Teste de Turing “The branch of computer science that is concerned with the automation of intelligent behavior” (Luger Pensando and racionalmente: Stubblefield, 1993) Ex: A abordagem das leis do pensamento Agindo racionalmente: Ex: A abordagem de agentes racionais Fundamentos da IA Neurociência Psicologia Economia Engenharia Linguística Matemática IA Filosofia Fundamentos da IA Filosofia (428 A.C. – presente) ◦ Regras formais podem ser usadas para obter conclusões válidas? ◦ Como a mente (o intelecto) se desenvolve a partir de um cérebro físico? ◦ De onde vem o conhecimento? ◦ Como o conhecimento conduz à ação? Matemática (800 D.C. – presente) ◦ Quais são as regras formais para obter conclusões válidas? Noção de Algoritmo ◦ O que pode ser computado? Intratabilidade e NP-completude ◦ Como raciocinamos com informações incertas? Probabilidade Fundamentos da IA Economia (1776 – presente) ◦ Como devemos tomar decisões para maximizar o lucro? Teoria da Decisão ◦ Como devemos fazer algo quando outros não podem nos acompanhar? Teoria dos Jogos (agente racional deve agir de forma casual) ◦ Como devemos fazer algo quando o lucro pode estar distante no futuro, e resultam de ações executadas em sequência? Pesquisa Operacional Neurociência (1861 – presente) ◦ Como o cérebro processa informações? Fundamentos da IA Psicologia (1879 – presente) ◦ Como os seres humanos e os animais pensam e agem? Surgimento da ciência cognitiva, onde uma teoria cognitiva deve descrever um mecanismo detalhado de processamento de informações Engenharia de Computadores, Ciência da Computação, Teoria de Controle e Cibernética (1940 – presente) ◦ Como podemos construir computador eficiente? ◦ Como podemos construir sistemas eficientes? ◦ Como os artefatos podem operar sobre seu próprio controle? Linguística (1957 – presente) ◦ Como a linguagem se relaciona ao pensamento? “IA é considerada polêmica porque desafia a idéia da unicidade do pensamento humano, da mesma forma que Darwin desafiou a unicidade da origem dos seres humanos.” Helbert A. Simon CMU, 2000 Linha do Tempo da IA Alan Turing “Computer Machinery and Intelligence” Surge o termo Artificial Intelligence LISP Primeiro Projeto Japonês Segundo Projeto Japonês PROLOG 1950 1956 1957 1958 1962 1970 1981 1988 1992 Logic Theorist General Problem Solver Primeiro Robô Industrial Primeiro Sistema Especialista Ganhos com Sistemas de IA chegam a US$ 1 Bilhão A História da Inteligência Artificial A gestação de IA (1943-1956) O entusiasmo dos primeiros anos de IA, grandes expectativas (1952-1969) Uma dose de realidade (1966-1974) Sistemas Baseados em Conhecimento: A Chave para o Poder? (1969-1979) IA se torna comercial (1980-1988) O retorno das Redes Neurais (1986 - presente) Eventos Recentes A gestação de IA (1943-1956) Primeiro trabalho de IA foi um modelo de neurônios artificiais (McCulloch&Pitts-43) ◦ Precursor das tradições lógica e conexionista de IA ◦ Baseado em: Fisiologia Básica Função dos neurônios no cérebro Lógica Proposicional criada por Russel e Whitehead Teoria da Computação de Turing ◦ Qualquer função computável podia ser calculada por rede de neurônios conectados Donald Hebb (1949) propõe atualização simples das conexões sinápticas ◦ Aprendizado de Hebb (influente até os dias atuais) A gestação de IA (1943-1956) 1950: “Computing Machinery and Intelligence”, por Alan Turing ◦ Teste de Turing, Aprendizagem de Máquina, Algoritmos Genéticos e Aprendizagem por Reforço ◦ Disponível em http://www.loebner.net/Prizef/TuringArticle.html Shannon & Turing escreveram programas de xadrez para máquinas von Neumann 1951: Marvin Minsky e Dean Edmonds construíram o primeiro computador de rede neural ◦ Mais tarde, Minsky provou teoremas importantes que mostravam limitações da pesquisa das redes neurais da época O Teste de Turing Interrogador Barreira Física Sistema Computacional Interface Humano A gestação de IA (1943-1956) Workshop em Dartmouth em 56 (2 meses): John McCarthy (criador do LISP), Minsky e outros reuniram pesquisadores de Princeton, IBM, MIT e CMU interessados em Teoria dos Autômatos, Redes Neurais e no estudo da inteligência Foi apresentado o LT (Logic Theorist) – provas de teoremas matemáticos Os 20 anos seguintes foram dominados por pesquisadores participantes do Workshop e seus estudantes Foi neste Workshop que o nome Inteligência Artificial surgiu para denominar o novo campo de estudo, cunhado por McCarthy O entusiasmo dos primeiros anos de IA (1952-1969) Newell e Simon desenvolveram o GPS (General Problem Solver) ◦ GPS: Programa projetado para imitar protocolos humanos de resolução de problemas ◦ Primeiro programa a incorporar a abordagem “Pensar como humanos” ◦ Combinação de IA e Ciência Cognitiva continua até hoje Gelernter (1959) construiu o Geometry Thorem Prover ◦ Demonstrava teoremas considerados bastante complicados por muitos alunos de matemática O entusiasmo dos primeiros anos de IA (1952-1969) Samuel (1952) escreveu uma série de programas para jogar damas em nível amador elevado ◦ Provou o contrário do que era senso comum na época: “computadores podem fazer somente o que foram programados para fazer” ◦ Seus programas aprendiam rapidamente a jogar melhor que seu criador McCarthy (1958) saiu de Dartmouth para o MIT ◦ Desenvolveu o LISP, que se tornou a linguagem dominante de IA – LISP é 1 ano mais jovem que FORTRAN (!) ◦ Ele e outros desenvolveram o conceito de time sharing ◦ Escreveu o artigo Problems with common sense Advice Taker – Primeiro sistema de IA completo O entusiasmo dos primeiros anos de IA (1952-1969) Robinson (1963) descobriu o método da resolução ◦ Um algoritmo completo de provas de teoremas para a Lógica de 1a Ordem – PROLOG estava a caminho. Minsky (1958) foi para o MIT ◦ Seguiu outro caminho de pesquisa diferente de McCarthy ◦ Supervisionou uma série de estudantes que escolheram problemas limitados que pareciam requerer inteligência para serem resolvidos: micromundos ◦ O mais famoso micromundo foi o mundo dos blocos ◦ Trabalhos de redes neurais começaram a florescer O entusiasmo dos primeiros anos de IA (1952-1969) Declaração de Herbert Simon (1957): ◦ “Não é meu objetivo surpreendê-los ou chocá-los – mas o modo mais simples de resumir tudo isso é dizer que agora existem no mundo máquinas que pensam, aprendem e criam. Além disso, sua capacidade de realizar essas atividades está crescendo rapidamente até o ponto – em um futuro visível – no qual a variedade de problemas com os quais lida a mente humana.” Previsão mais concreta de Simon: ◦ Em 10 anos um computador seria campeão de xadrez e um teorema matemático significativo seria provado por uma máquina Uma dose de realidade (1966-1974) A barreira que muitos projetos de IA encontraram: ◦ Métodos suficientes para demonstrações de um ou dois exemplos simples falhavam terrivelmente quando foram utilizados em uma seleção maior de problemas ou problemas mais difíceis O primeiro tipo de dificuldade: ◦ Os primeiros programas continham pouco ou nenhum conhecimento do assunto que eles tratavam ◦ Tinham sucesso através de manipulações sintáticas muito simples ELIZA (1966) – simulação de diálogo entre paciente e psicólogo Tradução – imaginava-se que tradução de documentos eram simples manipulações de regras sintáticas Uma dose de realidade (1966-1974) O segundo tipo de dificuldade: Intratabilidade de muitos problemas que IA estava tentando resolver ◦ Os primeiros programas funcionavam somente porque os micromundos continham poucos objetos ◦ Antes da teoria da complexidade computacional ser desenvolvida, acreditava-se que o problema de se “escalar” para problemas maiores era simplesmente um problema de se ter hardware mais rápido Os experimentos de evolução da máquina (hoje AGs) se baseavam em pequenas mutações aleatórias em código de máquina para geração de programa com bom desempenho para tarefas simples (Nenhum progresso obtido) Uma dose de realidade (1966-1974) Incapacidade da explosão combinatória serviu de base para corte de investimentos por parte do governo britânico Uma terceira dificuldade veio das limitações sobre as estruturas básicas usadas para gerar comportamento inteligente ◦ Minsky e Papert (1969) provou que os perceptrons, que formavam as redes neurais, podiam aprender tudo o que podiam representar, mas sua capacidade de representação era bastante limitada SBCs: A Chave para o Poder? (1969-1979) O método de resolução de problemas usado na primeira década de IA foi o mecanismo de busca de propósito geral ◦ Eles são chamados métodos fracos porque eles usam pouca informação sobre o domínio ◦ Para domínios complexos o desempenho é pobre. Programa Dendral (69): ◦ inferia a estrutura molecular de informações fornecidas por um espectrômetro de massa ◦ foi o primeiro sistema a trabalhar com conhecimento intensivo – sua esperteza era derivada de um grande número de regras específicas SBCs: A Chave para o Poder? (1969-1979) Feigenbaum e outros em Stanford começam a investigar a nova metodologia de sistemas especialistas A importância do conhecimento do domínio foi também aparente na área de processamento de linguagem natural O crescimento das aplicações no mundo real aumentou a demanda por esquemas de representação de conhecimento alternativos: lógica e frames IA se torna comercial (1980-1988) O primeiro sistema especialista de sucesso comercial, R1, começou a operar na DEC e ajudava a configurar ordens para novos computadores. Em 1981, os japoneses anunciaram a “Quinta Geração”, um projeto de 10 anos para construção de computadores inteligentes que rodavam Prolog Não atenderam as metas ambiciosas O retorno das Redes Neurais (1986 - presente) Ciência da computação negligenciou o campo das redes neurais mas continuou em outros campos, particularmente na Física ◦ Hopfield (1982) usou técnicas de mecânica estatística para analisar propriedades de armazenamento e otimização de redes, tratando coleções de nós como coleções de átomos Humelhart e Hinton (psicólogos) continuaram o estudo de modelos de memória em redes neurais 1980: Algoritmo de retro-propagação de erros Modelos Conexionistas utilizados para construir Sistemas Inteligentes A IA se torna uma ciência (1987 – presente) Algumas desilusões sobre a aplicabilidade de sistemas especialistas começaram a surgir na época Revolução no trabalho de IA, tanto em conteúdo quanto em metodologia ◦ Teorias existentes são utilizadas como bases, ao invés de propor teorias inteiramente novas ◦ Afirmações são fundamentadas em teorias rigorosas ou em evidência experimental rígida ◦ Intuição e exemplos de brinquedo perdem espaço para teorias bem embasadas e aplicações reais IA deixou de se isolar da Ciência da Computação ◦ Aprendizado de Máquina e Teoria da Informação (ou Teoria Matemática da Comunicação) ◦ Raciocínio Incerto e Modelagem Estocástica ◦ Busca e Otimização Clássica e do Controle ◦ Raciocínio Automático e Métodos Formais A IA se torna uma ciência (1987 – presente) IA adotou com firmeza o método científico ◦ Hipóteses devem ser submetidas a rigorosos experimentos empíricos ◦ Resultados devem ser analisados estatisticamente ◦ Experimentos podem ser reproduzidos com a Internet e os repositórios de dados e códigos compartilhados Reconhecimento de Fala – na década de 70, ampla variedade de arquiteturas e abordagens foram propostas, testadas em exemplos selecionados ◦ Modelos Ocultos de Markov (MOM) dominam a área, baseados em teoria matemática rigorosa Redes Neurais, técnicas de reconhecimento de padrões, técnicas estatísticas e aprendizado de máquina podem ser comparadas ◦ Surgimento da Mineração de Dados A IA se torna uma ciência (1987 – presente) Redes Bayesianas foram criadas para permitir representação de conhecimento incerto e um raciocínio rigoroso sobre esse tipo de conhecimento ◦ Domina a IA sobre raciocínio incerto e sistemas especialistas ◦ 1982: promoveu a ideia de sistemas que agem racionalmente de acordo com as leis da teoria da decisão e não procuram imitar os passos do pensamento de especialistas humanos Formalização e especialização também levaram alguns tópicos cada vez mais isolados do ramo principal da IA ◦ Robótica ◦ Visão Computacional ◦ Representação de Conhecimento e Ontologias O surgimento de Agentes Inteligentes (1995 – presente) Progresso na resolução de subproblemas de IA levaram pesquisadores a examinar mais uma vez o problema do agente como um todo SOAR (1990): exemplo mais conhecido de arquitetura completa de agente Objetivo: entender o funcionamento interno dos agentes incorporados a ambientes reais com entradas sensoriais contínuas Sensores Atuadores Uma Nova Visão A partir dos anos 80 foi percebido que, geralmente, o modelo de raciocínio utilizado em IA era diferente do usado pelos seres humanos Essas diferenças não invalidam o uso de modelos não-humanos ◦ O computador precisa raciocinar como o homem? ◦ O homem voa? E precisa voar como um pássaro? Uma Nova Visão Em outras palavras, para que alguém quer construir uma cópia da mente humana? Não é suficiente a original? Não é a mente humana a mais difícil de se auto-examinar? A única solução aparentemente lógica é separar a inteligência humana da inteligência artificial para construir algo completamente novo Áreas Relacionadas com a Inteligência Artificial Lógica Matemática Lingüística Biologia Psicologia Robótica Engenharia IA Redes Neurais Sistemas Baseados em Conhecimento Ciência da Computação Filosofia Planejamento Sistemas Nebulosos Aprendizado de Máquina Processamento de Linguagem Natural Algumas Aplicações de IA hoje Buscadores Inteligentes (aplicados principalmente à Web) Reconhecimento de Voz Robótica Mineração de Dados Casas Inteligentes Sub-áreas de IA complementam-se e, assim, podem ser combinadas produzindo resultados surpreendentes Algumas Aplicações de IA hoje Notícias recentes: ◦ Google 'monopoliza' cientistas de inteligência artificial http://www1.folha.uol.com.br/tec/2014/02/140590 7-google-monopoliza-cientistas-de-inteligenciaartificial.shtml ◦ Unsubscribing? The New York Times Wants to Predict That http://www.technologyreview.com/news/524716/u nsubscribing-the-new-york-times-wants-topredict-that/ ◦ Outras tantas... Paradigmas da Inteligência O que é inteligência? Muito difícil!!! Procedimento Inteligente Aprende por experiência Usa conhecimento adquirido por experiência Soluciona problemas na ausência de alguma informação Reage rapidamente perante uma nova situação Determina o que é importante Raciocina e pensa Entende imagens visuais Processa e manipula símbolos É criativo e imaginativo Usa heurísticas Inteligência x Aprendizado Aprendizado é a chave da superioridade da Inteligência Humana ◦ Aprendizado é a essência da Inteligência Para que uma máquina tenha Comportamento Inteligente, deve-se aumentar sua Capacidade de Aprendizado Inteligência x Aprendizado O ser humano está pré-programado para o aprendizado ◦ Aprende ampliando o alcance do conhecimento que já possui, através de reordenações sucessivas O computador não possui o programa inicial para procurar por informações e realizar aprendizado em geral Paradigmas e técnicas de aprendizado de máquina ainda possuem um alvo bem mais limitado do que o aprendizado humano Objetivos da Disciplina Oferecer uma visão geral da IA ◦ ◦ ◦ ◦ Representação de Conhecimento Algoritmos de Busca Aprendizado de Máquina Redes Neurais Avaliação 2 provas 2 trabalhos (escrito e prático) ◦ Temas: Planejamento Processamento de Língua Natural Visão Computacional Robótica Têmpera Simulada e Colônia de Formigas Algoritmos Genéticos e Programação Genética Ontologias Vida Artificial e Comportamento Emergente IA em Jogos Agradecimentos Parte deste material foi baseado em slides de Maria Carolina Monard.