Тип работы:
Предмет:
Язык работы:


Разработка платформы для предиктивного анализа в киберспорте

Работа №126439

Тип работы

Бакалаврская работа

Предмет

информационные системы

Объем работы37
Год сдачи2023
Стоимость4230 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
24
Не подходит работа?

Узнай цену на написание


Введение 5
1. Постановка задачи 7
2. Обзор 8
2.1. Обзор статей на схожую тематику 8
2.1.1. Анализ статей по футболу 8
2.1.2. Анализ статей по Dota 2 10
2.2. Обзор программных интерфейсов для получения данных о матчах игры “Dota 2”. 11
3. Архитектура 12
3.1. Сравнение микросервисной и монолитной архитектур 12
3.1.1 Монолитная архитектура 12
3.1.2 Микросервисная архитектура 13
3.2. Построение архитектуры платформы 15
3.2.1. Dataset Collector 15
3.2.1.1. Выбор средств разработки 16
3.2.1.2. Выбор ORM и хранилища данных 16
3.2.1.3. Выбор библиотеки планирования задач 16
3.2.2. Prediction API 17
3.2.2.1. Выбор средств реализации 17
3.2.2.2. Десериализация модели машинного обучения 18
3.2.3. ML Serializer 18
3.2.4. Клиентское приложение 18
3.2.4.1. Выбор средств разработки 19
3.2.4.2. Выбор библиотеки для отправки HTTP-запросов 19
3.3. Основной сценарий использования клиентского приложения 19
3.4. Интерфейс для подключения предиктивных моделей 20
3.4.1. Обучение модели 20
3.4.2. Сериализация 21
3.4.3. Входные данные 21
3.4.4. Выходные данные 21
3.4.5. Пример внешней предиктивной модели 21
4. Особенности реализации 22
4.1. Сбор данных и обновление модели машинного обучения 22
4.2. Обработка запроса пользователя 23
4.3. Публикация платформы 23
4.3.1. Контейнеризация сервисов 23
4.3.2. Развертывание сервисов с помощью Docker Compose 24
4.3.3. Настройка непрерывного развертывания 24
4.4. Модель машинного обучения 26
5. Апробация 28
5.1. Опрос фокус-группы 28
5.2. Эксплуатация развернутой платформы во время турниров 30
6. Заключение
Список литературы


Современные технологии приносят много пользы, значительно облегчая человеческую жизнь. Они упрощают коммуникацию, помогают выполнять деловые задачи, хранить, передавать и находить информацию. Все чаще люди используют их с развлекательной целью. Социальные сети, аудиовизуальный контент и мобильные приложения неизменно пользуются популярностью уже не только среди молодежи.
Несколько обособленно развивается индустрия компьютерных игр. Согласно официальным данным, более 40% жителей планеты являются геймерами [1]. Большой спрос порождает новые предложения: лишь за последние десять лет количество видеоигр увеличилось примерно в три раза. Широкая популярность видеоигр породила новый вид соревнований - киберспорт.
Компьютерный спорт изменил представление о видеоиграх: теперь это не просто веселое времяпрепровождение, но и огромное поле для заработка. Игроки формируют команды и соревнуются в международных турнирах за денежные вознаграждения, собирая массы болельщиков. Призовые фонды достигают 40 000 000 $ [2].
Крупнейший киберспортивный турнир «The International» [3]проводится в рамках компьютерной игры «Dota2» [4]. Он является одним из главных событий в игровом сообществе, сравнимым по значимости с чемпионатом мира. Победа на турнире является наивысшим достижением для участников не только в профессиональном плане. Призовой фонд «Dota2» является рекордным, а количество соперников на турнире велико. Зрелищный турнир привлекает миллионы болельщиков из разных стран. «The International» задает тренды в киберспортивной отрасли и популяризует игры.
Как и другие виды спорта, киберспорт активно монетизируется через букмекерские платформы. Люди с азартом предугадывают победителя в намерении заработать посредством ставок. Существуют специальные сервисы, где зрители делятся своими предположениями по поводу результатов различных матчей. Кроме того, в свободном доступе содержится немало информации об уже прошедших играх и их участниках: статистика, предпочтения игроков в выборе персонажей, командные встречи и многое другое [5]. Доступ к подобной информации является важным преимуществом «Dota2» на конкурирующем рынке видеоигр.
Современные методики машинного обучения (machine learning) служат опорой для предсказания будущего результата матча. Компетентные люди активно пользуются искусственным интеллектом и часто выдвигают правильные заключения, приводящие к значительным выигрышам.
Бурная деятельность вокруг «Dota2» все чаще привлекает внимание научного сообщества. Ученые тщательно изучают киберспорт под разными призмами - с психологической [6], социальной [7]и экономической [8] точки зрения. Киберспорт рассматривается как феномен нашего века [9], требующий научных объяснений.
Данная дипломная работа посвящена разработке платформы для предиктивного анализа в киберспорте.


