2. Руководство

2.1. Введение

blunderDB — программа для создания баз данных позиций нардов. Её главное преимущество — единое место для накопления позиций, с которыми игрок сталкивался (онлайн, на турнирах), и возможность их повторного изучения с фильтрацией по произвольно комбинируемым критериям. blunderDB также можно использовать для создания каталогов эталонных позиций.

Позиции хранятся в базе данных, представленной файлом .db.

2.2. Основные взаимодействия

Основные взаимодействия с blunderDB:

  • добавить новую позицию,

  • изменить существующую позицию,

  • скопировать изображение доски в буфер обмена (PNG) с помощью Ctrl+X или с полным анализом через Ctrl+X Ctrl+X,

  • удалить существующую позицию,

  • искать одну или несколько позиций,

  • импортировать матчи из различных источников (XG, GNUbg, BGBlitz, Jellyfish), включая комментарии из файлов XG,

  • навигировать по ходам импортированного матча,

  • организовывать позиции в коллекции,

  • организовывать матчи в турниры.

Пользователь может свободно присваивать позициям метки и аннотировать их комментариями.

2.3. Описание интерфейса

Интерфейс blunderDB состоит сверху вниз из:

  • [вверху] панель инструментов, объединяющая все основные операции с базой данных,

  • [по центру] основная область отображения, позволяющая отображать или редактировать позиции нардов,

  • [внизу] строка состояния, отображающая различную информацию о базе данных или текущей позиции и содержащая командную строку.

Панели могут быть отображены для:

  • отображения данных анализа текущей позиции из eXtreme Gammon (XG), GNUbg или BGBlitz,

  • отображения, добавления или изменения комментариев,

  • поиска и фильтрации позиций по комбинируемым критериям,

  • отображения и управления коллекциями позиций (панель коллекций),

  • отображения списка импортированных матчей и навигации по ходам матча (панель матчей),

  • отображения и управления турнирами (панель турниров),

  • отображения статистики производительности (панель Stats),

  • вычисления EPC (Effective Pip Count) позиции снятия шашек (панель Bearoff),

  • изучения позиций методом интервального повторения (панель Anki),

  • просматривать метаданные базы данных (панель «Метаданные»).

Модальные окна могут отображаться для:

Основная область отображения предоставляет пользователю:

  • доску для отображения или редактирования позиции нардов,

  • уровень и владельца куба,

  • пипкаунт каждого игрока,

  • счёт каждого игрока,

  • кости для розыгрыша. Если на костях не показаны значения, положение костей указывает, чей ход, и что позиция является решением по кубу. Когда решение по кубу — это ответ на удвоение (тейк/пас), предложенный куб отображается в центре доски, на предложенном значении.

Строка состояния структурирована слева направо следующей информацией:

  • командная строка, доступная при нажатии клавиши ПРОБЕЛ,

  • информационное сообщение, связанное с выполненной пользователем операцией,

  • индекс текущей позиции, за которым следует количество позиций в текущей библиотеке (или информация о ходе/партии при навигации по матчу).

Примечание

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

2.4. Вкладки представлений

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

  • Создать представление: нажать кнопку + на панели вкладок или клавиши CTRL-T. Новое представление создаётся как копия текущего.

  • Закрыть представление: нажать крестик на вкладке или клавиши CTRL-W. Последнее представление закрыть нельзя.

  • Переключить представление: нажать на вкладку, нажать CTRL-PageUp / CTRL-PageDown (или SHIFT-J / SHIFT-K) для перехода к предыдущему / следующему представлению, либо CTRL-1CTRL-9 для прямого перехода к n-му представлению.

  • Переименовать представление: дважды щёлкнуть по вкладке, ввести новое имя и подтвердить клавишей ENTER.

Представления сохраняются вместе с состоянием сессии базы данных и восстанавливаются при её повторном открытии.

2.5. Конфигурация

Le bouton de configuration (icône en forme de rouage) situé dans la barre d’outils, à gauche du bouton d’aide, ouvre la fenêtre de configuration de blunderDB. Elle est organisée en quatre onglets :

  • Интерфейс — язык, масштаб отображения, положение панели;

  • Цвета доски — цвета игровой доски;

  • Bearoff — la base de sortie two-sided étendue utilisée par le panneau Bearoff ;

  • Идентичность автора — ключ, которым подписываются ваши отметки происхождения; описан в разделе Распространение базы: происхождение и пароль.

Вкладка Интерфейс позволяет выбрать язык из английского, французского, немецкого, итальянского, испанского, финского, японского, греческого и русского. Весь интерфейс (панель инструментов, панели, сообщения, справка) переводится на выбранный язык. Выбор языка сохраняется и переносится из сеанса в сеанс.

