ИССЛЕДОВАНИЕ ВЛИЯНИЯ РАСПИСАНИЯ НА РАСПРОСТРАНЕНИЕ КОРОНАВИРУСНОЙ ИНФЕКЦИИ В УНИВЕРСИТЕТЕ

Горавнева Татьяна Сергеевна1, Ситникова Ксения Андреевна2, Красиков Роман Васильевич3
1Санкт-Петербургский государственный технический университет, кандидат технических наук, доцент кафедры вычислительной техники и информационных технологий
2Санкт-Петербургский государственный технический университет, ассистент кафедры управления судостроительным производством
3Санкт-Петербургский государственный технический университет, магистрант кафедры вычислительной техники и информационных технологий

Аннотация
Целью работы является моделирование распространения коронавирусной инфекции в аудиториях университета для различных групп обучающихся и дней недели. Разработка приложения и сравнительный анализ зараженных аудиторий является актуальной на сегодняшний день темой исследования, с помощью которого выявляется влияние расписания занятий на процесс возможного дальнейшего заражения. Для решения задачи был разработан оригинальный метод автоматического получения данных из представленного на сайте университета расписания занятий по группам и дням недели. Эта информация была помещена в структурированную базу данных, как основу для дальнейшего анализа в реальном режиме времени. Сформулированные требования и правила ВОЗ в части распространения инфекции были положены в основу разработки алгоритма выявления цепочки возможных заражений по аудиториям. По полученным результатам далее выполнена визуализация в виде уникальной интерактивной карты на поэтажных планах университета. Программная реализация сравнительного анализа в графическом виде позволяет определить влияние расписания на процесс инфицирования аудиторий университета. Благодаря анализу, можно увидеть, для каких групп и по каким дням недели было большое количество инфицированных аудиторий, вследствие чего можно сделать вывод о неоптимальном расписании занятий.

Ключевые слова: , , , ,


Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Горавнева Т.С., Ситникова К.А., Красиков Р.В. Исследование влияния расписания на распространение коронавирусной инфекции в университете // Современные научные исследования и инновации. 2023. № 3 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2023/03/100150 (дата обращения: 18.04.2024).

Введение

В последние годы пандемия коронавирусной инфекции внесла многочисленные изменения в построение образовательного процесса университетов, поскольку появились новые требования обеспечения безопасности обучающихся и работников университета. Несмотря на различные оперативные меры, время от времени происходят случаи заболевания, что приводит к отправке зараженной группы обучающихся на карантин. Однако, когда больной студент или работник был на занятиях, он мог оставить инфекцию в аудитории, заразить преподавателя и другие группы, с которыми он находился в одном помещении. При этом учет возможного заражения пространства в аудиториях никогда не проводился. Поэтому важно вовремя отследить полную цепочку распространения инфекции, а не только брать под строгое наблюдение исключительно больного пациента. В связи с этим разработка приложения для учета распространения инфекции в аудиториях университета, анализ и выработка рекомендаций по составлению расписания являются в настоящее время важными и актуальными задачами.

Постановка задачи и требования к разработке

Для решения задачи исследования влияния расписания занятий на процесс распространения вируса был сформулирован ряд требований по разработке программного комплекса с учетом рекомендаций ВОЗ. Были сделаны следующие допущения: аудитории не обрабатываются антисептическими средствами после проведения занятий; аудитория, в которую приходит зараженный согласно расписанию занятий, становится инфицированной еще на 2 дня; каждый преподаватель или студент группы, который имел общие очные занятия в одной аудитории с зараженным, также становится зараженным; каждый преподаватель или студент группы, который находился в инфицированной аудитории, также становится зараженным.

Общая постановка данной сложной задачи тогда сводится к следующим моментам:

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

Схема взаимодействия модулей разработанного приложения представлена на рис.1.


Рис. 1. Схема модулей приложения

Список основных программных средств разработки: язык программирования C#, ASP.Net MVC Framework, сервер баз данных Microsoft SQL Server, библиотека AngleSharp, технология ADO.Net EntityFramework, среда Microsoft Visual Studio [1].

