← Шашки против компьютера

Как выиграть в шашки у компьютера: удары, большак и окончания

Числа на этой странице — результаты моделирования по коду самой игры: её правилам, её оценке позиции и её перебору. У «Простого» нет случайности, поэтому ловушки проверены ход за ходом, а средние числа — по 400–5000 партий; «Сложный» и «Эксперт» думают на время, поэтому их моделировали на фиксированной глубине в шесть полуходов — до неё они добираются почти на каждом ходу — по несколько сотен партий на каждый. Числа про окончания точные: решены все позиции, где против одинокой дамки стоят от одной до трёх дамок.
Коротко

У компьютера в шашки выигрывают ударами: вы отдаёте шашку, а обязательное взятие уводит фигуру соперника на поле, где вы забираете две или три. «Простой» считает всего на два полухода, удара не видит и каждую партию играет одинаково, поэтому 1.c3-d4 b6-a5 2.g3-f4 a7-b6 3.d4-e5! выигрывает шашку на четвёртом ходу всегда. А в окончании помните о большаке: три дамки обыгрывают одинокую дамку вне диагонали a1–h8 не дольше чем за 14 ходов, а одинокая дамка, которая держит большак, спасается.

Почему партию решают удары

Бить обязательно, поэтому подставленная шашка — не предложение, а приказ: соперник обязан её взять, куда бы ни вело взятие. На этом и строится удар. Вы отдаёте одну шашку (иногда две), вынужденное взятие уводит фигуру соперника на поле, которое она сама не выбирала, а ваш ответ забирает две-три шашки за один ход — и часто заканчивается на последнем ряду, в дамках.

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

  • Простой считает на два полухода — свой ход и ваш ответ. Никакого удара он не видит и учитывает только материал.
  • Сложный считает на шесть полуходов — этого хватает на большинство ударов в один-два хода.
  • Эксперт считает на шесть–двенадцать полуходов и никогда не останавливается посреди боя, поэтому удар, начинающийся сразу за горизонтом счёта, он всё равно видит.

Мы дали простому игроку — он, как и «Простой», проверяет только ответ на свой ход — сыграть 400 партий против «Простого» и искали в них удары. В 329 партиях (82%) «Простой» в какой-то момент допустил удар, выигрывающий две шашки и больше (дамка считается за три), обычно к своему восьмому ходу. В тех же позициях ход «Сложного» оставлял такой удар только в 40 случаях из 329.

«Простой» каждый раз играет одну и ту же партию: ловушка в четыре хода

У «Простого» нет ни случайности, ни часов. Он перебирает два полухода, оценивает результат одним материалом, а из равных ходов берёт тот, что сгенерировал первым. Поэтому на одни и те же ваши ходы он всегда отвечает одинаково. На любой первый ход он отвечает b6-a5, а удар замечает, только когда взятие уже на доске.

Эта линия выигрывает у него шашку на четвёртом ходу в каждой партии:

1.c3-d4 b6-a5 2.g3-f4 a7-b6 (обведена). Теперь 3.d4-e5! (✓) — шашка подставлена.
3…f6:d4 — взятие вынужденное, и 4.e3:c5:a7 забирает две шашки. У вас лишняя шашка.

Порядок первых двух ходов не важен: 1.g3-f4 b6-a5 2.c3-d4 a7-b6 3.d4-e5 — та же ловушка. Мы перебрали все ваши линии длиной до трёх ходов: ни одна не выигрывает у «Простого» материал, а эта четырёхходовая (в двух порядках ходов) — самая короткая.

Вторая линия даёт дамку на шестом ходу: 1.c3-d4 b6-a5 2.e3-f4 a7-b6 3.b2-c3 b8-a7 4.d2-e3 d6-c5 5.c3-b4! a5:c3:e5 6.f4:d6:b8. Вы отдаёте две шашки, забираете две, и ваша шашка выходит в дамки на b8; позиция перед ударом — первая диаграмма следующего раздела.

Обе линии работают только против «Простого». «Сложный» отвечает на 1.c3-d4 ходом b6-c5, и ловушка не возникает.

Два удара, которые стоит знать в лицо

Первая позиция — из шестиходовой линии выше, вторая — из смоделированной партии против «Простого». Обе показаны после его последнего хода (шашка обведена). «Простой» не увидел ни одной угрозы, «Сложный» видит обе.

