PlayPendium
WordChess · Żywność dla myśli

Jak komputer wybiera słowo

Zanim SI wykona ruch, musi znaleźć go w stogu siana liczącym sto pięćdziesiąt tysięcy słów, a potem przestać szukać.

Napisane i zredagowane po angielsku. Ta polska wersja powstała w wyniku tłumaczenia maszynowego; tam, gdzie liczy się precyzja, rozstrzygający jest angielski oryginał. Przeczytaj oryginał po angielsku →

01 · Stóg siana

Przestrzeń zbyt wielka, by ją objąć wzrokiem

Daj człowiekowi pełny zestaw płytek WordChess i polecenie „zagraj dobre słowo”, a zawęzi problem, nawet nie zauważając, że to zrobił. Komputer nie ma takiej intuicji. Na planszy 25×25, mając własny pełny zestaw stu płytek, może spróbować niemal każdego z 148 941 słów słownika, a każde słowo da się położyć na tysiącach dozwolonych współrzędnych i w różnych kierunkach. Co gorsza, ułożenie jest dozwolone tylko wtedy, gdy każda nowa litera, którą wprowadza, tworzy też prawdziwe słowo tam, gdzie krzyżuje się z tym, co już leży na planszy. Pomnóż słowa przez ułożenia i przez to ograniczenie krzyżowań, a otrzymasz przestrzeń przeszukiwania, której żaden gracz, krzemowy czy inny, nie zdoła w całości wyliczyć i uszeregować.

Dlatego poważne silniki gier słownych, a wśród nich Quackle, otwartoźródłowa implementacja wzorcowa, nigdy nie przeszukują słownika metodą siłową. 4 Struktura GADDAG Stevena Gordona z 1994 roku, a przed nią DAWG, pozwalają programowi „wyrastać” słowami na zewnątrz od płytek już leżących na planszy i sprawdzać krzyżowania na bieżąco, tak że niedozwolone gałęzie obumierają wcześnie, zamiast być oceniane i odrzucane. 1 Zadaniem nie jest „wypisać każde słowo”. Jest nim „generować tylko te ruchy, które w ogóle mogą być dozwolone, i robić to szybko”.

02 · Zegar

Wystarczająco dobre wygrywa z doskonałym

Nawet oszczędny generator zwraca więcej kandydatów na ruch, niż da się dogłębnie ocenić, więc drugim problemem jest czas. Maven Briana Shepparda, pierwszy program, który ograł czołowych ludzkich przeciwników, zmierzył się dokładnie z tym i rozwiązał to w dwóch etapach: szybka heurystyka układa surowe zagrania w przybliżonej kolejności jakości, a tylko krótka lista najbardziej obiecujących jest starannie badana przez wielokrotne symulowanie dalszej gry, by sprawdzić, który kandydat faktycznie wypada najlepiej. 2 Inne gry znają tę samą ideę pod innymi nazwami, jako rollout w backgammonie i playout w programach do go; w Mavenie nazywa się ona symulacją.

WordChess działa w tym samym duchu, ale pod ostrzejszym ograniczeniem: stałego budżetu czasu wyszukiwania na ruch. Gdy budżet się wyczerpie, SI wybiera najlepsze słowo, jakie dotąd znalazła. Nie jest to kompromis, którego inżynierowie żałują; to sedno całego projektu. Gracz, który myśli w nieskończoność, nie jest lepszym przeciwnikiem, tylko wolniejszym. Zegar zmusza maszynę do tego, co ludzie robią instynktownie: do poprzestania na ruchu wyraźnie dobrym zamiast dowodliwie najlepszego.

Znajomość słownika to ta łatwa część. Wiedza, kiedy przestać go przeszukiwać, to ta trudna.

03 · Uczciwa trudność

Słabość, której można ufać

Leniwy sposób na ułatwienie SI w grze to uczynienie jej losowo głupią, każąc jej spartaczyć ruch, który wyraźnie widziała. Gracze to zauważają i mają o to żal. Projektant Sid Meier bywa przywoływany jako ten, który wyciął z Civilization funkcje sojuszy, ponieważ komputer potrafił je wykorzystywać niemal tak dobrze jak gracz; efekt, słowami Meiera przytoczonymi w jednym z omówień projektowania przeciwników SI, „zostawiłby graczy z poczuciem, że nie mogą wygrać, bo komputer oszukuje”. 3 Trudność odbierana jako nieuczciwość zatruwa grę, i dlatego literatura naukowa o dynamicznym dostosowywaniu trudności zajmuje się strojeniem tego, do czego SI jest zdolna, a nie tego, co wolno jej widzieć. 5

