В гомоку выигрывают вилкой: одна фишка создаёт сразу две угрозы — две открытые тройки или четвёрку и тройку, — а закрыть можно только одну. Чтобы до неё дойти, нужна инициатива: в моделировании игрок, который закрывает только настоящие угрозы, а в остальное время строит свой ряд, выигрывает у здешнего «Простого» 74% партий, а тот, кто сначала закрывает, как играет сам «Простой», выигрывает 5% и сводит вничью 91%. «Простой» и «Сложный» на одну и ту же позицию всегда отвечают одинаково, поэтому их каждый раз обыгрывает одна и та же последовательность ходов: семь ходов против «Простого» — быстрее нельзя — и девять против «Сложного».
Всё в гомоку меряется одним вопросом: сколько фишек не хватает этому ряду до пятёрки и в скольких точках его можно остановить? Почти любое решение сводится к четырём фигурам.
Все три уровня компьютера эти фигуры знают. В проверочных позициях каждый из них закрыл открытую тройку с одного конца, занял разрыв в тройке с пропуском и закрыл четвёрку. Одним рядом не обыграть никого из них; обыгрывают двумя рядами сразу.
Правила здесь свободные: ряд из шести и длиннее тоже выигрывает, запрещённых ходов нет ни у одной из сторон. Так устроен сам код, а не только текст правил: победа — это любой непрерывный ряд из пяти и больше.
Вилка — это фишка, которая создаёт две такие угрозы одновременно. Видов три, и они различаются скоростью:
Вот вилка 3-3 против «Сложного» — из выигрышной последовательности, приведённой ниже. В одной из двух троек есть разрыв, а такую точку труднее заметить — и человеку, и программе.
Против «Простого» разрыв важнее всего. «Простой» оценивает точку по сплошному ряду, который получится, если поставить туда фишку, поэтому тройку с дыркой он не видит, пока кроме этой дырки ничего не останется. Если на пустой точке пересекаются два ваших сплошных ряда, он эту точку займёт; если в одном из них есть разрыв, вилку он не заметит.
В рэндзю, турнирном варианте игры, первому игроку вилки 3-3 и 4-4 запрещены вовсе. Здесь обе разрешены, а первый игрок — вы: вилка здесь не трюк, а основное оружие.
Самая дорогая привычка в гомоку — отвечать на всё подряд. Мы проверили это напрямую, сыграв против «Простого» по его же правилу: каждая точка оценивается по тому, что она строит вам и что отнимает у соперника, причём защита весит чуть больше. Такой игрок выиграл 4,6% из 3000 партий, проиграл 4,3% и свёл вничью 91%: доска просто заполнялась.
Стоит поменять приоритеты — закрывать только настоящую угрозу, а в остальное время продлевать свой лучший ряд, — и тот же «Простой» чаще проигрывает:
Настоящих угроз немного: четвёрка, открытая тройка (сплошная или с разрывом) и пустая точка, на которой два ряда соперника разом стали бы угрозами. Закрытая тройка к ним не относится. Две фишки подряд — тоже. Каждый ход, потраченный на них, — это ход, за который ваша собственная позиция не выросла.
У «Простого» есть ещё одна слабость, о которой стоит знать. Закрыть вашу открытую тройку для него чуть важнее, чем поставить собственную открытую четвёрку. В проверочной позиции, где открытая тройка была у обеих сторон, а ход — за компьютером, «Простой» закрылся, вместо того чтобы выиграть; «Сложный» и «Эксперт» поставили открытую четвёрку. Так что против «Простого» каждая ваша тройка или четвёрка выигрывает ход — даже когда компьютер в шаге от победы.
Ничьи редки, когда обе стороны атакуют, но не вообще. «Простой» против собственной копии свёл вничью 84% из 2000 партий — поле заполнялось до последней точки, — а «Сложный» против «Сложного» — 30% из 1000.
При свободных правилах на поле 15×15 первый игрок выигрывает при идеальной игре: это доказано машинным перебором в начале 1990-х (Виктор Аллис с коллегами). Результат известный, не наш, и идеально никто не играет — но преимущество видно и в обычных партиях.
Мы заставили каждый уровень играть с самим собой, поставив первые две фишки случайно около центра. «Сложный» против «Сложного»: первый игрок выиграл 47% из 1000 партий, второй — 23%, остальные ничьи. «Эксперт» против «Эксперта» при переборе на четыре хода: 69% против 20% в 500 партиях. Из партий, где кто-то победил, первый игрок взял две из трёх на уровне «Сложного» и почти четыре из пяти на уровне «Эксперта». Здесь первый ход всегда ваш.
Начинайте в середине. Пятёрку на этом поле можно построить в 572 разных местах. Любая точка центрального квадрата 7×7 входит в 20 из них, точка в середине края — в 8, угол — в 3. Фишке у края некуда расти, а сам край работает как блок на любом ряду, который до него дошёл.
Со второго хода играйте плотно. Компьютер вообще не рассматривает точки дальше двух шагов от всех фишек на доске, и не зря: фишка, которая ничего не касается, ничего и не строит.
Вот как простые способы выбирать ход играют против каждого уровня. Вы играете синими и ходите первыми; первая фишка ставится в центр, вторая — случайно не дальше двух точек от неё, а между одинаково хорошими ходами выбор случайный.
| Ваше правило | против «Простого» | против «Сложного» | против «Эксперта»* |
|---|---|---|---|
| Случайная точка рядом с любой фишкой | 0% | 0% | 0% |
| Сначала закрывать, как «Простой» (его же правило оценки) | 5% | 15% | 4% |
| Продлевать свой лучший ряд; закрывать только четвёрку | 56% | 1,5% | 0% |
| …и закрывать открытые тройки, ставить свою открытую четвёрку | 65% | 18% | 19% |
| …и ставить вилки, считая разрывы; занимать точку вилки компьютера | 74% | 36% | 35% |
* «Эксперт» ограничен по времени и считает на два, четыре или шесть ходов вперёд — смотря какое устройство. Столбец «Эксперта» смоделирован при фиксированной глубине четыре. На полной глубине шесть последнее правило выиграло 26% из 200 партий. Правило «сначала закрывать» в основном даёт ничьи: 91% партий против «Простого», 34% против «Сложного», 32% против «Эксперта».
В «Простом» и «Сложном» нет случайности: на одну и ту же позицию всегда один и тот же ответ. Значит, партия, которая обыграла их однажды, обыгрывает их всегда. Точки называются как клетки шахматной доски: буквы a–o слева направо, ряды 1–15 сверху вниз (в самой игре подписей нет); центр — h8.
«Простой» за семь ходов. Сыграйте h8, e9, f10, e10, e11, g9, d12. Компьютер отвечает g7, h7, d8, d10, e8, i7. Ваш пятый ход, e11, создаёт две тройки сразу — вертикаль e9–e10–e11 и диагональ h8, пропуск, f10, e11. «Простой» закрывает вертикаль, ход g9 заполняет пропуск и даёт открытую четвёрку, а d12 достраивает пятёрку. Короче выигрыша нет: мы проверили все партии из шести ходов и меньше при любом первом ходе — 16,4 миллиона позиций.
«Сложный» за девять ходов. Сыграйте h8, h6, i8, g9, h9, h7, j9, i9, k9. «Сложный» отвечает g7, h5, g8, i7, j7, h10, g6, f9. Седьмой ход, j9, — та самая вилка, что показана выше; i9 даёт открытую четвёрку, k9 выигрывает. Это самая короткая последовательность из найденных нами, но не доказанный минимум.
«Эксперт» зависит от скорости вашего устройства, поэтому гарантированной последовательности против него нет. На быстром компьютере, где он успевает досчитать на все шесть ходов, он так же предсказуем, и вот эта партия выигрывалась при каждой нашей проверке: h8, g5, g6, i5, f7, h4, i6, d7, i7, i2, j6, k5, g9 — «Эксперт» отвечает h6, f6, g7, f5, h5, g4, e6, i3, h3, i8, g3, l4. Если на h8 он первым ходом ответил g7, а не h6, устройство не даёт ему досчитать, и последовательность не сработает. Тогда играйте по правилам ниже: последнее правило из таблицы выиграло у «Эксперта» около трети партий, а выигранные партии длились в среднем 23 хода.
Против «Простого» одни только правила 1 и 6 выигрывают 56% партий, правило 3 поднимает это до 65%, правила 4 и 5 — до 74%. Против «Сложного» те же шаги дают 1,5%, 18% и 36%.
Вилкой: одна фишка создаёт две угрозы сразу — например, две открытые тройки или четвёрку и тройку. Закрыть можно только одну. Пока вилки нет, закрывайте только настоящие угрозы — четвёрку, открытую тройку, точку, где вилку мог бы поставить соперник, — а все остальные ходы тратьте на свой ряд.
В центр. На поле 15×15 пятёрку можно построить в 572 местах; точка центрального квадрата 7×7 входит в 20 из них, точка в середине края — в 8, угол — в 3.
При идеальной игре — да: для свободного гомоку на поле 15×15 это доказано машинным перебором в начале 1990-х. В нашем моделировании, где компьютер играл сам с собой на уровне «Сложный», первый игрок выиграл 47% партий, второй — 23%. В этой игре первыми всегда ходите вы.
В свободном гомоку, по правилам которого идёт эта игра, — да: 3-3, 4-4 и ряды длиннее пяти разрешены обеим сторонам. В рэндзю, турнирном варианте, первому игроку они запрещены.
Здесь — да. Правила свободные, выигрывает любой непрерывный ряд из пяти и больше. В некоторых вариантах (стандартное гомоку, рэндзю для первого игрока) ряд из шести не засчитывается.
Да. «Простой» и «Сложный» здесь полностью предсказуемы, и заранее известные последовательности обыгрывают их каждый раз: семь ходов против «Простого» (h8, e9, f10, e10, e11, g9, d12) — быстрее невозможно — и девять против «Сложного» (h8, h6, i8, g9, h9, h7, j9, i9, k9). «Эксперт» сильнее и зависит от скорости устройства; простые атакующие правила выигрывают у него примерно треть партий.
Атаковать, а защищаться только от настоящих угроз. Против здешнего «Простого» игрок, который сначала закрывает, выиграл 5% смоделированных партий и свёл вничью 91%; игрок, который строит свой ряд и закрывает только четвёрки, открытые тройки и точки вилок, выиграл 74%.