Файл: Метод. указания к ЛР (часть 1).docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 15.03.2019

Просмотров: 963

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

При выполнении работ следует ознакомиться с лекционным материалом, учебной литературой из списка [1-8] и методическими указаниями к каждой лабораторной работе. Студент выполняет лабораторные работы, используя указания, в которых приводятся краткие теоретические сведения, задания к работе, пример выполнения задания и содержание отчета. При выполнении работ студент получает индивидуальное задание, знакомится с основными командами и блоками системы моделирования GPSS World, приемами использования их в процессе создания имитационной модели и проверки ее достоверности, при выводе отчета и обработке результатов имитационного эксперимента. Исходные данные для выполнения работ содержатся в табл. 1–10. Студент выбирает вариант задания в соответствии с номером в деканатском журнале.

ЛАБОРАТОРНАЯ РАБОТА №1

Краткие теоретические сведения

Отметим различие между устройствами и многоканальными устройствами с емкостью 1. Во-первых, устройство может не только «заниматься», но и захватываться, в то время как единственный элемент многоканального устройства может только «заниматься». Это и есть самое важное различие между устройствами и многоканальными устройствами. Захват означает, что если даже устройство занято текущим обслуживанием, оно немедленно может быть предоставлено по соответствующему требованию. Захват является очень важным элементом функционирования сложных систем. Во-вторых, устройство может быть освобождено только тем транзактом, который его занял. Если транзакт пытается войти в блок RELEASE без предварительного входа в блок SEIZE того же устройства, возникает ошибка. В противоположность этому любой транзакт может войти блок LEAVE без того, чтобы перед этим войти в блок ENTER соответствующего многоканального устройства. Ошибка возникает лишь тогда, когда из «текущего содержимого» вычитается величина, приводящая к отрицательному значению содержимого.

ПРИЛОЖЕНИЕ

36




МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ


Брянский государственный технический университет




УТВЕРЖДАЮ          

Ректор университета

__________О.Н. Федонин

____”___________2014 г.







ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ


Методические указания к выполнению

лабораторных работ для студентов

очной формы обучения направлений

080500 «Бизнес-информатика»

и 230700 «Прикладная информатика»


Часть 1









Брянск 2014


УДК 330.45:004.9

Имитационное моделирование [Текст]+[Электронный ресурс]: методические указания к выполнению лабораторных работ для студентов очной формы обучения направлений 080500 «Бизнес-информатика» и 230700 «Прикладная информатика». Часть 1. − Брянск: БГТУ, 2014. –35с.





Разработал:    А. П. Мысютин, к.т.н., доц.





Рекомендовано кафедрой “Высшая математика” БГТУ

(протокол №3 от 19.11.13)







Научный редактор Л.А. Гусакова

Редактор издательства Л.И. Захарова

Компьютерный набор А.П. Левкина







Темплан 2014 г., п.131

Подписано в печать __.__.14 Формат 60х84х 1/16 Бумага офсетная

Офсетная печать Печ. л. 2,03 Уч.-изд. л. 2,03 Т. 30 экз. Заказ Бесплатно

Издательство Брянского государственного технического университета

Брянск, бульвар 50-летия Октября, 7

Лаборатория оперативной печати БГТУ, ул. Харьковская, 9

1. Введение


Имитационное моделирование является эффективным средством исследования экономических систем в тех часто встречающихся случаях, когда аналитическое решение задачи практически невозможно в силу значительных математических трудностей, а проведение натурных испытаний требует больших затрат времени и средств или неосуществимо. В настоящее время этот важнейший раздел исследования операций переживает второе рождение. В первую очередь это связано с появлением в 2000 году мощного программного продукта фирмы Minuteman SoftwareGPSS World. При этом ощущается дефицит учебно-методической литературы, предназначенной для освоения студентами современной технологии имитационных исследований и приобретения навыков разработки имитационных моделей на базе системы моделирования GPSS World.

Цикл лабораторных работ по дисциплине «Имитационное моделирование» предназначен для студентов очной формы обучения направлений 080500 «Бизнес-информатика» и 230700 «Прикладная информатика». Лабораторные работы проводятся с целью закрепления теоретических основ дисциплины «Имитационное моделирование», освоения студентами технологии имитационного моделирования и выработки навыков принятия решений по результатам экспериментов с имитационными моделями. Лабораторный практикум состоит из восьми лабораторных работ, четыре из которых описаны в данном пособии.


Лабораторной работа № 1 посвящена знакомству с системой имитационного моделирования GPSS World, запуску системы, изучению блоков GENERATE и TERMINATE (организации поступления транзактов в модель и удалению транзактов из нее), освоению способов управления продолжительностью моделирования и разработке простейших GPSS-моделей.

В лабораторной работе № 2 изучаются блоки GPSS, которые имитируют занятие одноканального устройства и его освобождение, а также обслуживание транзактов посредством задержки во времени. Эти блоки используются для моделирования работы одноканальных обслуживающих устройств и процедуры обслуживания транзактов.