Возникли сложности?

Нужна помощь преподавателя?

Помощь студентам в написании работ!


В результате работы были получены следующие результаты.
1. Были проанализированы 11 научных статей по анализу футбольных матчей и применению различных математических моделей, построенных на внутриигровых данных, а также 5 статей по игре "Dota 2" на применение различных моделей машинного обучения к предсказанию матчей. Результаты исследования показали, что использование моделей машинного обучения может дать положительные результаты в предсказании победы одной из команд.
2. Производен сравнительный анализ программных интерфейсов OpenDota API и Steam Web API, который показал необходимость использования OpenDota API из-за детальности получаемых данных о послематчевой статистики.
3. Выполнена реализация платформы предиктивной аналитики для Dota 2 на базе микросервисов:
о сервис для автоматизированного сбора данных сыгранных матчей, реализованный на языке C# с использованием ASP.NET;
о сервис для дообучения модели на новых результатах матчей, реализованный на языке Python и использующий pickle как библиотеку сериализации;
о cервис для предсказания победы по предматчевым данным и для генерации предложений при выборе героев с возможностью дообучения при поступлении новых данных в ежедневном формате, реализованный на языке Python с использованием Fast API фреймворка, а также pickle как библиотеки десериализации;
о клиентское веб-приложение, получающее от пользователей предматчевые данные и демонстрирующее ответ предиктивной модели в понятном человеку формате, реализованное на языке JavaScript с использованием библиотеки React.
4. Разработана архитектура и спецификация для внешних предиктивных моделей машинного обучения по подключению в платформу.
5. Разработанная платформа была опубликована в облачной инфраструктуре, а также было настроено непрерывное развертывание с помощью сервиса Github Actions на Linux сервер.
6. Апробация платформы была проведена на фокус-группе, состоящей из 40 человек из четырех стран: России, Марокко, Аргентины, Франции. Результаты обратной связи от участников фокус-группы подтвердили высокую эффективность платформы.
7. Платформа была применена на ежедневной основе для предсказания побед по предматчевой статистике на турнирах Lima Major 2023 и ESL One Berlin Major 2023. Платформа ежедневно проводит дообучение моделей на новых данных, что улучшает их предиктивные свойства.



