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

Раздел
Программирование
Просмотров
16
Покупок
0
Антиплагиат
70% eTXT
Размещена
2 Апр в 12:45
ВУЗ
2025
Курс
Не указан
Стоимость
3 500 ₽
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
pdf
вкр
2.2 Мбайт
Описание

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

Объектом исследования являются методы и средства многокритериального ранжирования.

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

Система была разработана с использованием MongoDB в качестве системы управления базами данных и библиотеки React. В результате реализован прототип веб-приложения, позволяющий ранжировать игры, находить успешные аналоги и формировать рекомендации по улучшению проектов. Разработанная система может найти применение в игровой индустрии и быть использована при планировании новых игр и оценке их доли продаж в сегменте похожих игр. Сделаны выводы о высокой эффективности предложенного решения при сравнительном анализе с существующими системами (Steam, STEAMer, DeepFM).

Оглавление

Введение ........................................................................................................ 11

1 Исследование методов и средств ранжирования компьютерных игр........ 16

1.1 Обзор существующих наборов данных о компьютерных играх ............. 16

1.1.1 Обзор платформ цифровой дистрибуции ............................................ 16

1.1.2 Особенности выбранной платформы.................................................... 18

1.1.3 Выбор исходных данных....................................................................... 20

1.2 Обзор средств анализа текстовой информации...................................... 21

1.2.1 Особенности анализа игровых отзывов................................................ 21

1.2.2 Методы векторного представления текстов......................................... 22

1.2.3 Перспективы расширения анализа ....................................................... 25

1.3 Обзор методов ранжирования компьютерных игр.................................. 27

1.3.1 Общее понятие и цели ранжирования игр............................................ 27

1.3.2 Принципы и методы построения рейтингов компьютерных игр.......... 28

1.3.3 Методы свёртки критериев................................................................... 30

1.4 Обзор существующих средств ранжирования ........................................ 33

1.4.1 Система Steam....................................................................................... 33

1.4.2 Система STEAMer ................................................................................ 35

1.4.3 Система DRGame.................................................................................. 36

1.4.4 Система DeepFM................................................................................... 37

1.4.5 Система D-VSMR.................................................................................. 38

1.4.6 Сравнительный анализ моделей ранжирования ................................... 39

1.5 Выводы ..................................................................................................... 41

2 Проектирование системы поддержки анализа компьютерных игр............ 42

2.1 Функциональная модель системы ........................................................... 42

2.1.1 Use-case диаграмма и основные сценарии............................................ 42

2.1.2 Входные и выходные данные системы.................................................. 45

2.1.3 Этапы работы системы анализа и рекомендаций ................................. 47

2.2 Архитектурное проектирование системы ............................................... 48

2.2.1 Архитектурные паттерны и их сравнение ............................................ 48

2.2.2 Выбранная архитектура и её компоненты............................................ 50

2.3 Технологический стек .............................................................................. 52

2.3.1 Критерии выбора технологий ............................................................... 52

2.3.2 Выбор языка программирования .......................................................... 52

2.3.3 Выбор фреймворка для веб-разработки...............................................54

2.3.4 Выбор серверной платформы ............................................................... 55

2.3.5 Выбор системы управления базой данных ........................................... 57

2.4 Проектирование диаграммы сущность-связь.......................................... 57

2.5 Математические модели и алгоритмы..................................................... 58

2.5.1 Предобработка данных и формирование признаков............................ 58

2.5.2 Методы анализа сходства игр............................................................... 63

2.5.3 Методы ранжирования компьютерных игр .......................................... 66

2.5.4 Метод последовательного уточнения предпочтений........................... 73

2.6 Формирование рекомендательных решений ........................................... 74

2.6.1 Выявление уникальных характеристик ................................................ 74

2.6.2 Механизм генерации рекомендаций..................................................... 75

2.6.3 Математическая модель анализа.......................................................... 76

2.7 Пример работы системы .......................................................................... 77

