Параметр
|
Вариант 4
|
N
|
16
|
T распределена по закону
|
Е(1)
|
t1±d1
|
24±4
|
t2±d2
|
28±6
|
t3±d3
|
4±2
|
L
|
40
|
S
|
2
|
(λ) - экспоненциальное распределение с
параметром λ мин-1.
Метод
построения модели
Для моделирования на GPSS надо определить условия работы моделируемой системы
и какие элементы GPSS надо использовать для удовлетворения условий модели.
В данном случае есть ограничивающие условия. Во-первых, на маршруте
работает 2 автобуса. Во-вторых в каждом автобусе фиксированное число мест.
Естественно отождествлять автобусы с хранилищем (STORAGE). Также естественно
отождествлять пассажиров с транзактами, принадлежащим к одному семейству
(ADOPT). После того как в автобусе будут заняты все места, автобус
рассматривается как единое целое - один транзакт (ASSEMBLE). Аналогично тому,
как пассажиры садятся в автобус, становятся в очередь, и автобус осуществляет
рейсы, транзакты циркулируют в GPSS-модели системы.
В реальной системе, после того как автобус выполнил рейс, он начинает
новый. В модели транзакт должен быть возвращен назад посредством блока TRANSFER
в блок новой поездки. Для того чтобы ограничить общее число тразрактов,
циркулирующих в модели, необходимо использовать в GENERATE операнд, задающих
желаемое число транзактов.
Для того чтобы вычислить прибыль необходимо знать количество поездок и
количество отказов от поездок в течение моделируемого времени.
Таблица
определений
Здесь необходимо указать назначение всех объектов модели и отметить, что
принято за единицу модельного времени.
Единица времени - 1 минута.
Элементы GPSS
|
Интерпритация
|
Транзакты в 1-м сегменте
модели
|
Пассажиры автобусов.
|
Транзакты во 2-м сегменте
модели
|
Транзакт-таймер.
|
NN
|
Число мест в автобусах
|
T1,T2
|
Время, затрачиваемое
автобусами А и Б на маршрут соответственно.
|
D1,D2
|
Отклонения во времени T1 и
Т2 соответственно.
|
Т3
|
Время, затрачиваемое на
освобождение пассажирами автобусов.
|
D3
|
Отклонение
во времени T3
|
Максимальная длина очереди
|
SS
|
Плата за проезд.
|
Avto_A
|
Автобус А
|
Avto_B
|
Автобус Б
|
Vr1
|
Время пути по прямому
маршруту автобусов А и Б
|
Vr2
|
Время пути по обратному
маршруту автобусов А и Б
|
Vr3
|
Время высадки пассажиров из
автобусов А и Б
|
Vrem
|
Таблица распределения
времени ожидания в очереди
|
Avt_A
|
Движение автобуса А по
всему маршруту
|
Avt_B
|
Движение автобуса Б по
всему маршруту
|
Fin
|
Конец поездки пассажира
|
Otkaz
|
Отказ пассажира от поездки
|
Блок-схема
Блок-схемы получили широкое применение при описании систем, но форма
представления обычно зависит и от самой системы, и от специалиста, описывающего
эту систему. Поэтому, при построении блок-схем, следует соблюдать определенные
условия, являющиеся основой создания программы на языке моделирования. В GPSS
WORLD имеется определенное количество типов блоков для задания объектов и
операций над ними. Каждому блоку соответствует графическое изображение на
блок-схеме. Стрелки между блоками указывают маршруты потоков сообщений. Далее,
для того, чтобы применить язык моделирования GPSS WORLD, каждый блок блок-схемы
заменяется соответствующим оператором GPSS WORLD.
1-й сегмент модели (работа автобусного маршрута)
(Otkaz)
(Avt_B)
(Avt_A)
(Fin)
(Avt_B)
(Fin)
(Otkaz)
2-й сегмент модели (сегиент таймера)
Листинг
программы
*Модель работы автобусного маршрута
*Определение объектов
NN EQU 25 ; количество мест в
автобусе
T1 EQU 24 ; время, затрачиваемое автобусом А на
маршрут
D1 EQU 4 ; отклонения во времени T1
T2 EQU 28 ; время, затрачиваемое автобусом В на
маршрут
D2 EQU 6 ; отклонения во времени T2
T3 EQU 4 ; время, затрачиваемое на высадку
пассажиров
D3 EQU 2 ; отклонение во времени Т3
LL EQU 40 ; максимальная длина
очереди
SS EQU 2 ; плата за проезд
денежных единиц
Avto_A STORAGE 25 ; автобус А
Avto_B STORAGE 25 ; автобус В
Vr1 VARIABLE (Uniform (1,T1-D1,T1+D1)) ; время прямого пути автобусов А и Б
Vr2 VARIABLE (Uniform (2,T2-D2,T2+D2)) ; время обратного пути автобусов А и
Б
Vr3 VARIABLE (Uniform (3,T3-D3,T3+D3)) ; время высадки пассажиров из
автобусов А и Б
Vrem QTABLE Och,10,10,20 ; оценивает очередь с именем Och
GENERATE (Exponential(1,0,1)) ;
прибытие пассажиров
ADOPT 55 ; принадлежность к
одному семейству
TEST LE Q$Och,LL,Otkaz ; отказ, если длина очереди больше L
QUEUE Och ; встать в очередь
TRANSFER BOTH,Avt_A,Avt_B ; предпочтение автобусу А
*описание 1-го автобуса_A ENTER Avto_A ; занять
одно место автобуса А
DEPART Och ; покинуть очередь
ASSEMBLE NN ; автобус рассматривается
как единое целое
ADVANCE V$Vr1 ; поездка в один конец V$Vr3 ;
пассажиры выходят
ADVANCE V$Vr1 ; поездка в обратном направлении
LEAVE Avto_A,NN ; освободить автобус
TRANSFER ,Fin
*описание 2-го автобуса
Avt_B ENTER Avto_B ; занять одно место автобуса B
DEPART Och ; покинуть очередь
ASSEMBLE NN ; автобус рассматривается как единое
целое
ADVANCE V$Vr2 ;
поездка в один конец
ADVANCE V$Vr3 ;
пассажиры выходят
ADVANCE V$Vr2 ;
поездка в обратном направлении
Fin SAVEVALUE Kpoezd+,1 ; считаем суммарное количество рейсов
TERMINATE
Otkaz SAVEVALUE Kotk+,1 ; считаем количество
отказов
TERMINATE
*сегмент таймера
GENERATE 600 Vyr,(NN#SS#X$Kpoezd-SS#X$Kotk) 1 1
Выходные данные
GPSS World Simulation Report - Untitled Model 4.1.1, December
25, 2009 00:04:49TIME END TIME BLOCKS FACILITIES STORAGES
.000 600.000 27 0 2VALUE_A 10009.000_B
10010.000_A 6.000_B
14.0004.0006.0002.00021.00010017.00010016.00040.00025.00010015.00023.0002.00024.00028.0004.00010011.00010012.00010013.00010014.00010018.000LOC
BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
GENERATE 580 0 0
2 ADOPT 580 0 0
3 TEST 580 0 0
4 QUEUE 529 0 0
5 TRANSFER 529 29 0
AVT_A 6 ENTER 275 0 0
7 DEPART 275 0 0
8 ASSEMBLE 275 0 0
9 ADVANCE 11 0 0
10 ADVANCE 11 0 0
11 ADVANCE 11 1 0
12 LEAVE 10 0 0
13 TRANSFER 10 0 0
AVT_B 14 ENTER 225 0 0
15 DEPART 225 0 0
16 ASSEMBLE 225 0 0
17 ADVANCE 9 0 0
18 ADVANCE 9 0 0
19 ADVANCE 9 1 0
20 LEAVE 8 0 0
FIN 21 SAVEVALUE 18 0 0
22 TERMINATE 18 0 0
OTKAZ 23 SAVEVALUE 51 0 0
24 TERMINATE 51 0 0
25 GENERATE 1 0 0
26 SAVEVALUE 1 0 0
27 TERMINATE 1 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0)
RETRY41 29 529 69 20.255 22.973 26.419 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY
DELAY_A 25 0 0 25 275 1 24.405 0.976 29 0
AVTO_B 25 0 0 25 225 1 23.436 0.937 29 0
TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%23.494 14.671 0
_ - 10.000 107 21.40
.000 - 20.000 75 36.40
.000 - 30.000 142 64.80
.000 - 40.000 106 86.00
.000 - 50.000 59 97.80
.000 - 60.000 11 100.00RETRY VALUE0 18.0000 51.0000 798.000XN PRI BDT ASSEM
CURRENT NEXT PARAMETER VALUE
582 0
600.428 582 0
1
0 616.054 25 11 12
0 625.378 25 19 20
0 1200.000 583 0 25
Выводы
Если в каждом из автобусов будет 25 мест (N=25), то время ожидания будет
наименьшим. Среднее время ожидания 23,494 минут. Средняя длина очереди ≈
20 человек, среднее время пребывания в очереди 22,973 мин. Выручка составляет
798 руб.
Если в каждом из автобусов будет по 20 мест, то среднее время ожидания увеличится
и составит 36,826 мин. Средняя длина очереди ≈ 26 человек. Среднее время
пребывания в очереди 35,489 мин. Выручка = 488 руб.
Если в каждом автобусе будет по 15 мест, то среднее время ожидания
увеличится и составит 54,782 мин. Средняя длина очереди ≈ 32 человек.
Среднее время пребывания в очереди 54,063 мин. Выручка = 94 руб.
Из полученных данных следует, что при количестве мест в автобусе = 25
средняя длина очереди, среднее время пребывания в очереди, среднее время
ожидания будут наименьшими, а выручка наибольшей. Этот план является
оптимальным.
Список литературы
1. http://urist.uchilka.ru/view/3039-1350.htm
- Основы моделирования на GPSS.
. Королев
А. Г. Моделирование систем на языке GPSS WORLD. Практический подход в примерах
и задачах: Учебное пособие. - Северодонецк, 2006.
. Методические
указания по использованию средств имитационного моделирования систем и сетей
связи для слушателей ФПКП/ Л.А.Воробейчиков, В.Н.Шакин, С.Е.Шибанов/МИС. - М.,
1990.