Le même onglet propose aussi le bouton Compacter la base, qui récupère l’espace disque laissé par les suppressions (matchs, tournois, purges) : la base de données ne rétrécit jamais toute seule quand on supprime des données, il faut demander explicitement ce compactage. L’opération peut prendre du temps sur une grosse base et nécessite, temporairement, environ deux fois sa taille en espace disque libre (blunderDB refuse de démarrer plutôt que de risquer un compactage interrompu) ; une confirmation est donc demandée avant de lancer l’opération. Le résultat — l’espace gagné, en mégaoctets — s’affiche ensuite dans la barre d’état. La même opération est disponible en ligne de commande via blunderdb vacuum (voir Интерфейс командной строки (CLI)).

Вкладка Цвета доски позволяет настроить цвета доски. У каждого элемента свой выбор цвета: фон, рамка, светлые и тёмные пункты, шашки игрока 1 и игрока 2, кубики, точки на кубиках и куб удвоения. Кнопка Сбросить возвращает все цвета по умолчанию. Как и язык, выбранные цвета сохраняются между сеансами.

L’onglet Bearoff gère la base two-sided qui étend le domaine exact du panneau Bearoff (voir Панель Bearoff) au-delà de la base TS-06-06 embarquée dans l’exécutable. Il affiche le domaine actuellement actif (TS-06-06 ou TS-06-11 une fois téléchargée) et son origine, propose de lancer le téléchargement de la base étendue TS-06-11 avec une barre de progression, et reprend automatiquement un téléchargement interrompu au lieu de repartir de zéro (requêtes HTTP par plage). Une fois téléchargée, la base peut être supprimée — une confirmation est demandée avant toute suppression, la taille du fichier étant rappelée dans le message. L’onglet permet aussi de pointer vers un fichier .bd two-sided externe (par exemple une base générée soi-même) plutôt que d’utiliser le téléchargement intégré.

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

2.6. Обучающие туры и образец базы данных

Чтобы облегчить освоение, blunderDB предлагает обучающие туры по интерфейсу. Каталог туров открывается с панели инструментов или командой tour (псевдоним tutorial). Доступны четыре тура: общий тур по интерфейсу, а также туры, посвящённые поиску позиций, разбору матчей и разбору турниров. Каждый тур пошагово выделяет соответствующие элементы интерфейса и может быть повторён в любой момент. При первом запуске общий тур предлагается автоматически.

Команда demo загружает образец базы данных (матчи, турнир и анализы), позволяющий познакомиться с возможностями инструмента, не импортируя собственные партии. Обучающие туры опираются на эту базу, когда ни одна база не открыта.

2.8. Редактирование позиций

Нажатие клавиши TAB открывает панель поиска и позволяет редактировать позицию на доске для добавления в базу данных или для задания структуры позиции для поиска. Распределение шашек, куб, счёт и право хода можно изменять с помощью мыши (см. Редактирование позиции).

Совет

Смотрите Горячие клавиши для доступных горячих клавиш.

2.9. Командная строка

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

Для открытия командной строки нажмите клавишу ПРОБЕЛ. Для отправки запроса и закрытия командной строки нажмите клавишу ENTER.

blunderDB выполняет запросы пользователя при условии их корректности и немедленно изменяет состояние базы данных при необходимости. Явное сохранение пользователем не требуется.

Совет

Смотрите Раздел 4 для списка команд, доступных в командной строке.

2.10. Панель анализа

Панель Анализ (CTRL-L) отображает данные анализа текущей позиции, импортированные из eXtreme Gammon (XG), GNUbg или BGBlitz. Отображаются лучшие альтернативы (ходы шашками или решения куба) с их значениями эквити и соответствующими ошибками. Клавиша d переключает между анализом ходов шашками и анализом куба. При навигации по матчу фактически сыгранный ход выделяется в списке альтернатив. Нажмите CTRL-L или выполните команду list для отображения или скрытия панели.

2.11. Панель комментариев

Панель Комментарии (CTRL-P) отображает, добавляет и редактирует комментарии, связанные с текущей позицией. Комментарии, импортированные из файлов XG, автоматически связываются с соответствующими позициями. Нажмите CTRL-P или выполните команду comment для отображения или скрытия панели.

2.12. Панель поиска

Панель Поиск (CTRL-F или TAB) фильтрует позиции по свободно комбинируемым критериям: структура шашек, тип решения куба, величина ошибки, даты, метки и т.д. Клавиша TAB одновременно открывает панель поиска и редактор позиций, позволяя задать структуру шашек непосредственно на доске.

Для уточнения поиска среди текущих отфильтрованных позиций используйте команду ss с фильтрами (напр.: ss nc, ss E>40). Панель поиска также предлагает флажок Search in current results для той же функциональности.

Панель предлагает явное управление искомым типом решения: Безразлично (без фильтра), Шашки (решения по ходу) или Куб (решения по кубу). Когда выбран Куб, второй список уточняет подтип: Все, Дабл / Без дабла (игрок на ходу должен решить, удваивать ли) или Тейк / Пас (ответ на удвоение соперника). Управление синхронизировано с доской: изменение костей или куба на доске обновляет тип решения, и наоборот. В режиме Тейк / Пас куб отображается в центре доски на предложенном значении; это значение остаётся редактируемым.