Прорыв. 1.c3-b4! a5:c3:e5 (вынужденно, две шашки) 2.f4:d6:b8 — две шашки назад и дамка. «Сложный» вместо d6-c5 играет b6-c5, и удара нет.
Одну за три. 1.c3-b4! a5:c3 — единственное взятие, и 2.d2:b4:d6:b8 забирает три шашки с выходом в дамки. «Сложный» видит угрозу и играет a5-b4 — отдаёт одну шашку, чтобы не потерять три.
После удара «одну за три»: ваша дамка на b8 (знаком + отмечен её путь). Было 11 на 11, стало 10 на 8, и дамка стоит трёх простых.

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

Первый ход: в центр

Вы ходите первыми, и ходов у вас семь. Вот как на каждый отвечают уровни и как после каждого сыграл против «Простого» простой игрок (страхуется на один ход и бережёт задний ряд), примерно 700 партий на ход:

Ваш первый ходОтвет «Простого»Ответ «Сложного»Простая игра против «Простого»: победы / ничьи / поражения
e3-d4b6-a5b6-c564% / 26% / 10%
c3-d4b6-a5b6-c561% / 28% / 11%
g3-f4b6-a5d6-e554% / 24% / 22%
e3-f4b6-a5d6-e543% / 23% / 34%
g3-h4b6-a5f6-g538% / 29% / 33%
a3-b4b6-a5d6-c535% / 24% / 41%
c3-b4b6-a5d6-c527% / 24% / 49%

Оба хода на d4 — в лидерах, ходы к краю доски — в хвосте. Это совпадает со старым правилом: d4 и e5 — ключевые поля центра, шашка там поддерживает соседей, а шашка на краю держит всего одну диагональ.

Ответ «Эксперта» зависит от того, насколько глубоко он успевает досчитать за 0,7 секунды, поэтому на разных устройствах он может различаться: на глубине восемь и десять полуходов он отвечает на 1.c3-d4 ходом f6-e5, а на часах в нашей проверке сыграл d6-c5.

Берегите задний ряд, занимайте центр

План важен даже против движка, который считает на два полухода. Мы дали простому игроку — он проверяет только ответ на свой ход — две привычки и для каждого сочетания сыграли 5000 партий против «Простого»:

Ваша играПобедыНичьиПораженияПартии, где «Простой» прошёл в дамки
Случайные ходы0,2%0,1%99,7%90%
Проверять ответ, и только36%26%38%65%
… и беречь задний ряд46%26%29%54%
… и тянуться в центр48%30%22%51%
… и то и другое79%15%6%20%

Каждая привычка по отдельности стоит около десяти пунктов, а вместе они больше чем удваивают число побед. Задний ряд — причина, по которой «Простой» реже проходит в дамки: шашка на первой горизонтали занимает поле, на которое чужой шашке нужно встать, чтобы стать дамкой, и до середины партии трогать её обычно незачем. Центр — причина, по которой ваши шашки остаются связанными: с d4 и e5 шашка держит две диагонали, и зайти ей за спину трудно.

Про жадность: игрок, который всегда берёт как можно больше, а в остальном ходит наугад, проигрывает «Простому» те же 99,7% партий, что и случайная игра. Бить и так обязательно; проигрывает тихий ход, после которого соперник наносит удар.

Дамки и большак

Длинная диагональ a1–h8 называется большой дорогой, или большаком. Это единственная диагональ через всю доску, и в окончании она решает большинство исходов. Мы точно решили все позиции, где против одинокой дамки стоят одна, две или три дамки, по правилам самой игры:

  • Дамка против дамки — ничья, если одна не может сразу побить другую. Есть одно любопытное исключение: дамки на a1 и h8, на двух концах большака. Проигрывает тот, чей ход: из угла можно пойти только по большаку — прямо под бой чужой дамки.
  • Две дамки против одной — тоже ничья: когда бить никому нечего и ход за одинокой дамкой, две дамки выигрывают примерно одну позицию из ста.
  • Три дамки против одной, одинокая не на большаке, ход ваш — выигрыш. Выиграны все 49 676 таких позиций, самая долгая — за 14 ходов.
  • Три дамки против одной на большаке — ничья. Если одинокая дамка стоит на большаке, бить нечего и ход за ней, три дамки не выиграли ни одной из 11 084 позиций, где сами ещё не заняли поле на этой диагонали.
Ваши дамки на a1, c1 и e1, одна уже стоит на большаке. Форсированный выигрыш за 11 ходов при вашем ходе и за 12 — при ходе соперника.
Три красные дамки против вашей дамки на e5, на большаке. Чей бы ни был ход — ничья: держитесь диагонали, и поймать вас не смогут.

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

Здесь важно правило 15 ходов. Игра объявляет ничью после 15 ходов каждой стороны одними дамками без взятий — считая от последнего взятия или хода простой. Самый долгий выигрыш трёх дамок против одной занимает 14 ходов — всего на один меньше предела, так что лишних ходов почти нет.

