Скачиваний:
101
Добавлен:
11.04.2015
Размер:
285.7 Кб
Скачать

3 Имитационная модель на языке gpss

3.1 Описание системы моделирования gpss

Система моделирования GPSS World имеет боле 70 типов блоков и команд, около 50 системных параметров.

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

Система выдает отчет о результатах моделирования, содержащий широкий спектр параметров блоков, устройств, очередей, таблиц, пользовательских списков.

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

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

Язык GPSS хорошо согласуется с удобным описанием модели системы в форме Q - схемы.

3.2 Описание модели на gpss

Здесь представлена модель, созданная в среде GPSS World. Листинг программы представлен ниже:

Buf Storage 3

Generate 15,7

Assign 1, 1 ;P1=1 № линии 1

Transfer , inp

;======================================

Generate 15, 7

Assign 1, 2 ;P1=2 № линии 2

;======================================

inp Gate SNF Buf, otkaz

Enter Buf

QUEUE Bufinp

Seize Proc

Depart Bufinp

Advance 7

Release Proc

;======================================

TEST E P1,1,nal2

QUEUE Buf11

SEIZE Line1

ADVANCE 15,5

DEPART Buf1

RELEASE Line1

TERMINATE 1

;======================================

nal2 QUEUE Buf2

SEIZE Line2

ADVANCE 15,5

DEPART Buf

RELEASE Line2

TERMINATE 1

Start 1000

otkaz savevalue otk+, 1

savevalue potk, v1

1 variable x$otk/n$inp

terminate 1

Операторы GPSS, использованные в модели, представлены в таблице 1.

Таблица 1

Код и назначение

Содержание операнда

1

2

GENERATE

(создание транзактов)

Интервал поступления транзактов.

Модификатор-интервал или модификатор-функция.

Время задержки первого транзакта .

Количество создаваемых транзактов.

STORAGE

(хранилище или память)

Название STORAGE становится понятным, если

представить себе, что МКУ это автоматизированный склад или многоэтажный гараж с определенным числом мест, которое и задает этот оператор. В таких случаях МКУ определяет не количество одинаковых

устройств для обслуживания, а количество

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

QTABLE

(peгиcтpaция cтaтиcтики для тpaнзaктoв, вxoдящиx в блoки QUEUE и DEPART)

NAME   QTABLE   A,    B,    C,    D

NAME – мeткa oбъeктa.

A - имя oчepeди. 

В - вepxний пpeдeл пepвoгo чacтoтнoгo клacca.

C – рaзмep чacтoтныx клaccoв.

D – кoличecтвo чacтoтныx клaccoв.

QUEUE

(регистрация входа в очередь)

Номер (имя) очереди.

Число единиц, на которое увеличивается длина очереди.

1

2

ENTER (занятие многоканального устройства)

Номер (имя) многоканального устройства.

Число единиц, занимаемых транзактом.

ADVANCE

(задержка транзакта)

Среднее время.

Модификатор-интервал или модификатор-функция: FNj, FN$<ИМЯ>, FN*j

DEPART

(уменьшение очереди)

Номер (имя) очереди.

Число единиц, на которое уменьшается длина

очереди (не превосходит текущей длины очереди).

TERMINATE

(удаление транзактов)

Число единиц, на которое уменьшается счетчик завершении, задаваемый оператором START.

RELEASE (освобождение устройства)

Номер (имя) освобождаемого устройства.