Лаба3
.docСУРГУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ХАНТЫ – МАНСИЙСКОГО АВТОНОМНОГО ОКРУГА – ЮГРЫ
Факультет информационных технологий
Кафедра автоматизированных систем обработки информации и управления
Лабораторная работа №3
МОДЕЛИРОВАНИЕ РАБОТЫ МНОГОКАНАЛЬНЫХ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ В GPSS WORLD
Выполнил: студент группы 1192
Волков Александр Дмитриевич
Проверил преподаватель:
Бушмелева Кия Иннокентьевна
Сургут, 2012
Цель работы – освоить методику построения имитационных моделей и их программирование на языке GPSS World на примере многоканальных систем массового обслуживания. Получить навыки исследования имитационных моделей обработки и анализа результатов моделирования.
Вариант 4
Задание: Морские суда двух типов прибывают в порт, где происходит их разгрузка. В порту есть два буксира, обеспечивающих ввод и вывод кораблей из порта. К первому типу судов относятся корабли малого тоннажа, которые требуют использования одного буксира. Корабли второго типа имеют большие размеры, и для входа и выхода из порта требуется два буксира. Из-за различия размеров двух типов кораблей необходимы и причалы различного размера. Кроме того, корабли имеют различное время погрузки - разгрузки.
Необходимо построить модель системы, в которой можно оценить время ожидания кораблями каждого типа входа в порт (время ожидания входа в порт включает время ожидания освобождения причала и буксира), в течение рабочей недели (5 дней при 8 часовом рабочем дне). Корабль, ожидающий освобождения причала, не обслуживается буксиром до тех пор, пока не будет предоставлен нужный причал. Корабль второго типа не займет буксир до тех пор, пока ему не будут доступны оба буксира.
Исходные данные по вариантам приведены в табл. 3.
№ |
Тип корабля |
|||||||||
1 |
2 |
|||||||||
Интервал прибытия, мин. |
Время входа в порт, мин |
Кол-во доступных причалов |
Время погрузки- разгрузки, час |
Время выхода из порта, мин |
Интервал прибытия, мин |
Время входа в порт, мин |
Кол-во доступных причалов |
Время погрузки-разгрузки, час |
Время выхода из порта, мин |
|
4 |
130±30 |
30±7 |
6 |
12±2 |
20±5 |
390±60 |
45±12 |
3 |
18±4 |
35±10 |
Ход работы:
Текст программы:
*********************************************
* Моделирование работы порта *
*********************************************
; Вместимость портов
PRICH_1 STORAGE 6 ; 6 причала для судов 1-го типа(требуют использование 1-го буксира)
PRICH_2 STORAGE 3 ; 3 причала для судов 2-го типа(требуют использование 2-х буксиров)
BUKSIR STORAGE 2 ; 2 буксира
TAB1 TABLE M1,400,50,16
TAB2 TABLE M1,800,100,6
; Имитация моделирования морских судов 1-го типа
GENERATE 130,30 ; генерирование судов к подходу в порт
Povtor1 GATE SNF PRICH_1,Zanyt1 ; регулируется поток судов
ENTER PRICH_1 ; получение причала
QUEUE Ocher_PRICH_1 ; включение в очередь на причал № 1
SEIZE Prichal_1 ; обращение к причалу
DEPART Ocher_PRICH_1 ; выход из очереди к причалу № 1
ENTER BUKSIR ; получение буксира
QUEUE Ocher_BUKSIR ; включение в очередь на буксир
SEIZE Bucsir ; обращение к буксиру
DEPART Ocher_BUKSIR ; выход из очереди к буксира
ADVANCE 30,7 ; буксирование до причала
RELEASE Bucsir ; освобождение буксира
LEAVE BUKSIR ; оставить буксир
ADVANCE 720,120 ; погрузка - разгрузка
ENTER BUKSIR ; получение буксира
QUEUE Ocher_BUKSIR ; включение в очередь на буксир
SEIZE Bucsir ; обращение к буксиру
DEPART Ocher_BUKSIR ; выход из очереди к буксира
ADVANCE 20,5 ; буксирование (отчаливание)
RELEASE Bucsir ; освобождение буксира
LEAVE BUKSIR ; оставить буксир
RELEASE Prichal_1 ; освобождение причала
LEAVE PRICH_1 ; оставить причал
TABULATE TAB1 ; табулировать порт
TERMINATE ; выход судов из системы
Zanyt1 ADVANCE 770,132 ; время ожидания освобождения порта
TRANSFER ,Povtor1 ; переход к оператору с меткой повтор1
; Имитация моделирования морских судов 2-го типа
GENERATE 390,60 ; генерирование судов к подходу в порт
Povtor2 GATE SNF BUKSIR,Zanyt2 ; регулируется поток судов
ENTER PRICH_2 ; получение причала
QUEUE Ocher_PRICH_2 ; включение в очередь на причал № 2
SEIZE Prichal_2 ; обращение к причалу
DEPART Ocher_PRICH_2 ; выход из очереди к причалу № 2
ENTER BUKSIR,2 ; получение буксира
QUEUE Ocher_BUKSIR ; включение в очередь на буксир
SEIZE Bucsir ; обращение к буксиру
DEPART Ocher_BUKSIR ; выход из очереди к буксира
ADVANCE 45,12 ; буксирование до причала
RELEASE Bucsir ; освобождение буксира
LEAVE BUKSIR,2 ; оставить буксир
ADVANCE 1080,240 ; погрузка - разгрузка
ENTER BUKSIR,2 ; получение буксира
QUEUE Ocher_BUKSIR ; включение в очередь на буксир
SEIZE Bucsir ; обращение к буксиру
DEPART Ocher_BUKSIR ; выход из очереди к буксира
ADVANCE 35,10 ; буксирование (отчаливание)
RELEASE Bucsir ; освобождение буксира
LEAVE BUKSIR,2 ; оставить буксир
RELEASE Prichal_2 ; освобождение причала
LEAVE PRICH_2 ; оставить причал
TABULATE TAB2 ; табулировать порт
TERMINATE ; выход судов из системы
Zanyt2 ADVANCE 1160,262 ; время ожидания освобождения порта
TRANSFER ,Povtor2 ; переход к оператору с меткой повтор_
; Задание времени моделирования
GENERATE 2400 ;время работы модели 5 дней по 8 часов
TERMINATE 1
START 1 ;система пропускает по 1 судну
Отчет работы программы при заданных параметрах:
GPSS World Simulation Report - Лаба3.1.1 |
Saturday, April 21, 2012 00:18:07 |
|
START TIME END TIME BLOCKS FACILITIES STORAGES |
0.000 2400.000 55 3 3 |
|
NAME VALUE |
BUCSIR 10008.000 |
BUKSIR 10002.000 |
OCHER_BUKSIR 10007.000 |
OCHER_PRICH_1 10005.000 |
OCHER_PRICH_2 10009.000 |
POVTOR1 2.000 |
POVTOR2 29.000 |
PRICHAL_1 10006.000 |
PRICHAL_2 10010.000 |
PRICH_1 10000.000 |
PRICH_2 10001.000 |
TAB1 10003.000 |
TAB2 10004.000 |
ZANYT1 26.000 |
ZANYT2 52.000 |
|
|
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY |
1 GENERATE 19 0 0 |
POVTOR1 2 GATE 23 0 0 |
3 ENTER 8 0 0 |
4 QUEUE 8 5 0 |
5 SEIZE 3 0 0 |
6 DEPART 3 0 0 |
7 ENTER 3 0 0 |
8 QUEUE 3 0 0 |
9 SEIZE 3 0 0 |
10 DEPART 3 0 0 |
11 ADVANCE 3 0 0 |
12 RELEASE 3 0 0 |
13 LEAVE 3 0 0 |
14 ADVANCE 3 1 0 |
15 ENTER 2 0 0 |
16 QUEUE 2 0 0 |
17 SEIZE 2 0 0 |
18 DEPART 2 0 0 |
19 ADVANCE 2 0 0 |
20 RELEASE 2 0 0 |
21 LEAVE 2 0 0 |
22 RELEASE 2 0 0 |
23 LEAVE 2 0 0 |
24 TABULATE 2 0 0 |
25 TERMINATE 2 0 0 |
ZANYT1 26 ADVANCE 15 11 0 |
27 TRANSFER 4 0 0 |
28 GENERATE 5 0 0 |
POVTOR2 29 GATE 5 1 0 |
30 ENTER 4 0 0 |
31 QUEUE 4 2 0 |
32 SEIZE 2 0 0 |
33 DEPART 2 0 0 |
34 ENTER 2 0 0 |
35 QUEUE 2 0 0 |
36 SEIZE 2 0 0 |
37 DEPART 2 0 0 |
38 RELEASE 2 0 0 |
39 LEAVE 2 0 0 |
40 ADVANCE 2 1 0 |
41 ENTER 1 0 0 |
42 QUEUE 1 0 0 |
43 SEIZE 1 0 0 |
44 DEPART 1 0 0 |
45 ADVANCE 1 0 0 |
46 RELEASE 1 0 0 |
47 LEAVE 1 0 0 |
48 RELEASE 1 0 0 |
49 LEAVE 1 0 0 |
50 TABULATE 1 0 0 |
51 TERMINATE 1 0 0 |
ZANYT2 52 ADVANCE 0 0 0 |
53 TRANSFER 0 0 0 |
54 GENERATE 1 0 0 |
55 TERMINATE 1 0 0 |
|
|
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY |
PRICHAL_1 3 0.937 749.819 1 5 0 0 0 5 |
BUCSIR 8 0.065 19.382 1 0 0 0 0 0 |
PRICHAL_2 2 0.824 988.337 1 7 0 0 0 2 |
|
|
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY OCHER_PRICH_1 5 5 8 1 3.846 1153.845 1318.680 0 OCHER_BUKSIR 1 0 8 8 0.000 0.000 0.000 0 OCHER_PRICH_2 2 2 4 1 1.014 608.314 811.085 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY PRICH_1 6 0 0 6 8 1 4.783 0.797 0 0 PRICH_2 3 0 0 3 4 1 1.837 0.612 0 1 BUKSIR 2 2 0 2 11 1 0.076 0.038 0 0
TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.% TAB1 1116.217 509.226 0 750.000 - 800.000 1 50.00 800.000 - 850.000 0 50.00 850.000 - 900.000 0 50.00 900.000 - 950.000 0 50.00 950.000 - 1000.000 0 50.00 1000.000 - 1050.000 0 50.00 1050.000 - 1100.000 0 50.00 1100.000 - _ 1 100.00 TAB2 1032.900 0.000 0 1000.000 - 1100.000 1 100.00
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE 5 0 2423.952 5 14 15 17 0 2428.109 17 26 27 24 0 2466.560 24 0 28 18 0 2501.267 18 26 27 27 0 2511.899 27 0 1 7 0 2559.978 7 40 41 13 0 2635.437 13 26 27 12 0 2658.041 12 26 27 21 0 2813.699 21 26 27 22 0 2849.746 22 26 27 14 0 2853.547 14 26 27 25 0 2923.500 25 26 27 23 0 2973.715 23 26 27 26 0 3080.595 26 26 27 16 0 3120.977 16 26 27 28 0 4800.000 28 0 54
|
Гистограмма распределения времени обслуживания транзакта для судов 1 типа.
Гистограмма распределения времени обслуживания транзакта для судов 2 типа.
Вывод: Была разработана имитационная модель обслуживания 2х типов судов в порту в системе моделирования на примере многоканальных систем массового обслуживания. За моделируемый интервал времени работы системы (5 дней по 8 часов) было сгенерировано 24 транзактов: 19 первого типа и 5 второго. Однако только 8 судов вошли в причал первого типа и 4 в причал второго типа. Провели разгрузку и загрузку 3 и 1 судна первого и второго типа соответственно. Максимальная очередь на погрузку-разгрузку составляет 5 для первого типа и 2 для второго. Загрузка причала для судов первого типа составляет 79,7%, для судов второго типа 61,2%. Загрузка буксиров составляет 3,8%, что говорит о их простое. Среднее время обслуживания судов составляет 749,81 мин. на причале первого типа, 19,38мин. на причале второго типа и 988,33 мин. на буксирах. Максимальное число использованных – 6, 3, 2 для причалов первого, второго типа и буксиров соответственно. Среднее значение количества занятых – 4.78, 1.83, 0.07 причалов первого, второго типа и буксиров соответственно. Коэффициент использования – 0.797, 0.612, 0.038 для причалов первого, второго типа и буксиров соответственно.