
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню 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-критерію Ст’юдента
Моделювання нормально-розподілених випадкових величин
Нехай потрібно отримати послідовність випадкових чисел, що мають нормальний розподіл
, (2.22)
де m, σ – математичне сподівання та середньоарифметичне відхилення.
Надалі
випадкові величини, розподілені за
нормальним законом, будемо позначати
х
N(m, σ).
Для моделювання такої випадкової
величини не можна безпосередньо
скористатися методом оберненої функції,
оскільки неможливо аналітично розв’язати
рівняння (2.16), бо інтеграл
не можна виразити через елементарні
функції. Тому для моделювання слід
скористатися методом кусково-лінійної
апроксимації або методом згорток.
Застосування методу кусково-лінійної апроксимації передбачає отримання випадкових величин х N(m, σ) у два етапи. На першому етапі здійснюється методом кусково-лінійної апроксимації генерування нормованої нормально-розподіленої випадкової величини хn (mxn= 0 і σxn= 1).
На другому етапі визначаємо Х за допомогою перетворення
. (2.23)
Щоб одержати на першому етапі хn N(0, 1) побудуємо кусково-лінійну апроксимацію функції розподілу
. (2.24)
Тобто, представимо (2.24) у табульованому вигляді (Fi, xн). Для цього розіб’ємо ординату функції F(xn) на n ділянок.
Використовуючи
методи чисельного інтегрування,
визначаємо таку величину xni,
для якої права частина рівняння (2.24)
дорівнюватиме Fi.
Використавши цю процедуру для всіх Fi,
отримаємо кусково-лінійну апроксимацію
(2.24). Тепер можемо використати метод
оберненої функції. Якщо ri
потрапляє в інтервал (Fi,
Fi-1),
то хn
обчислюємо
як лінійну інтерполяцію між значеннями
оберненої функції у точках
і
.
На другому етапі обчислюємо значення
за формулою (2.23).
Розглянемо застосування методу згорток [4, 12] для моделювання нормально-розподілених випадкових величин. Цей метод базується на центральній граничній теоремі, яка формується таким чином.
Якщо Х1, ..., Хn
– послідовність незалежних випадкових
величин із математичним сподіванням
і дисперсією
,
то у разі необмеженого збільшення
значення n функція розподілу
випадкової величини
наближається до функції розподілу стандартного нормального закону Ф(z) для усіх значень аргументу, тобто
де
,
.
Функція Ф(z) називається функцією Лапласа, для значень якої є детальні таблиці.
Алгоритм отримання значень випадкових
величин
передбачає виконання таких кроків.
Спочатку генеруємо послідовність
випадкових величин
,
рівномірно розподілених в інтервалі
(0,1). Визначаємо суму
.
Величина n = 12
є достатнім наближенням до
нормально-розподіленої стандартної
випадкової величини. Нормальний розподіл
з параметрами
називається стандартним. Перехід від
випадкової величини Xн
N(0,1) до випадкової величини X
N(m,) здійснюється
за допомогою перетворення (2.23).
Моделювання випадкових векторів
У процесі моделювання систем керування доводиться розглядати сумісно декілька випадкових величин Х1, Х2, ..., Хn. Сукупність таких величин називається векторною (багатовимірною) випадковою величиною або випадковим вектором.
Розглянемо моделювання неперервного
випадкового вектора. Якщо усі координати
вектора
є незалежними випадковими величинами,
то за теоремою множення щільності
розподілів спільна функція щільності
має вигляд
(2.25)
де fi – функції щільності розподілів величин
У цьому випадку моделювання випадкового вектора зводиться до моделювання кожної координати Хі окремо.
Моделювання неперервного випадкового вектора з залежними складовими розглянемо на прикладі вектора з координатами Х1, Х2, які описуються функцією щільності f = (Х1, Х2). Тоді алгоритм отримання вектора значень неперервної випадкової величини полягає у реалізації таких кроків:
обчислюємо функцію щільності випадкової величини Х1
(2.26)
визначаємо випадкові числа Х1 відповідно до f1(x1) за будь-яким методом, розглянутим у попередньому параграфі;
вважаючи, що Х = Х1, знаходимо часткову функцію щільності для другої величини Х2. Така функція може бути отримана на основі теореми множення законів розподілу
(2.27)
за допомогою виразу (2.27) для функції щільності можна визначити випадкову величину Х2 будь-яким методом.
Тоді пара чисел (Х1і, Х2і) буде реалізацією неперервного випадкового вектора.
Такий спосіб моделювання двовимірних векторів можна узагальнити і для багатовимірних випадкових векторів. Однак, варто мати на увазі, що обчислення за цим алгоритмом суттєво пов’язане з великими труднощами для n > 2, за виключенням тих рідкісних випадків, коли у явному вигляді можна проінтегрувати функції щільності.
Тому розглянемо інший метод, який дозволяє розв’язати задачу моделювання випадкових векторів, а саме метод розкладання за координатними випадковими величинами.
Нехай багатовимірна випадкова величина
(випадковий вектор) з координатами Хі
(і=
)
задається математичними сподіваннями
mi = M [Xi]
і матрицею кореляційних моментів:
У випадку залежних координат Хі складові випадкового вектора визначаються у процесі моделювання як лінійне перетворення некорельованих розподілених за нормальним законом нормованих випадкових величин {V1, V2, …, Vn} N(0, 1), m = 0, σ = 1 за такими формулами:
(2.28)
Коефіцієнти перетворення послідовно визначають із співвідношень: