рефераты

рефераты

 
 
рефераты рефераты

Меню

Реферат: Моделирование на GPSS рефераты

Реферат: Моделирование на GPSS

ОСНОВЫ МОДЕЛИРОВАНИЯ НА 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.  Управляющие   операторы   и    

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

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

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

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

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

       чисел в памяти ПК, описывающих свойства и текущее состояние объекта.   

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

       динамические, операционные, аппаратные, статистические, вычислитель-

       ные, запоминающие и группирующие.

Динамические объекты,   соответствующие   заявкам  в  системах

       массового обслуживания, называются  в   GPSS/PC  транзактами.   Они

       "создаются" и "уничтожаются" так, как это необходимо по логике моде-

       ли в процессе моделирования. С каждым транзактом может быть связано

       произвольное  число параметров,  несущих в себе необходимую информа-

       цию об этом транзакте. Кроме того, транзакты могут иметь различные

       приоритеты.

           Операционные объекты GPSS/PC, называемые  блоками, соответствуют

       операторам-блокам исходной программы.  Они,  как уже говорилось,

       формируют логику модели, давая транзактам указания: куда идти и что

       делать дальше. Модель системы на GPSS/PC можно представить совокуп-

       ностью блоков,  объединенных в соответствии с логикой работы реаль-

       ной  системы  в  так   называемую   блок-схему.  Блок-схема   модели

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

       блоков в процессе моделирования.

           Аппаратные объекты GPSS/PC - это абстрактные элементы,  на ко-

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

       системы. К  ним  относятся   одноканальные и  многоканальные устрой-

       ства и логические переключатели.  Многоканальное устройство иногда

       называют памятью.

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

       живающим приборам в СМО. Одноканальное  устройство, которое  для

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

       вать одновременно только один транзакт.  Многоканальное  устройство

(МКУ)  может  обслуживать одновременно несколько транзактов.  Логи-

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

состояний  логического  или  физического характера.  ЛП может нахо-

диться в двух состояниях: включено и выключено. Его состояние может

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

       нятия определенных решений.

           Статистические объекты  GPSS/PC  служат  для сбора и обработки

       статистических данных о функционировании модели.  К  ним  относятся

       очереди и  таблицы .

Каждая очередь обеспечивает сбор и обработку данных о транзак-

тах, задержанных в какой-либо точке модели,  например перед однока-

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

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

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

             К вычислительным объектам GPSS/PC относятся переменные (ариф-

       метические и булевские)  и  функции.  Они  используются для  вычис-

       ления некоторых величин, заданных арифметическими или логическими

       выражениями либо табличными зависимостями.

           Запоминающие объекты GPSS/PC обеспечивают хранение в памяти ПК

       отдельных величин,  используемых в модели,  а также массивов  таких

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

       матрицы сохраняемых величин.

            К объектам  группирующего класса относятся списки пользователя

       и  группы. Списки  пользователя используются для организации очере-

       дей с дисциплинами, отличными от дисциплины "раньше пришел – раньше

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

           Каждому объекту  того  или иного класса соответствуют  числовые

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

       мени.  Кроме того,  имеется ряд так называемых системных атрибутов,   

       относящихся не к отдельным объектам,  а к модели в целом.       

       Значения атрибутов всех объектов модели по окончании моделирования

       Выводятся в стандартный отчет GPSS/PC. Большая часть атрибутов дос-

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

       вые атрибуты  (СЧА),  0которые могут использоваться в качестве опе-

       рандов операторов исходной программы. Все СЧА в GPSS/PC являются це-

       лыми числами.

    

                Каждый объект GPSS/PC имеет имя  и  номер. Имена объектам

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

       им номера транслятор присваивает автоматически. Имя объекта предста-

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

       алфавита, цифр и символа "подчеркивание". При необходимости имени

       любого объекта, кроме имени блока, можно поставить в соответствие

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

       формат:

                         имя   EQU   номер

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

       (непутать с номерами строк!).

        Для  ссылки   0на какой-либо стандартный числовой атрибут некото-

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

       записывается одним из следующих способов:

                               СЧА $имя              ;

            

                               СЧА j                   ,

       где   СЧА - системное обозначение (название) конкретного стандар-

       тного  числового  атрибута данного объекта;   имя - имя объекта; 

       j -  номер объекта; $ - символ-разделитель.

          

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

ется с помощью специальной управляющей программы,  которую называют

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

Работа GPSS-модели под управлением симулятора заключается в переме-

щении транзактов от одних блоков к другим,  аналогично тому,  как в

       моделируемой СМО перемещаются заявки, соответствующие транзактам.

В начальный момент времени в GPSS-модели нет ни  одного  тран-

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

определенные моменты времени в соответствии с теми логическими пот-

ребностями,  которые возникают в моделируемой системе.  Подобным же

образом транзакты покидают модель в определенные моменты времени  в

зависимости от специфики моделируемой системы. В общем случае в мо-

дели одновременно существует большое  число  транзактов,  однако  в

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

       кого-либо одного транзакта.

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

блоку по пути, предписанному блок-схемой. В тот момент, когда тран-

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

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

ния, при котором реализуется функция данного блока, транзакт "пыта-

Страницы: 1, 2, 3, 4, 5, 6, 7, 8