Смекни!
smekni.com

Моделирование на GPSS (стр. 1 из 13)

ОСНОВЫ МОДЕЛИРОВАНИЯ НА GPSS/PC

ОГЛАВЛЕНИЕ ВВЕДЕНИЕ .................................................... 1 1. ОБЩИЕ СВЕДЕНИЯ О GPSS/PC ................................. 2

2. ОСНОВНЫЕ БЛОКИ GPSS/PC И СВЯЗАННЫЕ С НИМИ ОБЪЕКТЫ ........ 6

2.1. Блоки, связанные с транзактами .................... 6

2.2. Блоки, связанные с аппаратными объектами .......... 13

2.3. Блоки для сбора статистических данных ............. 15

2.4. Блоки, изменяющие маршруты транзактов ............. 18

2.5. Блоки, работающие с памятью ....................... 21

2.6. Блоки для работы со списками пользователя ......... 23

3. УПРАВЛЯЮШИЕ ОПЕРАТОРЫ GPSS/PC ............................ 25

4. НЕКОТОРЫЕ ПРИЕМЫ КОНСТРУИРОВАНИЯ GPSS-МОДЕЛЕЙ ............ 42

4.1. Косвенная адресация ............................... 42

4.2. Обработка одновременных событий ................... 44

5. КОМАНДЫ GPSS/PC И ТЕХНОЛОГИЯ РАБОТЫ С ПАКЕТОМ ............ 47

5.1. Загрузка интегрированной среды .................... 47

5.2. Ввод новой модели ................................. 47

5.3. Редактирование текста модели ...................... 48

5.4. Запись и считывание модели с диска ................ 49

5.5. Прогон модели и наблюдение за моделированием ...... 49

5.6. Получение и интерпретация стандартного отчета ..... 53

СПИСОК ЛИТЕРАТУРЫ ........................................... 58

ВВЕДЕНИЕ

Процессы функционирования различных систем и сетей связи могут

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

обслуживания (СМО) - стохастических, динамических, дискретно-непре-

рывных математических моделей. Исследование характеристик таких мо-

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

имитационного моделирования [1-6].

Имитационная модель отображает стохастический процесс смены

дискретных состояний СМО в непрерывном времени в форме моделирующе-

го алгоритма. При его реализации на ЭВМ производится накопление

статистических данных по тем атрибутам модели, характеристики кото-

рых являются предметом исследований. По окончании моделирования на-

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

лучаются в виде выборочных распределений исследуемых величин или их

выборочных моментов. Таким образом, при имитационном моделировании

систем массового обслуживания речь всегда идет о статистическом

имитационном моделировании [5;6].

Сложные функции моделирующего алгоритма могут быть реализованы

средствами универсальных языков программирования (Паскаль, Си), что

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

использовании модели. Однако подобная гибкость приобретается ценой

больших усилий, затрачиваемых на разработку и программирование

весьма сложных моделирующих алгоритмов, оперирующих со списковыми

структурами данных. Альтернативой этому является использование спе-

циализированных языков имитационного моделирования [5-7].

Специализированные языки имеют средства описания структуры и

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

легчает и упрощает программирование имитационных моделей, поскольку

основные функциии моделирующего алгоритма при этом реализуются ав-

томатически. Программы имитационных моделей на специализированных

языках моделирования близки к описаниям моделируемых систем на

естественном языке, что позволяет конструировать сложные имитацион-

ные модели пользователям, не являющимся профессиональными програм-

мистами.

Одним из наиболее эффективных и распространенных языков моде-

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

GPSS [1;4;7]. Он может быть с наибольшим успехом использован для

моделирования систем, формализуемых в виде систем массового обслу-

живания. В качестве объектов языка используются аналоги таких стан-

дартных компонентов СМО, как заявки, обслуживающие приборы, очереди

и т.п. Достаточный набор подобных компонентов позволяет конструиро-

вать сложные имитационные модели, сохраняя привычную терминологию

СМО.

На персональных компьютерах (ПК) типа IBM/PC язык GPSS реали-

