Моделирование систем массового обслуживания с отказами и ограниченной очередью

Страницы работы

Содержание работы

ЛАБОРАТОРНАЯ РАБОТА №6

МОДЕЛИРОВАНИЕ  СИСТЕМ  МАССОВОГО  ОБСЛУЖИВАНИЯ

С  ОТКАЗАМИ  И  ОГРАНИЧЕННОЙ  ОЧЕРЕДЬЮ

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

При подготовке к лабораторной работе необходимо знать алгроитм работы и основные характеристики СМО с отказами [3-5].

Краткие теоретические сведения

6.1 Использование констант в языке GPSS

Для большей наглядности в программах моделей на GPSS используют константы. Для определения константы в GPSS применяется зарезервированное слово EQU. Формат определения константы имеет вид:

LINE

NAME

EQU

VALUE

где LINE – номер строки;

NAME – символьное имя константы;

EQU – имя блока определения константы;

VALUE – числовое значение константы.

После определения константы в программе вместо ее значения можно использовть его символьное обозначение. Например:

1

cRed

EQU

4

2

cGreen

EQU

2

3

cBlue

EQU

1

. . .

100

ASSIGN

COLOR, cGreen

. . .

200

START

1

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

50

AVK_1

EQU

3

. . .

110

TEST  L

Q$LINE1A,AVK1,AAA2

константе AVK1 присваивается числовое значение 3, что дает возможность использовать число под символьным именем в блоке сравнения TEST (работа этого блока будет рассмотрена ниже).

6.2  Организация присваивания параметров транзактов в языке GPSS

Значения параметров транзактов могут изменяться при входе в блок ASSIGN A,B,C (НАЗНАЧИТЬ). Блок ASSIGN может работать в трех режимах.

В режиме замены (операнд C используется по умолчанию) при входе транзакта в блок ASSIGN параметру, номер которого задается операндом A, присваивается значение, определяемое операндом B. Например,

ASSIGN

2, 12

ASSIGN

3, FN$EXPON

В первом случае при входе транзакта в блоке ASSIGN произойдет присваивание параметру P2 значения 12.Рассмотрим второй случай. Пусть при входе транзакта в блок ASSIGN P3 = 5, а FN#EXPON = 4, тогда произойдет присваивание параметру P5 значения 4 (косвенная адресация).

Если блок ASSIGN используется в режиме приращения ASSIGN A, B (C по умолчанию), то в случае "+" происходит увеличение, а в случае "-" - уменьшение значения параметра, номер которого задается операндом A, на величину, определяемую операндом B. Например,

ASSIGN

4, +Q2

ASSIGN

V5, -FN2

В первом случае значение параметра P4 увеличивается на величину, равную текущему содержимому очереди с номером 2, во втором - значение параметра, номер которого определяется численным значением арифметической переменной с номером 5, уменьшается на величину, равную целой части текущего значения функции FN2.

В режиме вычисления используется операнд C. В этом случае интерпретатор выполняет следующие действие: вычисляет значение операнда C; рассчитывает значение функции, номер которой соответствует вычисленному значению C; полное значение функции перемножает с содержимым операнда B; целая часть произведения используется для замены или приращения параметра, номер которого определен операндом A. Например,

ASSIGN

2+, 4, 3

Если в момент входа транзакта в блок FN3 = 2,15, то значение параметра P2 увеличится на 8 (4´2). В качестве операнда C можно использовать любой СЧА, тогда значение этого СЧА будет интерпретироваться как номер функции (косвенное определение функции). Использование символических имен не допускаются.

6.3  Объекты GPSS для организации ветвлений и циклов

Блок TEST (ПРОВЕРИТЬ) предназначен для пересылки транзактов, вошедших в этот блок, к другому блоку в зависимости от выполнения некоторого условия, связывающего два СЧА:

ИМЯ

TEST   X

A, B, C

Операнды A и B являются именами сравниваемых СЧА, вспомогательный оператор X помещается, начиная с колонки 13 поля операции, и может быть либо одной из букв G, E или L (соответственно для "больше", "равно" или "меньше"), либо одним из двухбуквенных сочетаний GE, NE или LE (соответственно для "больше или равно", "не равно" и "меньше или равно"). Таким образом, TEST проверяет соотношение Х между А и В.

Похожие материалы

Информация о работе