Организация лабораторного практикума по имитационному моделированию

Автор работы: Пользователь скрыл имя, 13 Декабря 2012 в 12:59, дипломная работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
ВЫБОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ПРОГРАММНОЙ РЕАЛИЗАЦИИ
ИМИТАЦИОННЫХ МОДЕЛЕЙ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ В СРЕДЕ GPSS WORL D . . . . . . . . . . . . . . . . . . . 1 1
ТЕМАТИКА ЛАБОРАТОРНЫХ РАБО Т . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 0
ЗАКЛЮЧЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 4
БИБЛИОГРАФИЧЕСКИЙ СПИСО К . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 6

Файлы: 1 файл

4 курс 1 семестр.docx

— 46.91 Кб (Скачать файл)

моделирования. Но уникальные концепции моделирования и

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

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

системами.

Как показано в работе [3], в России и СНГ для моделирования

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

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

новейшие алгоритмические  разработки. Но большинство из известных

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

практике успешно реализуется  именно на языке GPSS. Например, нам

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

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

быть реализована на языке GPSS. А перечисленные выше недостатки языка

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

использования в создаваемых  имитационных моделях программ, написанных

на других языках. Еще  большая возможность использовать преимущества

GPSS появляется при реализации  концепции комплексной автоматизации

имитационных исследований, объединении в рамках единой

интегрированной программной  системы как можно большего числа  этапов

классического имитационного  исследования [4], [6], [8]. В этом случае с

использованием GPSS создается  модель и реализуются заданные

пользователем эксперименты, а все остальные действия в  процессе

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

существующих или специально разработанных.

Особую роль в процессе нашего выбора сыграло то обстоятельство, что

существует бесплатная студенческая версия системы GPSS World, которую

10

любой студент может использовать в домашних условиях для

самостоятельной работы и  выполнения курсовой работы.

11

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

Для студенов-менеджеров представляет особый интерес имитационное

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

социально-экономические  системы могут быть представлены в виде систем

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

систем массового обслуживания может быть реализовано в среде  системы

имитационного моделирования GPSS World.

Язык GPSS - это язык декларативного типа, построенный по принципу

объектно-ориентированного языка. Основными элементами этого  языка

являются транзакты и  блоки, которые отображают соответственно

динамические и статические  объекты моделируемой системы.

Каждый объект GPSS-модели имеет некоторое число свойств,

названых в GPSS стандартными числовыми атрибутами (СЧА). Часть  СЧА

доступна разработчику модели только для чтения, а на значения других он

может влиять, используя  соответствующие блоки.

Любая GPSS-модель обязательно  должна содержать такие объекты, как

блоки и транзакты. Последовательность блоков GPSS-модели показывает

направления, в которых  перемешаются динамические элементы —

транзакты.

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

макроассемблере или на языке  Си, и содержат набор параметров (операндов)

для обращения к ним. Как  и во всех языках моделирования в GPSS

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

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

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

GPSS-программах реализуется  с помощью движения транзактов  в модельном

времени. Обращение к подпрограммам  блоков происходит через движение

12

транзактов, попадая в  некоторый блок, транзакт инициирует обращение к

подпрограмме, соответствующей  данному блоку.

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

Именно он устанавливает  аналогию между транзактами и  реальными

динамическими элементами моделируемой системы, например, при

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

моделировании автозаправочной  станции естественно транзактами

представить автомобили, а  при моделировании работы Web-сервера  —

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

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

разработчика модели. С  точки зрения программиста транзакт — это

структура данных, которая  содержит такие поля, как имя или  номер

транзакта; время входа  транзакта в модель; текущее модельное  время; номер

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

момент времени начала продвижения; приоритет транзакта; параметры

транзакта: P1, P2, ...

В языке GPSS все транзакты  нумеруются по мере их появления в

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

динамического объекта. Например, если моделируется движение

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

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

габариты и другие.

В начале моделирования в GPSS-модели не существует ни одного

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

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

функционирования моделируемой системы. Пройдя определенную

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

модель. В общем случае в модели одновременно существует несколько

транзактов, но в каждый момент времени движется только один из них.

13

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

в соответствии с логикой  работы модели. В тот момент, когда  транзакт

входит в блок, вызывается соответствующая этому блоку  подпрограмма.

Далее транзакт (в общем  случае) пытается войти в следующий  блок. Его

перемещение продолжается до тех пор, пока не выполнится одно из таких

возможных условий:

· транзакт входит в блок, функцией которого является задержка

транзакта на определенное время;

· транзакт входит в блок, функцией которого является удаление

транзакта из модели;

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

блок, но блок не принимает  этот транзакт. В этом случае транзакт остается в

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

попытки войти в следующий  блок. Когда условия в модели изменятся, одна

из таких попыток может  быть успешной. После этого транзакт продолжит

свое перемещение по модели.

Если выполняется одно из указанных условий, транзакт остается на

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

Аналогами обслуживающих  устройств реальных систем в GPSS

являются объекты типа "ресурсы". К объектам этого  типа относятся

устройства, многоканальные устройства и логические ключи.

Устройство (одноканальное  устройство, прибор) представляет собой

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

транзактом. Интерпретатор  автоматически вычисляет такие  его СЧА, как

