Pular para o conteúdo principal

O misterioso "causo" do Quake III Arena: uma aplicação da Teoria dos Jogos?

Há algumas semanas, o site de tecnologia Guia do PC - que é um dos que eu visito regularmente - publicou uma história curiosa e, por que não dizer, assustadora envolvendo o famoso jogo de tiro em primeira pessoa Quake III Arena, lançado pela Id Software em 1999.


Logotipo do jogo Quake III Arena


Para resumir a história, que foi publicada no famoso fórum 4chan, um jogador criou um servidor do Quake III e inseriu nele 16 bots que ficavam, constantemente, lutando entre si. Quatro anos depois, ele resolveu entrar naquele jogo para ver como as coisas estavam. De acordo com o texto do Guia do PC,




Ao checar a partida, ele descobre que os 16 bots estão todos parados, desarmados e sem dar um tirinho sequer, sem ferir ninguém. Eles não esboçam nenhuma reação. Imaginando que o sistema tenha dado uma pane, ele resolve verificar o status do servidor que, para sua surpresa, estava completamente normal. Tudo funcionando perfeitamente. Ele então resolve entrar na partida. Aí acontece o segundo momento bizarro dessa história. Os bots apenas o seguem com o olhar, onde ela vai, os bots vão acompanhando com a cabeça. Ele decide quebrar a trégua e atirar num dos bots. Após receber o dano, todos os outros bots saem de suas posições, se armam e matam o nosso curioso usuário anônimo do 4chan. Antes de poder renascer na partida novamente e ver como os bots reagiriam à sua volta, o servidor dá pau e desliga.



Embora haja vários fatores que possam sugerir que a história é falsa - como por exemplo a falta de fontes confiáveis sobre o assunto e o fato de que esse servidor dificilmente ficaria ligado por 4 anos direto, sem sofrer com panes, com travamentos ou até mesmo com falta de energia elétrica - o fenômeno é possível e explicado por um ramo da Matemática chamado de Teoria dos Jogos.



A Teoria dos Jogos é um ramo da Matemática que estuda as estratégias e as tomadas de decisão. Uma rica fonte sobre esse assunto, em Português é o site teoriadosjogos.net, criado pelo engenheiro Fernando Barrichelo, que explica vários pontos desse tema em uma linguagem simples e didática.


Para entendermos como a Teoria dos Jogos pode explicar esse fenômeno, antes temos de conhecer dois de seus principais "ingredientes": o dilema dos prisioneiros e a estratégia olho por polho.


O dilema dos prisioneiros é um jogo que apresenta o dilema entre cooperar e trair. Resumidamente, dois prisioneiros são colocados em salas separadas, de forma a não poderem se comunicar. Um policial, então, faz a seguinte proposta para cada um dos detentos:




  • Se um prisioneiro confessar e o outro ficar em silêncio, o que confessou é liberado e o outro cumpre 10 anos de detenção;

  • Se os dois ficarem em silêncio, ambos são condenados a 1 ano de detenção;

  • Se ambos confessarem, ambos são condenados a 5 anos de prisão.


 Olhando para a lista de opções, vemos que a melhor escolha para a dupla seria se ambos ficassem em silêncio - isto é. colaborassem - pois, aí, os dois teriam a menor pena possível. No entanto, mesmo que os dois tenham combinado essa estratégia, a Teoria dos Jogos diz que o mais provável é que ambos irão confessar - trair -, pois essa é a melhor opção individualmente.


Analise o seguinte raciocínio: sem perda de generalidade, suponha que você seja o prisioneiro A. Se o prisioneiro B escolher colaborar e você escolher colaborar, você é condenado a um ano de prisão, mas se você trair, sai livre. Portanto, nesse caso, trair é a melhor opção. Por outro lado, se o prisioneiro B trair e você colaborar, você leva 10 anos de prisão, mas se você escolher trair, leva só 5 anos. Assim, novamente, trair é a melhor opção.


Neste caso, dizemos que a solução Trair-Trair é um equilíbrio de Nash, pois é a solução em que nenhum jogador pode melhorar o resultado final com uma decisão unilateral. Esse equilíbrio é ineficiente, pois a busca pela melhor solução individual acabará causando a pior solução para o grupo.


Esse dilema possui muitas aplicações no mundo real, principalmente nos negócios e, também, em programas de jogos televisivos e em reallity shows. Durante o tempo, foram desenvolvidas várias estratégias de jogo para solucionar o dilema dos prisioneiros e a que se mostrou ser a mais vantajosa foi criada Anatol Rapopor e se chama Olho por Olho.


Trata-se de uma estratégia gentil que segue o princípio da famosa Lei de Talião: em uma série de jogos com repetição ao estilo do dilema dos prisioneiros, a estratégia começa por colaborar e, a partir de então, repete a mesma estratégia usada pelo seu adversário. Assim, se seu adversário colaborar nessa rodada, você colaborará na próxima e, caso ele o traia, você o trairá na próxima. A aplicação dessa estratégia em um ambiente computacional mostrou-se mais eficiente do que estratégias totalmente ofensivas, defensivas ou aleatórias.