Фильтр Отмеченная оставляет позиции, которые вы отметили в исходной программе матча. Эту информацию создаёт только eXtreme Gammon, записывая её ход за ходом в файл .xg; blunderDB читает её при импорте и сохраняет. Отмеченное решение по кубу даёт две отмеченные позиции — дабл и тейк/пас, поскольку blunderDB разделяет надвое то, что исходный файл записывает как одно решение.

Примечание

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

Фильтр Комментарий обращается к комментариям, привязанным к позициям, в трёх взаимоисключающих режимах. содержит текст ищет одно или несколько слов в тексте комментариев (поле ввода, слова разделяются знаком ;, достаточно совпадения одного); есть комментарий оставляет любую позицию с комментарием, независимо от его содержания; без комментария оставляет, напротив, позиции без аннотаций — удобно в сочетании с фильтром по ошибке или дате, чтобы составить список того, что осталось прокомментировать.

Примечание

Комментарии, импортированные из файла матча (XG, GNUbg), считаются комментариями: blunderDB не сохраняет их происхождение и поэтому не может отличить заметку, которую вы ввели, от заметки, взятой из исходного файла. Кроме того, комментарии, привязанные к матчу или турниру, здесь не учитываются: они аннотируют матч или турнир, а не его позиции.

Фильтр Матчи и турниры опирается на общий селектор (модальное окно), а не на ввод числовых идентификаторов: два списка с флажками — один для матчей и один для турниров, каждый из которых можно фильтровать по тексту (игрок, дата, событие — для матчей; название, дата, место — для турниров), с кнопками Все / Ничего, действующими только на текущее отфильтрованное подмножество. Установка флажка турнира автоматически отмечает (и делает неактивными) его матчи-участники в списке матчей, наглядно показывая, что турнир эквивалентен множеству своих матчей.

Панель поиска содержит три вкладки на левом крае: Recherche (фильтры), Historique и Enregistrés. Вкладка Historique перечисляет прошлые поиски с их датой и командой: щелчок выбирает поиск и показывает связанную позицию на доске, двойной щелчок выполняет его повторно. Каждую запись можно сохранить в библиотеку фильтров (значок закладки, задав имя фильтру) или удалить. Вкладка Enregistrés содержит библиотеку фильтров: дважды щёлкните по сохранённому фильтру, чтобы заново выполнить соответствующий поиск (см. Приложение: Расширенное использование фильтров). Команда history (псевдоним hi) открывает панель поиска.

Совет

Смотрите Раздел 4 для списка доступных фильтров.

2.13. Панель коллекций

Le panneau Collections (CTRL-B) permet de gérer des collections de positions. Les collections peuvent être créées, renommées et supprimées. Des positions peuvent y être ajoutées ou retirées (touche Suppr, confirmation demandée). Double-cliquer sur une collection pour parcourir ses positions avec les touches GAUCHE et DROITE. L’ordre des collections et des positions au sein des collections peut être modifié par glisser-déposer. Appuyer sur CTRL-B ou exécuter la commande collection pour afficher ou masquer le panneau.

2.14. Панель матчей

Панель Матчи (CTRL-Tab) содержит список импортированных матчей. Дважды щёлкните на матче (или нажмите ENTER) для навигации по его ходам. Команда m возобновляет навигацию по последнему посещённому матчу.

Пользователь может:

  • просматривать ходы матча с помощью клавиш ВЛЕВО и ВПРАВО,

  • переключаться между партиями с помощью клавиш PageUp и PageDown,

  • отображать анализ ходов (шашки и куб) нажатием CTRL-L,

  • переключаться между анализом ходов шашками и куба клавишей d,

  • видеть фактически сыгранный ход, выделенный в анализе.

Последняя посещённая позиция в каждом матче запоминается и восстанавливается автоматически. Нажмите CTRL-Tab или выполните команду match для отображения или скрытия панели.

Каждый матч можно экспортировать в транскрипцию Jellyfish .mat с помощью кнопки ⬇ в списке матчей или кнопки .mat в карточке матча.

Кнопка Объединить игроков на панели инструментов этой панели открывает окно со списком всех имён игроков в базе и числом их матчей: выберите варианты написания одного и того же игрока, укажите каноническое имя для сохранения, затем объедините. Полезно для унификации статистики по игроку, когда один игрок фигурирует под несколькими именами.

Когда матч открыт, над доской появляется информационная панель: она напоминает об играющих сторонах (игрок 1 против игрок 2), а также о контексте матча (событие, место, раунд, дата и длина матча, если эти сведения доступны). Эта панель отображается и вне режима матча: когда изучаемая позиция (полученная из поиска, коллекции или прямого доступа) происходит из одного или нескольких матчей, она указывает её происхождение — первый соответствующий матч и, при необходимости, бейдж «+N», перечисляющий остальные при наведении. Позиция, импортированная отдельно и не связанная ни с одним матчем, ничего не показывает.

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

