Задача 7. На языке GPSS опишите функцию, описывающую представленное ниже распределение вероятностей. Распределение вероятности внутри каждого интервала считайте равномерным.

Диапазон изменения случайной величины

Вероятность попадания в диапазон

11-20

0,20

21-30

0,30

31-40

0,35

41-50

0,10

51-60

0,05

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

Задача 8. Определите в GPSS дискретную функцию, которую можно было бы использовать для розыгрыша случайных чисел, принимающих значения 8; 12; 16; 24; 48 с вероятностями 0,05; 0,50; 0,15; 0,25; 0,05 соответственно.

Проведите три тысячи розыгрышей случайного числа и, используя таблицу GPSS, сделайте вывод о соответствии полученной совокупности случайных чисел заданному распределению.

Практическое занятие № 3. Применение логических переключателей в GPSS

1. Цель занятия

1.1. Изучить методику применения логических переключателей в GPSS

1.2. Составить программу по заданию, выданному преподавателем

1.3. Выполнить расчеты и проанализировать полученные результаты

2. Порядок выполнения работы

2.1. Ознакомиться с основными принципами применения логических переключателей в GPSS

2.2. Получить исходные данные у преподавателя и составить программу

2.3. Выполнить расчет и получить графики результатов моделирования

2.4.Проанализировать статистику и оформить отчет с результатами расчета

НЕ нашли? Не то? Что вы ищете?

3. Содержание отчета

3.1. Ответы на контрольные вопросы

3.2. Исходные данные

3.3. Результаты счета с анализом полученных данных

3.4. Выводы

4. Контрольные вопросы

4.1. Блоки LOGIC, GATE

4.2. Блок LOOP

4.3. Блок TEST

4.4. Блок SELECT

4.5. Арифметические переменные и сохраняемые величины

1 Логические переключатели

Это элементы GPSS, моделирующие управление. Они имеют два положения – «установлено» и «сброшено».

Обычно перед началом моделирования логические переключатели «сброшены», если необходимо «установить» переключатель, используется оператор:

INITIAL LSj

INITIAL LS$имя_переключателя

Для изменения значения логических переключателей используется блок LOGIC.

 

A - имя логического переключателя;

2 Блок GATE

Этот блок позволяет проверить состояние логического переключателя А.

 

A - имя логического переключателя;

 

В – необязательный операнд. Если В не используется, то проверка осуществляется в режиме отказа: если проверка не будет истинной, то клапан закрыт и транзакт удерживается в блоке, предшествующем блоку GATE. Этот транзакт будет считаться пассивным, его внутренний флаг включен и он не будет продвигаться при последующих просмотрах цепи текущих событий. При продолжении моделирования и изменении состояния флага логического переключателя транзакт переводиться в активное состояние (его флаг «выключается»).

Если В используется, то проверка производиться в режиме условной передачи: если результат проверки – истина, то транзакт переходит в следующий блок, ели «ложь», то транзакт переходит в блок, имя которого указано в операнде В.

Логические операторы (булевы переменные)

LS

Логический переключатель установлен

LR

Логический переключатель сброшен

FU(F)

Прибор используется

FNU

Прибор не используется

SF

Многоканальное устройство заполнено

SNF

Многоканальное устройство не заполнено

SE

Многоканальное устройство пусто

SNE

Многоканальное устройство не пусто

3 Блок LOOP (организовать цикл)

А – номер параметра;

В – символическое имя некоторого блока.

Действия:

1.  Величина указанного параметра уменьшается на 1.

2.  Вычисленная величина проверяется на равенство 0.

3.  Если значение не равно 0, то на блок В, иначе – на следующий блок.

4 Блок TEST

А – имя первого СЧА;

В – имя второго СЧА;

Х – оператор сравнения: G (A>B); GE (A>=B) и т. д.

С – необязательный операнд – имя блока, куда приходит транзакт, если результат сравнения – ложь. Если присутствуют только операторы А и В, то блок работает в режиме отказа.

