
- •Кафедра биомедицинской и полупроводниковой электроники Электронные методические указания к лабораторным работам (эму) Имитационное моделирование систем массового обслуживания на языке gpss
- •Имитационное моделирование систем массового обслуживания на языке gpss
- •Моделирование работы систем массового обслуживания
- •1. Краткие теоретические сведения
- •1.1. Основные понятия систем массового обслуживания
- •1.2. Общие сведения о языке gpss
- •2. Подготовка к работе
- •3. Порядок выполнения работы
- •3.1. Моделирование простейших смо
- •3.1.2. Моделирование в gpss
- •3.2 Моделирование работы передающего устройства видеопакетов
- •3.2.1 Теоретический расчет результатов моделирования
- •3.2.2. Моделирование в gpss
- •3.3. Моделирование работы многоканального устройства
2. Подготовка к работе
Ознакомиться с теорией систем массового обслуживания, произвести теоретические расчеты по пунктам 3.1.1 и 3.2.1.
3. Порядок выполнения работы
3.1. Моделирование простейших смо
Требуется определить пропускную способность вычислительного узла, содержащего вычислительный прибор и очередь команд.
Пример выполнения работы
Задание:
Интенсивность
формирования команд
.
Длительность
выполнения команды
.
3.1.1. Теоретический расчет результатов моделирования (подготовить заранее)
1. Построить временные диаграммы функционирования системы:
– поступления заявок;
– обслуживания заявок в приборе;
– состояния очереди.
2. Определить или вычислить:
– максимальную длину очереди;
– среднюю длину очереди;
– среднее время ожидания заявки в очереди;
– среднее время ожидания заявки в очереди без учета «нулевых» входов;
– коэффициент загрузки прибора.
Расчет
Ниже приводимый расчет выполнен для моделирования 1000 единиц модельного времени.
Времена появления i-х заявок 1-го сегмента модели рассчитываются согласно зависимости:
. (1)
По формуле (1) получены времена появления заявок 1-го сегмента модели: 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000.
Времена обслуживания заявок 1-го сегмента модели в приборе:
– первая заявка: 100 (время начала обслуживания) – 209 (время конца обслуж.);
– вторая заявка: 210 – 319;
– третья заявка: 320 – 429;
– четвертая заявка: 430 – 539;
– пятая заявка: 540 – 649;
– пятая заявка: 540 – 649;
– шестая заявка: 650 – 759;
– седьмая заявка: 760 – 869;
– восьмая заявка: 870 – 979;
– девятая заявка: 980 – 1000; (в момент 1000 – завершение моделирования)
Длина первой очереди: 0 (время: 1 – 199), 1 (200 – 219), 0 (220 – 299), 1 (300 – 329), 0 (330 – 399), 1 (400 – 439), 0 (440 – 499), 1 (500 – 549), 0 (550 – 599), 1 (600 – 659), 0 (660 – 699), 1 (700 – 769), 0 (770 – 799), 1 (800 – 879), 0 (880 – 899), 1 (900 – 989), 0 (990 – 999).
Максимальная длина очереди = 1.
Средняя длина очереди = (0*560 + 1*440)/1000 = 0,440.
Среднее время ожидания заявки в очереди определяется следующим образом:
, (2)
где
– число обслуженных заявок за заданное
время моделирования;
– время ожидания
i-й
заявки в очереди, определяемое выражением:
, (3)
где
– время начала
обслуживания i-й
заявки;
По формулам (2) и (3) вычислено среднее время ожидания заявки очереди:
,
Среднее время ожидания заявки в очереди без учета нулевых входов = (10 + 20 + 30 + 40 + 50 + 60 +70 +80) / 8 = 45.
Коэффициент загрузки прибора = (0*100 + 1*900) / 1000 = 0,9.
3.1.2. Моделирование в gpss
Определить:
1) Число попаданий команд в вычислительный прибор.
2) Процент использования вычислительного прибора.
3) Максимальную длину очередей.
4) Длину очереди на момент завершения моделирования.
5) Количество вхождений команд в очередь.
6) Количество нулевых вхождений команд в очередь.
7) Среднее количество команд в очереди.
8) Среднее время пребывания команд в очереди.
Построение модели. Модель строится в виде непрерывной цепи блоков, к которой добавляются компоненты, предназначенные для управления моделированием. Порядок блоку в модели соответствует порядку фаз, в которых оказывается команда при движении в реальной системе:
- команда формируется;
- если необходимо, то команда ждет своей очереди на выполнение;
- команда попадает в вычислительный прибор, который осуществляет ее выполнение;
- после выполнения команда покидает систему.
Модель системы показана на рис. 5. На рисунке имеют место следующие обозначения: G – формирователь команд, Och – очередь для команд формирователя, Prib – вычислительный прибор.
Блок-схема программы показана на рис. 6.
Порядок работы с интерпретатором
Для моделирования системы необходимо выполнить следующую последовательность действий:
1. В меню ″Пуск″ выбрать вкладку ″Программы″, в которой выбрать ″GPSS World Student Version″.
2. В меню ″File″ необходимо выбрать вкладку ″New″.
3. В открывшемся окне ″Новый документ″ выбрать тип создаваемого документа ″Model″ и нажать клавишу ″OK″.
4. В открывшемся окне необходимо ввести текст программы.
5. Для сохранения файла в меню ″File″ необходимо выбрать строку ″Save As…″ и ввести в ней имя файла.
6. В меню ″Command″ следует выбрать вкладку ″Create Simulation″. В ответ интерпретатор выдаст сообщение: ″Model Translation Begun. Ready.″.
7. В меню ″Command″ следует выбрать команду ″Start″. В появившемся окне нужно ввести ″Start 1″. После чего на экране появится отчет с результатами моделирования.
Текст программы (см. выше).
Результаты моделирования:
GPSS World Simulation Report - Untitled Model 1.1.1
Wednesday, March 25, 2009 10:40:26
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 1000.000 9 1 0
NAME VALUE
OCH 10000.000
PRIB 10001.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 9 0 0
2 QUEUE 9 0 0
3 SEIZE 9 0 0
4 DEPART 9 0 0
5 ADVANCE 9 1 0
6 RELEASE 8 0 0
7 TERMINATE 8 0 0
8 GENERATE 1 0 0
9 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
PRIB 9 0.900 100.000 1 10 0 0 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
OCH 1 0 9 1 0.360 40.000 45.000 0
CEC XN PRI M1 ASSEM CURRENT NEXT PARAMETER VALUE
11 0 1000.000 11 0 1
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
10 0 1090.000 10 5 6
12 0 2000.000 12 0 8
Расшифровка результатов моделирования.
Моделирование прибора:
FACILITY – имя (номер) прибора;
ENTRIES – общее число входов в прибор за время моделирования;
UTIL. – коэффициент использования прибора течении всего времени моделирования;
AVE_TIME – среднее время пребывания транзакта в приборе;
AVAILABLE – номер транзакта, занявшего прибор;
OWNER – номер транзакта, захватившего прибор.
Моделирование очереди:
QUEUE – имя (номер) очереди;
MAX – максимальное содержимое очереди за время моделирования;
CONT – текущее содержимое очереди;
ENTRIES – общее число входов в очередь;
ENTRIES(0) – количество ″нулевых″ входов в очередь (т.е. входов транзактов в очередь, когда прибор был свободен; при этом время пребывания транзакта в очереди равно нулю);
AVE.CONT. – среднее содержимое очереди;
AVE.TIME – среднее время пребывания транзакта в очереди;
AVE.(-0) – среднее время пребывания без учета ″нулевых″ входов.
Анализ результатов моделирования:
1) Число попаданий команд в вычислительный прибор = 9.
2) Процент использования вычислительного прибора = 0.900.
3) Максимальная длина очереди = 1.
4) Длина очереди на момент завершения моделирования = 0.
5) Количество вхождений команд в очередь = 9.
6) Количество нулевых вхождений команд в очередь = 1.
7) Среднее количество команд в очереди = 0.360.
8) Среднее время пребывания пакетов в очереди = 40.000.
3.1.3 Варианты заданий: (интенсивность формирования и времени передачи)
Вариант |
|
|
1 |
|
110 |
2 |
|
105 |
3 |
|
120 |
4 |
|
115 |
5 |
|
130 |
6 |
|
125 |
7 |
|
140 |
8 |
|
135 |
9 |
|
150 |
10 |
|
145 |