PlayPendium
WordChess · Matéria para Reflexão

Como um computador escolhe uma palavra

Antes de a IA jogar, ela deve encontrar seu lance dentro de um monte de palha de cento e cinquenta mil palavras, e então parar de procurar.

1 · O monte de palha

Um espaço grande demais para ser visto

Dê a uma pessoa um suporte do WordChess e a instrução "jogue uma boa palavra", e ela reduz o problema sem perceber que o fez. O computador não desfruta de tal intuição. Em um 25×25 tabuleiro, tendo acesso ao pool completo de cem peças, ele pode tentar quase qualquer um dos 148,941 palavras do dicionário, e cada palavra pode ser colocada em milhares de coordenadas e orientações legais. Pior ainda, uma colocação só é legal se cada nova letra que ela introduz também completar uma palavra real onde cruza o que já está no tabuleiro. Multiplique as palavras pelas colocações por essa restrição de cruzamento e você terá um espaço de busca que nenhum jogador, de silício ou de outra forma, pode enumerar e classificar por completo.

Esta é a razão pela qual os motores sérios de jogos de palavras, Quackle, a implementação de referência de código aberto, entre eles, nunca forçam o dicionário por força bruta.4 A estrutura GADDAG de Steven Gordon de 1994, e o DAWG antes disso, deixe um programa fazer crescer palavras a partir das peças já no tabuleiro e verifique as interseções conforme avança, para que ramos ilegais morram precocemente em vez de serem pontuados e descartados.1 A tarefa não é "listar todas as palavras". É "gerar apenas os lances que poderiam possivelmente ser legais, e fazê-lo rapidamente."

2 · The clock

Good enough beats perfect

Mesmo um gerador enxuto retorna mais lances candidatos do que podem ser avaliados em profundidade, então o segundo problema é o tempo. O programa de Scrabble mais forte já construído, de Brian Sheppard, Maven, faced exactly this and answered it in two stages: um heurístico rápido classifica os lances brutos em uma ordem aproximada de qualidade, e apenas uma lista curta dos mais promissores é estudada cuidadosamente, simulando o jogo para frente muitas vezes para ver qual candidato realmente se sai melhor.2 Sheppard emprestou o nome da ideia de outros jogos, o que backgammon calls a rollout and Go calls a playout, he called simulation.

WordChess opera no mesmo espírito sob uma restrição mais rígida: um orçamento fixo de tempo de busca por jogada. Quando o orçamento se esgota, a IA se compromete com a melhor palavra que encontrou até o momento. Este não é um compromisso do qual os engenheiros se arrependem; é o design inteiro. Um jogador que pensa para sempre não é um oponente melhor, apenas mais lento. O relógio força a máquina a fazer o que as pessoas fazem instintivamente: aceitar uma jogada que é claramente boa, em vez de comprovadamente a melhor.

O dicionário não é a mente do oponente. O relógio é.

3 · Dificuldade honesta

Fraqueza em que se pode confiar

A maneira preguiçosa de tornar a IA de um jogo mais fácil é torná-la estúpida ao acaso, fazendo-a tropeçar em uma jogada que ela viu claramente. Os jogadores percebem e se ressentem disso. O designer Sid Meier é frequentemente citado por ter cortado Civilization recursos que permitiam ao computador superar os jogadores na negociação, porque o efeito, como um relato sobre o design de oponentes de IA coloca, deixaria "os jogadores com a sensação de que não podiam vencer porque o computador estava trapaceando".3 A dificuldade que parece desonestidade envenena o jogo, o que é por isso que a literatura de pesquisa sobre ajuste dinâmico de dificuldade se preocupa em calibrar o que a IA é capaz de fazer, em vez do que ela é permitida ver.5

WordChess calibra seus quatro níveis ao longo de eixos que um humano reconheceria, nunca alimentando a IA com informações ocultas. Cada nível difere em quanto tempo pode buscar, quão profundo no dicionário raro seu vocabulário alcança e quais faixas de comprimento de palavra favorece. Um fácil o oponente joga palavras plausivelmente fracas, reais, sensatas, curtas, não lixo. Um grande mestre tem todo o léxico obscuro e o tempo para explorá-lo. O jogador perde para algo que parece ser um vocabulário melhor e uma leitura mais afiada, porque é exatamente isso que é.

Quatro níveis, ajustados por limites, medidos a partir das notas de design e construção deste projeto
NívelAlcance do vocabulárioOrçamento de buscaTendência de comprimento da palavra
FácilApenas comunsMais curtasCurta
NormalComuns + médiasCurtaMista
DifícilAmplaLongoMais longo
Grão-mestreRaro completoMais longoSem limites
5 · Um oponente, não uma calculadora

O que o torna humano

Uma calculadora retorna a mesma resposta toda vez; um oponente te surpreende. O WordChess adiciona uma etapa deliberada de randomização, anti-cópia, à seleção, de modo que jogadas quase iguais não sejam sempre resolvidas da mesma forma e a IA não simplesmente espelhe sua última jogada. Combinado com tetos de vocabulário por nível, o efeito é a variedade, a sensação de que alguém está sentado do outro lado do tabuleiro fazendo escolhas, algumas das quais você também poderia ter feito.

Essa é a arte silenciosa disso. Um oponente crível precisa de contenção tanto quanto de força: a disposição de jogar uma palavra apenas boa, de deixar pontos na mesa, de ser derrotável de uma forma que pareça merecida. O problema de engenharia mais difícil da máquina era buscar no monte de palha. O mais sutil era aprender quando parar de buscar, o que saber e quanto reter.

Fontes & notas
  1. Wikipedia, "GADDAG", a estrutura de dados de geração de jogadas introduzida por Steven A. Gordon (1994) que cresce palavras a partir de peças colocadas e valida cruzamentos durante a geração. en.wikipedia.org/wiki/GADDAG
  2. Brian Sheppard, "World-Championship-Caliber Scrabble," Artificial Intelligence 134 (2002): 241–275, descreve a rápida geração de jogadas do Maven, a ordenação heurística e a "simulação" antecipada das jogadas finalistas. doi.org/10.1016/S0004-3702(01)00166-7. Visão geral do programa: en.wikipedia.org/wiki/Maven_(Scrabble)
  3. Vina Nguyen, "How to Design a Worthy Opponent: AI in Game Development", sobre dificuldade crível, a desvantagem deliberada da IA e o ressentimento gerado por oponentes que parecem trapacear (fonte do relato citado de Sid Meier / Civilization). vinawrites.com
  4. Quackle (Jason Katz-Brown, John O'Laughlin, et al.), um motor de Scrabble de código aberto que inclui um gerador de jogadas GADDAG, um avaliador e um simulador para qualquer léxico ou tabuleiro. Fonte: github.com/quackle/quackle; página do projeto: people.csail.mit.edu/jasonkb/quackle
  5. M. Zohaib, "Dynamic Difficulty Adjustment (DDA) in Computer Games: A Review," Advances in Human-Computer Interaction (2018), revisão sobre o ajuste do desafio por meio da modificação da capacidade da IA, em vez de trapacear. onlinelibrary.wiley.com/doi/10.1155/2018/5681652
  6. Os fatos específicos do WordChess, os quatro níveis de dificuldade, os parâmetros de tempo/vocabulário/comprimento das palavras, a seleção aleatória anti-cópia e o colapso do livro de abertura ("MY" quinze vezes), são medidos a partir das notas de design e construção deste projeto.
Was this worth reading?
← Back to WordChess
PlayPendium · About · Contact · Privacy · Terms · Cookies · Accessibility · Copyright · Browse all games · Inspirations · © 2026