общее время занятости  устройства, число транзактов, которые  занимали

устройство, коэффициент  использования устройства, среднее  время

занятости устройства одним  транзактом. Статистическая информация о

работе устройства при  моделировании собирается автоматически.

Если в модели используются объекты типа "устройство", то в файле

14

стандартной статистики будет  представлена следующая информация об

использованных устройствах:

· FACILITY — номер или имя устройства;

· ENTRIES — количество входов;

· UTIL — коэффициент использования устройства;

· AVE. TIME — среднее время пребывания транзакта в устройстве;

· AVAIL — состояние готовности;

· OWNER — номер последнего транзакта, занявшего устройство;

· PEND — количество прерванных в устройстве транзактов;

· INTER — количество прерывающих устройство транзактов;

· RETRY — количество транзактов, ожидающих специальных условий;

· DELAY — количество транзактов, ожидающих занятия устройства.

Многоканальные устройства (МКУ) (несколько работающих

параллельно одинаковых устройств) представляют собой объекты типа

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

несколькими транзактами  одновременно. Пользователь определяет емкость

каждого МКУ, которое используется в модели, а GPSS ведет учет числа

устройств, занятых в каждый момент времени. Для МКУ также

автоматически определяются такие СЧА, как число транзактов, которые

вошли в МКУ; среднее число  каналов, занятых транзактами; среднее  время

нахождения транзакта  в устройстве. Если в модели используются объекты

типа МКУ, то в файле  стандартной статистики об этих объектах будет

представлена такая информация:

· STORAGE — имя или номер МКУ;

· CAP — емкость МКУ, заданную оператором STORAGE;

· REM — количество единиц свободной емкости МКУ в конце периода

моделирования;

· MIN — минимальное количество используемой емкости МКУ за период

15

моделирования;

· MAX — максимальное количество используемой емкости МКУ за

период моделирования;

· ENTRIES — количество входов в МКУ за период моделирования;

· AVL — состояние готовности МКУ в конце периода моделирования: 1

— МКУ готов, 0 — не готов;

· AVE.C — среднее значение занятой емкости за период моделирования;

· UTIL — средний коэффициент использования всех устройств МКУ;

· RETRY — количество транзактов, ожидающих специальных условий,

зависящих от состояния МКУ;

· DELAY — количество транзактов, ожидающих возможности входа в

блок ENTER.

Для реализации задержки транзакта  во времени в GPSS используется

блок ADVANCE (ЗАДЕРЖАТЬ). В переводе с английского языка слово

ADVANCE означает продвигать, а не задерживать. Этот блок  действительно

продвигает ЧАСЫ модельного времени на некоторое значение, но

фактически он осуществляет задержку продвижения транзакта  в течение

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

величиной.

В GPSS возможны следующие  варианты распределения времени

обслуживания:

· детерминированное (постоянное);

· равномерное распределение;

· другие распределения.

Некоторые события в системе  могут заблокировать или изменить

направление движения транзактов. Для моделирования таких ситуаций

введены логические ключи. Транзакт может устанавливать эти ключи  в

положение "Включено" или "Выключено". Через некоторое  время состояние

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

16

двух возможных путей  движения или ожидания момента изменения

состояния ключа. Состояние  ключа может быть изменено любым  транзактом.

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

моделях могут использоваться объекты других типов: очереди, переменные,

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

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

из-за недоступности ресурсов (например, необходимые устройства или МКУ

уже заняты). В этом случае задержанные транзакты становятся в очередь —

еще один тип объектов GPSS.

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

необходимо собирать статистику об очередях, то есть установить

регистраторы очереди. Тогда GPSS будет автоматически собирать статистику

об очередях (длину очереди, среднее время нахождения транзактов в очереди

и тому подобное), вся эта  информация является СЧА и доступна

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

ожидании выдается в следующем  виде:

· QUEUE — номер или имя очереди;

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

· CONT — текущая длина очереди;

· ENTRY — общее количество входов;

· ENTRY(0) — количество "нулевых" входов;

· AVE.CONT — средняя длина очереди;

· AVE.TIME — среднее время пребывания транзактов в очереди;

· AVE.(-0) — среднее время пребывания в очереди без учета "нулевых"

входов;

· RETRY — количество транзактов, ожидающих специальных условий.

Интерпретатором автоматически  поддерживается дисциплина

обслуживания очереди FIFO ("первым пришел — первым обслуживаешься"),

и пользователь может получить стандартную статистическую информацию

17

только об этих очередях. Если у пользователя возникает необходимость

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

для этого используются списки пользователей. Эти списки также  помогают

осуществлять синхронизацию  движения разных транзактов по модели.

Чтобы описать в модели логику сложных процессов, например,

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

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

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

блоки TRANSFER, DISPLACE, TEST, GATE, LOGIC, LOOP.

При построении модели иногда возникает необходимость задать

сложные математические или  логические соотношения между атрибутами

объектов модели. Для этой цели используются переменные. В GPSS

используются три типа переменных: арифметические переменные,

арифметические переменные с "плавающей точкой" и булевы переменные.

Арифметические переменные позволяют вычислять арифметические

Информация о работе Организация лабораторного практикума по имитационному моделированию