- •Рязанский государственный радиотехнический университет
- •Моделирование как основа эксперимента
- •Обработка результатов эксперимента
- •1.2. Планирование модельных экспериментов
- •2. Модели для параметрического анализа систем и процессов
- •2.1. Словесное и концептуальное описание модели
- •2.1.1. Составление словесного описания объекта
- •2.1.2. Составление концептуальной модели
- •2.2. Имитационное моделирование
- •2.2.1. Принципы построения моделирующего алгоритма
- •2.2.2. Методика построения имитационной модели
- •Структура моделирующего алгоритма
- •17 (F17)
- •1 (Ф1)
- •4 (Ф4)
- •5 (А5)
- •3 (А3)
- •14 (К14)
- •6 (А6)
- •19 (А19)
- •8 (F8)
- •7 (F7)
- •12 (К12)
- •15 (K15)
- •9 (Ф9)
- •13 (А13)
- •16 (A16)
- •20 (A20)
- •10 (А10)
- •11 (А11)
- •18 (А18)
- •2.2.3. Проверка адекватности результатов имитационного моделирования
- •2.2.4. Оценка устойчивости модели
- •2.2.5. Оценка чувствительности модели
- •2.2.6. Калибровка модели
- •2.3. Язык моделирования gpss World
- •Функциональные объекты
- •Операторы gpss
- •Описание некоторых операторов gpss
- •Пример моделирования средствами gpss системы обслуживания
- •Литература
- •Содержание
2.3. Язык моделирования gpss World
При создании программ имитационного моделирования возникают задачи общие для широкого класса моделей. Это организация псевдопараллельного выполнения алгоритмов, динамическое распределение памяти, операции с модельным временем, имитация случайных процессов, введение массива событий, сбор и обработка результатов моделирования.
Для облегчения решения этих задач созданы специальные проблемно-ориентированные средства (программные системы), которые называются языками моделирования. По структуре и правилам программирования языки моделирования подобны алгоритмическим языкам высокого уровня, но имеют более высокий уровень. В настоящее время известно более 500 языков моделирования.
Одним из наиболее распространенных современных языков моделирования является GPSS World (General Purpose Simulating System-общецелевая система моделирования). Система GPSS ориентирована на класс объектов, процесс функционирования которых можно представить в виде множества состояний и правил перехода из одного состояния в другое, определяемых в дискретной пространственно-временной области. Примерами таких объектов являются вычислительные системы, сети ЭВМ, системы передачи сообщений и т.д. В качестве формальных моделей таких объектов используют системы массового обслуживания, автоматы, стохастические сети и т.д.
Система GPSS World содержит боле 40 программных блоков и следующие функциональные объекты: транзакты, очереди, устройства, функции и т.д.
Каждый из функциональных блоков и объектов представляет собой набор программных средств, выполняющих те или иные проблемно-ориентированные функции. Функциональный объект имеет свои стандартные числовые атрибуты (СЧА).
Функциональные объекты
Транзакты (ТА) имитируют пользователей системы, заявки, требования, обращения к системе и т.д. Каждый транзакт имеет индивидуальный номер и номер блока, в котором он находится и набор стандартных числовых атрибутов:
PS - приоритет,
X j – j-й номер ТА,
M i – время прохождения i-го ТА участка модели,
P j – j-й параметр ТА.
ТА создаётся специальным блоком GENERATE, проводится по системе (алгоритму) и выводится из системы оператором TERMINATE. При этом о нем собираются статистические данные.
Устройства имитируют процесс обработки ТА и включают в себя следующие операторы (программные блоки):
- SEIZE – занять устройство;
- ADVANCE - оператор обработки;
- RELEASE – вывод ТА из устройства.
Устройство имеет СЧА:
- FR j – коэффициент использования j-го устройства;
- FT j – среднее время обработки j-м устройством;
- F j – состояние устройства с номером j (0- устройство свободно, 1- устройство занято).
Очереди имитируют постановку, нахождение и вывод ТА из очереди. Очереди составляются двумя блоками:
- QUEUE – захват (вход в очередь);
- DEPART – выход из очереди.
Очереди имеют СЧА:
- Q j – длина j-й очереди;
- QM j – максимальная длина j-й очереди;
-
QA
j
– средняя длина очереди
;![]()
-
QT
j
– среднее время ожидания ТА в очереди
с учётом транзитных ТА.
