
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню 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-критерію Ст’юдента
Блоки апаратної категорії для переведення багатоканальних пристроїв у стан недоступності та відновлення доступності
Недоступність БКП моделюється блоком SUNAVAIL (символ S означає БКП, UNAVAIL – недоступний). Формат блоку:
SUNAVAIL A
Операнд А – назва або номер БКП. Може бути назвою, додатним цілим числом, виразом у дужках, СЧА, СЧА*параметр.
Наприклад:
SUNAVAIL Kvant
Коли транзакт входить у цей блок, БКП Kvant стає недоступним. Якщо на момент переведення в недоступний стан у БКП перебували транзакти, то обслуговування цих транзактів триватиме доти поки поточний вміст БКП не стане рівним нулю. Транзакти, які намагаються зайняти БКП під час його перебування в недоступному стані, не входять у блок ENTER і потрапляють в список затримування БКП.
БКП перебуває в недоступному стані доти, поки транзакт не ввійде в блок SAVAIL. Формат блоку:
SAVAIL A
Операнд А – назва або номер БКП зі значеннями, аналогічними операнду А в блоці SUNAVAIL.
Використання БКП у процесі моделювання передбачає виведення у файлах стандартної статистики такої інформації:
STORAGE – визначає назву або номер БКП;
CAP. – визначає ємність пам’яті, яка задається STORAGE;
MIN., MAX. – мінімальне і максимальне число одиниць пам’яті, що використовується за період моделювання;
ENTRIES – кількість входів у БКП за період моделювання;
AVL. – визначає стан пам’яті БКП у кінці моделювання (1 – БКП доступний, 0 – БКП недоступний);
AVE.C – середнє значення зайнятої ємності за період моделювання;
UTIL – коефіцієнт використання пам’яті;
RETRY – визначає кількість транзактів, які очікують виконання спеціальних умов залежно від стану БКП;
DELAY – визначає кількість транзактів, які очікують можливості входу у блок ENTER.
Cтатистичні дані про функціонування БКП можна спостерігати у вікні Storages Window.
Розглянемо приклад. Нехай в момент переведення БКП в доступний стан у його списку затримування були транзакти. Тоді їм надається можливість зайняти БКП відповідно до дисципліни “first-fit-with-skip” (перший відповідний із пропусками). Транзакти, яким буде відмовлено в зайнятті БКП, залишаються у списку затримування (рис. 7.1).
Рис. 7.1. Сегмент моделі переведення багатоканального пристрою Buf у недоступний стан
Блок GENERATE першого сегмента генерує в t = 0 п’ять транзактів, які займають БКП Buf ємністю 5, визначеною командою STORAGE. В t = 15 блок GENERATE другого сегмента генерує транзакт, що входить у блок SUNAVAIL і переводить БКП Buf у недоступний стан.
Приведемо результати моделювання розглянутого сегменту імітаційної моделі (рис. 7.2).
Рис. 7.2. Результати моделювання переведення багатоканального пристрою Buf у недоступний стан
У недоступному стані БКП Buf перебував 10 одиниць часу моделювання. В t = 25 блоком SAVAIL була відновлена його доступність. Час обслуговування транзактів дорівнює 20 одиниць. У період недоступності обслуговування трьох транзактів, що перебували в БКП, тривало ще 5 одиниць часу моделювання й завершилося в t = 20. Тобто, обслуговування трьох транзактів закінчилося до того, як пристрій знову став доступним. Всі три обслужені транзакта ввійшли в блок TERMINATE першого сегменту.
Розглянемо приклад, коли обслуговування деяких транзактів не завершується до відновлення доступності (рис. 7.3).
Блок GENERATE першого сегмента генерує п’ять транзактів з інтервалами в 4 одиниці часу моделювання. Перший транзакт надійде в модель в t = 4, займе один канал БКП й обслужиться в t = 14. Другий транзакт займе другий канал БКП в t = 8. Його обслуговування закінчиться в t = 18. Третій транзакт в t = 12 займе третій канал БКП. Його обслуговування закінчиться в t = 22. Четвертий транзакт займе наступний канал БКП в t = 16. Його обслуговування закінчиться в t = 26. П’ятий транзакт в t = 20 займе вільний канал БКП.
Рис. 7.3. Сегмент імітаційної моделі переведення багатоканального пристрою Nak у недоступний стан
В t = 27 блок GENERATE другого сегмента згенерує транзакт, що ввійде в блок SUNAVAIL і БКП стане недоступним. Оброблення п’ятого транзакта триває. В t = 29 БКП знову буде доступним. Оброблення п’ятого транзакта продовжиться й завершиться в t = 30. Результати моделювання (рис. 7.4) такі ж, як і в попередньому прикладі. Тобто недоступність тільки забороняє надходження транзактів у БКП і не впливає на тривалість їх оброблення.