По мотивам темы
«Поставить мат рандомными ходами».
Нынешней зимой у меня наконец-то нашлось время запрограммировать эту задачу. Исследовал различные квадратные доски и пришёл к выводу, что на доске 6-го порядка имеется наибольшая вероятность при заданных условиях поставить мат.
Расстановка перед вами. Это аналог начальной расстановки 3-х фигур на обычной шахматной доске. Ход белых.
Определяется сколько полей может быть выбрано для хода. В данном случае существует 18 равновозможных полей для первого хода белых. Комп случайным образом выбирал одно из них и делал ход. Затем то же самое делал чёрный король. Осмысленность ходов при этом была строго нулевая с обеих сторон. То есть былые могли дать пат или поставить ладью под бой, что противоречит обычной человеческой стратегии матования. Ну а чёрные могли и не взять такую ладью, поскольку этот ход не был ничем выделен среди других.
Комп сыграл
партий средней продолжительностью
ходов. Партии продолжались от
до
ходов включительно. Правило 50-ти ходов, как понимаете, не применялось.
Зафиксировано
ничьих. Это либо взятие королём одной из ладей, либо пат при нахождении короля в угловой клетке.
Мат удалось поставить в
случаях.
В таблице представлена, с позволения сказать, апостериорная вероятность мата в деципроцентах при первом ходе на соответствующую клетку.
Например, число
в правой части клетки означает, что при первом ходе правой ладьи на эту клетку белые впоследствии давали мат с вероятностью 0.078...
Даже с двумя ладьями вероятность мата не так низка - если вражеский король стоит на крайней горизонтали/вертикали, а наша ладья на предшествующей ей (несколько сотен конфигураций из нескольких десятков тысяч возможных), то нам нужен только один правильный ход второй ладьей.
Конечно. По человечески понятно, что первым ходом надо отсечь короля, оставив ему только 2 поля. И в таблице лидируют как раз те самые два поля, ход на которые позволяет это сделать.
То есть в дальнейшем, при следующей серии игр ладья сразу пойдёт на a5, где эквити
. Затем вновь будет собрана статистика.
Конечно это далеко не единственный способ научить компьютер матовать. Можно было бы запоминать цепочки ходов, ведущих к мату, искать среди них более короткие и т. д. Но ведь не факт, что быстрейший мат должен быть безусловным приоритетом.
В общем эта тема шире, чем исходная.