#Инновации

Ученые факультета вычислительной математики и кибернетики МГУ имени М.В.Ломоносова упростили процесс создания шахматных задач при переносе системы подготовки курсов на язык Python.

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

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

«Мы стремились сделать описание шахматных признаков максимально простым и удобным. Это особенно важно, когда речь идёт о сотнях различных характеристик, которые необходимо учитывать при создании задач», — отметил научный сотрудник факультета ВМК МГУ Виктор Захаров.

Переход на Python позволил сократить объём кода примерно в четыре раза по сравнению с предыдущей реализацией и упростить разработку за счёт более гибких средств работы с данными.

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

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

Результаты работы были представлены на научной конференции «Ломоносовские чтения».