МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
МОДЕЛЮВАННЯ СИСТЕМ
МЕТОДИЧНІ ВКАЗІВКИ
до виконання лабораторної роботи
“Імітаційне моделювання системи масового обслуговування типу М\М\1 із застосуванням методу зміни системного часу з кроком до наступної події”
для студентів базового напрямку "Комп’ютерні науки"
спеціальності “Інформаційні управляючі системи та технології”
Затверджено
на засіданні кафедри
автоматизовані системи управління
Протокол ( 1-2008/2009
від 2.09.2008 року
Львів - 2008
МОДЕЛЮВАННЯ СИСТЕМ: Методичні вказівки до виконання лабораторної роботи “Імітаційне моделювання системи масового обслуговування типу М\М\1 із застосуванням методу зміни системного часу з кроком до наступної події” для студентів базового напрямку “Комп'ютерні науки” спеціальності “Інформаційні управляючі системи та технології”.
Укл.: О.В. Кузьмін – Львів: Видавництво Національного університету “Львівська політехніка”, 2008 - 12 с.
Укладач: Кузьмін О.В., канд.техн.наук, доц.
Відповідальний за випуск: Шпак З.Я., канд.техн.наук, доц.
Рецензент: Різник В.В., док.техн.наук., проф.
1. Мета
Ознайомлення з методом імітаційного моделювання по подіях із змінним прирістом кроку часової змінної для дослідження систем масового обслуговування (СМО). Об’єм роботи: 4 години.
2. Теоретичні положення
2.1. Механізм системного часу.
Однією з найбільш важливих задач при створенні моделі і виборі мови програмування є визначення механізму регламентації подій і процесів. Поняття регламентації в імітаційному моделюванні включає два етапи або дві функції: просування часу або коректування часової координати стану системи і забезпечення узгодженості різних блоків і подій в системі. Оскільки дії, які виконуються різними блоками залежать від дій і станів інших елементів, вони повинні бути скоординовані у часі або сихронізовані. Таким чином функціонування моделі повинно протікати у штучному часі, забезпечуючи появу подій в належному порядку і з належним часовим інтервалом між ними. Хоча компоненти реальної системи функціонують одночасно, компоненти цифрової імітаційної моделі діють послідовно, оскільки в цифровій ЕОМ в кожен момент часу виконується лише одна команда (принцип дії її послідовний), тобто обробляється лише один компонент системи. Оскільки в різних частинах реальної системи події можуть виникати одночасно, необхідно побудувати деякий механізм задання часу для синхронізації дій компонентів системи на даному часовому інтервалі. Існують два основних методи задання часу – за допомогою фіксованих і змінних інтервалів часу. Їх також називають відповідно методами фіксованого кроку і кроку до наступної події. По методу фіксованого часового кроку відлік системного часу ведеться через попередньо визначенні часові інтервали постійної довжини моделювання протікає у звичайному часі з фіксованим кроком.
При використанні методу змінного кроку або кроку до наступної події, стан системи, яка моделюється, оновлюється з появою кожної суттєвої події незалежно від інтервалів часу між ними (моделювання протікає у часі подій).
Імітаційні моделі також зручно класифікувати по двох основних категоріях:
моделі з неперервною зміною стану;
моделі з дискретною зміною стану;
В перших використовуються механізми фіксованого приросту часових інтервалів. Ними зручно описувати поведінку системи, які представляються неперервними потоками інформації.
Моделі другого виду знаходять застосування тоді, коли дослідника цікавить поведінка окремих елементів в системі. В більшості моделей з дискретною зміною станів використовується метод відліку часу до наступної події.
Розглянемо діаграми, які демонструють способи представлення і управління часом в обох випадках (рис.1). По осі часу відкладена одна і та ж сама послідовність подій ei. Стрілки вказують на точки, в яких відбувається приріст часу на один такт, і момент наступлення чергових подій.
а) змінного кроку
б) фіксованого кроку
Рис. 1. Механізм управління часом.
В моделі, яка використовує принцип кроку до наступної події, час, який імітується при зміні, зсувається вперед точно на момент наступлення самого раннього з наступних подій. При цьому послідовність моментів часу така: S1=e1, S2=e2, S3=e3, S4=e4=e5=S5, S6=e6, де конкретні значення часу в точності дорівнюють величинам: e1, e2,..., які відповідають моментам появи подій. В другій моделі, яка використовує метод фіксованого часового кроку моменти модельного часу будуть послідовно приймати значення: S1'=(t, S2'=2t, S3'=3t, S4'=4t.
Ці моменти часу ніяк не зв'язані з моментами появи подій e1, e2,..., які імітує модель. Модельний час в цьому випадку отримає постійний приріст на попередньо вибрану величину t. У кожному з цих методів є свої переваги.
В моделі, яка використовує метод задання кроку до наступної події, обробка подій виконується послідовно і час імітації кожний раз зміщується вперед на початок наступної події, кожна з яких обслуговується по черзі. В моделі з фіксованим кроком обробка подій відбувається по-іншому, а саме: по групам, пакетам або множинам подій.
Припустимо, що заданий час Sk'. Тоді обробка всіх подій ep, eq, er,.. для яких виконується наступна умова:
Sk'-1<ep,eq,er,..<=Sk' виконується до того, як модульний час отримає приріст до Sk+1. Якщо величина t вибрана неправильно, результати також можуть бути невірними, оскільки всі події будуть з'являтися в точці, яка відповідає верхній межі інтервалу (рис.2).
Рис. 2. Механизм обробки подій з фіксованим прирістом часу при збільшенні величини t у два рази.
Для метода фіксованих інтервалів при тривалості імітації системи з m компонентів на проміжку T одиниць часу потрібно T+m раз визначати необхідність коректування характеристик стану цих компонентів. При середній тривалості події t одинць часу таких коректувань треба виконати Tm/t. Ця кількість коректувань не залежить від способу задання часових інтервалів. При зміні метода задання кроку до наступної події необхідно знайти мінімальну з множини з m значень для кожного з Tm/t коректувань, для чого потрібно провести m-1 порівнянь. Таким чином, порівнюючи величини (Tm/t)(m-1) і Tm можна прийти до висновку, який з методів кращий. Наприклад, при t<m-1 перевагу має метод з фіксованим вибором кроку.
Застосування одного з двох методів залежить від характеру тієї системи, яка моделюється, але метод фіксованих кроків працює краще якщо:
події з'являються регулярно і розподілені у часі відносно рівномірно;
на протязі циклу моделювання T з'являється багато подій, причому математичне сподівання тривалості подій мале;
точна природа суттєвих подій неясна як це буває на початковому етапі імітаційного дослідження.
З іншої сторони методу задання кроку до наступної події вигідніший тим, що:
дозволяє економити машинний час у випадку статистичних систем, в яких суттєві події можуть довгий час не наступати;
не потрібно визначати величину приросту часу (що впливає і на тривалість циклу моделювання і на точність);
може ефективно використовуватись при нерівномірному розподілі подій у часі або при великому значенні математичного сподівання їх тривалостей.
2.2. Реалізація моделювання по подіях.
Для моделювання СМО типу М\М\1 виділемо наступні характерні події:
R- запит ресурса для заявки (канала пристрою Q )
R- призначення ресурса заявці (канала пристрою Q )
R- звільнення ресурса заявкою (канала пристрою Q )
Послідовність планування та обробка подій схематично зображена на рис.3
Рис. 3. Діаграма планування послідовності подій, пов’язаних з обслуговуванням заявок.
Події R- запит ресурса для заявки та R- призначення ресурса заявці можна об’єднати в одну подію R- запит-призначення ресурсу заявці. Механізм синхронізації подій реалізується за допомогою списка подій, представленого на рис. 4.
Рис. 4. Механізм синхронізації подій.
При обробці кожної події планується інша подія згідно діаграми подій (рис.3) і виконується накопичення статистичних даних згідно виразів (2.2.1)-(2.2.7).
Коефіцієнт завантаження канала пристрою Q:
(2.2.1)
де – час обслуговування j-ї заявки,
Т – загальний час моделювання,
n – кількість заявок, які пройшли через обслуговуючий пристрій Q.
Середній час обслуговування пристроєм .
(2.2.2)
де і n мають ті самі значення, що і в виразі (2.2.1).
Середня довжина черги до пристрою .
(2.2.3)
де – поточне значення довжини черги до пристрою Q при поступленні в чергу заявки або звільненні з черги заявки,
- проміжок часу, на протязі якого поточне значення черги не змінюється,
m – кількість змін стану черги на протязі часу моделювання Т.
Максимальна довжина черги .
() (2.2.4)
Середній час очікування обслуговування заявки каналом пристрою Q:
(2.2.5)
де – час очікування j-ї заявки в черзі до пристрою Q,
n – має те ж саме значення, що і в виразі (2.2.1).
Максимальний час очікування заявки у черзі до пристрою Q:
() (2.2.6)
де і n мають ті ж самі значення, що і в виразі (2.2.5).
Середній час перебування заявки в пристрої Q:
(2.2.7)
де , мають ті самі значення, що і у виразах (2.2.2), (2.2.5).
Порядок виконання роботи.
Скласти програму, яка моделює одноканальну СМО з експоненціальним законом розподілу інтервалів часу між моментами поступлення заявок та експоненціальним законом часу обслуговування.
Програма повинна обчислювати усереднені характеристики (2.2.1)-(2.2.7)
Отримати роздрук результатів роботи програми.
Оформити звіт по результатах виконаної роботи.
Зміст звіту.
Мета роботи.
Основні теоретичні положення.
Вихідні дані варіанту індивідуального завдання.
Роздруки отриманих даних.
Текст програми.
Висновок.
Контрольні запитання.
Якими параметрами визначається СМО?
Який потік називається однорідним потоком подій?
Який потік називається неоднорідним потоком подій?
Який потік називається ординарним потоком?
Який потік подій називається потоком з обмеженою післядією?
Дати визначення стаціонарного потоку.
Які існують механізми регламентації подій?
При яких умовах використовується той чи інший механізм регламентації подій?
Як відбувається синхронізація подій, які моделюються?
Варіанти індивідуальних завдань.
№ варіанту
Значення вхідних даних
Початкове значення генератора
X0
Середній проміжок часу між поступленнями заявок
хв.
Середній час обслуговування заявок
хв.
1
45631
10
5
2
68747
11
6
3
79753
12
7
4
64961
13
8
5
56397
14
9
6
69031
15
10
7
93067
16
11
8
67397
17
12
9
30761
18
13
10
97893
19
14
11
67871
20
15
12
78945
21
16
13
68261
22
17
14
96837
23
18
15
39781
24
19
16
74291
25
20
17
83971
26
21
18
37891
27
22
19
91561
28
23
20
97851
29
24
21
23415
30
25
22
24917
31
26
23
19677
32
27
24
57251
33
28
25
56783
34
29
26
47121
35
30
27
91741
36
31
28
96815
37
32
29
19277
38
33
30
17763
39
34
Література
Советов Б.Я., Яковлев С.А. Моделирование систем: Учебник для вузов по спец. “Автоматизированные системи управления”. -М.: Высш. шк., 1985. – 271 c., ил.
Шеннон Р. Имитационное моделирование систем - искусство и наука.-М.:Мир, 1978. – 418 с.: ил.
Кельтон В., Лоу А. Имитационное моделирование. Классика CS. 3-е изд. – СПб.: Питер; Киев: Издательская группа BHV, 2004. - 847 с.: ил.
НАВЧАЛЬНЕ ВИДАННЯ
МОДЕЛЮВАННЯ СИСТЕМ
МЕТОДИЧНІ ВКАЗІВКИ
до виконання лабораторної роботи
“Імітаційне моделювання системи масового обслуговування типу М\М\1 із застосуванням методу зміни системного часу з кроком до наступної події ”
для студентів базового напрямку "Комп’ютерні науки"
спеціальності “Інформаційні управляючі системи та технології”
Укладач: Кузьмін Олександр Васильович
Редактор:
Комп’ютерне верстання: