Движок для шахматной игры реализован на основе минмаксного метода с альфа-бета оптимизацией (найти можно в файле engine.py для Python и clang/engine.cpp для C++) Программа изначально была полностью написана на Python, но вследствие низкой скорости работы, была целиком переписана на C++. К сожалению, даже скорость языка C++ не смогла уменьшить время работы программы до удовлетворительных значений. В будущем планируется распараллеливание программы средствами языка C++.
Веб-приложение для управления турнирами с системой регистрации пользователей, создания турниров и отслеживания результатов.
- Управление турнирами: создание, редактирование и удаление турниров
- Система пользователей: регистрация, авторизация, ролевая модель (администраторы/пользователи)
- Управление игроками: добавление игроков, привязка к пользователям
- Генерация пар: автоматическое формирование пар для раундов. Системы: Швейцарская, ...
- Ввод результатов: система записи результатов матчей
- Рейтинги и статистика: таблицы результатов, коэффициенты Бухгольца
- Backend: Flask (Python)
- База данных: PostgreSQL (без ORM)
- Аутентификация: сессии Flask с bcrypt для хеширования паролей
- Шаблоны: Jinja2
- Frontend: HTML, CSS, JavaScript