Alan Turing Inteligência Artificial na Revolução das Máquinas
A história de como Alan Turing Inteligência Artificial é uma jornada que abrange eventos significativos e figuras influentes neste campo, começando com o trabalho pioneiro do lógico britânico Alan Turing na década de 1930 e se estendendo até os avanços tecnológicos do início do século XXI. A IA é definida como a capacidade de um computador digital ou de um robô controlado por computador para executar tarefas normalmente associadas a seres inteligentes.
O termo “inteligência artificial” é frequentemente utilizado para descrever o projeto de criação de sistemas que possuem processos intelectuais característicos dos seres humanos. Isso inclui habilidades como raciocínio, interpretação de significados, generalização e a capacidade de aprender com experiências passadas.
Para saber mais sobre os desenvolvimentos contemporâneos na IA, consulte a seção dedicada à inteligência artificial.
Alan Turing e os Primórdios da Inteligência Artificial
O Trabalho Teórico
O primeiro trabalho significativo na área da inteligência artificial foi realizado no meio do século XX pelo lógico britânico e pioneiro da computação Alan Mathison Turing. Em 1935, Turing descreveu uma máquina de computação abstrata composta por uma memória ilimitada e um scanner que se movia para frente e para trás na memória, símbolo por símbolo, lendo o que encontrava e escrevendo novos símbolos. As ações do scanner eram determinadas por um programa de instruções, também armazenado na memória na forma de símbolos. Esse conceito de Turing é conhecido como o conceito de programa armazenado, que implica na possibilidade de a máquina operar, modificar ou melhorar seu próprio programa. A concepção de Turing é agora chamada simplesmente de máquina de Turing universal. Todos os computadores modernos, em essência, são máquinas de Turing universais.
Durante a Segunda Guerra Mundial, Turing foi um dos principais criptanalistas na Escola de Códigos e Cifras do Governo, localizada em Bletchley Park, Buckinghamshire, Inglaterra. Turing não pôde se dedicar ao projeto de construção de uma máquina de computação eletrônica com programa armazenado até o fim das hostilidades na Europa, em 1945. No entanto, durante a guerra, ele refletiu bastante sobre a questão da inteligência das máquinas. Um de seus colegas em Bletchley Park, Donald Michie (que mais tarde fundou o Departamento de Inteligência e Percepção de Máquinas na Universidade de Edimburgo), recordou que Turing frequentemente discutia como os computadores poderiam aprender com a experiência e resolver novos problemas utilizando princípios orientadores—um processo agora conhecido como resolução heurística de problemas.
Turing pode ter dado a primeira palestra pública (em Londres, 1947) a mencionar a inteligência computacional, afirmando: “O que queremos é uma máquina que possa aprender com a experiência” e que “a possibilidade de permitir que a máquina altere suas próprias instruções fornece o mecanismo para isso.” Em 1948, ele introduziu muitos dos conceitos centrais da IA em um relatório intitulado “Máquinas Inteligentes”. No entanto, Turing não publicou este artigo, e muitas de suas ideias foram mais tarde reinventadas por outros. Por exemplo, uma das ideias originais de Turing era treinar uma rede de neurônios artificiais para realizar tarefas específicas, uma abordagem que será discutida na seção sobre Conexionalismo.
O Xadrez e a Inteligência Artificial
A Contribuição de Turing para a Inteligência das Máquinas
No Bletchley Park, Turing ilustrou suas ideias sobre a inteligência das máquinas utilizando o xadrez como um exemplo—uma fonte útil de problemas desafiadores e claramente definidos, contra os quais métodos propostos para resolução de problemas poderiam ser testados. Em teoria, um computador jogando xadrez poderia realizar uma busca exaustiva por todos os movimentos disponíveis, mas, na prática, isso é impossível devido à necessidade de examinar um número astronomicamente grande de possibilidades. Heurísticas são necessárias para guiar uma busca mais restrita e discriminativa. Embora Turing tenha experimentado o design de programas de xadrez, ele teve que se contentar com a teoria na ausência de um computador para executar seu programa. Os primeiros programas verdadeiramente de IA tiveram que aguardar a chegada dos computadores digitais eletrônicos com programa armazenado.
O Encontro Histórico: Garry Kasparov e Deep Blue
Em 10 de fevereiro de 1996, o campeão mundial de xadrez Garry Kasparov (esquerda) fez uma jogada inicial em um jogo de seis partidas contra o computador Deep Blue, da IBM, em Filadélfia. Feng-hsiung Hsu (direita), o principal projetista do Deep Blue, insere um movimento no computador. Este computador, capaz de calcular 200 milhões de posições por segundo, tinha poder suficiente para competir em nível com Kasparov. Kasparov venceu Deep Blue por 4–2, mas perdeu em um rematch no ano seguinte por 3 ½–2 ½.
As Previsões de Turing e o Avanço da Computação
Em 1945, Turing previu que, um dia, os computadores jogariam xadrez de forma excepcional. Essa previsão se concretizou pouco mais de 50 anos depois, em 1997, quando o Deep Blue derrotou o campeão mundial Garry Kasparov em uma partida de seis jogos. Embora a previsão de Turing tenha se realizado, sua expectativa de que a programação de xadrez contribuiria para a compreensão de como os seres humanos pensam não se concretizou. A enorme melhoria no xadrez computacional desde a época de Turing é atribuída a avanços na engenharia de computadores, e não a avanços em IA: os 256 processadores paralelos do Deep Blue permitiram que ele examinasse 200 milhões de movimentos possíveis por segundo e olhasse até 14 jogadas à frente. Muitos concordam com Noam Chomsky, um linguista do Instituto de Tecnologia de Massachusetts (MIT), que afirmou que um computador vencer um grande mestre no xadrez é tão interessante quanto um trator vencer uma competição olímpica de levantamento de peso.
O Teste de Turing
Introdução ao Conceito de Inteligência Computacional
Em 1950, Turing contornou o debate tradicional sobre a definição de inteligência ao introduzir um teste prático para a inteligência de computadores, agora conhecido simplesmente como teste de Turing. Esse teste envolve três participantes: um computador, um interrogador humano e um humano que atua como isca. O interrogador tenta determinar, fazendo perguntas aos outros dois participantes, qual deles é o computador. Toda a comunicação ocorre por meio de um teclado e uma tela de exibição. O interrogador pode fazer perguntas tão penetrantes e variadas quanto necessário, e o computador é autorizado a fazer tudo o que for possível para forçar uma identificação incorreta. (Por exemplo, o computador pode responder “Não” à pergunta “Você é um computador?” e pode demorar um tempo considerável antes de responder de forma incorreta a um pedido para multiplicar dois números grandes.)
O Papel da Isca e a Avaliação da Inteligência
A isca deve ajudar o interrogador a fazer uma identificação correta. Diferentes pessoas desempenham os papéis de interrogador e isca, e, se uma proporção suficiente de interrogadores não conseguir distinguir o computador do ser humano, então (de acordo com os defensores do teste de Turing) o computador é considerado uma entidade inteligente e pensante.
O Prêmio Loebner e a Evolução do Teste
Em 1991, o filantropo americano Hugh Loebner iniciou a competição anual do Prêmio Loebner, prometendo US$ 100.000 ao primeiro computador que passasse o teste de Turing e concedendo US$ 2.000 anualmente ao melhor desempenho. No entanto, nenhum programa de IA chegou perto de passar um teste de Turing puro. No final de 2022, o surgimento do modelo de linguagem ChatGPT reacendeu a discussão sobre a possibilidade de que os componentes do teste de Turing fossem atendidos. O cientista de dados da BuzzFeed, Max Woolf, afirmou que o ChatGPT passou no teste de Turing em dezembro de 2022, mas alguns especialistas argumentam que o ChatGPT não passou em um verdadeiro teste de Turing, pois, em uso comum, o modelo frequentemente afirma que é um modelo de linguagem.
Marcos Iniciais da Inteligência Artificial
Os Primeiros Programas de IA
O primeiro programa de IA bem-sucedido foi desenvolvido em 1951 por Christopher Strachey, que mais tarde se tornou diretor do Grupo de Pesquisa em Programação da Universidade de Oxford. O programa de damas (checkers) de Strachey foi executado no computador Ferranti Mark I na Universidade de Manchester, na Inglaterra. No verão de 1952, esse programa já era capaz de jogar uma partida completa de damas a uma velocidade razoável.
A Demonstração Pioneira de Aprendizado de Máquina
Informações sobre a primeira demonstração bem-sucedida de aprendizado de máquina foram publicadas em 1952. O programa Shopper, escrito por Anthony Oettinger na Universidade de Cambridge, rodava no computador EDSAC. O mundo simulado do Shopper era um shopping center com oito lojas. Quando solicitado a comprar um item, o Shopper buscava por ele, visitando lojas aleatoriamente até encontrá-lo. Durante a busca, o Shopper memorizava alguns dos itens disponíveis em cada loja visitada (assim como um comprador humano faria). Na próxima vez que o Shopper fosse enviado para o mesmo item, ou para algum outro item que já havia localizado, ele iria diretamente para a loja correta. Essa forma simples de aprendizado é chamada de aprendizado mecânico.
O Programa de IA nos Estados Unidos
O primeiro programa de IA a ser executado nos Estados Unidos também era um programa de damas, desenvolvido em 1952 por Arthur Samuel para o protótipo do IBM 701. Samuel adotou os princípios essenciais do programa de damas de Strachey e, ao longo dos anos, o estendeu consideravelmente. Em 1955, ele adicionou recursos que permitiram ao programa aprender com a experiência. Samuel incluiu mecanismos para tanto o aprendizado mecânico quanto a generalização, melhorias que eventualmente levaram seu programa a vencer uma partida contra um ex-campeão de damas de Connecticut em 1962.
Computação Evolutiva
Os Primeiros Passos na Computação Evolutiva
O programa de damas de Samuel também se destacou por ser um dos primeiros esforços em computação evolutiva. (Seu programa “evoluía” ao confrontar uma cópia modificada com a versão atual de seu programa, sendo que o vencedor se tornava o novo padrão.) A computação evolutiva geralmente envolve o uso de algum método automático para gerar e avaliar sucessivas “gerações” de um programa, até que uma solução altamente eficiente evolua.
John Holland e a Abordagem de Cima para Baixo
Um dos principais defensores da computação evolutiva, John Holland, também escreveu software de teste para o protótipo do computador IBM 701. Em particular, ele ajudou a projetar um rato virtual em rede neural que poderia ser treinado para navegar por um labirinto. Esse trabalho convenceu Holland da eficácia da abordagem de baixo para cima na IA, que envolve a criação de redes neurais em imitação da estrutura do cérebro. Enquanto continuava a consultar para a IBM, Holland mudou-se para a Universidade de Michigan em 1952 para buscar um doutorado em matemática. No entanto, ele logo se transferiu para um novo programa interdisciplinar em computadores e processamento de informações (mais tarde conhecido como ciência das comunicações), criado por Arthur Burks, um dos construtores do ENIAC e seu sucessor EDVAC.
Inovações e o Avanço da Computação Evolutiva
Na sua dissertação de 1959, que provavelmente foi o primeiro Ph.D. em ciência da computação do mundo, Holland propôs um novo tipo de computador—um computador multiprocessador—que atribuiria cada neurônio artificial em uma rede a um processador separado. (Em 1985, Daniel Hillis resolveu as dificuldades de engenharia para construir o primeiro computador desse tipo, o supercomputador de 65.536 processadores da Thinking Machines Corporation.)
Após a graduação, Holland se juntou ao corpo docente da Universidade de Michigan e, ao longo das quatro décadas seguintes, direcionou grande parte da pesquisa sobre métodos de automação da computação evolutiva, um processo agora conhecido como algoritmos genéticos. Os sistemas implementados no laboratório de Holland incluíam um programa de xadrez, modelos de organismos biológicos unicelulares e um sistema classificador para controlar uma rede de gasodutos simulada. No entanto, os algoritmos genéticos não estão mais restritos a demonstrações acadêmicas; em uma aplicação prática importante, um algoritmo genético coopera com uma testemunha de um crime para gerar um retrato do perpetrador.
Raciocínio Lógico e Resolução de Problemas
A Importância do Raciocínio Lógico na Inteligência
A capacidade de raciocinar logicamente é um aspecto crucial da inteligência e sempre foi um foco importante na pesquisa em IA. Um marco significativo nessa área foi um programa de prova de teoremas desenvolvido entre 1955 e 1956 por Allen Newell e J. Clifford Shaw, da RAND Corporation, e Herbert Simon, da Carnegie Mellon University. O programa, conhecido como Logic Theorist, foi projetado para provar teoremas da Principia Mathematica (1910–13), uma obra em três volumes dos filósofos e matemáticos britânicos Alfred North Whitehead e Bertrand Russell. Em uma das ocasiões, a prova elaborada pelo programa se mostrou mais elegante do que a apresentada nos livros.
Avanços com o General Problem Solver
Newell, Simon e Shaw prosseguiram para desenvolver um programa ainda mais poderoso, o General Problem Solver (GPS). A primeira versão do GPS foi executada em 1957, e o trabalho no projeto continuou por cerca de uma década. O GPS era capaz de resolver uma impressionante variedade de quebra-cabeças usando uma abordagem de tentativa e erro. No entanto, uma das críticas ao GPS e a programas semelhantes que carecem de qualquer capacidade de aprendizado é que a inteligência do programa é totalmente secundária, advinda de qualquer informação que o programador inclua explicitamente.
Diálogo em Inglês
Programas Pioneiros de IA: Eliza e Parry
Dois dos programas de IA mais conhecidos e iniciais, Eliza e Parry, proporcionavam uma aparência inquietante de conversa inteligente. (Os detalhes de ambos foram publicados pela primeira vez em 1966.) Eliza, criada por Joseph Weizenbaum no Laboratório de IA do MIT, simulava um terapeuta humano. Por outro lado, Parry, desenvolvido pelo psiquiatra Kenneth Colby da Universidade de Stanford, simulava um humano que experimentava paranoia. Psiquiatras convidados a decidir se estavam se comunicando com Parry ou com uma pessoa real em estado de paranoia frequentemente não conseguiam distinguir entre os dois.
Limitações de Eliza e Parry
Entretanto, nem Parry nem Eliza poderiam ser razoavelmente descritos como inteligentes. As contribuições de Parry para a conversa eram ensaiadas—construídas previamente pelo programador e armazenadas na memória do computador. Eliza também dependia de frases prontas e truques de programação simples.
Linguagens de Programação em IA
Desenvolvimento da Linguagem de Processamento de Informações
Durante seu trabalho no Logic Theorist e no GPS, Newell, Simon e Shaw desenvolveram a Linguagem de Processamento de Informações (IPL), uma linguagem de computador projetada especificamente para programação em IA. No cerne da IPL estava uma estrutura de dados altamente flexível, chamada de lista. Uma lista é simplesmente uma sequência ordenada de itens de dados, e alguns ou todos os itens de uma lista podem, por sua vez, ser listas. Essa abordagem resulta em estruturas ricamente ramificadas.
A Criação do LISP
Em 1960, John McCarthy combinou elementos da IPL com o cálculo lambda (um sistema lógico-matemático formal) para criar a linguagem de programação LISP (Processador de Listas), que por décadas foi a principal linguagem para trabalhos em IA nos Estados Unidos, antes de ser substituída no século 21 por linguagens como Python, Java e C++. O cálculo lambda foi inventado em 1936 pelo lógico Alonzo Church, de Princeton, enquanto investigava o problema decisório para a lógica de predicados—a mesma questão que Turing enfrentava ao desenvolver a máquina de Turing universal.
O Linguagem PROLOG
A linguagem de programação lógica PROLOG (Programação em Lógica) foi concebida por Alain Colmerauer na Universidade de Aix-Marseille, na França, onde foi implementada pela primeira vez em 1973. PROLOG foi posteriormente desenvolvida pelo lógico Robert Kowalski, membro do grupo de IA da Universidade de Edimburgo. Esta linguagem utiliza uma poderosa técnica de prova de teoremas chamada resolução, inventada em 1963 pelo lógico britânico Alan Robinson, no Laboratório Nacional Argonne da Comissão de Energia Atômica dos EUA. PROLOG pode determinar se uma determinada afirmação decorre logicamente de outras afirmações dadas. Por exemplo, dadas as afirmações “Todos os lógicos são racionais” e “Robinson é um lógico”, um programa PROLOG responde afirmativamente à pergunta “Robinson é racional?” PROLOG foi amplamente utilizado para trabalhos em IA, especialmente na Europa e no Japão.
Programas Micromundo
A Proposta de Microworlds
Para lidar com a complexidade desconcertante do mundo real, os cientistas muitas vezes ignoram detalhes menos relevantes; por exemplo, físicos frequentemente desconsideram atrito e elasticidade em seus modelos. Em 1970, Marvin Minsky e Seymour Papert, do Laboratório de IA do MIT, propuseram que, da mesma forma, a pesquisa em IA deveria se concentrar no desenvolvimento de programas capazes de comportamento inteligente em ambientes artificiais mais simples, conhecidos como micromundos. Muito da pesquisa se concentrou no chamado mundo dos blocos, que consiste em blocos coloridos de várias formas e tamanhos dispostos em uma superfície plana.
O Sucesso do SHRDLU
Um dos primeiros sucessos da abordagem de micromundo foi o SHRDLU, escrito por Terry Winograd do MIT. (Os detalhes do programa foram publicados em 1972.) O SHRDLU controlava um braço robótico que operava acima de uma superfície plana cheia de blocos de brinquedo. Tanto o braço quanto os blocos eram virtuais. O SHRDLU respondia a comandos digitados em inglês natural, como “Você pode empilhar os dois blocos vermelhos e um cubo verde ou uma pirâmide?” O programa também poderia responder a perguntas sobre suas próprias ações. Embora o SHRDLU tenha sido inicialmente aclamado como um grande avanço, Winograd logo anunciou que o programa era, na verdade, um beco sem saída. As técnicas pioneiras no programa mostraram-se inadequadas para aplicação em mundos mais amplos e interessantes. Além disso, a aparente compreensão que o SHRDLU demonstrava do micromundo dos blocos, e das declarações em inglês a seu respeito, era na verdade uma ilusão. O SHRDLU não tinha ideia do que era um bloco verde.
O Robô Shakey
Outro produto da abordagem de micromundo foi Shakey, um robô móvel desenvolvido no Instituto de Pesquisa de Stanford por Bertram Raphael, Nils Nilsson e outros, durante o período de 1968 a 1972. O robô ocupava um micromundo especialmente construído, composto por paredes, portas e alguns blocos de madeira de formas simples. Cada parede tinha um rodapé cuidadosamente pintado para permitir que o robô “visse” onde a parede se encontrava com o chão (uma simplificação da realidade que é típica da abordagem de micromundo). Shakey possuía cerca de uma dúzia de habilidades básicas, como VIRAR, EMPURRAR e SUBIR RAMPA. Críticos apontaram a natureza altamente simplificada do ambiente de Shakey e enfatizaram que, apesar dessas simplificações, Shakey operava de maneira extremamente lenta; uma série de ações que um humano poderia planejar e executar em minutos levava dias para Shakey.
Sistemas Especialistas
O maior sucesso da abordagem de micromundo é um tipo de programa conhecido como sistema especialista, que será descrito na próxima seção.
Sistemas Especialistas
Estrutura e Funcionalidade
Os sistemas especialistas ocupam um tipo de micromundo—por exemplo, um modelo do porão de um navio e sua carga—que é autocontido e relativamente simples. Para tais sistemas de IA, todos os esforços são direcionados para incorporar todas as informações sobre um campo específico que um especialista (ou grupo de especialistas) conhece. Assim, um bom sistema especialista pode frequentemente superar qualquer especialista humano isolado. Existem muitos sistemas especialistas comerciais, incluindo programas para diagnóstico médico, análise química, autorização de crédito, gestão financeira, planejamento corporativo, roteamento de documentos financeiros, prospecção de petróleo e minerais, engenharia genética, design e fabricação de automóveis, design de lentes de câmeras, design de instalação de computadores, programação de voos, colocação de cargas e serviços automáticos de ajuda para proprietários de computadores pessoais.
Conhecimento e Inferência
Componentes Básicos
Os componentes básicos de um sistema especialista são uma base de conhecimento (KB) e um motor de inferência. As informações a serem armazenadas na KB são obtidas por meio de entrevistas com pessoas que são especialistas na área em questão. O entrevistador, ou engenheiro do conhecimento, organiza as informações extraídas dos especialistas em uma coleção de regras, tipicamente na estrutura “se-então”. Essas regras são chamadas de regras de produção. O motor de inferência permite que o sistema especialista faça deduções a partir das regras na KB. Por exemplo, se a KB contém as regras de produção “se x, então y” e “se y, então z”, o motor de inferência pode deduzir “se x, então z.” O sistema especialista pode então perguntar ao usuário: “x é verdadeiro na situação que estamos considerando?” Se a resposta for afirmativa, o sistema prosseguirá para inferir z.
Lógica Difusa
Alguns sistemas especialistas utilizam lógica difusa. Na lógica padrão, existem apenas dois valores de verdade: verdadeiro e falso. Essa precisão absoluta torna difícil caracterizar atributos ou situações vagos. (Por exemplo, quando, exatamente, uma cabeça de cabelo rareando se torna uma cabeça calva?) Muitas vezes, as regras que os especialistas humanos usam contêm expressões vagas, e é útil que o motor de inferência de um sistema especialista utilize lógica difusa.
DENDRAL
Desenvolvimento e Aplicações
Em 1965, o pesquisador em IA Edward Feigenbaum e o geneticista Joshua Lederberg, ambos da Universidade de Stanford, iniciaram o trabalho no Heuristic DENDRAL (mais tarde abreviado para DENDRAL), um sistema especialista de análise química. A substância a ser analisada poderia, por exemplo, ser um composto complicado de carbono, hidrogênio e nitrogênio. A partir dos dados espectográficos obtidos da substância, o DENDRAL formulava hipóteses sobre a estrutura molecular da mesma. O desempenho do DENDRAL rivalizava com o de químicos especializados nessa tarefa, e o programa foi utilizado tanto na indústria quanto na academia.
MYCIN
Diagnóstico e Tratamento
O trabalho no MYCIN, um sistema especialista para tratar infecções sanguíneas, começou na Universidade de Stanford em 1972. O MYCIN tentava diagnosticar pacientes com base em sintomas relatados e resultados de testes médicos. O programa poderia solicitar informações adicionais sobre o paciente, além de sugerir testes laboratoriais adicionais, a fim de chegar a um diagnóstico provável, após o que recomendava um curso de tratamento. Se solicitado, o MYCIN explicava o raciocínio que levou ao seu diagnóstico e recomendação. Com cerca de 500 regras de produção, o MYCIN operava em um nível de competência semelhante ao de especialistas humanos em infecções sanguíneas e melhor do que médicos gerais.
Limitações dos Sistemas Especialistas
No entanto, os sistemas especialistas não possuem senso comum ou compreensão das limitações de sua expertise. Por exemplo, se o MYCIN fosse informado de que um paciente que havia recebido um ferimento por arma de fogo estava sangrando até a morte, o programa tentaria diagnosticar uma causa bacteriana para os sintomas do paciente. Os sistemas especialistas também podem agir com base em erros clericais absurdos, como prescrever uma dosagem de medicamento evidentemente incorreta para um paciente cujos dados de peso e idade foram acidentalmente trocados.
O Projeto CYC
Início e Objetivos
CYC é uma grande experiência em IA simbólica. O projeto começou em 1984 sob os auspícios da Microelectronics and Computer Technology Corporation, um consórcio de fabricantes de computadores, semicondutores e eletrônicos. Em 1995, Douglas Lenat, o diretor do projeto CYC, desmembrou o projeto como Cycorp, Inc., com sede em Austin, Texas. O objetivo mais ambicioso da Cycorp era construir uma base de conhecimento (KB) contendo uma porcentagem significativa do conhecimento de senso comum de um ser humano. Milhões de assertivas de senso comum, ou regras, foram codificadas no CYC. A expectativa era que essa “massa crítica” permitisse ao sistema extrair novas regras diretamente de prosa comum e, eventualmente, servir como a base para futuras gerações de sistemas especialistas.
Capacidades e Desafios
Com apenas uma fração de sua KB de senso comum compilada, o CYC já conseguia fazer inferências que superavam sistemas mais simples. Por exemplo, o CYC poderia inferir que “Garcia está molhado” a partir da afirmação “Garcia está terminando uma maratona”, utilizando suas regras que afirmam que correr uma maratona envolve um grande esforço, que pessoas suam em altos níveis de esforço, e que quando algo sua, está molhado. Entre os problemas pendentes estão questões relacionadas à busca e resolução de problemas; por exemplo, como pesquisar automaticamente na KB informações relevantes para um dado problema.
O Problema do Frame
Pesquisadores em IA chamam o desafio de atualizar, buscar e manipular uma grande estrutura de símbolos em períodos de tempo realistas de problema do frame. Alguns críticos da IA simbólica acreditam que o problema do frame é em grande parte insolúvel e, portanto, sustentam que a abordagem simbólica nunca produzirá sistemas genuinamente inteligentes. É possível que o CYC, por exemplo, sucumba ao problema do frame muito antes que o sistema alcance níveis de conhecimento humano.
Conexionalismo
Entendendo a Mente Humana
O conexionalismo, ou computação neuron-like, surgiu a partir das tentativas de compreender como o cérebro humano funciona em nível neural e, em particular, como as pessoas aprendem e se lembram. Em 1943, o neurofisiologista Warren McCulloch, da Universidade de Illinois, e o matemático Walter Pitts, da Universidade de Chicago, publicaram um tratado influente sobre redes neurais e autômatos, segundo o qual cada neurônio do cérebro é um simples processador digital e o cérebro como um todo funciona como uma forma de máquina computacional. Como McCulloch afirmou posteriormente: “O que pensamos que estávamos fazendo (e acho que conseguimos isso bastante bem) era tratar o cérebro como uma máquina de Turing.”
A Criação de uma Rede Neural Artificial
No entanto, somente em 1954, Belmont Farley e Wesley Clark, do MIT, conseguiram executar a primeira rede neural artificial — embora limitada pela memória do computador a não mais que 128 neurônios. Eles foram capazes de treinar suas redes para reconhecer padrões simples. Além disso, descobriram que a destruição aleatória de até 10% dos neurônios em uma rede treinada não afetava o desempenho da rede — uma característica que remete à capacidade do cérebro de tolerar danos limitados causados por cirurgias, acidentes ou doenças.
Estrutura de uma Rede Neural Artificial
Na seção da rede neural artificial mostrada na figura, o peso, ou força, de cada entrada é indicado pelo tamanho relativo de sua conexão. O limiar de disparo para o neurônio de saída, N, é 4 neste exemplo. Assim, N permanece inativo, a menos que uma combinação de sinais de entrada recebidos de W, X, Y e Z ultrapasse um peso de 4.
A rede neural simples ilustrada na figura destaca as ideias centrais do conexionalismo. Quatro dos cinco neurônios da rede são para entrada, e o quinto — ao qual os outros estão conectados — é para saída. Cada um dos neurônios está disparando (1) ou não disparando (0). Cada conexão que leva a N, o neurônio de saída, possui um “peso”. O que é chamado de entrada ponderada total em N é calculado somando os pesos de todas as conexões que levam a N a partir dos neurônios que estão disparando. Por exemplo, suponha que apenas dois dos neurônios de entrada, X e Y, estejam disparando. Como o peso da conexão de X para N é 1,5 e o peso da conexão de Y para N é 2, o total da entrada ponderada para N é 3,5. Como mostrado na figura, N tem um limiar de disparo de 4. Ou seja, se a entrada ponderada total de N for igual ou superior a 4, então N dispara; caso contrário, N não dispara. Portanto, por exemplo, N não dispara se os únicos neurônios de entrada que dispararem forem X e Y, mas N dispara se X, Y e Z dispararem.
O Processo de Treinamento da Rede
O treinamento da rede envolve duas etapas. Primeiro, o agente externo insere um padrão e observa o comportamento de N. Em seguida, o agente ajusta os pesos de conexão de acordo com as regras:
- Se a saída real é 0 e a saída desejada é 1, aumente em uma pequena quantia fixa o peso de cada conexão que leva a N a partir dos neurônios que estão disparando (tornando assim mais provável que N dispare da próxima vez que a rede receber o mesmo padrão);
- Se a saída real é 1 e a saída desejada é 0, diminua essa mesma pequena quantia o peso de cada conexão que leva ao neurônio de saída a partir dos neurônios que estão disparando (tornando assim menos provável que o neurônio de saída dispare da próxima vez que a rede receber esse padrão como entrada).
O agente externo — na verdade, um programa de computador — passa por esse procedimento em duas etapas com cada padrão em uma amostra de treinamento, o que é repetido várias vezes. Durante essas muitas repetições, forja-se um padrão de pesos de conexão que permite à rede responder corretamente a cada padrão. O que impressiona é que o processo de aprendizado é inteiramente mecânico e não requer intervenção ou ajuste humano. Os pesos de conexão são aumentados ou diminuídos automaticamente por uma quantia constante, e exatamente o mesmo procedimento de aprendizado se aplica a diferentes tarefas.
Perceptrons
Em 1957, Frank Rosenblatt, do Cornell Aeronautical Laboratory na Universidade de Cornell, em Ithaca, Nova York, começou a investigar redes neurais artificiais que ele chamou de perceptrons. Ele fez contribuições significativas para o campo da IA, tanto por meio de investigações experimentais das propriedades das redes neurais (usando simulações de computador) quanto por análises matemáticas detalhadas. Rosenblatt era um comunicador carismático, e logo surgiram muitos grupos de pesquisa nos Estados Unidos estudando perceptrons. Rosenblatt e seus seguidores chamaram sua abordagem de conexionalista para enfatizar a importância da criação e modificação de conexões entre neurônios no aprendizado. Pesquisadores modernos adotaram esse termo.
Uma das contribuições de Rosenblatt foi generalizar o procedimento de treinamento que Farley e Clark haviam aplicado apenas a redes de duas camadas, de modo que o procedimento pudesse ser aplicado a redes multilayer. Rosenblatt usou a expressão “correção de erro retropropagada” para descrever seu método. Esse método, com melhorias e extensões substanciais por vários cientistas, e o termo retropropagação agora estão em uso cotidiano no conexionalismo.
Conjugação de Verbos
Em um experimento famoso de conexionalismo realizado na Universidade da Califórnia em San Diego (publicado em 1986), David Rumelhart e James McClelland treinaram uma rede de 920 neurônios artificiais, organizados em duas camadas de 460 neurônios, para formar os tempos passados dos verbos em inglês. As formas básicas dos verbos — como “come”, “look” e “sleep” — eram apresentadas a uma camada de neurônios, a camada de entrada. Um programa de computador supervisor observava a diferença entre a resposta real na camada de neurônios de saída e a resposta desejada — “came”, por exemplo — e, em seguida, ajustava mecanicamente as conexões em toda a rede de acordo com o procedimento descrito acima, dando à rede um pequeno impulso na direção da resposta correta. Cerca de 400 verbos diferentes foram apresentados um a um à rede, e as conexões foram ajustadas após cada apresentação. Todo esse procedimento foi repetido cerca de 200 vezes usando os mesmos verbos, após o que a rede pôde formar corretamente o passado de muitos verbos desconhecidos, além dos verbos originais. Por exemplo, quando apresentada pela primeira vez com “guard”, a rede respondeu “guarded”; com “weep”, “wept”; com “cling”, “clung”; e com “drip”, “dripped” (com o dobro de “p”). Este é um exemplo impressionante de aprendizado envolvendo generalização. (Às vezes, no entanto, as peculiaridades do inglês eram demais para a rede, que formou “squawked” a partir de “squat”, “shipped” a partir de “shape”, e “membled” a partir de “mail”.)
Outro nome para o conexionalismo é processamento distribuído em paralelo, que enfatiza duas características importantes. Primeiro, um grande número de processadores relativamente simples — os neurônios — opera em paralelo. Segundo, as redes neurais armazenam informações de forma distribuída, com cada conexão individual participando do armazenamento de muitos itens diferentes de informação. O conhecimento que permitiu à rede de tempos passados formar “wept” a partir de “weep”, por exemplo, não estava armazenado em uma localização específica na rede, mas estava espalhado por todo o padrão de pesos de conexão que foi forjado durante o treinamento. O cérebro humano também parece armazenar informações de forma distribuída, e a pesquisa conexionalista está contribuindo para tentativas de entender como isso ocorre.
Outras Redes Neurais
Outros trabalhos em computação semelhante a neurônios incluem:
Percepção Visual
Redes neurais podem reconhecer rostos e outros objetos a partir de dados visuais. Por exemplo, essas redes conseguem distinguir se um animal em uma imagem é um gato ou um cachorro. Além disso, tais redes podem identificar um grupo de pessoas como indivíduos separados.
Processamento de Linguagem
As redes neurais são capazes de converter material manuscrito e digitado em texto eletrônico. Elas também convertem fala em texto impresso e texto impresso em fala.
Análise Financeira
As redes neurais estão sendo cada vez mais utilizadas para avaliação de risco de empréstimos, avaliação imobiliária, previsão de falências, previsão de preços de ações e outras aplicações empresariais.
Medicina
As aplicações médicas incluem a detecção de nódulos pulmonares e arritmias cardíacas, além da previsão de reações adversas a medicamentos.
Telecomunicações
As aplicações de redes neurais nas telecomunicações incluem o controle de redes de comutação telefônica e a cancelamento de eco em links de satélite.
Nouvelle AI
Novas Fundamentações
A abordagem conhecida como nouvelle AI foi pioneira no Laboratório de IA do MIT por Rodney Brooks, um australiano, durante a segunda metade da década de 1980. A nouvelle AI se distancia da forte IA, que enfatiza o desempenho em nível humano, em favor do objetivo relativamente modesto de desempenho em nível de inseto. Em um nível muito fundamental, a nouvelle AI rejeita a dependência da IA simbólica em construir modelos internos da realidade, como os descritos na seção sobre Programas de Micromundo. Os praticantes da nouvelle AI afirmam que a verdadeira inteligência envolve a capacidade de funcionar em um ambiente do mundo real.
Uma ideia central da nouvelle AI é que a inteligência, conforme expressa por comportamentos complexos, “emerge” da interação de alguns comportamentos simples. Por exemplo, um robô cujos comportamentos simples incluem evitar colisões e se mover em direção a um objeto em movimento parecerá estar “perseguindo” o objeto, fazendo pausas sempre que se aproximar demais.
Herbert, o Robô
Projetado por Rodney Brooks e carinhosamente nomeado em homenagem ao pioneiro da inteligência artificial Herbert Simon, Herbert, o robô, utilizava 30 sensores infravermelhos, um scanner a laser e uma bússola magnética para localizar latas de refrigerante e manter-se orientado enquanto vagava pelo Laboratório de Inteligência Artificial do MIT. Após coletar uma lata vazia com seu braço robótico, Herbert a levava de volta para uma lixeira de reciclagem.
Um exemplo famoso da nouvelle AI foi o robô Herbert, cujo ambiente era os movimentados escritórios do Laboratório de IA do MIT. Herbert buscava mesas e mesas por latas de refrigerante vazias, que pegava e carregava. O comportamento aparentemente orientado a objetivos do robô emergiu da interação de cerca de 15 comportamentos simples.
A nouvelle AI contorna o problema de estrutura discutido na seção sobre O Projeto CYC. Sistemas nouvelle não contêm um modelo simbólico complicado de seu ambiente. Em vez disso, a informação é deixada “no mundo” até que o sistema precise dela. Um sistema nouvelle refere-se continuamente a seus sensores, em vez de a um modelo interno do mundo: ele “lê” do mundo externo todas as informações necessárias no momento em que precisa delas. (Como Brooks insistiu, o mundo é o seu melhor modelo — sempre exatamente atualizado e completo em todos os detalhes.)
Saiba mais sobre Inteligência Artificial
A Abordagem Situada
A IA tradicional, em sua maioria, tem tentado construir inteligências desincorporadas, cuja única interação com o mundo tem sido indireta (como no caso do CYC). Por outro lado, a nouvelle AI busca construir inteligências incorporadas situadas no mundo real — um método que passou a ser conhecido como abordagem situada. Brooks citou com aprovação os breves esboços que Turing apresentou em 1948 e 1950 sobre a abordagem situada. Turing escreveu que, ao equipar uma máquina “com os melhores órgãos sensoriais que o dinheiro pode comprar”, a máquina poderia ser ensinada “a entender e falar inglês” por meio de um processo que “seguiria o aprendizado normal de uma criança.” Turing contrastou isso com a abordagem da IA que se concentra em atividades abstratas, como o jogo de xadrez. Ele defendia que ambas as abordagens deveriam ser perseguidas, mas até a nouvelle AI pouca atenção foi dada à abordagem situada.
A abordagem situada também foi antecipada nos escritos do filósofo Bert Dreyfus, da Universidade da Califórnia em Berkeley. Desde o início da década de 1960, Dreyfus se opôs à hipótese do sistema de símbolos físicos, argumentando que o comportamento inteligente não pode ser totalmente capturado por descrições simbólicas. Como alternativa, Dreyfus defendia uma visão da inteligência que enfatizava a necessidade de um corpo capaz de se mover, interagindo diretamente com objetos físicos tangíveis. Uma vez desprezado pelos defensores da IA, Dreyfus é agora visto como um profeta da abordagem situada.
Críticos da nouvelle AI apontam a falha em produzir um sistema que exiba qualquer coisa semelhante à complexidade do comportamento encontrado em insetos reais. Sugestões feitas por pesquisadores do final do século 20 de que seus sistemas nouvelle logo seriam conscientes e possuiriam linguagem foram inteiramente prematuras.