На данный момент в сфере образования происходит активное внедрение новых решений и технологий. Всё больше усилий прилагается для автоматизации процессов сдачи нормативов, проверки работ, выполненных обучающимися. С этой целью вводятся различного рода системы хранения и обработки данных, виртуальные среды дистанционного обучения и контроля.
Однако у ряда подобных систем имеется существенный недостаток. Ввиду того, что система не различает людей по каким-либо факторам, процессы тестирования проверяют всех одинаково, что несет за собой ухудшение общего КПД системы, перерасход времени использования оборудования, вследствие чего замедляется сам процесс аттестации.
В данном случае помочь справиться с негативными факторами может применение теории систем массового обслуживания. Грамотное распределение очередей заявок по обслуживающим устройствам с учётом свойств той или иной заявки, с правильным распределением времени обслуживания, может сократить, как общее количество времени на обслуживание потока заявок, так и повысить качество проведение аттестации.
Образовательный процесс, рассматриваемый в данной работе, подразумевает под собой процесс прохождения группой студентов случайной величины тестирования знаний за определённый отрезок времени, используя конечное число обслуживающих устройств. Таким образом, процесс схож с классическими задачами систем массового обслуживания, однако, в отличие от последних, в рассматриваемой задаче отсутствует явный закон, описывающий вероятности прибытия заявок в определённый момент времени. Помимо имитационной части, в систему необходимо внедрить алгоритм генерирования тестов, основанный на динамических параметрах системы. Создание данного алгоритма рассмотрим в последующих главах.
Каждый из перечисленных объектов обладает уникальными для него наборами свойств и параметров. Определим границы модели, для этого зададим логико-математическое описание моделируемой системы в соответствии с формулировкой проблемы. На входе программы необходимо определить общее время течения эксперимента, определить минимальные и максимальные значения для динамических параметров:
- Минимальное время обслуживание одной заявки;
- Минимальное время задержки заявки в очереди перед поступлением на обслуживание;
- Максимальное время обслуживание одной заявки;
- Максимальное время задержки заявки в очереди перед поступлением на обслуживание;
- Минимальное количество вопросов в генерируемом тесте;
- Минимальное количество заявок, которые могут поступить в ходе выполнения эксперимента;
- Максимальное количество заявок, которое может поступить в ходе выполнения эксперимента.
Таким образом, рассматриваемая система представляет собой процесс, графически представленный на рисунке 1
Рисунок 1 – Общая схема процесса
Ввиду наличия заявок различного типа (троечники, ударники, отличники), целесообразно разбить входящий поток на составляющие. Каналы обслуживания же, напротив, как правило, имеют приближенные характеристики и несущественно влияют на прохождение тестирования.
В качестве среды для разработки имитационной модели образовательного процесса был выбран язык программирования Python.
Для разработки программной реализации необходимо;
- Разработать архитектуру программы;
- Определить необходимые переменные, их типы и первоначальные значения;
- Описать классы и необходимые функции;
- Выбрать пакеты, необходимые для реализации;
- Выбрать среду разработки;
- Выбрать средства разработки;
- Определить, специфику вывода информации;
- Разработать макет пользовательского интерфейса.
В ходе работы, выделилась архитектура программы, представленная на рисунке 2.
Рисунок 2 – Архитектура программы
Разработка программного продукта велась средствами языка Python [1] и библиотеки SciPy. [2]
В рамках тестирования программного продукта и для определения уровня адекватности модели, необходимо оценить полученные при помощи нее данные.
В рамках первого эксперимента зададим следующие входные параметры:
- общее время эксперимента – 10 минут (600 секунд);
- число каналов обслуживания – 5;
- максимальное число заявок – 30
- минимальное время обслуживания одной заявки – 5минут (300 секунд);
- балл для допуска к тесту на оценку отлично – 60;
- балл для допуска к тесту на оценку хорошо – 50;
- балл для допуска к тесту на оценку удовлетворительно – 40;
- вероятность прибытия новой заявки – 5%.
Как и следовало ожидать, в процессе моделирования в системе возникала большая очередь заявок, в связи с малым количеством устройств обслуживания и достаточно высоким значением минимального времени обслуживания. На рисунке 3 видно, что ближе к концу моделирования в очереди находилось 14 заявок.
Рисунок 3. – Очередь заявок
В этом случае график принимает вид, представленный на рисунке 4.
Рисунок 4. – Графическое представление результатов моделирования
Также проведем эксперименты, где в качестве входных параметров установим часто используемые форматы проведения тестирования в образовательных организациях. К примеру, возьмем случай проведения тестирования группы численностью в 30 человек, на 10 компьютерах, в течение полутора часов. При этом в первом случае установим жесткое значение времени обслуживания одной заявки равное 30 минутам, в другом случае, позволим программному алгоритму задавать время на обслуживание каждой заявки.
Результаты первого эксперимента в графическом виде представлены на рисунке 5.
Рисунок 5. – Графическое представление результатов первого эксперимента.
Из диаграммы видно, что при заданных условиях обслуживания происходит большое количество потерь, связанное с высокой занятостью устройств обслуживания. При этом среднее время обслуживания составило 1768, что обуславливается заявками, не допущенными до прохождения обслуживания.
Рассмотрим диаграмму, заданную теми же условиями, но с возможностью программного регулирования времени обслуживания. Диаграмма представлена на рисунке 6.
Рисунок 6. – Графическое представление результатов второго эксперимента
На второй диаграмме заметно снижение числа потерь (первый столбец) заявок. При этом среднее время обслуживания в этом эксперименте составило 1113 секунд на заявку. При этом на заявки с большим числом вопросов отдано больше времени, что позволяет более рационально использовать время отведённое для проведения тестирования, и более качественно оценивать знания обучающихся.
Исходя из полученных результатов, можно заключить, что разработанная программная модель обладает достаточной достоверностью, и адекватностью и может быть использована для проведения имитационных экспериментов.
Библиографический список
- Электронный ресурс Документация Python // Python – Режим доступа: https://docs.python.org, свободный.
- Электронный ресурс Документация SciPy: Pylab // Github – Режим доступа: http://scipy.github.io/, свободный.