Смекни!
smekni.com

Моделювання роботи регульованої ділянки (стр. 2 из 3)

- динамічні;

- операційні;

- апаратні;

- статистичні;

- обчислювальні;

- запам'ятовуючі;

- що групують.

Динамічні об'єкти, що відповідають заявкам у системах масового обслуговування, називаються в GPSS/PC транзактами. Вони "створюються" і "знищуються" так, як це необхідно по логіці моделі в процесі моделювання. З кожним транзактом може бути зв'язане довільне число параметрів, що несуть у собі необхідну інформацію про цьому транзакті. Крім того, транзакти можуть мати різні пріоритети.

Операційні об'єкти GPSS/PC, називані блоками, відповідають операторам-блокам вихідної програми. Вони, як уже говорилося, формують логіку моделі, даючи транзактам указівки: куди йти і що робити далі. Модель системи на GPSS/PC можна представити сукупністю блоків, об'єднаних відповідно до логіки роботи реальної системи в так називану блок-схему. Блок-схема моделі може бути зображена графічно, наочно показуючи взаємодію блоків у процесі моделювання.

Апаратні об'єкти GPSS/PC - це абстрактні елементи, на які може бути розчленоване (декомпозировано) устаткування реальної системи. ДО них відносяться одноканальні і багатоканальні пристрої і логічні перемикачі. Многоканальное пристрій іноді називають пам'яттю.

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

Статистичні об'єкти GPSS/PC служать для збору й обробки статистичних даних про функціонування моделі. ДО них відносяться черги і таблиці . Кожна черга забезпечує збір і обробку даних про транзактах, затриманих у якій-небудь крапці моделі, наприклад перед одноканальним пристроєм. Таблиці використовуються для одержання вибірковихрозподілів деяких випадкових величин, наприклад часу перебування транзакта в моделі.

ДО обчислювальних об'єктів GPSS/PC відносяться перемінні (арифметичні і булевские) і функції. Вони використовуються для обчислення деяких величин, заданих арифметичними чи логічними вираженнями або табличними залежностями.

Запам'ятовуючі об'єкти GPSS/PC забезпечують збереження в пам'яті ПК окремих величин, використовуваних у моделі, а також масивів таких величин. ДО них відносяться так називані величини, що зберігаються, і матриці величин, що зберігаються.

ДО об'єктів класу, що групує, відносяться списки користувача і групи. Списки користувача використовуються для організації черг із дисциплінами, відмінними від дисципліни "раніш прийшов - раніш обслугований". Групи в даному виданні розглядатися не будуть.

Кожному об'єкту того чи іншого класу відповідають числові атрибути, що описують його стан у даний момент модельного часу. Крім того, мається ряд так званих системних атрибутів, що відносяться не до окремих об'єктів, а до моделі в цілому. Значення атрибутів всіх об'єктів моделі по закінченні моделювання

Кожен об'єкт GPSS/PC має ім'я і номер. Імена об'єктам даються в різних операторах вихідної програми, а відповідні їм номера транслятор привласнює автоматично. Ім'я об'єкта являє собою послідовність букв, що починається з букви, латинського алфавіту, цифр і символу "підкреслення".

2.2 Основні правила GPSS/PC

Для опису імітаційної моделі мовою GPSS корисно представити її у вигляді схеми, на якій відображаються елементи СМО - устрою, накопичувачі, вузли й джерела . Опис мовою GPSS є сукупність операторів (блоків), що характеризують процеси обробки заявок. Є оператори й для відображення виникнення заявок, затримки їх в ОА, заняття пам'яті, виходу зі СМО, зміни параметрів заявок (наприклад, пріоритетів), висновку на печатку накопиченої інформації, що характеризує завантаження устроїв, заповнювання черг і т.п. Кожен транзакт, присутній у моделі, може мати до 12 параметрів.

Існують оператори, за допомогою яких можна змінювати значення будь-яких параметрів транзактів, і оператори, характер виконання яких залежить від значень того або іншого параметра що обслуговує транзакту.

Шляхи просування заявок між ОА відображаються послідовністю операторів в описі моделі мовою GPSS спеціальними операторами передачі керування (переходу). Для моделювання використається подійний метод.

Дотримання правильної тимчасової послідовності імітації подій у СМО забезпечується інтерпретатором GPSSPC – програмною системою, що реалізує алгоритми імітаційного моделювання.

2.3 Основні оператори мови GPSS/PC

