Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Максимальное содержимое очереди составило 16.

Приложение 4


Введение

 

Условие задачи:

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

Смоделировать работу поликлиники в течение 8 часов. Определить число врачей, обеспечивающее невозрастание очереди и коэффициент загрузки врачей в этом режиме.

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

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

При построении модели системы использовались теоретические основы, приведенные в учебных пособиях: Советов Б.Я., Яковлев С.А. «Моделирование систем», Советов Б.Я., Яковлев С.А. «Моделирование систем. Практикум». В данной литературе приведены все необходимые данные, примеры, основные принципы моделирования.

Для построения математической модели воспользуемся формулами и примерами расчетов, рассмотренными в учебнике Вентцель Е.С. «Исследование операций».


1. Основная часть

 

Из условия задачи следует, что работа системы обслуживания больных в поликлинике построена следующим образом. Больной, приходя в поликлинику обслуживается в регистратуре. По исходным данным из условия задачи видно, что при обслуживании больного в регистратуре очереди не возникает, так как больные приходят в среднем каждые пять минут, а обслуживаются в регистратуре в течение 3 минут. Таким образом, проблема возникновения очереди происходит в момент прохождения больным врача. После обслуживания, больной уходит из поликлиники. Нужно смоделировать работу поликлиники в течение 8 часов.

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

 

Структурная схема модели системы и ее описание

 

На основании описания системы построим структурную схему данной модели.

 

Рис.1.1. Структурная схема работы поликлиники


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

1. режим нормального обслуживания, когда все больные, которые зарегистрировались в регистратуре, будут обслужены врачом;

2. режим, при котором в очереди останутся больные, не прошедшие осмотр врача.

 

Временная диаграмма и ее описание

 

С помощью временной диаграммы можно более детально представить процесс работы поликлиники (рис.3.1).

На диаграмме:

-       ось 1 - момент прихода больных в регистратуру;

-   ось 2 - момент обслуживания больных в регистратуре;

    ось 3 - пребывание больных в очереди;

    ось 4 - обслуживание больного у Врача 1;

    ось 5 - обслуживание больного у Врача 2;

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


Рис1.2. Временная диаграмма процесса работы поликлиники

 

1.3 Q-схема системы и ее описание

 

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

По своей сути описанные процессы являются процессами обслуживания потоков партий и комплектов деталей, поэтому для формализации задачи используем аппарат Q-схем [1]. В соответствии с построенной концептуальной моделью структурную схему данной СМО можно представить в виде, показанном на рис. Доэ, где И - источник, Н - накопитель, К - канал.


Рис.1.3. Структурная схема работы поликлиники в символике Q-схем

 

При этом источник И имитирует поступление больных в поликлинику. Далее, они поступают в канал К1, имитирующем работу регистратуры. Больные, после обслуживания в канале К1, поступают в накопитель Н1, имитирующего очередь. По мере пребывания в очереди (в накопителе Н1), больные поступают на обслуживание в каналы К2 и К3, имитирующих работу врачей 1-го и 2-го соответственно.

 

Укрупненная схема моделирующего алгоритма

 

Следующим этапом формализации модели является построение моделирующего алгоритма. При разработке алгоритма использован «принцип Dt» [1].

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

Рассмотрим работу модели. Первым происходит пуск системы (блок 1) на выполнение или начало эмуляции работы объекта исследования.

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

Блок 3 выполняет проверку условия: “выполнено ли заданное время моделируемого процесса”. Если да, то управление предается блоку 12 на обработку результатов.

Блок 4. Происходит обслуживание больного в регистратуре.

Блок 5 служит для создания очереди.

Блок 6 выполняет проверку на заполненность очереди к врачу. Если очередь пуста, то больной проходит к врачу. Если же очередь к врачу, то больной ожидает своей очереди в блоке 5.

Блок 7 определяет свободен Врач 1. Если да, то происходит обслуживание больного и он поступает в блок 8, если же Врач 1 занят, то проверяется свободен ли Врач 2. В положительном случае больной обслуживается у Врача 2, если же Врач 2 тоже занят, то больной ожидает своей очереди в блоке 5.

