- •Лекция №1 Имитационное моделирование
- •Основные и вспомогательные события
- •Обработка событий в представленной системе
- •Работа системного таймера
- •Одновременные события.
- •Получение значений случайных чисел.
- •Равномерное распределение
- •Лекция №2 Создание модели в системе gpss
- •Лекция №3 Листинги, которые появляются в процессе моделирования.
- •Логика работы интерпретатора
- •Модификация параметров при моделировании
- •Различные законы распределения вероятности появления транзактов в модели
- •Лекция № 4 Задание функций.
- •Многоканальные устройства
- •Модель многопроцессорной системы
- •Лекция № 5
- •Параметры транзактов
- •Лекция №6 Выбор элементов по их состояниям
- •Арифметические переменные
- •Формирование случайных чисел, распределенных по нормальному закону
- •Лекция № 7 Сохраняемые величины
- •Initial имя сохраняемой величины, ее значение/имя, значение/...
- •Управление последовательностью событий
- •Лекция № 8 Логический переключатель
- •Блок select в логическом режиме
- •Организация цикла
- •Булевские переменные
- •Блок buffer
- •Лекция № 9
- •Косвенная адресация
- •Лекция № 10 Цепи пользователя
- •Лекция № 11 .
- •Условный вывод транзактов из цепи пользователя
- •Лекция №12
- •Захват устройства
- •Лекция №13
- •Ансамбли транзактов
- •Использование таблиц
- •Лекция №14
- •Сча таблиц.
- •Дополнительные режимы использования таблиц.
- •2) Rt (Rate – интенсивность) – режим.
- •Время моделирования.
- •Некоторые сведения из Теории вероятностей
Модификация параметров при моделировании
Существует возможность изменения модели при моделировании:
Можно изменить операнды блоков.
Можно переопределить блоки.
Можно изменить число сегментов
Пр.:
-
A
GENERATE
20,2
..........................
START
A
GENERATE
21,3
START
END
Программа прогонится два раза. Сначала со строкой помеченной первый раз меткой А, затем, вместо нее, подставится строка, помеченная второй раз меткой А.
Следует помнить, что при первом выполнении программы, интерпретатор набрал некоторую статистику. Для того, чтобы она не влияла на сбор статистики при втором прогоне программы, надо ее очистить:
-
ADVANCE
CLEAR
START
Различные законы распределения вероятности появления транзактов в модели
До сих пор, мы рассматривали случаи, в которых в которых транзакты вводились в модель через интервалы времени, которые являлись случайными числами и с равной вероятностью могли принимать любое значение, лежащее на интервале [ A-B, A+B ].
Для того, чтобы генерировать транзакты, которые будут поступать в модель через интервалы времени, подчиненные другому закону распределения, надо знать плотность распределения f(x), тогда:
ТЕОРЕМА:
Функция распределения случайной величины F(t) подчиняется равномерному закону распределения и лежит в пределах [ 0, 1 ).
Пусть f(x) - непрерывная функция распределения, тогда:
Следовательно, можно получить значение y, используя генератор случайных чисел. Можно протабулировать функцию
Для того, чтобы получить значение функции при других значениях , надо умножить t на .
Лекция № 4 Задание функций.
Функции задаются в описательных блоках.
Пр.: Рассмотрим примеры задания функций:
1. Непрерывная функция
EXP FUNCTION RN1,C3
.3,2/.6,5/1,8
0 1 2 3 4 5 6 7 8
1
.6
.3
2. Дискретная функция
EXP FUNCTION RN1,D3
.3,2/.6,5/1,8
Многоканальные устройства
Ранее было рассмотрено одиночное устройство (прибор), которое описывалось парой блоков SEIZE, RELEASE. Наряду с этим существуют многоканальные устройства, позволяющие обслуживать одновременно несколько транзактов.
Количество каналов задается описательным блоком STORAGE.
имя STORAGE A или
STORAGE S имя, A , где А- емкость устройства
Пр.: Ниже приведен пример двух равносильных записей:
-
7
STORAGE
12
9
STORAGE
8 равносильна записи
-
STORAGE
S7,12/S9,8
Для задания работы многоканального устройства используют пару блоков ENTER, LEAVE.
ENTER имя
Транзакт пытается занять первое свободное место в устройстве с данным именем.
LEAVE имя
Транзакт освобождает устройство с данным именем.
Если все места в многоканальном устройстве заняты, то транзакт встает на очередь к нему. В связи с этим, для каждого многоканального устройства существует счетчик входов, текущее содержимое которого устанавливается на 1 при выполнении блока ENTER, текущее значение этого счетчика уменьшается на единицу при выполнении блока LEAVE. При завершении моделирования распечатывается информация по каждому многоканальному устройству. При этом указывается текущее содержимое счетчика, его максимальное содержимое, среднее время пребывания транзакта на канальном устройстве (подсчитывается полное время всех транзактов и делится на число транзактов, которые были в многоканальном устройстве).
ENTER A,B
А- имя многоканального устройства;
В- (по умолчанию В=1) сколько мест занимает транзакт в устройстве А.