2.8 Выводы ..................................................................................................... 79

3 Реализация системы поддержки анализа компьютерных игр .................... 80

3.1 Реализация основных модулей системы.................................................. 81

3.1.1 Диаграмма классов ............................................................................... 81

3.1.2 Класс DataRepository ............................................................................ 81

3.1.3 Класс FeatureExtractor........................................................................... 83

3.1.4 Класс BazeAnalyzer............................................................................... 84

3.1.5 Класс GameClusterer ............................................................................. 84

3.1.6 Класс GameCompetitivenessAnalyzer.................................................... 85

3.1.7 Класс GameSimilarityAnalyzer.............................................................. 87

3.1.8 Класс GameUniqueFeaturesAnalyzer ..................................................... 87

3.1.9 Класс GameRecommendationAnalyzer .................................................. 89

3.1.10 Класс GameAnalysisPipeline ............................................................... 91

3.1.11 Класс ReviewAnalyzer ......................................................................... 93

3.1.12 Класс CompetitivenessRanker .............................................................. 94

3.1.13 Реализация API ................................................................................... 95

3.2 Реализация пользовательского интерфейса ............................................ 98

3.2.1 Структура веб-интерфейса ................................................................... 98

3.2.2 Компонент отображения результатов................................................... 99

3.2.3 Компонент отображения рейтинга игр................................................. 100

3.2.4 Компонент настройки важности критериев ......................................... 102

3.2.5 Техническая реализация ....................................................................... 103

3.3 Выводы ..................................................................................................... 106

4 Тестирование и апробация системы поддержки анализа компьютерных игр 107

4.1 План тестирования................................................................................... 107

4.2 Тестирование компонентов системы ....................................................... 108

4.2.1 Модульное тестирование backend......................................................... 108

4.2.2 Интеграционное тестирование ............................................................. 113

4.2.3 Анализ покрытия кода .......................................................................... 119

4.2.4 Профилирование времени выполнения и использования памяти........ 120

4.3 Тестирование пользовательского интерфейса......................................... 121

4.3.1 Функциональное тестирование интерфейса......................................... 121

4.3.2 Проверка отзывчивости интерфейса .................................................... 126

4.4 Экспериментальное сравнение с существующими решениями.............. 128

4.4.1 Система рекомендаций Steam............................................................... 128

4.4.2 Сравнительный анализ рейтинговой системы...................................... 129

4.4.3 Анализ полученных рейтингов ............................................................. 130

4.4.4 Анализ полученных схожих игр и формирование рекомендаций........ 133

4.4.5 Выводы на основе экспериментального сравнения.............................. 135

4.5 Апробация на конференции .................................................................... 136

4.6 Выводы ..................................................................................................... 138

Заключение.................................................................................................... 140

Список сокращений и условных обозначений.............................................. 142

Список использованных источников............................................................. 143

Приложение 1 Диаграмма компонентов системы поддержки анализа компьютерных

игр для их ранжирования и составления рекомендаций по улучшению 149

Приложение 2 Диаграмма случаев использования системы поддержки анализа

компьютерных игр для их ранжирования и составления рекомендаций

по улучшению ................................................................................................ 150

Приложение 3 Архитектура системы поддержки анализа компьютерных игр

для их ранжирования и составления рекомендаций по улучшению............. 151

Приложение 4 Логическая модель документоориентированной БД

GamesAnalyzer с цветовой маркировкой источников данных ...................... 152

Приложение 5 Диаграмма классов системы GamesAnalyze ......................... 153

Приложение 6 Основные параметры игр из Steam и SteamSpy .................... 154

Приложение 7 Основные параметры отзывов пользователей....................... 155

Приложение 8 Сравнение количества игр в Steam и на других игровых

платформах для ПК....................................................................................... 156

Приложение 9 Сравнительный анализ методов векторизации текстовых

данных............................................................................................................ 157

Приложение 10 Определение оптимального числа кластеров методом локтя 158

