Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
56
Добавлен:
21.03.2016
Размер:
300.54 Кб
Скачать

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

Модель системы показана на рисунке 3, где G1 – первый источник заявок, G2 – второй источник заявок, G3 – формирователь поломок прибора, line2 – очередь для заявок первого источника (с низшим приоритетом),

line3 – очередь для заявок второго источника (с высшим приоритетом),

line1 – очередь для переотправки заявок, находившихся в передатчике во время его поломки, Prib – прибор.

Рисунок 3 – Модель СМО с двумя источниками заявок, одним прибором и возможностью поломки прибора

4.1. Блок-схема модели СМО с двумя источниками заявок, одним прибором и возможностью поломки прибора

Рисунок 4 – Блок-схема модели СМО с двумя источниками заявок,

одним прибором и возможностью поломки прибора

Комментарий к блок-схеме:

1-й сегмент (сегмент 1-го источника заявок):

GENERATE 14,3; 0,3; , , 2 – генерировать транзакты. 14,3 – среднее значение интервала формирования. 0,3 – половина интервала разброса (интервал формирования транзактов от 14,0 до 14,6 единиц модельного времени равновероятен). Время появления первого транзакта по умолчанию равно 1. Максимальное число формируемых транзактов за время моделирования по умолчанию равно бесконечности. 2 – приоритет транзактов.

QUEUE line2 – войти в очередь для пакетов первого формирователя (с низшим приоритетом). line2 – имя очереди. Количество занимаемых единиц по умолчанию равно 1.

SEIZE Prib – занять устройство. Prib – имя устройства. Занять можно только свободное устройство. Уже занятое устройство не впускает транзакты, перед ним организуется очередь на основе относительных приоритетов.

DEPART line2 – выйти из очереди. line2 – имя очереди. Количество занимаемых единиц по умолчанию равно 1.

ADVANCE 125 – задержать транзакт. 125 – среднее время задержки (интервал обслуживания). Оператор может впускать сколько угодно транзактов.

RELEASE Prib – освободить. Prib – имя устройства. Устройство должно быть освобождено тем же транзактом, который его занял.

TERMINATE – завершить. Оператор ликвидирует вошедший в него транзакт, вычитает число указанных после него единиц (А) из счетчика завершений. По умолчанию A=0.

Для 2-го сегмента описание аналогично.

3-й сегмент (сегмент поломок):

GENERATE 2500, 425, , , 0 – генерировать транзакты. 2500 – среднее значение интервала формирования. 425 – половина интервала разброса (интервал формирования транзактов от 2175 до 2925 единиц модельного времени равновероятен). Время появления первого транзакта по умолчанию равно 1. Максимальное число формируемых транзактов за время моделирования по умолчанию равно бесконечности. 0 – приоритет транзактов.

PREEMPT Prib, , met1, , re – захватить прибор. Prib – имя прибора. По умолчанию прерванный транзакт дообслуживается после обслуживания предыдущего. met1 – метка оператора к которому переходит прерванный транзакт. re – признак снятия с обслуживания прерванного транзакта (транзакт снимается с обслуживания).

ADVANCE 225;70 – задержать транзакт. 225 – среднее время задержки. Оператор может впускать сколько угодно транзактов. 70 – половина интервала разброса (интервал задержки транзактов от 155 до 295 единиц модельного времени равновероятен).

RETURN Prib – вернуть прибор. Prib – имя захваченного прибора. Освобождать прибор должен тот же транзакт, который его занял.

4-й сегмент (сегмент таймера):

GENERATE 10000 – генерировать время моделирования

(10000 модельных единиц).

TERMINATE 1 – ликвидировать вошедший в него транзакт и вычесть одну единицу из счетчика завершений.

4.2. Текст программы

; 1-й сегмент модели - сегмент первого источника заявок

Generate 14,3; 0,3; , , 2

Queue line2

Seize Prib

Depart line2

Advance 125

Release Prib

Terminate

; 2-й сегмент модели - сегмент второго источника заявок

Generate 50; 3; , , 3

Queue line3

Seize Prib

Depart line3

Advance 125

Release Prib

Terminate

; 3-й сегмент модели - сегмент отказов

Generate 2500,425,,,0

Preempt Prib,,met1,,re

Advance 225,70

Return Prib

Terminate

met1 Queue line1 ; постановка в очередь заявки, находящейся в

; передатчике во время его поломки

Seize Prib

Depart line1

Advance 125

Release Prib