WordChess stroi swoje cztery poziomy wzdłuż osi, które człowiek by rozpoznał, nigdy nie podsuwając SI ukrytych informacji. Poziomy różnią się tym, jak długo mogą szukać, jak głęboko w rzadki słownik sięga ich zasób słów i jakie przedziały długości słów preferują. Łatwy przeciwnik gra wiarygodnie słabe słowa: prawdziwe, sensowne, krótkie, a nie bzdury. Arcymistrz dzieli cały rzadki leksykon z poziomem trudnym i ma najwięcej czasu, by go przekopać. Gracz przegrywa z czymś, co wygląda na bogatsze słownictwo i bystrzejsze czytanie planszy, bo dokładnie tym to jest.

Cztery poziomy strojone limitami, według notatek projektowych i konstrukcyjnych tego projektu
PoziomZasięg słownictwaBudżet wyszukiwaniaPreferowana długość słów
ŁatwyTylko popularneNajkrótszyKrótkie
NormalnyPopularne + średnie + połowa rzadkichKrótkiMieszane
TrudnyPełnyDługiDłuższe
ArcymistrzPełnyNajdłuższyBez ograniczeń
04 · Przeciwnik, nie kalkulator

Co sprawia, że wydaje się ludzki

Kalkulator za każdym razem zwraca tę samą odpowiedź; przeciwnik potrafi zaskoczyć. WordChess dodaje do wyboru ruchu celowy, losowy krok, tak aby niemal równorzędne ruchy nie zawsze były rozstrzygane tak samo, a SI nie zagrywała za każdym razem tego samego słowa. W połączeniu z pułapami słownictwa dla poszczególnych poziomów daje to różnorodność, poczucie, że po drugiej stronie planszy siedzi ktoś, kto dokonuje wyborów, a niektóre z nich mógłbyś dokonać i ty.

Na tym polega cicha sztuka. Wiarygodny przeciwnik potrzebuje powściągliwości w tym samym stopniu co siły: gotowości, by zagrać słowo po prostu dobre, zostawić punkty na stole, dać się pokonać w sposób, który wydaje się zasłużony. Najtrudniejszym problemem inżynierskim maszyny było przeszukanie stogu siana. Najsubtelniejszym było nauczenie się, kiedy przestać szukać, co wiedzieć i ile zachować w odwodzie.

Sources & notes
  1. Wikipedia, "GADDAG", the move-generation data structure introduced by Steven A. Gordon (1994) that grows words from placed tiles and validates crossings during generation. en.wikipedia.org/wiki/GADDAG
  2. Brian Sheppard, "World-Championship-Caliber Scrabble," Artificial Intelligence 134 (2002): 241–275, describes Maven, the first program to outperform the strongest human players against human opposition, with its selective move generation and its simulations of likely game scenarios. doi.org/10.1016/S0004-3702(01)00166-7. Overview of the program: en.wikipedia.org/wiki/Maven_(Scrabble)
  3. Vina Nguyen, "How to Design a Worthy Opponent: AI in Game Development", on believable difficulty, deliberately handicapping the AI, and the resentment bred by opponents that appear to cheat (source of the quoted Sid Meier / Civilization account). vinawrites.com
  4. Quackle (Jason Katz-Brown, John O'Laughlin, et al.), an open-source Scrabble engine bundling a GADDAG move generator, evaluator, and simulator for any lexicon or board. Source: github.com/quackle/quackle; project page: people.csail.mit.edu/jasonkb/quackle
  5. M. Zohaib, "Dynamic Difficulty Adjustment (DDA) in Computer Games: A Review," Advances in Human-Computer Interaction (2018), survey of tuning challenge by adjusting AI capability rather than cheating. onlinelibrary.wiley.com/doi/10.1155/2018/5681652
  6. WordChess-specific facts, the four difficulty tiers, the time/vocabulary/word-length levers, the randomized selection, and the opening-book collapse ("MY" fifteen times), are measured from this project's design and build notes.
Was this worth reading?
Play WordChess
PlayPendium · About · Contact · Privacy · Terms · Cookies · Accessibility · Copyright · Browse all games · Classic arcade games · © 2026