Блок 8 обслуживание больного Врачом 1.

Блок 9 аналогичен блоку 7.

Блок 10 обслуживание больного Врачом 2.

Блок 11 завершает работу процесса моделирования на заданный период времени (8 часов).

Блок 12 обработка результатов. Блок 13 Вывод результатов на печать.

Блок 14 останов работы.


Рис. 1.4. Укрупненная схема моделирующего алгоритма

 

Детальная схема моделирующего алгоритма и ее описание

 

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

Блок-диаграмма модели процесса работы поликлиники представлена на рис.1.5, где А, В - очереди накопителей; АВ и ВС - каналы передачи пакетов данных. За единицу системного времени выбираем 1 мс, так как согласно технической документации GPSS/РС при этом обеспечивается наилучшее качество псевдослучайных последовательностей [2].



Рис.1.5. Блок-диаграмма процесса моделирования работы поликлиники.

 

Математическая модель и ее описание

 

Запишем переменные и уравнения модели процесса функционирования работы поликлиники в течение 8 часов:

Т - общее время моделирования;

t1 - время обслуживания больного у Врача 1;

t2 - время обслуживания больного у Врача 2;

N0 - количество больных, прошедших за время моделирования Т;

p1 - количество больных, прошедших Врача 1;

p2 - количество больных, прошедших Врача 2;

Кз1- коэффициент загрузки Врача 1;

Кз2- коэффициент загрузки Врача 2;

N1- число пользователей, получивших отказ.

Уравнения модели:

 

 (1.1)

 (1.2)

 (1.3)

 

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

 

Описание машинной программы решения задачи

 

Разработав блок-диаграмму модели, перейдем непосредственно к программированию данного процесса. Как уже отмечалось выше, для реализации машинной модели будем использовать язык GPSS/PC. Текст программы приведен в приложении 1, комментарий - в приложении 2.

Опишем используемые блоки.

Прогон модели, т.е. собственно моделирование, выполняется с помощью специальной управляющей программы, которую называют симулятором. Оператор SIMULATE (моделировать) устанавливает предел реального времени, отводимого на прогон модели.

Для создания транзактов, входящих в модель, служит блок GENERATE (генерировать). В данном случае он генерирует поступление больных в регистратуру с интервалом в 5 мин.

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

Блок ADVANCE задает среднее время задержки транзакта.

Блок ENTER обеспечивает вхождение транзакта в блок TRANSFER

Блок TRANSFER изменяет направление движения транзакта (на занятии устройства VRACH 1 или VRACH 2).

Блок SEIZE определяет занятие устройства VRACH 1(VRACH 2).

Блок LEAVE освобождает очередь на 1 элемент.

Блок ADVANCE задерживает транзакт на время обслуживания.

Блок RELEASE освобождаетустройство VRACH 1 (VRACH 2).

Блок TERMINATE уничтожает транзакт.

Блок START запускает программу.

 

1.8 Результаты моделирования и их анализ

 

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

 

START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY

0 480 20 3 1 15696

LOC BLOCK_TYPE ENTRY_COUNT CURRENT_COUNT RETRY

20 1 GENERATE 96 0 0

30 2 SEIZE 96 0 0

40 3 ADVANCE 96 1 0

50 4 RELEASE 95 0 0

60 5 ENTER 95 0 0

70 AGAIN TRANSFER 95 16 0

80 METKA1 SEIZE 39 0 0

90 8 LEAVE 39 0 0

100 9 ADVANCE 39 1 0

110 10 RELEASE 38 0 0

 120 11 TRANSFER 38 0 0

 130 METKA2 SEIZE 40 0 0

140 13 LEAVE 40 0 0

150 14 ADVANCE 40 1 0

160 15 RELEASE 39 0 0

170 16 TRANSFER 39 0 0

180 VIX TRANSFER 0 0 0

 190 WENT TERMINATE 77 0 0

 200 19 GENERATE 1 0 0