Примечание

Базу данных можно открыть на запись только в одном окне одновременно. Если вы открываете базу, уже открытую в другом окне blunderDB, она открывается в режиме только для чтения: навигация, поиск и анализ остаются возможными, но любые изменения отключены, а в строке заголовка отображается «[только чтение]».

Совет

Смотрите Горячие клавиши для доступных горячих клавиш.

2.15. Панель турниров

Панель Турниры (CTRL-Y) группирует матчи в турниры для организованного отслеживания и статистического анализа по событиям. Турниры можно создавать, переименовывать и удалять; матчи можно назначать им. Статистика панели Stats может фильтроваться по турниру. Нажмите CTRL-Y для отображения или скрытия панели.

Столбец PR каждого турнира показывает PR основного игрока — то есть игрока, участвующего в наибольшем числе матчей турнира (при равенстве — того, кто принял больше решений). Таким образом, PR не смешивает вашу игру с игрой соперников: для ваших собственных турниров он отражает только вашу результативность. Имя основного игрока показывается во всплывающей подсказке при наведении на значение.

2.16. Панель Stats

2.16.1. Введение

Панель Stats позволяет анализировать уровень игры и отслеживать прогресс во времени на основе позиций, импортированных в базу данных. Вычисляет и отображает PR (Performance Rate) и MWC cost (Match Winning Chance cost) для всех позиций или отфильтрованного подмножества.

Панель Stats особенно полезна для:

  • определения своего уровня относительно эталонных порогов (world-class, expert, advanced…) с помощью общего PR;

  • отслеживания прогресса от турнира к турниру или от матча к матчу с помощью графиков вкладки Progression;

  • выявления слабых мест: вкладка Erreurs отображает соотношение ходов шашками и решений куба, а также распределение величин ошибок;

  • прямого перехода к соответствующим позициям щелчком по любому показателю (drill-down).

2.16.2. Открытие панели

Для открытия панели Stats:

  • Нажмите CTRL-D.

  • Введите команду :stats или :st в командной строке.

Примечание

Панель автоматически обновляется при каждом изменении фильтра. При простом переключении PR ↔ MWC статистика не пересчитывается: обе метрики вычисляются одновременно на стороне сервера.

2.16.3. Панель фильтров

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

2.16.3.1. Перспектива игрока

Выпадающий список Игрок фильтрует статистику для анализируемого игрока. blunderDB автоматически выбирает игрока, имя которого наиболее часто встречается в базе данных — можно изменить в любой момент.

Совет

Смена игрока не приводит к потере данных; достаточно повторно выбрать предыдущего игрока в списке.

2.16.3.2. Доступные фильтры

  • Турнир(ы) — ограничение одним или несколькими турнирами. Можно одновременно выбрать несколько турниров.

  • Даты — временной диапазон (ОтДо). Если указана только начальная дата, включаются более поздние позиции.

  • Тип решения — Все / Ходы шашками / Решения куба.

  • Длина матча — ограничение конкретными длинами матча (1, 3, 5, 7, 9, 11, 13, 15, 21 очко). Можно комбинировать несколько длин.

Кнопка Reset сбрасывает все фильтры (кроме автоматически определённого игрока).

Примечание

Фильтры сохраняются в конфигурации blunderDB (config.yaml) и восстанавливаются при следующем запуске.

2.16.4. Переключение PR / MWC

Кнопка PR / MWC в верхней части панели переключает отображаемую метрику во всех вкладках.

PR (Performance Rate)

Измеряет качество игры money-game: сумма ошибок в миллипунктах нардов, делённая на количество решений. Не зависит от счёта матча.

Приблизительные эталонные пороги:

Уровень

PR

World-class

< 3

Expert

3 – 5

Продвинутый

5 – 8

Средний

8 – 12

Начинающий

> 12

MWC cost (Match Winning Chance cost)

Накопленная вероятность победы в матче, утраченная из-за ошибок, по всему отфильтрованному набору данных. Вычисляется с использованием MET Kazaross-XG2, встроенной в blunderDB.

Осторожно

MWC cost не применяется к позициям money-game (без ставки матча). Эти позиции исключаются из вычисления MWC. Значения MWC зависят от используемой MET; они не сопоставимы напрямую между программами, использующими разные MET.

Переключение PR ↔ MWC мгновенное: перерасчёт на стороне сервера не выполняется.

2.16.5. Вкладка Dashboard

Вкладка Dashboard даёт сводный обзор ключевых показателей.

2.16.5.1. Карточки уровня

Три карточки отображают PR (или MWC) для:

  • All — все решения (ходы + куб);

  • Checker — только ходы шашками;

  • Cube — только решения куба.

Щелчок по карточке загружает в панель анализа позиции соответствующего подмножества (drill-down).

Примечание

Общее количество решений отображается внизу каждой карточки при наведении.

2.16.5.2. Скользящий PR за последние N решений

