
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню 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-критерію Ст’юдента
Контрольні запитання
Що називають випадковим вектором, а що – випадковою функцією?
Які вхідні дані необхідні для моделювання випадкового вектора?
Розкрийте алгоритм моделювання випадкового вектора?
Які вхідні дані необхідні для моделювання випадкової функції?
Розкрийте алгоритм моделювання випадкової функції?
Лабораторна робота 4. Моделювання дискретних процесів
Мета лабораторної роботи – ознайомитись з методами моделювання дискретних марківських систем та ймовірнісних автоматів
Загальні положення
Моделювання дискретних марківських систем. Дискретні системи характеризуються скінченою множиною станів. Такі системи описуються марківськими процесами, а також скінченими та ймовірнісними автоматами. Визначення марківського процесу або процесу без післядії наведено у п. 1.3.2. Для моделювання однорідних марківських випадкових процесів з дискретними станами використовуються:
набір станів S1, S2, …, Sn, у яких може знаходитися випадковий процес;
матриця ймовірностей переходів P = [pij,
] для процесів з дискретним часом, елементи якої задовольняють умові
,
(
);
; (10.1)
початкові ймовірності
,
. (10.2)
Марківський процес називається однорідним, якщо ймовірності не залежать від кроку k переходу системи від стану Si до Sj, тобто Pij(k) = Pij. Для аналізу у таких системах зручно користуватися графом станів, який відображає можливі стани системи (вузли графа) і переходи між ними (дуги графа). Такий граф називається розміченим графом станів.
Якщо відома матриця ймовірностей
переходів (або розміщений граф станів)
і початковий розподіл (у момент часу
t = 0) ймовірностей для всіх
станів Pi(0), (
),
то ймовірності станів Pi(k),
(
)
для будь-якого кроку переходу визначатися
за формулою
, (10.3)
де
– ймовірність переходу системи зі стану
Sj → Si
за k кроків.
Рівняння (10.3) разом з умовою нормування
утворюють систему лінійних алгебраїчних
рівнянь для розрахунку ймовірностей
станів марківського процесу.
Приклад. Система складається з двох пристроїв Y1 та Y2. Кожен з них може знаходитися у двох станах: 0 – включений, 1 – виключений. У певні моменти часу виділені такі стани системи:
-
Si
S0
S1
S2
S3
y1
0
1
0
1
y2
0
0
1
1
Задана матриця ймовірностей переходів
-
S0
S1
S2
S3
S0
0
0.2
0.5
0.3
P =
S1
0.5
0
0.1
0.4
S2
0.5
0
0
0.5
S3
0
0.4
0.6
0
і початкові ймовірності р0(0) = 0.8, р1(0) = 0.2, р2(0) = 0, р3(0) = 0.
Визначимо ймовірності знаходження системи у станах Si (i = 0, 1, 2, 3) у будь-які моменти часу.
Згідно з (10.3) ймовірності станів системи будуть:
на першому кроці (k = 1):
р0(1) = р0(0)р00 + р1(0)р10 + р2(0)р20 + р3(0)р30 = 0,1;
р1(1) = р0(0)р01 + р1(0)р11 + р2(0)р21 + р3(0)р31 = 0,16;
р2(1) = р0(0)р02 + р1(0)р12 + р2(0)р22 + р3(0)р32 = 0,42;
р3(1) = р0(0)р03 + р1(0)р13 + р2(0)р23 + р3(0)р33 = 0,32;
на другому кроці (k = 2):
р0(2) = р0(1)р00 + р1(1)р10 + р2(1)р20 + р3(1)р30 = 0,29;
р1(2) = р0(1)р01 + р1(1)р11 + р2(1)р21 + р3(1)р31 = 0,148;
р2(2) = р0(1)р02 + р1(1)р12 + р2(1)р22 + р3(1)р32 = 0,258;
р3(2) = р0(1)р03 + р1(1)р13 + р2(1)р23 + р3(1)р33 = 0,304.
Аналогічно розраховуються ймовірності станів для інших кроків. Неважко переконатися, що для k = 1, 2, ... виконується умова р0(k) + р1(k) + р2(k) + р3(k) = 1. Значення р0, р1, р2, р3 з врахуванням умови нормування визначаються з рівнянь:
Розв’язуючи таку систему рівнянь, отримаємо значення ймовірностей:
,
,
,
.
Отже, система знаходиться у робочому стані більше 76% часу і протягом 29,1% часу будуть включені обидва пристрої Y1 та Y2. Протягом 23,6% часу система перебуватиме у неробочому стані. В середньому, у включеному стані перебуватиме один пристрій, оскільки р1 + р2 + 2р3 = 1,055.
Суть моделювання марківських процесів зводиться до моделювання повної групи випадкових подій із використанням рівномірно розподілених випадкових чисел ri (0,1). Результат кожного наступного переходу залежить від попереднього стану. Процедура моделювання складається з двох етапів.
На першому етапі згідно з дискретним розподілом, заданим матрицею-рядком початкових ймовірностей Р(0), розігрується початковий стан марківського процесу S0. Якщо виконується умова
,
де
,
,
,
тоді будемо вважати, що на початку моделювання система знаходиться у стані S0 = Si.
На другому етапі поступаємо аналогічно з j-м рядком матриці Р(1). Використовуємо алгоритм моделювання повної групи подій. Отриманий результат дає номер рядка матриці Р(1) для наступного кроку моделювання. Процедура повторюється до здійснення заданої кількості кроків. Результатом моделювання є послідовність станів системи, що пов’язані між собою відповідними переходами із стану в стан.
Моделювання ймовірнісного автомата. Поняття ймовірнісного автомата є узагальненням математичних моделей систем, які функціонують у дискретному часі t із дискретними імовірнісними множинами вхідних Х, вихідних Y сигналів та внутрішніх станів Z. Таким чином, для опису скінченого ймовірнісного автомата з випадковими переходами необхідно знати:
множину станів Z = {z1, z2, …, zn} і дискретний розподіл ймовірностей початкових станів
,
;
множину вхідних сигналів Х = {х1, х2, …, хl} і дискретний розподіл ймовірностей вхідних сигналів
,
;
функцію переходів Н за допомогою сукупності матриць ймовірностей переходів
,
де
– умовні ймовірності того, що
за умови, що
,
,
.
Ймовірнісний автомат із випадковими
переходами функціонує наступним
чином. У початковий момент часу t0
згідно з дискретним розподілом Рі(0)
в автоматі встановлюється деякий
початковий стан z0 = zi.
У момент часу tk, k = 1, 2, …
на вхід автомата поступає вхідний сигнал
,
значення якого формується згідно з
дискретним розподілом Рх.
За значенням xs із матриць
Р(1, xs) вибирають
одну, що відповідає номеру S. За
станом
автомата на попередньому такті tk-1
у стохастичній матриці вибирають єдиний
рядок
.
Відповідно до дискретного розподілу ймовірностей Pz(s,i) автомат у момент часу tk переходить у новий стан . Згідно заданої функції виходів G на виході автомата встановлюється вихідний сигнал
.
Отже, моделювання ймовірнісного автомата з випадковими переходами зводиться до розіграшу повної групи подій згідно з дискретними розподілами Pz(0), Px, Pz(s,i) і алгоритм моделювання містить такі етапи:
моделювання випадкового початкового стану автомата;
моделювання послідовності реалізацій випадкового вхідного сигналу;
моделювання послідовності випадкових переходів автомата;
визначення вихідного сигналу автомата.