Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 5 Моделирование СМО.Документ Microsoft W...doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

5.3.2 Модели накопителей и каналов обслуживания

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

Рисунок 5.24 – Блок «Queue» (Очередь)

Блок имеет: входной порт «In», на который подается сигнал в виде числа; управляемый импульсами порт «Push» (постановка заявки в очередь); управляемый также импульсами порт «Pop» (выталкивание очередной заявки на обслуживание). К выходам блока относят порты: «Out», «Empty», «Full» и «Number». Через порт «Out» заявки покидают очередь при наличии управляющего импульса на входе «Pop». При этом значение сигнала на выходе сохраняется до следующего импульса на входе «Pop», это дает возможность моделировать c помощью блока элементарный прибор обслуживания. Выход «Empty» (пустой) выдает «1», если очередь пуста и «0» - в противном случае. Выход «Full» (полный) выдает «1», если в очереди находится число заявок равное емкости очереди, и «0» - в противном случае. Выход «Number» показывает число заявок в очереди на данном шаге.

Выходы: «Empty», «Full», «Number» устанавливаются флажками на панели блока. Подготовка блока «Очередь» производится путем: установки емкости очереди; выбора режима (Rising, Falling, Either); выбора режима при условии заполнения регистра очереди; выбора режима при условии, что регистр пуст, а следует вытолкнуть очередной элемент из очереди.

Накопление сигналов можно осуществлять и блоком «Stack» (стек), работающим в формате LIFO (последним вошел, первым вышел). Его использование в качестве ИМ накопителя аналогично блоку «Queue». Кроме рассмотренных блоков для накопления значений сигнала могут использоваться блоки «Сумматор» и «Дискретный сумматор времени».

5.3.3. Модели типовых схем систем массового обслуживания

В основе способа имитации канала обслуживания лежит блок «Очередь». На основе блока «Очередь» можно построить схему ИМ канала обслуживания с потерями или схему одноканальной СМО с очередью. Схема ИМ их одинакова (рис. 5.26), а подготовка схемы отличается лишь числом мест в очереди. В этой схеме источник заявок и источник обслуживаний представлены соответственно блоками: «Subsystem» и «Subsystem1». Для одноканальной СМО с отказами должна быть установлена емкость очереди L=1.

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

а) б)

Рисунок 5.25 – Q-схемы а) одноканальной СМО с отказами;

б) одноканальной СМО с очередью

Рисунок 5.26 – Структурная схема ИМ одноканальной СМО

с очередью

К входу «Pop» подключают выход источника обслуживаний. Для фиксации среднего числа заявок в очереди к выходу «Number» подключают блок «Mean» (МО) с дисплеем.

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

а) б)

Рисунок 5.27 – Q-схемы а) последовательного соединения каналов;

б) последовательного соединения каналов с накопителями

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

Рисунок 5.28 – Последовательное соединение блоков «Очередь»

Блокировку (задержку обслуженных заявок) в каналах можно выполнять отключением потока обслуживания в предыдущем канале с помощью блока «AND», управляемого сигналом «Full» (полный регистр) через блок «NOT».

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

Рисунок 5.29 – Схема случайного выбора канала

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

Для упрощения схем ИМ СМО схему прибора обслуживания будем представлять в виде подсистемы (рис. 5.30).

а)

б)

Рисунок 5.30 – Схема прибора обслуживания – а),

в виде подсистемы – б)

Рассмотрим пример ИМ трехканальной СМО с отказами.

а) б)

Рисунок 5.31- Q-схемы трехканальной СМО а) без накопителей;

б) с накопителями

Рисунок 5.32 – схема ИМ трехканальной СМО

В данном случае заявки, сформированные источником заявок, попадут на обслуживание во второй канал только в том случае, если первый канал (L=1) занят или первый накопитель полон (L=k). Аналогично для третьего канала.

Среда «Matlab» позволяет исследовать СМО не только состоящие из нескольких каналов, но и из нескольких фаз. Рассмотрим пример схемы ИМ двухфазной СМО.

а)

б)

Рисунок 5.33 - Q-схемы двухфазной СМО а) без накопителей;

б) с накопителями

Рисунок 5.34 – схема ИМ двухфазной СМО

Основываясь на выше изложенном материале, можно создавать ИМ СМО большей сложности и исследовать на них процессы, протекающие в реальных системах.

Вопросы для самоконтроля

1. Какими свойствами должен обладать поток событий, чтобы быть простейшим?

2. Какая операция позволяет превратить простейший поток событий в поток событий с одинаковыми интервалами между ними?

3. Чем различаются графы состояний дискретной и непрерывной марковских цепей?

4. Объясните причину появления очередей в системах массового обслуживания.

5. Как выбирается величина шага расчета в детерминированном и асинхронном моделирующих алгоритмах?

6. Почему моделирующие алгоритмы непременно должны удовлетворять рекуррентному правилу?

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

8. В среде «MATLAB» создайте модель источника простейшего потока событий (заявок) с интенсивностью две заявки в единицу времени.

9. Какие параметры необходимо установить в блоке «Очередь», чтобы он мог выполнять функции канала обслуживания?

10. Как осуществляется параллельное соединение приборов обслуживания, созданных на основе блока «Очередь»?