Повна версія

Головна arrow Інформатика arrow ІМІТАЦІЙНЕ МОДЕЛЮВАННЯ СИСТЕМ В СЕРЕДОВИЩІ EXTENDSIM

  • Увеличить шрифт
  • Уменьшить шрифт


<<   ЗМІСТ   >>

ІНСТРУМЕНТАРІЙ EXTENDSIM ДЛЯ РОЗРОБКИ І ДОСЛІДЖЕННЯ ДИСКРЕТНО-ПОДІЄВИХ МОДЕЛЕЙ

Розробка найпростішої моделі

Один з основних підходів до створення імітаційних моделей систем, який реалізований в середовищі ExtendSim , - дискретно-подієвого моделювання.

Система називається дискретно-подієвої якщо зміна станів в ній відбувається під впливом явно певних (дискретних) подій. Перебуваючи в деякому стані, система зберігає його (не змінює своїх характеристик) до настання чергового події, під впливом якого змінні системи (і, отже, її стан) змінюються «стрибком». Термін «дискретно-подієвого моделювання» історично закріпився за моделюванням, перш за все, систем масового обслуговування (СМО) [6].

Поняття СМО охоплює широке коло систем. СМО - будь-яка динамічна система з обслуговування заявок в умовах обмеження на ресурси системи [3, 7]. Прикладами СМО є: бібліотека, обчислювальний центр, система передачі даних, інформаційна система, автоматизована система управління, аеропорт, виробнича дільниця, АЗС і т.д. Будь-яка інформаційно-обчислювальна система може бути представлена, формалізовано описана і досліджена, як СМО.

При побудові моделі, наприклад, обчислювальної системи стан системи може бути представлено кількістю заявок в системі, числом зайнятих комп'ютерів. Стан системи змінюється, якщо нова заявка надходить в систему або, коли звільняється комп'ютер. Прихід заявки або закінчення обслуговування заявки - подія, яка змінює стан системи «стрибком».

Реалізований в ExtendSim інструментарій для створення дискретно подієвої моделі розглянемо на прикладі простої задачі.

Приклад 2. Відомо, що обчислювальна система складається з одного комп'ютера. Інтервал часу між двома послідовними надходженнями завдань до комп'ютера підпорядковується рівномірному закону розподілу в інтервалі: 1-11 хв. Перед комп'ютером допустима чергу завдань, довжина якої не обмежена. Час виконання завдання також рівномірно розподілено в інтервалі: 1-19 хв. Промоделювати процес обробки 100 завдань.

Для створення моделі використовуються блоки двох бібліотек: Item.Іх (див. Додаток) і Plotter.lix. Бібліотека Item.Іх є основною при моделюванні дискретно-подієвих систем, бібліотека Plotter.lix - містить різні типи графіків. Кінцевий вигляд моделі наведено на рис. 13.

Кінцевий вигляд моделі

Мал. 13. Кінцевий вигляд моделі

Розглянемо побудову моделі по кроках. У моделі використовуються такі блоки: Create, Exit, Queue, Executive, Activity, Plotter Discrete Event. Зупинимося детальніше на налаштуваннях кожного з блоків.

У блоці Executive встановлюється загальний час моделювання, моделювання завершується, коли через модель пройдуть 100 заявок. У діалоговому вікні блоку виберіть вкладку Control, виберіть опцію: Stop simulation: when count connector value -> = і введіть значення 100.

У блоці Create встановлюється інтервал між надходженням двох заявок і закон розподілу інтервалу. На рис. 14 наведені настройки блоку:

Налаштування блоку Create

Мал. 14. Налаштування блоку Create

У блоці Activity встановлюється закон розподілу інтервалу між надходженням двох заявок і параметри закону. На рис. 15. Наведено настройки блоку:

Налаштування блоку Activity

Мал. 15. Налаштування блоку Activity

В налаштуваннях блоків Exit, Queue , Plotter Discrete Event використовуються параметри за замовчуванням і нічого змінювати не потрібно.

Зверніть увагу, блоки Queue і Activity містять інформаційні вихідні коннектори, з яких можна зняти інформацію про характеристики поточних (що проходять через модель) заявок або поточний стан блоку. Наприклад. у блоку Queue наступні інформаційні вихідні коннектори: L текушего довжина черги; W - час очікування в черзі поточної заявки; F - стан черги: повертає 1, якщо чергу повна, 0 - в іншому випадку; Р - пріоритет поточної заявки.

У блоку Activity наступні основні інформаційні вихідні коннектори: L - поточна кількість оброблюваних заявок; U - коефіцієнт завантаження; РТ - час обробки поточної заявки та інші. Детальну інформацію про коннекторах блоку можна прочитати, натиснувши кнопку help в діалоговому вікні блоку.

Вихідні коннектори блоків (див. Рис. 13) з'єднуються з графіком Plotter Discrete Event. Після запуску моделі на виконання (пункт меню Run -> Run Simulation) виводяться графік зміни обраних характеристик системи в процесі моделювання (червона лінія - середня довжина черги, синя лінія - час обробки однієї заявки) і тимчасової ряд значень характеристик в табличному вигляді (рис. 16).

Графік зміни вихідних характерце гик

Мал. 16. Графік зміни вихідних характерце гик

Вихідні характеристики ефективності функціонування системи за результатами моделювання (наприклад, коефіцієнт завантаження системи, середній час обробки заявок, середня довжина черги і т.п.) виводяться у вкладці Results в діалоговому вікні блоку. Наприклад, для блоку Activity виводяться наступні результати (див. Рис. 17): поточний, середній і максимальне число заявок в

пристрої ( Current, Average, Maximum Length); поточний, середній і максимальний час обробки заявки ( Current, Average, Maximum Wait); коефіцієнт використання пристрою ( Utilization); число заявок, які зайшли в пристрій (Arrivals); число заявок, що вийшли з пристрою (Departures).

Вихідні характеристики блоку Activity

Мал. 17. Вихідні характеристики блоку Activity

Для блоку Queue виводяться наступні результати (див. Рис. 18): поточний, середній і максимальне число заявок в черзі (Current, Average. Maximum Length); поточний, середній і максимальний час перебування заявки в черзі (Current, Average, Maximum Wait); коефіцієнт використання черзі (Utilization); число заявок, які зайшли в чергу (Arrivals); число заявок, що вийшли з черги (Departures).

Вихідні характеристики блоку Queue

Мал. 18. Вихідні характеристики блоку Queue

Очевидно, що моделируемая система не справляється з потоком заявок, так як середній інтервал надходження (6 одиниць часу) заявок менше середнього інтервалу обробки заявки (10 одиниць часу). Комп'ютер завантажений на 99%, черги заявок лінійно зростає і на кінець моделювання включає 71 заявку.

За результатами моделювання також можна сформувати підсумковий текстовий звіт. Для цього, в модель необхідно додати блок з бібліотеки Value.Іх. Блок статистики нс вимагає підключення і забезпечує збір підсумкової статистики але блокам моделі. Для формування звіту виберіть пункти меню Run -> Generate Report , Run -> Report type (Statistics) / Statistics, Run -> Add all to report. В результаті моделювання буде виведений текстовий звіт.

 
<<   ЗМІСТ   >>