Практическое занятие № 1. Общие сведения об имитационном моделировании. Система имитационного моделирования GPSS. Интерфейс

По курсу

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

Для студентов дневного отделения

направление 38.03.05 «Бизнес-информатика»

Квалификация бакалавр

(III курс)

Санкт-Петербург

Рекомендовано научно-методическим советом университета

Методические указания к выполнению практических работ по курсу «Имитационное моделирование» для студентов дневного отделения направления 38.03.05 ”Бизнес-информатика” (III курс).

Составители: к.т.н., профессор Е.Е. Иванов

К.т.н., доцент Д.А. Шустов

Рецензент: к.э.н., доцент М.И. Барабанова

ОБЩИЕ СВЕДЕНИЯ

Общий вид задачи имитационного моделирования.

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

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

1. Разработка концептуальной модели.

2. Подготовка исходных данных.

3. Выбор средств моделирования.

4. Разработка программной модели.

5. Проверка адекватности и корректировка модели.

6. Планирование машинных экспериментов.

7. Моделирование ("прогоны").

8. Анализ результатов моделирования.

Для одного и того же объекта можно составить множество моделей. Они будут отличаться степенью детализации и учета тех или иных особенностей режимов функционирования объекта. Поэтому все этапы имитационного моделирования пронизаны заранее сформулированной целью исследования.

Вариант задачи имитационного моделирования.

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

Рис. 1-1. Одноканальная система массового обслуживания.

"Клиенты" приходят к такому "обслуживающему прибору" в случайные моменты времени, ждут своей очереди (при ее наличии), их обслуживают по дисциплине FIFO (First In First Out) -первым пришел - первым обслужен. На рисунке цепочка кружочков - очередь заявок ожидающих обслуживания, квадрат - обслуживающий прибор, кружок внутри квадрата - заявка, находящаяся на обслуживании. Система, состоящая из обслуживающего прибора, заявки, находящейся на обслуживании, и ожидающих обслуживания заявок, называется системой массового обслуживания (СМО).

Интервал времени между последовательными моментами прибытия заявок в систему является случайной величиной. Время выполнения обслуживания также является случайной величиной. Предметом исследования являются распределения системных величин, зависящих от указанных. Основными системными величинами являются следующие:

· число заявок, прибывших на обслуживание за заданный промежуток времени;

· число заявок, которые поступили на обслуживание сразу же по прибытии;

· среднее время пребывания заявок в очереди;

· средняя длина очереди;

· максимальная длина очереди;

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

Системные величины представляют особый интерес при изучении в условиях присутствия некоторой стоимостной функции. Например, если при появлении потенциального клиента оказывается слишком много ожидающих, клиент может уйти. В этом случае обслуживающий терпит убыток.

Практическое занятие № 1. Общие сведения об имитационном моделировании. Система имитационного моделирования GPSS. Интерфейс.

При выполнении практических работ будет использоваться инструментальная программная система GPSS World – система имитационного моделирования общего назначения. Эти инструментальные средства разработаны для работы в среде Windows 95/98/2000/XP/7. Будем в дальнейшем для простоты обозначать GPSS World просто GPSS. После запуска GPSS на экран монитора выводится основное окно (рис 1-2).

Рисунок 1-2. Основное окно.

Как и все окна среды Windows оно содержит заголовок окна, основное полосковое меню с опциями File, Edit, Search, View, Command, Window, Help. Ниже расположена панель инструментов с кнопками для выполнения наиболее употребимых операций. Эта панель может быть отключена или включена щелчком мыши по пунктам меню Edit/Toolbar. Нижняя строка окна является строкой состояния и служит для подсказки пользователю о состоянии и режимах работы GPSS.

Для ознакомления с основными приемами работы средствами GPSS необходимо использовать простейшую модель – пример, представленный в разделе «Общие сведения». Для этого необходимо щелкнуть пункт File/Open и в появившемся окне выбрать файл S1.gps и щелкнуть кнопку «Открыть» (рисунки 1-3 и 1-4).

Рисунок 1-3.

Рисунок 1-4.

В основном окне GPSS появится текст модели (рисунок 1-5).

Рисунок 1-5.

Не вдаваясь в подробности, рассмотрим структуру текста модели. При наборе текста различают следующие поля (части) строки слева направо: поле метки, поле оператора (еще оператор называют блоком), поле операндов и поле комментария. Длина строки не более 250 символов. Если в первой позиции строки стоит символ «*» или «;», то данная строка является строкой комментария, т.е. невыполняемой при моделировании строкой. Если необходимо комментировать оператор, то поле комментария должно начинаться с символа «;». Переход из одного поля в другое проще всего осуществлять нажатием клавиши «TAB». При наборе текста модели можно использовать как строчные, так и прописные буквы (регистр устанавливают в зависимости от желания выделить ту или иную часть текста).

Если необходимо вставить строку, то следует щелкнуть мышью в начале строки, после которой необходимо вставить новую. Затем выбрать пункт меню Edit/Insert Line (рисунок 1-6).

Рисунок 1-6.

В появившейся пустой строке можно ввести необходимый оператор, например, оператор BUFFER (рисунок 1-7).

Рисунок 1-7.

Для удаления строки необходимо щелкнуть мышью в любом ее месте и выбрать пункт меню Edit/Delete Line (Рисунок 1-8).

Рисунок 1-8.

Большинство операторов можно включать в текст модели, используя специальную таблицу «Insert GPSS Block into Block Object», которую можно вызвать, используя меню Edit/Insert GPSS Blocks…(Рисунок 1-9).

Рисунок 1-9.

