
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню 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-критерію Ст’юдента
Інтерактивний перегляд значень виразів
Для перегляду результатів імітації безпосередньо у процесі моделювання використовується вікно Expressions Window. Розглянемо можливість перегляду значень виразів моделювання для вже створеної моделі (рис. 3.15).
Попердньо модель повинна бути відкомпільована. Якщо немає помилок, тоді відкриваємо вікно Expressions Window. Для цього вибираємо Window → Simulation Window (Вікно моделювання) → Expressions Window (Вікно виразів). Відкриються два вікна: Edit Expression Window (Вікно редагування виразу) і EXPRESSIONS (Вирази). Перше вікно буде активізоване і накладене на друге. У відповідні текстові поля вікна Edit Expression Window послідовно вводяться вирази, які необхідно проглянути в динаміці. Допустимо, потрібно проглянути вирази, використовуючи відповідні стандартні числові атрибути, наприклад:
коефіцієнт використання крану FR$KRAN;
максимальну довжину черги машин на розвантаження QM$BAZA;
середню довжину черги машин на розвантаження Q$BAZA.
Для цього в полях Label (Мітка) і Expression (Вираз) послідовно вводяться потрібні вирази. Після введення відповідної назви і виразу активізуємо кнопки View (Перегляд) і Memorize (Запам’ятати). Це потрібно для того, щоб показати значення цих виразів у біжучому процесі моделювання і переглянути їх після завершення процесу моделювання й повторного його запуску. Остаточно вікно Edit Expression Window виглядатиме так, як зображено на рис. 3.21.
Рис.3.21. Вікно Edit Expression Window для моделі KRAN_MASH
Після натискання кнопки ОК відкриється вікно EXPRESSIONS, яке виглядатиме так, як зображено на рис. 3.22.
Рис.3.22. Вікно EXPRESSIONS для моделі KRAN_MASH
Тепер можна перейти до виконання процесу моделювання (Command → START → Start Command → OK). У вікні EXPRESSIONS можна побачити значення заданих виразів, що змінюються. У будь-який момент можна перервати процес моделювання за допомогою кнопки Halt (Зупинити). Натиснувши кнопку Continue (Продовжити), можна продовжити виконання перерваного процесу моделювання. Якщо ж натиснути кнопку Step (Крок) після зупинення процесу моделювання, тоді буде здійснено лиш один крок моделювання системи. В цей час у вікні EXPRESSIONS з’являться відповідні значення виразів (рис.3.23).
Рис.3.23. Вікно EXPRESSIONS для моделі KRAN_MASH після виконання одного кроку моделювання
Варто мати на увазі, що значення коефіцієнта використання, яке видається у вікні EXPRESSIONS, потрібно поділити на 1000. Для переходу між полями у вікні редагування виразів не можна використовувати клавішу ENTER, так як ця дія закриє діалогове вікно. Зручніше користуватися мишкою або клавішею TAB.
Налаштування параметрів моделювання
Для керування процесом моделювання, зміни зовнішнього вигляду повідомлень, змісту вікон і визначення функціональних клавіш використовуються відповідні налаштування параметрів. Такі настанови формують представлення об’єктів у GPSS World. Усі об’єкти успадковують початкові параметри вже створеної вихідної моделі. Тому зміна значень для всіх моделей у проекті може здійснюватися у вихідному об’єкті моделі. Лише текстові об’єкти не містять параметрів системи GPSSW і можуть редагуватися у зовнішніх текстових редакторах. Для введення тих чи інших параметрів вибираємо пункти Edit (Правка) → Settings (Параметри). Відкриється діалогове вікно SETTINGS з п’ятьма вкладками для налаштування параметрів моделювання (рис. 3.24).
Рис.3.24. Діалогове вікно SETTINGS з вкладкою Simulation
Розглянемо встановлення параметрів моделювання для моделі з назвою KRAN_MASH.gps.
Вкладка Simulation (Моделювання) містить декілька значень. Змінюючи їх, можна задавати межі і впливати на поведінку процесу моделювання. Розглянемо поля вкладки Simulation.
В полі Poll Count (Індекс опитування) встановлюється число входів у блоки перед перевіркою будь-якого виду переривання за допомогою команд пункту Command основного меню.
У полі Parameter Block Size (Розмірність блоку параметрів) встановлюється розмірність блоку параметрів. У полі Parameter Block First (Перший блок параметрів) вказується число параметрів в блоці. Поле Max Evaluation Depth (Максимальна величина обчислення) використовується для захисту від циклічних залежностей в PLUS-процедурі. В полі Stack Size (Розмір буфера) вказується розмірність буфера для вкладених PLUS-процедур і бібліотечних процедур.
У полі Integration Tolerance (Загальний доступ) визначається загальна точність інтегрування.
Поле Max Memory Request (Максимальна необхідна пам’ять) визначає максимальну необхідну оперативну пам’ять для роботи з таблицями і матрицями.
Для представлення результатів моделювання (звітів) використовується вкладка Reports, яка зображена на рис.3.25. Статистична інформація виводиться для об’єктів, які використовуються у моделі.
Рис.3.25. Діалогове вікно SETTINGS з відкритою вкладкою Reports
Загалом прапорець Create Standard Reports (Створити стандартний звіт) автоматично створює стандартні звіти після завершення процесу моделювання. Прапорець In Windows (У вікнах) забезпечує текстове представлення кожного об’єкта повідомлення замість збереження їх у файлі.
У вікні також зображена група прапорців, які забезпечують вивід результатів функціонування того або іншого елемента системи, що моделюється:
|
|
Прапорець Six Places встановлює точність дійсних значень із шістьома десятковими знаками. Прапорець Scientific використовується для представлення мантиси чисел у вигляді десяткової експоненти у звітах і потоках даних. Прапорець Suppress Page Numbers (Не вставляти номери сторінок) служить для видалення номерів сторінок під час друкування текстових об’єктів. Більш детальний опис елементів звіту наводиться у додатку 2.
Для налаштування параметрів генераторів випадкових чисел використовується вкладка Random Numbers, яка зображена на рис. 3.26. Вона дозволяє керувати внутрішніми потоками генераторів випадкових чисел, а також зовнішньою нумерацією дочірніх об’єктів.
Вкладка Function Keys (Функціональні клавіші), використовуються для призначення функціональних клавіш командам керування процесом моделювання.
Вкладка Expressions (Вираз), яка зображена на рис. 3.27, використовується для перегляду виразів, включених для контролю.
На цій вкладці можна визначити вираз, який повинен мати таку ж назву, яка ідентифікує мітку. Ця вкладка дозволяє зберігати різноманітні вирази, пов’язані з об’єктом моделювання, і вибрати будь-який вираз зі списку. Вкладка Expressions забезпечує можливість запам’ятовування виразів, що використовуються найчастіше для моделювання тієї чи іншої системи. Для цього необхідно виконати команди Edit → Expressions Window (Вікно виразів) → Memorize (Запам’ятати).
Рис.3.26. Діалогове вікно SETTINGS з відкритою вкладкою Random Numbers
Після цього можна викликати вікно Edit Expressions Window (Вікно редагування виразів) для перегляду і редагування.
Рис.3.27. Діалогове вікно SETTINGS з відкритою вкладкою Expressions
Контрольні запитання та завдання
Запустіть середовище GPSS World і відкрийте вже існуючий файл з програмою (якщо немає, то створіть новий файл і наберіть одну з програм, які розглядаються в даному розділі).
Яким чином можна вставляти блоки GPSS в модель?
Чи можна в середовищі GPSS організувати роботу з декількома вікнами одночасно?
Як встановити параметри моделювання для створеної програми.
Встановіть вивід необхідної інформації, яка з’явиться у звіті після закінчення процесу моделювання.
Що таке функціональні клавіші і як їх запрограмувати?
Як відкомпілювати створену програму.
В якому вікні з’являється повідомлення про дату і час початку та закінчення проведення компіляції?
Запустіть відкомпільовану програму на виконання.
В якому вікні з’являються результати моделювання?
Чи можна переглядати значення виразів в динаміці?
В якому вікні відображаються повідомлення про помилки в прогамі?
Як відшукати помилку в програмі?
Як можна зупинити процес моделювання в будь-який момент часу.
Як продовжити процес моделювання після його зупинки?
“Те, що шукаєш, знайдеш тільки тоді,
коли обшукаєш все”
(Закон Буба)
Розділ 4
Система імітаційного моделювання GPSS World
об’єкти мови GPSS World
категорії і типи об’єктів
блок-діаграми моделі
об’єкти обчислювальної категорії
У розділі розглядаються основні об’єкти мови імітаційного моделювання. Наведена класифікація об’єктів за категоріями і типами. Детально описані об’єкти обчислювальної категорії. Показано можливість використання блок-діаграм GPSS для побудови моделей.