В лабораторной работе № 3 изучается методика моделирования многоканальных обслуживающих устройств (памятей) и построения моделей систем с однородными параллельно работающими устройствами. Описываются блоки, имитирующие занятие и освобождение транзактами многоканальных устройств, а также команда STORAGE, которая определяет подобные устройства.

Лабораторная работа № 4 направлена на освоение способов сбора и регистрации статистической информации в процессе ожидания и движения объектов динамической категории (транзактов) в модели. Рассматриваются два взаимодополняющих блока QUEUE и DEPART, играющих роль регистратора очереди в модели, и две разновидности статистических таблиц QTABLE и TABLE, служащих для получения плотности распределения, ее интегральных относительных частот, среднего и стандартного отклонения интересующих пользователя переменных.

В конце пособия имеется приложение, в котором разъясняются разделы, входящие в стандартный отчет GPSS World, который создается автоматически в конце моделирования. Он содержит обширную информацию по функционированию моделируемой системы или процесса.

При выполнении работ следует ознакомиться с лекционным материалом, учебной литературой из списка [1-8] и методическими указаниями к каждой лабораторной работе. Студент выполняет лабораторные работы, используя указания, в которых приводятся краткие теоретические сведения, задания к работе, пример выполнения задания и содержание отчета. При выполнении работ студент получает индивидуальное задание, знакомится с основными командами и блоками системы моделирования GPSS World, приемами использования их в процессе создания имитационной модели и проверки ее достоверности, при выводе отчета и обработке результатов имитационного эксперимента. Исходные данные для выполнения работ содержатся в табл. 1–10. Студент выбирает вариант задания в соответствии с номером в деканатском журнале.

Общая продолжительность лабораторных работ составляет 17 учебных часов и рассчитана на проведение всего практикума в течение одного семестра из расчета по 1 часу в неделю.





ЛАБОРАТОРНАЯ РАБОТА №1



ЗАПУСК СИСТЕМЫ GPSS WORLD И РАЗРАБОТКА ПРОСТЕЙШИХ GPSS-МОДЕЛЕЙ

Цель работы: знакомство с системой имитационного моделирования GPSS World, запуск системы, изучение блоков GENERATE и TERMINATE, освоение способов управления продолжительностью моделирования, разработка простейших GPSS-моделей.

Краткие теоретические сведения


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

Оператор языка GPSS состоит из частей, называемых полями. Поле – это набор печатных символов, отделенных пробелами или ограничителями. В общем случае оператор состоит из следующих полей: метка (необязательно) | глагол (обязательно) | операнды (зависит от глагола) ; комментарий (необязательно).

Метка (имя блока) – последовательность символов, начинающаяся с буквы. Она не должна совпадать с ключевыми словами GPSS. В некоторых операторах это поле является обязательным.

В поле глагола содержится ключевое слово GPSS, обозначающее либо один блок, либо одну из команд GPSS.

Исходные данные, необходимые для выполнения операций, соответствующих блоку или команде, задаются в поле операндов. Операнды разделяются запятыми и в общем случае обозначаются символами: A, B, C, D, E, F, G. Число операндов и их значения определяются типом блока или команды GPSS. Если операнд опущен, то вместо него ставится запятая.

Комментарии отделяются от поля операндов символом «;». Допускается запись комментария с начала строки. В этом случае в первой позиции строки ставится символ «;» или «*».

Рассмотрим вначале два важнейших блока GPSS.

Блок GЕNЕRАТЕ (генерировать)

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

Формат: GENERATE A, B, C, D, E.

Значение операндов


Операнд

Значение

Значение по умолчанию

A

Средний интервал времени (число, СЧА)

0

B

Половина поля допуска равномерно распределенного интервала (число, СЧА)

0

C

Смещение интервалов (момент прихода первого транзакта)

Отсутствует

D

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

E

Уровень приоритета (от 0 до 127, причем, чем больше номер, тем выше приоритет)

0



GENERATE – это блок, через который транзакты входят в модель. Не существует ограничений на число различных блоков GЕNЕRАТЕ в одной модели. Интервал времени между последовательными появлениями транзактов блока GENERAТЕ называют интервалом поступления.

Способ реализации прихода транзактов в модель GPSS является идентичным тому способу, который изложен в модели при описании процесса прихода заявок. Это означает, что, когда транзакт входит в модель через блок GENERАТЕ, интерпретатор планирует время поступления последователя транзакта путем розыгрыша случайного числа в соответствии с распределением интервалов времени поступления с последующим добавлением разыгранного значения к текущему значению таймера. При достижении этого значения времени следующий транзакт вводится в модель через блок GENERАТЕ и т. д.

Пользователь должен задать спецификацию распределения интервалов времени поступления в блоке GENERАТЕ. Информация,

