Пример 1.1. Составить модель процесса обработки 100 простых деталей на слесарной операции, поступление которых подчиняется равномерному закону с интервалом [4…10] минут, а обслуживание – равномерному закону интервалом [2…6] минут.
Распределение поступления заявок (генерации транзактов) по равномерному закону с интервалом [4…10] единиц времени можно описать как середину интервала ± разброс интервала времени относительно середины: 7±3 единицы времени. Соответственно, для равномерного распределения времени обслуживания интервал [2…6] можно описать как 4±2.
Модель на языке GPSS будет выглядеть так:
50 SIMULATE ; моделирование (необязательно для GPSS World )
100 GENERATE 7,3 ;генерация транзакта
110 SEIZE PRIBOR ;занятие прибора
120 ADVANCE 4,2 ;задержка транзакта
130 RELEASE PRIBOR ;освобождение прибора
140 TERMINATE 1 ;уничтожение транзакта и уменьшение
; на единицу счетчика числа завершений
150 START 100 ;начало моделирования с числом повторений 100.
Результаты работы модели приведены на рисунке 1.4. Из них видно, что при обработке 100 деталей, поступающих с указанным временем, загрузка слесаря составила 55,6%, а среднее время обработки одной детали – 3,994 мин. Процесс обработки 100 деталей занял 717,989, т.е. почти 718 мин. (END TIME).
Программа на языке GPSS/PC состоит из пронумерованных операторов, располагающихся и выполняемых в порядке этих номеров. Операторы управления моделированием не нумеруются. Система GPSS World не требует обязательной нумерации строк. Нумерация может использоваться для удобства восприятия текста модели. Символ точки с запятой «;» служит для указания текстового комментария.
Пример 1.2. Рассмотрим работу модели примера 1.1, но не для моделирования обработки 100 деталей, а в течение 10 часов. В случае необходимости моделирования за четко указанный промежуток времени в модель нужно ввести сегмент таймера, состоящий из двух блоков GENERATE <время моделирования> и TERMINATE 1 (строки 150 и 160). При этом мы убрали 1 у блока TERMINATE в строке 140, т.е. этот блок теперь работает только на уничтожение транзакта, а окончание процедуры моделирования определяется таймером. В строке 170 команды START значением параметра является 1, т.к. уменьшение счетчика завершений происходит 1 раз в таймере (строка 160). Результаты приведены на рис.1.5.
100 GENERATE 7,3
110 SEIZE PRIBOR
120 ADVANCE 4,2
130 RELEASE PRIBOR
140 TERMINATE
150 GENERATE 600
160 TERMINATE 1
170 START 1
Достарыңызбен бөлісу: |