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

Вид материалаДокументы
Подобный материал:
1   2   3   4

\ /\ / \||||||/\|||||/<---

\____/ \___/ \____/ \___/ соотв. ПЭ

Ки = 2 Суммируем длины интервалов

|Аи=1/LA/Ки

|Ак=1/MU/Кобс

SIMULATE

LN_R FUNCTION R1, C24

0.0/ . . . /0.9997, 8

TAB TABLE M1, Xн, Dx, M

S_K STORAGE m; многоканальное устройство

INITIAL Х1, 1; нач. установка СЧТ1 для вх. потока

GENERATE Аи, FN$LN_R

TEST E X1, Ки, OUT

SAVEVALUE 1,1; восст. СЧТ1 для входящего потока

QUEUE 1

ENTER S_K

DEPART 1

SAVEVALUE 2,1; нач.установка СЧТ2 для потока обсл.

M_K ADVANCE Ак, FN$LN_R

SAVEVALUE 2+, 1; инкремент-е СЧТ2для потока обслуж.

TEST G Х2, Кобс, М_К

LEAVE S_K; освоб.в многокан.уст-ве 1-го кан.

TABULATE TAB

ТERMINATE 1

OUT SAVEVALUE 1+, 1; инкрем-е СЧТ1 для входного потока

ТERMINATE ;уничтожение "лишних" транзактов

START N

END


Примечание.

Если порядок ПЭ, описывающего процессы обслуживания,

невелик, может оказаться более удобной запись подряд нескольких

операторов ADVANCE в соответствии с порядком ПЭ.


Оператор MARK (отметить время).

-------------

Запись оператора MARK в общем случае имеет вид: MARK Pj, где Pj

- параметр транзакта, в который будет записано значение абсолютного

модельного времени(АМВ) TIME, т. е. времени от начала прогона моде-

ли. Иначе говоря, оператор MARK позволяет записать в параметр Pj

показание системных часов:

Pj := TIME

Если операнд Pj не указывается, то значение АМВ замещает старое

значение времени входа транзакта в систему: TIN := TIME. Это озна-

чает, что относительное транзактное время M1, т. е. время существо-

вания конкретного транзакта в системе, равное разности АМВ и време-

ни входа (M1 = TIME - TIN), будет сброшено в нуль. (M1 := 0).

Оператор MARK позволяет моделировать замкнутые стохастические

сети, отличием которых от разомкнутых является циркуляция в сети

некоторого фиксированного числа транзактов. Интенсивность входящего

потока теперь не является параметром, она совпадает с интенсив-

ностью выходного потока и является искомой характеристикой. Это

происходит, так как каждый новый транзакт на входе появляется мгно-

венно после ухода из замкнутой сети обслуженного транзакта.


S0

+---------------------------<----------------------+

| --------------------------------

| | Q1 MU1 S1| |

| | ---------+ +----+ | P10 |

+---->+-------> ||||+------| К1 +------->+---->+ N

| ---------+ +----+ | |

| -------------------------------- |

| -------------------------------- |

| | MU2 Q2 S2| |

| | +----+ +--------- | |

+<-------| К2 +------||||| <-------| P12

| +----+ +--------- | |

| -------------------------------- |

| -------------------------------- |

| | MU3 S3| |

| | +----+ | |

| | +---| К11+---+ | |

| | | +----+ | | |

| | | | Q3 | |

| | | +----+ | +--------- | |

+-------+---| К12+---+--||||| <----+ P13

| | +----+ | +--------- |

| | | |

| | +----+ | |

| +---| К13+---+ |

| +----+ |

--------------------------------


S1 - процессор и память

S2 - обращение к быстрой периферии

S3 - обращение к медленной периферии

М - число циркулирующих в сети заявок (транзактов)


Построим теперь ИМ, отталкиваясь от концептуальной модели системы

в виде замкнутой сети с простейшими потоками событий.


SIMULATE

TAB TABLE M1, Хн, Dх, n; n - число участков

LN_R FUNCTION R1, C24

0.0/ . . . /0.9997, 8

S_K3 STORAGE m

GENERATE , , , M ; D = M - емкость источника

SMO1 QUEUE 1

SEIZE 1

DEPART 1

ADVANCE Ак1, FN $ LN_R

RELEASE 1

TRANSFER P10, PROD, OUT

PROD TRANSFER P12*, SMO_3, SMO_2; разветвление

OUT TABULATE TAB

MARK ; сброс ОТВ

TRANSFER , SMO1 ; "замыкание" сети

SMO_2 QUEUE 2

SEIZE 2

DEPART 2

ADVANCE Ак2, FN $ LN_R

RELEASE 2

TRANSFER , SMO1

SMO_3 QUEUE 3