Строка значений PR (или MWC), вычисленных по последним N решениям (N = 5, 10, 50, 100, 250, 500, 1000), позволяет оценить последнюю тенденцию. Серые значения соответствуют N, превышающему количество доступных решений.

Щелчок по значению загружает соответствующие последние N позиций.

2.16.5.3. Топ грубых ошибок

Список 10 худших ошибок (или MWC cost), отсортированных по убыванию величины. Щелчок по строке загружает соответствующую позицию в панель анализа.

2.16.6. Вкладка Progression

Вкладка Progression показывает динамику уровня игры во времени.

2.16.6.1. График по турнирам

Линейный график отображает PR (или MWC) для каждого турнира (ось X: порядок турниров, ось Y: значение метрики). Цветные полосы обозначают пороги уровня.

Щелчок по точке графика открывает контекстное меню с двумя вариантами:

  • Open tournament — открывает турнир в панели Tournois.

  • Open positions — загружает все позиции турнира в панель анализа.

2.16.6.2. Диаграмма рассеяния по матчам

Диаграмма рассеяния представляет каждый матч (ось X: дата, ось Y: PR или MWC). Размер точки пропорционален количеству решений в матче.

Щелчок по точке открывает контекстное меню:

  • Open match — открывает матч в панели матчей.

  • Open positions — загружает все позиции матча в панель анализа.

2.16.7. Вкладка Erreurs

Вкладка Erreurs разбивает источники ошибок.

2.16.7.1. Разбивка по действиям куба

Столбчатая диаграмма отображает PR (или MWC) для каждого типа решения куба: NoDouble, DoubleTake, DoublePass, TooGood. Каждый столбец также показывает количество решений и долю грубых ошибок в подсказке.

Щелчок по столбцу загружает позиции, соответствующие этому действию куба, только те, в которых была ошибка (drill-down).

2.16.7.2. Direction des erreurs de videau

La répartition ci-dessus indique combien coûtent les décisions de videau ; ce tableau indique dans quel sens elles se trompent.

Une position de videau porte deux décisions prises par deux joueurs différents, présentées ici en deux lignes :

  • Offrir — le joueur qui tient le videau double ou ne double pas. Ses erreurs sont les doubles manqués (il fallait doubler) et les doubles prématurés (il ne fallait pas).

  • Répondre — le joueur à qui le videau est offert prend ou passe. Ses erreurs sont les passes à tort (une prise correcte a été passée) et les prises à tort (une passe correcte a été prise).

Les deux lignes restent séparées à dessein : un joueur peut parfaitement doubler tard et prendre large, et un indicateur unique appellerait cela « équilibré » en perdant les deux moitiés de l’information.

Chaque case affiche le nombre de décisions ; l’infobulle donne l’équité perdue cumulée. Cliquer sur une case charge les positions correspondantes. Une case à zéro n’est pas cliquable.

Примечание

Ce tableau compte des décisions, il ne porte pas de jugement. À partir de quel écart une tendance mérite d’être nommée dépend de l’effectif et d’un point de référence, qui ne sont pas des données du moteur.

2.16.7.3. Сравнение Checker / Cube

Сравнительная диаграмма размещает рядом PR ходов шашками и решений куба. Щелчок по столбцу загружает позиции подмножества с ошибкой.

2.16.7.4. Гистограмма величин ошибок

Гистограмма распределяет ошибки по величине в миллипунктах (диапазоны: 0–5, 5–10, 10–25, 25–50, 50–100, ≥ 100). Щелчок по столбцу загружает позиции данного диапазона.

2.16.8. Правило агрегации

Важно

PR турнира (или любого подмножества) вычисляется по правилу сумма/сумма — никогда как среднее PR отдельных матчей.

Формула:

\[PR_{\text{турнир}} = \frac{\sum_{i} \text{ошибка}_i}{\text{общее количество решений}}\]

Пример: игрок проводит два матча в турнире —

  • Матч A: 10 решений, общая ошибка 50 mp → PR = 5,0

  • Матч B: 90 решений, общая ошибка 270 mp → PR = 3,0

Наивное среднее PR: (5,0 + 3,0) / 2 = 4,0 (неверно)

Правило сумма/сумма: (50 + 270) / (10 + 90) = 320 / 100 = 3,2 (верно)

Правило сумма/сумма — единственное, которое корректно учитывает различную длину матчей (матч до 21 очка весит больше, чем матч до 1 очка).

2.16.9. MWC: ограничения

  • MWC cost вычисляется с использованием MET Kazaross-XG2 — де-факто эталонной таблицы в соревновательных нардах. Результаты не сопоставимы напрямую с программами, использующими другие MET.

  • Позиции money-game (без счёта матча) исключаются из вычисления MWC. Если ваша база данных содержит много позиций money-game, MWC cost может быть занижен или недоступен.

  • MWC cost является накопительным по всему отфильтрованному набору данных — не показателем на решение. Он измеряет суммарное влияние ваших ошибок на шансы победы.

