Применение алгоритмов теории расписаний при разработке медицинской информационной системы | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 28 декабря, печатный экземпляр отправим 1 января.

Опубликовать статью в журнале

Авторы: ,

Рубрика: Математика

Опубликовано в Молодой учёный №14 (118) июль-2 2016 г.

Дата публикации: 17.07.2016

Статья просмотрена: 897 раз

Библиографическое описание:

Сахаров, А. А. Применение алгоритмов теории расписаний при разработке медицинской информационной системы / А. А. Сахаров, А. В. Лапин. — Текст : непосредственный // Молодой ученый. — 2016. — № 14 (118). — С. 23-25. — URL: https://moluch.ru/archive/118/32834/ (дата обращения: 16.12.2024).



Статья описывает алгоритм автоматизированного построения расписаний, использованный при разработке специализированной информационной системы. Он основан на взвешенной SPT модели и дополнен идеями построения расписаний для многопроцессорных работ. (SPT = Shortest — processing — time sequencing — упорядочение по минимуму длительностей работ). В статье описываются условия, в которых необходимо создавать расписание, и алгоритм, позволяющий выполнить эти условия.

Ключевые слова: теория расписаний, информационные системы, алгоритмы, SPT модель

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

Описание рабочего процесса.

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

− индивидуальный прием пациента;

− групповая терапия (групповой прием);

− собрания, совещания, планерки и т. д.

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

Индивидуальный прием — это обычный прием пациента «врач-пациент». Групповой прием сложнее. Его можно описать, как отношение «врачи-пациенты». Основная идея заключается в том, что проводить групповой прием могут одновременно один или сразу два сотрудника. Поэтому при составлении индивидуальных расписаний сотрудников необходимо постоянно контролировать их согласованность. Также все другие события расписания не имеют «содержимого» на момент построения (не указывается пациент, для которого проходит прием) и поэтому между ними нет различий, а групповые приемы известны заранее, поэтому при их добавлении в расписание им приходится уделять большое внимание.

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

Основные понятия теории расписаний.

Определение: «Теория расписаний (ТР) — это раздел исследования операций, в котором строятся и анализируются математические модели календарного планирования (т. е. упорядочивания во времени) различных целенаправленных действий с учетом целевой функции и различных ограничений» [2].

Определение: Работой называется некоторое действие, которое необходимо обслужить. Работы состоят из операций — элементарных нераздельных частей. В силу того, что событие в расписании сотрудника рассматривается как неделимое, то термины операции и работы для этой задачи эквивалентны.

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

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

Обозначим — длительность выполнения работы i; — аналогично, но [i] — индекс после упорядочения; — длительность ожидания начала работы. Тогда — длительность прохождения работы i в системе.

Суммарная длительность прохождения работ в системе

Если в системе определить вес работы (), обозначающий приоритетность одной работы перед остальными, то можно определить суммарную взвешенную длительность прохождения работы:

Выбранная математическая модель называется SPT (Shortest — processing — time sequencing) — упорядочением по минимуму длительностей работ [1]. Для решения данной задачи эта модель дополняется учетом веса работы — условной единицы, обозначающей приоритет работы над остальными.

Теорема[1]: Минимальное значение суммарной взвешенной длительности прохождения (1) в системе достигается при расписании, для которого

.

Графически этот метод представлен на рис. 1. Каждый прямоугольник — работа, а его ширина — длительность, высота — вес. Суммарная взвешенная длительность является суммой площадей прямоугольников и площади под ними, поэтому для минимизации F необходимо упорядочить работы в порядке уменьшения модуля угла вектора, лежащего на диагонали прямоугольника, к горизонтальной оси. Коэффициент угла равен .

weight

Рис. 1. Геометрическое представление

Для решения проблемы групповых занятий используем теорию, описанную Brucker’ом [4]. Для решения мультипроцессорных задач (т. е. задач, требующих одновременного выполнения на нескольких процессорах) он вводит следующую модификацию начальных данных.

Пусть в системе с m процессорами задано n мультипроцессорных задач . Сопоставим задаче i множество процессоров, необходимых для её выполнения. Это множество определяет тип задачи i. Выделим типов задач и сгруппируем все задачи по этим типам [4]. Здесь под типом задачи понимается характеристика взаимно однозначная структуре порождающего множества процессоров. Тип может быть порожден как отдельным сотрудником, так и парой сотрудников.

