Моделирование процесса многофазной обработки заявок с помощью
Языка GPSS
Цель работы
1. Освоение методов моделей сложных объектов с фазовой структурой
2. Более глубокое освоение языка имитационного моделирования GPSS
3. Отработка методики исследования объекта моделирования
4. Поиск оптимального решения
ОБЩИЕ СВЕДЕНИЯ
Моделирование Q-схем с фазовой структурой
Если приборы массового обслуживания и их параллельные композиции соединены последовательно, то имеет место многофазное обслуживание (многофазная Q-схема). Таким образом, для задания Q-схемы необходимо использовать оператор сопряжения R, отражающий взаимосвязь элементов структуры (каналов и накопителей) между собой.
Связи между элементами Q-схемы изображают в виде стрелок (линий потока, отражающих направление движения заявок). Различают разомкнутые и замкнутые Q-схемы. В разомкнутой Q-схеме выходной поток обслуженных заявок не может снова поступить на какой-либо элемент, т. е. обратная связь отсутствует, а в замкнутых Q-схемах имеются обратные связи, по которым заявки двигаются в направлении, обратном движению вход-выход.
Собственными (внутренними) параметрами Q-схемы будут являться количество фаз, количество каналов в каждой фазе, количество накопителей каждой фазы, емкость i-гo накопителя. Следует отметить, что в теории массового обслуживания в зависимости от емкости накопителя применяют следующую терминологию для систем массового обслуживания: системы с потерями, т. е. имеется только канал обслуживания системы с ожиданием, (т. е. очередь заявок не ограничивается) и системы смешанного типа (с ограниченной емкостью накопителя). Всю совокупность собственных параметров Q-схемы обозначим как подмножество Н.
Для задания Q-схемы также необходимо описать алгоритмы ее функционирования, которые определяют набор правил поведения заявок в системе в различных неоднозначных ситуациях. В зависимости от места возникновения таких ситуаций различают алгоритмы (дисциплины) ожидания заявок в накопителе Н, и обслуживания заявок каналом каждого элементарного обслуживающего прибора Q-схемы. Неоднородность заявок, отражающая процесс в той или иной реальной системе, учитывается с помощью введения классов приоритетов.
В зависимости от динамики приоритетов в Q-схемах различают статические и динамические приоритеты. Статические приоритеты назначаются заранее и не зависят от состояний Q-схемы, т. е. они являются фиксированными в пределах решения конкретной задачи моделирования. Динамические приоритеты возникают при моделировании в зависимости от возникающих ситуаций. Исходя из правил выбора заявок из накопителя на обслуживание каналом можно выделить относительные и абсолютные приоритеты. Относительный приоритет означает, что заявка с более высоким приоритетом, поступившая в накопитель ожидает окончания обслуживания предшествующей заявки каналом и только после этого занимает канал. Абсолютный приоритет означает, что заявка с более высоким приоритетом, поступившая в накопитель прерывает обслуживание каналом заявки с более низким приоритетом и сама занимает канал (при этом вытесненная из заявка может либо покинуть систему, либо может быть снова записана на какое-то место в ).
При рассмотрении алгоритмов функционирования приборов обслуживания (каналов и накопителей Н) необходимо также задать набор правил, по которым заявки покидают и для — либо правила переполнения, по которым заявки в зависимости от заполнения покидают систему, либо правила ухода, связанные с истечением времени ожидания заявки в для — правила выбора маршрутов или направлений ухода. Кроме того, для заявок необходимо задать правила, по которым они остаются в канале или не допускаются до обслуживания каналом ,т. е. правила блокировок канала. При этом различают блокировки по выходу и по входу. Такие блокировки отражают наличие управляющих связей в Q-схеме, регулирующих поток заявок в зависимости от состояний Q-схемы. Весь набор возможных алгоритмов поведения заявок в Q-схеме можно представить в виде некоторого оператора алгоритмов поведения заявок.
Таким образом, Q-схема, описывающая процесс функционирования системы массового обслуживания любой сложности, однозначно задается в виде Q= (W, U, H, Z, R, А).
При ряде упрощающих предположений относительно подмножеств входящих потоков W, потоков обслуживания U (выполнение условий стационарности, ординарности и ограниченного последействия) оператора сопряжения элементов структуры R (однофазное одноканальное обслуживание в разомкнутой системе), подмножества собственных параметров Н (обслуживание с бесконечной емкостью накопителя), оператора алгоритмов обслуживания заявок А (бес приоритетное обслуживание без прерываний и блокировок) для оценки вероятностно-временных характеристик можно использовать аналитический аппарат, разработанный в теории массового обслуживания.
Математическое обеспечение и ресурсные возможности современных ЭВМ позволяют достаточно эффективно провести моделирование различных систем, формализуемых в виде Q-схем, используя либо пакеты прикладных программ, созданные на базе алгоритмических языков общего назначения, либо специализированные языки имитационного моделирования. Пример Q-схемы общего вида
На рисунке представлена трехфазная Q-схема (L =3) с блокировкой каналов по выходу в 1-й и 2-й фазах обслуживания (пунктирные линии на рисунке). В качестве выходящих потоков такой Q-схемы могут быть рассмотрены поток потерянных заявок из и поток обслуженных заявок из ( на рисунке).
Для имитационной модели рассматриваемой Q-схемы можно записать следующие переменные и уравнения: эндогенная переменная Р — вероятность потери заявок; экзогенные переменные: — время появления очередной заявки из N; — время окончания обслуживания каналом очередной заявки, k=1, 2, 3; j=1, 2;вспомогательные переменные: и — состояния Н; параметры: L – емкость, L*—число каналов в i-й фазе.
При имитации процесса функционирования Q-схемы на ЭВМ, требуется организовать массив состояний. В этом массиве должны быть выделены: подмассив К для запоминания текущих значений , соответствующих каналов и времени окончания обслуживания очередной заявки,подмассив Н для записи текущего значения z, соответствующих накопителей , i= 1, 2; подмассив H, в который записывается время поступления очередной заявки из источника (H).
Процедура моделирования процесса обслуживания каждым элементарным каналом сводится к следующему. Путем обращения к генератору случайных чисел с законом распределения, соответствующим обслуживанию данных, получается длительность времени обслуживания и вычисляется время окончания обслуживания, а затем фиксируется состояние ,при освобождении =0; в случае блокировки записывается =2. При поступлении заявки в Н, к его содержимому добавляется единица, т. е. , а при уходе заявки из Н, на обслуживание вычитается единица, т. е. , i=l, 2.
Возможности модификации моделирующих алгоритмов Q-схемы.В плане усложнения машинных моделей при исследовании вариантов системы S можно рассмотреть следующие модификации: наличие потоков заявок нескольких типов. В этом случае необходимо иметь несколько источников (генераторов) заявок и фиксировать признак принадлежности заявки к тому или иному потоку тогда, когда накопители и каналы рассматриваемой Q-схемы критичны к этому признаку или требуется определить характеристики обслуживания заявок каждого из потоков в отдельности.
Наличие приоритетов при постановке заявок в очередь в накопитель. В зависимости от класса приоритета заявок может быть рассмотрен случай, когда заявки одного класса имеют приоритет по записи в накопитель (при отсутствии свободных мест вытесняют из накопителя заявки с более низким классом приоритета, которые при этом считаются потерянными). Этот фактор может быть учтен в моделирующем алгоритме соответствующей Q-схемы путем фиксации для каждого накопителя признаков заявок, которые в нем находятся (путем организации соответствующего массива признаков).
1. Наличие приоритетов при выборе заявок на обслуживание каналов. По отношению к каналу могут быть рассмотрены заявки с абсолютным и относительным приоритетами. Заявки с абсолютным приоритетом при выборе из очереди в накопитель вытесняют из канала заявки с более низким классом приоритета, которые при этом снова поступают в накопитель (в начало или конец очереди) или считаются потерянными, а заявки с относительным приоритетом дожидаются окончания обслуживания каналом предыдущей заявки. Эти особенности учитываются в моделирующих алгоритмах приоритетных
Q-схем, при определении времени освобождения канала и выборе претендентов на его занятие. Если наличие абсолютных приоритетов приводит к потере заявок, то необходимо организовать фиксацию потерянных заявок.
2. Ограничение по времени пребывания заявок в системе. В этом случае возможно ограничение как по времени ожидания заявок в накопителях, так и по времени обслуживания заявок каналами, а также ограничение по сумме этих времен, т. е. по времени пребывания заявок в обслуживающем приборе. Причем эти ограничения могут рассматриваться как применительно к каждой фазе, так и к Q-схеме в целом. При этом необходимо в качестве особых состояний Q-схемы рассматривать не только моменты поступления новых заявок и моменты окончания обслуживания заявок, но и моменты окончания допустимого времени пребывания (ожидания, обслуживания) заявок в Q-схеме.
3. Выход элементов системы из строя и их дальнейшее восстановление. Такие события могут быть рассмотрены в Q-схеме, как потоки событий с абсолютными приоритетами, приводящими к потере заявок, находящихся в обслуживании в канале или ожидающих начала обслуживания в накопителе в момент выхода соответствующего элемента из строя. В этом случае в моделирующем алгоритме Q-схемы должны быть предусмотрены датчики (генераторы) отказов и восстановлений, а также должны присутствовать операторы для фиксации и обработки необходимой статистики.
Рассмотренные моделирующие алгоритмы и способы их модификации могут быть использованы для моделирования широкого класса систем. Однако эти алгоритмы будут отличаться по сложности реализации, затратам машинного времени и необходимого объема памяти ЭВМ.
Детерминированный и асинхронный циклический алгоритмы наиболее просты с точки зрения логики их построения, так как при этом используется перебор всех элементов Q-схемы на каждом шаге. Трудности возникают с машинной реализацией этих алгоритмов вследствие увеличения затрат машинного времени на моделирование, так как просматриваются все состояния элементов Q-схемы. Затраты машинного времени на моделирование существенно увеличиваются при построении детерминированных моделирующих алгоритмов Q-схем, элементы которых функционируют в различных масштабах времени, например когда длительности обслуживания заявок каналами многоканальной Q-схемы значительно отличаются друг от друга.