Na ficção, Billy certamente passou no Teste de Turing

Coincidência ou não, Billy, um dos protagonistas do livro “A Turma do CP-500”, trouxe o que o matemático inglês Alan Turing gostaria de provar com seu teste.

O Teste de Turing, proposto em um artigo de seu criador, em 1950, ficou conhecido como um “jogo de imitação” no qual busca-se medir o comportamento inteligente de uma máquina similar ao de um ser humano. Para execução do teste, uma máquina e um humano são colocados em dois cômodos. Uma terceira pessoa, identificada como o interrogador, está num terceiro cômodo, ao lado da máquina e do ser humano. O interrogador não pode ver ou falar diretamente com eles, apenas se comunicar por meio de um terminal.

O desafio do interrogador é distinguir entre o ser humano e o computador, tomando por base perguntas que pode fazer a ambos por meio dos terminais.

A conclusão do teste determina que se o interrogador não distinguir a máquina do ser humano, então a máquina será considerada um ser inteligente, ou seja, será capaz de “pensar”.

Hoje, matéria publicada em vários jornais (Globo, The Telegraph, Exame.com, Estadão), revela que, longe da ficção, a Universidade de Reading promoveu um evento no último dia 7, no qual um computador, supostamente, passou pela primeira vez por esse teste.

De acordo com o Jornal O Globo, o chatbot — software de bate-papo — vencedor, chamado “Eugene Goostman”, conseguiu convencer 33% dos juízes (interrogadores) de que ele era humano, muito embora para os outros jurados tenha ficado claro que se tratava de um computador. No site de Eugene (http://www.princetonai.com) pode-se papear com o chatbot, mas o acesso tem se tornado quase impossível em razão do forte congestionamento de pessoas querendo “brincar” de conversar com o autômato.

O autômato da Universidade de Reading finge ser um adolescente ucraniano de 13 anos que fala inglês como segundo idioma, possibilitando encobrir falhas linguísticas. Isso vem sendo alvo de críticas de quem acredita que há mais marketing do que verdade na conclusão desse teste.

Contudo, o mais fascinante nessa matéria é a proximidade com o tema principal do livro “A Turma do CP-500”: a possibilidade de um computador, dotado de um sistema de inteligência artificial, poder conversar com um ser humano como se fosse um, demonstrando inteligência e até mesmo emoções.

Assim, a realidade vem corroborar com o debate que o livro pode trazer, vem ajudar a provocar opiniões sobre qual lugar podemos alcançar, a partir de uma área tão instigante e fascinante.

Então, se na vida real, fica a dúvida se Eugene tornou-se ou não o primeiro computador a passar no Teste de Turing; na ficção, nosso Billy pode ser considerado um daqueles que conseguiu alcançar essa façanha.

Atualização em 10/06/2014: Hoje saiu artigo interessante de Pedro Doria sobre Eugene não ter batido o teste de Turing. O artigo aborda o conceito de chatbot, os robôs de bate-papo, e fala sobre o filme “Her” que está na minha fila para assistir.

O Google aprendeu a falar, igualzinho ao Billy

Na Revista Veja da semana passada uma matéria muito interessante traz a realidade para o que, no livro “A Turma do CP-500”, apresentei como ficção.

Se na história juvenil, Billy, um antigo computador CP-500, dotado de processadores modernos e sistema de inteligência artificial, interage com uma turma de cinco adolescentes; na vida real, o Google busca essa interação com seus milhões de usuários por meio de perguntas que são interpretadas e respondidas por voz ou por uma lista de links.

De acordo com a matéria “Olha quem está falando” de Filipe Vilicic (leia parcialmente em http://veja.abril.com.br/noticia/vida-digital/o-google-aprendeu-a-falar), o site de busca agora permite que seus usuários façam pesquisas por meio de voz.

A funcionalidade usando a língua portuguesa estreou no último dia 10, mas o recurso já existia em inglês desde junho do ano passado. Após a pesquisa, o site dá a resposta, em português, com voz mecanizada, com sotaque brasileiro. Quando o Google não consegue montar a resposta com áudio, ele exibe uma lista de links.

Para testar o recurso, é preciso ter o navegador Google Chrome. Na caixa de pesquisas, você encontrará um ícone de microfone. Clique nele. O Google irá apresentar a mensagem “Fale agora”.

Por exemplo, tente a seguinte pergunta, falando de forma clara e bem articulada:

“Qual o dia de Corpus Christi em 2014?”

Google1

O Google irá exibir algo parecido com a tela acima, além de apresentar a resposta com o áudio.

Outra pesquisa que pode gerar um resultado em áudio é: “Qual a previsão do tempo para amanhã no Rio de Janeiro?”.

Mas se algumas pesquisas têm como resposta algo complexo demais para ser expresso em áudio, o Google nos apresenta uma lista de possíveis links.

Tentei a pesquisa: “Qual o site da escritora Ana Cristina Melo?” e obtive uma lista de links, sendo que o primeiro correspondia ao meu site.

Google2

 

De acordo com a matéria da Veja, “para cada questão enviada, ocorre um avançado processo de Big Data, que garimpa, na enorme quantidade de informações armazenadas nos servidores do Google, qual é a resposta correta. Tudo acontece em microssegundos”.

A reportagem explica num passo a passo que, num primeiro momento, a voz da pessoa é captada, separando-se a fala do barulho de fundo. Essa fala é transportada para o formato de texto, associando-se cada fonema falado a um banco com 500 milhões de combinações possíveis de letras e palavras. Os servidores do Google interpretam a frase e realizam a pesquisa em uma rede de mais de 3 milhões de computadores, utilizando como motor de busca um algoritmo com base em 2 bilhões de termos e 500 milhões de variáveis. A resposta é montada no formato texto para depois ser transformada em áudio e, enfim, ser reproduzida ao usuário. Tudo isso acontece num piscar de olhos.

É fascinante pensar que podemos interagir com o computador dessa forma. E é com base nessa fascinação que a história de Billy foi criada.

De forma muito similar, pude perceber que o Google tenta aprender com a sequência de pesquisas. Ao perguntar a mesma frase mais de uma vez, ele tenta “corrigir” o que captou da fala, entendendo que a primeira resposta não satisfez o usuário. Assim acontece com o Billy, que se realimenta a cada interação com a turma do CP-500.

Então se vocês quiserem sonhar um pouco com a ideia dessa evolução tecnológica, fica o convite para conhecer meu novo juvenil, com toques de romance policial.

No próximo dia 5 de junho, às 14h40, estarei na Biblioteca FNLIJ Jovem, no 16º Salão FNLIJ do Livro para Crianças e Jovens, para falar sobre “A Turma do CP-500: o mistério da casa de pedras”.

Espero vocês lá!

O que é Inteligência Artificial?

Um dos protagonistas do nosso livro é o CP-500 Billy. Mas ele não é apenas um computador antigo, ele é um computador antigo com um coração novo, no caso, processadores e recursos computacionais modernos. Por este motivo, ele pôde receber um complexo sistema que lhe permite conversar com um ser humano, e como se fosse um deles (tudo bem que seguindo a inocência de uma criança de 5 anos). 🙂

No caso, Billy está mostrando na prática como funciona a Inteligência Artificial (IA), mesmo que um pouco mais ficcional do que a realidade que já alcançamos nos dias atuais.

A Inteligência Artificial é um ramo da ciência da computação que busca elaborar mecanismos que simulem a capacidade humana de raciocinar, tomar decisões e resolver problemas. Ela pode ser encontrada em diversas áreas, como a robótica, aplicativos de segurança, jogos, reconhecimentos de escrita a mão, reconhecimento de voz, programas de diagnóstico médico, corretores ortográficos, entre várias outras.

Mas como isso é possível?

Podemos destacar dois caminhos que podem ser usados para o desenvolvimento de sistemas com inteligência artificial:

a) Utilizar a lógica comum de programação, com estruturas de condição. No caso, por exemplo, eu posso determinar “Se o usuário fizer a pergunta X, responda Y”.

b) Utilizar redes neurais. Nesse caso, a máquina irá tentar reproduzir o funcionamento dos neurônios de um ser humano, nos quais as informações transitam de uma célula para outra, se combinando com outros dados para chegar a uma solução.

