По-русски ⋮ In English

 

Правила игры

В игре «Wordle» и в её русскоязычной реплике «Словль» требуется максимум за шесть попыток отгадать пятибуквенное слово — секрет.

Игрок ходит словом из пяти букв, а ведущий сравнивает это слово с секретом и красит в попытке зелёным цветом те буквы, которые в обоих словах стоят на одних и тех же местах, а жёлтым — совпадающие буквы, стоящие на разных местах.

Например, при секрете ЗНАМЯ попытка ЗАКОН будет раскрашена так: ЗАКОН.

Если и в попытке, и в секрете по два раза встречается одна и та же буква, то она будет покрашена дважды.

Как и во многих других играх со словами, в качестве секретов и попыток в «Словле» используются только имена существительные в именительном падеже, а буквы Ё и Е не различаются.

Эта игра похожа на игру «Быки и коровы». В словесной разновидности «Быков и коров» секретами и попытками могут быть только слова, в которых все буквы разные, и ведущий не сообщает, какие именно буквы совпали, а лишь называет количество «быков» и «коров». Быки — совпадения букв, стоящих на одинаковых местах, а коровы — совпадения букв, стоящих на разных местах.

В обеих играх совпадения букв симметричны относительно замены попытки на секрет. Так, слова ПОЛЮС и САЛЮТ — это два быка и одна корова, с какой стороны ни посмотри.

Тех, кто хочет во всём разобраться сам, предупреждаю: дальше я буду конструировать стратегии, в статье будут спойлеры.

Разведка, пристрелка, атака

В каждом раунде игры я выделяю три стадии — разведка, пристрелка и атака.

В разведке у меня нет цели на каждом шагу отгадать секрет. Я перебираю как можно больше разных букв, чтобы как можно больше узнать про секрет и как можно строже ограничить множество возможных секретов.

В атаке я хожу только словами, которые строго удовлетворяют всем найденным ограничениям и при этом стараюсь занять наиболее частые буквы из новых.

Я перехожу от разведки к атаке, когда допустимых секретов осталось настолько мало, что я с трудом подбираю хотя бы один вариант. Если и ограничений много, и вариантов больше двух, мне нужна пристрелка, которая за один ход отбирает из этих вариантов верный.

Успех в атаке зависит от способности игрока вспомнить слова, подходящие под уже известные ограничения. Этот навык тренируется в разных играх со словами. И чем увереннее вы чувствуете себя в атаке, тем короче вам нужна разведка.

Игровой словарь

Поскольку у меня нет списка слов, допустимых в игре, в качестве игрового словаря я выбрал все пятибуквенные существительные из Грамматического словаря.

Всего в ГС 3646 подходящих слов.

Для статистических целей подошла бы и выборка из размеченного корпуса текстов, то есть такого, в котором прописаны части речи и грамматические характеристики всех слов. Например, из Национального корпуса русского языка.

Частотность букв

Я исхожу из предположения, что все слова из словаря загадываются с равной вероятностью, поэтому частотность слов в реальных текстах мне не нужна. Мой анализ строится на том, как часто и на каких местах разные буквы встречаются в словах из словаря:
Буква На всех местах Первая Вторая Третья Четвёртая Пятая
А 2242 127 750 171 362 832
О 1551 204 552 132 519 144
К 1256 317 76 142 341 380
Р 1170 160 229 408 153 220
Е 1079 13 418 168 397 83
И 1046 62 332 144 382 126
Т 957 195 125 256 126 255
Л 886 150 136 335 157 108
Н 862 130 59 222 190 261
С 818 334 59 177 93 155
У 652 59 349 70 169 5
П 596 316 57 147 35 41
М 562 203 47 173 74 65
В 496 191 62 128 64 51
Б 486 214 62 133 44 33
Д 462 147 21 138 69 87
З 363 112 41 107 52 51
Г 360 143 28 93 49 47
Я 279 22 36 27 47 147
Ш 278 130 7 75 31 35
Ь 250 0 8 3 68 171
Ы 244 0 104 28 46 66
Ч 224 72 8 82 26 36
Х 211 82 13 52 24 40
Ф 193 108 9 43 16 17
Ж 188 56 8 68 28 28
Ц 181 37 4 28 37 75
Й 157 3 6 57 9 82
Ю 89 11 30 21 24 3
Щ 48 19 4 11 14 0
Э 39 29 4 4 0 2
Ъ 5 0 2 3 0 0

Частоты букв в игровом словаре отличаются от частот букв в реальных текстах. Вот два частотных рейтинга:

АОКРЕ ИТЛНС УПМВБ ДЗГЯШ ЬЫЧХФ ЖЦЙЮЩ ЭЪ
ОЕАИН ТСРВЛ КМДПУ ЯЫЬГЗ БЧЙХЖ ШЮЦЩЭ ФЪ

