Основные объекты языка gpss
Язык основан на схеме транзактов. Транзакт – это объект, который «путешествует» по системе, перемещаясь от блока к блоку, согласно логике передвижений, предписанной в модели. По пути он может задерживаться на определённое время вследствие своей обработки или занятости того или иного оборудования, создавать очереди, пропускать вперёд другие транзакты, согласно их приоритету и т. д. Транзакты имеют прямую аналогию с заявками в СМО. Каждый транзакт может обладать параметрами (до 100), которые могут меняться в соответствии с логикой модели. Параметры нумеруются или им даются имена. Транзактам может присваиваться приоритет, определяющий предпочтение, который может меняться в программе.
Язык GPSS связан с пошаговым выполнением операторов, называемых блоками (фактически, каждый блок – это отдельная подпрограмма). Каждое продвижение транзакта является событием в модели. Комплекс программ, обеспечивающих выполнение событий, называется симулятором (планировщиком). Его функции:
обеспечить продвижение транзактов по заданным маршрутам;
регистрировать время наступления каждого события и выполнение их в нарастающей временной последовательности;
регистрировать статистическую информацию о функционировании модели;
продвигать модельное время в процессе моделирования.
Чтобы обеспечить правильную последовательность обработки событий во времени имеются системные часы, отсчитывающие абсолютное модельное время в единицах, принятых разработчиком. Все отрезки времени описываются положительными числами.
Условно все объекты можно разделить на 7 категорий (табл. 3.1).
Таблица 3.1
Объекты языка GPSS
Категории | Типы объектов |
Динамическая | Транзакты |
Операционная | Блоки |
Аппаратная | Одноканальные устройства, многоканальные устройства (памяти), логические ключи |
Вычислительная | Функции, переменные, СЧА, генераторы случайных чисел |
Статистическая | Очереди, таблицы |
Запоминающая | Сохраняемые ячейки, матрицы ячеек |
Группирующая | Списки, группы транзактов |
Операционные объекты – блоки задают логику функционирования модели системы и определяют пути продвижения транзактов между объектами других категорий. В блоках происходят события четырёх основных типов:
создание и уничтожение транзактов;
задержка транзакта на определённое время;
изменение маршрута движения транзакта, группировка транзактов;
изменение числового атрибута (параметра) транзакта.
Объекты аппаратной категории – это объекты, в которых имитируется процесс обработки транзактов (устройства) или объекты, воздействуя на которые, транзакты меняют их состояние, что влияет на движение других транзактов (логические ключи).
Одноканальное устройство (ОКУ) – оборудование, которое может быть занято только одним транзактом. Например, один узел связи, один мастер, один пункт приёма услуг.
Многоканальные устройства (МКУ) – памяти предназначены для имитации оборудования, осуществляющего параллельную обработку, либо моделирования устройств ограниченной ёмкости (буферы, стоянки транспорта, складские помещения, конвейеры).
Логический ключ – объект, имеющий два состояния «включён» или «выключен», в зависимости от которых другие транзакты определяют пути их дальнейшего следования.
К статистическим объектам относятся очереди и таблицы. В любой системе движение потока заявок может быть задержано из-за недоступности устройства. В этом случае транзакты становятся в очередь. Учёт очередей составляет одну из основных функций планировщика, который автоматически накапливает статистику относительно устройств и очередей. Пользователь может собирать эту информацию в определённых точках модели. Для облегчения табулирования статистической информации предусмотрен объект – таблица, которая используется для получения выборочных распределений, в неё заносится число попаданий конкретного СЧА в некоторый диапазон, а также вычисляется автоматически математическое ожидание и среднеквадратичное отклонение, распределение может быть представлено графически гистограммой.
Вычислительная категория служит для описания таких ситуаций в процессе моделирования, когда связи между компонентами системы выражаются в виде математических (аналитических или логических) соотношений. С помощью функций пользователь может определять закон поступления транзактов в модель, время и порядок их обработки. В GPSS существует библиотека встроенных функций.
Переменные представляют собой сложные арифметические выражения, которые включают константы, системные числовые атрибуты (СЧА), библиотечные арифметические функции, арифметические и логические операции.
Каждому объекту в GPSS соответствуют атрибуты, описывающие его состояние в данный момент. Они автоматически регистрируются и доступны для использования в течение всего процесса моделирования, называются системными числовыми атрибутами (СЧА). Всего существует более 50 СЧА, наиболее часто используемые приведены в табл. 3.2.
Таблица 3.2
Таблица основных СЧА
Объект | СЧА | Назначение |
Генераторы случайных чисел | RNi | Случайное число в диапазоне 0-999, при использовании в качестве аргумента функции в диапазоне [0;0.999] |
Транзакт | Рi PR M1
MPi | Значение i-го параметра, Значение приоритета Время пребывания в модели активного транзакта (от MARKдо текущего времени) Время прохождения транзактом некоторого участка модели (вычисляется как разность текущего абсолютного времени и значения i-ого параметра транзакта, определяемого блокомMARKi) |
Очередь | Qi, Q$имя | Текущая длина i-ой очереди |
Переменные | V$имя | Значение арифметической переменной |
Сохраняемые ячейки | X$имя | Значение ячейки памяти |
Функции | FN$имя | Значение функции |
Памяти | S$имя | Количество занятых каналов в МКУ |
Окончание таблицы 3.2
Объект | СЧА | Назначение |
| R$имя SF$имя | Количество свободных каналов в МКУ Занятость МКУ: 1– заполнена, 0 – нет |
Одноканальные устройства | F$имя | Занятость МКУ: 1– занято, 0 – нет |
Логический ключ | LS$имя | Состояние ключа: 1– установлен, 0 – нет |
Например, Р1 – СЧА, обозначающий значение первого параметра транзакта; Q$och – СЧА, обозначающий длину очереди с именем och. Если используется символьное имя, то между СЧА и именем ставится знак $.
К группирующей категории относятся группы транзактов и списки. Существует 5 видов списков: текущих событий, будущих событий, задержки ОКУ или МКУ, отложенных прерываний и пользователя.
- Имитационное моделирование систем
- Предисловие
- Список сокращений
- Введение
- Глава 1. Основные понятия моделирования систем, классификация моделей и методов с точки зрения философии, моделирование представляет собой один из методов познания мира.
- 1.1. Основные понятия теории моделирования
- 1.2. Основные методы моделирования
- 1.3. Классификация моделей
- Глава 2. Математическое моделирование систем с использованием марковских случайных процессов
- 2.1. Элементы теории марковских случайных процессов, используемые при моделировании систем
- 2.2. Марковские цепи
- 2.3. Непрерывные цепи Маркова
- 2.4. Финальные вероятности состояний
- Необходимые и достаточные условия существования финальных вероятностей
- 2.5. Математическое представление потока событий
- 2.6. Компоненты и классификация моделей систем массового обслуживания (смо)
- 2.7. Расчёт основных характеристик смо на основе использования их аналитических моделей
- Одноканальные системы с отказами
- Одноканальные системы с ограниченной очередью
- Многоканальные системы с отказами
- Многоканальные системы с ограниченной очередью
- Контрольные вопросы и задания
- Глава 3. Имитационное моделирование в среде gpss
- 3.1. Общие сведения о языке gpss
- Основные объекты языка gpss
- 3.3. Основные блоки языка gpss
- Поступление транзактов в модель
- Уничтожение транзактов
- Моделирование работы одноканальных устройств
- Моделирование очередей
- Моделирование многоканальных устройств (мку)
- Изменение маршрута движения транзактов
- Разработка модели и процесс моделирования в gpss. Пример создания модели
- Управление процессом моделирования
- Объекты вычислительной категории языка: переменные и функции. Сохраняемые ячейки
- Определение и использование функций
- Работа с параметрами транзакта, приоритеты
- Блок mark
- Применение в моделях копий и организация синхронизации движения транзактов
- Использование блока test
- Контрольные задания по моделированию Моделирование систем с условием перераспределения заявок в заданном статистическом режиме
- Заключение
- Библиографический список
- Основные элементы стандартного отчёта
- Системные числовые атрибуты (сча)
- Сча транзактов
- Сча блоков
- Сча одноканальных устройств
- Сча очередей
- Сча таблиц
- Сча ячеек и матриц ячеек сохраняемых величин
- Сча вычислительных объектов
- Сча списков и групп
- 10. Какое действие выполняет этот оператор: transfer both,lab1,lab2
- 11. Какое действие выполняет этот оператор: transfer 0.4,lab1,lab2
- 12. Правильно ли описана эта команда: transfer ,met:
- 13. Какое действие выполняет этот блок: lines1 storage 2
- Индивидуальные зачётные задания по имитационному моделированию систем
- 4. Реорганизация заправочной станции
- 8. Модель швейного цеха
- 10. Моделирование работы заправочной станции
- 11.Моделирование работы станции скорой помощи
- 13. Модель автобусной остановки
- 14.Моделирование работы кафе
- 15. Задача о конвейере
- 17.Моделирование цеха обработки
- Алфавитно-предметный указатель
- Рассказова Марина Николаевна имитационное моделирование систем
- 644099, Омск, Красногвардейская, 9