
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню gpss World
- •Меню File
- •Меню Edit
- •Панель інструментів gpss World
- •Вікно моделі у системі gpss World
- •Інтерактивний перегляд значень виразів
- •Налаштування параметрів моделювання
- •4.1. Основне меню gpss World
- •4.2. Подання моделей у вигляді блок-діаграм
- •4.3. Основні складові системи gpssw
- •4.4. Об'єкти обчислювальної категорії
- •4.4.1. Константи
- •4.4.2. Системні числові атрибути
- •4.4.3. Арифметичні і логічні оператори
- •4.4.4. Бібліотечні математичні функції
- •4.4.5. Змінні користувача
- •4.4.6. Вирази в операторах gpss
- •4.4.7. Зберігаючі комірки
- •4.4.8. Матриці зберігаючих комірок. Оголошення та ініціалізація матриць
- •4.4.9. Арифметичні змінні й арифметичні вирази
- •4.4.10. Булеві змінні
- •4.4.11. Типи функцій
- •5.1. Введення транзактів у модель і вилучення їх із неї
- •5.2. Блоки для зміни значень параметрів транзактів
- •5.3. Блоки апаратної категорії зайняття та звільнення одноканальних пристроїв
- •5.4. Блоки перевірки стану та передавання керування в одноканальних пристроях
- •5.5. Блоки статистичної категорії
- •5.6. Блоки для зміни послідовності руху транзактів у моделі
- •5.7. Блоки апаратної категорії для переривань одноканальних пристроїв
- •5.8. Блоки апаратної категорії для переведення одноканальних пристроїв у стан недоступності
- •5.9. Створення і застосування списків користувача
- •Основні етапи моделювання у системі gpssw
- •Команди gpss World
- •Інтерактивні можливості gpss World
- •Відлагодження моделей у gpss World
- •Блоки зайняття та звільнення багатоканальних пристроїв
- •Блоки апаратної категорії для переведення багатоканальних пристроїв у стан недоступності та відновлення доступності
- •Блоки перевірки стану багатоканальних пристрів
- •Моделювання перемикачів
- •Основні елементи мови
- •Побудова виразів
- •Plus-оператори та їх призначення
- •Вбудована бібліотека процедур
- •Генератори випадкових чисел
- •Реалізація методу Ньютона для розв’язування нелінійних рівнянь за допомогою мови Plus
- •Налагодження Plus-процедур
- •Команда integrate і блок integration для моделювання неперервних систем
- •Використання plus-процедур для моделювання неперервних систем
- •Використання функцій в імітаційних моделях
- •Генерування випадкових чисел для дискретних рівномірних розподілів
- •Генерування випадкових чисел для дискретних нерівномірних розподілів
- •Генерування випадкових чисел для неперервного рівномірного розподілу
- •Генерування випадкових чисел для неперервних нерівномірних розподілів
- •Функції типу e, l і м
- •9.1. Основні відомості з теорії планування експериментів
- •9.1.1. Повний факторний експеримент
- •Оцінювання точності результатів моделювання
- •Дисперсійний аналіз
- •Однофакторний дисперсійний аналіз
- •9.2.2. Двофакторний дисперсійний аналіз
- •9.3. Технологія дисперсійного аналізу у gpss World
- •9.4. Технологія регресійного аналізу у gpss World
- •9.5. Організація експериментів користувача у gpss World
- •Initial Rezult_tf,unspecified ;Ініціалізація матриці результатів
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання одноканальних розімкнутих смо
- •Індивідуальні завдання для моделювання одноканальних замкнутих смо
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання багатоканальних розімкнутих смо
- •Індивідуальні завдання для моделювання багатоканальних замкнутих смо
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи транспортного конвеєра
- •Індивідуальні завдання для моделювання роботи ділянки цеху
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи еом для оброблення завдань з різними пріоритетами
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи вузла комутації повідомлень
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання поширення вірусу на системному диску
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для проведення дисперсійного аналізу для дослідження вагомості впливу змінних користувача на об’єкт моделі
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для розроблення експерименту користувача
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання проведення регресійного аналізу для оптимізації і кількісного прогнозу поведінки системи
- •Контрольні запитання
- •Елементи стандартного звіту
- •Загальна інформація про результати роботи моделі
- •Інформація про імена
- •Інформація про блоки
- •Інформація про об’єкти типу «пристрій»
- •Інформація про об’єкти типу «черга»
- •Інформація про об’єкти типу «багатоканальний пристрій»
- •Інформація про таблиці
- •Інформація про списки користувача
- •Табличні значення критеріїв
- •Значення t-критерію Ст’юдента
Моделювання випадкових подій та дискретних випадкових величин
Отримання за допомогою комп’ютера вибіркових значень випадкових величин з різними законами розподілу є важливою умовою для моделювання систем. Самі випадкові величини моделюють за допомогою перетворення одного або декількох незалежних значень випадкової величини, рівномірно розподіленої в інтервалі (0,1). Отримані значення ri генерують за допомогою програмних генераторів випадкових чисел.
Моделювання незалежних випадкових подій. Змоделюємо настання деякої елементарної події А, ймовірність якої в одному випробуванні дорівнює Р(А) = р. Вважаємо, що умови проведення кожного випробування одинакові і його можна повторити нескінченну кількість разів. Нехай ri – рівномірно розподілені на інтервалі (0,1) величини, визначені генератором випадкових чисел.
Рис.2.1 Моделювання випадкових подій
Подія А наступить тоді коли
,
а якщо
,
то відбудеться подія
.
Дійсно, якщо f(r) – функція
щільності рівномірно розподіленої
випадкової величини r, то
(2.6)
Така модель використовується для опису обслуговування вимог у системах масового обслуговування (СМО), пристрій яких може бути вільним або зайнятим, а також для розгалуження інформацій у двох і більше напрямках.
Моделювання несумісних подій. Нехай
необхідно дослідити настання групи
несумісних подій А1, А2,
..., Ак, з відомими ймовірностями
їх настання Р(А1),
Р(А2),...,Р(Ак).
Зокрема Р(Аі)=рі,
,
р0=0. На відрізку [0,1]
відкладемо значення цих ймовірностей
(рис. 2.2).
Рис.2.2. Моделювання групи несумісних подій
Попадання в інтервал від
до
випадкових чисел ri
означає, що відбулася подія Ai.
Таку процедуру називають визначенням
результату випробовування за жеребом.
Вона ґрунтується на формулі
(2.7)
Така модель використовується для розгалуження потоків інформації у вузлах мережі, вибору одного з багатьох пристроїв в обслуговуванні СМО, у теорії прийняття рішень, вибору альтернатив у комп’ютерних іграх.
Моделювання складних подій, що залежать від двох і більше (наприклад, m) простих сумісних подій, можна здійснювати двома способами. Перший полягає в послідовній перевірці умови (2.6) для m простих подій, що відповідають m випадковим числам. Другий – у перевірці умови (2.7) для визначення одного з можливих наслідків.
Розглянемо сумісні незалежні події, наприклад, А і В, які мають імовірності настання рA і рB. У процесі моделювання можливими наслідками сумісних випробувань будуть чотири події:
Відповідно їхні імовірності дорівнюють:
У такій постановці завдання моделювання зводиться до перевірки умови (2.7).
Моделювання сумісних подій. Моделювання
сумісних залежних подій, наприклад, А
і В, що мають
імовірності настання рА
і рB,
полягає в
наступному. Вважають, що задана одна
з умовних ймовірностей, наприклад,
умовна імовірність настання події В
за умови, що подія А відбулася
Р(В/А). Визначають імовірність
можливих подій
з врахуванням того, що ці події
складають повну групу подій, тобто
.
Тоді отримаємо:
,
,
,
.
Таким чином, задача моделювання зводиться перевірки умови (2.7).
Моделювання випадкової дискретної величини. Розглянемо випадкову дискретну величину Х із заданим законом розподілу (табл. 2.3).
Таблиця 2.3.
Х |
Х1 |
Х2 |
… |
Xn |
P(X = xi) |
p1 |
p2 |
… |
pn |
Випадкова величина приймає n значень
з ймовірностями
,
а функція розподілу дорівнює
. (2.8)
Якщо випадкову величину Х представити
як повну групу подій
то моделювання випадкової дискретної
величини виконується аналогічно
моделюванню групи несумісних подій.
Тоді функцію розподілу можна записати за допомогою співвідношень:
Для моделювання дискретної випадкової величини скористаємося методом оберненої функції [4, 11], суть якого полягає у наступному.
Нехай F(x) – функція розподілу випадкової величини Х, а r – випадкова величина розподілена в інтервалі (0,1). Випадкова величина X отримується розв’язуванням рівняння
, (2.9)
де F-1 – функція обернена до функції F. Тоді алгоритм обчислення випадкової величини Х, яка задана табл. 2.3 має вигляд:
якщо
,
то
,
інакше
якщо
,
то
,
інакше
…
якщо
,
то
,
інакше
.
Приклад. Нехай дискретна дискретна величина Х має закон розподілу, заданий у табл. 2.4.
Таблиця 2.4.
X |
X1 |
X2 |
X3 |
P(X = xi) |
|
|
|
Побудуємо функцію розподілу випадкової величини Х:
Графік функції розподілу має вигляд (рис. 2.3)
Рис. 2.3. Графік функції розподілу F(x).
Побудуємо графік оберненої функції (рис. 2.4)
Рис. 2.4. Графік оберненої функції.
Моделювання випадкової величини Х з геометричним розподілом. Задамо її значення та ймовірності у вигляді табл. 2.5.
Таблиця 2.5.
Значення Х |
0 |
1 |
… |
|
Ймовірність |
|
p (1 –p) |
… |
(1 – p)n p |
Прикладом випадкової величини з таким розподілом може бути загальна кількість випробувань, які необхідно провести до першого успішного випробування.
Для моделювання випадкової величини з геометричним розподілом можна скористатися методом оберненої функції (2.9). Для великих значень n це вимагає значних затрат комп’ютерного часу. Тому для для отримання значень випадкової величини з геометричним розподілом використовуємо формулу:
(2.10)
де
– ціла частину виразу.
Моделювання дискретної випадкової величини з розподілом Бернуллі. Така величина Х приймає тільки два значення: 1 – істина, або 0 – хибність. Такі задачі виникають для моделювання систем з чергами, якщо вихідні потоки і довжини заявок описуються випадковими величиними. Біномінальний розподіл дискретної величини, або розподіл Бернуллі, показує ймовірність настання деякої події за n незалежних повторних випробовувань, у кожному з яких подія настає з ймовірністю p. Ймовірність s успішних подій в n випробовуваннях визначається за формулою
. (2.11)
Функція розподілу ймовірностей має вигляд
(2.12)
Спосіб моделювання випадкової величини з біноміальним розподілом залежить від значення n. Для невеликих значень n випадкова біноміально-розподілена величина визначається як кількість чисел у послідовності {ri} з n чисел, для яких ri<p.
Для великих значень n і малих p генеруємо рівномірно розподілені випадкові числа ri. Алгоритм завершуємо, якщо виконується умова
, (2.13)
де U0 i Uk+1 визначаються формулами:
.
Отже, значення випадкової величини з біноміальним розподілом дорівнює кількості випробовувань n. Завершення проведення випробовувань зумовлюється умовою (2.13).