Определение непрерывной функции

Дискретные случайные переменные могут иметь только фиксированное число значений. В противоположность этому непрерывные случайные переменные могут иметь неограниченное число различных значений на заданном интервале. Для определения непрерывной функции, так же как и для определения дискретной, используют оператор FUNCTION. Непрерывные функции предназначены для имитации случайных процессов, заданных непрерывной функцией распределения F(х). Функция распределения может быть также задана таблицей, в которой указаны пары: значения аргумента, имеющего равномерное распределение в интервале (0, 1), и соответствующие интервалы значений функции. Например, в табл. 4 заданы интервалы значений непрерывной случайной величины. Первая строка таблицы показывает, что ни одно значение случайной величины не попало в интервал от 0 до 15. Вторая строка таблицы показывает, что 7 % значений случайной величины попали в интервал от 15 до 30 и т.д.

Таблица 4

Непрерывная функция распределения

Интервалы значений случайной величины Относительная частота попадания в интервал Суммарная частота
Менее 15 от 15 до 30 от 30 до 45 от 45 до 60 от 60 до 75 от 75 до 90 0,00 0,07 0,25 0,41 0,19 0,08 0,00 0,07 0,32 0,73 0,92 1,00

Так же как и при определении дискретной функции, в соответствии с информацией табл. 4 можно задать непрерывную функцию, определив суммарную частоту случайной (см. табл. 4) и использовав оператор FUNCTION:

BОХ FUNCTION RN1,C6

.0,15/.07,30/.32,45/.73,60/.92,75/1,90

Функция, имеющая символическое имя ВОХ, будет принимать с вероятностью 0 – значения, равномерно распределенные в интервале (0, 15), с вероятностью, равной 0.07– значения, равномерно распределенные в интервале (15, 30), с вероятностью 0.32 – значения, равномерно распределенные в интервале (30, 45) и т.д. Последний интервал значение 90 не включает потому, что результат розыгрыша случайной величины, равномерно распределенной в интервале (0, 1) с помощью датчика RN1, никогда не будет равен 1 – все датчики с именами RN в GPSS/Н дают значения, равномерно распределенные от 0.000001 до 0.999999. Графическая интерпретация функции представлена на рис. 22.

Определение непрерывной функции - student2.ru

Рис. 22. Графическая интерпретация функции ВОХ

Если RN1 выдает число 0,07 или меньше, интерпретатор выполняет линейную интерполяцию между значениями 15 и 30 и определяет значение функции. Если RN1 в точности равно 0,07, значением функции будет 30 и т.д.

На непрерывную функцию можно ссылаться из блоков GENERATE и ADVANCE, так же как и на дискретную.

Определение функций по заданному

Закону распределения

Если закон распределения случайной переменной заранее известен, нет необходимости задавать функцию вручную, определяя значения случайной переменной и соответствующие значения суммарной частоты. Для моделирования случайных событий с известным законом распределения GPSS/H имеет встроенные функции, которые генерируют произвольные случайные переменные из 26 популярных распределений. В табл. 5 приведены определения двух наиболее применяемых законов распределения, поддерживаемых студенческой версией GPSS/H.

Таблица 5

Встроенные функции

Распределение Формат функции
Нормальное Экспоненциальное RVNORM(RN1, мат. ожидание, дисперсия) RVEXPO(RN1, параметр l)

Например, необходимо смоделировать поступление заготовок в робототехнический комплекс. Интервалы между поступлением заготовок распределены согласно экспоненциальному закону с параметром l = 7. Для имитации поступления заготовок используем блок GENERATE. Тогда в соответствии с этим условием и табл. 5, запишем:

GENERATE RVEXPO(1,7)

Пример имитационного моделирования

Процедуру имитационного моделирования покажем на примере изготовления деталей разными типами станков.

Технологический процесс содержит две стадии. На каждой стадии производится обработка деталей на двух станках типа А и одном типа В. После обработки заготовки на станке типа А полуфабрикаты идут на дальнейшую обработку на станок типа В. Готовые детали поступают в накопитель.

