Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - Основы GPSSPC.doc
Скачиваний:
74
Добавлен:
02.05.2014
Размер:
425.98 Кб
Скачать

2.4. Блоки, изменяющие маршруты транзактов.

В приведенных выше примерах транзакты, выходящие из любого блока, всегда входили или пытались входить в следующий блок. В более сложных моделях в зависимости от условий моделирования может возникать необходимость направления транзактов к другим блокам, т.е. необходимость изменения маршрутов движения транзактов. Для изменения направления перемещения транзактов используется блок TRANSFER (передать).

Безотказный блок TRANSFER может направить входящие в него транзакты в блоки, отличные от следующего. Блок имеет девять режимов работы, из которых здесь рассматриваются только три наиболее часто используемые режимы – это режимы безусловной, случайной и логической передачи. В этих трех режимах блок имеет следующий формат:

имя TRANSFER A, B, C

Содержание операндов A, B и C зависит от режима передачи блока.

В режиме безусловной передачи операнды A и C не заданы, а операнд B задает имя блока (называется В-блок), куда безусловным образом направляется транзакт, вошедший в блок TRANSFER. Например, блок TRANSFER ,BACK направляет все входящие транзакты в блок с именем BACK. Не используемый операнд А здесь заменен символом “,”.

В режиме случайной передачи блок TRANSFER направляет входящие транзакты случайным образом в один из двух блоков. При этом операнды В и С задают имена этих двух блоков, а операнд A определяет вероятность, с которой транзакт направляется в блок, заданный операндом C. Очевидно тогда, что с вероятностью 1-A транзакт будет направлен в В-блок. Операнды А и С являются обязательными операндами, а если не задан операнд B, то В-блоком является следующий блок. Следует отметить, что направление текущего транзакта в тот или иной блок не зависит от того, куда был направлен предыдущий транзакт.

Вероятность в поле A задается, как правило, десятичной дробью, начинающейся с точки. Например, блок TRANSFER .75,PLAY,WORK с вероятностью 0,75 направляет транзакты в блок с именем WORK, а с вероятностью 0,25 – в блок с именем PLAY. Если же поле A начинается не с десятичной точки и не содержит одного из ключевых слов – признаков других режимов работы блока, то его значение рассматривается как количество тысячных долей в вероятности передачи. Например, предыдущий блок можно также записать в виде TRANSFER 750,PLAY,WORK.

В режиме логической передачи в поле A записывается ключевое слово BOTH (оба). Транзакт, поступающий в блок TRANSFER, сначала пытается войти в блок, указанный в поле B (или в следующий блок, если B не задан), а если это не удается, т.е. В-блок отказывает транзакту во входе, то в блок, указанный в поле C. Если и эта попытка неудачна, то транзакт остается в блоке TRANSFER до наступления в модели условий, делающих возможным вход транзакта в один из блоков B или C, причем при одновременно возникшей возможности транзакт войдет в В-блок.

Блоки рассматриваемой группы используются при моделировании различных СМО, где есть потери заявок. Воспользуемся блоком TRANSFER, например, для моделирования трехканальной СМО с отказами, когда поступающая заявка покидает систему, если все приборы заняты (рис. 8).

Транзакты, поступающие в модель, попадают в блок TRANSFER, работающий в логическом режиме. Если в момент поступления транзакта в устройстве MKS3 хотя бы один канал свободен, то блок TRANSFER направит его в следующий блок, т.е. в блок ENTER. Если же в момент поступления транзакта все каналы МКУ будут заняты, то блок ENTER откажет ему во входе, и он будет направлен в блок с именем OUT – это блок TERMINATE, который удалит транзакт из модели.

MKS3 STORAGE 3

GENERATE 70,20

TRANSFER BOTH, ,OUT

ENTER MKS3

ADVANCE 50,30

LEAVE MKS3

OUT TERMINATE

Рис. 8.