Некоторые промежуточные результаты решения данной задачи были изложены на конференции Всероссийского фестиваля «НАУКА 0+» в СПБГМТУ [2], а также на региональной конференции «Современные технологии в теории и практике программирования» [3].

Разработка и заполнение базы данных расписания

Основными исходными данными для моделирования распространения вируса являются расписание занятий обучающихся университета и информация о зараженном студенте или преподавателе. Расписание представляется в виде базы данных с несколькими связанными между собой таблицами (рис. 2):

  • Schedules – записи расписания каждой группы в учебные дни;
  • Groups – данные об учебных группах университета;
  • Faculties – данные о факультетах СПбГМТУ;
  • TypesOfWeek – виды недель в учебном расписании;
  • Lecturers – список преподавателей;
  • Auditorias – список аудиторий университета;
  • DaysOfWeek – данные о днях недели;
  • Times – данные о времени проведения занятий;
  • Disciplines – список дисциплин.


Рис. 2. Схема взаимодействия таблиц базы данных расписания

Для заполнения и сохранения информации в поля таблиц базы данных предусмотрены два варианта действий. Первый вариант представляет собой обычную технологию ввода в заранее подготовленные поля данных вручную и сохранение их в таблицах данных. Это достаточно трудоемкий процесс, поскольку необходимо ввести все данные по группам обучающихся в разных корпусах университета за семестр обучения. Кроме этого, в процессе ввода можно ошибиться, вследствие чего полученные в результате расчета данные будут неадекватны текущей ситуации. Однако, такой прием позволяет использовать разработанный программный комплекс не только в университете СПбГМТУ, но и в других учебных заведениях страны, что делает разработку универсальной.

Уникальность другого варианта ввода данных заключается в том, что можно заполнение всех данных сделать автоматически путем считывания значений расписания (парсинга) с сайта университета СПбГМТУ (www.smtu.ru). Программа-парсер может запускаться многократно, работая в режиме реального времени и получая обновленную информацию.

За обеспечение таблиц базы данных информацией с сайта отвечает библиотека AngleSharp. Работа парсера осуществляется согласно алгоритму, фрагмент которого показан на рис. 3:

1) Средствами системной библиотеки System.Net выполняется запрос к коду ресурса (URI) и предоставляется ответ на него. Считывая поток данных из интернет-ресурса, формируется строковый ответ с сайта;

2) Через объект класса HtmlParser библиотеки AngleSharp вызывается метод ParseDocument, который разбивает строковый ответ от GET запроса и преобразует его в DOM;

3) Получение необходимых данных из DOM-элемента с помощью метода QuerySelectorAll и css-селекторов. Свойство TextContent в конце запроса позволяет преобразовать полученные данные в строковый эквивалент.


Рис. 3. Фрагмент кода работы парсера

Моделирование процесса распространения коронавирусной инфекции

После сохранения расписания в базе данных выполняется аналитическое моделирование распространения заражения по аудиториям университета. Входной информацией для работы приложения выступают нулевой пациент (номер группы или преподаватель) и дата заболевания.

Рассмотрим алгоритм процесса моделирования. После проверки входных данных на наличие пустых значений начинается работа с расписанием, сохраненной в базе данных, вследствие чего добавляются в список зараженных аудиторий характеристики нулевого пациента, найденные в базе данных.

Далее проводится ежедневный мониторинг распространения инфекции для добавления информации в список зараженных аудиторий, групп и преподавателей. Для этого сначала выполняется проверка о выходе нулевого пациента в текущий день на карантин, так как в этом случае он не становится распространителем инфекции. Из базы данных отбираются характеристики текущего дня (день недели, вид недели) и для текущего дня последовательно проверяются занятия в расписании.

В соответствии со сделанными в постановке задачи допущениями выполняется выбор группы и занятые группой аудитории по расписанию, которые заносятся в список зараженных аудиторий. Аналогично определяются зараженные преподаватели и распространение ими инфекции в новых аудиториях.

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

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

