Слайд 1Блоки для работы с транзактами
Слайд 2Создание транзактов
GENERATE A,B,C,D,E
А- задается среднее значение интервала времени между моментами
поступления в модель двух последовательных транзактов. Если этот интервал постоянен,
то поле B не используется. Если же интервал поступления является случайной величиной, то в поле B указывается модификатор среднего значения
GENERATE 50,5
Слайд 3GENERATE
Для генерирования случайных чисел с одним из стандартных законов распределения
можно воспользоваться одной из встроенных функций. Все эти функции перечислены
в приложении А. Например блок
GENERATE (Exponential(1,0,50))
генерирует заявки, имеющие экспоненциальный закон распределения.
Слайд 4GENERATE
C - момент поступления в модель первого транзакта ( Если
пусто или равно 0, то момент появления первого транзакта определяется
операндами A и B)
D - общее число транзактов, которое должно быть создано блоком GENERATE (Если пусто, то блок генерирует транзакты до завершения моделирования).
E - приоритет, присваиваемый транзактам. Если поле E пусто, то генерируемые транзакты имеют самый низкий нулевой приоритет (Поле Е имеет смысл использовать лишь в том случае, если в системе присутствуют два или более потока заявок разной «важности»).
Слайд 5TERMINATE A
Удаление транзактов из модели
A указывает, на сколько единиц уменьшается
содержимое так называемого счетчика завершений при входе транзакта в данный
блок TERMINATE.
Начальное значение счетчика завершений устанавливается управляющим оператором START
Слайд 6Имитация обслуживания
ADVANCE A,B
Операнды в полях A и B имеют тот
же смысл, что и в соответствующих полях блока GENERATE.
GENERATE
100,40
ADVANCE 80,50
TERMINATE 1
Слайд 7Два типа моделей GPSS
Модель на количество
GENERATE …
ТERMINATE 1
START n
Слайд 8Два типа моделей GPSS
Модель на время
GENERATE …
ТERMINATE
GENERATE T
ТERMINATE
1
START 1
Слайд 9Одноканальные устройства (ОКУ)
SEIZE A - занять
RELEASE A – освободить
А –
название устройства (номер или имя)
Пример.
Рассматривается работа одноканальной системы, на вход
которой поступают транзакты через 100±10 с. Обслуживание длится в среднем 95±5 с.
Слайд 10
GENERATE 100,10
SEIZE USTR
ADVANCE 95,5
RELEASE USTR
TERMINATE 1
Основной СЧА ОКУ F – занятость устройства (0 –
свободно; 1 - занято)
Слайд 11Многоканальные устройства (МКУ)
Предварительное описание
имя STORAGE A
ENTER A,B - занять
LEAVE
A,B – освободить
А – название устройства (имя)
В - число каналов
МКУ, занимаемых при входе в блок ENTER или освобождаемых при входе в блок LEAVE. Обычно поле B пусто, и в этом случае по умолчанию занимается или освобождается один канал.
Слайд 12пример
На вход 3-х канальной системы поступает пуассоновский поток заявок в
среднем через 20 с. Обслуживание в среднем занимает 1 минуту
(время обслуживания распределено экспоненциально).
Слайд 13решение
SMO3 STORAGE 3
GENERATE (EXPONENTIAL(1,0,20))
ENTER SMO
ADVANCE (EXPONENTIAL(1,0,60))
LEAVE SMO
TERMINATE 1
Слайд 14СЧА МКУ
S -текущее содержимое МКУ;
R -свободная емкость МКУ;
SR
-коэффициент использования в долях 1000;
SA -целая часть среднего содержимого
МКУ;
SM -максимальное содержимое МКУ;
SC -число занятий МКУ;
ST -целая часть среднего времени занятия МКУ.
Слайд 15Моделирование очередей
QUEUE A,B – встать
в очередь
DEPART A,B – выйти из очереди
А
– название очереди (номер или имя)
В - число единиц, на которое текущая длина очереди увеличивается при входе транзакта в блок QUEUE или уменьшается при выходе из блока DEPART. Если поле В пусто, его значение по умолчанию принимается равным 1.
Слайд 16Пример.
В вычислительном центре имеются 12 ЭВМ. Задания поступают в
среднем через 10 мин и решаются в среднем 2 часа
(время прихода заявок и их обслуживания распределено экспоненциально). Пришедшее задание поступает на любую из свободных ЭВМ. В случае занятости всех ЭВМ образуется очередь, длина и время пребывания в которой не ограничены. Смоделировать процесс решения 1000 заданий.
Слайд 17Решение
VCENT STORAGE 12
GENERATE (EXPONENTIAL(1,0,10))
QUEUE LINE
ENTER VCENT
DEPART LINE
ADVANCE (EXPONENTIAL(1,0,120))
LEAVE VCENT
TERMINATE 1
START 1000
Слайд 18СЧА очередей
Q – текущая длина очереди;
QM – максимальная длина очереди;
QA
– целая часть средней длины очереди;
QC – общее число транзактов,
вошедших в очередь;
QZ – число транзактов, прошедших через очередь без ожидания;
QT – целая часть среднего времени ожидания с учётом «нулевых» входов;
QX - – целая часть среднего времени ожидания без учёта «нулевых» входов.