Terminate

; 4-й сегмент модели - сегмент таймера

Generate 10000

Terminate 1

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

GPSS World Simulation Report - Untitled Model 2.1.1

Friday, April 19, 2013 14:03:02

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 10000.000 27 1 0

NAME VALUE

LINE1 10003.000

LINE2 10000.000

LINE3 10002.000

MET1 20.000

PRIB 10001.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 714 0 0

2 QUEUE 714 654 0

3 SEIZE 60 0 0

4 DEPART 60 0 0

5 ADVANCE 60 1 0

6 RELEASE 57 0 0

7 TERMINATE 57 0 0

8 GENERATE 199 0 0

9 QUEUE 199 183 0

10 SEIZE 16 0 0

11 DEPART 16 0 0

12 ADVANCE 16 0 0

13 RELEASE 14 0 0

14 TERMINATE 14 0 0

15 GENERATE 4 0 0

16 PREEMPT 4 0 0

17 ADVANCE 4 0 0

18 RETURN 4 0 0

19 TERMINATE 4 0 0

MET1 20 QUEUE 4 4 0

21 SEIZE 0 0 0

22 DEPART 0 0 0

23 ADVANCE 0 0 0

24 RELEASE 0 0 0

25 TERMINATE 0 0 0

26 GENERATE 1 0 0

27 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

PRIB 80 0.998 124.799 1 79 0 0 0 841

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

LINE2 654 654 714 1 326.247 4569.287 4575.696 0

LINE3 183 183 199 0 91.360 4590.964 4590.964 0

LINE1 4 4 4 0 1.531 3827.627 3827.627 0

Расшифровка результатов моделирования

Моделирование прибора:

FACILITY – имя прибора;

ENTRIES – общее число входов в прибор за время моделирования;

UTIL. – коэффициент использования прибора в течение всего времени моделирования;

AVE. TIME – среднее время пребывания транзакта в приборе;

AVAILABLE – состояние готовности устройства на момент конца моделирования (1 – готово к обслуживанию очередной заявки, 0 – не готово);

OWNER – номер последнего транзакта, захватившего прибор (если не занималось, то значение 0);

PEND – количество транзактов, ожидающих устройство, и находящихся в режиме прерывания;

INTER – количество транзактов, прерывающих устройство в данный момент;

RETRY – количество транзактов, ожидающих специальных условий, зависящих от состояния объекта типа «устройство»;

DELAY – определяет количество транзактов, ожидающих занятия или освобождения устройства.

Моделирование очереди:

QUEUE – имя очереди;

MAX – максимальное содержимое очереди за время моделирования;

CONT. – текущее содержимое очереди;

ENTRY – общее число входов в очередь;

ENTRY(0) – количество «нулевых» входов в очередь (т.е. входов транзактов в очередь, когда прибор был свободен; при этом время пребывания транзакта в очереди равно нулю);

AVE. CONT. – среднее содержимое очереди;

AVE. TIME – среднее время пребывания транзакта в очереди;

AVE. (-0) – среднее время пребывания без учета «нулевых» входов;

RETRY – количество транзактов, ожидающих специальных условий.

4.4. Анализ результатов моделирования

1) Число попаданий команд в вычислительный прибор = 80

2) Процент использования вычислительного прибора = 0,998

3) Максимальная длина очереди:

- для line2 = 654

- для line3 = 183

- для line1 = 4

4) Длина очереди на момент завершения моделирования:

- для line2 = 654

- для line3 = 183

- для line1 = 4

5) Количество вхождений команд в очередь:

- для line2 = 714

- для line3 = 199

- для line1 = 4

6) Количество «нулевых» вхождений команд в очередь:

- для line2 = 1

- для line3 = 0

- для line1 = 0

7) Среднее количество команд в очереди:

- для line2 = 326.247

- для line3 = 91.360

- для line1 = 1.531

8) Среднее время пребывания транзактов в очереди:

- для line2 = 4569.287

- для line3 = 4590.964

- для line1 = 3827.627

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

Модель системы показана на рисунке 5. На рисунке имеют место следующие обозначения: G1 – формирователь транзактов, line1 – очередь для транзактов, Prib – многоканальное устройство.

Рисунок 5 – Структура модели с многоканальным прибором

5.1. Блок-схема модели СМО с многоканальным прибором

Рисунок 6 – Блок-схема модели СМО с многоканальным прибором

Комментарий к блок-схеме:

1-й сегмент (сегмент транзактов):

