Прищепа Володимир Володимирович

Факультет компю'терних наук і технологій

Кафедра компю'терної інженерії

Спеціальність "Компю'терні системи та мережі"

Дослідження та розробка оптимальних запитів при вибірці багатозв'язаних даних великих обсягів в реляційних базах даних. Розробка АРМ "Навантаження викладача" в рамках АСК ДонНТУ

Науковий керівник к.т.н., доц. Краснокутський Володимир Олексійович

Russian flag
Ukrainian flag
Great Britain flag
Реферат по темі магістерської роботи

Зміст

  1. Цілі та задачі
  2. Актуальність і мотивація
  3. Наукова новизна
  4. Плановані практичні результати
  5. Огляд досліджень і розробок за темою
  6. Висновок
  7. Список використаної літератури

Цілі та задачі

Мета магістерської роботи полягає в розробці частини програмного комплексу по автоматизації формування навантаження ВНЗ, а саме - автоматизація формування навантаження викладачів.

Формування навантаження виконується послідовно і складається з наступних етапів:

  • формування навантаження кафедр;
  • формування навантаження викладачів;
  • формування розкладу занять.

Робота ведеться командою з трьох розробників. Командним завданням є проектування комплексу і узгодження структур даних для обміну інформацією між його модулями.

Завданням магістра є проектування і розробка окремого модуля з наданням різних наборів прав і інтерфейсів для користувачів різних груп: адміністраторів, викладачів, співробітників навчально-методичного відділу, відповідальних осіб на кафедрі.

Актуальність і мотивація

Формування навантаження є трудомістким завданням, що вимагає великих затрат часу. Весь процес, від початку - складання навчальних планів, до кінця - затвердження навантаження, займає кілька місяців. Всі дані для документів, звітів і зведень формуються вручну, що спричиняє велику кількість помилок, пов'язаних з людським фактором, їх пошук і виправлення займає істотну частину загального часу.

Недоліками схеми ручного розподілу навчального навантаження на кафедрах є:

  • низька гнучкість методу;
  • висока складність і трудомісткість процесу розподілу;
  • висока ймовірність помилки при розрахунках;
  • складність перевірки результатів розрахунку;
  • відсутність засобів захисту інформації;
  • відсутність механізмів організації спільного доступу до результатів [10].

Наукова новизна

На початку розробки передбачалося, що модуль формування навантаження викладачів стане програмним інтерфейсом, який буде допомагати людині розподіляти дисципліни між викладачами кафедри. При пошуку інформації по темі роботи було виявлено, що технології штучного інтелекту не застосовувалися раніше для такого завдання. Було запропоновано розробити і використовувати інтелектуальну систему підтримки прийняття рішень (СППР). Ідея в тому, що система повинна давати рекомендації при розподілі навантаження між викладачами кафедри, аналізуючи їх безпосередні заявки до початку розподілу і такі фактори як вчений ступінь, звання, досвід роботи, вік та інші.

Для аналізу і прийняття рішень в СППР використовуються різні методи:

  • інформаційний пошук (information retrieval) - це процес пошуку неструктурованої документальної інформації, що задовольняє інформаційні потреби. Як видно з визначення, цей метод використовується для СППР, які працюють з уже наявним обсягом даних. Це означає, що даний метод не підходить для описаної задачі;
  • інтелектуальний аналіз даних (data mining) - це збірна назва, що використовується для позначення сукупності методів виявлення в даних раніше невідомих, нетривіальних, практично корисних і доступних інтерпретацій знань, необхідних для прийняття рішень в різних сферах людської діяльності. Цей метод також заснований на обробці заздалегідь наявного обсягу інформації;
  • міркування на основі прецедентів - метод з області експертних систем, заснований на аналізі раніше відомих прецедентів і формування рішення на основі їх аналізу;
  • генетичний алгоритм - це евристичний алгоритм пошуку, який використовується для вирішення завдань оптимізації та моделювання шляхом випадкового підбору, комбінування і варіації шуканих параметрів з використанням механізмів, аналогічних природному відбору в природі;
  • штучна нейронна мережа - це математична модель, а також її програмна або апаратна реалізація, побудована за принципом організації та функціонування біологічних нейронних мереж. Нейронні мережі не програмуються, вони навчаються.

У разі, якщо матиме місце некоректний результат, то людина, що відповідає за процес розподілу, зможе корегувати результати роботи системи. Звідси випливає, що необхідна можливість навчання системи, щоб виключити повторення помилок при наступному її використанні.