ENTER S_K3

DEPART 3

ADVANCE Ак3, FN $ LN_R

LEAVE S_K3

TRANSFER ,SMO1

; timer

GENERATE TLIM ; TLIM - время наблюдения за роведением ИМ

ТERMINATE 1

START 1

END


3.2.6. Система имитационного моделирования GPSS/PC.


Исполнительные файлы: GPSS.EXE, GPSSREPT.EXE.


Файл GPSS.EXE обеспечивает подготовку и отладку текста имитаци-

онной модели, проведение собственно модельного эксперимента и форми-

рование несформатированного протокола испытаний с резервированным

именем REPORT.GPS.

Файл GPSSREPT.EXE используется для форматирования отчета. Он

позволяет просматривать форматированный протокол в виде таблиц ста-

тистических характеристик для отдельных типов объектов языка GPSS,

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

После запуска GPSS.EXE пользователь находится в командном окне,

оно находится в нижней части экрана и всегда открыто. Если текст

программы на GPSS подготовлен каким-либо редактором (это должен быть

ASCII-файл), то можно ввести этот файл следующим образом: >@name.gps

Если пользователь желает вводить текст в интерактивном режиме,

он должен придерживаться формата строки GPSS, и в процессе ввода

система подсказывает характер поля в строке. Поля отделяются друг от

друга пробелом.

В процессе ввода строки курсор меняет свою форму в командном

окне:

> - может быть введен номер строки (до десяти цифр), возможно

включение десятичной точки.

L - после ввода номера строки можно вводить метку. Если метка

отсутствует, можно нажать пробел.

V - разрешение на ввод кода оператора.

О - разрешение на ввод модификатора (TEST E).

А, В, С, ... - разрешение на ввод операнда, в зависимости от

количества операндов для введенного оператора.

; - ожидание комментария (только на латыни !).

Конец ввода строки - ENTER.

Рекомендуется номера строк менять с шагом 10, что облегчает до-

бавление новых операторов в текст GPSS-программу.

Примечание.

1. При попытке ввода некорректного выражения курсор принимает

форму А и возвращается на предшествующую позицию.

2. При описании функции после ввода заголовка оператора

FUNCTION R1,C24 идет подсказка Z - ввод пар значений /Xi, Yi/.


Команды редактирования текста.


EDIT A, A - номер редактируемой строки

DELETE A[,B] от А до В

RENUMBER A, B перенумерация с шагом 10: А - нач., В - шаг

SAVE A[,B,]C]] сохранение текста

А - имя файла со спецификацией .gps

В, С - первый и последний номера

сохраняемых строк

DISPLAY [A[,B]] вывод текста на экран


Специальные клавиши.


Esp / Home - прерывание

? - контекстная помощь


Окна, используемые для вывода информации об

объектах GPSS в процессе моделирования.


- окно блоков (Alt + b) (block)

- окно одноканальных устройств (Alt + f) (facility)

- окно памяти (Alt + s) (storage)

- окно таблиц (Alt + t) (table)


Содержание протокола испытаний.

------------------------------


Одноканальные устройства.

------------------------

FACILITY номер устройства

ENTRIES число вхождений транзактов в блок SEIZE (PREEMPT)

UTIL коэффициент использования устройства

AVE.TIME ср. время пребывания транзакта в уст-ве, иначе говоря,

______ время между вхождением транзакта в блок SEIZE(PREEMPT)

(tобс) и выходом из блока RELEASE(RETURN)


Очереди.

-------

QUEUE номер регистратора

MAX максимальная длина очереди (lmax)

CONT состояние очереди на момент завершения моделирования

ENTRIES число вхождений зарегистрированных транзактов в очередь

ENTRIES (0) число вхождений зарегистрированных транзактов с нулевым

временем ожидания

AVE.CONT среднее содержимое, средняя длина очереди (lср)

AVE.TIME среднее время ожидания (tож_ср) для произвольных заре-

гистрированных транзактов

AVE.TIME (1) среднее время ожидания для зарегистрированных транзак-

тов с ненулевым tож


Накопители.

----------

STORAGE имя накопителя

CAP. емкость накопителя

MIN,MAX минимальное и максимальное число единиц

ресурса, использованных в процессе моделирования

ENTRIES число вхождений транзактов в накопитель

AVE.C среднее значение занятых единиц ресурса накопителя

UTIL коэффициент использования накопителя


Таблицы.

-------

TABLE имя таблицы

MEAN среднее значение табулируемой величины

STD.DEVя9 я0 среднее квадратичное отклонение (оценка СКО)

RANGE границы интервалов

FREQENCY число попаданий в интервал

CUM.% доля числа попаданий от общего объема (нарастающим

итогом)