Против здешнего компьютера окончание к вам добрее теории. Мы дали одинокой дамке «Эксперта» 100 позиций, где она ещё успевала на большак и спасалась; против трёх дамок, которые играли точно, она удержала ничью только в 42. И наоборот: с тремя своими дамками «Эксперт» выиграл 76 из 100 теоретически проигранных позиций у защитника, который просто не подставлялся и бежал к большаку, но только 49 из 200 — против самой упорной защиты; остальные партии упёрлись в правило 15 ходов. Так что с тремя дамками давите, а с одинокой дамкой не сдавайтесь: считайте ходы.

Как обыграть каждый уровень

Вот как три вида игры выступили против каждого уровня; партии различались несколькими случайными ходами в дебюте (простая игра против «Простого» — 5000 партий, всё остальное — от 32 до 192 партий):

Ваша играпротив «Простого»против «Сложного»против «Эксперта»
Простая: проверять ответ, беречь задний ряд, тянуться в центр79 / 15 / 64 / 2 / 940 / 0 / 100
Расчёт на шесть полуходов, как у «Сложного»97 / 1 / 234 / 35 / 3018 / 27 / 55
Шесть полуходов и доигрывание каждого боя, как у «Эксперта»97 / 2 / 148 / 29 / 2334 / 16 / 50
  • Простой. Сыграйте ловушку в четыре хода или просто берегите задний ряд и занимайте центр — одно это выигрывает четыре партии из пяти. Всё, что считает хоть немного дальше, обыгрывает его 97 раз из 100.
  • Сложный. Здесь главный скачок: привычки, которые бьют «Простого», выигрывают тут 2 партии из 48. «Сложный» видит любой удар в пределах шести полуходов, так что считать придётся и вам. Его слабые места видны в коде: он обрывает счёт на шестом полуходе даже посреди боя, и плана на окончание у него нет — треть партий между равными игроками на шесть полуходов кончается ничьей по правилу 15 ходов.
  • Эксперт. Он доигрывает каждый бой, прежде чем оценить позицию, поэтому удары сразу за горизонтом против него не проходят. Его слабая сторона — окончание: одинокая дамка у него не бежит на большак, а со своими тремя дамками он часто не успевает выиграть за 15 ходов. Будучи впереди, разменивайтесь, первым проходите в дамки и ведите партию к окончанию дамок против дамок.

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

Вопросы и ответы

Какая стратегия лучшая в русских шашках?

Играйте на удар и сами под удар не попадайте: перед каждым тихим ходом смотрите, у какой шашки соперника за спиной пустое поле и куда вынужденное взятие уведёт фигуру. Берегите задний ряд, занимайте центральные поля d4 и e5 и держите шашки вместе. Против «Простого» одни эти привычки в моделировании превращают 36% побед в 79%.

Какой первый ход в шашках лучший?

Ход в центр: e3-d4 или c3-d4. Против «Простого» простой игрок после них выигрывал 61–64% партий, а после ходов к краю — a3-b4, c3-b4 и g3-h4 — только 27–38%.

Могут ли три дамки выиграть у одной?

Да, если одинокая дамка не стоит на большаке — длинной диагонали a1–h8. Тогда выигрыш форсированный во всех 49 676 таких позициях, не дольше чем за 14 ходов — в пределах здешнего правила 15 ходов. Если одинокая дамка держит большак — ничья.

Могут ли две дамки выиграть у одной?

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

Что такое большак в шашках?

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

Компьютер всегда ходит одинаково?

«Простой» — да: у него нет ни случайности, ни часов, поэтому на одни и те же ваши ходы он отвечает одинаково, и выигрышная линия выигрывает каждый раз. «Сложный» и «Эксперт» думают на время, поэтому на медленном устройстве могут досчитать мельче и изредка ответить иначе.

Можно ли обыграть компьютер в шашки?

Да. «Простой» каждый раз теряет шашку в одной и той же ловушке в четыре хода, а простые привычки — беречь задний ряд, занимать центр, проверять ответ — обыгрывают его четыре раза из пяти. Против «Сложного» нужен настоящий расчёт: игрок, считающий на шесть полуходов, выигрывает у него примерно треть партий. «Эксперт» сильнее всех, но окончания играет слабо: с тремя дамками против его одинокой дамки вы выиграли 58 из 100 позиций, где он мог спастись.

Сыграть в шашки с компьютером →
Куда отсюда
Как сослаться: «Как выиграть в шашки у компьютера: удары, большак и окончания», You vs Computer, https://youvscomputer.com/games/ru/checkers-strategy.html