210 20 TERMINATE 1 0 0

ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY

REGISTRATO 96 0.593 2.97 1 97 0 0 0 0

VRACH1 39 0.970 11.95 1 81 0 0 0 7

VRACH2 40 0.983 11.80 1 72 0 0 0 9CAP. REMAIN. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

OCHERED 100 84 0 16 95 1 7.73 0.077 0 0


Проанализируем полученную статистику. Из отчета следует: значение системного времени изменялось от 0 до 480.

За это время через устройство REGISTRATO прошло 96 больных. VRACH 1 и VRACH 2 обслужили соответственно 39 и 40 больных. Регистратура загружена на 59,3%, VRACH 1 - 97,0%, VRACH 2 - 98,3%.

Среднее время занятости VRACH 1 - 11,95; VRACH 2 - 11,80.

Максимальное содержимое очереди составило 16.

Согласно формулам (1.1), (1.2) и (1.3) исходным и полученным данным имеем:

 

 

 

 

имитационный моделирование программа язык

По расчетам видно, что загрузка врачей велика:  и , и вероятность отказа .

 

Описание возможных улучшений в работе системы

 

В результате моделирования работы поликлиники при работе двух врачей вероятность отказа на обслуживание равна . Из рассмотренной статистики выполненного процесса моделирования ясно, что поступило 96 больных в регистратуру, а врачами, в общей сумме, было обслужено 79. То есть, на момент окончания времени моделирования не обслуженными оказались 16 больных. Для улучшения работы поликлиники добавим еще одного. Этим постараемся разгрузить работу двух имеющихся врачей, тем самым попробуем уменьшить вероятность отказа на обслуживание, для того, что бы все пришедшие в регистратуру больные были обслужены.

 

Окончательный вариант модели с результатами

 

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

START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY

0 480 26 4 1 15648LOC BLOCK_TYPE ENTRY_COUNT CURRENT_COUNT RETRY

20 1 GENERATE 96 0 0

30 2 SEIZE 96 0 0

40 3 ADVANCE 96 1 0

50 4 RELEASE 95 0 0

60 5 ENTER 95 0 0

70 AGAIN TRANSFER 95 1 0

80 METKA1 SEIZE 30 0 0

 90 8 LEAVE 30 0 0

 100 9 ADVANCE 30 1 0

110 10 RELEASE 29 0 0

120 11 TRANSFER 29 0 0

125 METKA2 TRANSFER 64 0 0

130 METKA3 SEIZE 29 0 0

140 14 LEAVE 29 0 0

150 15 ADVANCE 29 1 0

160 16 RELEASE 28 0 0

170 17 TRANSFER 28 0 0

200 18 GENERATE 1 0 0

210 19 TERMINATE 1 0 0

230 METKA4 SEIZE 35 0 0

240 21 LEAVE 35 0 0

250 22 ADVANCE 35 1 0

260 23 RELEASE 34 0 0

270 24 TRANSFER 34 0 0

280 VIX TRANSFER 0 0 0

290 WENT TERMINATE 91 0 0ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY

REGISTRATO 96 0.593 2.97 1 97 0 0 0 0

VRACH1 30 0.737 11.90 1 92 0 0 0 1

VRACH2 29 0.714 11.93 1 95 0 0 0 0

VRACH3 35 0.860 11.89 1 94 0 0 0 0CAP. REMAIN. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

OCHERED 10 9 0 4 95 1 1.50 0.150 0 0

Проанализируем полученную статистику. Из отчета следует: значение системного времени изменялось от 0 до 480.

За это время через устройство REGISTRATO прошло 96 больных. VRACH 1, VRACH 2 и VRACH 3 обслужили соответственно 30, 29 и 35 больных. Регистратура загружена на 59,3%, VRACH 1 - 73,90%, VRACH 2 - 71,16%, VRACH 3 - 86,1%. Для более наглядного представления можно рассмотреть график, приведенный в приложении 4.

Среднее время занятости VRACH 1 - 11,90; VRACH 2 - 11,93; VRACH 3 - 11,89.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...