Таким образом формируются результирующие данные об аудиториях, которые в дальнейшем будут использоваться для визуализации на интерактивных картах поэтажных планов университета, а также будут представлены в графическом виде графиками и диаграммами. В базе данных обновляются и сохраняются id-идентификаторы зараженных аудиторий в конце работы вычислительного алгоритма.

Эффективность и точность разработанного оригинального метода моделирования были апробированы на ряде примеров реального расписания университета и один из результатов проверки проиллюстрирован на рис. 4 (обозначения: синий прямоугольник – группа нулевого пациента, красные прямоугольники – зараженные аудитории, синие овалы – группы в зараженных аудиториях, лиловые овалы – преподаватели групп).


Рис. 4. Схема распространения инфекции от группы 20490

Разработка интерактивной карты

Для разработки интерфейса интерактивной карты зараженных аудиторий были использованы следующие средства web-программирования: язык гипертекстовой разметки HTML5 и синтаксис разметки Razor для внедрения кода с сервера; язык разметки масштабируемой векторной графики SVG; каскадные таблицы стилей CSS3 для оформления дизайна; скриптовый язык Интернет-программирования JavaScript.

Интерактивная карта программным способом строится с помощью уникального алгоритма на основе фотографий или чертежей поэтажных планов корпусов университета.

Сначала в графическом редакторе на основе фотографий планов университета создается изображение, демонстрирующее карту этажа университета. Далее полученное изображение загружается в графический редактор по работе c векторной графикой. Для загруженного изображения берется значение атрибута SVG-элемента ViewBox, отвечающее за расположение элементов, и размеры окна отображения SVG.

За отрисовку каждой аудитории внутри SVG отвечает элемент Path. Внутри него нужно определить значение атрибута d, которое определяет путь для отрисовки. Чтобы получить значение атрибута, в программе векторной графики необходимо с помощью сплайна поверх каждой аудитории нарисовать свой контур, который будет совпадать с контуром аудитории. Для полученного контура берется значение d и вставляется в значение атрибута d тега Path в разметке представления интерактивной карты. Таким образом, для выполнения связи со всеми аудиториями на карте требуется отрисовать каждый контур отдельно и использовать полученное значение атрибута d в своем приложении. В конечном итоге были составлены контуры 233 аудиторий корпуса университета.

Каждой аудитории далее назначается свой цветовой индикатор, определяющий статус заражения, который имеет аудитория. Каждый градиент имеет уникальный id, название которого совпадает с значением свойства Status, чтобы получить динамичное изменение расцветки аудиторий на интерактивной карте с помощью синтаксиса Razor. Поиск нужной аудитории происходит путем LINQ-запроса через поиск объекта аудитории по названию. Полученное значение свойства Status вставляется в HTML-разметку и в результате заливка элемента Path осуществляется согласно определению градиента, имеющий соответствующий id.

Для того, чтобы элемент Path был интерактивным и при нажатии загружал определенную страницу, используется гиперссылка, передающая значение nameAud, содержащее название отображаемой аудитории.

В процессе работы были получены интерактивные карты на поэтажных планах всех пяти этажей корпуса У университета, демонстрация которых представлена на рис. 5.


Рис. 5. Интерактивные карты для 3-го, 4-го, 5-го этажей университета

Сравнительный анализ распространения коронавируса

Целью дальнейшей работы являлся анализ распространения коронавирусной инфекции в аудиториях университета по текущему расписанию занятий для различных групп и дней недели. Благодаря анализу, можно увидеть, для каких групп и по каким дням недели было большое количество заражений, вследствие чего можно сделать вывод об оптимальном/неоптимальном расписании. Выводы и рекомендации данного научно-практического исследования могут привести к переработке расписания занятий, чтобы уменьшить распространение коронавируса в аудиториях университета.

В ходе такого исследования были решены следующие задачи: разработан модуль сравнительного анализа зараженных аудиторий и выполнен вывод результатов анализа в графическом виде.

