Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

тема GPSS 1 Функциональная структура системы Система моделирования GPSS Generl Purpose Simultion System предназначе

Работа добавлена на сайт samzan.net: 2016-06-20

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 13.5.2024

PAGE  6


Время выхода транзакта

и его удаления из модели

EMBED PBrush  

Лекция 1. Имитационная система GPSS

1. Функциональная структура системы

Система моделирования GPSS (General Purpose Simulation System) предназначена для построения имитационных моделей сложных дискретных систем и ориентирована на построение моделей таких систем как СМО, ВС. Система GPSS относится к моделирующим системам транзактного типа.

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

В GPSS приняты следующие функциональные компоненты моделируемой системы, описываемые комбинациями блоков:

- приборы

- память

- логические ключи

- вспомогательные элементы (например, матрицы)

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

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

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

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

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

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

2. Создание и ввод транзактов в модель

GENERATE A, B, C, D, E, F, G

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

Операнды блока служат для управления характеристиками распределения интервалов. С помощью операндов А и В (неотрицательных целых чисел) задаётся распределение интервалов поступления транзактов.

Операнд А определяет среднее время между поступлением 2х соседних транзактов в блоке GENERATE. Операнд В задаёт половину размаха интервалов времени прибытия. R[A-B, A+B]. А должно быть больше В.

Например:

GENERATE 5, 3

Здесь, интервал времени – случайное число со средним значением, равным 5, и размахом, равным 6, т. е. может принимать целочисленные значения: 2, 3, 4, 5, 6, 7, 8.

Рассмотрим ситуацию, когда очередной транзакт вошел в модель из блока GENERATE в момент модельного времени, равный 15. После того, как он попадет в следующий блок, интерпретатор GPSS определят время прибытия следующего транзакта. Для этого разыгрывается случайное число R[2,8], например 7, и оно прибавляется к 15. Т.о. следующий транзакт появится в модели в момент времени, равный 22.

Когда значение А или В (или оба) не указаны, по умолчанию предполагается нулевое значение.

Например:

GENERATE 10    

Иначе говоря, интервал времени – детерминированное (не случайное) число, равное 10. Это время ввода первого транзакта.

С – этот операнд используется для задания смещения интервалов. Фактически смещение – это время прибытия первого транзакта. Все последующие транзакты возникают в соответствии с распределением интервалов времени, заданным операндами А и В. По умолчанию смещение отсутствует.

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

Операнд E устанавливает уровень приоритета транзактов, входящих в модель из данного блока GENERATE. E=(0127), 0 – самый низкий уровень и задается по умолчанию.

F – определяет количество параметров описывающих некоторый транзакт. По умолчанию их число равно 12, т.е. , Fmax=100.

G – определяет длину параметра транзакта (всегда целочисленные).

 G=F все параметры транзактов имеют длину слова т.е. 4 байта.

G=H все параметры транзактов имеют длину полуслова т.е. 2 байта.

По умолчанию каждому параметру отводится полуслово. Это эквивалентно G=H.

Примеры:

  1.  GENERATE   3, 3, 10, 5 1. А=3, В=3. Поэтому интервалы

времени определяются как случайные числа R[0, 6].

2. С=10. Первый транзакт войдет в модель только через

10 единиц модельного времени.

3. D=5. В модель войдет только первых пять транзактов.

  1.  GENERATE   5,  ,2 1. А=5, В=0 (по умолчанию), С=2. После прихода первого транзакта через 2 единицы модельного времени, все остальные будут проходить через каждые 5 единиц модельного времени. Иначе говоря (2,7,12,17,…и т.д).
  2.  GENERATE   8, 1,  ,  ,4 А=8, В=1, С=0, D= по умолчанию; Е=4. . Приоритет транзактов этого блока равен 4.
  3.  GENERATE   5, 3,  ,  ,  , 3, F  Каждый транзакт будет иметь

три полнословных параметра.

Примеры:

  1.  Запишите блок GENERATE, из которого транзакты выходят с равномерно распределенным интервалами R[5,9] в течение всего времени моделирования. Если время выхода Т3 равно 21, то в какие моменты времени может выйти Т4? Какова вероятность того, что Т4 выйдет в момент времени 30?

GENERATE   7,2

Т4 может выйти в моменты времени 21+[5,9]

Вероятность равна 1/5 (по количеству вариантов)

  1.  Предположим, что модель на GPSS содержит только блоки

GENERATE  3                                           GENERATE 6,  ,  ,  ,7

GENERATE 8, 4, 480,  , 13

Представим также, что к моменту времени 20 из модели ещё не вышел ни один транзакт. Какое число транзактов с уровнем приоритета, равным 0, 7 и 13, находится в модели к моменту времени 20?

0 – 6

7 – 3

13 – 0

  1.  Транзакты должны выходить из блока GENERATE каждые 0.6±0.2 дня. Укажите, какие значения должны принимать операнды А и В в блоке GENERATE, если выбранная единица времени равна: а) 0,1 дня;   б) 1/5 дня;   в) 0,3 ч;   г) 0, 1 ч.

а) 0,6/0,10 = 6±2

б) 0,6/0,20 = 3±1

в) (0,6/0,3)*24 = 48±16

г) (0,6/0,1)*24 = 144±48

3. Параметры и числовые атрибуты транзактов

С каждым транзактом, переходящим из одного блока в другой, связан упорядоченный набор данных (числовых атрибутов) – Tn. Существует две группы атрибутов: программно недоступные, или системные числовые атрибуты; и атрибуты, к которым может обращаться пользователь, или стандартные числовые атрибуты (СЧА). Для обращения к СЧА служит определенное имя.