В первой строке буквы отсортированы по убыванию их частот в игровом словаре, во второй — по убыванию их частот в реальных текстах, на материале Национального корпуса русского языка из Нового словаря частотности.

Хинт: самые частые буквы расположены, как правило, в середине клавиатуры, под указательными пальцами.

Повторы букв

Буквы повторяются в 30% слов (1093 из 3646).

Два мягких знака есть только в одном слове: ПЬЯНЬ. А чаще других букв повторяется А: две или три А встречаются в 379 словах; это чаще, чем в каждом десятом слове.

Но даже вторая А встречается реже, чем шестнадцатая в рейтинге буква Д, поэтому начинать игру выгоднее словами, в которых все буквы разные и при этом наиболее частые, — так я зацеплю больше возможных секретов. А о повторах нужно вспомнить в атаке.

В восьми словах одна и та же буква встречается трижды (бесполезное наблюдение — все они с этой буквы и начинаются):

АБАКА
АГАВА
АГАМА
АНАША
АТАКА
ИЧИГИ
ОЛОВО
ТУТТИ

Гласные

Две гласных буквы в 3021 слове, это 83% словаря. Всего одна гласная буква в 348 словах, три — в 277. Слов без гласных и слов с четырьмя или пятью гласными в игровом словаре нет.

Исходя из этого, пока я знаю одну гласную букву из секрета или ни одной, мне выгодно искать ещё одну гласную, то есть играть словами с тремя и двумя гласными, а когда узнал вторую — больше внимания уделять согласным, то есть ходить словами с одной новой гласной.

Если я перебрал А, О, Е, И, У и нашёл только одну гласную, и это А или О, то разумно проверить вторую такую же:
Сочетания А О
Одна А или О8566
× 2 или × 3379206
+ Ы, Э, Ю или Я230157

К-число и Б-число

Все буквы разные в 2553 словах.

Для каждого из них я посчитал два числа — сумму общих частот всех пяти букв, К-число, и сумму частот пяти букв на своих же местах, Б-число. Вот пример расчёта для слова БОНУС:
Буква Σ Б О Н У С
О 1551 204 552 132 519 144
Н 862 130 59 222 190 261
С 818 334 59 177 93 155
У 652 59 349 70 169 5
Б 486 214 62 133 44 33

К(БОНУС) = 486 + 1551 + 862 + 652 + 818 = 4369
Б(БОНУС) = 214 +  552 + 222 + 169 + 155 = 1312

Теперь я составлю рейтинг слов, отсортировав их в первую очередь по убыванию К-чисел, а при равенстве — по убыванию Б-чисел.

Теоретически на вершине рейтинга стояло бы слово, которое содержит пять самых частых букв (А, О, К, Р, Е), но такого слова в словаре нет. Из этих букв можно составить четыре слова, но только с повторами:

КАКАО
КОКОР
КОРКА
РОКЕР

Вот двадцать слов без повторяющихся букв с наибольшим рейтингом:

   К    Б
7081 2263 НОРКА
7081 1900 КОРАН
7081 1700 КРОНА
7052 1228 ИКОТА
7037 1527 СКОРА
7037 1205 ОКРАС
6990 1071 ОКЕАН
6957 1426 ИНОКА
6957 1292 ИКОНА
6868 2111 НОТКА
6868 1159 ОКТАН
6824 2315 СОТКА
6824 2097 ТОСКА
6815 2449 ПОРКА
6815 2373 ПАРОК
6815 2001 КОПРА
6815 1953 КАПОР
6815 1601 РОПАК
6781 2183 КОРМА
6781 1624 КОМАР

Самый низкий рейтинг — у слова УЗДЦЫ:

   К    Б
1902  341 УЗДЦЫ

Алгоритм «Норка»

Этот алгоритм построен на слове с самым высоким рейтингом — НОРКА.

Первый ход этим словом максимизирует количество совпадений букв на множестве всех слов из словаря. После него в 29,6% (1081 из 3646) секретов будут известны как минимум три буквы.

Если совпадений недостаточно для атаки, я хожу словами с высоким рейтингом и без буквенных пересечений со словом НОРКА. В зависимости от числа гласных, покрашенных в первой попытке, следующим ходом будет слово либо с двумя гласными (МЕТИЛ, СЕМИТ, МЕТИС, БИЛЕТ), либо с одной (ГЛИСТ, ЛЕСТЬ, СТИЛЬ).

После этого как минимум три буквы будут известны у 77,7% (2832 из 3646) секретов.

После двух ходов НОРКА и ГЛИСТ, если совпадений недостаточно, я продолжаю разведку словом МУЗЕЙ.

После двух ходов НОРКА и МЕТИЛ останется всего четыре слова, с которыми не было ни одного совпадения: СВЯЗЬ, СУДЬЯ, СЫЧУГ, УЗДЦЫ. Если совпадений мало, я хожу одним из этих четырёх слов.