É uma área apaixonante, sem dúvida. Não por menos vem influenciando o cinema e a literatura.

Quem não assistiu o filme O Homem Bicentenário? Ou o filme IA – Inteligência Artificial?

E essa mistura de paixões fez nascer o nosso Billy. Em breve, vocês poderão conhecê-lo. 🙂

Por que um CP-500?

cp-500

Crédito da Imagem: Site http://amxproject.com.

Muitos devem se perguntar: por que escolher um computador da década de 80, que hoje, mal comparando, teria menos capacidade que alguns brinquedos eletrônicos?

Porque quem é “rei” nunca perde a majestade, mesmo que seja apenas na memória de seus súditos. 🙂

Desde que comecei a divulgar o lançamento do meu livro, percebi que não era só eu que ficava feliz de viver essa nostalgia. Para os profissionais de computação, que vivenciaram o começo da microinformática, na década de 80, falar de CP-500, CP-400, CP-200, TK-82, TK-85, MSX e tantos outros microcomputadores é resgatar uma época de envolvimento, de magia.

O poder computacional era infinitamente inferior ao que temos hoje, isso é fato, mas na época não sabíamos disso. Na época, usávamos a imaginação e o encantamento que tínhamos por nos descobrir programadores, para extrair o máximo dessas máquinas.

Não por menos descubro que essa nostalgia existe em grupos espalhados pela Internet. Achei hoje uma página no Facebook dedicada ao CP-500: https://www.facebook.com/pages/Prologica-Cp-500/240330296103451, que já divulgou o lançamento do meu livro. Descobri também um site, chamado AMX Project (http://amxproject.com), que mais do que relembrar, ainda tornam vivas essas máquinas antigas.

Eu aprendi a programar nessas máquinas. Criava programas num CP-200 e me sentia maravilhada por ser capaz de ensinar o computador a realizar operações simples. Era a magia que envolvia nossa profissão! Era o desejo de fazer diferente. Quando cheguei ao CP-500, tive ali um grande parceiro, no qual desenvolvi sistemas complexos.

