Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информационные технологии. Лекции.docx
Скачиваний:
20
Добавлен:
11.09.2018
Размер:
147.12 Кб
Скачать

Лекция №2. (26.02.2018)

На языке GPSS имеется возможность использовать разнообразные законы распределения случайных величин. В GPSS World имеется 24 стандартные функции законов распределения. Для того, чтобы их использовать, например, в блоке GENERATE, их записывают в качестве параметра, взяв при этом в круглые скобки. Наиболее часто используется экспоненциальный закон распределения. Используемая функция имеет вид: EXPONENTIAL (A, B, C). Параметр A указывает датчик параметров чисел, используемого при генерации случайных значений. Параметр C задаёт среднее значение получаемых случайных значений. Это же значение определяет дисперсию (степень размаха) случайных значений. Параметр B задаёт сдвиг значений, то есть в итоге средне значение генерируемых случайных чисел будет равняется B + C.

В блоке GENERATE мы можем записать имя этой функции с конкретными аргументами, взятыми в круглые скобки, задав его сразу после имени блока. Если же мы запишет имя функции в старые параметры, а первым записываем некоторое число, то результатом будет.

Любой прибор задан своим уникальным именем и «общение» транзактов с приборами осуществляется двумя способами:

  • Блок захвата приборов SEIZE A. Суть захвата прибора состоит в том, что прибор становится недоступен для всех последующих транзактов и они выстраиваются перед этим блоком в очередь.

  • Блок освобождения прибора RELEASE A. Параметр A – это имя прибора.

Замечание: время необходимое транзактам для того, чтобы пойти через блок SEIZE или RELEASE равно нулю.

Блок задержки ADVANCE. Параметры A и B имеют тот же смысл и значения по умолчанию, что и в блоке GENERATE. Когда транзакт подходит к блоку ADVANCE, он прекращает свое перемещение по модели на случайное время, заканчивается параметрами A и B. Если у нас в модели меняется несколько сегментов (начинающихся блоком GENERATE и заканчивающихся блоком TERMINATE), то взаимодействие между ними можно задать, используя приборы с одинаковыми именами, указанными в блоках SEIZE и RELEASE.

Пример:

Составить модель обслуживания посетителей одним парикмахером. Предлагается, что обслуживание одного посетителя занимает случайное время, распределённое равномерно от 10 до 16 минут. Время между приходом двух посетителей так же случайно и равно от 10 до 20 минут.

Решение начинается с блока GENERATE:

GENERATE 15, 5

SEIZE PAR

ADVANCE 13, 3

RELEASE PAR

TERMINATE

GENERATE 480

TERMINATE 1

START 1

Усложним модель:

Имеются мужчины и женщины. Время обслуживания мужчины от 10 до 16 минут, женщины – от 60 до 120 минут. Мужчины приходят через интервал от 10 до 20 минут, женщины – от 5 до 13.

Решение:

GENERATE 9, 4

SEIZE PAR

ADVANCE 90, 30

RELEASE PAR

TERMINATE

GENERATE 48

TERMINATE 1

START 1

Лекция №3. (12.03.2018)

Блоки сбора статистики

Блоки сбора статистики предназначены для получения сведений о вероятностных характеристиках пребывания транзактов на определенном участке модели. К этим характеристикам относятся максимальное количество транзактов, одновременно находящихся на заданном участке, общее количество транзактов, прошедших через заданный участок, средне количество транзактов, находящихся на этом участке одновременно, среднее время пребывания одного транзактов на этом участке и др.

Блок присоединения к сбору статистики – QUEUE A. A - название накопителя статистики. Когда транзакты проходит через блок QUEUE сверления о времени похода и о самом транзакте записываются в хранилище информации.

Бок выхода из сбора статистики – DEPART A. При проходе через этот блок в хранилище записываются момент времени и сверления о транзакте.

По завершении работы модели собранные сведения подвергаются статистической обработке и её результаты (перечисленные выше) выдаются в стандартном отчёте. Если в модели имеется несколько сегментов, то можно объединить сверления их этих сегментов в одном хранилище статистики.

Пример:

Составить модель работы парикмахера, к которому имеется подток посетителей, между приходим которых время распределено равномерно на интервале (10;16). Обслуживание одного посетителя занимает время, распределенное экспоненциально с параметром (средне время) – 12. Собрать сведения об очереди ожидания обслуживания посетителя парикмахером.

Решение:

GENERATE 13,3

QUEUE OCH

SEIZE PARM

DEPART OCH

ADVANCE (EXPONENTIAL (1,0,12)

RELEASE PARM

TERMINATE 1

START 97

Пример 2:

В парикмахерской имеется два мастера – для мужской и для женской стрижки. Экспоненциальное время – 20 минут. Женщины приходят от 10 до 40 минут, время обслуживания – 33 минуты. Собрать сведения сколько требуется мест в фае ожидания. Моделирование провести для 102-х посетителей.

Решение:

GENERATE 35,5

QUEUE OCH

SEIZE PARF

DEPART OCH

ADVANCE (EXPONENTIAL (3,0,33)

RELEASE PARF

TERMINATE 1

START 102

Пример 3:

В парикмахерской происходит покраска волос в три стадии:

  1. Нанесение краски от 10 до 30 минут – U (10;30);

  2. Ожидание, 20-40 минут – U (20;30);

  3. Смыв, 5-9 минут – U (5;9);

Посетители приходят в интервале (20;40). Смоделировать поход 121-го посетителя.

Решение:

GENERATE 30, 10

QUEUE FOYE

SEIZE PAR

DEPART FOYE

ADVANCE 20, 10

RELEASE PAR

QUEUE FOYE

ADVANCE 30, 10

SEIZE PAR

QUEUE FOYE

ADVANCE 7, 2

RELEASE PAR

TERMINATE 1

START 121