Визуализированный алгоритм «Норка»:

Десять букв

Из десяти наиболее частых букв, А, О, К, Р, Е, И, Т, Л, Н, С, можно сложить 52 пары слов. Они будут панграммами на усёченном наборе букв и ограниченном множестве слов.

Сумма К-чисел двух слов, КΣ, у всех пар одинакова, 11 867. Это значит, что за два хода о наборе (но не о местах) букв секрета они дадут одну и ту же информацию.

Эти пары различаются по двум другим параметрам: Б-числу пары (БΣ) и К-числу первого слова из пары (К1). Чем больше К1, тем больше я буду знать о наборе букв секрета уже после первого хода. Чем больше БΣ, тем больше будет информации о местах букв в секрете после второго хода.

Вот несколько таких пар. В каждой паре на первом месте стоит слово с бо́льшим К-числом:

  К1   БΣ
6171 4023 СЕРНА КОЛИТ
6310 3658 РЕНТА СИЛОК
6248 3460 САЛКИ ТЕНОР
5958 3458 СТЕНА РОЛИК
5942 3324 КРЕОЛ САТИН
6729 3387 НОСКА ЛИТЕР
6277 3202 ТИРАН ЛЕСОК
6609 3033 НЕРКА СТИЛО
6711 2869 ОРЛАН КИСЕТ
6609 1849 АНКЕР СТИЛО

Алгоритм «Серна»

Этот алгоритм предлагает первые два хода сделать парой с максимальным КΣ. Я выбираю из них пару с наибольшим БΣ: СЕРНА и КОЛИТ.

После таких двух ходов как минимум три буквы будут известны для 79,6% (2902 из 3646) секретов. Это немного больше, чем в алгоритме «Норка».

Как и в «Норке», совсем не будет совпадений с четырьмя словами: УЗДЦЫ, ВЗМЫВ, ЖМУДЬ, ЗУМПФ.

Визуализированный алгоритм «Серна»:

15, 20, 25, 30

Для игры в «Словль» это уже излишне, но пригодится в «Быках и коровах».

Из 15 самых частых букв можно составить 159 троек слов.
Из 20 самых частых букв можно составить 138 четвёрок слов.
Из 25 самых частых букв можно составить 37 пятёрок слов.

Вот примеры таких наборов и их БΣ. В первой строке блока — максимальный по БΣ набор. В каждой строке слова упорядочены по убыванию К-чисел:

  БΣ
4809 МОЛВА БИСЕР ПУНКТ
4576 КОВЕР ТУМБА СПЛИН
4526 БУКВА ЛИМОН ПЕРСТ
4511 ПИЛОН ТУМБА СКВЕР
4445 ВОБЛА ПЕРСТ УМНИК

5306 СИГМА ПУНКТ ВЗДОР БЕЛЯШ
5027 БУДКА ШПРОТ СВИНГ ЗЕМЛЯ
4678 МОШНА БИЛЕТ ВПУСК ДРЯЗГ
4449 МИКСТ ШЛЯПА ВЗДОР БЕГУН
4221 КУЗОВ БАШНЯ СМЕРД ГЛИПТ

5384 ГОДИК БАШНЯ ЧЕРВЬ ХЛЫСТ ЗУМПФ
4870 ХУНТА БЫЧОК ШВЕПС ФИЛЬМ ДРЯЗГ
4703 БОДЯК ГРУНТ ВЗМАХ ЧИПСЫ ШЕЛЬФ
3912 СКЕТЧ ВЗМАХ ШПОРЫ ФИГНЯ ДУБЛЬ
3800 ШНАПС ТРЕФЫ МЯЧИК ВЗДОХ ГЛУБЬ

После пяти ходов, сделанных любой из панграмм последнего блока, мне будут известны все буквы всех слов, кроме тех 44, в которых есть Ъ или Э. Одновременно эти две буквы ни в одном слове из игрового словаря не встречаются.

Для тридцати самых частых букв, то есть всех, кроме Ъ или Э, мне не удалось составить панграмму из шести пятибуквенных существительных.

Алгоритм «Опека»

Этот алгоритм уделяет больше внимания гласным, чем предыдущие.

Вот десять слов с наибольшим К-числом, в которых три гласных:

   К    Б
7052 1228 ИКОТА
6990 1071 ОКЕАН
6957 1426 ИНОКА
6957 1292 ИКОНА
6724 1602 ОПЕКА
6691  612 ОКАПИ
6638 1414 ОПЕРА
6571 1364 МАОРИ
6519 1429 ОСИНА
6471 1574 РАДИО

