
- •1.2 Таймер модельного часу
- •1.3 Типи операторiв
- •1.4 Внесення транзактiв до моделi.
- •1.6 Елементи, що вiдображають одноканальнi обслуговуючi пристрої
- •1.8 Збiр статистики при чеканні
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Приклад моделювання одноканальної смо з чергою
- •3 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
- •1 Короткі теоретичні відомості
- •2 Порядок виконання роботи
1 Короткі теоретичні відомості
1.1 Приклад моделювання багатоканальної СМО з відмовами в обслуговуванні
Постановка завдання. У дисплейному класі є 10 комп'ютерів. Студенти приходять в дисплейний клас кожні 15 5 хвилин, але залишаються тільки в тому випадку, якщо є вільний комп'ютер, інакше студенти йдуть. Студент працює за комп'ютером протягом 120 20 хвилин. Розподіл часу приходу і часу роботи студентів – рівномірний. Необхідно змоделювати роботу дисплейного класу протягом місяця (22 восьмигодинних робочих дня).
Метод побудови моделі. У даній системі існує тільки одне обмеження – число комп'ютерів в дисплейному класі. Для його моделювання зручно використовувати багатоканальний пристрій (CLASS), а студентів, що приходять в клас, доцільно моделювати транзактами.
Входячи в модель, транзакты перевіряють наявність вільних місць в багатоканальному пристрої: якщо місця є, то транзакты входять в блок ENTER; якщо ж вільних місць немає, то транзакты повинні бути виведені з моделі. Процес перевірки наявності вільних місць здійснимий за допомогою блоку TRANSFER, що працює в режимі BOTH. Слід звернути увагу на дві обставини:
операнд С блоку TRANSFER ніколи не відмовляє транзакту у вході (тому вихід студентів у випадку, якщо всі комп'ютери зайняті, легко релизуется блоком TERMINATE з ім'ям OUT);
блок ENTER, використовуваний для моделювання входу студента в клас за наявності вільних комп'ютерів і наступний за блоком TRANSFER, можна використовувати без імені. Це викликано тим, що операнд В блоку TRANSFER передає транзакт в наступний блок за умовчанням.
Складання таблиці визначень (табл. 1.1). Одиниця часу 1 хвилина. Необхідно змоделювати роботу дисплейного класу протягом 10560 хвилин. Блок-діаграма GPSS-модели приведена на рис. 1.1.
Таблиця 1.1 – Таблиця визначень для даного прикладу
Елементи GPSS |
Призначення елементів |
Транзакти: |
|
1-й сегмент моделі |
Таймер |
2-й сегмент моделі |
Студенти |
Багатоканальні пристрої: |
|
CLASS |
Дисплейний клас (10 комп'ютерів) |
Рис. 6.1 – Блок – діаграма GPSS-модели
Складання програми моделі проводиться на підставі початкових даних і визначеної раніше послідовності блоків. Програма імітації системи приведена на табл. 1.2.
Таблиця 1.2
1 |
CLASS |
STORAGE |
10 |
; 12 COMPUTERS IN THE CLASS |
2 |
|
GENERATE |
15, 5 |
; INCOME STUDENT |
3 |
|
TRANSFER |
BOTH,, OUT |
; IF ALL MACHINES BUSY – GO OUT |
4 |
|
ENTER |
WORK |
; ENTER TO CLASS |
5 |
|
ADVANCE |
120, 20 |
; WORK |
6 |
|
LEAVE |
WORK |
; END OF WORK, LEAVE THE CLASS |
7 |
OUT |
TERMINATE |
|
; GO OUT |
|
||||
8 |
|
GENERATE |
10560 |
; SET TIMER AT 10560 MINUTES |
9 |
|
ТERMINATE |
1 |
; SHUT OFF THE RUN |
1 |
|
START |
1 |
; START THE RUN |
Вихідні дані програми після виконання програми документування результатів роботи моделі можна проглянути у файлі REPORT.GPS. Для аналізу результатів моделювання приведемо статистичну інформацію про багатоканальний пристрій CLASS:
STORAGE |
CAP. |
MIN. |
MAX. |
ENTRIES |
AVE. C. |
UTIL |
DELAY |
CLASS |
0 |
0 |
10 |
698 |
7,83 |
0,783 |
0 |
Аналіз результатів моделювання. На підставі даних, отриманих в результаті моделювання роботи дисплейного класу, можна зробити наступні виводи:
протягом місяця дисплейний клас відвідали 698 студентів;
середній вміст БКП CLASS рівний 7,83 – це говорить про те, що в середньому було зайняте 8 комп'ютерів з 10 , коефіцієнт завантаження дисплейного класу – 0,783;
кількість необслужених заявок визначимо як різниця між числом транзактов, що вийшли з блоку GENERATE і числом транзактов, що увійшли до блоку ADVANCE (або як різниця між значеннями входжень транзактов в блоки TERMINATE і LEAVE): 703 – 698 = (695 – 690) = 5, тобто 5 студентів покинули клас, через те, що всі комп'ютери були зайняті у момент їх приходу;
вірогідність того, що заявка залишиться необслуженою (відсоток необслужених заявок), визначимо як відношення числа необслужених заявок до загального числа заявок, що поступили: 5 / 703 = 0,007 (0,7 % заявок не були обслужені).