Розробка модулів інформаційної системи прогнозування результатів спортивного програмування
Розгляд основних аспектів вирішення завдання прогнозування результатів спортивного програмування на базі використання моделей машинного навчання та мови програмування Python. Розробка структури елементів інтерфейсу на базі використання бібліотеки.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 21.09.2024 |
Размер файла | 1,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Розробка модулів інформаційної системи прогнозування результатів спортивного програмування
Шведін Олександр Володимирович, магістрант
Міжрегіональна академія управління персоналом
Рудніченко Микола Дмитрович, кандидат технічних наук,
доцент кафедри інформаційних технологій
Національний університет «Одеська Політехніка»
Шибаєв Денис Сергійович, викладач
Одеський коледж комп'ютерних технологій «Сервер»
Отрадська Тетяна Василівна, кандидат технічних наук, доцент,
Директор Одеський коледж комп'ютерних технологій «Сервер»
Анотація
У роботі розглянуто основні аспекти вирішення завдання прогнозування результатів спортивного програмування на базі використання моделей машинного навчання та мови програмування Python. Обґрунтовано актуальність автоматизації процесу прогнозування в контексті спортивних змагань в області вирішення завдань олімпіад, створено UML діаграму розгортання інформаційної системи, розроблено структуру елементів інтерфейсу на базі використання бібліотеки pyQT. Описано ключові можливості інтерфейсу системи та її' основний функціонал.
Ключові слова: прогнозування, машинне навчання, спортивне програмування, інформаційні системи.
Вступ
В даний час все більш актуальними стають напрямки використання методів та технологій штучного інтелекту для вирішення прикладних завдань з метою автоматизації аналітичних та обчислювальних процесів з обробки та аналізу даних [1]. Завдяки активному розвитку програмних засобів та апаратного забезпечення у сучасних дослідників з'являється ефективний та функціональний інструментарій для побудови алгоритмів та моделей інтелектуальних систем з метою проведення обчислювальних експериментів та підбору оптимальних параметрів роботи таких моделей для конкретних науково-практичних завдань. Одним із найчастіше використовуваних підходів для вирішення відповідних завдань є метод комп'ютерного моделювання, що дозволяє здійснювати чисельні експерименти різного профілю з необхідними обмеженнями [2].
У зв'язку з актуальністю та популярністю серед сучасної молоді навичок програмування зростає кількість навчально-практичних заходів, спрямованих на оцінку їх логічних можливостей та розвиток технічних задатків у галузі розробки нетривіальних алгоритмів розв'язання прикладних завдань на основі проектування та створення програмних рішень та систем. Одним із подібних заходів є спортивне програмування [3]. Завдяки високому потенціалу низки сучасних інтелектуальних методів аналізу даних, зокрема методів машинного навчання, ставати можливим вирішення завдань прогнозування заданих параметрів, характеристик або показників людської діяльності. У зв'язку з необхідністю аналізу даних з різних команд, що беруть участь у спортивному програмуванні для оцінки потенціалу їх учасників, виникає потреба у використанні методів інтелектуального аналізу інформації [4].
Мета роботи полягає у дослідженні можливостей використання комп'ютерного моделювання та прогнозування результатів чемпіонатів зі спортивного програмування на базі застосування методів машинного навчання в рамках розроблених модулів інформаційної системи.
Основна частина
Для структурного відображення залежностей у процесі запуску та використання програми розроблено діаграму розгортання програми, наведену на рис.1.
Рис. 1. Діаграма розгортання системи
Всі залежності підключаються до проекту, що запускається у середовищі PyCharm у вигляді бібліотек, додатково використовується зовні програма QT Designer для створення розмітки інтерфейсу. Складання здійснюється засобами середовища розробки без використання додаткових плагінів та компонувальників.
Для зручності підтримки та розширення функціоналу проект містить низку каталогів, у яких зберігаються відповідні файли. Зокрема, каталог export призначений для зберігання згенерованих графічних зображень з графіками оцінок моделей, каталог venv містить конфігураційні налаштування робочого оточення Anaconda для прискорення індексації проекту середовищем розробки, інші файли з програмною реалізацією, розміткою графічного інтерфейсу і набори даних розташовані в кореневому каталозі проекту. З метою прискорення деплою проекту менеджером pip передбачені файли опису залежностей pipfile та pipfile.lock Ієрархічна структура вкладеності основних віджетів розробленого інтерфейсу системи наведено на рис.2. Для додаткового угруповання елементів управління процесом обробки даних використовуються контейнери groupBox, що дозволяє створити зв'язність основних налаштувань атрибутів, що відповідають вкладеним віджетам.
Рис. 2. Ієрархічна структура вкладеності основних віджетів розробленого інтерфейсу системи
інформаційний прогнозування результат спортивний
В рамках програми передбачено 3 окремі види моделей, логістична регрессія, випадковий ліс та штучна нейронна мережа (багатошаровий перцептрон). Клас app.py, призначений для реалізації основного функціоналу з побудови моделей та обробки даних, ключовими методами є:
- _file_selection, реалізує вибір файлу даних;
- log_file_selection, реалізує вибір файлу логів для збереження результатів навчання;
- _log_save, реалізує збереження лога;
- _train_button_click, реалізує запуск процесу навчання сконфігурованих моделей;
- _create_ranking_graphs, реалізує створення оціночних графіків щодо навчання моделей;
- _draw_dnn_graphs, реалізує малювання графіків на формі у відповідних віджетах;
- _clear_layout, реалізує очищення виведених даних на формах;
- _check_if_can_train, реалізує перевірку виняткових ситуацій щодо можливостей навчання моделей;
- _create_comparison_table, реалізує процес складання порівняльної таблиці при обробці даних;
- _get_selected_models, реалізує процес передачі обраних моделей із переліку на вхід конструктора зі створення моделей;
- _predict_custom, реалізує процес прогнозування вихідного значення параметра;
- _collect_model_settings, реалізує отримання та обробку налаштувань моделей;
- _setup_elements, реалізує процес ініціалізації елементів форми.
Після запуску програми відкривається головна форма, на якій розташовані відповідні віджети для обробки даних. Для зручності користувача дана форма структурно розділена на 4 блоки: вибору та завантаження файлу, відображення даних у табличному вигляді, вибору моделей та налаштування їх гіперпараметрів для навчання (рис.3).
Рис. 3. Головне вікно запущеної системи
Після натискання на кнопку "Select file" викликається вікно вибору набору даних для імпорту в систему, в якому користувач повинен вказати файл з даними, що підтримується форматом *.csv.
Після вибору файлу та натискання на кнопку «Відкрити» відбувається завантаження шляху до файлу в текстове поле та відображення завантажених даних до таблиці. Через те, що записів може бути багато передбачений вертикальний скролінг за таблицею.
Висновки
У явно оптимістичних наборах введених даних модель нейромережі показує найвищі шанси перемоги, а найбільш песимістичних - низькі. У цьому найбільше відхилення має модель випадкового лісу, а логістичної регресії характеру велика «оптимістичність» у разі низьких значень вхідних наборів даних. Це дозволяє зробити висновок про більшу точність та узагальнюючу здатність у моделей штучних нейронних мереж.
Список використаних джерел
[1] Пальмов, С.В. (2017): Інтелектуальний аналіз даних.
[2] Крайванова, В.А. (2012): Олімпіадне програмування як ефективний інструмент підготовки професійних програмістів. Вісник Київського державного університету. Серія: Інформаційні технології. (4), 51 -56.
[3] Попов, А.І. (2012): Методика підготовки студентів до командного чемпіонату світу із програмування. Вісник Харківського державного технічного університету. (3), 762-766.
[4] Голенков, В.В. (2016): Традиційні та інтелектуальні інформаційні технології.
Размещено на Allbest.ru
Подобные документы
Аналіз предметної області та відомих реалізацій гри 2048. Універсальна мова моделювання UML в процесі проектування гри. Розробка алгоритмів функціонування модулів гри "2048". Оператори мови програмування Python. Особливості середовища Visual Studio.
курсовая работа [1,2 M], добавлен 17.02.2021Розгляд особливостей мови програмування С++: основні можливості, характеристика функцій. Аналіз файлів з вхідними даними. Використання похідних класів як ефективний засіб об’єктно-орієнтованого програмування. Способи роздруківки графічного вирішення.
курсовая работа [510,9 K], добавлен 14.03.2013Об'єктно-орієнтована мова Python - сучасна мова програмування, проста у вивченні та використанні. Наявність повної стандартної бібліотеки. Середовища програмування на Python. Механізм функціонування інтерпретатора. Колекції даних, комбіновані оператори.
презентация [753,2 K], добавлен 06.02.2014Аналіз особливостей мови програмування Java та середовища Android Studio. Розробка програмного забезпечення для якісного та ефективного вивчення іноземних слів. Побудова базових алгоритмів і структури даних. Вибір мови програмування, реалізація програми.
курсовая работа [335,3 K], добавлен 11.01.2015Об’єктно-орієнтоване програмування мовою С++. Основні принципи об’єктно-орієнтованого програмування. Розробка класів з використанням технології візуального програмування. Розробка класу classProgressBar. Базовий клас font. Методи тестування програми.
курсовая работа [211,3 K], добавлен 19.08.2010Аналіз навігаційних технологій у сучасних AVL системах. Структура системи і вимоги до апаратного забезпечення, розробка алгоритмів функціонування окремих програмних модулів. Вибір мови програмування і СУБД. Тестовий варіант програмного забезпечення.
дипломная работа [1,8 M], добавлен 17.12.2015Визначення поняття автоматизації та інформаційної технології. Вибір мови програмування, аналіз бібліотеки класів та системи масового обслуговування. Реалізація інтерфейсу програми Visual C# 2010 Express. Діаграма класів до основних функцій программи.
курсовая работа [1,5 M], добавлен 28.04.2012Програма на мові програмування С++. Аналіз стану технологій програмування та обґрунтування теми. Розробка програми виконання завдання, методу вирішення задачі. Робота з файлами, обробка числової інформації і робота з графікою. Розробка програми меню.
курсовая работа [41,0 K], добавлен 17.02.2009Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.
курсовая работа [991,4 K], добавлен 06.08.2013Широкі можливості по використанню комп'ютерних навчальних систем. Розробка навчальної системи мультимедійного посібника з дисципліни "Інформатика і ОТ" на тему "Особливості мови програмування С++. Вказівники". Вимоги до розробки навчальної програми.
курсовая работа [2,9 M], добавлен 23.11.2010