[1] DFC Intelligence. Global Video Game Consumer Population. URL: https://www.dfcint.com/dossier/global-video-game-consumer-population/
[2] Farinas, R. A. (2021). Our DotA 2 Olympians. The Reflective Practitioner, 6.
[3] Liquipedia. The International. URL:
https://liquipedia.net/dota2/The International
[4] Dota2.com. URL: https://www.dota2.com/
[5] Dota2.com/esports. URL: https://www.dota2.com/esports
[6] Banyai, Fanni, et al. "The psychology of esports: A systematic literature review." Journal of gambling studies 35 (2019): 351-365.
[7] Boguslavskaya, Vera, et al. "Cybersport community: social structures transformation as a basis for intercultural dialogue." Internet Science: 5th International Conference, INSCI 2018, St. Petersburg, Russia, October 24-26, 2018, Proceedings 5. Springer International Publishing, 2018.
[8] Kashcha, Mariia, Valerii Yatsenko, and Tamas Gyomorei. "Country performance in e-sport: Social and economic development determinants." Journal of International Studies 15.4 (2022).
[9] Pankina, V. V., and R. T. Hadieva. "Cybersport as a phenomenon of the XXI century." Fizicheskaya kul'tura. Sport. Turizm. Dvigatel'naya rekreaciya 1.3 (2016): 34-38.
[10] Palacios-Huerta I. (2004) Structural changes during a century of the world’s most popular sport.
[11] Sarmento, Hugo, et al. "Match analysis in football: a systematic review." Journal of sports sciences 32.20 (2014): 1831-1843.
[12] Kahn, Joshua. "Neural network prediction of NFL football games." World Wide Web Electronic Publication 9 (2003): 15.
[13] Ric, Angel, et al. "Dynamics of tactical behaviour in association football when manipulating players' space of interaction." PloS one 12.7 (2017): e0180773.
[14] G. R. Riccardo levoli, Lucio Palazzo, “On the use of passing network indicators to predict football outcomes.”
[15] J. B. J. M. Buldu, “Using network science to analyze guardiola’s f.c. barcelona.”
[16] J. B. J. M. Buldu, “Using network science to analyse football passing networks: Dynamics, space, time, and the multilayer nature of the game.”
[17] J. L. P Tarak Kharrat, Ian G.McHale, “Plus-minus player ratings for soccer.”
[18] S. D. Ian G.McHale, “Identifying key players in soccer teams using network analysis and pass difficulty.”
[19] D. J. Andrew Fast, “The nfl coaching network: Analysis of the social network among professional football coaches.”
[20] B. Goncalves and D. Coutinho, “Exploring team passing networks and player movement dynamics in youth association football.”
[21] K. Conley and D. Perry, “How does he saw me? a recommendation engine for picking heroes in dota 2.”
[22] A. Agarwala and M. Pearce, “Learning dota 2 team compositions.”
[23] P S. A. D. R. Gede Adi Aryanata and Y. S. Sudarmojo, “Prediction of dota 2 match result by using analytical hierarchy process method,” 2017.
[24] N. Kinkade and K. yul Kevin Lim, “Dota 2 win prediction,”
[25] K. Akhmedov and A. H. Phan, “Machine learning models for dota 2 outcomes prediction,” 2021.
[26] OpenDota API. URL: https://docs.opendota.com/
[27] Steam Web API. URL: https://steamcommunity.com/dev?l=russian
[28] ASP.NET. URL: https://dotnet.microsoft.com/en-us/apps/aspnet
[29] Entity Framework. URL: https://learn.microsoft.com/en-us/ef/core/
[30] PostgreSQL. URL: https://www.postgresql.org/
[31] Coravel. URL: https://docs.coravel.net/
[32] Quartz.NET. URL: https://www.quartz-scheduler.net/
[33] Fast API. URL: https://fastapi.tiangolo.com/
[34] Pickle python. URL: https://docs.python.org/3/library/pickle.html
[35] React-JS. URL: https://react.dev/
[36] React-JS DOM. URL: https://legacy.reactjs.org/docs/faq-internals.html
[37] Fetch. URL: https://developer.mozilla.org/en-US/docs/Web/API/Fetch API
[38] GitHub diploma_spbu. URL: https://github.com/dszharikov/diploma spbu
[39] Docker. URL: https://docs.docker.com/
[40] Docker-Compose. URL: https://docs.docker.com/compose/
[41] Debian. URL: https://www.debian.org/
[42] GitHub Actions. URL: https://docs.github.com/en/actions
[43] Zhou, Jie, Ganqu Cui, Shengding Hu, Zhengyan Zhang, Cheng Yang, Zhiyuan Liu, Lifeng Wang, Changcheng Li, and Maosong Sun. "Graph neural networks: A review of methods and applications." AI open 1 (2020): 57-81.
[44] Logistic Regression. URL: https://www.ibm.com/topics/logistic-regression
[45] Random Forest. URL: https://www.ibm.com/topics/random-forest
[46] Lima Major 2023. URL: https://liquipedia.net/dota2/Lima Major/2023
[47] ESL One Berlin Major 2023. URL: https://www.esl-one.com/berlin/
[48] Dota 2 Gameplay Update 7.33. URL: https://www.dota2.com/patches/7.33


Работу высылаем на протяжении 30 минут после оплаты.




©2024 Cервис помощи студентам в выполнении работ