Интервалы поступления заготовок на группу станков типа А распределены согласно экспоненциальному закону с параметром l = 28 минут. Продолжительность обработки заготовки станком типа А составляет 63±9 минут (распределение равномерное), а станком типа В – 55±5 минут (распределение равномерное). Время транспортировки заготовки до группы станков типа А составляет 32±10 минут, а полуфабрикатов до станка типа В – 12±5 минут (распределение нормальное). Предполагается, что между двумя станциями существует неограниченная очередь.

Необходимо построить модель технологического процесса изготовления деталей, используя специализированный язык компьютерной имитации GPSS/H, и определить продолжительность изготовления 50 деталей, коэффициент загрузки группы станков типа А и станка типа В, среднее значение длин очередей перед группой станков типа А и станком типа В.

Метод построения модели

Построим блок-схему модели технологического процесса (рис.123).

Определение непрерывной функции - student2.ru

Рис. 23. Блок-схема имитационной модели

технологического процесса изготовления деталей

Пусть транзакт представляет собой заготовку, которая по мере продвижения по модели преобразуется в готовую деталь. Поступление заготовок в соответствии с заданным распределением имитируем блоком GENERATE. Группу станков типа А моделируем многоканальным устройством STA1, т.е. двумя блоками ENTER и LEAVE, между которыми ставим блок ADVANCE для имитации обработки заготовки. Так как станок второй группы всего один, имитируем его прибором обслуживания STA2, т.е. двумя блоками SEIZE и RELEASE. Для сбора статистики об очередях перед станками типов А и В вводим два регистратора очереди посредством блоков QUEUE и DEPART. Транспортировку заготовки до станков типа А и станка типа В моделируем блоками ADVANCE. Блок TERMINATE вводим для имитации поступления готовой детали в накопитель.

Подготовка модели к запуску

Для ввода в ЭВМ в соответствии с блок-схемой пишем GPSS/H-программу, используя любой текстовый редактор, создающий неформатируемый текст (формат ASCII). Прежде чем запускать модель (осуществлять прогон), к GPSS/H-программе необходимо добавить два оператора SIMULATE и END.

Оператор SIMULATE – указывает интерпретатору, что должен быть осуществлен прогон модели (начальная команда в GPSS/H-программе). Если этот оператор отсутствует, то интерпретатор проверяет правильность записи модели на языке GPSS/Н, но прогона модели не выполняет.

Оператор END– завершает работу интерпретатора.

Следовательно, для начала моделирования используем оператор SIMULATE. Для задания емкости многоканального устройства, имитирующего станки группы А, вводим оператор STORAGE. Оператор START вписываем для задания значения счетчика завершения, которое соответствует количеству требуемых деталей. Оператор END вводим для окончания моделирования. После перевода блок-схемы модели и добавления необходимых операторов GPSS/H-программа, подготовленная к запуску, будет выглядеть следующим образом:

SIMULATE Начало моделирования

STORAGE S(STA1),2 Задание станков в группе А

GENERATE RVEXPO(1,28) Поступление заготовок

ADVANCE RVNORM(3,32,10) Транспортировка заготовки

QUEUE LINE1 Занятие очереди перед станками

группы А

ENTER STA1 Занятие станка из группы А

DEPART LINE1 Освобождение очереди перед

станками группы А

ADVANCE 63,9 Обработка на станке группы А

LEAVE STA1 Освобождение станка группы А

ADVANCE RVNORM(5,12,5) Транспортировка детали

QUEUE LINE2 Занятие очереди перед станком

типа В

SEIZE STA2 Занятие станка типа В

DEPART LINE2 Освобождение очереди перед

станком типа В

ADVANCE 55,5 Обработка на станке типа В

RELEASE STA2 Освобождение станка типа В

TERMINATE 1 Поступление деталей в накопи-

тель

START 50 Программа выпуска

END Окончание моделирования

После написания программы сохраним файл с расширением .gps (например, primer1.gps).

Наши рекомендации