2.17. Панель Bearoff

Le panneau Bearoff (CTRL-E) calcule l’EPC (Effective Pip Count) d’une position de bearoff. Il est activé en appuyant sur CTRL-E, en cliquant sur l’onglet Bearoff dans le panneau inférieur, ou en exécutant la commande epc.

В этой панели пользователь редактирует расположение шашек в обоих домах (внутренних полях): щелчок по пунктам 1–6 ставит шашки нижнего игрока, щелчок по пунктам 19–24 — шашки верхнего игрока (кнопка мыши не имеет значения).

Результаты представлены в виде двух таблиц, расположенных одна над другой:

  • сверху — таблица игроков: по строке на игрока (обозначена его цветной точкой, чёрный игрок всегда снизу), по столбцу на величину: EPC, пипкаунт, wastage (разница между EPC и пипкаунтом), среднее число бросков и стандартное отклонение. Когда у обоих игроков есть шашки в своём доме, строка Δ показывает знаковые разности (нижний − верхний: отрицательные, когда чёрный игрок впереди) EPC, пипов и wastage;

  • ниже, за разделительной линией, — таблица гонки/куба: два столбца вероятности выигрыша (по одному на цветную точку игрока, значения без знака %) и money-эквити — под каждым решением, кроме лучшего, в скобках указан отрыв эквити от лучшего решения. Решение отображается справа от таблицы вместе со значком точно/оценка. Игрок на ходу и позиция куба редактируются прямо на доске, как в режиме редактирования: щелчок по прямоугольнику снятия/счёта игрока передаёт ему ход; щелчок по кубу переключает по кругу: в центре → у нижнего → у верхнего (правая кнопка мыши — в обратном порядке). Значение куба остаётся закреплённым — в money game эквити выражаются в единицах текущего куба, важен только его владелец. Анализ пересчитывается немедленно. В режиме оценки ссылка «Voir les paramètres de configuration» (см. параметры конфигурации) открывает непосредственно вкладку Bearoff конфигурации.

Флажок Défi остаётся закреплённым в правом верхнем углу панели.

Когда позиция является чистым bearoff (все шашки обоих игроков в своём доме), таблица гонки отображает для игрока на ходу:

  • вероятность выигрыша,

  • в точном режиме: money-эквити (cubeless, без дабла, дабл/тейк, дабл/пас) и money-вердикт по кубу (без дабла, дабл/тейк или дабл/пас),

  • в режиме оценки: только вероятность выигрыша с её погрешностью — вердикт по кубу в этом случае намеренно не отображается.

Значок указывает режим: точно (значение прочитано из two-sided базы данных) или оценка ± погрешность. Точное определение обоих режимов и их допущений см. в Методология и допущения панели Bearoff.

Расширение точной области. Встроенная база покрывает до 6 шашек у каждого игрока. Выйти за эти пределы можно двумя способами на вкладке Bearoff конфигурации:

  • télécharger la base étendue TS-06-11 (1,2 Go, vérifiée par SHA-256, supprimable au même endroit après confirmation) : verdict exact jusqu’à 11 pions par joueur. Un téléchargement interrompu ou annulé reprend où il s’était arrêté (le fichier partiel est conservé et complété par requête HTTP Range) ;

  • указать любой two-sided файл .bd из gnubg. База с самой широкой областью автоматически имеет приоритет.

Режим «Вызов». Флажок Défi на панели включает режим тренировки: при каждом изменении позиции значения трёх зон — строки нижнего игрока, строки верхнего игрока и таблицы гонки — скрываются (заменяются на « ··· »); щелчок по зоне открывает только её. Строка Δ появляется лишь после открытия обеих строк игроков. Так можно тренироваться оценивать EPC каждой стороны, затем принимать решение по кубу и только потом проверять себя. Настройка запоминается.

Для закрытия панели Bearoff нажмите CTRL-E или переключитесь на другую вкладку.

2.17.1. Методология и допущения панели Bearoff

Каждое значение, отображаемое панелью, опирается на точные допущения, исчерпывающе изложенные здесь.

Область применения. Панель обрабатывает только чистый bearoff: все оставшиеся шашки обоих игроков находятся в их домах (внутренних полях). Позиция оценивается до броска; уже выставленные кости игнорируются. Бесконтактные гонки, в которых есть шашки вне дома, не обрабатываются.

Блоки EPC (всегда точные). EPC, среднее число бросков и стандартное отклонение берутся из точного распределения числа бросков, нужных для снятия всех шашек, прочитанного из one-sided базы GNUbg (6 пунктов, 15 шашек, встроена). EPC = среднее число бросков × 49/6 (49/6 ≈ 8,167 — точное среднее число пипов за бросок, дубли считаются четырежды); wastage = EPC − пипкаунт. Единственная идеализация — оптимальная one-sided игра: каждый игрок минимизирует собственное число бросков, игнорируя соперника, — это стандартное определение EPC.