Для керування прогоном моделі використовуються керуючі оператори GPSS/PC. З одним з них - оператором START. Оператор START (почати) має наступний формат:


START A,B,C,D

Поле A містить константу, що задає початкове значення лічильника завершень. У поле B може бути записане ключове слово NP - ознака придушення формування стандартного звіту по завершенні моделювання. Якщо поле B порожньо, то по закінченні прогону моделі формується звіт зі стандартною статистичною інформацією про всі об'єкти моделі. Поле C не використовується і збережено для сумісності зі старими версіями GPSS. Поле D може містити 1 для включення в звіт списків поточних і майбутніх подій. Якщо поле D порожньо, то видача в звіт умісту цих списків не виробляється.

Оператор SІMULATE (моделювати) установлює межу реального часу, що відводиться на прогін моделі. Якщо прогін не завершиться до витікання цього часу, то він буде перерваний примусово з видачею накопиченої статистики в звіт.

Оператор SІMULATE має єдиний операнд A, що містить граничний час моделювання в хвилинах, що задається константою. Оператор розміщається перед оператором START, початківцем лімітований прогін.

Оператор RMULT (установити значення генераторів) дозволяє перед початком прогону установити початкові значення генераторів випадкових чисел RN, що визначають генерируемые ними послідовності. Поля A-G оператора можуть містити початкові значення генераторів відповідно RN1-RN7, що задаються константами. Початкові значення генераторів, не встановлені операторами RMULT, збігаються з номерами генераторів.

Оператор RESET (скинути) скидає всю статистичну інформацію, накопичену в процесі прогону моделі. При цьому стан апаратних, динамічних і запам'ятовуючих об'єктів, а також генераторів випадкових чисел зберігається, і моделювання може бути відновлене з повторним збором статистики. Оператор не має операндов.

З оператором RESET зв'язане розходження між відносним (СЧА1) і абсолютним (СЧА AC1) модельним часом. Таймер відносного часу C1 вимірює модельний час, що пройшов після останнього скидання статистики оператором RESET, а таймер абсолютного часу AC1 - модельний час, що пройшов після початку першого прогону моделі. Якщо не використовувалося жодного оператора RESET, то значення цих таймерів збігаються. Оператор RESET установлює таймер C1 у нуль і не впливає на таймер AC1.

Оператор RESET використовується звичайно при моделюванні нестаціонарних процесів, коли потрібно зібрати статистику по окремих інтервалах чи стаціонарності виключити вплив перехідного періоду на статистичну інформацію, що збирається.

Перший оператор START починає прогін моделі довжиною 1000 транзактов (перехідний період). Оскільки статистика, накопичена на цьому періоді, не використовується, у поле B оператора зазначена ознака придушення формування звіту NP. Оператор RESET скидає накопичену статистику, не змінюючи стану моделі. Другий оператор START починає основний прогін моделі з формуванням звіту по завершенні прогону.

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

Оператор CLEAR використовується звичайно для організації декількох незалежних прогонів моделі на різних послідовностях випадкових чисел. Перед повторенням прогону можна при необхідності перевизначити окремі об'єкти моделі, наприклад ємності багатоканальних пристроїв.

Оператор END (закінчити) завершує сеанс 0роботи з GPSS/PC і повертає керування в операційну систему. Оператор не має операндов.

Як правило, що керують оператори не включаються у вихідну програму, тобто не мають номерів рядків, а вводяться користувачем безпосередньо з клавіатури ПК.

2.4 Опис програми на GPSS/PC

Програма мовою GPSS - це послідовність стандартних об'єктів, що відносяться до одному з двох типів: блоки й оператори. Перші утворять основу (блок-схему) GPSS-моделі, а оператори вводяться в модель у міру необхідності. Склад блоків і операторів у значній мірі визначається об'єктами мови, обраними для відображення елементів реальної системи.

2.4.1 Уведення позначень для обраних об'єктів мови

Вибір позначень об'єктів GPSS даний у табл. 2.1

Модель буде включати один основний сегмент (по числу вхідних потоків) і одного допоміжний для таймера. Вся інша інформація зведена в таблицю (табл. 2.1).

Таблиця 2.1 - Таблиця визначень

Елементи реальної системи Об'єкт GPSS Позначення
пари агрегатів транзакт
первинне регулювання пристрій PERV
вторинне регулювання пристрій VTOR
повне регулювання пристрій POLN
Нагромаджувач черга NAKOPITEL1NAKOPITEL2

2.4.2 Зіставлення кожному блоку визначеної операції