Работу приложения можно разделить на 3 части:

  • ввод исходных данных (курс и период времени, в течение которого проводится анализ);
  • получение данных по зараженности:

для каждой группы выбранного курса по каждому дню недели из указанного периода подсчитывались аудитории, где каждый день недели из указанного периода считался началом заражения, а в заражении учитывались 2 последующих дня (всего 3 дня, включая день начала заражения);

  • вывод результатов в графическом виде:

2 графика по группам и по дням недели, данные по максимальной и минимальной зараженности (рис. 6 – 7).

В результате анализа представленной информации можно отметить, что для большинства групп 1-го курса характерен рост заражений по мере приближения к среде, а затем спад. На основании этого можно сделать вывод, что на промежуток времени среда – пятница приходится самое большое количество заражений. Если рассмотреть предыдущие дни понедельник и вторник, то количество заражений в них меньше, при этом эти дни включают в цепочку инфицирования также и среду, из чего можно сделать вывод, что на промежуток времени со среды по пятницу основное количество заражений приходится именно на четверг – пятницу.


Рис. 6. Результат анализа для 1-го курса по группам

Внимание заслуживает также информация в понедельник для 1-го курса. На линейном графике (рис. 7) видно, что на промежутке с понедельника по среду имеется большое количество заражений, при этом на промежутке со вторника по четверг существенно меньше. Это означает, что когда зараженный студент заболевает в понедельник, то это приводит к наибольшему распространению инфекции по аудиториям.


Рис. 7. Результат анализа для 1-го курса по дням недели

Если провести аналогичный анализ для групп 2-го курса (рис. 8 – 9), то наиболее проблемной является среда, количества зараженностей в которой значительно превосходят значения в другие дни недели. Понедельник становится минимально инфицированным, поскольку для 2-го курса в этот день проводятся занятия на военном факультете в другом корпусе университета (соответственно, он не учитывается в расчете). Зато резко возрастает нагрузка на другие аудитории, причем максимальное количество 80 в среду для 2-го курса существенно превосходит максимум 1-го курса (55) в понедельник.

Анализ данных, представленных на рис. 10 – 11 (3-й и 4-й курсы обучения), позволяет сделать вывод о перегруженности различных аудиторий в группах с номером 71, так как количество зараженности значительно увеличено по сравнению с другими группами курса. Таким образом получается, что группы/преподаватели в течение одного дня перемещаются из одной аудитории в другую много раз, увеличивая цепочку заражений.


Рис. 8. Результат анализа для 2-го курса по группам


Рис. 9. Результат анализа для 2-го курса по дням


Рис. 10. Результат анализа для 3-го курса по дням


Рис. 11. Результат анализа для 4-го курса по дням недели

Заключение

Сравнительный анализ, проведенный на основе полученных данных моделирования распространения коронавируса, позволил определить влияние расписания университета на появление потенциально опасных по инфицированию аудиторий. Из графически представленной информации можно получить, в какие дни и для каких групп расписание занятий является неоптимизированным и слишком загруженным по аудиториям. Данный анализ поможет при разработке рекомендаций по его улучшению и дальнейшему решению задачи оптимизации.


Библиографический список
  1. Фримен А. ASP .NET MVC 5 с примерами на C# 5.0 для профессионалов // Вильямс: 2013. – 688 с.
  2. Ситникова К.А., Горавнева Т.С. Разработка приложения моделирования распространения коронавирусной инфекции по аудиториям университета // Неделя науки СПбГМТУ-2021: сборник докладов Всероссийского фестиваля науки «Nauka 0+». – СПб.: Изд-во СПбГМТУ, 2021.
  3. Красиков Р.В., Ситникова К.А., Горавнева Т.С. Разработка приложения и сравнительный анализ зараженных аудиторий коронавирусной инфекцией // «Современные технологии в теории и практике программирования», Сборник материалов конференции, ПОЛИТЕХ-ПРЕСС, 2022, с.87.


Количество просмотров публикации: Please wait

Все статьи автора «Горавнева Татьяна Сергеевна»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте или через форму обратной связи.

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться:
  • Регистрация