Имитационное моделирование систем. Учебное пособие
.pdf
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФГБОУ ВО “ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ ИНЖЕНЕРНЫХ ТЕХНОЛОГИЙ”
С. Н. ЧЕРНЯЕВА, В.В. ДЕНИСЕНКО
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ СИСТЕМ
Утверждено редакционно-издательским советом университета
в качестве учебного пособия
ВОРОНЕЖ
2016
УДК 621.72:62 ББК 3 817я7
Ч-49
Научный редактор доцент Л. А. КОРОБОВА
Р е ц е н з е н т ы:
кафедра правовой информатики, информационного права и естественно-научных дисциплин Российской академии правосудия;
д-р техн. наук В. Ф. БАРАБАНОВ (Воронежский государственный технический университет)
Печатается по решению редакционно-издательского совета
Воронежского государственного университета инженерных технологий
Черняева, С.Н.
Ч-49 Имитационное моделирование систем [Текст] : учеб. пособие / С. Н. Черняева, В. В. Денисенко; Воронеж. гос. ун-т инж. технол. - Воронеж : ВГУИТ, 2016. – 94 с.
ISBN 978-5-00032-180-5
Учебное пособие разработано в соответствии с требованиямиФГОС ВО подготовки выпускников по направлениям 09.03.02 - «Информационные системы и технологии», 09.03.03 - «Прикладная информатика». Оно предназначено для закрепления теоретических знаний дисциплин цикла Б1.
|
1402020000 -08 |
УДК 681.3.06 |
||
Ч |
|
|
Без объявл. |
ББК 3 817я7 |
|
|
|||
|
ОК 2 (03) – 2016 |
|
||
|
|
ISBN 978-5- 00032-180-5 |
© Черняева С. Н., Денисенко В. В., 2016 |
|
|
|
|
|
© ФГБОУ ВО «Воронеж. гос. ун-т |
|
|
|
|
инж. технол.», 2016 |
Оригинал-макет данного издания является собственностью Воронежского государственного университета инженерных технологий, его репродуцирование (воспроизведение) любым способом без согласия университета запрещается.
2
От авторов
Процесс освоения дисциплины формирует у студентов
следующие компетенции: |
|
|
|
|
|
|
09.03.02 – |
«Информационные |
системы и |
технологии» |
|||
дисциплины «Имитационное моделирование систем»: |
|
|
||||
ОПК-2 - способность |
использовать |
основные |
законы |
|||
естественно-научных |
дисциплин |
|
в |
|
профессионально |
|
деятельности, применять методы математического анализа и |
||||||
моделирования, |
теоретического |
и |
экспериментального |
|||
исследования; |
|
|
|
|
|
|
ПК-5 - способность проводить моделирование процессов и систем;
ПК-23 - готовность участвовать в постановке и проведении
экспериментальных исследований; |
|
|
|
|
|
||||
09.03.03 |
– |
|
«Прикладная |
информатика» |
дисциплины |
|
|||
«Имитационное моделирование процессов»: |
|
|
|
|
|||||
ОПК-2 |
- |
|
способность |
анализировать |
социально- |
||||
экономические |
|
задачи и процессы с применением методов |
|||||||
системного анализа и математического моделирования; |
|
||||||||
ПК-23 - способность |
применять |
системный |
подход |
и |
|||||
математические методы в формализации решения прикладных |
|||||||||
задач. |
|
|
|
|
|
|
|
|
|
Пособие помогает практически освоить методологии и |
|||||||||
принципы построения имитационных программ в |
среде GPSS. |
|
|||||||
Для программной реализации моделей применен языкGPSSV |
|
||||||||
(General Purpose |
|
System |
Simulator Virtual) как |
наиболее |
|||||
эффективное |
|
и |
распространенное |
программное |
средство |
||||
моделирования |
|
|
сложных |
дискретных |
, |
системуспешно |
|
||
используемое для моделирования систем, формализуемых в виде схем массового обслуживания.
Студент должен научиться работать с научно-технической и справочной литературой в области машинного моделирования, решать отдельные прикладные задачи моделирования, готовить и проводить эксперименты с моделями систем на ЭВМ, работать в рамках современных технологий машинной имитации.
3
При выполнении заданий студент должен осуществить формализацию описания объекта моделирования в терминах
типовых математических |
схем, |
построить |
обобщенную |
и |
|||
детальную |
схемы |
объекта |
моделирования, разработать |
||||
алгоритмическое |
описание |
работы |
модели. Кроме |
того, |
|||
необходимо |
провести |
|
качественные |
и |
количественны |
||
аналитические |
оценки |
|
исследуемых |
|
характери |
||
моделируемого |
объекта |
|
для |
сравнения |
с |
результатам |
|
имитационного эксперимента.
После реализации модели на ЭВМ и получения результатов машинного эксперимента с требуемой точностью необходимо провести их интерпретацию и анализ в терминах объекта моделирования, а затем оформить графическую часть работы.
4
1. Краткие сведения о языке GPSS
|
|
|
|
|
(ПК-5) |
|
|
|
|
|
|
|
|
|
В |
|
математических |
моделях |
|
сложных |
, |
объект |
|||||||
представленных в виде систем массового обслуживания(СМО), |
|
|||||||||||||
используют |
|
|
|
средства |
|
|
обслуживания, называемые |
|
||||||
обслуживающими аппаратами (ОА), и обслуживаемые заявки, |
|
|||||||||||||
называемые транзактами. Так, в модели производственной линии |
|
|||||||||||||
ОА отображают рабочие места, а |
транзакты – |
поступающие на |
|
|||||||||||
отработку |
детали – |
материалы |
и инструменты. В модели |
|
||||||||||
информационной |
|
системы |
отображают |
|
узлы |
коммутации, |
||||||||
накопители |
|
информации, процессоры, оперативную |
память, |
а |
|
|||||||||
транзакты – заявки и запросы на обработку информации. |
|
|
|
|||||||||||
Язык моделирования дискретных системGPSS построен в |
|
|||||||||||||
предположении, |
что |
моделью |
сложной |
дискретной |
системы |
|||||||||
является описание ее элементов и логических правилих |
|
|||||||||||||
взаимодействия в процессе функционирования моделируемой |
||||||||||||||
системы. Предполагается также, что для определенного класса |
|
|||||||||||||
моделируемых |
систем |
можно |
выделить |
небольшой |
|
набор |
||||||||
абстрактных |
элементов — объектов. |
Причем |
набор |
логических |
|
|||||||||
правил ограничен и может быть описан небольшим числом |
||||||||||||||
стандартных |
операций. |
Комплекс |
программ, |
описывающих |
|
|||||||||
функционирование |
объектов |
и |
|
выполняющих |
логические |
|||||||||
операции, является основой для создания программной модели |
|
|||||||||||||
системы данного класса. |
|
|
|
|
|
|
|
|
|
|
||||
Объекты GPSS подразделяются на 7 категорий и 14 типов. |
|
|||||||||||||
Объекты |
GPSS |
позволяют |
описать их |
|
взаимодействие |
|
||||||||
сравнительно |
несложными наборами операций и достаточно |
|||||||||||||
просто и наглядно представить процесс функционирования |
||||||||||||||
исследуемой |
системы S, |
формализуемой |
в |
видеQ-схемы, |
с |
|
||||||||
помощью этих объектов языка. |
|
|
|
|
|
|
|
|
|
|||||
Кроме |
того, |
для |
облегчения |
пользователю |
процесса |
|||||||||
построения модели вGPSS разработан язык блок-диаграмм, |
|
|||||||||||||
позволяющий |
упростить переход от алгоритма к |
программе |
||||||||||||
модели системы S. Каждый блок GPSS имеет свой графический |
|
|||||||||||||
аналог. С помощью набора графических аналогов отображается |
|
|||||||||||||
пространственная конструкция модели, упрощая дальнейшую |
|
|||||||||||||
линеаризацию программы модели. |
|
|
|
|
|
|
|
|
|
|||||
5
Построение |
блок-диаграмм |
знакомит |
|
программиста |
с |
||||||
набором операторов языка. Набор операторов языка однозначно |
|
||||||||||
соответствует набору блоков для описания блок-диаграммы. |
|
||||||||||
Вследствие этого очевидно, что построение блок-диаграммы |
|
||||||||||
является не самоцелью, а лишь промежуточным этапом при |
|
||||||||||
написании |
имитационной |
модели |
исследуемой |
системы |
с |
||||||
использованием операторов языкаGPSS. При этом процесс |
|
||||||||||
создания модели можно изобразить в виде схемы, показанной на |
|
||||||||||
рис. 1. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Исходное |
|
|
Формализация |
|
Декомпозиция |
|
Перевод |
|
|
|
|
описание |
|
|
системы в |
|
системы к |
|
блок – |
|
|
|
|
модели- |
|
|
терминах Q- |
|
виду блок – |
|
диаграммы |
|
|
||
руемой |
|
|
схем |
|
диаграммы |
|
в |
|
|
|
|
системы S |
|
|
|
|
GPSS |
|
программу |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 1. Процесс создания модели с использованием GPSS |
|
|
|||||
Основой |
GPSS являются |
программы, описывающие |
|
||||
функционирование выделенного конечного набора объектов, и |
|
||||||
специальная |
|
диспетчеризирующая |
программа-симулятор, |
||||
основные функции которой следующие: |
|
|
|
||||
· обеспечение |
|
заданных |
программистом |
маршрутов |
|||
продвижения |
динамических |
объектов, называемых |
далее |
|
|||
транзактами (сообщениями) ; |
|
|
|
|
|||
· планирование |
событий, происходящих в модели, |
путем |
|
||||
регистрации |
времени |
наступления |
каждого |
события |
|||
выполнения их в нарастающей временной последовательности; |
|
||||||
· регистрация |
|
статистической |
информации |
|
|||
функционировании модели; |
|
|
|
|
|||
· продвижение |
|
модельного |
времени |
в |
процес |
||
моделирования системы. |
|
|
|
|
|
||
6
2. |
Основное окно и меню программы |
|
|
||||||||
|
|
|
|
|
|
(ПК-5) |
|
|
|
||
GPSS World – это общецелевая система моделирования, |
|||||||||||
значительно |
|
облегчающая |
процесс создания и выполнения |
||||||||
программ |
|
|
имитационного |
|
моделирования. В |
книге |
|||||
рассматривается |
студенческая |
версия |
системыGPSS World, |
||||||||
которую можно бесплатно скачать с сайта фирмыMinuteman |
|||||||||||
Software |
по |
адресу: |
www.minutemansoftware/download. |
||||||||
Cтуденческая версия системы GPSS World так же эффективна, |
|||||||||||
как |
и |
|
коммерческая, и |
на |
|
сегодняшних |
персональных |
||||
компьютерах выполняется в тысячу раз быстрее, чем работала |
|||||||||||
оригинальная |
|
версия GPSS/PC |
в |
1984 |
году. |
В |
процессе |
||||
инсталляции |
|
система GPSSW по |
умолчанию устанавливается в |
||||||||
каталог C:\Program Files\Minuteman Software\GPSS World Student |
|||||||||||
Version. |
Для |
|
системы GPSSW |
требуется |
IBM-совместимый |
||||||
компьютер |
|
с |
ОСWindows |
95, |
98 |
и выше. Целесообразно |
|||||
использовать процессоры типаPentium II и выше. Желательно |
|||||||||||
иметь мышь. Требуется, по меньшей мере, 32 Мбайт оперативной |
|||||||||||
памяти |
и 10 Мбайт свободного пространства на |
жестком диске |
|||||||||
(винчестере). |
Запуск |
системы GPSSW |
можно |
выполнить |
|||||||
несколькими |
|
способами. |
Первый |
|
способ: |
дважды |
щелкните |
||||
мышью по файлу GPSSW.exe в каталоге, в котором была |
|||||||||||
установлена |
|
система. Появится |
главное |
окно |
системыGPSS |
||||||
World. Второй способ: |
|
|
|
|
|
|
|
||||
•щелкните мышью по кнопке Пуск ОС Windows. Появится всплывающее меню;
•щелкните по пункту Программы во всплывающем меню. Появится следующее всплывающее меню;
•щелкните по пунктуGPSS World Student Version.
Откроется главное окно системы GPSSW (рис. 2).
В первой строке(строке заголовка) главного окна указано название окна – GPSS World. Во второй строке располагаются пункты главного меню, в третьей – стандартная панель инструментов. Нижняя строка главного окна– строка состояния
системы, в которой дается краткое описание выделенной команды. Система GPSSW имеет иерархическую систему меню,
7
состоящую |
из |
главного , менюсистем |
выпадающих |
и |
||||
всплывающих меню (подменю). Главное меню служит для вызова |
|
|||||||
выпадающих меню. Набор пунктов главного меню располагается |
|
|||||||
во второй строке главного окна системы GPSS. Выпадающее |
|
|||||||
меню |
предназначено |
для |
вызова |
всплывающего, |
меню |
|||
диалогового окна или соответствующей команды. Выпадающее |
|
|||||||
меню располагается |
под соответствующим |
пунктом |
главного |
|||||
меню. |
Всплывающее |
|
меню |
позволяет |
вызывать |
другое |
||
всплывающее меню, диалоговое окно или соответствующую |
||||||||
команду. |
Всплывающее |
меню |
располагается |
справа |
от |
|||
выбранного пункта выпадающего меню. Для выбора пункта |
|
|||||||
всплывающего |
меню |
достаточно |
щелкнуть по |
нему |
левой |
|||
кнопкой мыши. |
|
|
|
|
|
|
|
|
|
|
Рис. 2. Главное окно системы GPSS World |
|
|
||
Главное |
меню обеспечивает доступ ко всем средствам |
|||||
системы GPSSW. По своей сути главное меню является основным |
|
|||||
управляющим центром этой системы. Роль дополнительного |
|
|||||
центра |
играет |
стандартная панель инструментов, ключающая |
|
|||
ряд |
кнопок, |
за |
которыми |
закреплены |
наиболее |
часто |
используемые команды. Система меню GPSSW – это хорошо |
|
|||||
скоординированная совокупность выпадающих и всплывающих |
|
|||||
меню. После щелчка мышью по любому пункту главного меню |
|
|||||
или |
нажатия |
|
на«горячие» клавиши (HotKeys) |
на экране |
|
|
8
появляется соответствующее выпадающее меню. «Горячая» |
|
|||||
клавиша |
выделяется |
в |
названии |
пункта |
меню |
пу |
подчеркивания одной буквы. Чтобы с помощью клавиатуры |
|
|||||
получить быстрый доступ к пункту главного меню, а значит и к |
|
|||||
нужному выпадающему меню, необходимо нажать на клавишу |
|
|||||
Alt и, удерживая ее, на ту алфавитную клавишу, название которой |
|
|||||
подчеркнуто. Например, для быстрого обращения к пунктуView |
|
|||||
(Вид) достаточно нажать |
комбинацию клавишAlt+V. |
Вызов |
|
|||
соседнего выпадающего меню осуществляется с помощью клавиши со стрелкой влево или вправо. Выделить любой пункт выпадающего или всплывающего меню(подменю) можно путем наведения на него указателя мыши или с помощью клавиш перемещения со стрелкой вниз либо вверх. Для выполнения выделенного пункта меню существует несколько способов:
•нажать на клавишу Enter;
•нажать на «горячую» клавишу, название которой подчеркнуто;
•щелкнуть мышью по выделенному пункту.
Многие |
пункты |
главного |
меню |
заблокированы |
и |
|||
обесцвечены серым тоном до тех пор, пока вы не откроете и не |
|
|||||||
создадите соответствующие объекты системыGPSSW. Чтобы |
|
|||||||
закрыть выпадающее или всплывающее меню, достаточно нажать |
|
|||||||
на клавишу Esc или щелкнуть мышью по полю окна вне меню. |
|
|||||||
Выпадающее меню – это меню, появляющееся после щелчка по |
|
|||||||
любому пункту главного меню. Оно, в свою очередь, состоит из |
|
|||||||
пунктов |
подменю, |
или |
команд. Пункт |
меню, после |
названия |
|
||
которого |
стоит |
многоточие, – диалоговая команда, |
и при |
ее |
|
|||
выборе появляется диалоговое окно. Если в правой части пункта |
|
|||||||
имеется треугольная стрелка, то при выборе такого пункта |
|
|||||||
открывается подменю (всплывающее меню). В том случае если |
|
|||||||
яркость |
пункта |
|
понижена, этот пункт в данный момент не |
|
||||
доступен для использования. Флажок (галочка), предшествующий |
|
|||||||
пункту или появляющийся при его |
выборе, свидетельствует |
о |
|
|||||
том, что пункт может находиться во включенном или вы |
|
|
||||||
ключенном состоянии: он считается включенным при наличии |
|
|||||||
флажка |
слева |
и |
выключенным– при |
отсутствии. Справа |
от |
|
||
названия пункта меню часто указываются клавиши-акселераторы
9
(shortcut keys, acceleration keys), предназначенные |
для |
оперативного доступа к этому пункту или команде. Далее |
|
рассмотрим выпадающие меню для каждого пункта |
главного |
меню. |
|
3. Основные правила языка GPSS
|
|
(ПК-5) |
|
|
|
|
|
Для |
описания имитационной |
модели |
на |
языкеGPSS |
|||
полезно представить ее в виде схемы, на которой отображаются |
|||||||
элементы |
СМО – |
устройства, |
накопители, узлы |
и источники. |
|||
Описание |
на |
языкиGPSS |
есть |
совокупность |
операторов, |
||
характеризующих |
процессы |
обработки |
. заявокИмеются |
||||
операторы и для отображения возникновения заявок, задержки их |
|||||||
в ОА, занятия памяти, выхода из СМО, изменения параметров |
|||||||
заявки. |
|
|
|
|
|
|
|
Каждый транзакт, присутствующий в модели, может иметь |
|||||||
до 12 параметров. Существуют |
операторы, с помощью |
которых |
|||||
можно изменять значения любых параметровтранзакта, и |
|||||||
операторы, характер исполнения которых зависит от значений |
|||||||
того или иного параметра обслуживаемого транзакта. |
|
||||||
Пути |
продвижения |
заявок |
между |
ОА |
отображаются |
||
последовательностью |
операторов в |
описании |
модели на языке |
GPSS специальными |
операторами |
передачи |
управления. Для |
моделирования используется событийный метод. Соблюдение |
|||
правильной временной последовательности имитации событий в |
|||
СМО обеспечивается интерпретатором GPSS – программной |
|||
системой, |
реализующей |
алгоритмы |
имитационного |
моделирования. |
|
|
|
3.1. Структура операторов GPSS
Программа на языке GPSS записывается в соответствии со следующими правилами. В записи оператора выделяют три части: метку, название, поле переменных.
10