Приложение 11 Объектно-признаковая таблица моделей ранжирования.... 159

Приложение 12 Сравнительный анализ подходов к ранжированию игр ...... 160

Приложение 13 Сравнение инструментальных средств для разработки веб–

приложения .................................................................................................... 161

Приложение 14 Производительность ключевых методов системы .............. 162

Приложение 15 Определение оптимального числа кластеров методом локтя 163

Приложение 16 Определение оптимального числа кластеров методом локтя 164

Приложение 17 t-SNE визуализация кластеров компьютерных игр............. 165

Приложение 18 Блок-схема выполнения одного из возможных сценариев

работы системы.............................................................................................. 166

Приложение 19 Пример POST-запроса к API анализа игры через Postman . 167

Приложение 20 Форма загрузки данных пользовательской игры при светлой

теме ................................................................................................................ 168

Приложение 21 Программный код модуля BaseAnalyzer ............................. 169

Приложение 22 Программный код модуля CompetitivenessRanker .............. 181

Приложение 23 Программный код модуля GameClusterer ........................... 189

Приложение 24 Программный код модуля FeatureExtractor ......................... 200

Приложение 25 Программный код модуля GameAnalysisPipeline................ 208

Приложение 26 Программный код модуля GameAnalyzer............................ 220

Приложение 27 Программный код модуля GameCompetitivenessAnalyzer .. 223

Приложение 28 Программный код модуля GameRecommendationAnalyzer. 236

Приложение 29 Программный код модуля GameRecommendationAnalyzer. 245

Приложение 30 Программный код модуля GameSimilarityAnalyzer ............ 252

Приложение 31 Программный код модуля GameUniqueFeaturesAnalyzer.... 259

Приложение 32 Программный код компонента GameAnalysisForm ............ 266

Приложение 33 Программный код компонента GameIdForm....................... 271

Приложение 34 Программный код компонента GameRatingDisplay ............ 273

Приложение 35 Программный код компонента ResultsDisplay .................... 280

Приложение 36 Программный код компонента SettingsDialog .................... 286

Приложение 37 Программный код тестов модуля FeatureExtractor.............. 293

Приложение 38 Программный код тестов модуля FeatureExtractor для HTML 298

Приложение 39 Программный код тестов модуля GameClusterer ................ 300

Приложение 40 Программный код тестов стабильности GameClusterer...... 302

Приложение 41 Программный код тестов модуляGameCompetitivenessAnalyzer 305

Приложение 42 Программный код тестов обработки пропущенных данных в

GameCompetitivenessAnalyzer ....................................................................... 310

Приложение 43 Программный код тестов модуляGameUniqueFeaturesAnalyzer

Приложение 44 Программный код тестов конвейера анализа игр ............... 323

Приложение 45 Программный код тестов модуля формирования рекомендаций

игр ........................................................................................................... 326

Приложение 46 Программный код тестов компонента GameIdForm........... 332

Приложение 47 Программный код тестов компонента GameAnalysisForm. 335

Приложение 48 Программный код тестов компонента ResultsDisplay......... 339

Приложение 49 Программный код тестов компонента HomePage ............... 343

Список литературы

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Lyadova L. N., Malkova K. M., Timofeev M. V. Архитектура рекомендательной системы, настраиваемой на предметные области // Название сборника конференции. — Город проведения, 2017.

2. Бейзер Б. Тестирование чёрного ящика. Технологии функционального тестирования программного обеспечения и систем.—СПб.: Питер, 2004.—320 с.

3. Документация Django.— (дата обращения: 10.05.2025).

4. Документация Steamworks.—(дата обращения: 08.01.2025).

5. Микони С. В. Теория принятия управленческих решений: учебное пособие для вузов. — 2-е изд. — Город: Издательство, 2022. — 384 с.

всего 77 источников

Вам подходит эта работа?
Похожие работы
Другие работы автора
Прямой эфир