Разработка веб-приложения для сбора и предсказания итогов соревновательных матчей по игровым дисциплинам
|
ВВЕДЕНИЕ 11
ГЛАВА 1. ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОДГОТОВКА ДАННЫХ 16
1.1 Описание предметной области 16
1.2 Определение основных проблем при разработке приложения 17
1.3 Обзор рынка веб-приложений для прогнозирования 20
1.4 Использование веб-скрапинга для извлечения данных 22
1.5 Вывод по разделу 25
ГЛАВА 2. РАЗРАБОТКА КЛИЕНТСКОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЯ .... 26
2.1 Разработка модуля регистрации и аутентификации 27
2.2 Разработка модуля новостных заголовков 30
2.3 Разработка модуля описания матчей 33
2.4 Разработка модуля статистики команд 39
2.5 Разработка модуля статистики по игрокам 40
2.6 Разработка модуля для избранного контента 42
2.7 Вывод по разделу 43
ГЛАВА 3. РАЗРАБОТКА СЕРВЕРНОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЯ 44
3.1 Прогнозирование матчей 44
3.1.1 Сбор данных для прогнозирования 45
3.1.2 Модель машинного обучения для прогнозирования 46
3.2 Разработка чат-бота 49
3.3 Вывод по разделу 51
ГЛАВА 4. ФИНАНСОВЫЙ МЕНЕДЖМЕНТ, РЕСУРСОЭФФЕКТИВНОСТЬ
И РЕСУРСОСБЕРЕЖЕНИЕ 54
4.1 Оценка коммерческого потенциала и перспективности проведения
научных исследований с позиции ресурсоэффективности и ресурсосбережения 54
4.1.1 Потенциальные потребители продукта 54
4.1.2 Анализ конкурентных технических решений 54
4.1.3 SWOT-анализ 56
4.2 Определение возможных альтернатив проведения исследований 59
4.3 Планирование научно-исследовательских работ 61
4.3.1 Структура работ в рамках научного исследования 61
4.3.2 Определение трудоемкости выполнения работ 62
4.3.3 Разработка графика проведения научного исследования 63
4.3.4 Бюджет научно-технического исследования 64
4.4 Определение ресурсной (ресурсосберегающей), финансовой, бюджетной, социальной и экономической эффективности исследования .. 67
4.5 Вывод по разделу 69
ГЛАВА 5. СОЦИАЛЬНАЯ ОТВЕТСТВЕННОСТЬ 73
5.1 Введение 73
5.2 Правовые и организационные вопросы обеспечения безопасности ... 74
5.3 Производственная безопасность 75
5.3.1 Отсутствие или недостаток необходимого искусственного
освещения 76
5.3.2 Зрительное напряжение 77
5.3.3 Производственные факторы, связанные с электрическим током .... 79
5.3.4 Умственное перенапряжение, в том числе вызванное
информационной нагрузкой 80
5.3.5 Превышение уровня шума 81
5.4 Экологическая безопасность 82
5.5 Безопасность в чрезвычайных ситуациях 82
5.6 Вывод по разделу 85
ЗАКЛЮЧЕНИЕ 86
СПИСОК ЛИТЕРАТУРЫ 88
Приложение А. Алгоритм извлечения данных для предстоящих и реал-тайм событий 91
Приложение Б. Структура полученных данных для предстоящих событий .. 94
Приложение В. Структура веб-приложения 95
Приложение Г. Алгоритм машинного обучения 96
ГЛАВА 1. ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОДГОТОВКА ДАННЫХ 16
1.1 Описание предметной области 16
1.2 Определение основных проблем при разработке приложения 17
1.3 Обзор рынка веб-приложений для прогнозирования 20
1.4 Использование веб-скрапинга для извлечения данных 22
1.5 Вывод по разделу 25
ГЛАВА 2. РАЗРАБОТКА КЛИЕНТСКОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЯ .... 26
2.1 Разработка модуля регистрации и аутентификации 27
2.2 Разработка модуля новостных заголовков 30
2.3 Разработка модуля описания матчей 33
2.4 Разработка модуля статистики команд 39
2.5 Разработка модуля статистики по игрокам 40
2.6 Разработка модуля для избранного контента 42
2.7 Вывод по разделу 43
ГЛАВА 3. РАЗРАБОТКА СЕРВЕРНОЙ ЧАСТИ ВЕБ-ПРИЛОЖЕНИЯ 44
3.1 Прогнозирование матчей 44
3.1.1 Сбор данных для прогнозирования 45
3.1.2 Модель машинного обучения для прогнозирования 46
3.2 Разработка чат-бота 49
3.3 Вывод по разделу 51
ГЛАВА 4. ФИНАНСОВЫЙ МЕНЕДЖМЕНТ, РЕСУРСОЭФФЕКТИВНОСТЬ
И РЕСУРСОСБЕРЕЖЕНИЕ 54
4.1 Оценка коммерческого потенциала и перспективности проведения
научных исследований с позиции ресурсоэффективности и ресурсосбережения 54
4.1.1 Потенциальные потребители продукта 54
4.1.2 Анализ конкурентных технических решений 54
4.1.3 SWOT-анализ 56
4.2 Определение возможных альтернатив проведения исследований 59
4.3 Планирование научно-исследовательских работ 61
4.3.1 Структура работ в рамках научного исследования 61
4.3.2 Определение трудоемкости выполнения работ 62
4.3.3 Разработка графика проведения научного исследования 63
4.3.4 Бюджет научно-технического исследования 64
4.4 Определение ресурсной (ресурсосберегающей), финансовой, бюджетной, социальной и экономической эффективности исследования .. 67
4.5 Вывод по разделу 69
ГЛАВА 5. СОЦИАЛЬНАЯ ОТВЕТСТВЕННОСТЬ 73
5.1 Введение 73
5.2 Правовые и организационные вопросы обеспечения безопасности ... 74
5.3 Производственная безопасность 75
5.3.1 Отсутствие или недостаток необходимого искусственного
освещения 76
5.3.2 Зрительное напряжение 77
5.3.3 Производственные факторы, связанные с электрическим током .... 79
5.3.4 Умственное перенапряжение, в том числе вызванное
информационной нагрузкой 80
5.3.5 Превышение уровня шума 81
5.4 Экологическая безопасность 82
5.5 Безопасность в чрезвычайных ситуациях 82
5.6 Вывод по разделу 85
ЗАКЛЮЧЕНИЕ 86
СПИСОК ЛИТЕРАТУРЫ 88
Приложение А. Алгоритм извлечения данных для предстоящих и реал-тайм событий 91
Приложение Б. Структура полученных данных для предстоящих событий .. 94
Приложение В. Структура веб-приложения 95
Приложение Г. Алгоритм машинного обучения 96
Цифровые приложения, которые связаны с игровыми дисциплинами имеют особое значение в контексте растущей популярности электронного спорта. Сегодня игровая индустрия переживает стремительный рост, превращаясь в масштабную и прибыльную отрасль развлечений. Соревнования привлекают миллионы зрителей со всего мира и предлагают уникальный способ соперничества и развлечения для игроков.
В соревновательных матчах по игровым дисциплинам команды сражаются за победу, используя свои навыки, тактику и стратегию. Однако, предсказание результатов для этих матчей является сложной задачей, поскольку необходимо учитывать различные факторы, такие как результаты прошлых матчей, индивидуальную статистику игроков, предпочитаемые стратегии и даже фактор случайности. По этой причине необходимо создать приложение, способное собирать и анализировать данные о прошлых матчах, чтобы выявить закономерности и тенденции, которые могут помочь в предсказании будущих исходов.
Целью данной выпускной квалификационной работы является разработка веб-приложения, которое позволит собирать и систематизировать информацию о соревновательных матчах по различным игровым дисциплинам. Модель машинного обучения, используемая в веб-приложении будет анализировать предыдущие итоги матчей и предсказывать будущие результаты матчей. Пользователи приложения смогут получить обоснованные прогнозы, основанные на анализе данных, что поможет им принимать более информированные решения.
Для достижения описанной цели были поставлены следующие задачи:
- Исследование предметной области.
- Обзор аналогов разрабатываемого веб-приложения.
- Проектирование и создание интерфейса веб-приложения.
- Разработка модулей регистрации и аутентификации.
- Создание программного модуля для сбора информации о игроках, командах, новостных статей по игровой дисциплине.
- Реализация алгоритмов определения исхода будущих матчей по собранным данным.
- Создание возможности добавления игровых команд или игроков в избранное.
- Создание возможности просмотра актуальных новостных статей по игровой дисциплине, а также просмотр истории новостей.
- Создание возможности просмотра статистики команд и игроков.
- Разработка системы уведомлений в мессенджере с использованием чат-бота
В соревновательных матчах по игровым дисциплинам команды сражаются за победу, используя свои навыки, тактику и стратегию. Однако, предсказание результатов для этих матчей является сложной задачей, поскольку необходимо учитывать различные факторы, такие как результаты прошлых матчей, индивидуальную статистику игроков, предпочитаемые стратегии и даже фактор случайности. По этой причине необходимо создать приложение, способное собирать и анализировать данные о прошлых матчах, чтобы выявить закономерности и тенденции, которые могут помочь в предсказании будущих исходов.
Целью данной выпускной квалификационной работы является разработка веб-приложения, которое позволит собирать и систематизировать информацию о соревновательных матчах по различным игровым дисциплинам. Модель машинного обучения, используемая в веб-приложении будет анализировать предыдущие итоги матчей и предсказывать будущие результаты матчей. Пользователи приложения смогут получить обоснованные прогнозы, основанные на анализе данных, что поможет им принимать более информированные решения.
Для достижения описанной цели были поставлены следующие задачи:
- Исследование предметной области.
- Обзор аналогов разрабатываемого веб-приложения.
- Проектирование и создание интерфейса веб-приложения.
- Разработка модулей регистрации и аутентификации.
- Создание программного модуля для сбора информации о игроках, командах, новостных статей по игровой дисциплине.
- Реализация алгоритмов определения исхода будущих матчей по собранным данным.
- Создание возможности добавления игровых команд или игроков в избранное.
- Создание возможности просмотра актуальных новостных статей по игровой дисциплине, а также просмотр истории новостей.
- Создание возможности просмотра статистики команд и игроков.
- Разработка системы уведомлений в мессенджере с использованием чат-бота
В рамках выпускной квалификационной работы были спроектированы и созданы веб-приложение и чат-бот для сбора статистики соревновательных матчей по различным игровым дисциплинам. Был проведен парсинг большого объема данных для формирования статистики в веб-приложении. Также была реализована модель машинного обучения с применением алгоритма «MLP». На этапе проектирования был выбран оптимальный стек технологий, а также разработана логика взаимодействия между различными компонентами приложения.
В процессе реализации проекта были собраны статистические данные об игроках, командах и игровых событиях, которые были сохранены в единой базе данных. Для сбора данных был использован подход веб-скрапинга, позволяющий извлекать информацию с внешних ресурсов. Этот подход также был применен для сбора данных, необходимых для создания датасета, который использовался для обучения и прогнозирования модели машинного обучения. Взаимодействие между клиентской и серверной частями приложения, а также для работы бота, осуществлялось через запросы к базе данных «MongoDB». Данные проходили обработку как в процессе парсинга, так и при обработке пользовательских запросов к веб-приложению. Визуализация данных была реализована с использованием HTML, CSS и JavaScript.
Разработка приложения включала несколько этапов, начиная с обработки данных и заканчивая работой с серверной частью. Для эффективной обработки и управления данными был выбран язык программирования «Python».
Один из ключевых инструментов, использованных в процессе разработки, был фреймворк «Django». «Django» предоставил удобную и мощную среду для создания веб-приложения с использованием языка «Python». С его помощью была реализована функциональность серверной части веб-приложения, включающая управление маршрутизацией, обработку запросов, взаимодействие с базой данных и управление пользователями. В результате использования языка программирования «Python» и фреймворка «Django», разработанное веб-приложение обладает надежной и масштабируемой серверной частью. Это позволяет обеспечить стабильное функционирование веб-приложения, обработку запросов от пользователей и эффективную работу с данными.
Разработка модели машинного обучения для прогнозирования текущих и будущих матчей включала использование функционала следующих библиотек: «Pandas» и «Scikit-learn». Библиотека «Pandas» предоставила мощные инструменты для обработки и анализа данных, включая функционал по работе с табличными данными и выполнению различных операций по фильтрации, сортировке и группировке данных. Это позволило эффективно обрабатывать и представлять статистическую информацию.
Код для веб-приложения, разработанного в рамках дипломного проекта, доступен для ознакомления по следующей ссылке: https: //github .com/dionislez/hltv_news.
Код для разработанного пользовательского чат-бота на платформе «Telegram» также доступен для ознакомления по ссылке: https: //github .com/dionislez/tg_vkr.
На текущем этапе разработки с помощью веб-приложения предоставляется возможность анализа статистики профессиональных игроков, команд и матчей, а также формирования прогнозов на предстоящие и реал-тайм события как с использованием самого веб-приложения, так и с использованием функционала чат-бота на платформе «Telegram».
В процессе реализации проекта были собраны статистические данные об игроках, командах и игровых событиях, которые были сохранены в единой базе данных. Для сбора данных был использован подход веб-скрапинга, позволяющий извлекать информацию с внешних ресурсов. Этот подход также был применен для сбора данных, необходимых для создания датасета, который использовался для обучения и прогнозирования модели машинного обучения. Взаимодействие между клиентской и серверной частями приложения, а также для работы бота, осуществлялось через запросы к базе данных «MongoDB». Данные проходили обработку как в процессе парсинга, так и при обработке пользовательских запросов к веб-приложению. Визуализация данных была реализована с использованием HTML, CSS и JavaScript.
Разработка приложения включала несколько этапов, начиная с обработки данных и заканчивая работой с серверной частью. Для эффективной обработки и управления данными был выбран язык программирования «Python».
Один из ключевых инструментов, использованных в процессе разработки, был фреймворк «Django». «Django» предоставил удобную и мощную среду для создания веб-приложения с использованием языка «Python». С его помощью была реализована функциональность серверной части веб-приложения, включающая управление маршрутизацией, обработку запросов, взаимодействие с базой данных и управление пользователями. В результате использования языка программирования «Python» и фреймворка «Django», разработанное веб-приложение обладает надежной и масштабируемой серверной частью. Это позволяет обеспечить стабильное функционирование веб-приложения, обработку запросов от пользователей и эффективную работу с данными.
Разработка модели машинного обучения для прогнозирования текущих и будущих матчей включала использование функционала следующих библиотек: «Pandas» и «Scikit-learn». Библиотека «Pandas» предоставила мощные инструменты для обработки и анализа данных, включая функционал по работе с табличными данными и выполнению различных операций по фильтрации, сортировке и группировке данных. Это позволило эффективно обрабатывать и представлять статистическую информацию.
Код для веб-приложения, разработанного в рамках дипломного проекта, доступен для ознакомления по следующей ссылке: https: //github .com/dionislez/hltv_news.
Код для разработанного пользовательского чат-бота на платформе «Telegram» также доступен для ознакомления по ссылке: https: //github .com/dionislez/tg_vkr.
На текущем этапе разработки с помощью веб-приложения предоставляется возможность анализа статистики профессиональных игроков, команд и матчей, а также формирования прогнозов на предстоящие и реал-тайм события как с использованием самого веб-приложения, так и с использованием функционала чат-бота на платформе «Telegram».



