Details
| Title | Разработка предметно-ориентированного языка для описания партий в антагонистических играх с неполной информацией: выпускная квалификационная работа бакалавра: направление 01.03.02 «Прикладная математика и информатика» ; образовательная программа 01.03.02_02 «Системное программирование» = Development of a domain-specific language for describing games in adversarial games with imperfect information |
|---|---|
| Creators | Жохов Олег Дмитриевич |
| Scientific adviser | Крашенинников Сергей Вениаминович |
| Other creators | Пестряков Д. Д. |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Физико-механический институт |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | предметно-ориентированный язык ; DSL ; антагонистические игры ; неполная информация ; формальная грамматика ; РБНФ ; синтаксический анализ ; метод Монте-Карло ; симулятор ; веб-платформа ; domain-specific language ; adversarial games ; imperfect information ; formal grammar ; EBNF ; syntax analysis ; Monte Carlo method ; simulator ; web platform |
| Document type | Bachelor graduation qualification work |
| Language | Russian |
| Level of education | Bachelor |
| Speciality code (FGOS) | 01.03.02 |
| Speciality group (FGOS) | 010000 - Математика и механика |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-3317 |
| Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
| Additionally | New arrival |
| Record key | ru\spstu\vkr\41424 |
| Record create date | 7/31/2026 |
Allowed Actions
–
Action 'Read' will be available if administrator prepare required files
Action 'Download' will be available if you login or access site from another network
| Group | Anonymous |
|---|---|
| Network | Internet |
Данная работа посвящена разработке предметно-ориентированного языка (Domain-Specific Language, DSL) для формального описания состояний и действий в антагонистической игре с неполной информацией «Гномы и Вредители: Дуэль», а также программного инструментария для его обработки, симуляции и анализа. Проведен анализ предметной области: рассмотрены формальные модели антагонистических игр с неполной информацией и существующие подходы к описанию игровых систем. Разработаны синтаксис и семантика DSL с использованием расширенной формы Бэкуса—Наура (РБНФ). Реализованы синтаксический анализатор и интерпретатор языка на Python, обеспечивающие кодирование состояний, декодирование действий и валидацию их легальности. Разработаны игровой движок и симулятор партий на основе метода Монте-Карло с конфигурируемыми параметрами агентов. Создана веб-платформа для проведения автоматизированных турниров между пользовательскими агентами с изолированным выполнением кода на FastAPI и Streamlit с поддержкой PostgreSQL, Redis и Docker. Система предоставляет возможность настройки параметров агентов, состава колоды и правил игры и предназначена для применения в образовательном процессе.
This work is devoted to the development of a domain-specific language (DSL) for formal description of states and actions in the adversarial game with imperfect information «Gnome Saboteurs: Duel», as well as software tools for its processing, simulation and analysis. The subject area is analyzed: formal models of adversarial games with imperfect information and existing approaches to game description are reviewed. The syntax and semantics of the DSL are developed using the extended Backus—Naur form (EBNF). A syntax analyzer and an interpreter of the language are implemented in Python, providing state encoding, action decoding and move legality validation. A game engine and a Monte Carlo simulator with configurable agent parameters are developed. A web platform for automated tournaments between user agents with isolated code execution is created using FastAPI and Streamlit with PostgreSQL, Redis and Docker. The system provides the ability to configure agent parameters, deck composition and game rules and is intended for use in education.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|