Eu programava em BASIC (acrônimo de Beginner’s All-purpose Symbolic Instruction Code), que era, depois do Cobol, a preferida dos programadores. Foi uma linguagem criada para fins didáticos, que evoluiu dando origem a várias outras linguagens comerciais, como é o caso do Visual Basic.

Lembro que aprendi a programar apenas observando um código escrito em BASIC.

Não nos incomodávamos de digitar dezenas de linhas de código, sem gravá-las, para, no dia seguinte, fazer tudo de novo. No CP-500, tínhamos um recurso extra chamado BASIC Nativo, no qual, podíamos usar a linguagem nativa e programar o que quiséssemos. O único problema é que não conseguíamos salvar o programa. Para que pudéssemos manter o que tinha sido feito, tínhamos que acionar o Basic do disquete.

Floppy_disk_5.25_inch

Crédito da imagem: Wikipédia

Há alguns que chegaram a trabalhar com os disquetes de 8 polegadas. Mas eu já peguei o chamado Floppy Disk 5.25, ou disquete de 5 1/4 de polegadas. Os modelos mais antigos eram usados apenas em uma face. Para que conseguíssemos maior capacidade de armazenamento neles, cortávamos a lateral, permitindo que o leitor o utilizasse do outro lado.

Os disquetes de dupla densidade tinham capacidade de 160Kb a 320 Kb. Sim, isso mesmo, kilobytes. Ou aproximadamente 160 mil bytes. A imagem acima, por exemplo, tem 10 Kb. É como se pudéssemos armazenar apenas 16 imagens dessa em nosso disco. Os disquetes de quádrupla densidade chegavam a 720 Kb. Ah, o paraíso para nós, programadores!

Vivíamos uma época com tecnologia mais restrita, mas isso não nos impedia de fazer o melhor. E de nos envolvermos com paixão em cada tarefa que realizávamos nessas máquinas maravilhosas. Talvez sejamos diferentes por esse motivo, talvez sejamos apenas dinossauros que se alimentam dessa nostalgia. Mas não é assim o ser humano? Não guardamos fotos e lembranças, para que elas nos embalem o futuro?

Para quem ficou com nostalgia da linguagem Basic, uma pequena amostra abaixo, para matar a saudade.

10 REM MEU PRIMEIRO PROGRAMA
20 INPUT A,B 
30 C = A * B
40 PRINT 'A MULTIPLICACAO E = ', C
50 END  

Foi num programa assim que descobri como programar. Ao rodar esse programa com o comando “RUN”, descobria que o computador esperava que eu informasse dois números. E logo depois me mostrava a mensagem “A MULTIPLICACAO E =” e o resultado da multiplicação dos dois números informados. Ora, rapidamente eu deduzia que o texto que aparecia ao lado do comando REM não tinha qualquer saída, então REM era apenas um comentário. Que o comando INPUT que significa entrada, indicava a espera de dois números, que seriam armazenas nas variáveis A e B. E que a variável C receberia o resultado da multiplicação dos dois números anteriores. Logo depois, o comando PRINT (imprimir), imprimiria na tela um texto meu, acrescido do conteúdo da variável C. Simples assim!

O livro A turma do CP-500 se propõe a resgatar essas lembranças. A ideia é que seja uma série. Para o livro 2, pretendo trazer outras lembranças, além desse gosto por aprender a programar. Aguardem!

Bem-vindo aos bons e velhos tempos!

Você sabe o que é um CP-500?

Imagine abrir sua revista preferida e dar com o anúncio abaixo:

Propaganda CP-500

Crédito da imagem: MCI – Museu da Computação e Informática

O que é isso? Um novo video game? Um novo eletrodoméstico? Não, é um computador. E esse anúncio vocês só poderiam encontrar se voltassem no tempo, lá no ano de 1984. 

Esse anúncio que alardeia um maravilhoso computador que trabalha com dois drives, permitindo armazenar até 700 Kbytes (isso mesmo, não são megabytes ou gigabytes, mas kilobytes, menos do que aquele arquivo de trabalho que você digitou no Word), saiu na revista Micro Sistemas, em outubro de 1984.

O CP-500 foi um dos primeiros microcomputadores que tivemos na década de 80. Na época, diante da restrição de recursos computacionais dos computadores de pequeno porte, o CP-500 veio como um novo patamar para os ficcionados por computação e logo se tornou uma grande paixão nacional. Fabricado pela Prológica e compatível com O TRS-80 Modelo III, pertencente à americana Tandy Radio Shack, ele possuía modelos na cor bege e chumbo.

Tinha todos os seus componentes, até mesmo o teclado, dentro de um gabinete de poliuretano. Esse gabinete acomodava uma “grande” capacidade para a época, ou seja, um processador com 2 MHz, memória RAM de 48 Kbytes, e até duas unidades de disquete.

Aliás, você é da geração que usou disquetes para armazenar seus arquivos?

Curiosos para saber mais sobre o CP-500? Acessem a página que fala sobre ele no Museu da Computação e Informática – MCI, em http://www.mci.org.br/micro/prologica/cp500.html.