Я делаю первый ход тем из них, у которого максимальное Б-число, ОПЕКА, и дальше действую исходя из набора совпадений.
Три гласных совпали
Семь секретов, два из них уникальны по набору совпадений, остальные разбираются пристрелкой ДОГМА:

ОПЕКАОКЕАН
ОПЕКАОПЕРА

ОПЕКА + ДОГМАОДЁЖА
      + ДОГМАОМЕГА
      + ДОГМАОМЕЛА

ОПЕКА + ДОГМАЕГОЗА
      + ДОГМАЖЕОДА
Два быка на гласных

— О и А. Cемь секретов, пристрелка ФИНАЛ приводит к победе на третьем ходу:


ФИНАЛОБУЗА
ФИНАЛОЛЬХА
ФИНАЛОСИНА
ФИНАЛОЛИВА
ФИНАЛОЛИФА
ФИНАЛОБИДА
ФИНАЛОНУЧА

— О и Е. Восемь секретов, два из них уникальны по совпадениям согласных. Пристрелка ОЛЕНЬ, если это не секрет, приводит к победе на третьем ходу.


ОПЕКАОПЕЛЬ
ОПЕКАОЧЕРК

ОПЕКАОЛЕНЬ
      + ОЛЕНЬОЛЕИН
      + ОЛЕНЬОСЕНЬ
      + ОЛЕНЬОСЁТР
      + ОЛЕНЬОТЕЛЬ
      + ОЛЕНЬОФЕНЯ

— Е и А. Сорок пять секретов. Если совпали согласные, я атакую, если нет, то хожу словом СТРУГ.

Бык и корова или две коровы на гласных
Если две согласные совпали, я атакую. Если одна или ни одной, то вторым ходом проверяю наиболее вероятные из новых согласных и пробую из гласной коровы сделать быка. Для каждого из этих вариантов я пересчитал частоты, включив в подсловарь только те слова, которые удовлетворяют всем ограничениям.

ОПЕКАТЕМБР, ОБЛЁТ
ОПЕКАДРЕВО
ОПЕКАТЕНОР
ОПЕКАОТВАР
ОПЕКАТРОМБ
ОПЕКАЗАГОН, БАРОН, САЛОН
ОПЕКАГРУНТ, ТРАНС, СТЕНД
ОПЕКАГРУНТ, ТРАНС, СТЕНД
ОПЕКАНАЛЁТ
Одна гласная совпала или ни одной
На втором ходу продолжаю искать гласные словом РУБИН.

— Если после второго хода неизвестна ни одна гласная, продолжаю разведку словами ЯСТЫК или ЛЫЖНЯ.

— Если одно или два совпадения, хожу словами ХЛЫСТ, МЫСЛЬ или СВЯЗЬ.

— Во всех остальных случаях атакую.


Визуализированный алгоритм «Опека»:

Тестирование алгоритмов

Чтобы сравнить практическую эффективность алгоритмов, я сыграл по 110 раундов четырьмя алгоритмами:

— НОРКА, но со словом МЕТИС на втором ходу вместо слова МЕТИЛ

— ОПЕКА

— СЕРНА + КОЛИТ

— СТЕНА + РОЛИК — другая панграмма десяти букв, с меньшими К1 и БΣ


Результаты тестов в таблице:
Ходы Норка Опека Серна Стена
2 6 1 4 2
3 51 39 62 53
4 39 49 38 47
5 11 17 6 7
6 3 4 0 1
Среднее 3.582 3.855 3.418 3.564

И на графике:


В моём случае «Серна» — лучшая по среднему числу ходов, «Стена» заметно проигрывает «Серне», «Норка» отгадывает больше всего секретов на втором ходу, но отстаёт на следующих, а «Опека» слабее трёх других.

У других игроков может получиться другое распределение эффективности, поэтому я буду благодарен тем, кто пришлёт мне результаты своего тестирования.

В одном раунде я угадал секрет с первой же попытки. Этот раунд я вычеркнул из результатов эксперимента.

Вот все мои игры: Норка, Опека, Серна, Стена.

Толкование некоторых слов

АГА́МА — небольшая ящерица 

И́ЧИГИ — татарские лёгкие сапоги 

ТУ́ТТИ — кнопка орга́на, которая включает все регистры 

КО́КОР — мешок для артиллерийских снарядов 

СКО́РА — шкура животного до выделки 

КО́ПРА — мякоть кокоса 

РОПА́К — торчащая вверх льдина 

СЫЧУ́Г — отдел желудка жвачных животных 

ЖМУДЬ — литовская народность 

ЗУМПФ — отстойник для грунтовых вод в шахте 

ГЛИПТ — резной камень 

ЖЕО́ДА — полость в горной породе 

ОФЕ́НЯ — коробейник 

СТРУГ — плоскодонное парусно-гребное судно 

ЯСТЫ́К — плёночная оболочка рыбной икры 


⚃⚃