Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций Моделирование систем.doc
Скачиваний:
52
Добавлен:
15.04.2019
Размер:
1.38 Mб
Скачать

7.Язык и система моделирования gpss

Любую модель на языке GPSS можно представить в виде комбинации компонентов следующих типов:

  • Транзакты;

  • Блоки;

  • Списки;

  • Устройства;

  • Многоканальные устройства;

  • Логические ключи;

  • Очереди;

  • Таблицы;

  • Матрицы;

  • Ячейки;

  • Функции;

  • Переменные.

Все объекты GPSS, а также модель в целом, имеют числовые поля, называемые системными числовыми атрибутами (СЧА). СЧА используются для получения информации о текущем состоянии соответствующих объектов.

Процедура моделирования заключается в воспроизведении событий, происходящих в реальном объекте, или системе. Каждое событие соответствует перемещению транзакта из одного блока модели в другой. Статистические данные накапливаются в процессе моделирования в течение всего времени работы модели, или в период измерения. Период измерения – общее время моделирования, или интервал модельного времени, прошедший после выполнения оператора RESET либо CLEAR.

Базовый набор событий:

  • Прибытие заявки (соответствует прибытию транзакта в модель);

  • Начало обслуживания;

  • Завершение обслуживания.

Обработка события «Прибытие заявки»:

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

  2. Прибывшая заявка перемещается по модели до блока, который препятствует ее дальнейшему движению, например, до блока SEIZE при занятом приборе, или до блока ADVANCE.

Обработка события «Начало обслуживания»:

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

  2. Устройство устанавливается в состояние «Занято», или количество занятых каналов МКУ увеличивается (обычно на 1).

Обработка события «Завершение обслуживания»

  1. Если в очереди к данному устройству, или МКУ, имеются заявки, система выбирает первую из них из очереди и переходит к обработке события «Начало обслуживания».

  2. Если соответствующая очередь пуста, устройство переводится в состояник «Свободно».

  3. Заявка, освободившая устройство, перемещается в модели до блока, который препятствует ее дальнейшему движению, например, до блока SEIZE при занятом приборе, или до блока ADVANCE.

7.1.Транзакты

Функционирование объекта отображается в модели в виде перемещения транзактов от блока GENERATE в блок TERMINATE через промежуточные блоки. Транзакты, или сообщения являются абстрактными подвижными элементами, которые могут моделировать различные объекты реального мира: сообщения, программы, транспортные средства, людей и т.п. Перемещаясь между блоками модели, транзакты вызывают (и испытывают) различные действия. Возможны их задержки в некоторых точках модели, изменения маршрутов и направлений движения, расщепление транзактов на несколько копий и т.п. С каждым транзактом связан упорядоченный набор данных. Он включает :

  • номер транзакта;

  • номер блока, в котором в данный момент находится транзакт;

  • номер следующего блока;

  • время перехода в следующий блок;

  • приоритет, характеризующий очередность обработки транзактов в определенных случаях;

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

Транзакты имеют четыре СЧА:

Pr - приоритет;

Pj - параметр с номером j;

М1 - время прохождения транзактом участка модели, начиная от момента появления, либо от точки, определенной блоком MARK без операндов;

MPj – промежуточное (транзитное) время, записываемое в параметре Pj;

Xj - номер транзакта.