зован в рамках пакета прикладных программ GPSS/PC [8]. Основной мо-

дуль пакета представляет собой интегрированную среду, включающую

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

ния текста модели, ее отладки и наблюдения за процессом моделирова-

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

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

статистической обработки. Кроме основного модуля в состав пакета

входит модуль создания стандартного отчета GPSS/PC, а также ряд до-

полнительных модулей и файлов.

В данном издании, состоящем из двух частей, излагаются основы

моделирования систем и сетей связи с использованием пакета GPSS/PC.

В первой части рассматриваются основные понятия и средства GPSS/PC,

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

Изложение материала сопровождается небольшими учебными примерами.

Относительно подробное рассмотрение языка GPSS/PC вызвано

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

Во второй части рассматриваются примеры GPSS-моделей различных

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

ции процессов функционирования систем и сетей связи. Приводится

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

нием GPSS/PC. Подробно комментируются тексты GPSS-моделей и резуль-

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

1. ОБЩИЕ СВЕДЕНИЯ О GPSS/PC

Исходная программа на языке GPSS/PC, как и программа на любом

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

раторов. Операторы GPSS/PC записываются и вводятся в ПК в следующем

формате:

номер _строки имя операция операнды ; комментарии

Все операторы исходной программы должны начинаться с номе-

ра 0_строки - целого положительного числа от 1 до 9999999. Пос-

ле ввода операторов они располагаются в исходной программе в соот-

ветствии с нумерацией строк. Обычно нумерация производится с неко-

торым шагом, отличным от 1, чтобы иметь возможность добавления опе-

раторов в нужное место исходной программы.Некоторые операторы удо-

бно вводить, не включая их в исходную программу. Такие операторы

вводятся без номера строки. В настоящем издании при описании формата операторов и в примерах

моделей номера строк будут опускаться для лучшей читаемости текста. Отдельные операторы могут иметь имя для ссылки на эти операторы

в других операторах. Если такие ссылки отсутствуют, то этот элемент

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

Это поле оператора является обязательным. У некоторых операторов

поле операции включает в себя также вспомогательный операнд.

В полях операндов записывается информация, уточняющая и конк-

ретизирующая выполнение функции, определенной в поле операции. Эти

поля в зависимости от типа операции содержат до семи операндов,

расположенных в определенной последовательности и обозначаемых

обычно первыми буквами латинского алфавита от A до G. Некоторые

операторы вообще не имеют операндов, а в некоторых операнды могут

быть опущены, при этом устанавливаются их стандартные значения (по

умолчанию). При записи операндов используется позиционный принцип:

пропуск операнда отмечается запятой.

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

поля операндов точкой с запятой. Комментарии не могут содержать букв русского алфавита. Операторы GPSS/PC записываются, начиная с первой позиции, в свободном формате, т.е. отдельные поля разделяются произвольным ко-

личеством пробелов. При вводе исходной программы в интегрированной

среде GPSS/PC размещение отдельных полей операторов с определенным

количеством интервалов между ними производится автоматически.

Каждый оператор GPSS/PC относится к одному из четырех типов:

операторы-блоки, операторы определения объектов, управляющие опера-

торы и операторы-команды.

Операторы-блоки формируют логику модели. В GPSS/PC имеется

около 50 различных видов блоков, каждый из которых выполняет свою

конкретную функцию. За каждым из таких блоков стоит соответствующая

подпрограмма транслятора, а операнды каждого блока служат парамет-

рами этой подпрограммы.

Операторы определения объектов служат для описания пара-

метров некоторых объектов GPSS/PC (о самих объектах речь пойдет

дальше). Примерами параметров объектов могут быть количество каналов в мно- гоканальной системе массового обслуживания, количество строк и

столбцов матрицы и т.п.

Управляющие операторы служат для управления процессом модели- рования (прогоном модели). Операторы-команды позволяют управлять

работой интегрированной среды GPSS/PC. Управляющие операторы и

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

вводятся непосредственно с клавиатуры ПК в процессе интерактив-

ного взаимодействия с интегрированной средой. После трансляции исходной программы в памяти ПК создается так