Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 9 лет назад пользователемЗинаида Юматова
1 Тема 7. Язык моделирования GPSS Дисциплина «Имитационное моделирование экономических процессов» Специальность « Прикладная информатика (в экономике)» Институт информатики, инноваций и бизнес систем Кафедра информатики, инженерной и компьютерной графики Старший преподаватель Кийкова Е.В.
2 СОДЕРЖАНИЕ 2 1. Ключевые 1. Ключевые понятия 2. Учебный материал 3. Вопросы для самопроверки 4. Рекомендуемая литература
3 КЛЮЧЕВЫЕ ПОНЯТИЯ 3 Язык GPSS Объекты языка GPSS Категории и типы Транзакт Стандартные числовые атрибуты Сохраняемые величины Списки пользователей
4 УЧЕБНЫЙ МАТЕРИАЛ 4 Основные задачи лекции Раскрыть основные понятия, связанные с языком имитационного моделирования GPSS. Ознакомить со средой моделирования GPSS/W. Рассмотреть основные блоки GPSS. Ознакомить с моделированием вероятностных функций распределения в GPSS/W.
5 УЧЕБНЫЙ МАТЕРИАЛ 5 Принципы построения имитационных программ Объекты языка GPSS подразделяют на категории и типы. Наименование категорий: операционная, аппаратная, динамическая, вычислительная, статистическая, запоминающая, группирующая.
6 УЧЕБНЫЙ МАТЕРИАЛ 6 Наименование типов объекта: блоки, сообщения, устройства памяти, логические ключи, арифметические и булевские переменные, функции, очереди, таблицы, ячейки, матрицы ячеек, группы, списки.
7 УЧЕБНЫЙ МАТЕРИАЛ 7 Блоки С объектами связаны определенные совокупности блоков, описываемых функционирование самой моделируемой системы либо содержащих дополнительную информацию о порядке моделирования.
8 УЧЕБНЫЙ МАТЕРИАЛ 8 Операционная категория Блоки и сообщения - два основных типа объектов языка GPSS. Практически все изменения состояния модели происходят в результате входа сообщений в блоки и выполнения ими своих функций. С блоками связаны операторы, управляющие процессом моделирования.
9 УЧЕБНЫЙ МАТЕРИАЛ 9 Оператор SIMULATE укладывает на необходимость проведения моделирования. При его отсутствии производится только трансляция программы. Оператор START указывает на получение исходных данных и начало моделирования. Окончание моделирование производится при обнулении счетчика количества вводимых сообщений, задаваемого в поле А, Поле С определяет интервал выдачи промежуточной статистики.
10 УЧЕБНЫЙ МАТЕРИАЛ 10 Аппаратная категория Язык GPSS оперирует тремя группами оборудования: устройствами; памятью; логическими ключами.
11 УЧЕБНЫЙ МАТЕРИАЛ 11 К группе устройств относятся блоки: SEIZE, RELEASE, PREEMPT, RETURN. Введение в моделирующую программу описания устройства позволяет автоматически регистрировать статистическую информацию.
12 УЧЕБНЫЙ МАТЕРИАЛ 12 Группу памятей образуют блоки: ENTER, LEAVE, карта описания памяти STORAGE. Введение в моделирующую программу памяти позволяет автоматически регистрировать статистическую информацию.
13 УЧЕБНЫЙ МАТЕРИАЛ 13 Для управления ключами используется оператор LOGIG. Предусмотрено три режима изменения ключа: сброс в «0»; установка в «1»; инвертирование изменения состояния ключа на противоположное.
14 УЧЕБНЫЙ МАТЕРИАЛ 14 Динамическая категория Динамические объекты - это сообщения (транзакты). В процессе моделирования они создаются и уничтожаются. Каждому сообщению соответствует набор параметров, количество которых может быть удовлетворено до 100. Если количество параметров не называется, то оно принимается равным 12. Сообщениям можно присваивать приоритет от 0 до 127; если приоритет не назван, то он принимается равным 0.
15 УЧЕБНЫЙ МАТЕРИАЛ 15 С динамической категорией объектов связаны блоки, основные из которых можно подразделять на пять групп: 1. Группа задержки состоит из единственного блока ADVANCE; 2. Группа создания - из блоков GENERATE, SPLIT, ASSEMBLE; 3. Группа уничтожения сообщений состоит из единственного блока TERMINATE;
16 УЧЕБНЫЙ МАТЕРИАЛ Группа изменения маршрутов сообщений - из блоков TRANSFER, LOOP, GATE, TEST. Блок TRANSFER имеет шесть основных режимов использования; 5. Группа синхронизации сообщений включает в себя блоки MATCH и GATHER. Сопряженные блоки MATCH не допускают продвижения сообщения, поступившего первым, пока не поступило второе сообщение.
17 УЧЕБНЫЙ МАТЕРИАЛ 17 Вычислительная категория В вычислительной категории используются объекты трех видов: арифметические переменные, логические (булевские) переменные, функции. Арифметические переменные описываются блоком VARIABLE в режиме целых чисел и FVARIABLE в режиме с плавающей точкой.
18 УЧЕБНЫЙ МАТЕРИАЛ 18 При вычислении используется пять алгебраических операций: "+" (сложение); "-" (вычитание); "*" (умножение); "/" (деление с отбрасыванием остатка); "_" (деление на модуль, при котором частное отбрасывается и сохраняется остаток, который считается положительным). Функции описываются с помощью блока FUNCTION. Основные типы функций - кусочно-линейная и кусочно-постоянная.
19 УЧЕБНЫЙ МАТЕРИАЛ 19 Статистическая категория В языке GPSS используется 2 типа статистических объектов: очереди; таблицы. Очередь выделяется блоками QUEUE и DEPART. Частоты попадания заданного СЧА регистрируются блоком TABULATE. Характеристики таблиц вводятся блоком TABLE.
20 УЧЕБНЫЙ МАТЕРИАЛ 20 Запоминающая категория Для сохранения в модели числовой информации отводятся специальные ячейки основной памяти SAVEVALUE. Совокупности ячеек можно организовать в матрицы. Для записи информации в ячейки служит блок SAVEVALUE, в матрицы – МSAVEVALUE. Матрица описывается с помощью оператора MATRIX. Присвоение начальных значений ячейкам и матрицам осуществляется блоком INITIAL, с помощью которого можно устанавливать также логические ключи в состояние «1».
21 УЧЕБНЫЙ МАТЕРИАЛ 21 Группирующая категория Из объектов группирующей категории рассмотрим блоки LINK и UNLINK, позволяющие переводить сообщения из списка текущих активных событий в списки пользователя неактивных событий и обратно. Использование списков пользователя позволяет моделировать различные дисциплины обслуживания сообщений.
22 УЧЕБНЫЙ МАТЕРИАЛ 22 Синтаксис элементов языка Алфавит. Алфавит языка GPSS состоит из латинских букв от А до Z; цифр от 0 до 9 и специальных символов. Русские буквы могут использоваться только в комментариях. Числа. В языке GPSS различают два типа чисел полные и действительны. Признаком действительного числа является десятичная точка. Числа могут занимать в памяти ЭВМ два байта (полусловные) и четыре байта (полнословные).
23 УЧЕБНЫЙ МАТЕРИАЛ 23 Идентификаторы. Они должны содержать не более пяти алфавитно-цифровых символов, причем первые три символа должны быть буквами. Идентификаторы используются для формирования имен объектов и блоков. Именование объектов в GPSS может выполняться двумя способами в виде числового имени, и в виде символического имени.
24 УЧЕБНЫЙ МАТЕРИАЛ 24 Стандартные числовые атрибуты В процесс моделирования GPSS автоматически регулирует и корректирует определенную информацию различных объектов, используемых в модели. Доступ к этой части информации осуществляется с помощью стандартного числового атрибута (СЧА).
25 УЧЕБНЫЙ МАТЕРИАЛ 25 Имя СЧА состоит из двух частей. Первая часть указывает групповое имя. Оно идентифицирует одновременно и тип элемента (т. е. прибор, многоканальное устройство, очередь) и тип информации (например, счетчик занятий прибора, нагрузку многоканального устройства). Вторая часть идентифицирует конкретного члена группы (т. е. какай прибор, какое многоканальное устройство).
26 УЧЕБНЫЙ МАТЕРИАЛ 26 Правила записи программы Формат GPSS-блоков такой: [Номер строки] [Метка] При описании формата квадратные скобки [ ] указывают на необязательность поля. Номер строки – обязательное поле для GPSS/PC (в GPSS/W – игнорируется). Начинается с первой позиции строки. Представляет собой десятичное число.
27 УЧЕБНЫЙ МАТЕРИАЛ 27 Метка (имя блока) – содержимым поля является имя – последовательность символов, начинающаяся с буквы. Операция - содержит названия блоков или команд GPSS/W.
28 УЧЕБНЫЙ МАТЕРИАЛ 28 Операнды – блоки могут иметь операнды. Операнды блоков задают информацию, специфичную для действия данного блока. В блоках не может использоваться больше семи операндов. Операнды в общем случае обозначаются символами: A, B, C, D, E, F, G. Значения операндов определяются типом блока. Операнды следуют один за другим и отделяются запятыми или одним пробелом. Если операнд опущен, то вместо него ставится запятая. Между операндами не должно быть больше одного пробела, так как это будет означать, что операнды закончились и интерпретатор прекращает чтение строки.
29 УЧЕБНЫЙ МАТЕРИАЛ 29 Комментарии – необязательное поле. Комментарии располагаются после описания операндов и отделяются от них символом «;». Если комментарии занимают всю строку, то в первой колонке должен стоять символ "*" или «;». Строка описания блока может содержать до 79 символов в GPSS/PC и до 250 символов в GPSS/W.
30 УЧЕБНЫЙ МАТЕРИАЛ 30 Стандартная статистика В процессе выполнения программы модели интерпретатор собирает стандартную статистическую информацию, которая автоматически распечатывается по окончании моделирования. Стандартную статистику можно наблюдать в окне REPORT (WINDOW/REPORT).
31 УЧЕБНЫЙ МАТЕРИАЛ 31 Основные разделы отчета: Титул – включает ссылку на систему моделирования, содержащий описание модели файл и дату. Общая информация указывает начало и конец системного времени, число блоков, устройств и памятей. Имена – это список назначенных программистом имен и их числовые эквиваленты. Блоки – сведения о месте в модели, типе блока и числе транзактов (общее, к концу моделирования, в цепи RETRY повторных попыток).
32 УЧЕБНЫЙ МАТЕРИАЛ 32 Если в модели используются объекты типа «устройство», то в файле стандартной статистики будет представлена информация об использованных устройствах. FACILITY ENTRIESUTIL. AVE. TIME (1) (2) (3)(4) AVAIL. OWNER PENDINTER RETRY DELAY (5)(6) (7) (8) (9) (10) 1 – номер или имя устройства; 2 – количество входов; 3 – коэффициент использования; 4 – среднее время пребывания транзакта в устройстве; 5 – состояние готовности; 6 – номер последнего транзакта, занявшего устройство; 7 – количество прерванных в устройстве транзактов; 8 – количество прерывающих устройство транзактов; 9 – количество транзактов, ожидающих специальных условий; 10 – количество транзактов, ожидающих занятия устройства.
33 УЧЕБНЫЙ МАТЕРИАЛ 33 Если в модели используются объекты типа «очередь», то в файле стандартной статистики будет представлена информация об этих объектах. QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. (1) (2) (3) (4) (5) (6) AVE.TIME AVE.(-0) RETRY (7)(8) (9) 1 – номер или имя очереди; 2 – максимальная длина очереди; 3 – текущая длина очереди; 4 – общее количество входов; 5 – количество «нулевых» входов; 6 – средняя длина очереди; 7 - среднее время пребывания транзактов в очереди; 8 - среднее время пребывания транзактов в очереди без учёта «нулевых» входов; 9 – количество транзактов, ожидающих специальных условий.
34 УЧЕБНЫЙ МАТЕРИАЛ 34 Если в модели используются объекты типа «многоканальное устройство», то в файле стандартной статистики будет представлена информация об этих объектах. STORAGECAP.REMAIN MINMAXENTRIES (1) (2) (3) (4) (5) (6) AVL.AVE.C.UTIL.RETRYDELAY (7) (8) (9) (10) (11) 1 – имя или номер многоканального устройства (МКУ); 2 – емкость МКУ; 3 – количество единиц свободной ёмкости МКУ в конце периода моделирования; 4 – минимальное количество используемой ёмкости МКУ за период моделирования; 5 – максимальное количество используемой ёмкости МКУ за период моделирования; 6 – количество входов в МКУ; 7 – состояние готовности МКУ в конце периода моделирования (1 – готово, 0 – не готово); 8 – среднее значение занятой ёмкости за период моделирования; 9 – средний коэффициент использования всех устройств МКУ; 10 – количество транзактов, ожидающих специальных условий, зависящих от состояния МКУ; 11 – количество транзактов, ожидающих возможности входа в блок ENTER..
35 УЧЕБНЫЙ МАТЕРИАЛ 35 Если в модели используется блок TABLE то в файле стандартной статистики будет представлена информация об этих объектах. TABLEMEANSTD. DEV.RANGE RETRY (1) (2) (3) (4) (5) FREQUENCYCUM,% (6)(7) 1 - имя или номер таблицы; 2 – среднее значение; 3 – среднеквадратическое отклонение измеряемого значения; 4 – границы интервалов; 5 – ждут условий; 6 – количество попаданий; 7 – накопленная частость.
36 УЧЕБНЫЙ МАТЕРИАЛ 36 Кроме того, в отчет включаются данные: о цепях (пользователя, текущих и будущих событий), группах транзактов, числовых группах, логических ключах, матрицах, сохраняемых значениях. Для нулевых значений матриц указываются диапазоны индексов.
37 УЧЕБНЫЙ МАТЕРИАЛ 37 Главное окно системы включает в себя: Заголовок, Меню, Панель инструментов Поле клиента для набора текста модели. Среда моделирования GPSS/W
38 УЧЕБНЫЙ МАТЕРИАЛ 38 Используя меню главного окна, можно создавать объекты GPSS/W: модели, имитации, отчеты, тексты. Каждый из них можно рассматривать в соответствующих дочерних окнах. Типичный проект начинается с создания или модификации модели. Следует иметь ввиду, что модель – не просто текстовый файл: она содержит также установки Settings, закладки Bookmarks и результаты, которые не могут читаться внешним редактором.
39 УЧЕБНЫЙ МАТЕРИАЛ 39 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока ADVANCE Задерживает транзакт на среднее время А, В – модификатор разброса или модификатор функции. ASSIGN Присваивает параметру A входящего транзакта значение B, модифицированное значением C.
40 УЧЕБНЫЙ МАТЕРИАЛ 40 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока DEPART Обеспечивает в очереди А освобождение В единиц.Обеспечивает вхождение транзакта в накопитель А с занятием В единиц памяти. ENTER Обеспечивает в очереди А освобождение В единиц.Обеспечивает вхождение транзакта в накопитель А с занятием В единиц памяти.
41 УЧЕБНЫЙ МАТЕРИАЛ 41 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока GATEGATE Проверяет условие нахождение логического ключа А в состоянии Х. Проверяет условие нахождение устройства А в состоянии Х. GATEGATE Проверяет условие нахождение логического ключа А в состоянии Х. Проверяет условие нахождение устройства А в состоянии Х.
42 УЧЕБНЫЙ МАТЕРИАЛ 42 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока GATEGATE Проверяет условие нахождение накопителя А в состоянии Х. GENERATE Блок генерации транзактов через А единиц времени с модификатором В и задержкой С, D транзактов, с приоритетом Е, форматом F. GENERATE A,B,C,D,E,F
43 УЧЕБНЫЙ МАТЕРИАЛ 43 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока LEAVE Освобождает в накопителе А В единиц памяти PRIORIRY Присваивает входящему транзакту приоритет А PRIORITY A
44 УЧЕБНЫЙ МАТЕРИАЛ 44 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока QUEUE Обеспечивает занятие в очереди А В единиц. RELEASE Освобождает устройство с номером А.
45 УЧЕБНЫЙ МАТЕРИАЛ 45 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока SAVEVALUE Сохраняет заданное значение В в ячейке А SEIZE Занимает устройство с номером А. A,B,C SAVEVALUE
46 УЧЕБНЫЙ МАТЕРИАЛ 46 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока SELECT Блок выбора элементов. TERMINATE Уничтожает А транзактов. SELECT A,B,C,D,E X
47 УЧЕБНЫЙ МАТЕРИАЛ 47 Условные обозначения на блок-схемах Имя блока Обозначение блока Назначение блока TRANSFER Изменяет направление движения транзактов согласно режиму А. E NE TEST GE LE G L Проверяет соотношение Х между А и В и направляет входящий транзакт в следующий блок при выполнении или по адресу С при невыполнении соотношения. С ВА Х TEST
48 УЧЕБНЫЙ МАТЕРИАЛ 48 Задание потоков с различными законами распределения В GPSS/W в библиотеку процедур включено 24 вероятностных распределений. Вызов каждой функции оформлен как оператор присваивания с указанием в его левой части типа возвращаемого значения. Встроенная библиотека процедур содержит следующие вероятностные распределения: БетаReal=BETA(RNj, min, max, a, b) БиномиальноеInteger=Binomial(RNj, t, p) Дискретноравномерное Integer=DUNIFORM(RNj,min, max) Показательное Real=Exponential(RNj, m, s)
49 УЧЕБНЫЙ МАТЕРИАЛ 49 Обратное гауссово Real=INVGAUSS (RNj, m, s, a) Обратное Вейбулла Real=INVWEIBULL (RNj, m, s, a) ЛапласаReal=LAPLACE(RNj, m, s) ЛогистическоеReal=LOGISTIC(RNj, m, s) Нормальное Real=NORMAL (RNj, m, s) Парето Real=PARETO(RNj, m, s) Пирсона V типа Real=PEARSON5 (RNj, m, s, a) Пирсона VI типа Real=PEARSON6 (RNj, m, s, a, b) Крайних значений А Real=EXTVALA (RNj, m, s) Крайних значений Б Real=EXTVALB (RNj, m, s) Гамма Real=GAMMA(RNj, m, s, a) Геометрическое Integer=GEOMETRIC (RNj, p) Логарифм. Лапласа Real=LOGLAPLACE(RNj, m, s,a Логарифм. логистическое Real=LOGLOGIS(RNj, m, s, a)
50 УЧЕБНЫЙ МАТЕРИАЛ 50 Логарифм. нормальное Real=LOGNORMAL (RNj, m, s, a) Отрицат. биномиальное Integer=NEGBINOM (RNj, c, p) Пуассона Integer=POISSON (RNj, v) Треугольное Real=TRIANGULAR(RNj,min, max, mode) Равномерное Real=UNIFORM(a,b) Вейбулла Real=Weibull (RNj, m, s, a) Все процедуры вызываются по их указателю. Если требуется задать исходный датчик случайных чисел, подставляется только номер последнего – без предшествующего RN. Во всех случаях через Min и Max обозначены соответственно наименьшее и наибольшее значение генерируемой случайной величины, m – смещение, s – масштабный параметр (оба положительные), а и b - параметры формы.
51 ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ 51 Дайте определение понятию транзакт. Перечислите категории объектов GPSS. Перечислите типы объектов GPSS. Как на блок-схеме изображаются блоки символизирующие занятие и освобождение приборов, многоканальных устройств? Перечислите блоки используемые для изменения пути движения транзакта. Какие блоки используются для сбора статистики? Какая информация выводится в отчёте по результатам моделирования? Принципы задания потоков с различными законами распределения.
52 РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА 52 Кийкова Е.В., Лаврушина Е.Г. Имитационное моделирование. Практикум.- Владивосток: ВГУЭС, с. Томашевский В.Н., Жданова Е.Г. Имитационное моделирование в среде GPSS. – М.: Бестселлер, – 416 с. Советов Б.Я., Яковлев С.А. Моделирование систем. Учебник для ВУЗов. - М.: Высшая школа, с. Шрайбер Т.Дж. Моделирование на GPSS. - М.: Машиностроение, с.
53 53 Использование материалов презентации Использование данной презентации, может осуществляться только при условии соблюдения требований законов РФ об авторском праве и интеллектуальной собственности, а также с учетом требований настоящего Заявления. Презентация является собственностью авторов. Разрешается распечатывать копию любой части презентации для личного некоммерческого использования, однако не допускается распечатывать какую-либо часть презентации с любой иной целью или по каким-либо причинам вносить изменения в любую часть презентации. Использование любой части презентации в другом произведении, как в печатной, электронной, так и иной форме, а также использование любой части презентации в другой презентации посредством ссылки или иным образом допускается только после получения письменного согласия авторов.
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.