Вероятность выигрыша, точный режим. Прямое чтение из самой широкой доступной two-sided базы (встроенная TS-06-06, внешний файл или загруженная TS-06-11). Эти базы получены полным ретроградным анализом при оптимальной two-sided игре обеих сторон: никаких дополнительных допущений, ошибка ограничена квантованием (< 0,002 %).

Вероятность выигрыша, режим оценки. Вне области базы вероятность получается свёрткой двух one-sided распределений (игрок на ходу выигрывает, если его число бросков меньше или равно числу бросков соперника) с последующей фиксированной полиномиальной поправкой, откалиброванной офлайн по базе TS-06-11. Три допущения:

  • независимость двух процессов снятия — структурная в гонке: без контакта нет никакого взаимодействия;

  • оптимальная one-sided игра обеих сторон — это и есть приближение: в действительности отстающий игрок отклоняется ради дисперсии, а лидер — ради безопасности. Измеренный эффект — антисимметричное смещение (свёртка преувеличивает преимущество лидера), которое поправка статистически поглощает;

  • поправка откалибрована и проверена на области оракула (до 11 шашек у каждого игрока). Измеренная остаточная ошибка: стандартное отклонение 0,05 %, 99-й процентиль 0,17 %, наблюдаемый максимум 0,9 % (в пунктах вероятности выигрыша). Свыше 11 шашек у игрока эта граница экстраполируется — тенденция монотонна, но никакой оракул её не подтверждает.

Эквити и вердикт по кубу (только точный режим). Отображаемые эквити — это эквити money game без правила Джекоби, в системе отсчёта литературы по bearoff. В области ≤ 11 шашек у каждого игрока гаммоны невозможны (каждая сторона уже сняла не менее 4 шашек): это не приближение. Вердикт (без дабла / дабл, тейк / дабл, пас) точно восстанавливается из сохранённых эквити по правилу GNUbg, проверенному один в один против его анализа.

Примечание

Cubeful-эквити предполагают оптимальную игру кубом обеих сторон до самого конца: будущие редаблы полностью учитываются (полный ретроградный анализ). В очень волатильных гонках конца партии каскад редаблов съедает почти всё преимущество стороны на ходу — эквити «без дабла» и «дабл/тейк» тогда могут быть близки к нулю там, где движок вроде XG, чья модель куба не учитывает эту каскаду, показывает значения, близкие к dead cube (например, 2 шашки на пункте 3 против 2 шашек на пункте 2: 62 % выигрыша, точное D/T +0,006 против +0,475 у XG). Отображаемое решение при этом совпадает с решением движков.

Почему вердикт никогда не оценивается? Cubeful-эквити — задача о траектории (когда даблить), которую не улавливает никакая статистическая сводка позиции: лучшая из измеренных статических моделей оставляет остаточную ошибку (стандартное отклонение 0,016 эквити, максимум 0,20), достаточную, чтобы перевернуть все близкие решения. Аналогично, пересчёт вердикта на счёт матча через таблицу матчевых эквити оказался недостаточным (12 % расхождений с 2-ply анализом GNUbg, включая настоящие бландеры). Поскольку уверенно показанный неверный вердикт хуже отсутствия вердикта, blunderDB отображает вердикт только тогда, когда он точен — и только для money game.

Примечание

Базы bearoff — неизменяемые математические таблицы, которые можно заново сгенерировать инструментом makebearoff из GNUbg.

2.18. Панель Anki

Панель Anki (CTRL-K) позволяет изучать позиции методом интервального повторения с использованием алгоритма FSRS. Пользователи могут создавать колоды из коллекций или результатов поиска.

Создание колод: Нажмите New Deck для создания колоды из коллекции или текущих результатов поиска. Колоды на основе поиска синхронизируются автоматически при открытии вкладки Anki.

Повторение: Выберите колоду и нажмите Study (или дважды щёлкните на колоде) для начала повторения карточек с наступившим сроком. Каждая карточка показывает соответствующую позицию на доске. Оцените своё запоминание клавишами 1 (Снова), 2 (Сложно), 3 (Хорошо) или 4 (Легко). Нажмите Esc для остановки и возврата к списку колод.

Свободная тренировка (cram): Кнопка Cram рядом с Study запускает сессию свободной тренировки: вам показываются случайные позиции из колоды без учёта расписания FSRS. Этот режим никогда не изменяет план интервального повторения — идеально для разминки перед турниром или интенсивного повторения тематической колоды, не нарушая её порядок. Значок Cram заменяет состояние карточки, а кнопка Далее (клавиши 14) перелистывает позиции. Esc возвращает к списку, не сохраняя прерванную сессию.

Пауза/Продолжение: Вы можете прервать сеанс повторения в любой момент с помощью Esc. Кнопка меняется на Resume и показывает ваш прогресс. Нажмите её, чтобы продолжить с того места, где остановились.

