Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Объекты языка GPSS

Общая характеристика системы GPSS World

Тема 3. Система моделирования GPSS World

Система GPSS (General Purpose Simulating System=Общецелевая система моделирования) предназначена для разработки и использования имитационных моделей дискретных сложных систем. Она наиболее подходит для моделирования систем массового обслуживания. Впервые созданная Джеффри Гордоном в фирме IBM в начале 1960-х годов, система GPSS является самым популярным в мире инструментом имитации и являет редкий пример долгожительства в мире программного обеспечения. Тем, кто заинтересуется развитием этой системы и использованием ее в России и других странах бывшего СССР, можно рекомендовать сайт www.GPSS.ru, который поддерживается фирмой Элина – Сервис.

Будем рассматривать современную версию языка GPSS и систему GPSS World, разработанную фирмой Minuteman Software. Студенческую версию этой системы можно бесплатно скачать с сайта фирмы Minuteman www.minutemansoftware.com Она имеет стандартный оконный интерфейс и средства для реализации всех этапов имитационного моделирования на языке GPSS:

1) Текстовый редактор и встроенные шаблоны блоков для ввода модели;

2) Интерпретирующий алгоритм для синхронизации работы различных компонентов модели и управления таймером модельного времени;

3) Средства автоматического сбора статистических данных;

4) Средства отладки модели и контроля динамики процесса имитации;

5) Средства визуализации процесса моделирования и представления результатов в виде таблиц и графиков.

 

Выделяют четыре основных категории объектов GPSS (таблица 2).

 

 

Таблица 2. Объекты языка GPSS

Категория объекта Тип объекта Мнемоническое обозначение
Динамическая Транзакт -
Статическая, или оборудование Устройство F
Память S
Ключ L
Статистическая Очередь Q
Таблица T
Операционная Блок -

 

Динамическая категория объектов представлена одним типом – транзактом. Транзакт имитирует единицу исследуемого потока запросов на обслуживание. Например, транзакт может представлять клиента, пришедшего в парикмахерскую или магазин, деталь, подлежащую обработке на станке, автомобиль в модели транспортной системы, задание пользователя в вычислительной системе и т.д. Транзакт во многом аналогичен заявке в системе массового обслуживания (СМО), но это понятие более широкое и сложное. Таким образом, транзакт – это динамический (т.е. движущийся) элемент GPSS-модели. Работа модели заключается в перемещении транзактов от одного операционного блока к другому. Именно транзакт, двигаясь по модели, является инициатором смены состояний моделируемой системы. С каждым транзактом связан ряд параметров. Например, транзакту может быть присвоен приоритет, который определяет порядок обслуживания его в очереди. Транзакты с более высоким приоритетом выбираются на обслуживание в первую очередь. Или, например, если транзакт имитирует собой судно, параметром может быть количество груза, подлежащего разгрузке. Это значение может быть использовано для определения времени разгрузки у причала порта.

К статической категории (оборудованию) относятся устройства, памяти и ключи. Устройства (FACILITY)используются для моделирования ресурса, который в каждый момент времени может быть занят только одним транзактом (одноканальная СМО). Например, кассир, парикмахер или продавец, если он один обслуживает клиентов; центральный процессор в вычислительной системе, кладовщик на складе и т.п. Памяти (STORAGE) представляют оборудование, которое может использоваться несколькими транзактами одновременно (многоканальные СМО). Например, запоминающее устройство вычислительной системы, стоянка автомобилей с ограниченным числом мест, несколько причалов в порту и т.д. Логические ключи (SWITCH) служат для блокировки или изменения маршрута движения транзактов. Они могут быть использованы в модели, например, для изображения светофора или переключателя.

Статистические объекты (очереди и таблицы) предназначены для сбора статистических данных в различных точках модели и представления их в виде стандартных показателей. Очередь (QUEUE) – это объект, предназначенный для сбора статистики по ожидающим обслуживания транзактам (среднее время ожидания, максимальная длина очереди и т.д.). Объект “очередь” не влияет на создание очереди транзактов, а лишь служит для сбора статистики по тем очередям, которые нас интересуют. Таблица (TABLE) используется для сбора статистической информации в виде эмпирических функций распределения случайных величин, получаемых в ходе моделирования.

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

Блоки относятся к категории операционных объектов и задают логику функционирования моделируемого процесса или системы, определяют пути движения транзактов между объектами категории оборудования. В общем случае модель представляет собой несколько отдельных сегментов, каждый из которых состоит из последовательности блоков и определяет путь движения некоторого типа транзактов. Сегмент обычно начинается блоком GENERATE и может заканчиваться блоком TERMINATE. Все события в моделируемой системе происходят в результате входа транзактов в блоки и выполнения блоками своих функций. Основные функции блоков следующие:

- создание (генерация) и уничтожение транзактов;

- задержка транзакта на некоторый интервал времени;

- изменение маршрута движения транзактов;

- изменение числовых атрибутов объектов.

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

Если транзакт сгенерирован в каком-то блоке и начал свое движение, то он перемещается от блока к блоку в своем сегменте. Каждый блок можно рассматривать как некоторую точку, в которой происходит обращение к подпрограмме. В тот момент, когда транзакт входит в блок, соответствующая подпрограмма вызывается на исполнение, и далее транзакт пытается войти в следующий блок. Такое продвижение транзакта продолжается до тех пор, пока не наступит одна из следующих возможных ситуаций:

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

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

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

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

Каждый блок в модели имеет номер, который присваивается ему автоматически, согласно месту его расположения в модели. Кроме того, блок может иметь символическое имя (метку), которое используется для ссылки на этот блок при передаче управления. Блок может иметь до 8 операндов, уточняющих его действие. Для удобства записи обычно операнды обозначаются символами A, B, C, …, H. Если операнды блока в явном виде не заданы, интерпретатор GPSS полагает их значение по умолчанию.

Кроме операторов блоков, разработчик модели может использовать еще два вида операторов: операторы описания объектов и управляющие операторы. Операторы описания позволяют определить переменную, функцию, описать емкость памяти (количество каналов многоканальной СМО), параметры таблицы и пр. Управляющие операторы позволяют задать условия моделирования, такие как продолжительность моделирования, число прогонов модели, порядок и условия сбора статистики. В системе GPSS World управляющие операторы можно как вносить в текст самой модели, так и задавать через командное меню системы.

 

 

<== предыдущая лекция | следующая лекция ==>
Организация продвижения времени в системе GPSS для моделируемого примера | Удаление транзактов из модели
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1388; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.