З описаних вище методів, властивістю самонавчання володіє лише штучна нейронна мережа. Можливість навчання - одна з головних переваг нейронних мереж перед традиційними алгоритмами. Навчання полягає в знаходженні коефіцієнтів зв'язків між нейронами. У процесі навчання нейронна мережа здатна виявляти складні залежності між вхідними даними і вихідними, а також виконувати узагальнення. Це означає, що в разі успішного навчання мережа зможе повернути вірний результат на підставі даних, які були відсутні в навчальній вибірці, а також неповних і / або "зашумленних", частково спотворених даних [9].

Взявши до уваги все перераховане вище, можна зробити висновок, що найбільш придатною реалізацією системи для вирішення поставленого завдання, буде система, заснована на штучної нейронної мережі.

За допомогою ШНМ вирішуються широке коло завдань:

  • розпізнавання образів і класифікація;
  • кластеризація;
  • прогнозування;
  • апроксимація;
  • аналіз даних;
  • прийняття рішень і управління.

У всіх, описаних вище, класах завдань на практиці успішно застосовуються персептрони (рис. 1) - це одна з перших моделей нейронної мережі, запропонована Френком Розенблаттом в 1957 році [4]. Персептрон має високий ступінь універсальності, успішно навчається і може вирішувати широке коло складних завдань.

Описана задача, відноситься до класу задач прийняття рішень. При її вирішенні немає необхідності використовувати складні моделі нейронних мереж, таких як мережа Елмана, яка використовується для вирішення завдань в реальному часі, наприклад, управління рухомим об'єктом.

Рисунок 1 – Двухслойный персептрон с n входами, скрытым слоем из a нейронов и r выходами

Рисунок 1 – Двошаровий персептрон з n входами, прихованим шаром з a нейронів і r виходами

На (рис. 1) зображена класична структура персептрона. Набір вхідних даних - вектор X, результат - вектор Y, S-layer (від англ. Sensor) - входи мережі, їх кількість залежить від розв'язуваної задачі, A-layer (від англ. Association) - асоціативний або прихований шар, вибір необхідної кількості нейронів цього шару є основним завданням проектування нейронної мережі, R-layer (від англ. reaction) - вихідний шар, або шар реагування, кількість виходів мережі залежить від конкретного завдання. Кожен чутливий елемент S-шару пов'язаний з кожним елементом A-шару синапсами (міжнейронних зв'язків), wan - окремо взятий синапс з безлічі між шарами S і A, аналогічним чином відбувається комунікація нейронів між шарами A і R.

Персептрон може бути і одношаровим (якщо прибрати шар A і сенсори підключити до вихідного прошарку), прихованих же шарів може бути декілька, на практиці застосовуються мережі з одним, або двома прихованими шарами.

Персептрон був відкритий в одношаровому вигляді, така структура дозволяла дуже просто його навчати за допомогою правил Хебба і дельта-правила формули (1) і (2), але з його допомогою вирішувалося вузьке коло завдань [4].

Formula 1 (1)

Formula 2 (2)

Формула (1) описує зміну вагових коефіцієнтів при навчанні мережі з використанням правил Хебба, в ній використовуються наступні позначення:

  • Δwij – зміна вагового коефіцієнта відповідного синапсу;
  • δi – помилка i-го виходу мережі;
  • η – коефіцієнт швидкості навчання;
  • r – кількість виходів мережі;
  • n – кількість входів мережі.

Формула (2) описує обчислення помилки виходу мережі (дельта-правило), в ній використовуються наступні позначення:

  • δi – помилка i-го виходу мережі;
  • ei – очікуване значення виходу мережі (expected);
  • yi – фактичне значення виходу;
  • r – кількість виходів мережі.

Побудова багатошарових мереж різко розширювала коло вирішуваних завдань, але вставала проблема їх навчання. Навчання одношарового персептрона проходило шляхом подачі вхідних впливів і обчислення похибки на виході (дельта-правило), після чого відбувалася корегування вагових коефіцієнтів за правилами Хебба. Цей простий і елегантний метод неможливо застосувати до прихованих шарів мережі, так як неможливо обчислити помилку, не знаючи які значення вихідних сигналів прихованого шару є правильними [2].

Ефективним способом навчання багатошарових персептронов є алгоритм зворотного поширення помилки [1]. На кожній ітерації алгоритму зворотного поширення вагові коефіцієнти нейронної мережі модифікуються так, щоб поліпшити рішення одного прикладу. Таким чином, в процесі навчання циклічно вирішуються однокритеріальних завдання оптимізації [7]. Ідея полягає в тому, щоб помилка від виходів мережі поширювалася в зворотному напрямку до входів і враховувалася при зміні вагових коефіцієнтів [8]. Математично це описано в формулі (3), похибка вихідних сигналів прихованих шарів виражається через добуток суми помилок вихідного шару і вагових коефіцієнтів відповідних синапсів [2].

Formula 3 (3)

Використовуючи формули (1) і (2), підставивши (3) в (2), маємо для прихованого шару [2]:

Formula 4 (4)

Formula 5 (5)

Позначення в формулах (3), (4), (5) мають таке ж значення, що і в формулах (1), (2).

Тобто, метод навчання багатошарових мереж за алгоритмом зворотного поширення помилки є модифікацією методу навчання одношарового персептрона, що враховує особливості архітектури багатошарової мережі.

Рисунок 2 – Обучение персептрона методом обратного распространения ошибки

Рисунок 2 – Навчання персептрона методом зворотного поширення помилки
(анімація: 7 кадрів, 10 циклів повторення, розмір 509x540, 138 КБ)

ШНМ класифікуються за такими параметрами:

  • тип вхідної інформації:
    • аналогова (вхід ІНС приймає інформацію в формі чисел);
    • цифрова (вхід ІНС приймає інформацію в двійковому вигляді);
  • спосіб навчання:
    • навчання з учителем (Проводиться на основі набору вихідних даних і коректних результатів для них. Правильно спроектована і навчена мережа має властивість узагальнення, що означає коректну реакцію на набори вхідних даних, яких не було в навчальній вибірці.);
    • навчання без вчителя (Придатно для завдань, в яких відомі безлічі об'єктів, і потрібно виявити внутрішні взаємозв'язки, залежності, закономірності, що існують між ними, тобто за відсутності правильних відповідей.);
    • навчання з підкріпленням (Окремий випадок навчання з учителем, але вчителем виступає певне середовище, або її модель, вона реагує на прийняті рішення, формуючи сигнали підкріплення.);
  • за характером налаштування синапсів:
    • з фіксованими зв'язками (вагові коефіцієнти константні);
    • з динамічними зв'язками (в процесі навчання відбувається настройка вагових коефіцієнтів зв'язків між нейронами) [9].

В рамках розв'язуваної задачі інформація про викладача і дисципліни може бути представлена в різних видах (як в булевому, так і в числовому). За типом вхідної інформації проектована ІНС аналого-цифрова [3]. Навчання мережі базується на підставі вибірки за останні роки, це спосіб навчання з учителем. Так як взаємозв'язок між наборами вхідних даних і вихідних невідома, то перед навчанням вагові коефіцієнти необхідно задати випадковими малими значеннями. Результатом навчання має стати мережа зі значеннями вагових коефіцієнтів, які забезпечать коректний вихідний вектор при певному вхідному. Дану мережу можна класифікувати як мережа з динамічними зв'язками.

Плановані практичні результати

Результатом роботи стане система підтримки прийняття рішень, заснована на навченої штучної нейронної мережі. Після закінчення процесу навчання для кожного синапсу мережі встановиться деякий ваговий коефіцієнт. Величину вагового коефіцієнта можна розцінювати як рівень впливу того чи іншого вхідного параметра на результат роботи окремих нейронів і мережі в цілому. Завдяки властивості узагальнення властивому штучних нейронних мереж після успішного навчання, можливе проведення експерименту для виявлення значущості окремих параметрів на результат. У робочому режимі на вхід подається навчальний вектор з одним зміненим параметром, величина похибки буде відображати вплив відповідного параметра на результат [5]. Ці дані дозволять нам виділити з безлічі використовуваних параметрів найбільш важливі для розподіляється дисципліни і найбільш важливі характеристики викладачів при формуванні навантаження.

Огляд досліджень і розробок по темі

В інтернет зустрічається інформація про програмні продукти, які за своєю суттю є аналогами окремих модулів, що функціонують у складі АСК ДонНТУ. Це проекти різних розробників і дослідників, які створювалися для вирішення своїх певних завдань і наукових досліджень в області побудови навчального процесу, формування навантаження в навчальних закладах і т.д. Найчастіше зустрічаються програми-аналоги контингенту студентів, формування розкладу, приймальні комісії, навчальних планів. Всі вони виконані різними авторами і використовують різний підхід в зберіганні, передачі і обробки даних, що не дозволяє використовувати їх разом. Всі ці продукти були створені в навчальних цілях.

У 2006 році було проведено дослідження по темі формування навантаження викладачів кафедри [6]. В роботі розглянуті моделі та алгоритми підтримки прийняття рішень при розподілі навчального навантаження. Запропоновано функціональна і математична моделі. Розглянуто узагальнена схема рішення задачі прийняття рішень при розподілі навантаження. Подальший пошук робіт даних авторів не дав результатів по даній темі, їх дослідження в області формування навчального процесу були завершені цією роботою.

