Это исследование
Как видите, Stockfish дает черным абсолютную победу, хотя это явно ничья!
c4 + - проигрышный ход, а Ba4 + - правильный.
В чем дело? Stockfish не учитывает закрытые позиции вообще ?
Это исследование
Как видите, Stockfish дает черным абсолютную победу, хотя это явно ничья!
c4 + - проигрышный ход, а Ba4 + - правильный.
В чем дело? Stockfish не учитывает закрытые позиции вообще ?
Ответы:
Stockfish - не идеальная играющая в шахматы сущность, и вы нашли позицию, в которой она не может сказать, что это ничья (по крайней мере, до тех пор, пока не вступит в силу правило 50 ходов и не поможет сократить). Эти позиции называются « крепостями ». Вы можете сказать, что это происходит, потому что даже если вы введете решение, Stockfish по-прежнему оценивает конечную позицию как -10 или более. Эти крепостные позиции, где Stockfish совершенно неверен, немногочисленны, но они существуют, и это одна из них.
Были предприняты различные попытки написания кода обнаружения крепости в Stockfish и других обычных двигателях, которые должны распознавать крепости и мешать Stockfish идти к ним, если его положение выше. Если у вас есть умная идея, вы можете опубликовать ее в академическом журнале (см. Публикации в вики по шахматному программированию).
Это помогает понять, что двигатели на самом деле не отходят от «стратегии», поскольку они смотрят на несколько ходов в будущее, оценивают счет позиции и находят оптимальный набор ходов.
Большая слабость этого подхода заключается в том, что если быстро ничего не произойдет, у двигателя будут проблемы. Раньше это была огромная проблема с эндшпилями. Если у вас есть K + B + P против K + P, вы не решите эту позицию всего за несколько ходов. Таким образом, исправление состояло в том, чтобы добавить Endgame Tablebases в движки - просто bruteforce заранее рассчитывает каждую позицию в endgame и добавляет их в качестве библиотеки для движка. (Вот почему в большинстве дешевых шахматных приложений вы можете выиграть, просто дожив до финальной игры: потому что у него нет таблицы конечных игр.)
Но ваша позиция (по понятным причинам) не будет ни в одной из таблиц эндшпиля. Таким образом, вяленая рыба должна разыграть миллионы позиций, растянувшись примерно на 10 шагов в будущее ... только чтобы обнаружить, что во всех из них у черных существенно больше материала. Он определенно не может разыграть ~ 56 ходов для полного дерева решений - это то, что нужно, чтобы определить окончательную ничью.
Другие ответы хорошо охватывают этот вопрос, но интересно, что не все программы не понимают, что это ничья. Я подключил это к своему компьютеру, и, как член ChessBase Premium, у меня также есть доступ к облачным движкам.
Один из тех облачных движков оценил это как ничью почти мгновенно. Я только хотел, чтобы было больше информации, чем просто «Новый двигатель».