- •Система имитационного моделирования gpss World имитационное моделирование
- •Элементы языка gpss World
- •Объекты gpss-модели
- •Числовые объекты gpss-модели
- •Примеры gpss моделирования принципы построения gpss-моделей
- •Операторы gpss-модели
- •Примеры gpss моделирования стандартный отчет
- •Занятие 3/3 Примеры gpss моделирования
- •Пример gpss-модели
- •Примеры gpss моделирования двухузловая разомкнутая СеМо с однородным потоком заявок
- •Оператор transfer
- •Примеры gpss моделирования двухузловая разомкнутая СеМо с однородным потоком заявок
- •Оператор transfer
- •Замкнутая СеМо с однородным потоком заявок
- •Линейное замкнутое однородное семо с двумя узлами
Оператор transfer
Модули 1 и 2 моделируют функционирование соответственно узлов 1 и 2 СеМО. В модулях 1 и 2 используется новый оператор – оператор передачи TRANSFER, который реализует передачу активного транзакта к другому блоку (оператору) и может работать в 9 режимах. Активным является транзакт, поступивший в рассматриваемый момент времени в оператор TRANSFER.
В нашей модели оператор TRANSFER используется в двух режимах: статистическом и безусловном.
В общем случае оператор TRANSFER в статистическом режиме имеет вид:
TRANSFER A,[B],C ,
где A – частота (которая может трактоваться как вероятность) передачи активного транзакта к оператору с именем (меткой), указанной в качестве операнда C; может задаваться двумя способами: в виде дробной величины в интервале (0; 1) либо в виде неотрицательного целого числа, которое интерпретируется как доля от тысячи;
B – метка альтернативного оператора, которому будет передан активный транзакт (с вероятностью p=1-A); если операнд не указан, то транзакт передается следующему по порядку оператору;
C – метка оператора, к которому передается активный транзакт с вероятностью, заданной в операнде A.
В нашем случае оператор TRANSFER в статистическом режиме имеет вид:
TRANSFER .8,,Met_2
Активный транзакт с частотой (вероятностью) 0,8 направляется к оператору с меткой Met_2 и с вероятностью 0,2 – к следующему по порядку оператору.
Оператор TRANSFER 800,,Met_2 эквивалентен предыдущему оператору и отличается только тем, что операнд A задан в виде целого числа, которое интерпретируется как доля от тысячи. Заметим, что оператор TRANSFER 8,,Met_2 не эквивалентен двум предыдущим, поскольку вероятность перехода в данном случае будет равна 0,008.
Если в операторе TRANSFER операнд A отсутствует, то это означает, что оператор применяется в безусловном режиме: активный транзакт всякий раз будет направляться к оператору с меткой, указанной в качестве операнда B.
В нашем случае оператор TRANSFER в безусловном режиме имеет вид:
TRANSFER ,Met_1 .
Активный транзакт всякий раз направляется к оператору с меткой Met_1.
Команда START, включённая в состав модели и содержащая в качестве операнда A значение 100000, обеспечивает автоматический запуск процесса моделирования сразу же после завершения трансляции GPSS-модели. Процесс моделирования завершится после прохождения через систему 100 тысяч заявок (транзактов).
На рис. 6.16 представлен фрагмент отчёта, из которого могут быть получены основные характеристики функционирования РСеМО (наиболее интересные и важные результаты выделены жирным шрифтом).
Время моделирования (END TIME), в течение которого через РСеМО прошло N0 = 100000 заявок, равно 9 994 872.283 секунд, что составляет без малого почти 2 777 часов или более 115 суток работы моделируемой системы. Все 100 тысяч обслуженных заявок, в конечном счете, попали в блок TERMINATE и были удалены из модели. В то же время количество сгенерированных транзактов в блоке GENERATE составляет 100 016. Возникает вопрос: почему было сгенерировано транзактов больше 100 000 и где «лишние» 16 транзактов? Ответ достаточно прост: поскольку процесс моделирования был остановлен по числу покинувших сеть ста тысяч транзактов, то на момент завершения моделирования в РСеМО остались транзакты, которые поступили в сеть, но не успели полностью пройти все этапы обслуживания. Где же эти транзакты? Из представленного отчёта видно, что на момент завершения моделирования в 10-м блоке QUEUE находится 15 транзактов и в 13-м блоке ADVANCE – один транзакт, всего 16 «лишних» транзактов на момент завершения процесса моделирования оказались в узле 2 СеМО: один в приборе и 15 – в очереди.
Через первый узел (блок ENTER) транзакты прошли N1 = 501310 раз, через второй (блок SEIZE) – N2 = 401295 раз. Эти значения позволяют рассчитать коэффициенты передач для обоих узлов РСеМО:
что соответствует теоретическим значениям, которые могут быть найдены путём решения системы уравнений (4.16), как это описано в п.4.4.2. Загрузки узлов (UTIL.) соответственно равны: ρ1 = 0,376 и ρ2 = 0,800.
Средние длины очередей (AVE.CONT.) в узлах СеМО составляют: l1 = 0,073 и l2 = 3,243.
Использование
в модели таблиц для построения гистограмм
плотностей распределений времён ожидания
заявок в узлах СеМО и времени пребывания
заявок в сети, кроме средних значений
временных характеристик, позволяет
получить их среднеквадратические
отклонения:
ВЫВОД
Отметим, что для каждого узла в модели определяется так называемое единичное время ожидания заявок в узле СеМО, то есть время, соответствующее одному попаданию заявки в узел. В отличие от единичного, полное время ожидания заявки в узле СеМО учитывает, сколько раз заявка попала в данный узел за время ее нахождения в СеМО.