Уваги заслуговує програмний комплекс для навчальних закладів від лабораторії математичного моделювання та інформаційних систем (ММіІС). Розробниками комплексу переслідувалася мета створити універсальний продукт для широкого спектра навчальних закладів, яку вони досягли за їхніми запевненнями.

Склад і назва модулів комплексу, зазначені на сайті розробника, дозволяють судити про те, що їх повний набір забезпечує автоматизацію всіх процесів функціонування сучасного навчального закладу. Це прийом абітурієнтів на конкурсній основі за допомогою модуля приймальної комісії, формування навчальних планів, графіків, навантаження, розкладу, облік успішності, видача дипломів.

Головним недоліком є дуже велика вартість даного продукту (сумарна вартість всіх модулів становить приблизно 300 тисяч рублів), з закритим кодом, і, відповідно, неможливість оперативного внесення правок у відповідності зі зміненими вимогами. Зміни виконуються через технічну підтримку, що відбувається дуже довго.

Висновок

Визначено мету і завдання магістерської роботи. Для розробки програмного комплексу автоматизації формування навантаження кафедри було прийнято рішення використовувати систему підтримки прийняття рішень, засновану на штучній нейронній мережі. Проведено огляд подібних розробок, який показав, що технології штучного інтелекту раніше не застосовувалися для вирішення завдання формування навантаження.

Список використаної літератури

  1. Джонс М.Т. Программирование искусственного интеллекта в приложениях / М. Тим Джонс; Пер. с англ. Осипов А.И. – М.: ДМК Пресс, 2004. – 312 с.
  2. Ясницкий Л.Н. Введение в искусственный интеллект: учебное пособие для студ. высш. учеб. заведений / Л.Н. Ясницкий – 2-е изд., испр. – М.: Издательский центр «Академия», 2008. – 176с.
  3. Ясницкий Л.Н. Использование методов искусственного интеллекта в изучении личности серийных убийц / Л.Н. Ясницкий, С.В. Ваулева, Д.Н. Сафонова, Ф.М. Черепанов // Криминологический журнал Байкальского государственного университета экономики и права. – 2015. – Т. 9, № 3. – С. 423-430.
  4. Хайкин С. Нейронные сети: полный курс, 2-е издание. : Пер. с англ. – М. : Издательский дом «Вильямс», 2006. – 1014 с.
  5. Ясницкий Л.Н., Михалева Ю.А., Черепанов Ф.М. Возможности методов искусственного интеллекта для выявления и использования новых знаний на примере задачи управления персоналом // International Journal of Unconventional Science. Журнал Формирующихся Направлений Науки. 2014. Вып. 6; URL: http://www.unconv-science.org/n6/yasnitsky/
  6. Султанова С.Н., Тархов С.В. Модели и алгоритмы поддержки принятия решений при распределении учебной нагрузки преподавателей // Вестник УГАТУ. Уфа: УГАТУ, 2006 T. 7, №3 (16). C. 107-114; URL: http://cyberleninka.ru/article/n/modeli-i-algoritmy-podderzhki-prinyatiya-resheniy-pri-raspredelenii-uchebnoy-nagruzki-prepodavateley
  7. Википедия свободная энциклопедия. Метод обратного распространения ошибки // Википедия. [Эелектронный ресурс] – Режим доступа: https://ru.wikipedia.org/wiki/Метод_обратного_распространения_ошибки
  8. Пользователь Noonv. Нейронная сеть – обучение ИНС с помощью алгоритма обратного распространения. // RoboCraft [Электронный ресурс] – Режим доступа: http://robocraft.ru/blog/algorithm/560.html
  9. Википедия свободная энциклопедия. Искусственная нейронная сеть // Википедия. [Эелектронный ресурс] – Режим доступа: https://ru.wikipedia.org/wiki/Искусственная_нейронная_сеть
  10. Калюжный Н.В. Анализ процесса распределения учебной нагрузки профессорско-преподавательского состава на кафедрах // Science Time. – 2015. – № 6 (18) / 2015. – С. 199-202. URL: http://cyberleninka.ru/article/n/analiz-protsessa-raspredeleniya-uchebnoy-nagruzki-professorsko-prepodavatelskogo-sostava-na-kafedrah

Важливе зауваження

При написанні даного реферата-огляду за темою, магістерська робота ще не завершена. Захист роботи відбудеться влітку 2017 року, повний текст можна буде отримати у автора або керівника після її захисту.