Опубликовано: Прочитано Прочитано: 2

FEN в шахматах: почему одинаковая доска - не всегда одна позиция

Две одинаковые шахматные доски с разными правами рокировки показывают скрытое состояние позиции в FENFEN - компактная запись состояния шахматной позиции. Она показывает не только расположение фигур, но и очередь хода, права на рокировку, возможность взятия на проходе и служебные счетчики. Поэтому две совершенно одинаковые на вид доски могут фактически быть разными позициями.

Доска - это только часть позиции

Если поставить одинаковые фигуры на одинаковые поля двух шахматных досок, кажется очевидным, что перед нами одна и та же позиция. Но это не всегда так.

Представим, что белый король стоит на e1, а ладья на h1. На первой доске эти фигуры еще не двигались, поэтому белые сохраняют право на короткую рокировку. На второй король когда-то сходил с e1 и вернулся обратно. Внешне доски могут выглядеть совершенно одинаково, однако на первой рокировка при выполнении остальных условий возможна, а на второй уже нет.

Есть и другой пример. Черная пешка только что сделала ход d7-d5 рядом с белой пешкой на e5. Белые могут сыграть взятие на проходе. Спустя ход такая возможность исчезнет. Сами пешки при этом могут остаться на тех же полях.

Значит, фотография доски показывает расположение фигур, но не обязательно все состояние шахматной позиции. Для передачи такого состояния между программами и игроками существует FEN.

Что такое FEN

FEN расшифровывается как Forsyth-Edwards Notation. Это компактная текстовая запись одной шахматной позиции. Ее используют анализаторы, движки, шахматные программы, базы позиций и онлайн-сервисы.

Например, начальная позиция обычной шахматной партии записывается так:

rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1

На первый взгляд строка выглядит технической, но она состоит всего из шести последовательных частей.

Поле Что хранит Пример
1 Расположение фигур rnbqkbnr/.../RNBQKBNR
2 Чья очередь хода w
3 Права на рокировку KQkq
4 Поле для возможного взятия en passant -
5 Счетчик полуходов после последнего хода пешкой или взятия 0
6 Номер полного хода 1

Как FEN записывает фигуры

Первая часть FEN описывает доску от восьмой горизонтали к первой. Горизонтали разделяются знаком /.

Белые фигуры обозначаются заглавными латинскими буквами, черные - строчными: K и k для королей, Q и q для ферзей, R и r для ладей, B и b для слонов, N и n для коней, P и p для пешек.

Пустые поля не перечисляются по одному. Цифра показывает, сколько подряд идущих клеток свободно. Поэтому 8 означает полностью пустую горизонталь, а 4P3 - четыре пустых поля, белую пешку и еще три пустых поля.

Очередь хода тоже является частью состояния

После описания доски идет буква w или b: ход белых или ход черных.

Это принципиальная информация. Одно и то же расположение фигур при ходе белых и при ходе черных может иметь совершенно разную оценку. Более того, с точки зрения правил это не одна и та же повторившаяся позиция.

Почему FEN хранит права на рокировку

Третье поле сообщает, какие права на рокировку еще существуют. В обычных шахматах используются символы K, Q, k и q. Если право на рокировку отсутствует у обеих сторон, ставится -.

Рассмотрим две записи:

r3k2r/8/8/8/8/8/8/R3K2R w KQkq - 0 1

r3k2r/8/8/8/8/8/8/R3K2R w - - 0 1

Фигуры находятся на одних и тех же полях, и в обоих случаях ход белых. Но первая строка сохраняет права на рокировку, а вторая сообщает, что таких прав уже нет.

Поэтому одной картинки доски недостаточно, чтобы понять все допустимые продолжения.

Зачем нужно поле en passant

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

Например:

8/8/8/3pP3/8/8/8/4K2k w - d6 0 1

и

8/8/8/3pP3/8/8/8/4K2k w - - 0 1

показывают одинаковое расположение фигур и очередь хода, но первая запись содержит поле d6, связанное с только что сделанным двойным ходом черной пешки. Во второй такой информации нет.

У FEN здесь есть технический нюанс: стандартная запись может указывать целевое поле после двойного хода пешки даже тогда, когда у соперника фактически нет пешки, способной выполнить взятие на проходе. Поэтому FEN и формальное определение одинаковой позиции в правилах FIDE связаны, но это не одно и то же понятие.

Что означают два последних числа

Пятое поле - счетчик полуходов после последнего хода пешкой или взятия. После любого из этих событий он сбрасывается в ноль. Этот счетчик связан с правилом 50 ходов.

Шестое поле - номер полного хода. Он начинается с единицы и увеличивается после хода черных.

Эти два числа полезны для восстановления состояния партии, однако они не входят в определение одинаковой позиции при повторении так же, как расположение фигур, очередь хода и доступные ходы.

Почему одинаковая FEN и повторение позиции - не совсем одно и то же

По правилам FIDE позиции считаются одинаковыми, когда ход принадлежит той же стороне, одинаковые фигуры тех же цветов стоят на тех же полях и возможные ходы совпадают. Именно поэтому значение имеют утраченные права на рокировку и возможность взятия на проходе.

Но FEN дополнительно хранит счетчик полуходов и номер хода. Эти значения могут различаться даже тогда, когда с точки зрения правила повторения положение фигур и набор возможных ходов совпадают.

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

Подробнее сами правила ничьей и повторения разобраны в материале о правилах игры в шахматы.

FEN и PGN - не одно и то же

Эти два формата часто встречаются рядом, но решают разные задачи.

FEN - это снимок одной позиции. Он отвечает на вопрос: «Каково состояние доски сейчас?»

PGN предназначен прежде всего для записи партии: ходов, результата и сопутствующей информации. Если нужно передать всю сыгранную партию, одного FEN недостаточно. Если же нужно быстро открыть конкретную позицию в другой программе, FEN обычно намного удобнее.

Где FEN встречается обычному шахматисту

Практическая польза формата особенно заметна при анализе. Многие шахматные сайты и программы позволяют скопировать FEN текущей позиции, вставить его в другой анализатор и продолжить работу с того же положения.

Это удобно, если нужно проверить позицию другим движком, отправить ее тренеру, сохранить задачу или воспроизвести конкретный момент без всей партии. При работе с движком FEN задает исходное положение, а уже затем программа рассчитывает варианты и оценку. Что означают сами числовые оценки, глубина и лучший ход, разобрано отдельно в материале как читать анализ шахматного движка.

FEN также часто используется для передачи эндшпильной позиции в специализированные инструменты. Для позиций с небольшим числом фигур их можно проверять по эндшпильным таблицам Syzygy.

Чего FEN не хранит

FEN хорошо описывает текущее состояние, но не является историей партии. Из него нельзя восстановить точную последовательность предыдущих ходов, узнать имена игроков, время на часах или определить все предыдущие повторения позиции.

В этом и заключается полезная граница формата: FEN отвечает не на вопрос «как мы сюда пришли?», а на вопрос «что именно находится перед нами сейчас?».

Главное

Шахматная позиция - это больше, чем расстановка фигур. Для понимания доступных ходов могут быть важны очередь хода, сохранившиеся права на рокировку и возможность взятия на проходе. FEN делает эту невидимую часть состояния явной и помещает ее в одну короткую строку.

Поэтому две одинаковые на вид доски действительно могут представлять разные шахматные позиции. А FEN позволяет компьютеру - и человеку, который умеет его читать, - увидеть разницу.