A série Machines That Play foi dividida em 7 partes.
Esta série cobre a história da Inteligência Artificial e dos jogos (até Deep Blue) e se concentra em máquinas que jogavam xadrez, damas e gamão. Os seguintes tópicos são abordados: como construir máquinas de xadrez, o trabalho de Shannon no xadrez, o trabalho de Turing no xadrez, The Turk, El Ajedrecista, MANIAC, Bernstein Chess Program, Samuel's Checkers, Mac Hack VI, Cray Blitz, BKG, HiTech, Chinook, Deep Thought, TD-Gammon e Deep Blue.
Esta é a Parte 1 da série e fornece uma visão geral dos esforços de IA relacionados a jogos: xadrez, damas, gamão. Ele também faz (e tenta responder) as seguintes questões: O que é um jogo ideal? Por que estamos interessados em inteligência artificial (IA) e jogos?
Antes de falarmos sobre jogos e máquinas, vamos primeiro falar sobre jogos e humanos.
Um jogo é algo com regras e um objetivo. “Jogamos” um jogo quando realizamos ações, condicionadas por essas regras, a fim de atingir o objetivo estabelecido.
Nós (seres humanos) parecemos precisar de brincadeiras quase tanto quanto precisamos de comida, água, ar, abrigo e ferramentas para sobreviver. O que então, para nós, humanos, tornaria um jogo ideal? Essa é uma pergunta difícil de responder, mas imagino que um jogo ideal possa ter pelo menos algumas das seguintes características:
Não sei se existe um jogo ideal, mas, na minha opinião, o exemplo a seguir chega bem perto de ser um; ele não apenas satisfaz muitas das características listadas anteriormente, mas também desafia e obscurece essas mesmas características.
[Vídeo] A condição é que você me deixe viver o máximo que puder contra você.
Morte: Bem, eu sou um jogador de xadrez bastante habilidoso.
Knight: Mas aposto que você não é tão bom quanto eu.
Morte: Por que você quer que eu jogue xadrez comigo?
Cavaleiro: Isso é problema meu.
Morte: De fato.
Knight: A condição é que você me deixe viver enquanto eu puder ficar contra você.
Knight: Se eu ganhar, você me deixa ir.
O jogador escolhe jogar enquanto viver (ou puder). As apostas são muito altas e ele não pode deixar de tentar.
Nunca estamos jogando contra a Morte (e quase vencendo). Nossas ações, na maioria dos jogos, não são tão “significativas” quanto salvar a vida de outros humanos. Nossos jogos não nos dão a oportunidade de aceitar nosso desespero inevitável, nem de nos transformar radicalmente (ou transcender) a nós mesmos ou a vida dos outros.
Na realidade, provavelmente não existe um jogo ideal. Por que ainda jogamos então? Uma resposta vaga e simplista é “porque os jogos são divertidos e/ou úteis”, mas isso não parece suficiente. Continuamos a criar e jogar jogos e continuamos porque os jogos ainda demonstram diferentes combinações de características mencionadas acima.
Sempre jogamos jogos. Os jogos são uma das nossas fontes mais antigas de jogo. É possível que os humanos anteriores jogassem para praticar habilidades que os preparavam para a caça e o combate. Por exemplo, o arco e flecha foi inventado no final do Paleolítico Superior .
Tiro com arco é a habilidade de usar arcos para atirar flechas. Na maioria das culturas pré-históricas, o tiro com arco era uma importante habilidade militar e de caça. Praticar tiro com arco (ou jogar para praticar ou melhorar) teria melhorado a probabilidade de sucesso do arqueiro. Nesse sentido, tais jogos físicos podem ter sido jogados para aumentar nossa chance de sobrevivência e sucesso.
Mais tarde, os humanos começaram a se estabelecer em um lugar, o que significava que eles não estavam se movendo tanto. Isso deu a eles alguma rotina e os jogos físicos começaram a se traduzir em jogos de tabuleiro. Esses jogos atenderam a uma variedade de nossos desejos. Alguns dos jogos mais antigos são:
Ao longo da história, criamos e jogamos jogos para desafiar nossa inteligência, força, estratégia, emoções e muito mais. Nos jogos, nos reunimos e concordamos com um conjunto de regras arbitrárias. Competimos e colaboramos, elaboramos estratégias para vencer o acaso e a incerteza, definimos e atingimos metas, exercitamos a imaginação e experimentamos o deleite do sucesso.
Os jogos são difíceis. Os jogos são interessantes. Os jogos são bancos de ensaio para IA.
À medida que a tecnologia evoluiu, nossos jogos também. A tecnologia recente nos forneceu novos companheiros de equipe, bem como novos adversários, na forma de máquinas. Embora a história dos jogos seja fascinante, vamos nos concentrar na automação, inteligência artificial (IA) e nos jogos desta série. Mais especificamente, vamos nos concentrar em jogos em que a IA aprendeu a jogar tão bem quanto nós ou melhor. Esta jornada servirá como um humilde lembrete:
Não importa qual seja a taxa de melhoria para os humanos, uma vez que as máquinas comecem a aprender, será difícil para nós acompanhá-las – seu aprendizado e progresso acabarão sendo medidos exponencialmente. E o nosso não.
Desde os primórdios da computação, as pessoas se perguntavam se as máquinas poderiam igualar ou superar a inteligência humana. A inteligência artificial trata-se de construir máquinas capazes de realizar as tarefas que (pensamos) requerem “inteligência”. Mas abordagens e algoritmos anteriores de IA não eram suficientes para lidar com problemas do mundo real devido à sua natureza complexa e ambígua. Máquinas de programação para jogar com sucesso serviram como uma maneira de os computadores aprenderem táticas e estratégias que poderiam ser posteriormente aplicadas a outros domínios da vida real.
Emule o processo de pensamento humano em jogos
Os primeiros pesquisadores de IA enfatizaram a emulação do processo de pensamento humano em jogos porque acreditavam que as melhores máquinas de jogo podem ser criadas ensinando-as a imitar o pensamento humano. Eles raciocinaram que, se as máquinas pudessem enfrentar os jogos com sucesso, provavelmente exibiriam algum tipo de inteligência.
Entenda como funciona a mente humana
Os primeiros pesquisadores de IA esperavam que programar máquinas para jogar com sucesso ajudasse a entender como a mente humana funcionava, como pensava, como resolvia problemas e, finalmente, o que era inteligência. Eles presumiram que construir máquinas para executar tarefas que exigiam inteligência forneceria um vislumbre de como nossa própria inteligência funcionava.
Veremos que mesmo quando as máquinas superaram os humanos nos jogos, elas não forneceram necessariamente uma visão sobre o funcionamento de nossas mentes. Eles, no entanto, ajudaram a impulsionar o progresso na ciência da computação (e, portanto, em outros campos relacionados). E mais tarde, a pesquisa nos ajudou a enfrentar alguns problemas complexos do mundo real de frente.
“Jogos são divertidos e fáceis de medir. Está claro quem ganhou e quem perdeu, e você sempre tem a referência humana... Você pode fazer melhor do que um humano?” Murray Campbell
Os jogos, jogos de tabuleiro especificamente, são um dos ramos mais antigos da IA, começando com Shannon e Turing em 1950. Eles forneceram uma boa maneira de medir a capacidade das ideias da IA devido a 1) sua simplicidade de objetivo, 2) regras bem definidas e 3) a enorme gama de estratégias possíveis para atingir o objetivo final. Toda vez que a IA conquistava um jogo, ela nos ajudava a enfrentar pelo menos alguns problemas complexos do mundo real de frente.
Antes de começarmos, vejamos algumas maneiras de medir a complexidade do jogo .
A complexidade do espaço de estado de um jogo é o número de posições de jogo legais alcançáveis a partir da posição inicial do jogo.
O tamanho da árvore do jogo é o número total de jogos possíveis que podem ser jogados: o número de nós de folha na árvore do jogo com raiz na posição inicial do jogo.
O fator de ramificação é o número de filhos em cada nó. Por exemplo, xadrez, suponha que um “nó” seja considerado uma posição legal, então o fator de ramificação médio é estimado em cerca de 35. Isso significa que, em média, um jogador tem cerca de 35 movimentos legais disponíveis em cada turno. Em comparação, o fator de ramificação médio para o jogo Go é 250!
Status ideal : não é possível executar melhor (algumas dessas entradas foram resolvidas por humanos)
Super-humano : tem um desempenho melhor do que todos os humanos
Agora, vamos falar sobre as máquinas.
A série de blogs abordará os seguintes tópicos. Os links para as imagens estão nos blogs originais.
O foco da série está em alguns dos “primeiros” em IA e jogos (e às vezes alguns dos predecessores desses programas), não em incluir *todos* ou *o maior número possível* de programas de jogos.
Como costumamos jogar este jogo? Fazemos o seguinte:
A partir dessa perspectiva, quase todos os computadores de xadrez devem lidar com essas etapas fundamentais. E ao fazer isso, um computador de xadrez teria que resolver os seguintes problemas principais:
Havia duas abordagens filosóficas principais para o desenvolvimento de computadores de xadrez: emulação versus engenharia - os computadores deveriam emular o conhecimento humano e a tomada de decisões ou os computadores deveriam melhorar a busca por força bruta? Aqueles que se concentrassem na primeira abordagem criariam programas com muito conhecimento de xadrez e um foco relativamente menor na pesquisa. Aqueles que se concentram na abordagem de engenharia se concentrariam no poder computacional, usando hardware para fins especiais e inovações de pesquisa. Veremos que os melhores computadores de xadrez usaram a segunda abordagem, mas mesmo eles acabaram usando muito conhecimento de xadrez e sofisticadas heurísticas de avaliação.
Dos anos 1940 ao início dos anos 1950, os primeiros pioneiros se concentraram na construção de máquinas que jogariam xadrez da mesma forma que os humanos, então o progresso inicial do xadrez dependia fortemente da heurística do xadrez (regras práticas) para escolher os melhores movimentos. Eles enfatizaram a emulação do processo de pensamento do xadrez humano porque acreditavam que ensinar uma máquina a imitar o pensamento humano produziria as melhores máquinas de xadrez.
O poder de computação era limitado na década de 1950, então as máquinas só podiam funcionar em um nível muito básico. Este é o período em que os pesquisadores desenvolveram as técnicas fundamentais para avaliar as posições de xadrez e para pesquisar possíveis lances (e contra-movimentos do adversário). Essas ideias ainda estão em uso hoje.
Jogo: xadrez. Anos: 1948–1953
Em 1953, Alan Turing publicou um artigo sobre seu programa de xadrez (Digital Computers Applied to Games) no livro Faster than Thought de B. Bowden. Shannon não havia falado sobre nenhum programa em particular em seu jornal. Foi Turing quem escreveu o primeiro programa de xadrez. E ele o escreveu antes mesmo dos computadores existirem! Ele sabia que os computadores estavam chegando e, uma vez que fossem poderosos o suficiente, seriam capazes de jogar xadrez. Em 2012, Garry Kasparov jogou contra o Turochamp e o derrotou em apenas 16 lances. Kasparov disse (vídeo) : “Suponho que você possa chamá-lo de primitivo, mas eu o compararia a um carro antigo - você pode rir deles, mas ainda é uma conquista incrível…
[Turing] escreveu algoritmos sem ter um computador – muitos jovens cientistas nunca acreditariam que isso fosse possível. Foi um feito notável.”
O Programa de Xadrez de Bernstein usou a estratégia de Shannon Tipo B (busca seletiva).
No final da década de 1960, os programas de xadrez de computador eram bons o suficiente para bater ocasionalmente contra jogadores de nível de clube ou amadores.
Nas décadas de 1970 e 1980, a ênfase estava na velocidade do hardware. Nas décadas de 1950 e 1960, os primeiros pioneiros se concentraram na heurística do xadrez (regras práticas) para escolher os melhores próximos movimentos. Os programas nas décadas de 1970 e 1980 também usavam algumas heurísticas de xadrez, mas havia um foco muito mais forte em melhorias de software, bem como no uso de hardware mais rápido e especializado. Hardware e software personalizados permitiram que os programas conduzissem buscas muito mais profundas nas árvores do jogo (exemplo: envolvendo milhões de posições de xadrez), algo que os humanos não faziam (porque não podiam) fazer.
Jogo: Damas. Anos: (1989–1996)
Após o trabalho de Samuel com as damas, surgiu a falsa impressão de que as damas eram um jogo “resolvido”. Como resultado, os pesquisadores passaram para o xadrez e ignoraram as damas até que Jonathan Schaeffer começou a trabalhar em Chinook em 1989. O objetivo de Schaeffer era desenvolver um programa capaz de derrotar o melhor jogador de damas. A melhor jogadora foi Marion Tinsley. Durante uma partida, Chinook venceu um jogo contra Tinsley, ao qual Schaeffer respondeu,
“Ainda somos membros da raça humana e Chinook derrotando Tinsley em um único jogo significa que será apenas uma questão de tempo até que os computadores sejam supremos em damas e, eventualmente, em outros jogos como o xadrez.”
Leia mais para ver como Chinook vs. Tinsley se desenrolou.
Na década de 1990, os programas de xadrez começaram a desafiar mestres internacionais de xadrez e, posteriormente, grandes mestres. Uma máquina de xadrez especializada, chamada Deep Blue, acabaria vencendo Garry Kasparov, o melhor enxadrista humano. Também vimos aplicações bem-sucedidas de aprendizado por reforço (algo que o AlphaGo faria anos depois).
Jogo: Xadrez. Anos: 1996–1997
Este é longo (e super interessante). Definitivamente, leia .
Deep Blue era um bebê de apenas duas semanas quando enfrentou Garry Kasparov em 1996. Hsu, um de seus criadores disse: “ Seria o bebê Hércules que estrangulou as duas serpentes enviadas pela Deusa Hera? Ou estávamos enviando um bebê indefeso como tributo para aplacar o monstro marinho Cetus, mas sem a ajuda de Perseu? Tínhamos medo de que fosse o último.” O primeiro jogo que jogou contra Kasparov, venceu - levando Kasparov a se questionar e perguntar: " ... e se essa coisa for invencível?" Não seria invencível e Kasparov o venceria por 4–2. Esta partida foi muito mais disputada do que a maioria das pessoas pensa ( Leia mais ).
Após a partida Kasparov disse (sobre Deep Blue),
“Eu podia sentir – eu podia cheirar – um novo tipo de inteligência do outro lado da mesa.”
“Não estava nem um pouco a fim de jogar..Sou um ser humano. Quando vejo algo que está muito além do meu entendimento, fico com medo.''
Leia mais (Azul Profundo)…
As pessoas acreditavam que Kasparov ainda era um jogador melhor, mas suas emoções atrapalharam. De qualquer forma, uma das maiores conclusões desta partida foi que subestimamos coletivamente os aspectos fisiológicos e psicológicos da partida.
Nossas emoções, medos, desejos e dúvidas tinham uma maneira de obter o melhor de nós... E este é um problema exclusivamente humano, com o qual nossos oponentes mecânicos não se preocupam.
Parece certo terminar com a palestra TED de Garry Kasparov e sua visão sobre a experiência.
“ O que aprendi com minha própria experiência é que devemos enfrentar nossos medos se quisermos obter o máximo de nossa tecnologia e devemos vencer esses medos se quisermos obter o melhor de nossa humanidade.
Enquanto lambia minhas feridas, me inspirei muito em minhas batalhas contra o Deep Blue. Como diz o velho ditado russo, se você não pode vencê-los, junte-se a eles. Então pensei, e se eu pudesse jogar com um computador - junto com um computador ao meu lado, combinando nossas forças, intuição humana mais cálculo de máquina, estratégia humana, táticas de máquina, experiência humana, memória de máquina. Poderia ser o jogo perfeito já jogado? Mas ao contrário do passado, quando as máquinas substituíam os animais da fazenda, o trabalho braçal, agora elas estão atrás de pessoas com diploma universitário e influência política. E como alguém que lutou contra máquinas e perdeu, estou aqui para lhe dizer que esta é uma excelente, excelente notícia. Eventualmente, toda profissão terá que sentir essas pressões ou então isso significará que a humanidade parou de progredir. Não podemos escolher quando e onde o progresso tecnológico para.
Não podemos desacelerar. Na verdade, temos que acelerar. Nossa tecnologia é excelente para remover dificuldades e incertezas de nossas vidas e, portanto, devemos buscar desafios cada vez mais difíceis e incertos. As máquinas têm cálculos. Temos compreensão. As máquinas têm instruções. Nós temos um propósito. As máquinas têm objetividade. Temos paixão. Não devemos nos preocupar com o que nossas máquinas podem fazer hoje. Em vez disso, devemos nos preocupar com o que eles ainda não podem fazer hoje, porque precisaremos da ajuda das novas máquinas inteligentes para transformar nossos maiores sonhos em realidade. E se falhamos, se falhamos, não é porque nossas máquinas são muito inteligentes ou não são inteligentes o suficiente. Se falhamos, é porque nos tornamos complacentes e limitamos nossas ambições. Nossa humanidade não é definida por nenhuma habilidade, como balançar um martelo ou mesmo jogar xadrez. Há uma coisa que só um humano pode fazer. Isso é sonho. Então, vamos sonhar grande.”
https://www.youtube.com/watch?v=NP8xt8o4_5Q&feature=emb_imp_woyt
Então, vamos sonhar grande.