В итоге получился набор «сущностей» (множеств, порождающих типы). Для этих «сущностей» нет требования на одновременное выполнение задачи. Есть только требования предшествования вида: групповой прием, исполняемый составной «сущностью», должен стоять после (или до) первичного приема, исполняемого одним из сотрудников, состоящим в этой «сущности». Можно использовать ту же теорию, что и в классической задаче по множеству независимых исполнителей с ограничением на последовательность выполнения.

Описание алгоритма построения расписания сотрудников.

Опишем алгоритм составления шаблона расписания на одну неделю.

Входными параметрами для алгоритма являются:

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

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

− данные о весе событий расписания.

Предполагается, что суммарная длительность работ не превышает ограничений длительности рабочего времени. Для упорядочивания применяется взвешенная SPT модель, описанная выше.

На первом этапе создаются «сущности» − пары сотрудников. Создание расписания для них сложнее, чем для отдельных сотрудников, поэтому начнем с них.

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

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

Далее каждому событию назначается доступный кабинет.

В итоге получаем расписание, не всегда оптимальное, но допустимое и близкое к оптимальному.

Реализация:

Описанный подход был реализован в многопользовательском приложении, имеющем всю необходимую функциональность. Для разработки применялись следующие инструменты: C#(.NET Framework 4.5), WPF-технология с шаблоном проектирования MVVM (см. [3]), MS SQL Server 2012 (с Entity Framework 6.1.3).

Результаты.

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

Реализован описанный алгоритм автоматизированного построения расписаний.

В процессе тестирования были настроены веса для каждого вида работ.

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

Литература:

  1. Конвей Р. В., Максвелл В. Л., Миллер Л. В. Теория расписаний / пер. с англ. Кокотушкина В. A., Михалева Д. Г., под ред. Башарина Г. П. М.: Наука, 1975.
  2. Лазарев А. А., Гафаров Е. Р. Теория расписаний. Задачи и алгоритмы. М.: МГУ, 2011.
  3. Smith J. Patterns — WPF Apps With The Model-View-ViewModel Design Pattern // MSDN Magazine. 2009. February.
  4. Brucker P. Scheduling Algorithms. // Springer Verlag, 2007.
Основные термины (генерируются автоматически): SPT, групповой прием, суммарная взвешенная длительность, задача, прием, работа, система, сотрудник, календарное планирование, медицинская информационная система.


Похожие статьи

Сравнение моделей качества программного обеспечения

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

Системный подход к выбору моделей для предсказания разрушения деталей на основе статистических данных

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

Методы и алгоритмы эффективного решения задачи маршрутизации транспорта на сетях больших размерностей

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

Аналитическое сравнение рекуррентных моделей в задаче прогнозирования динамики ценных бумаг

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

Кибернетика распределенных реестров на технологиях блокчейна

В статье автор строит модель блокчейн сети, основанной на «доказательстве работы» (PoW). Проведен математический анализ модели. Выполнено численное моделирование работы сети при различном количестве участников. Применена линейная регрессия для собран...

Подходы к визуализации вычислительных процессов

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

Разработка диспетчера параллельного исполнения задач для формирования изображения в авиатренажёре

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

Инструментарий управления производством на основе теории ограничений систем Э. Голдратта

Что такое теория ограничения? ТО — это метод управления производством, с помощью которого находится и управляется основного ограничения системы. Чтобы найти ограничение, используются инструменты ТОС, в которых подробно описывается каждый шаг, для нах...

Модификация теории социального влияния Латане для компьютерных социальных сетей

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

Использование шаблонов проектирования информационных систем

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

Похожие статьи

Сравнение моделей качества программного обеспечения

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

Системный подход к выбору моделей для предсказания разрушения деталей на основе статистических данных

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

Методы и алгоритмы эффективного решения задачи маршрутизации транспорта на сетях больших размерностей

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

Аналитическое сравнение рекуррентных моделей в задаче прогнозирования динамики ценных бумаг

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

Кибернетика распределенных реестров на технологиях блокчейна

В статье автор строит модель блокчейн сети, основанной на «доказательстве работы» (PoW). Проведен математический анализ модели. Выполнено численное моделирование работы сети при различном количестве участников. Применена линейная регрессия для собран...

Подходы к визуализации вычислительных процессов

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

Разработка диспетчера параллельного исполнения задач для формирования изображения в авиатренажёре

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

Инструментарий управления производством на основе теории ограничений систем Э. Голдратта

Что такое теория ограничения? ТО — это метод управления производством, с помощью которого находится и управляется основного ограничения системы. Чтобы найти ограничение, используются инструменты ТОС, в которых подробно описывается каждый шаг, для нах...

Модификация теории социального влияния Латане для компьютерных социальных сетей

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

Использование шаблонов проектирования информационных систем

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

Задать вопрос