Gestion des paquets : Utilisez les boutons d’action pour renommer, synchroniser, réinitialiser ou supprimer des paquets (confirmation demandée pour ces deux dernières actions). Les paramètres FSRS (rétention cible, intervalle maximum, aléa) peuvent être configurés par paquet dans les Paramètres (icône engrenage).

2.19. Панель метаданных

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

Она также показывает, если она есть, происхождение базы — см. Распространение базы: происхождение и пароль. У обычной базы этот раздел не отображается.

2.20. Распространение базы: происхождение и пароль

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

Примечание

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

2.20.1. Пометить базу её происхождением

Окно экспорта умещается в один экран: форма, а поверх неё — индикатор выполнения на время записи. По завершении окно закрывается само, а результат появляется в строке состояния.

Три момента заслуживают внимания:

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

  • Коллекция, чьи позиции вошли в выборку не полностью, придёт усечённой. Поэтому в списке для каждой коллекции указана охваченная доля («12/40»), выделенная красным, когда она неполная.

  • Турниры можно экспортировать только вместе с матчами: без них связи «турнир — матч» не существует и турнир пришёл бы пустым. Флажок остаётся недоступным, пока не отмечено «включить матчи».

Поля Пользователь, Описание и Дата описывают создаваемый файл; они заранее заполняются из исходной базы. Флажок Мои сохранённые фильтры стоит особняком: он экспортирует не содержимое, а ваши собственные сохранённые запросы, бесполезные в чужой базе.

При установке флажка Пометить этот файл его происхождением появляются два поля:

  • Происхождение — что это за файл и откуда он, вашими словами: «Занятие Жана Дюпона — 12 марта 2026». Это поле обязательно: пока оно пусто, кнопка экспорта неактивна.

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

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

2.20.2. Идентичность автора

Отметки подписываются вашей идентичностью автора, которая создаётся сама при первой пометке файла; настраивать ничего не нужно. Она принадлежит человеку, а не базе: все ваши файлы несут один и тот же публичный отпечаток вида A3F1-9C24-7B05-E1D8.

Вы можете сообщить этот отпечаток получателям, чтобы они убедились, что файл действительно от вас. Идентичность переносится с одного компьютера на другой одним файлом (расширение .bdbid), при желании защищённым парольной фразой. Этот файл позволяет подписывать от вашего имени: не передавайте его.

В настройках (значок шестерёнки на панели инструментов) вкладка Идентичность автора показывает ваше имя и отпечаток и предлагает Сохранить идентичность…, Загрузить идентичность… и Создать заново….

Предупреждение

Создание заново ничего не отзывает. Отметка несёт в себе публичный ключ, которым она подписана, поэтому проверяется сама по себе и всегда. Если ваш файл идентичности утёк, тот, у кого он есть, сможет и дальше подписывать под вашим прежним отпечатком, и такие отметки останутся действительными.

После утечки вас защищает не программа: нужно опубликовать новый отпечаток и объявить прежний недействительным перед вашими получателями.

Создание заново перезаписывает текущий ключ; blunderDB предлагает сохранить его перед заменой.

2.20.3. Защита базы паролем

Пароль вводится скрытым — и здесь, и при открытии защищённого файла; значок в виде глаза показывает его, пока его удерживают нажатым, и снова скрывает, как только его отпускают.

Флажок Защитить этот файл паролем даёт файл с расширением .dbx — даже если в окне сохранения вы выбрали имя с .db, поскольку это окно открывается до запроса пароля. Чтобы открыть его, используйте обычное открытие базы: окно выбора принимает как .db, так и .dbx. blunderDB запрашивает пароль и создаёт рядом обычную базу; дальше ничего не спрашивается.

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

Предупреждение

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

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

Технически база шифруется алгоритмом AES-256 в режиме GCM, ключ выводится из пароля функцией Argon2id (64 МиБ памяти, 3 прохода, 4 потока), соль случайна и своя для каждого файла. Режим GCM аутентифицирует всё целиком: неверный пароль распознаётся как таковой, равно как и любое изменение зашифрованного файла — молча испорченной базы не получится никогда.

Заголовок защищённого файла остаётся открытым: его происхождение читается и без пароля.

2.20.4. Как прочитать происхождение файла

В приложении откройте файл и покажите панель Метаданные (команда meta). В верхней части панели появится раздел Происхождение, доступный только для чтения; он сообщает, что было записано, кем, когда и в каком состоянии подпись:

  • «✓ подпись проверена — помечено вами»: файл несёт вашу отметку, нетронутую;

  • «✓ подпись проверена»: отметка нетронута и сделана другим ключом — сравните её отпечаток с тем, который сообщил вам автор;

  • «⚠ подпись недействительна»: документ был изменён или подделан.

У обычной базы этот раздел не появляется.

В командной строке blunderdb info --db файл.db показывает происхождение и состояние подписи, никогда не записывая в файл. Команда работает и с защищённым файлом, без пароля. См. CLI_USAGE.md про параметры --watermark и --password команды export, а также про identity и open.