Я довольно посредственный шахматист, но в начале 2019 года много играл в блиц онлайн. Мой дебютный репертуар был довольно скудным, и я чувствовал, что повторяю те же ошибки. Я хотел опробовать несколько новых дебютов, но просмотрев существующие базы данных дебютов, я обнаружил, что в некоторых областях не хватает:
• Данные от игроков с более низким рейтингом, таких как я. • Четкая визуализация • Дерево, показывающее транспозиции • Выделены варианты с низким/высоким Эло
Я решил сам поиграть с обработкой некоторых PGN шахматных партий и посмотреть, что у меня получится. И после разговора о проекте с другом, который меньше шахматами увлекается, а больше веб-дизайном, мы решили сотрудничать.
Изначально мы собирались обработать несколько тысяч игр, в основном для личного интереса. Но довольно скоро мы наткнулись на колоссальную базу данных Lichess, насчитывающую 800 миллионов игр (по состоянию на 2019 год). Это было идеально, поскольку содержало широкий спектр способностей игроков и контроля времени, а также имело такое большое количество игр, что даже после фильтрации размер выборки был бы достаточно большим, чтобы делать выводы.
После некоторой работы мы смогли обработать все шахматные состояния как минимум с ~800 партиями (из базы данных с 800 миллионами игр). Использование этого порога позволило нам преобразовать более 1 ТБ PGN Lichess в гораздо более управляемые 60 ГБ данных о состоянии шахмат.
Тем не менее, 60 ГБ по-прежнему совершенно неразумно просить кого-то загрузить, когда они открывают веб-страницу! Это потребовало от нас создания сервера, который по запросу может возвращать наиболее важную информацию о конкретном шахматном состоянии. Это позволяет нам показать вам открытие гораздо глубже, отправляя вам МБ данных вместо ГБ данных.
Сервер, способный выполнять поиск по 60 ГБ данных и быстро отправлять вам наиболее релевантные результаты, — безусловно, самая дорогая часть этого проекта. Чтобы это заработало, нам нужны сторонники, которые помогут оплатить серверы и позволят нам продолжать разработку сайта. Если вам интересно, проверьте это здесь.