6 Выбор элементов по их состояниям

6.1 Блок SELECT

Блок SELECT позволяет оперативно определить состояние указанных объектов и выбрать тот объект, который удовлетворяет некоторому условию. Например, проверяем состояние трех устройств, имеющихся в системе. Если все устройства заняты, то транзакт встанет в очередь с минимальной длиной. Если есть свободное устройство, оператору присваивается номер устройства, и оно будет занято транзактом.

E – групповое имя стандартного числового атрибута;

C и B – наибольший и наименьший номера из множества членов просматриваемой группы;

D – значение, с которым сравнивается значение, указанное в операнде E;

X – оператор сравнения, принимающий следующие значения: E, G, L, GE, LE;

A – номер параметра, в котором записывается номер члена группы, отвечающего установленному условию:

F – необязательный операнд, указывающий имя блока, в который передается транзакт, если ни один член группы не отвечает установленному условию.

 

6.2 Блок SELECT в режимах MIN и MAX

 

7 Арифметические переменные и сохраняемые величины

Арифметические переменные – это СЧА, ссылкой на которые является либо Vj, либо V$имя.

Над арифметическими переменными выполняются следующие арифметические операции:

*, / и @ - действия, имеющие высший приоритет.

+ и – - действия, имеющие низший приоритет.

Символ @ обозначает деление по модулю (остаток): 16@5=1

Оператор определения арифметической переменной имеет вид:

Имя VARIABLE операнд.

Все данные в арифметических выражениях являются целыми, для действительной переменной определяется:

Имя FVARIABLE операнд

Они могут быть полусловными (от –32768 до +32768) и полнословными (от –2147483648 до + 2147483648).

Ссылки на полусловные величины имеют вид:

XHj (XH$ имя), на полнословные – Xj (X$имя)

Ненулевые значения сохраняемых величин задаются оператором:

INITIAL имя1, величина1/…/имя n, величина n

Значения сохраняемой величины изменяются при входе транзакта в блок SAVEVALUE

 

A – номер или сохраняемое имя изменяемой сохраняемой величины;

B – величина, используемая в процессе модификации;

C – для полусловной величины – H, по умолчанию – полнословная величина.

Пример. Имеется система, состоящая из трех приборов и очереди на эти приборы. Если есть свободный прибор, то транзакт его занимает, иначе он помещается в очередь с минимальной длиной.

 

Транзакт попадает сначала в блок SELECT, где ищет свободный прибор, номер которого записывает в первый параметр. Если такой прибор найден, то транзакт входит в блоки QUEUE – SEIZE – DEPART – ADVANCE – RELEASE.

Если свободного прибора нет, то транзакт входит в блок с именем QQ в режиме MIN. В этом блоке имя самой короткой очереди помещается в первый параметр и после этого транзакт возвращается в блок QUEUE с именем LINE.

7 Задания

Задача 1. На вход некоторого цеха, который состоит из трех участков, поступает случайный поток деталей. Интервалы поступления имеют экспоненциальное распределение со средним значением 4 минуты. С вероятностью 0,65 поступает деталь первого типа, с вероятностью 0,35 – второго типа. После того, как детали поступили в цех, они направляются на участок У1, где обрабатываются последовательно одна за другой (время обработки распределено равномерно в интервале 2-5 минут). При этом детали второго типа имеют больший приоритет, чем детали первого типа.

Далее после обработки на участке У1 детали первого типа поступают на участок У2, а детали второго типа – на участок У3. На участке У2 есть три идентичных станка. Время обработки детали станком имеет экспоненциальное распределение со средним значением 11 минут. На участке У3 есть два станка (время обработки на каждом из них имеет экспоненциальное распределение со средним значением 7 минут).

Составьте Q-схему функционирования такой системы. Промоделируйте работу цеха в течение 40 часов. Определите статистические характеристики очереди деталей перед участками У2 и У3.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9