На экран выводится окно-таблица «Insert GPSS Block into Block Object» (Рисунок 1-10).

Рисунок 1-10.

Выберем BUFFER. Выводится окно этого оператора (Рисунок 1-11). После щелчка по кнопке «OK» в соответствующем месте вставляется строка с оператором BUFFER (Рисунок 1-12).

Рисунок 1-11.

Рисунок 1-12.

Удалим строку, приведя модель к исходному виду (Рисунок 1-5).

Для запуска модели ее необходимо предварительно транслировать. Трансляция осуществляется выбором пункта меню Command/Create Simulation (Рисунок 1-13).

Рисунок 1-13.

На экран выводится окно «JOURNAL» (Рисунок 1-14).

Рисунок 1-14.

Если в тексте модели отсутствуют синтаксические ошибки, то в окне появляются только две строки: системные дата и время начала трансляции и готовности системы к процессу моделирования. При наличии синтаксических ошибок будут выведены номера строк с ошибками, с указанием вида ошибки.

Процесс моделирования в динамике можно наблюдать, используя окно блоков «BLOCK ENTITIES». Это окно можно вывести на экран, используя пункты меню Window/Simulation Window/Blocks Window (Рисунок 1-15).

Рисунок 1-15.

На рисунке 1-16 представлено окно «BLOCK ENTITIES» с исходным состоянием модели до начала моделирования.

Рисунок 1-16.

Для запуска модели необходимо выбрать пункт меню Command/START (Рисунок 1-17). Появится окно «Start Command». В поле этого окна по умолчанию содержится команда START 1 (Рисунок 1-18).

Рисунок 1-17.

Рисунок 1-18.

Заменим команду START 1 на команду START 100 и щелкнем кнопку «OK». Начнется процесс моделирования, который можно наблюдать по изменениям содержимого окна «BLOCK ENTITIES». Вид этого окна по окончании моделирования представлен на рисунке 1-19. Это окно будет расположено ниже окна «REPORT», которое выводится автоматически (Рисунок 1-20). Необходимо обратить внимание, что при использовании окна «BLOCK ENTITIES» моделирование происходит медленно. Отключим (закроем) это окно и вновь выполним моделирование.

Рисунок 1-19.

Рисунок 1-20.

Если просто выполнить команду START 100, то в системе GPSS моделирование будет осуществляться не с исходного состояния модели, а будет продолжено. Что бы привести модель к исходному состоянию необходимо выполнить команду CLEAR (очистить). Однако, предварительно закроем окно «REPORT», ответив «Нет» на запрос о сохранении, и посмотрим содержимое журнала (окна «JOURNAL»), представленное на рисунке 1-21.

Рисунок 1-21.

В журнале приводятся системные дата и время запуска моделирования, окончания моделирования и вывода отчета. Приведение модели в исходное состояние осуществляется через пункты меню Command/CLEAR

Рисунок 1-22.

После этого запустим командой START 100 процесс моделирования. Результат в виде окна «REPORT» появится незамедлительно. Закрыв без сохранения это окно, получим содержимое окна «JOURNAL» (Рисунок 1-23).

Рисунок 1-23.

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

Если есть желание сохранить модель или сохранить ее под другим именем, то необходимо войти в пункт меню File и выбрать необходимую опцию. Все файлы – модели имеют расширение «имя.gps.».

Выполнение работы.

Выйти из системы GPSS. Запустить систему. Выполнить File/New и в открывшемся окне выбрать пункт Model. В появившемся окне набрать текст модели (рис. 1-5). Выполнить все операции рассмотренные выше.

Практическое занятие № 2. Простейшая модель. Реализация в средствами GPSS.

При выполнении практических работ будет использоваться инструментальная программная система GPSS World – система имитационного моделирования общего назначения. Эти инструментальные средства разработаны для работы в среде Windows 95/98/2000/XP/7. Будем в дальнейшем для простоты обозначать GPSS World просто GPSS.

Общие сведения.

В системе GPSS операторы модели- это операторы блоков, команды или PLUS-процедуры. Задача исследователя при реализации модели – создать такую последовательность операторов модели, при которой поведение модели как можно более точно соответствовало поведению реальной системы

В любой модели обслуживания происходит перемещение неких элементов отображающих перемещения в моделируемом объекте. Например, финансовый поток, поток материальных ценностей, поток клиентов и тому подобное. Такие элементы в имитационном моделировании называются транзактами.

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

• транзакт входит в блок задержки транзакта на некоторое определенное время;

• транзакт входит в блок удаления транзакта из модели;

• транзакт "пытается" войти в следующий блок, который "отказывается" принять этот транзакт. Транзакт остается в текущем блоке и продолжает движение после разрешения войти в следующий блок.

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

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

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

Особенности GPSS и его таймера:

• таймер GPSS регистрирует целые значения;

• единицу времени, которая может быть отмечена таймером, определяет пользователь;

• GPSS является интерпретатором для “следующего события” - в данный момент модельного времени таймер продвигается к ближайшему значению времени, на которое запланировано следующее событие;

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

В блок-схеме модели каждый блок занимает вполне определенное место. Глаголы, описывают основные функциональные назначения блоков. Каждый из блоков характеризуется своим собственным глаголом, например, GENERATE (ГЕНЕРИРОВАТЬ), LEAVE (ВЫЙТИ) и т.п. Операнды блоков задают информацию, специфичную для выполняемого действия. Число операндов зависит от типа блока. Операнды некоторых блоков должны быть специфицированы всегда, а другие могут задаваться или не задаваться. Интерпретатор предполагает значения этих операндов заданными по умолчанию.

Наши рекомендации