Уже два года как существует программа
SEE (Syzygy Endgame Explorer), созданная на основе Stockfish шахматным композитором Árpád Rusz. Данная программа позволяет, по описанным критериям, выбирать из эндшпильным таблицам позиции. Что, собственно, позволяет находить этюды. Как устанавливать и настраивать программу, я расскажу позже. А пока приведу пример запроса с результатами.
Пример 1: ищем шедевр в KPkp
Во-первых, KPkp это соотношение король+пешка против короля+пешки. Во-вторых, будем искать шедевр на 6 ходов, без взятий. Белого короля запихнём в угол, чёрную пешку на пятую линию, подальше от короля. И чтобы белая пешка не блокировала чёрную...
[Tablebase "KPkp"] // поиск по таблицам KPkp
[OutputPGN ".\Results\sample01.pgn"] // результат сохраняем в папку Results, файл sample01.pgn
[Position "1w"] // описание позиции. имя может быть любое, но для простоты, я указываю номер хода и цвет ходящей стороны
[Piece1 "h8"] // первая фигура в перечислении таблиц, то есть белый король, стоит на h8
[Piece2 "~fileH"] // вторая фигура (белая пешка), не стоит на вертикали h
[Piece4 "h5"] // четвёртая фигура (чёрная пешка), стоит на h5
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "1b"] // описание позиции после хода белых, ход чёрных
[Eval "draw"] // позиция ничейна. в принципе, определение необязательно, но ускоряет поиск
[Position "2w"] // позиция перед вторым ходом белых
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "2b"]
[Eval "draw"] // данная позиция ничейна
[Position "3w"] // третий ход
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "3b"]
[Eval "draw"] // данная позиция ничейна
[Position "4w"] // четвёртый ход
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "4b"]
[Eval "draw"] // данная позиция ничейна
[Position "5w"] // пятый ход
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "5b"]
[Eval "draw"] // данная позиция ничейна
[Position "6w"] // шестой ход
[Eval "draw"] // данная позиция ничейна
[OnlyMove "yes"] // у белых единственный ход, сохраняющий оценку позиции
[Capture "no"] // ход без взятий
[Position "6b"]
[Eval "draw"] // данная позиция ничейна
[Position "7w"]
[Eval "draw"] // данная позиция ничейна
После выполнения запроса извлекается девять позиций, из которых особый интерес представляет последняя:
Ой, а что это?!