Prib STORAGE 11 - количество каналов многоканального устройства (11).

GENERATE 14.3; 0.3 – генерировать транзакты. 14.3 – среднее значение интервала формирования. 0,3 – половина интервала разброса (интервал формирования транзактов от 14 до 14.6 единиц модельного времени равновероятен). Время появления первого транзакта по умолчанию равно 1. Максимальное число формируемых транзактов за время моделирования по умолчанию равно бесконечности.

QUEUE line1 – войти в очередь. line1 – имя очереди. Количество занимаемых единиц по умолчанию равно 1.

ENTER Prib, 9 – помещает транзакт в очередь прибора, занимая требуемое число каналов (9). Prib – имя прибора. Занять можно только свободный прибор. Уже занятый прибор не впускает транзакты, перед ним организуется очередь на основе относительных приоритетов.

DEPART line1 – выйти из очереди. line1 – имя очереди. Количество занимаемых единиц по умолчанию равно 1.

ADVANCE 125 – задержать транзакт. 125 – среднее время задержки (интервал обслуживания). Оператор может впускать сколько угодно транзактов.

LEAVE Prib, 9 – освободить прибор. Prib – имя прибора. Прибор должен быть освобожден тем же транзактом, который его занял.

TERMINATE – завершить. Оператор ликвидирует вошедший в него транзакт, вычитает число указанных после него единиц (А) из счетчика завершений. По умолчанию A=0.

2-й сегмент (сегмент таймера):

GENERATE 1000 – генерировать время моделирования

(1000 модельных единиц).

TERMINATE 1 – ликвидировать вошедший в него транзакт и вычесть одну единицу из счетчика завершений.

5.2. Текст программы

; 1-й сегмент модели - сегмент транзактов

Prib storage 11

Generate 14,3;0,3

Queue line1

Enter Prib,9

Depart line1

Advance 125

Leave Prib,9

Terminate

; 2-й сегмент модели - сегмент таймера

Generate 1000

Terminate 1

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

GPSS World Simulation Report - Untitled Model 2.2.1

Friday, April 19, 2013 14:25:26

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 1000.000 9 0 1

NAME VALUE

LINE1 10001.000

PRIB 10000.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 71 0 0

2 QUEUE 71 63 0

3 ENTER 8 0 0

4 DEPART 8 0 0

5 ADVANCE 8 1 0

6 LEAVE 7 0 0

7 TERMINATE 7 0 0

8 GENERATE 1 0 0

9 TERMINATE 1 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

LINE1 63 63 71 1 30.683 432.155 438.329 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY PRIB 11 2 0 9 72 1 8.856 0.805 0 63

Расшифровка результатов моделирования.

Моделирование устройства:

STORAGE – имя устройства;

CAP. – емкость устройства;

REM. – количество каналов свободной емкости устройства в конце периода моделирования;

MIN. – минимальное количество используемой емкости;

MAX. – максимальное количество используемой емкости за период моделирования;

ENTRIES – количество входов в устройство за период моделирования;

AVL. – состояние готовности устройства в конце периода;

AVE.C. – определяет среднее значение занятой емкости за период моделирования;

UTIL. – коэффициент использования прибора течении всего времени моделирования;

RETRY – количество транзактов, ожидающих специальных условий;

DELAY – определяет количество транзактов, ожидающих занятия или освобождения устройства.

Моделирование очереди:

QUEUE – имя очереди;

MAX – максимальное содержимое очереди за время моделирования;

CONT. – текущее содержимое очереди;

ENTRY – общее число входов в очередь;

ENTRY(0) – количество «нулевых» входов в очередь (т.е. входов транзактов в очередь, когда прибор был свободен; при этом время пребывания транзакта в очереди равно нулю);

AVE. CONT. – среднее содержимое очереди;

AVE. TIME – среднее время пребывания транзакта в очереди;

AVE. (-0) – среднее время пребывания без учета «нулевых» входов;

RETRY – количество транзактов, ожидающих специальных условий.

5.4. Анализ результатов моделирования

1) Число попаданий команд в вычислительный прибор = 71

2) Процент использования вычислительного прибора = 0,805

3) Mаксимальное количество используемой емкости за период моделирования = 9

4) Количество вхождений команд в очередь = 71

5) Количество «нулевых» вхождений команд в очередь = 1

6) Среднее количество команд в очереди = 30,686

7) Среднее время пребывания транзактов в очереди = 432,155