необходимая для данного блока, задается операндами. Все возможные виды распределения интервалов времени прибытия в GPSS делят на равномерно распределенные и все другие виды распределения.

Таким образом, специально рассматривают только простейшее из всех нетривиальных распределений, а именно равномерное распределение. Более сложные интервалы времени поступления транзактов могут быть заданы с использованием так называемого модификатора-функции. Под действием модификатора-функции значение операнда А умножается на значение функции, заданной операндом В.

Блок ТЕRМINАТЕ (завершить)

Назначение: удаление транзактов из модели.

Формат: TERMINATE A.

Значение операндов

Операнд

Значение

Значение по умолчанию

A

Указатель уменьшения счетчика завершений

0

Транзакты удаляются из модели, попадая в блок ТЕRМINАТЕ. Блоки ТЕRМINАТЕ всегда позволяют выйти всем транзактам, которые пытаются это сделать. В модели может быть любое число блоков ТЕRМINАТЕ.

Операнд А является указателем уменьшения счетчика завершений. Иначе говоря, он задает величину, которая должна вычитаться из специального счетчика, называемого счетчиком завершений, каждый раз, когда транзакт входит в блок ТЕRМINАТЕ. Если разработчик не желает задавать операнд А блока ТЕRМINАТЕ, то по умолчанию подразумевается значение 0. Вход транзакта в такой блок ТЕRМINАТЕ не вызывает уменьшения содержания счетчика завершений.

Что же такое счетчик завершений? Эта такая ячейка памяти ЭВМ, которая хранит положительное целое значение, записанное в начале моделирования. В процессе моделирования транзакты попадают в блоки ТЕRМINАТЕ, и таким образом происходит уменьшение содержания счетчика. При достижении содержанием счетчика нуля моделирование завершается.

В модели может быть несколько блоков ТЕRМINАТЕ, но счетчик завершений только один, с начальным значением, указанным в операнде А команды SТАRТ (начать). Не следует путать ограничитель транзактов в блоке GENERАТЕ и счетчик завершения. Ограничитель задает число транзактов, которые войдут в модель, а счетчик – число транзактов, которые выйдут из модели. По окончании моделирования транзакты могут оставаться в модели.


Рассмотрим пример, в котором блок ТЕRМINАТЕ и команда SТАRТ используются для управления процессом моделирования.

Предположим, что в качестве единицы времени выбрана 1 минута. Требуется промоделировать поведение системы в течение 8 часов, а затем моделирование должно быть закончено. Это можно сделать следующим образом.

  1. В модель включают так называемый сегмент-таймер из трех операторов:

GENERАТЕ 480;

ТЕRМINАТЕ 1;

SТАRТ 1.

  1. Во всех прочих блоках ТЕRМINАТЕ в модели подразумевается использование операнда А по умолчанию. Это означает, что завершение моделирования, определяемое счетчиком завершений, не будет зависеть от других блоков ТЕRМINАТЕ.

Единичное значение операнда А команды SТАRТ вызывает запись в счетчик завершений единицы в качестве начального значения. В процессе моделирования завершения движений транзактов, которые происходят время от времени в других блоках ТЕRMINАТЕ, не оказывают воздействия на счетчик завершений. Следовательно, в момент модельного времени, равный 480, транзакт попадет в блок GЕNЕRАТЕ и сразу же перейдет в следующий блок ТЕRМINАТЕ, вызывая тем самым подпрограмму ТЕRМINАТЕ. Поскольку операнд этого блока содержит единицу, то из счетчика завершений вычитается единица. Это уменьшает значение счетчика от единицы до нуля. В результате интерпретатор прекращает моделирование.

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

Часто встречается ситуация, когда завершать моделирование надо после того, как модель покинет заданное число транзактов определенного типа. В этом случае поступают следующим образом.

  1. В команде SТАRТ операнду А присваивается значение заданного числа транзактов.

  2. Во всех блоках ТЕRМINАТЕ, через которые транзакты заданного типа покидают модель, операнду А присваивается 1 или другое, отличное от 0 число, соответствующее содержательному значению транзактов.

  3. Во всех других блоках ТЕRМINАТЕ используется значение операнда А по умолчанию (А=0).

Ниже приведен пример, в котором моделирование заканчивается, когда через модель пройдет 200 транзактов:

GENERАТЕ 15,5;

ТЕRМINАТЕ 1;

SТАRТ 200.


Задание к работе


1. Запустить систему GPSS World.

2. Создать объекты GPSS вида «Модель», в которых:

а) моделирование заканчивается, после того, как через модель пройдут N транзактов, причем транзакты должны поступать в модель каждые t1±t2 единиц модельного времени;

б) моделирование длится на протяжении T часов, а время между последовательными появлениями транзактов в модели равномерно распределено в интервале (t3; t4) минут.

3. Создать для каждой модели объекты GPSS «Процесс моделирования» и «Отчет».

Исходные данные для выполнения работы находятся в табл. 1.








Таблица 1