Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Моделювання Систем_метод до л_р 2008.doc
Скачиваний:
10
Добавлен:
20.08.2019
Размер:
784.38 Кб
Скачать

1.2.2 Керування тривалістю моделювання

Розглянемо два приклади, в яких блоки GENERATE, TERMINATE та START використовуються для керування тривалістю моделювання.

Мітка

Операція

Операнди

Мітка

Операція

Операнди

GENERATE

11

MAN

GENERATE

10

.......

.....

.......

......

Програма

.....

Програма

......

.......

.......

......

.......

TEMINATE

......

TERMINATE

1

GENERATE

105

START

200

FIN

TERMINATE

1

START

1

а) б)

Рис.1.1 Приклади GPSS-програм

Принцип керування тривалістю моделювання по заданій кількості транзактів приведений на рисунку 1.1а. Оператор GENERATE 11 протягом всього часу моделювання виконує входження транзактів до моделі через кожні 11 одиниць модельного часу. Відповідно до команди START 200, моделювання припиниться відразу після того, як 200-й транзакт покине модель.

Приклад на рисунку 1.1б ілюструє принцип керування тривалістю моделювання за заданим часом моделювання. Така модель складається з двох модулів, які функціонують паралельно та незалежно один від одного. Перший модуль включає основні блоки моделі, а другий використовується для керування тривалістю моделювання. Необхідно звернути увагу, що операнд A заповнений тільки у другого блоку TERMINATE та дорівнює 1. Таким чином, перший же транзакт, який вийде з блоку GENERATE 105 у момент часу t = 105, відразу попаде в блок TERMINATE 1 з ім'ям FIN і спричинить зменшення лічильника завершення подій до 0, після чого моделювання припиниться. Легко обчислити, що до моменту завершення моделювання блок GENERATE 10 з ім'ям MAN уведе до моделі 10 транзактів.

1.2.3 Імітація обслуговуючих пристроїв в gpss

Одноканальні обслуговуючі пристрої СМО моделюються блоками SEIZE, ADVANCE та RELEASE. Приведена комбінація блоків реалізує наступні властивості пристрою: пристрій у будь-який момент часу може обслуговувати лише один транзакт; пристрій здійснює затримку транзакта, який надійшов, на час, необхідний на його обслуговування.

Коли транзакт надходить до блоку SEIZE, то цей блок забороняє транзактові переходити до блоку ADVANCE (або будь-якого наступного за SEIZE блоку), якщо пристрій, вказаний у блоці SEIZE, у цей момент зайнятий обслуговуванням іншого транзакта. Якщо пристрій звільнюється, то блок SEIZE не чинить перепон у намаганні транзакта зайняти пристрій. Блоки SEIZE та RELEASE мають однакові за значенням операнди, що задають ім'я пристрою, символами або цифрами. Залишати ім’я пристрою не вказаним не можна. Правила найменування функцій і змінних в GPSS залишаються дійсними і для пристроїв.

Надходження транзакту до блоку RELEASE спричиняє звільнення того пристрою, ім’я якого вказане в якості операнда блока RELEASE. Тобто стан пристрою змінюється з "зайнятий" на "вільний". Для затримки транзактів у пристрої на обслуговування використовується блок ADVANCE, який має операнди A та B, такі ж за змістом, як і операнди A та B блоку GENERATE. Наступний приклад показує, яка послідовність блоків здатна моделювати простий одно канальний пристрій з ім'ям COMP:

SEIZE COMP

ADVANCE A,B

RELEASE COMP

Кожен пристрій має чотири СЧА (стандартні числові атрибути), що зберігають статистичні дані з функціонування цього пристрою:

Fj (або F$ім'я) – стан j-го пристрою. Fj = 1, якщо пристрій зайнятий, і Fj = 0, якщо пристрій вільний;

FRj (або FR$ім'я) – коефіцієнт використання j-го пристрою;

FCj (або FC$ім'я) – загальна кількість надходжень транзактів до даного пристрою протягом моделювання;

FTj (або FТ$ім'я) – середній час використання пристрою одним транзактом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]