Voltando ao assunto do Quake III Arena, devemos lembrar que o sistema de inteligência artificial do jogo é bastante limitado - principalmente para um jogo produzido em 1999 mas, considerando-se que o programa ficou rodando ininterruptamente por quatro anos, não é difícil de imaginar que o motor de IA tenha chegado a uma situação limite - no sentido empregado pelo Cálculo - e passado a empregar as estratégias vistas acima.


O jogo Quake com bots é um típico dilema dos prisioneiros. Considerando-se apenas dois bots, A e B, as possibilidades seriam as seguintes:




  • Os dois atiram um contra o outro - ou seja, traem. Resultado: os dois morrem;

  • O bot A atira em B - Trai - Coopera. Resultado: o bot A vive e o bot B morre;

  • O bor B atira em A - o mesmo que o anterior.

  • Nenhum dos bots atira contra o outro - os dois vivem.


Pelo exposto acima, os dois tenderiam a atirar um contra o outro, pois essa seria a solução mais vantajosa em nível individual. Mas isso traria a pior solução a nível coletivo: a morte de todos os jogadores. Então, o motor de IA, apos o que podemos considerar, em um nível computacional, infinitas partidas, descobriu que a estratégia olho por olho seria a melhor solução para o conflito: inicialmente, ninguém atira contra ninguém mas, no momento em que alguém resolve atacar, o resto do grupo responde da mesma forma. Foi isso que aconteceu com o dono do servidor.


Agora, até descobrirmos se essa história foi verdade ou se foi criada por alguém que entende de Teoria dos Jogos...


Comentários

  1. Muito legal as suas considerações, André Machado. Eu concordo com você a respeito da possibilidade da história ser verdadeira, embora as chances sejam bem remotas. Eu não tinha nem ideia dessas Teorias Matemáticas que explicam muita coisa sobre Inteligência Artificial.

    Show de bola! Parabéns!

    ResponderExcluir
  2. Já vi isso acontecer, ao vivo, nem precisou 4 anos, mas hoje em dia acredito que o jogo esteja um pouco melhor depois do advento do ioquake3.

    Tem outra coisa na área dos jogos, não sei exatamente como chama o termo técnico, mas consiste na inserção aleatória de algum dado para alterar subitamente o estado do bot para outro estado.

    ResponderExcluir
  3. Caro amigo isso é verdade, porque eu já fiz o teste. Não precisa ser 4 anos ligado, se o objetivo do jogo não for alcançado entre 30 e 50 minutos ou mais, todos os bots ficam parados, e olhando para você e tal....

    ResponderExcluir
  4. Bom me baseando no q vi noto q o jogo inteiro pode mudar com uma única variável e conclui q há duas possibilidades
    1°Os bots chegaram em um estado de paz.
    2° Os bots se atiram simultaneamente fazendo assim um empate.
    Porem se fosse inserido uma variável diferente poderia mudar tudo como o efeito borboleta, por exemplo : se todos os bots simplesmente te olham atentamente sem expressar reação, ao invés de atirar em um, já q eles são programados para matar, pq não inserir uma varivel q eles nunca viram? Como por exemplo suicídio? Oq eles fariam? Se atirariam tbm? Voltaria ao normal? Ou ficariam parados como sempre? Ou melhor ainda arranjar um jeito de juntar todos eles e matar todos juntos ou se matar junto com um bot .

    ResponderExcluir

Postar um comentário

Postagens mais visitadas deste blog

Como acessar configurações avançadas no Sagemcom F@st 2704N

NOVO TUTORIAL: GUIA DEFINITIVO DAS CONFIGURAÇÕES AVANÇADAS DO SAGEMCOM F@ST 2704N!
Atualização 23/01/2015: Alguns problemas apontados e descobertos nesse modem:
1. Alguns usuários relatam dificuldade em salvar alterações na configuração ADSL;
2. Não sei como acessar os logs do modem; mesmo habilitando, eles não aparecem;
3. Se você trocar o DNS do modem, ele voltará ao da Oi ao ser reiniciado;
4. Estou enfrentando alguns problemas sérios de lentidão. Não sei se isso é relacionado ao modem ou a algum dispositivo na minha rede interna.
-----
Os modens da marca Sagemcom estão se tornando muito populares no Brasil, não, quiçá, por sua qualidade, mas porque eles são os atuais queridinhos das operadoras: quando você assina um plano ADSL, geralmente a operadora envia um modem wireless para sua casa a fim de que você possa navegar sem precisar ter gastos extras com esse equipamento. É claro que os equipamentos fornecidos pelas operadoras são básicos, mas saciam as necessidades dos usuários comuns - …

O Guia Definitivo das configurações avançadas no Sagemcom F@st 2704N

Há alguns meses, eu contei minha experiência com o Sagemcom F@st 2704N e tenho recebido diversos comentários sobre suas configurações avançadas. Agora que minhas aulas na faculdade estão acabando, resolvi reservar um tempinho para explorar melhor esse modem que, diga-se de passagem, é muito bom.