Рисунок содержит следующие названия числовых атрибутов:

  1.  n – номер рассматриваемого транзакта;
  2.  MARK-TIME – отмеченное значение текущего модельного времени входа транзакта в модель;
  3.  BLOK – номер блока GPSS, в котором в данный момент находится транзакт;
  4.  BDT – время выхода транзакта из блока;
  5.  NBA – номер следующего блока, в который должен направиться транзакт;
  6.  PR – приоритет транзакта;
  7.  MPj – тут j – это номер параметра Pj, где сохраняется рассчитанное транзитное время транзакта;
  8.  M1 – резидентное время транзакта;
  9.  Pj – j–й пользовательский параметр транзакта. Пользователь может использовать эти параметры для хранения каких-либо свойств транзакта.

4. Блоки

Каждый GPSS-блок модели описывается в таком формате:

Поле метки    Поле операции         Поле операндов

Символический адрес  Наименование типа        Аргумент А, Аргумент В,

блока     блока           и т.д.

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

Таблица 1- Примеры правильных и неправильных символических адресов

Правильно

Неправильно

BYPAS

BY25

BLOK1

2AND4

OUT

NO

JOE23

A2B

SNO2M

P

2) Поле операции содержит имя блока GPSS, например GENERATE.

3) В поле операндов указываются значения параметров блока, настраивая его функции. Число операндов каждого блока зависит от типа блока.

Комментарии. Все символы, стоящие в строке справа от символа (;) являются комментарием и не будут просматриваться транслятором.

5. Удаление транзактов из модели

Транзакт, прошедший по модели, должен быть удалён, а память, занимаемая им, – освобождена. Такую операцию производит блок TERMINATE с транзактом, попавшим в него.

TERMINATE А

При каждом удалении транзакта в этом блоке из счетчика завершения событий вычитается значение операнда А. Как только содержание счетчика завершения событий становится равным 0, моделирование завершается. Значение А по умолчанию равно 0. В модели может быть любое количество блоков TERMINATE.

Начальное значение счетчика завершения событий определяется параметром А команды START. Интерпретатор GPSS начинает моделирование, когда встречается команда START.

6. Управление длительностью процесса моделирования

Рассмотрим возможности, предоставляемые системой пользователю для управления длительностью процесса моделирования.

1) По заданному числу транзактов

GENETATE        11

Блоки модели

TERMINATE      1

START                200

После того, как 200-й транзакт покинет модель, моделирование прекратится. Может оказаться, что в модели останется несколько транзактов.

2) По заданному времени моделирования

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

1-я часть. GPSS-модель объекта исследования

GENERATE 8,3

Блоки модели

TERMINATE

2-я часть. «Часы» модельного времени

GENERATE 480

TERMINATE 1

START 1

Во всех блоках TERMINATE, кроме находящегося в «часах», поле операнда A должно оставаться пустым. В команде START операнд A должен быть равен 1.

В процессе моделирования транзакты из основной части модели удаляются, не влияя на длительность моделирования. В момент модельного времени, равный 480, из последнего блока GENERATE появляется первый транзакт. Он сразу же попадет в блок TERMINATE, у которого операнд А=1. Поэтому из счетчика завершения событий вычитается 1 и новое значение счетчика становится равным 0. Интерпретатор прекращает моделирование.

Примеры:

1. Часть модели, состоящая из двух блоков, используется в качестве часов в модели GPSS:

GENERATE 60

TERMINATE 1

START

1.1 Если в качестве операнда А команды START указано число 8, то в какой момент времени завершится моделирование? (Ответ: Т=480)

1.2 Если в этой модели использовать GENERATE 70 и START 8, то в какой момент времени завершится моделирование? (Ответ: Т=560)

1.3 Если START 3, в какой момент времени завершится моделирование? (Ответ: Т=180)

2. Для управления процессом моделирования разработчик использует два двухблочных сегмента модели и команду START со значением операнда А=25. Когда завершится моделирование?

С-1.

GENERATE 25

TERMINATE 2

С-2.

GENERATE 15

TERMINATE 1

START 25

(Ответ: в момент времени, равный 175)

Из сегмента С1 выйдет 7 заявок, из С2 – 11 заявок.




1. тема земельного права как отрасли права
2. Тема 1 Понятие функции и история возникновения финансов
3. Жалпыданжекеге принципі бойынша к~рсетілген ~атынастарды~ иерархиялы~ субординациясын ескере отырып т~.
4. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ФАЗОВОГО РАВНОВЕСИЯ КОМПОНЕНТОВ СМЕСИ
5. Сад на стол
6. Учёт основных средств1
7. Тема- Створення серверів та клієнтів DСОМ План заняття- 1
8. Жди меня К Симонова
9. Йорк где его ждали дела
10. показать актуальность обращения к теме исследования; 2 проанализировать основные научные источники по д.html
11. Обозначение Наименование Ко
12. Вот таким местом скорби и братства нам стало Лычково ~Небольшое село на краю новгородской земли
13. ЛЕКЦИЯ- ОРГАНИЗАЦИЯ МЕДИЦИНСКОЙ ПОМОЩИ СЕЛЬСКОМУ НАСЕЛЕНИЮ План Единство принципов оказания лечеб
14. Тема- Педагогика как наука Подготовил студент ТО13-2 Минишева Анастасия В
15. Мой сын Вини- Пух
16. Совершенствование маркетинговой деятельности ООО
17. Александровский лицей СЛОВАРЬ ОСНОВНЫХ ПОНЯТИЙ ТЕОРИИ ГОСУДАРСТВА И ПРАВА для специальности 0305
18. Джерела і приймачі оптичного випромінюванн
19. Нуклеиновые кислоты природные высокомолекулярные органические соединения обеспечивающие хранение и пе
20. Тема. Мова і стиль ділових паперів.