Комп'ютерне імітаційне моделювання. Статистичне імітаційне моделювання

Моделью об'єкта називається будь-який інший об'єкт, окремі властивості якого повністю або частково збігаються з властивостями вихідного.

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

Вихідний об'єктможе бути або реальним, або уявним. З уявними об'єктами в інженерній практиці ми маємо справу на ранніх етапах проектування технічних систем. Моделі ще втілених реальні розробки об'єктів називаються предвосхищающими.

Цілі моделювання

Модель створюється для досліджень, які на реальному об'єкті проводити або неможливо, або дорого, або просто незручно. Можна виділити кілька цілей, заради яких створюються моделі та ряд основних типів досліджень:

  1. Модель як засіб осмисленнядопомагає виявити:
  • взаємозалежності змінних;
  • характер їх зміни у часі;
  • існуючі закономірності.

При складанні моделі стає більш зрозумілою структура об'єкта, що досліджується, розкриваються важливі причинно-наслідкові зв'язки. У процесі моделювання поступово відбувається поділ властивостей вихідного об'єкта на суттєві та другорядні з погляду сформульованих вимог до моделі. Ми намагаємося знайти у вихідному об'єкті тільки ті риси, які мають безпосереднє відношення до сторони його функціонування, що цікавить нас. У певному сенсі вся наукова діяльність зводиться до побудови та дослідження моделей природних явищ.

  1. Модель як засіб прогнозуваннядозволяє навчитися передбачати поведінку та керувати об'єктом, випробовуючи різні варіанти управління на моделі. Експериментувати з реальним об'єктом часто, у разі, буває незручно, котрий іноді просто небезпечно чи взагалі неможливо з низки причин: великої тривалості експерименту, ризику пошкодити чи знищити об'єкт, відсутності реального об'єкта у разі, що він ще тільки проектується.
  2. Побудовані моделі можуть використовуватись для знаходження оптимальних співвідношень параметрів, дослідження спеціальних (критичних) режимів роботи
  3. Модель також може у деяких випадках замінювати вихідний об'єкт під час навчання, наприклад використовуватися як тренажер при підготовці персоналу до подальшої роботи в реальній обстановці, або виступати як досліджуваний об'єкт у віртуальній лабораторії. Моделі, реалізовані у вигляді виконуваних модулів, застосовуються як імітатори об'єктів управління при стендових випробуваннях систем управління, і, на ранніх стадіях проектування, замінюють самі майбутні апаратно реалізовані системи управління.

Імітаційне моделювання

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

Вказуючи, що дана модель імітаційна, ми зазвичай підкреслюємо, що, на відміну від інших типів абстрактних моделей, у цій моделі збережені та легко впізнавані такі риси об'єкта, що моделюється, як структура, зв'язкиміж компонентами, спосіб передачі. З імітаційними моделями також зв'язують і вимогу ілюстрації їхньої поведінки за допомогою прийнятих у цій прикладній області графічних образів. Недарма імітаційними зазвичай називають моделі підприємств, екологічні та соціальні моделі.

Імітаційне моделювання = комп'ютерне моделювання (синоніми).В даний час для цього виду моделювання використовується синонім «комп'ютерне моделювання», підкреслюючи тим самим, що задачі, які вирішуються, неможливо вирішити, використовуючи стандартні засоби виконання обчислювальних розрахунків (калькулятор, таблиці або комп'ютерні програми, що замінюють ці засоби).

Імітаційна модель – спеціальний програмний комплекс, який дозволяє імітувати діяльність якогось складного об'єкта, в якому:

  • відображена структура об'єкта (і представлена ​​графічним чином) із зв'язками;
  • виконуються паралельні процеси.

Для опису поведінки можуть використовуватись як глобальні закони, так і локальні, отримані на основі натурних експериментів

Таким чином, імітаційне моделювання передбачає використання комп'ютерних технологій для імітації різних процесів або операцій (тобто їх моделювання), що виконуються реальними пристроями. Пристрійабо процесзазвичай називається системою . Для наукового дослідження системи ми вдаємося до певних припущень щодо її функціонування. Ці припущення, як правило, мають вигляд математичних або логічних відносин, становлять модель, за допомогою якої можна отримати уявлення про поведінку відповідної системи.

Якщо відносини, які утворюють модель, досить прості для отримання точної інформації з питань, що цікавлять нас, то можна використовувати математичні методи. Такого роду рішення називається аналітичним. Проте більшість існуючих систем є дуже складними, і їм неможливо створити реальну модель, описану аналітично. Такі моделі слід вивчати за допомогою моделювання. При моделюванні комп'ютер використовується для чисельної оцінки моделі, а за допомогою даних розраховуються її реальні характеристики.

З погляду спеціаліста (інформатика-економіста, математика-програміста або економіста-математика), імітаційне моделювання контрольованого процесу або керованого об'єкта – це високорівнева інформаційна технологія, яка забезпечує два види дій, що виконуються за допомогою комп'ютера:

  • роботи зі створення чи модифікації імітаційної моделі;
  • експлуатацію імітаційної моделі та інтерпретацію результатів.

Імітаційне (комп'ютерне) моделювання економічних процесів зазвичай застосовується у двох випадках:

  • для управління складним бізнес-процесом, коли імітаційна модель керованого економічного об'єкта використовується як інструментальний засіб у контурі адаптивної системи управління, створюваної на основі інформаційних (комп'ютерних) технологій;
  • при проведенні експериментів з дискретно-безперервними моделями складних економічних об'єктів для отримання та відстеження їх динаміки в екстрених ситуаціях, пов'язаних з ризиками, натурне моделювання яких є небажаним або неможливим.

Типові завдання імітаційного моделювання

Імітаційне моделювання може застосовуватися в різних сферах діяльності. Нижче наведено список завдань, при вирішенні яких моделювання особливо ефективне:

  • проектування та аналіз виробничих систем;
  • визначення вимог до обладнання та протоколів мереж зв'язку;
  • визначення вимог до обладнання та програмного забезпечення різних комп'ютерних систем;
  • проектування та аналіз роботи транспортних систем, наприклад аеропортів, автомагістралей, портів та метрополітену;
  • оцінка проектів створення різних організацій масового обслуговування, наприклад, центрів обробки замовлень, закладів швидкого харчування, лікарень, відділень зв'язку;
  • модернізація різних процесів у діловій сфері;
  • визначення політики у системах управління запасами;
  • аналіз фінансових та економічних систем;
  • оцінка різних систем озброєнь та вимог до їх матеріально-технічного забезпечення.

Класифікація моделей

Як підстави класифікації обрані:

  • функціональна ознака, що характеризує призначення, ціль побудови моделі;
  • спосіб представлення моделі;
  • тимчасовий фактор, що відображає динаміку моделі.

Функція

Клас моделей

Приклад

Опис

Пояснення

Демонстраційні моделі

Навчальні плакати

Пророцтва

Науково-технічні

Економічні

Математичні моделі процесів

Моделі технічних пристроїв, що розробляються

Вимірювання

Обробки емпіричних даних

Модель корабля у басейні

Модель літака в аеродинамічній трубі

Інтерпретаторська

Військові, економічні, спортивні, ділові ігри

Критеріальна

Зразкові (еталонні)

Модель взуття

Модель одягу

Відповідно до неї моделі поділяються на дві великі групи: матеріальні та абстрактні (нематеріальні). І матеріальна, і абстрактна моделі містять інформаціюпро вихідний об'єкт. Тільки матеріальної моделі ця інформація має матеріальне втілення, а нематеріальної моделі та сама інформація представляється в абстрактної формі (ідея, формула, креслення, схема).

Матеріальна та абстрактна моделі можуть відображати той самий прототип і взаємно доповнювати один одного.

Моделі можна умовно поділити на дві групи: матеріальніі ідеальні, і, відповідно, розрізняти предметне та абстрактне моделювання. Основними різновидами предметного моделювання є фізичне та аналогове моделювання.

Фізичнимприйнято називати таке моделювання (макетування), у якому реальному об'єкту ставиться у відповідність його збільшена чи зменшена копія. Ця копія створюється на основі теорії подібності, що дозволяє стверджувати, що в моделі збереглися необхідні властивості.

У фізичних моделях, крім геометричних пропорцій, може бути збережений, наприклад, матеріал або колірна гама вихідного об'єкта, а також інші властивості, необхідні для конкретного дослідження.

Аналоговемоделювання засноване на заміні вихідного об'єкта об'єктом іншої фізичної природи, що має аналогічну поведінку.

І фізичне, і аналогове моделювання як основний спосіб дослідження передбачає проведення натурного експерименту з моделлю, але цей експеримент виявляється в якомусь сенсі привабливішим, ніж експеримент із вихідним об'єктом.

Ідеальнімоделі – це абстрактні образи реальних чи уявних об'єктів. Розрізняють два типи ідеального моделювання: інтуїтивне та знакове.

Про інтуїтивномумоделюванні кажуть, коли не можуть навіть описати використовувану модель, хоча вона і існує, але беруться з її допомогою передбачати або пояснювати навколишній світ. Ми знаємо, що живі істоти можуть пояснювати та передбачати явища без видимої присутності фізичної чи абстрактної моделі. У цьому сенсі, наприклад, життєвий досвід кожної людини може вважатися її інтуїтивною моделлю навколишнього світу. Збираючись перейти вулицю, ви дивитеся праворуч, ліворуч, та інтуїтивно вирішуєте (зазвичай правильно), чи можна йти. Як справляється мозок із цим завданням, ми просто поки що не знаємо.

Знаковимназивається моделювання, що використовує як моделі знаки або символи: схеми, графіки, креслення, тексти різними мовами, включаючи формальні, математичні формули та теорії. Обов'язковим учасником знакового моделювання є інтерпретатор знакової моделі, найчастіше людина, але з інтерпретацією може справлятися комп'ютер. Креслення, тексти, формули власними силами немає жодного сенсу без того, хто розуміє їх і використовує у своїй повсякденній діяльності.

Найважливішим видом знакового моделювання є математичне моделювання. Абстрагуючись від фізичної (економічної) природи об'єктів математика вивчає ідеальні об'єкти. Наприклад, за допомогою теорії диференціальних рівнянь можна вивчати вже згадані електричні та механічні коливання у найбільш загальному вигляді, а потім отримані знання застосовувати для дослідження об'єктів конкретної фізичної природи.

Види математичних моделей:

Комп'ютерна модель це програмна реалізація математичної моделі, доповнена різними службовими програмами (наприклад, що малюють та змінюють графічні образи у часі). Комп'ютерна модель має дві складові – програмну та апаратну. Програмна складова також є абстрактною знаковою моделлю. Це лише інша форма абстрактної моделі, яка, проте, може інтерпретуватися не лише математиками і програмістами, а й технічним пристроєм – процесором комп'ютера.

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

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

Найпростіша динамічна модель може бути описана у вигляді системи лінійних диференціальних рівнянь:

все моделюються параметри представляють функції від часу.

Детерміновані моделі

Нема місця випадковості.

Всі події в системі наступають у суворій послідовності, точно відповідно до математичних формул, що описують закони поведінки. Тому результат точно визначений. І виходитиме той самий результат, хоч би скільки ми проводили експериментів.

Імовірнісні моделі

Події у системі наступають над точної послідовності, а випадковим чином. Але ймовірність настання тієї чи іншої події відома. Результат наперед невідомий. Під час проведення експерименту можуть бути різні результати. У цих моделях накопичується статистика під час проведення безлічі експериментів. На основі цієї статистики робляться висновки щодо функціонування системи.

Стохастичні моделі

При вирішенні багатьох завдань фінансового аналізу використовуються моделі, що містять випадкові величини, поведінка яких не піддається управлінню з боку осіб, які приймають рішення. Такі моделі називають стохастичними. Застосування імітації дозволяє зробити висновки про можливі результати, що базуються на ймовірнісних розподілах випадкових факторів (величин). Стохастичну імітацію часто називають методом Монте-Карло.

Етапи комп'ютерного моделювання
(обчислювального експерименту)

Його можна як послідовність наступних основних кроків:

1. ПОСТАНОВКА ЗАВДАННЯ.

  • Опис завдання.
  • Ціль моделювання.
  • Формалізація завдання:
    • структурний аналіз системи та процесів, що протікають у системі;
    • побудова структурної та функціональної моделі системи (графічна);
    • виділення суттєвих для даного дослідження властивостей вихідного об'єкту

2. РОЗРОБКА МОДЕЛІ.

  • Побудова математичної моделі.
  • Вибір програмного засобу моделювання.
  • Проектування та налагодження комп'ютерної моделі (технологічна реалізація моделі в середовищі)

3. КОМП'ЮТЕРНИЙ ЕКСПЕРИМЕНТ.

  • Оцінка адекватності збудованої комп'ютерної моделі (задоволення моделі цілям моделювання).
  • Упорядкування плану експериментів.
  • Проведення експериментів (Дослідження моделі).
  • Аналіз результатів експерименту.

4. АНАЛІЗ РЕЗУЛЬТАТІВ МОДЕЛЮВАННЯ.

  • Узагальнення результатів експериментів та висновок про подальше використання моделі.

За характером постановки завдання можна розділити на дві основні групи.

До першій групіможна віднести завдання, у яких потрібно досліджувати, як зміняться характеристики об'єкта при певному впливі на нього. Таку постановку завдання прийнято називати "що буде якщо…?"Наприклад, що буде, якщо підвищити оплату за комунальні послуги вдвічі?

Деякі завдання формулюються дещо ширше. Що буде, якщо змінювати характеристики об'єкта в заданому діапазоні з деяким кроком? Таке дослідження допомагає простежити залежність властивостей об'єкта від вихідних даних. Дуже часто потрібно простежити розвиток процесу у часі. Така розширена постановка завдання називається аналіз чутливості.

Друга групазадач має таке узагальнене формулювання: яке треба зробити вплив на об'єкт, щоб його параметри задовольняли деякою заданою умовою?Така постановка задачі часто називається "як зробити, щоб ...?"

Як зробити, щоб "і вовки були ситі, і вівці цілі".

Найбільше завдань моделювання, зазвичай, є комплексним. У таких завданнях спочатку будується модель одного набору вихідних даних. Інакше висловлюючись, спочатку вирішується завдання «що, якщо…?» Потім проводиться дослідження об'єкта за зміни параметрів у певному діапазоні. І, нарешті, за результатами дослідження проводиться підбір параметрів для того, щоб модель задовольняла деяким властивостям, що проектуються.

З наведеного опису слід, що моделювання – процес циклічний, у якому одні й самі операції повторюються багаторазово.

Ця циклічність обумовлена ​​двома обставинами: технологічними, пов'язаними з «прикрими» помилками, допущеними на кожному з розглянутих етапів моделювання, та «ідеологічними», пов'язаними з уточненням моделі, і навіть з відмовою від неї, та переходом до іншої моделі. Ще один додатковий «зовнішній» цикл може з'явитися, якщо ми захочемо розширити область застосування моделі, і змінимо вихідні дані, які вона повинна правильно враховувати, або припущення, при яких вона повинна бути справедливою.

Підбиття підсумків моделювання може призвести до висновку, що запланованих експериментів недостатньо для завершення робіт, а можливо і до необхідності знову уточнити математичну модель.

Планування комп'ютерного експерименту

У термінології планування експериментів вхідні змінні та структурні припущення, що становлять модель, називаються факторами, а вихідні показники роботи – відгуками. Рішення у тому, які параметри і структурні припущення вважати фіксованими показниками, які експериментальними чинниками, залежить швидше від мети дослідження, а чи не від внутрішнього вигляду моделі.

Докладніше про планування комп'ютерного експерименту прочитати самостійно (с. 707-724; с. 240-246).

Практичні прийоми планування та проведення комп'ютерного експерименту розглянуті на практичних заняттях.

Кордони можливостей класичних математичних методів економіки.

Способи дослідження системи

Експеримент із реальною системою чи з моделлю системи? За наявності можливості фізично змінити систему (якщо це рентабельно) і запустити її в дію в нових умовах найкраще вчинити саме так, оскільки в цьому випадку питання адекватності отриманого результату зникає саме собою. Однак часто такий підхід неможливий або через занадто великі витрати на його здійснення, або через руйнівний вплив на саму систему. Наприклад, у банку шукають способи зниження витрат, і з цією метою пропонується зменшити кількість касирів. Якщо випробувати у дії нову систему – з меншою кількістю касирів, це може призвести до тривалих затримок в обслуговуванні відвідувачів та їх відмову від послуг банку. Більше того, система може і не існувати насправді, але хочемо вивчити різні її конфігурації, щоб вибрати найбільш ефективний спосіб виконання. Прикладами таких систем можуть бути мережі зв'язку або стратегічні системи ядерних озброєнь. Тому необхідно створити модель, що представляє систему, та досліджувати її як замінник реальної системи. При використанні моделі завжди виникає питання – чи справді вона настільки точно відображає саму систему, щоб можна було прийняти рішення, грунтуючись на результатах дослідження.

Фізична модель чи математична модель? При слові «модель» більшість з нас уявляє собі кабіни, встановлені поза літаками на тренувальних майданчиках і які застосовуються для навчання пілотів, або мініатюрні супертанкери, що рухаються в басейні. Це приклади фізичних моделей (названих також іконічними чи образними). Вони рідко використовуються для дослідження операцій чи аналізі систем. Але у деяких випадках створення фізичних моделей може бути дуже ефективним щодо технічних систем чи систем управління. Прикладами можуть бути масштабні настільні моделі вантажно-розвантажувальних систем і, принаймні, один випадок створення повномасштабної фізичної моделі закладу швидкого харчування у великому магазині, в реалізації якої були задіяні реальні відвідувачі. Проте переважна більшість створюваних моделей є математичними. Вони представляють систему за допомогою логічних та кількісних відносин, які потім піддаються обробці та змінам, щоб визначити, як система реагує на зміни, точніше – як би вона реагувала, якби існувала насправді. Напевно, найпростішим прикладом математичної моделі є відоме співвідношення S=V/t, де S- Відстань; V- Швидкість переміщення; t- Час переміщення. Іноді така модель може бути адекватна (наприклад, у випадку з космічним зондом, спрямованим до іншої планети, після досягнення ним швидкості польоту), але в інших ситуаціях вона може не відповідати дійсності (наприклад, транспортне сполучення в години пік на міській перевантаженій автостраді) .

Аналітичне рішення чи імітаційне моделювання? Щоб відповісти на питання щодо системи, яку представляє математична модель, слід встановити, як цю модель можна побудувати. Коли модель досить проста, можна обчислити її співвідношення та параметри та отримати точне аналітичне рішення. Однак деякі аналітичні рішення можуть бути надзвичайно складними та вимагати при цьому величезних комп'ютерних ресурсів. Звернення великої нерозрідженої матриці є багатьом знайомим прикладом ситуації, коли існує в принципі відома аналітична формула, але отримати в такому випадку чисельний результат не так просто. Якщо у випадку з математичною моделлю можливе аналітичне рішення та його обчислення є ефективним, краще досліджувати модель саме таким чином, не вдаючись до імітаційного моделювання. Однак багато систем надзвичайно складні, вони практично повністю виключають можливість аналітичного рішення. І тут модель слід вивчати з допомогою імітаційного моделювання, тобто. багаторазового випробування моделі з потрібними вхідними даними, щоб визначити їхній вплив на вихідні критерії оцінки роботи системи.

Імітаційне моделювання сприймається як «метод останньої надії», і в цьому є частка правди. Однак у більшості ситуацій ми швидко усвідомлюємо необхідність вдатися саме до цього засобу, оскільки досліджувані системи та моделі досить складні та їх потрібно подати доступним способом.

Припустимо, ми маємо математичну модель, яку потрібно досліджувати за допомогою моделювання (далі – імітаційна модель). Насамперед нам необхідно дійти висновку про засоби її дослідження. У цьому слід класифікувати імітаційні моделі за трьома аспектами.

Статична чи динамічна? Статична імітаційна модель - це система в певний момент часу або система, в якій час просто не відіграє ніякої ролі. Прикладами статичної імітаційної моделі є моделі, створені методом Монте-Карло. Динамічна імітаційна модель представляє систему, що змінюється у часі, наприклад, конвеєрну систему на заводі. Побудувавши математичну модель, слід вирішити, як її можна використовуватиме отримання даних про системі, що вона представляє.

Детермінована чи стохастична? Якщо імітаційна модель не містить імовірнісних (випадкових) компонентів, вона називається детермінованою. У детермінованій моделі результат можна отримати, коли для неї задані всі вхідні величини та залежності, навіть якщо в цьому випадку знадобиться велика кількість комп'ютерного часу. Проте багато систем моделюються з кількома випадковими вхідними даними компонентів, у результаті створюється стохастична імітаційна модель. Більшість систем масового обслуговування та керування запасами саме таким чином і моделюється. Стохастичні імітаційні моделі видають результат, який є випадковим сам собою, і тому може розглядатися лише як оцінка істинних характеристик моделі. Це один із головних недоліків моделювання.

Безперервна чи дискретна? Говорячи узагальнено, ми визначаємо дискретну та безперервну моделі подібно до раніше описаних дискретної та безперервної систем. Слід зазначити, що дискретна модель який завжди використовується для моделювання дискретної системи, і навпаки. Чи необхідно для конкретної системи використовувати дискретну чи безперервну модель, залежить від завдань дослідження. Так, модель транспортного потоку на автомагістралі буде дискретною, якщо вам необхідно врахувати характеристики та рух окремих машин. Однак, якщо машини можна розглядати в сукупності, транспортний потік може бути описаний за допомогою диференціальних рівнянь безперервної моделі.

Імітаційні моделі, які ми далі розглянемо, будуть дискретними, динамічними та стохастичними. Надалі називатимемо їх дискретно-подієвими імітаційними моделями. Так як детерміновані моделі є особливим видом стохастичних моделей, той факт, що ми обмежуємося тільки такими моделями, не тягне за собою будь-яких похибок в узагальненні.

Існуючі підходи до візуального моделювання складних динамічних систем.
Типові системи імітаційного моделювання

Імітаційне моделювання на цифрових обчислювальних машинах є одним із найпотужніших засобів дослідження, зокрема, складних динамічних систем. Як і будь-яке комп'ютерне моделювання, воно дає можливість проводити обчислювальні експерименти з ще тільки проектованими системами та вивчати системи, натурні експерименти з якими, через міркування безпеки чи дорожнечу, не доцільні. У той же час, завдяки своїй близькості формою до фізичного моделювання, цей метод дослідження доступний ширшому колу користувачів.

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

«Складність досліджуваних і проектованих систем призводить до необхідності створення спеціальної, якісно нової техніки дослідження, що використовує апарат імітації – відтворення на ЕОМ спеціально організованими системами математичних моделей функціонування комплексу, що проектується або вивчається» (Н.Н. Моїсеєв. Математичні завдання системного аналізу. М.: Наука, 1981, 182).

В даний час існує безліч візуальних засобів моделювання. Домовимося не розглядати у цій роботі пакети, орієнтовані вузькі прикладні області (електроніка, електромеханіка тощо. буд.), оскільки, як зазначалося вище, елементи складних систем ставляться, зазвичай, до різних прикладним областям. Серед універсальних пакетів (орієнтованих на певну математичну модель), що залишилися, ми не будемо звертати увагу на пакети, орієнтовані на математичні моделі, відмінні від простої динамічної системи (рівняння в приватних похідних, статистичні моделі), а також на чисто дискретні і чисто безперервні. Таким чином, предметом розгляду будуть універсальні пакети, що дозволяють моделювати структурно складні гібридні системи.

Їх можна умовно поділити на три групи:

  • пакети "блокового моделювання";
  • пакети "фізичного моделювання";
  • пакети, зорієнтовані схему гібридного автомата.

Цей поділ є умовним передусім оскільки всі ці пакети мають багато спільного: дозволяють будувати багаторівневі ієрархічні функціональні схеми, підтримують у тому мірою технологію ООМ, надають подібні можливості візуалізації і анімації. Відмінності обумовлені тим, який із аспектів складної динамічної системи вважається найважливішим.

Пакети «блокового моделювання»орієнтовані на графічну мову ієрархічних блок-схем. Елементарні блоки або зумовлені, або можуть конструюватися за допомогою деякого спеціального допоміжного мови нижчого рівня. Новий блок можна зібрати з наявних блоків з використанням орієнтованих зв'язків та параметричного налаштування. До зумовлених елементарних блоків входять суто безперервні, суто дискретні і гібридні блоки.

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

Найбільш відомими представниками пакетів «блокового моделювання» є:

  • підсистема SIMULINK пакету MATLAB (MathWorks, Inc.; http://www.mathworks.com);
  • EASY5 (Boeing)
  • підсистема SystemBuild пакету MATRIXX (Integrated Systems, Inc.);
  • VisSim (Visual Solution; http://www.vissim.com).

Пакети "фізичного моделювання"дозволяють використовувати неорієнтовані та потокові зв'язки. Користувач може визначати нові класи блоків. Безперервна складова поведінки елементарного блоку визначається системою алгебро-диференціальних рівнянь і формул. Дискретна складова визначається описом дискретних подій (події задаються логічною умовою або є періодичними), при виникненні яких можуть виконуватися миттєві привласнення змінним нових значень. Дискретні події можуть поширюватися спеціальними зв'язками. Зміна структури рівнянь можлива лише опосередковано через коефіцієнти правих частинах (це зумовлено необхідністю символьних перетворень під час переходу до еквівалентної системі).

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

До пакетів «фізичного моделювання» слід зарахувати:

  • 20-SIM(Controllab Products B.V; http://www.rt.el.utwente.nl/20sim/);
  • Dymola(Dymasim; http://www.dynasim.se);
  • Omola, OmSim(Lund University; http://www.control.lth.se/~cace/omsim.html);

Як узагальнення досвіду розвитку систем цього напрямку міжнародною групою вчених розроблено мову Modelica(The Modelica Design Group; http://www.dynasim.se/modelica), пропонований як стандарт під час обміну описами моделей між різними пакетами.

Пакети, що базуються на використанні схеми гібридного автомата, дозволяють дуже наочно та природно описувати гібридні системи зі складною логікою перемикань. Необхідність визначення еквівалентної системи при кожному перемиканні змушує використовувати лише орієнтовані зв'язки. Користувач може визначати нові класи блоків. Безперервна складова поведінки елементарного блоку визначається системою алгебро-диференціальних рівнянь і формул. До недоліків слід віднести надмірність опису при моделюванні суто безперервних систем.

До цього напряму належить пакет Shift(California PATH: http://www.path.berkeley.edu/shift), а також вітчизняний пакет Model Vision Studium. Пакет Shift переважно орієнтований на опис складних динамічних структур, а пакет MVS – на опис складних поведінок.

Зауважимо, що між другим та третім напрямками немає непереборної прірви. Зрештою, неможливість їхнього спільного використання обумовлена ​​лише сьогоднішніми обчислювальними можливостями. У той же час, загальна ідеологія побудови моделей практично збігається. В принципі, можливий комбінований підхід, коли в структурі моделі повинні виділятися складові блоки, елементи яких мають суто безперервну поведінку, і одноразово перетворюватися на еквівалентний елементарний. Далі вже сукупна поведінка цього еквівалентного блоку має використовуватися під час аналізу гібридної системи.

Вступ. 4

1 Імітаційне моделювання. 5

2 Методичні вказівки до виконання практичних робіт. 31

3 Завдання для виконання практичних робіт. 38

Список використаної літератури.

Додаток А. 41


Вступ

Імітаційне моделювання – один із найефективніших методів
аналізу для дослідження та розробки складних процесів та систем. Це моделювання дає можливість користувачеві експериментувати із системами у тих випадках, коли робити це на реальному об'єкті неможливо чи недоцільно. Імітаційне моделювання засноване на математиці, теорії ймовірності та статистиці. Водночас імітаційне моделювання та експериментування у багатьох випадках залишаються інтуїтивними процесами. Це пов'язано з тим, що такі процеси, як відбір існуючих факторів для побудови моделі, запровадження спрощених припущень та прийняття правильних рішень на основі моделей обмеженої точності, спираються значною мірою на інтуїцію дослідника та практичний досвід того чи іншого керівника.

Методичний посібник містить відомості про сучасні підходи до
оцінки ефективності будь-якого технологічного чи іншого процесу. У них
розглянуто деякі методи документування інформації, виявлення на етапі пошуку та виявлення фактів, з метою забезпечення найбільш ефективного їх використання. З цією метою може бути використана група методів, яку можна назвати схематичними моделями. Під цією назвою розуміються методи аналізу, що включають графічне уявлення роботи системи. Вони призначені для того, щоб допомогти менеджеру (інженеру) глибше зрозуміти та документувати досліджуваний процес або функціонування системи. Хоча нині є безліч методів схематичного представлення технологічних процесів, ми обмежимося розглядом лише технологічних карт, технологічних діаграм і функціональних діаграм операцій .

Імітаційне моделювання

Управління у світі стає дедалі складнішим справою, оскільки організаційна структура нашого суспільства ускладнюється. Ця складність пояснюється характером взаємин між різними елементами наших організацій та фізичними системами, з якими вони взаємодіють. Хоча ця складність існувала давно, ми лише зараз починаємо розуміти її значення. Тепер ми усвідомлюємо, що зміна однієї з характеристик системи може легко спричинити зміни або створити потребу в змінах в інших частинах системи; у зв'язку з цим набула розвитку методологія системного аналізу, яка була покликана допомогти керівникам та інженерам вивчати та осмислювати наслідки таких змін. Зокрема, з появою електронних обчислювальних машин однією з найважливіших та корисних знарядь аналізу структури складних процесів та систем стало імітаційне моделювання. Імітувати - це означає "уявити, досягти суть явища, не вдаючись до експериментів на реальному об'єкті".

Імітаційне моделювання є процесом конструювання моделі
реальної системи та постановки експериментів на цій моделі з метою або
зрозуміти поведінку системи, або оцінити (у межах обмежень, які накладаються деяким критерієм чи сукупністю критеріїв) різні стратегії, які забезпечують функціонування цієї системи. Таким чином, процес імітаційного моделювання розуміємо як процес, що включає конструювання моделі, і аналітичне застосування моделі для вивчення деякої проблеми. Під моделлю реальної системи розуміємо уявлення групи об'єктів чи ідей у ​​певній формі, відмінною від реального втілення; звідси термін "реальний" використовується в сенсі "існуючий або здатний прийняти одну з форм існування". Отже, системи, що існують тільки на папері або перебувають у стадії планування, можуть моделюватися так само, як і діючі системи.

Відповідно до визначення, термін «імітаційне моделювання» може охоплювати стохастичні моделі та експерименти з використанням методу Монте-Карло. Іншими словами, входи моделі та (або) функціональні співвідношення між різними її компонентами можуть містити, а можуть і не містити елемент випадковості, що підкоряється ймовірним законам. Імітаційне моделювання є тому експериментальною та прикладною методологією, що має на меті:

− описати поведінку систем;

− побудувати теорії та гіпотези, які можуть пояснити поведінку, що спостерігається;

− використовувати ці теорії для передбачення майбутньої поведінки системи, тобто. тих впливів, які можуть бути викликані змінами системи або змінами способів її функціонування.

На відміну від більшості технічних методів, які можуть бути
класифіковані відповідно до наукових дисциплін, у які вони
сягають своїм корінням (наприклад, з фізикою або хімією), імітаційне
моделювання застосовується у будь-якій галузі науки. Його застосовують у комерційній діяльності, економіці, маркетингу, у системі освіти, політиці, суспільствознавстві, науці про поведінку, міжнародних відносинах, на транспорті, у кадровій політиці, у галузі дотримання законності, у дослідженні проблем міст та глобальних систем, а також у багатьох інших областях.

Розглянемо простий приклад, що дозволяє усвідомити істоту ідеї імітаційного моделювання. Наприклад, черга покупців до прилавку невеликого магазину (так звана однолінійна система масового обслуговування). Припустимо, що проміжки часу між послідовними появи покупців розподіляються рівномірно в інтервалі від 1 до 10 хв (для простоти округляємо час до найближчого цілого числа хвилин). Припустимо далі, що час, необхідне обслуговування кожного покупця, розподіляється поступово в інтервалі від 1 до 6 хв. Нас цікавить середній час, який покупець проводить у даній системі (включаючи і очікування, та обслуговування), та відсоток часу, протягом якого продавець, що стоїть на контролі, не завантажений роботою.

Для моделювання системи необхідно поставити штучний експеримент, який відбиває основні умови ситуації. Для цього ми повинні вигадати спосіб імітації штучної послідовності прибуття покупців і часу, необхідного для обслуговування кожного з них. Один із способів, який ми могли б застосувати, полягає в тому, щоб позичити у когось із друзів, які грають у покер, десять фішок та один кубик. Після цього ми могли б пронумерувати фішки з числами 1 по 10, покласти їх у капелюх і, струшуючи його, перемішати фішки. Витягуючи фішку з капелюха і зчитуючи число, що випало, ми могли б таким шляхом уявити проміжки часу між появою попереднього і наступного покупців. Кидаючи наш кубик і зчитуючи з його верхньої грані кількість очок, ми могли б такими числами уявити час обслуговування кожного покупця. Повторюючи ці операції у зазначеній послідовності (повертаючи кожного разу фішки назад і струшуючи капелюх перед кожним витягуванням), ми могли б отримати тимчасові ряди, що становлять проміжки часу між послідовними прибуттями покупців і відповідні часи обслуговування. Наше завдання потім зведеться до простої реєстрації результатів експерименту. Таблиця 1 показує, які, наприклад, результати можна отримати у разі аналізу прибуття 20 покупців.

Таблиця 1.1 - Результати експерименту під час аналізу прибуття 20 покупців

Покупець Час прибуття попереднього покупця, мін Час обслуговування, хв Поточний модельний час у момент прибуття покупців Початок обслуговування Кінець обслуговування Час перебування покупця біля прилавка, хв Час простою продавця в очікуванні покупця, мін
1. - 0,00 0,00 0,01
2. 0,03 0,03 0,07
3. 0,10 0,10 0,14
4. 0,13 0,14 0,16
5. 0,22 0,22 0,23
6. 0,32 0,32 0,37
7. 0,38 0.38 0,42
8. 0,46 0,46 0,52
9. 0,54 0,54 0,55
10. 1,02 1,02 1,05
11. 1,09 1,09 1,14
12. 1.12 1,14 1,19
13. 1,20 1,20 1,23
14. 1,24 1,24 1,30
15. 1,28 1,30 1,31
16. 1,35 1,35 1,36
17. 1.36 1,36 1,42
18. 1.42 1,42 1,43
19. 1,49 1,49 1,51
20. 1,55 1,55 1,57
Усього:

Очевидно, для здобуття статистичної значущості результатів ми
повинні були взяти набагато більшу вибірку, крім того, ми не врахували деякі важливі обставини, такі як, наприклад, початкові умови. Важливим моментом є і те, що для генерування випадкових чисел ми застосували два пристрої (пронумеровані покерні фішки та кубик); це було зроблено з міллю здійснити штучний (імітаційний) експеримент із системою, що дозволяє виявити певні риси її поведінки. Перейдемо тепер до наступного поняття – модель. Модель є уявленням об'єкта, системи чи поняття (ідеї) у певній формі, відмінною від форми їхнього реального існування. Модель служить зазвичай засобом, що допомагає нам у поясненні, розумінні чи вдосконаленні системи. Модель будь-якого об'єкта може бути або точною копією цього об'єкта (хоч і виконаною з іншого матеріалу та в іншому масштабі), або відображати деякі характерні властивості об'єкта в абстрактній формі. Внаслідок того, що імітація є лише одним із видів моделювання, розглянемо спочатку моделювання у його загальній формі.

Зазвичай вважається, що модель – це використовується для передбачення та
порівняння інструмент, що дозволяє логічним шляхом спрогнозувати
наслідки альтернативних дій і досить впевнено вказати, якому з них віддати перевагу. Моделювання охоплює широкий діапазон актів людського спілкування в еволюційному плані - від наскального живопису та спорудження ідолів до складання систем складних математичних рівнянь, що описують політ ракети в космічному просторі. По суті, прогрес та історія науки і техніки знайшли своє найточніше вираження у розвитку здатності людини створювати моделі природних явищ, понять та об'єктів.

Майже всі дослідники стверджують, що одним з головних елементів, необхідних для ефективного вирішення складних завдань, є побудова та використання моделі. Така модель може набувати різноманітних форм, але одна з найбільш корисних і найвиразніше найбільш уживаних форм - це математична, що виражає за допомогою системи рівнянь суттєві риси досліджуваних реальних систем або явище. На жаль, який завжди можливо створити математичну модель у вузькому значенні цього терміну. При вивченні більшості промислових систем ми можемо визначити цілі, вказати обмеження та передбачити, щоб наша конструкція підпорядковувалася технічним та (або) економічним законам. При цьому можуть бути розкриті та представлені в тій чи іншій математичній формі суттєві зв'язки у системі. На відміну від цього вирішення проблем захисту від забруднення повітряного середовища, запобігання злочинам, охороні здоров'я та зростання міст пов'язане з неясними та суперечливими цілями, а також з вибором альтернатив, що диктуються політичними та соціальними факторами. Отже, визначення моделі має включати як кількісні, так і якісні характеристики моделі.

Відомо п'ять функцій застосування моделей, що найбільш часто зустрічаються, таких як:

− засоби осмислення дійсності,

− засоби спілкування,

− засоби навчання та тренажу,

− інструменту прогнозування,

− засоби постановки експериментів.

Корисність моделі як засобу осмислення реальних зв'язків та
закономірностей очевидна. Моделі можуть допомогти нам упорядкувати наші
нечіткі або суперечливі поняття та незгідності. Наприклад, представлення робіт із проектування складних систем у вигляді мережевої моделі спонукає нас продумати, які кроки і в якій послідовності необхідно робити. Така модель допомагає нам виявити взаємозалежності, необхідні заходи, тимчасові співвідношення, необхідні ресурси і т.п. Вже сама спроба уявити наші словесні формулювання та думки в якійсь іншій формі часто виявляє протиріччя та неясності. Правильно побудована модель змушує нас організувати наші задуми, оцінити та перевірити їхню обґрунтованість.

Як засіб спілкування, добре продумана модель не має собі рівних. Цю функцію моделей якнайкраще підтверджує прислів'я: «Краще один раз побачити, ніж сто разів почути». Всі мови, в основі яких лежить слово, тією чи іншою мірою виявляються неточними, коли справа доходить до складних понять та опису. Правильно побудовані моделі можуть допомогти нам усунути ці неточності, надаючи в наше розпорядження більш дієві, успішніші способи спілкування. Перевага моделі перед словесними описами – у стислість та точності представлення заданої ситуації. Модель робить більш зрозумілою загальну структуру об'єкта, що досліджується, і розкриває важливі причинно-наслідкові зв'язки.

Моделі застосовувалися і продовжують широко застосовуватися як
засобів професійної підготовки та навчання. Психологи давно визнали важливість навчання людини професійної майстерності в умовах, коли вона не має до цього сильних спонукальних мотивів. Якщо людина практикується в чомусь, то на неї не повинен чинитися тиск. Критична ситуація виникає тут при виборі невідповідного часу і місця навчання людини новим професійним прийомам. Тому моделі часто застосовуються як чудовий засіб навчання осіб, які повинні вміти справлятися з усілякими випадковостями до виникнення реальної критичної ситуації. Більшість вже знайома з такими застосуваннями моделей, як натурні макети або моделі космічних кораблів, що використовуються для тренування космонавтів, тренажери для навчання водіїв автомашин та ділові ігри для навчання адміністративного персоналу фірм.

Одним з найважливіших застосувань моделей і в практичному, і в історичному аспектах є прогнозування поведінки об'єктів, що моделюються. Будувати ультразвуковий – реактивний літак визначення його льотних характеристик економічно недоцільно, проте вони можуть бути передбачені засобами моделювання.

Нарешті, застосування моделей також дозволяє проводити контрольовані експерименти у ситуаціях, де експериментування на реальних об'єктах було б практично неможливим чи економічно недоцільним. Безпосереднє експериментування з системою зазвичай полягає у варіюванні се деяких параметрів; при цьому, підтримуючи решту параметрів незмінними, спостерігають результати експерименту. Для більшості систем, з якими доводиться мати справу досліднику, це або практично недоступно, або надто дорого, або те й інше разом. Коли ставити експеримент на реальній системі занадто дорого і (або) неможливо, часто може бути побудована модель, де необхідні експерименти можуть бути проведені з відносною легкістю і недорого. При експериментуванні з моделлю складної системи часто можемо більше дізнатися про її внутрішні взаємодіючі чинники, ніж могли б дізнатися, маніпулюючи з реальною системою; це стає можливим завдяки вимірюваності структурних елементів моделі, тому, що ми можемо контролювати її поведінку, легко змінювати її параметри тощо.

Таким чином, модель може служити для досягнення однієї з двох основних цілей: або описової, якщо модель служить для пояснення та (або) кращого розуміння об'єкта, або наказує, коли модель дозволяє передбачити та (або) відтворити характеристики об'єкта, що визначають його поведінку. Модель наказуючого типу зазвичай є і описовою, але не навпаки. Це означає, що модель, що приписує, майже завжди є описовою по відношенню до модельованого об'єкта, але описова модель не завжди корисна для цілей планування і проектування. Ймовірно, в цьому криється одна з причин, чому економічні моделі (в яких виявляється тенденція до описовості) мали невеликий вплив на управління економічними системами і мало застосовувалися як допоміжний засіб управління на вищому рівні, тоді як моделі дослідження операцій надали значний вплив на ці сфери.

У техніці моделі служать як допоміжні засоби розробки нових або більш досконалих систем, тоді як у соціальних науках моделі пояснюють існуючі системи. Модель, придатна для цілей розробки системи, повинна також пояснювати її, але очевидно, що моделі, створювані виключно для пояснення, часто не відповідають навіть своєму прямому призначенню.

Моделі взагалі та імітаційні моделі зокрема, можна класифікувати у різний спосіб. Вкажемо деякі типові групи моделей, які можуть бути покладені в основу класифікації:

− статичні (наприклад, поперечний розріз об'єкта) та динамічні (тимчасові ряди);

− детерміністські та стохастичні;

− дискретні та безперервні;

− натурні, аналогові, символічні.

Імітаційні моделі зручно представляти у вигляді безперервного спектра, що тягнеться від точних моделей або макетів реальних об'єктів до абсолютно абстрактних математичних моделей (рисунок 1.1). Моделі, що знаходяться на початку спектра, часто називаються фізичними або натурними, тому що вони зовні нагадують систему, що вивчається. Статичні фізичні моделі, такі, як моделі архітектурних об'єктів або макети розташування заводських споруд, допомагають нам наочно уявити собі просторові співвідношення. Прикладом динамічної фізичної моделі може бути модель дослідного заводу (у зменшеному масштабі), призначена для вивчення нового хімічного процесу до переходу до розрахованого на повну потужність виробництва, або модель літака в зменшеному масштабі, яка випробовується в аеродинамічній трубі для оцінки динамічної стійкості. Відмінною особливістю фізичної моделі є те, що вона в певному сенсі «виглядає» подібно до об'єкта, що моделюється. Фізичні моделі можуть мати вигляд повномасштабних макетів (наприклад, тренажери), виконуватись у зменшеному масштабі (наприклад, модель сонячної системи) або у збільшеному масштабі (такі, як модель атома). Вони можуть бути також двовимірними та тривимірними. Їх можна використовувати для демонстраційних цілей (наприклад, глобус) або для проведення непрямих експериментів. Градуйовані шаблони, застосовувані щодо планування заводських споруд, є прикладом двомірної фізичної моделі у зменшеному масштабі, використовуваної з метою експериментування.

Точність
Абстрактність

Малюнок 1.1 – Математичні моделі

Аналоговими моделями є моделі, у яких властивість реального об'єкта є деякою іншою властивістю аналогічного за поведінкою об'єкта. Завдання іноді вирішується шляхом заміни однієї властивості іншим, після чого отримані результати треба тлумачити стосовно вихідних властивостей об'єкта. Наприклад, зміна напруги в мережі певної конфігурації може відображати потік товарів у деякій системі та є чудовим прикладом аналогової імітаційної моделі. Іншим прикладом може бути логарифмічна лінійка, у якій кількісні характеристики деякого об'єкта представлені відрізками шкали в логарифмічному масштабі.

Витрати
Об'єм виробництва

Рисунок 1.2 – Крива виробничих витрат

Графік є аналогову модель іншого типу: тут відстань відображає такі характеристики об'єкта. Як час, термін служби, кількість одиниць тощо. Графік може також показувати співвідношення між різними кількісними характеристиками і може передбачати, як зміниться деякі величини при зміні інших величин. Так, наприклад, графік малюнку 1.2 показує, як витрати виготовлення певного вироби можуть залежати від обсягу виробництва. З цього графіка видно, як саме витрати пов'язані з обсягом виробництва, тому можна передбачити, що станеться з витратами, якщо ми збільшуватимемо або зменшуватимемо обсяг виробництва. Для деяких відносно простих випадків графік може служити засобом вирішення поставленого завдання. З графіка малюнка 1.2 можна отримати криву зміни граничної собівартості виробу.

Якщо завдання полягає у визначенні оптимального обсягу виробництва за даної ціни (тобто обсягу виробництва, що забезпечує отримання максимального чистого прибутку), то ми вирішуємо це завдання шляхом побудови на тому ж графіку кривої зміни ціни одного виробу. Оптимальний обсяг буде відповідати точці, де крива ціни та крива граничної собівартості перетинаються. Графічні рішення можливі також певних завдань лінійного програмування, і навіть для ігрових завдань. Іноді графіки використовуються спільно з математичними моделями, причому одна з цих моделей дає вихідну інформацію для іншої.

Відрізняються від графіків моделі, які є різного роду схеми, також є корисними аналоговими моделями; Традиційним прикладом такого роду схем може бути структурна схема будь-якої організації. Сполучені лініями «квадратики» у такій схемі відображають взаємопідпорядкування між членами організації на час складання схеми, а також канали інформаційного обміну між ними. У системних дослідженнях також широко застосовуються схеми технологічних процесів, у яких такі різноманітні події, як операції, затримки, перевірки, запаси, що утворюються і т.д., представлені відображають рух лініями і символами.

У міру просування спектром моделей ми досягнемо тих з них, де у взаємодію вступають люди і машинні компоненти. Таке моделювання часто називається іграми (управлінськими, планувальними). Оскільки процеси прийняття рішень управлінською ланкою моделювати важко, дуже часто вважають за доцільне відмовитися від подібної спроби. У про управлінських (ділових) іграх людина взаємодіє з інформацією, що надходить з виходу обчислювальної машини (яка моделює інші властивості системи), і приймає рішення з урахуванням отриманої інформації. Рішення людини потім знову вводяться в машину як вхідну інформацію, яка використовується системою. Продовжуючи цей процес далі, ми приходимо до повністю машинного моделювання, яке зазвичай розуміється під терміном «моделювання». Обчислювальна машина може бути компонентом усіх імітаційних моделей розглянутої частини спектра, хоча це не обов'язково.

До символічних, або математичним, моделей відносяться ті, в яких для представлення процесу або системи використовуються символи, а не фізичні пристрої. Типовим прикладом представлення систем у разі вважатимуться системи диференціальних рівнянь. Оскільки останні є найбільш абстрактні і, отже, найбільш загальні моделі, математичні моделі знаходять широке застосування у системних дослідженнях. Символічна модель завжди абстрактної ідеалізацією завдання, і, якщо хочуть, щоб ця модель дозволяла вирішити завдання, необхідні деякі спрощують припущення. Тому особлива увага має бути звернена на те, щоб модель служила справжнім уявленням даного завдання.

При моделюванні складної системи дослідник зазвичай змушений використовувати сукупність кількох моделей у складі різновидів, згаданих вище. Будь-яка система або підсистема може бути представлена ​​різними способами, які значно відрізняються один від одного за складністю та деталізацією. Найчастіше внаслідок системних досліджень з'являються кілька різних моделей однієї й тієї системи. Але зазвичай у міру того, як дослідник глибше аналізує та краще розуміє проблему, прості моделі замінюються дедалі складнішими.

Усі імітаційні моделі є моделі типу так званої чорної скриньки. Це означає, що вони забезпечують видачу вихідного сигналу системи, якщо її взаємодіючі підсистеми надходить вхідний сигнал. Тому для отримання необхідної інформації або результатів необхідно здійснювати прогін імітаційних моделей, а не вирішувати їх. Імітаційні моделі неспроможні формувати своє рішення у тому вигляді, у якому це має місце у аналітичних моделях, а можуть лише служити як засіб для аналізу поведінки системи в умовах, які визначаються експериментатором. Отже, імітаційне моделювання – не теорія, а методологія вирішення проблем. Більше того, імітаційне моделювання є лише одним із кількох наявних у розпорядженні системного аналітика найважливіших методів вирішення проблем. Оскільки необхідно і бажано пристосовувати засіб або Метод до вирішення задачі, а не навпаки, виникає природне питання: у яких випадках імітаційне моделювання корисне?

Виходячи з викладеного вище, дослідник повинен розглянути доцільність застосування імітаційного моделювання за наявності будь-якої з наступних умов:

1. немає закінченої математичної постановки цього завдання, або ще розроблені аналітичні методи вирішення сформульованої математичної моделі. До цієї категорії належать багато моделей масового обслуговування, пов'язані з розглядом черг;

2. аналітичні методи є, але математичні, процедури настільки складні і трудомісткі, що імітаційне моделювання дає простіший спосіб вирішення задачі;

3. аналітичні рішення існують, та їх реалізація неможлива, внаслідок недостатньої математичної підготовки наявного персоналу. У цьому випадку слід зіставити витрати на проектування, випробування та роботу на імітаційній моделі із витратами, пов'язаними із запрошенням фахівців з боку;

4. крім оцінки певних параметрів, бажано здійснити на імітаційній моделі спостереження за перебігом процесу протягом певного періоду;

5. імітаційне моделювання може бути, єдиною, можливістю внаслідок труднощів постановки експериментів та спостереження явищ у реальних умовах;

6. для довготривалої дії систем або процесів може знадобитися стиснення: тимчасової шкали. Імітаційне моделювання дає можливість повністю контролювати час досліджуваного процесу оскільки явище може бути уповільнене або прискорене за бажанням.

Додатковою перевагою імітаційного моделювання можна вважати найширші можливості його застосування у сфері освіти та професійної підготовки. Розробка та використання імітаційної моделі дозволяють експериментатору бачити та «розігрувати» на моделі реальні процеси та ситуації. Це в свою чергу має значною мірою допомогти йому зрозуміти та відчути проблему, що стимулює процес пошуку нововведень.

Використання імітаційного моделювання привабливе як керівників, так дослідників систем завдяки своїй простоті. Проте, розробка хорошої імітаційної моделі часто обходиться дорого та потребує багато часу. Наприклад, для створення хорошої моделі внутрішньофірмового планування може знадобитися від 3 до 11 років. Крім того, імітаційні моделі не є точними і практично неможливо виміряти ступінь цієї неточності. Тим не менш, вище були вказані переваги імітаційного моделювання.

Перш ніж почати розробку моделі, необхідно зрозуміти, що являють собою структурні елементи, з яких вона будується. Хоча математична або фізична структура моделі може бути дуже складною, основи цієї побудови дуже прості. У найзагальнішому вигляді структуру моделі можна представити математично у вигляді (1.1):

, (1.1)

де Е – результат дії системи;

Х i – змінні та параметри, якими ми можемо керувати;

У i – змінні та параметри, якими ми
керувати не можемо;

F – функціональна залежність між х i та у i , яка
визначає величину Е.

Це спрощення корисно тим, що він показує залежність функціонування системи як він контрольованих нами, і від неконтрольованих змінних. Майже кожна модель є деякою комбінацією таких складових як:

− компоненти,

− змінні,

− параметри,

− функціональні залежності,

− обмеження,

− цільові функції.

Під компонентами розуміють складові, які за відповідному об'єднанні утворюють систему. Іноді вважають компонентами також елементи системи або підсистеми.

Модель міста може складатися з таких компонентів як система освіти, система охорони здоров'я, транспортна система тощо. У економічній моделі компонентами може бути окремі фірми, окремі споживачі тощо. Система визначається як група або сукупність об'єктів, об'єднаних деякою формою регулярної взаємодії або взаємозалежності для виконання заданої функції. Компоненти суть об'єкти, що утворюють досліджувану систему.

Параметри суть величини, які оператор, що працює на моделі, може вибирати довільно, на відміну від змінних, які можуть набувати лише значень, що визначаються видом даної функції. Дивлячись на це під іншим кутом зору, ми можемо сказати, що параметри після того, як вони встановлені, є постійними величинами, що не підлягають зміні. Наприклад, у такому рівнянні, як у = 3х, число 3 є параметр, а х і у – змінні. З таким же успіхом можна задати і у = 16х або у = 30х. Проводячи статистичний аналіз, часто прагнуть визначити ці невідомі, але фіксовані параметри цілої групи даних. Якщо розглядають деяку групу даних або статистичну сукупність, то величини, які визначають тенденцію поведінки цієї сукупності, такі, наприклад, як середнє значення, медіана або мода, є параметрами сукупності точно так, як мірами мінливості служать такі величини, як розмах, дисперсія, середньоквадратичне відхилення. Так, для розподілу Пуассона, де ймовірність х задається функцією , l є параметр розподілу, х є змінною величиною, а е - константою.

У моделі системи розрізняють змінні двох видів – екзогенні та
ендогенні. Екзогенні змінні називаються також вхідними; це означає, що вони породжуються поза системою або є наслідком впливу зовнішніх причин. Ендогенними змінними називаються змінні, що у системі чи результаті впливу внутрішніх причин. Ми також називаємо ендогенні змінні змінними стану (коли вони характеризують стан або умови, що мають місце і системі) або вихідними змінними (коли йдеться про виходи системи). Статистики іноді називають екзогенними змінними незалежними, а ендогенними залежними.

Функціональні залежності описують поведінку змінних та
параметрів у межах компонента або виражають співвідношення між компонентами системи. Ці співвідношення, або операційні характеристики, за своєю природою або детерміністськими, або стохастичними. Детерміністські співвідношення – це тотожності чи визначення, які встановлюють залежність між певними змінними чи параметрами у випадках, коли процес виході системи однозначно визначається заданої інформацією вході. На відміну від цього стохастичні співвідношення є такими залежностями, які при заданій вхідній інформації дають на виході невизначений результат. Обидва типи співвідношень зазвичай, виражаються у формі математичного рівняння, яке встановлює залежність між ендогенними змінними (змінними станами) та екзогенними змінними. Зазвичай ці співвідношення можна будувати лише з гіпотез чи виводити з допомогою статистичного чи математичного аналізу.

Обмеження є межі зміни значень змінних або обмежуючі умови, розподілу і витрачання тих чи інших засобів (енергії, запасів часу і т.д.). Вони можуть вводитися або розробником (штучні обмеження), або самою системою внаслідок властивих їй властивостей (природні обмеження). Прикладами штучних обмежень можуть бути задані максимальний та мінімальний рівні зайнятості робітників або встановлена ​​максимальна сума коштів, що асигнуються на капіталовкладення. Більшість технічних вимог до систем є набір штучних обмежень. Природні обмеження обумовлені самою природою системи. Наприклад, не можна продати більше виробів, ніж система може виготовити, і неспроможна сконструювати систему, порушує закони природи. Таким чином, обмеження одного типу обумовлені незмінними законами природи, в той час як обмеження іншого типу, будучи справою рук людських, можуть змінюватися. Досліднику дуже важливо пам'ятати про це, тому що в ході своїх досліджень він повинен постійно оцінювати обмеження, привнесені людиною, з тим щоб послабити або посилити їх у міру необхідності.

Цільова функція, або функція критерію – це точне відображення цілей або завдань системи та необхідних правил оцінки виконання. Зазвичай вказують на два типи цілей: збереження та придбання. Цілі збереження пов'язані зі збереженням або підтримкою будь-яких ресурсів (тимчасових, енергетичних, творчих тощо) або станів (комфорту, безпеки, рівня зайнятості тощо). Цілі придбання пов'язані з придбанням нових ресурсів (прибутку, персоналу, замовників тощо) або досягнення певних станів, яких прагне організація або керівник (захоплення частини ринку, досягнення стану залякування і т.п.). Вираз для цільової функції має бути однозначним визначенням цілей і завдань, з якими повинні відповідати прийняті рішення. Словник Вебстера визначає поняття «критерії» як «міряло оцінки, правило або вид перевірки, за допомогою яких складається правильне судження про щось». Це чітке та однозначне визначення критерію дуже важливе з двох причин. По-перше, воно має величезний вплив на процес створення моделі та маніпулювання з нею. По-друге, неправильне визначення критерію зазвичай веде до неправильних висновків. Функція критерію (цільова функція) зазвичай є органічною складовою моделі, і весь процес маніпулювання з моделлю спрямований на оптимізацію або задоволення заданого критерію.

Навіть невеликі ділянки реального світу занадто складні, щоб людина змогла їх повністю зрозуміти і описати. Майже всі проблемні ситуації надзвичайно складні і включають майже нескінченну кількість елементів, змінних, параметрів, співвідношень, обмежень і т. д. Намагаючись побудувати модель, можна включити в неї нескінченну кількість фактів і витратити багато часу, збираючи дрібні факти, що стосуються будь-якої ситуації , та встановлюючи зв'язки між ними. Розглянемо, наприклад, просту дію, яка полягає в тому, що ви берете аркуш паперу і пишіть на ньому листа. Адже можна було б визначити точний хімічний склад паперу, олівцевого грифеля та гумки; вплив атмосферних умов на вологість паперу та вплив останньої на силу тертя, що діє на вістря олівця, що рухається на папері; досліджувати статистичний розподіл букв у фразах тексту тощо. буд. Якщо єдиний аспект, який нас у цій ситуації цікавить, це факт відправлення листа, то жодна зі згаданих подробиць не належить до справи. Отже, ми повинні відкинути більшу частину реальних характеристик події, що вивчається, і абстрагувати з реальної ситуації тільки ті особливості, які відтворюють ідеалізований варіант реальної події. Всі моделі є спрощені уявлення реального світу або абстракції, якщо вони виконані коректно, то ці ідеалізації дають нам корисне наближене відображення реальної ситуації або принаймні її певних особливостей.

Подібність моделі з об'єктом, що вона відображає, називається ступенем ізоморфізму. Для того, щоб бути ізоморфною (тобто ідентичною або подібною за формою), модель повинна задовольняти дві умови.

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

Для розробки ідеалізованої гомоморфної моделі ми зазвичай
розбиваємо систему на кілька дрібніших частин. Це робиться для
того, щоб належно інтерпретувати їх, тобто зробити необхідний аналіз завдання. Такий спосіб дій залежить від наявності частин або елементів, які у першому наближенні не залежать один від одного або взаємодіють між собою відносно простим чином. Так, ми можемо спочатку проаналізувати режим роботи автомобіля, перевіряючи послідовно двигун, коробку передач, привід, систему підвіски і т. д., хоча ці вузли не повністю незалежні.

З такого аналізу при побудові моделі близько пов'язаний процес
спрощення реальної системи. Уявлення про спрощення легко доступне більшості людей – під спрощенням мається на увазі нехтування несуттєвими деталями або прийняття припущень про простіші співвідношення. Наприклад, ми часто припускаємо, що між двома змінними є лінійна залежність, хоча можемо підозрювати або навіть знати напевно, що справжня залежність між ними нелінійна. Ми припускаємо, що принаймні в обмеженому діапазоні значень
Змінних таке наближення буде задовільним. Інженер-електрик працює з моделями ланцюгів, припускаючи, що резистори, конденсатори тощо не змінюють своїх параметрів; це спрощення, тому що ми знаємо, що електричні характеристики цих компонентів змінюються в залежності від температури, вологості, терміну служби тощо. У більшості практичних випадків такі наближення або спрощення досить добрі і дають корисні результати.

Вчений, який вивчає проблеми «управління» для побудови корисних моделей, також вдається до спрощення. Він припускає, що його змінні або детерміновані (надзвичайно спрощене трактування реальності), або підпорядковуються законам випадкових подій, що описуються відомими імовірнісними функціями розподілів, таких як нормальне, пуассонівське, експоненціальне і т.д. Він також часто припускає, що залежність між змінними носять лінійний характер, знаючи, що таке припущення не зовсім правомірне. Це часто буває необхідним та виправданим, якщо потрібно побудувати моделі, що піддаються математичному опису.

Іншим аспектом аналізу є абстракція – поняття, яке у
На відміну від спрощення не так легко пояснити та осмислити. Абстракція
містить або зосереджує у собі суттєві якості чи риси
Поводження об'єкта (речі), але не обов'язково в тій же формі і настільки детально, як це має місце в оригіналі. Більшість моделей - це абстракції в тому сенсі, що вони прагнуть уявити якості і поведінку об'єкта, що моделюється, у формі або способом, що відрізняються від їх дійсної реалізації. Так, у схемі організації робіт ми намагаємося в абстрактній формі відобразити трудові взаємини між різними групами працюючих чи окремими членами таких груп. Та обставина, що подібна схема лише поверхово відображає реальні взаємини, не применшує її корисності для певних цілей.

Після того як ми проаналізували та промоделювали частини або елементи системи, ми приступаємо до їхнього об'єднання в єдине ціле. Іншими словами, ми можемо шляхом синтезу щодо простих частин сформулювати деяке наближення до складної реальної ситуації. Тут важливо передбачити два моменти. По-перше, використовувані для синтезу частини повинні бути вибрані коректно, і, по-друге, має бути коректно передбачено їхню взаємодію. Якщо все це виконано належним чином, то ці процеси аналізу, абстракції, спрощення та синтезу в результаті призведуть до створення моделі, яка апроксимує поведінку реальної системи, що вивчається. Необхідно пам'ятати, однак, що модель є лише наближенням (апроксимацією), а тому не поводитиметься в точності, як реальний об'єкт. Ми оптимізуємо модель, але реальну систему. Питання, чи дійсно взаємозв'язок між характеристиками нашої моделі і реальністю, залежить від того, наскільки правильно і розумно ми провели наші процеси аналізу, абстракції, спрощення та синтезу. Ми рідко стикаємося з моделлю, яка б повністю задовольняла даної управлінської ситуації.

Очевидно, основою успішної методики моделювання має бути ретельне відпрацювання моделей. Зазвичай, почавши з дуже простої моделі, поступово просуваються до досконалішої її формі, що відображає складну ситуацію більш точно. Аналогії та асоціації з добре побудованими структурами, мабуть, відіграють важливу роль у визначенні відправної точки цього процесу вдосконалення та відпрацювання деталей. Цей процес удосконалення та відпрацювання пов'язаний з урахуванням постійного процесу взаємодії та зворотного зв'язку між реальною ситуацією та моделлю. Між процесом модифікації моделі та процесом обробки даних, що генеруються реальним об'єктом, має місце безперервна взаємодія. У міру проведення випробувань та оцінки кожного варіанту моделі виникає новий варіант, який призводить до повторних випробувань та переоцінок.

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

Таким чином, мистецтво моделювання полягає у здатності аналізувати проблему, виділяти з неї шляхом абстракції її суттєві риси, вибирати і належним чином модифікувати основні припущення, що характеризують систему, а потім відпрацьовувати і вдосконалювати модель доти, доки вона не стане давати корисні для практики результати . Зазвичай формулюють це у вигляді семи вказівок, згідно з якими належить:

− розкласти загальне завдання дослідження системи на ряд більш простих задач;

− чітко сформулювати цілі;

− підшукати аналогії;

− розглянути спеціальний чисельний приклад, який відповідає даному завданню;

− вибрати певні позначення;

− записати очевидні співвідношення;

− якщо отримана модель піддається математичному опису, розширити її. Інакше спростити.

Взагалі кажучи, спростити модель можна, виконавши одну з наведених нижче операцій (у той час як для розширення моделі потрібно саме зворотне):

− перетворити змінні величини на константи;

− виключити деякі змінні або об'єднати їх;

− припустити лінійну залежність між досліджуваними величинами;

− запровадити більш жорсткі припущення та обмеження;

− накласти на систему жорсткіші граничні умови.

Еволюційний характер процесу конструювання моделі неминучий і бажаний, тому ми повинні думати, що цей процес зводиться до побудови одного-єдиного базового варіанту моделі. У міру того як досягаються мети і вирішуються поставлені завдання, ставляться нові завдання або виникає необхідність досягнення більшої відповідності між моделлю і реальним об'єктом, що призводить до перегляду моделі та кращим її реалізаціям. Цей процес, у якому починають з побудови простий моделі, а; потім ускладнюють і відпрацьовують її має низку переваг з погляду успішного завершення розробки моделі. Темп та напрямок еволюційної зміни моделі залежать від двох головних факторів. Перший - це, очевидно, властива моделі гнучкість, і другий - взаємини між творцем моделі та її користувачем. За їхньої тісної співпраці протягом усього процесу еволюції моделі її розробник і користувач можуть створити атмосферу взаємної довіри та взаємовідносини, які сприятимуть отриманню кінцевих результатів, що задовольняють поставленим цілям, завданням та критеріям.

Мистецтво моделювання можуть опанувати ті, хто має оригінальне мислення, винахідливість і винахідливість, так само як і глибокі знання систем і фізичних явищ, які необхідно моделювати.

Не існує твердих та ефективних правил щодо того, як
треба формулювати завдання на початку процесу моделювання, тобто. відразу ж після першого знайомства із нею. Не існує і магічних формул для вирішення при побудові моделі таких питань, як вибір змінних та параметрів, співвідношень, що описують поведінку системи, та обмежень, а також критеріїв оцінки ефективності моделі. Необхідно пам'ятати, що ніхто не вирішує завдання у чистому вигляді, кожен оперує з моделлю, яку він побудував, виходячи з поставленого завдання.

Імітація тісно пов'язана із функціонуванням системи. Система є
група або сукупність об'єктів, об'єднаних якоюсь формою регулярної взаємодії чи взаємозалежності з метою виконання певної функції.

Прикладами систем можуть бути: промислове підприємство, організація, транспортна мережа, лікарня, проект забудови міста, людина та машина, якою він керує. Функціонування системи є сукупність координованих дій, необхідні виконання певної задачи. З цього погляду системам, якими ми цікавимося, властива цілеспрямованість. Ця обставина вимагає від нас при моделюванні системи звернути найпильнішу увагу на цілі чи завдання, які має вирішувати дана система. Ми повинні постійно пам'ятати про завдання системи та моделі, щоб досягти необхідної відповідності між ними.

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

Нарешті завжди слід пам'ятати про споживача інформації, яку дозволяє отримати наша модель. Не можна виправдати розробку імітаційної моделі, якщо її в кінцевому рахунку не можна використовувати або якщо вона не приносить користь особі, яка приймає рішення.

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

Зважаючи на все це, можна сформулювати конкретні критерії, яким повинна задовольняти хороша модель. Така модель має бути:

− простий та зрозумілий користувачеві;

− цілеспрямованої;

− надійної у сенсі гарантії від абсурдних відповідей;

− зручною в управлінні та зверненні, тобто. спілкування з нею має бути легким;

− повної з погляду можливостей вирішення головних завдань; адаптивної, що дозволяє легко переходити до інших модифікацій або оновлювати дані;

− що допускає поступові зміни у тому сенсі, що, будучи спочатку простою, вона може у взаємодії з користувачем ставати все складнішою.

Виходячи з того, що імітація повинна застосовуватись для дослідження
реальних систем можна виділити такі етапи цього процесу:

− визначення системи - встановлення меж, обмежень та вимірювачів ефективності системи, що підлягає вивченню;

− формулювання моделі - перехід від реальної системи до деякої логічної схеми (абстрагування);

− підготовка даних - відбір даних, необхідних для побудови моделі, та подання їх у відповідній формі;

− трансляція моделі - опис моделі мовою, прийнятною для
використовуваної ЕОМ;

− оцінка адекватності - підвищення до прийнятного рівня впевненості, з якою можна судити щодо коректності висновків про реальну систему, отриманих на підставі звернення до моделі;

− стратегічне планування – планування експерименту, який має дати необхідну інформацію;

− тактичне планування - визначення способу проведення кожної серії випробувань, передбачених планом експерименту;

− експериментування - процес здійснення імітації з метою отримання бажаних даних та аналізу чутливості;

− інтерпретація - побудова висновків за даними, отриманими шляхом імітації;

− реалізація - практичне використання моделі та (або) результатів моделювання;

− документування - реєстрація ходу здійснення проекту та його результатів, а також документування процесу створення та використання моделі.

Перелічені етапи створення та використання моделі визначені у припущенні, що завдання може бути вирішено найкращим чином за допомогою імітаційного моделювання. Однак, як ми вже зазначали, це може бути і не найефективніший спосіб. Неодноразово вказувалося, що імітація є крайнє засіб або грубий силовий прийом, що застосовується для вирішення задачі. Безперечно, що в тому випадку, коли завдання може бути зведене до простої моделі та вирішено аналітично, немає жодної потреби в імітації. Слід шукати всі можливі засоби, придатні на вирішення даної конкретної завдання, прагнучи у своїй оптимального поєднання вартості і бажаних результатів. Перш ніж приступати до оцінки можливостей імітації, слід переконатися, що проста аналітична модель для цього випадку не придатна.

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

Для проведення попередніх досліджень виділяється відповідний працівник (зазвичай із групи, пов'язаної з цією проблемою). На певному етапі визнається, що для вивчення проблеми можуть бути корисними кількісні методи дослідження, і тоді на сцені з'являється математик. Так починається етап визначення постановки задачі.

Ейнштейн якось сказав, що правильна постановка завдання навіть важливіша, ніж її вирішення. Для того, щоб знайти прийнятне або оптимальне рішення задачі, необхідно спочатку знати, у чому вона полягає.

Більшість практичних завдань повідомляється керівникам науково-
дослідних підрозділів у недостатньо чіткій, неточній формі. У багатьох випадках керівництво не може або не здатне правильно висловити суть своїх проблем. Воно знає, що проблема існує, але може точно сформулювати, яка це проблема. Тому аналіз системи зазвичай починається з пошукового вивчення системи під керівництвом відповідальної особи, уповноваженої приймати рішення. Дослідницька група повинна розуміти і чітко формулювати ряд завдань і цілей, що підходять до даного випадку. Досвід показує, що постановка завдання є безперервним процесом, що пронизує весь хід дослідження. Це дослідження безперервно породжує нову інформацію, що стосується обмежень, завдань та можливих альтернативних варіантів. Така інформація повинна періодично використовуватися з метою оновлення формулювання та постановки завдання.

Важливою частиною завдання є визначення характеристик системи, що підлягає вивченню. Усі системи – це підсистеми інших більших систем. Тому ми повинні визначити цілі та обмеження, які нам слід враховувати у процесі абстрагування чи побудови формальної моделі. Кажуть, що проблему можна визначити як стан незадоволеної потреби. Ситуація стає проблемною, коли дія будь-якої системи не дає бажаних результатів.

Якщо бажаних результатів не досягається, виникає потреба
модифікувати систему чи навколишні умови, у яких вона функціонує. Математично можна визначити проблему в такий спосіб (1.2):

(1.2)

де Р t - Стан проблеми в момент часу t;

D t - бажаний стан у момент часу t;

A t - Справжній стан в момент часу t.

Рисунок 1.3 – Етапи процесу імітації

Тому перший крок у визначенні характеристик системи, що підлягає вивченню, полягає у проведенні аналізу потреб того середовища, для якого призначається система. Цей аналіз починається з визначення цілей та граничних умов (тобто того, що є і що не є частиною системи, що підлягає вивченню). Нас цікавлять тут два функціональні межі, або два інтерфейси: кордон, що відокремлює нашу проблему від решти світу, і межу між системою та навколишнім середовищем (тобто що ми вважаємо складовою частиною системи і що становить середовище, в якому ця система працює) . Ми можемо описати, що відбувається в межах самої системи різними способами. Якби ми не зупинилися на якомусь наборі елементів та взаємозв'язків, які слід вивчити, маючи на увазі цілком певну мету, перед нами була б нескінченна кількість зв'язків та поєднань.

Окресливши цілі та завдання дослідження та визначивши межі системи, ми далі зводимо реальну систему до логічної блок-схеми або до статичної моделі. Ми хочемо побудувати таку модель реальної системи, яка, з одного боку, не буде така спрощена, що стане тривіальною, а з іншого - не буде настільки деталізована, що стане громіздкою в обігу та надмірно дорогою. Небезпека, яка підстерігає нас при побудові логічної блок-схеми реально діючої системи, полягає в тому, що модель має тенденцію обростати деталями та елементами, які часом нічого не вносять у розуміння цього завдання.

Тому майже завжди спостерігається тенденція імітувати надмірну кількість деталей. Щоб уникнути такого становища слід будувати модель, орієнтовану вирішення питань, куди потрібно знайти відповіді, а чи не імітувати реальну систему- у всіх подробицях. Закон Парето говорить, що в кожній групі чи сукупності існує життєво важлива меншість і тривіальна більшість. Нічого дійсно важливого не відбувається, поки не торкнеться життєво важливої ​​меншості. Системні аналітики дуже часто прагнули перенести всі посилені деталі складності реальних ситуацій у модель, сподіваючись, що ЕОМ вирішить їхні проблеми. Такий підхід незадовільний не тільки тому, що зростають труднощі програмування моделі і вартість експериментальних прогонів, що подовжуються, але і тому, що дійсно важливі аспекти і взаємозв'язки можуть потонути в масі тривіальних деталей. Ось чому модель повинна відображати ті аспекти системи, які відповідають завданням дослідження.

У багатьох дослідженнях моделювання може закінчитися. У напрочуд великому числі випадків в результаті точного і послідовного опису ситуацій стають очевидні дефекти та «вузькі місця» системи, тому необхідність продовжувати дослідження за допомогою імітаційних методів відпадає.

Кожне дослідження охоплює і збирання даних, під яким зазвичай розуміють отримання якихось чисельних характеристик. Але це лише одна сторона збору даних. Системного аналітика повинні цікавити вхідні та вихідні дані системи, що вивчається, а також інформація про різні компоненти системи, взаємозалежності та співвідношення між ними. Тому зацікавлений у зборі як кількісних, і якісних даних; він повинен вирішити, які з них необхідні, наскільки вони відповідають поставленому завданню та як зібрати всю цю інформацію.

Створюючи стохастичну імітаційну модель, завжди доводиться вирішувати, чи слід моделі використовувати наявні емпіричні дані безпосередньо або доцільно використовувати теоретико-імовірнісні або частотні розподіли. Цей вибір має фундаментальне значення з трьох причин. По-перше, використання необроблених емпіричних даних означає, що, хоч би як ми намагалися, можна імітувати лише минуле. Використання даних за один рік відобразить роботу системи за цей рік і не обов'язково скаже нам про очікувані особливості роботи системи в майбутньому. При цьому можливими будуть вважатися ті події, які вже відбувалися. Одна справа припускати, що цей розподіл у своїй основній формі буде незмінним у часі, і зовсім інша справа вважати, що характерні риси цього року завжди повторюватимуться. По-друге, у випадку застосування теоретичних частотних чи ймовірнісних розподілів з урахуванням вимог до машинного часу і пам'яті ефективніше, ніж використання табличних даних щоб одержати випадкових варіаційних рядів, необхідні роботи з моделлю. По-третє, дуже бажано і навіть, мабуть, обов'язково, щоб аналітик-розробник моделі визначив її чутливість до зміни виду ймовірнісних розподілів і значень параметрів. Іншими словами, дуже важливими є випробування моделі на чутливість кінцевих результатів до зміни вихідних даних. Таким чином, рішення щодо придатності даних для використання, їх достовірності, форми подання, ступеня відповідності теоретичним розподілам та минулим результатам функціонування системи – все це сильно впливає на успіх експерименту з імітаційного моделювання і не є плодом суто теоретичних висновків.

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

Перевірка моделі – етап надзвичайно важливий, оскільки імітаційні моделі викликають враження реальності, і як розробники моделей, і їх користувачі легко переймаються довірою. На жаль, для випадкового спостерігача, а іноді й для фахівця, досвідченого у питаннях моделювання бувають приховані вихідні припущення, на основі яких будувалася ця модель. Тому перевірка, виконана без ретельності, може призвести до катастрофічних наслідків.


Подібна інформація.


У статті поговоримо про імітаційні моделі. Це досить складна тема, яка потребує окремого розгляду. Саме тому спробуємо доступною мовою пояснити це питання.

Імітаційні моделі

Про що йдеться? Почнемо з того, що імітаційні моделі необхідні для відтворення будь-яких характеристик складної системи, де відбувається взаємодія елементів. При цьому таке моделювання має низку особливостей.

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

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

Вона у тому, кожен об'єкт має певний набір своїх характеристик. Усі вони зберігаються у комп'ютері з допомогою спеціальних таблиць. Взаємодія значень та показників завжди описується за допомогою алгоритму.

Особливість і принадність моделювання в тому, що кожен його етап поступовий і плавний, що дає можливість покроково змінювати характеристики та параметри та отримувати різні результати. Програма, в якій задіяні імітаційні моделі, виводить інформацію про результати, спираючись на ті чи інші зміни. Часто використовується графічне чи анімоване їхнє уявлення, що дуже спрощує сприйняття та розуміння багатьох складних процесів, які усвідомити в алгоритмічному вигляді досить складно.

Детермінованість

Імітаційні математичні моделі будуються у тому, що вони копіюють якості та показники деяких реальних систем. Розглянемо приклад, коли необхідно досліджувати кількість та динаміку чисельності певних організмів. Для цього за допомогою моделювання можна окремо розглядати кожен організм, щоб аналізувати його показники. У цьому умови найчастіше задаються вербально. Наприклад, після якогось відрізка часу можна задати розмноження організму, а після більш тривалого терміну - його загибель. Виконання всіх цих умов можливе в імітаційній моделі.

Дуже часто наводять приклади моделювання руху молекул газу, адже відомо, що рухаються вони хаотично. Можна вивчати взаємодію молекул зі стінками судини або один з одним та описувати результати у вигляді алгоритму. Це дозволить отримувати усереднені характеристики всієї системи та виконувати аналіз. При цьому треба розуміти, що подібний комп'ютерний експеримент, по суті, можна назвати реальним, тому що всі характеристики моделюються дуже точно. Але в чому сенс цього процесу?

Справа в тому, що імітаційна модель дозволяє виділити конкретні та чисті характеристики та показники. Вона хіба що позбавляється випадкових, зайвих і ще інших чинників, про які дослідники можуть навіть здогадуватися. Зауважимо, що дуже часто детермінування та математичне моделювання схожі, якщо як результат не повинна бути створена автономна стратегія дій. Приклади, які ми розглянули вище, стосуються детермінованих систем. Вони відрізняються тим, що вони не мають елементів ймовірності.

Випадкові процеси

Найменування дуже просто зрозуміти, якщо провести паралель зі звичайного життя. Наприклад, коли ви стоїте в черзі в магазині, який закривається через 5 хвилин, і гадаєте, чи встигнете придбати товар. Також вияв випадковості можна помітити, коли ви дзвоните комусь і вважаєте гудки, думаючи, з якою ймовірністю додзвонитеся. Можливо, комусь це здасться дивним, але завдяки таким простим прикладам на початку минулого століття зародилася найновіша галузь математики, а саме теорія масового обслуговування. Вона використовує статистику та теорію ймовірності для того, щоб зробити деякі висновки. Пізніше дослідники довели, що ця теорія дуже тісно пов'язана з воєнною справою, економікою, виробництвом, екологією, біологією тощо.

Метод Монте-Карло

Важливий метод розв'язання задачі на самообслуговування – це метод статистичних випробувань чи метод Монте-Карло. Зауважимо, що можливості дослідження випадкових процесів аналітичним шляхом є досить складними, а метод Монте-Карло дуже простий і універсальний, у чому його головна особливість. Ми можемо розглянути приклад магазину, в який заходить один покупець або кілька, прихід хворих до травмпункту по одному або цілому натовпу і т. д. При цьому ми розуміємо, що все це випадкові процеси, і проміжки часу між якимись діями – це незалежні події, які розподіляються за законами, які можна вивести, лише провівши велику кількість спостережень. Іноді це неможливо, тому береться усереднений варіант. Але якою є мета моделювання випадкових процесів?

Справа в тому, що це дозволяє отримати відповіді на багато запитань. Банально необхідно розрахувати, скільки людині доведеться стояти в черзі з урахуванням усіх обставин. Здавалося б, це досить простий приклад, але це лише перший рівень, а таких ситуацій може бути дуже багато. Іноді розрахувати час дуже важливо.

Також можна поставити питання про те, як можна розподілити час, чекаючи на обслуговування. Ще складніше питання стосується того, як повинні співвіднестися параметри, щоб до покупця, що тільки що увійшов, черга не дійшла ніколи. Здається, що це досить легке питання, але якщо подумати про нього і почати хоча б трохи ускладнювати, стає зрозуміло, що відповісти не так легко.

Процес

Як відбувається випадкове моделювання? Використовуються математичні формули, саме закони розподілу випадкових величин. Також використовуються числові константи. Зауважте, що в даному випадку не треба вдаватися до жодних рівнянь, які використовують при аналітичних методах. В даному випадку просто відбувається імітація тієї самої черги, про яку ми говорили вище. Тільки спочатку використовуються програми, які можуть генерувати випадкові числа та співвідносити їх із заданим законом розподілу. Після цього проводиться об'ємна, статистична обробка отриманих величин, яка аналізує дані на предмет, чи вони відповідають початковій меті моделювання. Продовжуючи далі, скажімо, що можна знайти оптимальну кількість людей, які працюватимуть у магазині для того, щоб черга не виникала ніколи. У цьому використовуваний математичний апарат у разі - це методи математичної статистики.

Утворення

Аналізу імітаційних моделей у школах приділяється мало уваги. На жаль, це може вплинути на майбутнє досить серйозно. Діти повинні зі школи знати деякі базові принципи моделювання, оскільки розвиток сучасного світу без цього процесу неможливий. У базовому курсі інформатики діти можуть легко використовувати імітаційну модель "Життя".

Більш ґрунтовне вивчення може викладатися у старших класах або у профільних школах. Насамперед треба зайнятися вивченням імітаційного моделювання випадкових процесів. Пам'ятайте, що в російських школах таке поняття та методи тільки починають вводитися, тому дуже важливо тримати рівень освіти вчителів, які зі стовідсотковою гарантією зіштовхнуться із низкою питань від дітей. При цьому не ускладнюватимемо завдання, акцентуючи увагу на тому, що йдеться про елементарне введення в цю тему, яке можна докладно розглянути за 2 години.

Після того як діти засвоїли теоретичну базу, варто висвітлити технічні питання, що стосуються створення послідовності випадкових чисел на комп'ютері. У цьому не треба завантажувати дітей інформацією у тому, як працює обчислювальна машина і яких принципах будується аналітика. З практичних навичок їх треба вчити створювати генератори рівномірних випадкових чисел на відрізку чи випадкових чисел згідно із законом розподілу.

Актуальність

Поговоримо трохи про те, навіщо потрібні імітаційні моделі керування. Справа в тому, що у сучасному світі обійтися без моделювання практично неможливо у будь-якій сфері. Чому ж воно так затребуване і популярне? Моделювання може замінити реальні події, необхідні для отримання конкретних результатів, створення та аналіз яких коштують надто дорого. Або ж може бути нагода, коли проводити реальні експерименти заборонено. Також люди користуються ним, коли просто неможливо побудувати аналітичну модель через низку випадкових факторів, наслідків та причинних зв'язків. Останній випадок, коли використовується цей метод - це тоді, коли необхідно імітувати поведінку будь-якої системи протягом даного відрізка часу. Для цього створюються симулятори, які намагаються максимально відтворити якості початкової системи.

Види

Імітаційні моделі дослідження може бути кількох видів. Розглянемо підходи імітаційного моделювання. Перше - це системна динаміка, яка виявляється у тому, що є пов'язані між собою змінні, певні накопичувачі та зворотний зв'язок. Таким чином, найчастіше розглядаються дві системи, в яких є деякі загальні характеристики та точки перетину. Наступний вид моделювання – дискретно-подійне. Воно стосується тих випадків, коли є певні процеси та ресурси, а також послідовність дій. Найчастіше в такий спосіб досліджують можливість тієї чи іншої події через призму низки можливих чи випадкових чинників. Третій вид моделювання – агентний. Він у тому, що вивчаються індивідуальні властивості організму їх системі. При цьому необхідна непряма або пряма взаємодія об'єкта, що спостерігається, та інших.

Дискретно-подійне моделювання пропонує абстрагуватися від безперервності подій та розглядати лише основні моменти. Таким чином, випадкові і зайві фактори виключаються. Цей метод максимально розвинений, і він використовується в багатьох сферах: від логістики до виробничих систем. Саме він найкраще підходить для моделювання виробничих процесів. До речі, його створив у 1960-х роках Джеффрі Гордон. Системна динаміка - це парадигма моделювання, де дослідження необхідно графічне зображення зв'язків і взаємних впливів одних параметрів інші. У цьому враховується чинник часу. Тільки основі всіх даних створюється глобальна модель на комп'ютері. Саме цей вид дозволяє дуже глибоко зрозуміти суть досліджуваної події та виявити якісь причини та зв'язки. Завдяки цьому моделюванню будують бізнес-стратегії, моделі виробництва, розвиток хвороб, планування міста тощо. Цей метод було винайдено у 1950-х роках Форрестером.

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

Етапи

Наразі розглянемо основні етапи розробки імітаційної моделі. Вони включають її формулювання на початку процесу, побудова концептуальної моделі, вибір способу моделювання, вибір апарату моделювання, планування, виконання завдання. На останньому етапі відбувається аналіз та обробка всіх отриманих даних. Побудова імітаційної моделі - це складний та тривалий процес, який потребує великої уваги та розуміння суті справи. Зверніть увагу, що самі етапи займають максимум часу, а процес моделювання на комп'ютері - не більше декількох хвилин. Дуже важливо використовувати правильні моделі імітаційного моделювання, тому що без цього не вдасться досягти потрібних результатів. Які дані отримані будуть, але вони будуть не реалістичні і не продуктивні.

Підбиваючи підсумки статті, хочеться сказати, що це дуже важлива та сучасна галузь. Ми розглянули приклади імітаційних моделей, щоб зрозуміти важливість усіх цих моментів. У світі моделювання грає величезну роль, оскільки з його основі розвиваються економіка, містобудування, виробництво тощо. Важливо розуміти, що моделі імітаційних систем дуже затребувані, оскільки вони неймовірно вигідні та зручні. Навіть під час створення реальних умов який завжди можна отримати достовірні результати, оскільки завжди впливає безліч схоластичних чинників, які врахувати просто неможливо.

Імітаційні моделі

Імітаційна модельвідтворює поведінкуня складної системи взаємодіючих елементівтов.Для імітаційного моделювання характерна наявність наступних обставин (одночасно всіх або деяких із них):

  • об'єкт моделювання – складна неоднорідна система;
  • у моделюваній системі присутні фактори випадкової поведінки;
  • потрібно отримати опис процесу, що розвивається у часі;
  • Неможливо отримати результати моделювання без використання комп'ютера.

Стан кожного елемента моделі, що моделюється, описується набором параметрів, які зберігаються в пам'яті комп'ютера у вигляді таблиць. Взаємодія елементів системи описуються алгоритмічно. Моделювання здійснюється у покроковому режимі. На кожному кроці моделювання змінюються параметри системи. Програма, що реалізує імітаційну модель, відображає зміну стану системи, видаючи значення її параметрів, що шукаються, у вигляді таблиць за кроками часу або в послідовності що відбуваються в системі подій. Для візуалізації результатів моделювання часто використовується графічне уявлення, зокрема. анімоване.

Детерміноване моделювання

Імітаційна модель заснована на наслідуванні реального процесу (імітації). Наприклад, моделюючи зміну (динаміку) чисельності мікроорганізмів у колонії, можна розглядати багато окремих об'єктів і слідкувати за долею кожного з них, ставлячи певні умови для його виживання, розмноження тощо. Ці умови зазвичай задаються у вербальній формі. Наприклад: після деякого проміжку часу мікроорганізм ділиться на дві частини, а після іншого (більшого) тимчасового відрізка - гине. Виконання описаних умов алгоритмічно реалізується у моделі.

Інший приклад: моделювання руху молекул у газі, коли кожна молекула представляється у вигляді кульки з певним напрямком та швидкістю руху. Взаємодія двох молекул або молекули зі стінкою судини відбувається відповідно до законів абсолютно пружного зіткнення і легко описується алгоритмічно. Отримання інтегральних (загальних, усереднених) параметрів системи виробляється лише на рівні статистичної обробки результатів моделювання.

Такий комп'ютерний експеримент фактично претендує відтворення натурного експерименту. На запитання: "Навіщо це потрібно робити?" можна дати наступну відповідь: імітаційне моделювання дозволяє виділити "в чистому вигляді" наслідки гіпотез, закладених у уявлення про мікроподії (тобто на рівні елементів системи), позбавивши їх неминучого в натурному експерименті впливу інших факторів, про які ми можемо навіть не підозрювати. Якщо таке моделювання включає і елементи математичного опису процесів на мікрорівні, і якщо дослідник при цьому не ставить завдання пошуку стратегії регулювання результатів (наприклад, управління чисельністю колонії мікроорганізмів), то відмінність імітаційної моделі від математичної (дескриптивної) виявляється досить умовною.

Наведені вище приклади імітаційних моделей (еволюція колонії мікроорганізмів, рух молекул у газі) призводять до детермінірованномуопис систем. Вони відсутні елементи ймовірності, випадковості подій в системах, що моделюються. Розглянемо приклад моделювання системи, що має ці якості.

Моделі випадкових процесів

Кому не траплялося стояти в черзі і з нетерпінням прикидати, чи встигне він зробити покупку (або заплатити за квартиру, покататися на каруселі тощо) за деякий час? Або, намагаючись зателефонувати до довідкової і натикаючись кілька разів на короткі гудки, нервувати і оцінювати - додзвонюся чи ні? З таких "простих" проблем на початку XX століття народилася нова галузь математики - теорія масового обслуговування, що використовує апарат теорії ймовірностей та математичної статистики, диференціальних рівнянь та чисельних методів. Згодом з'ясувалося, що ця теорія має численні виходи в економіку, військову справу, організацію виробництва, біологію та екологію тощо.

Комп'ютерне моделювання під час вирішення завдань масового обслуговування, реалізоване як методу статистичних випробувань (методу Монте-Карло), грає значної ролі. Можливості аналітичних методів вирішення реально виникаючих завдань масового обслуговування дуже обмежені, у той час як метод статистичних випробувань є універсальним і відносно простим.

Розглянемо найпростіше завдання цього. Є магазин з одним продавцем, який випадково входять покупці. Якщо продавець вільний, він починає обслуговувати покупця відразу, якщо зайшло одночасно кілька покупців - вибудовується черга. Є чимало інших аналогічних ситуацій:

  • ремонтна зона на автогосподарстві та автобуси, що зійшли з лінії через поломку;
  • травмпункт та хворі, які прийшли на прийом з нагоди травми (тобто без системи попереднього запису);
  • телефонна станція з одним входом (або однією телефоністкою) та абоненти, яких при зайнятому вході ставлять у чергу (така система іноді
    практикується);
  • сервер локальної мережі та персональні машини на робочому місці, які шлють повідомлення серверу, здатному сприйняти разом і обробити не більше одного повідомлення.

Процес приходу покупців у магазин – випадковий процес. Проміжки часу між приходами будь-якої послідовної пари покупців - незалежні випадкові події, розподілені за деяким законом, який можна встановити лише шляхом численних спостережень (чи моделювання взятий певний його правдоподібний варіант). Другий випадковий процес у цьому завданні, ніяк не пов'язаний з першим, – тривалість обслуговування кожного з покупців.

Метою моделювання систем такого виду є отримання відповіді на низку питань. Щодо просте питання – яке в середньому час доведеться стояти і черги за заданих законів розподілу зазначених вище випадкових величин? Більш складне питання; який розподіл часів очікування обслуговування у черзі? Не менш складне питання: при яких співвідношеннях параметрів вхідних розподілів настане криза, при якій черга до покупця, що знову увійшов, не дійде ніколи? Якщо замислитися над цим відносно простим завданням, можливі питання будуть множитися.

Спосіб моделювання виглядає загалом так. Використовувані математичні формули - закони розподілу вихідних випадкових величин; використовувані числові константи - емпіричні параметри, що входять до цих формул. Не вирішується жодних рівнянь, які б використовувалися при аналітичному дослідженні даної задачі. Натомість відбувається імітація черги, що розігрується за допомогою комп'ютерних програм, що генерують випадкові числа із заданими законами розподілу. Потім проводиться статистична обробка сукупності одержаних значень величин, що визначаються заданими цілями моделювання. Наприклад, є оптимальна кількість продавців для різних періодів часу роботи магазину, яка забезпечить відсутність черг. Математичний апарат, який тут використовується, називається методами математичної статистики.

У статті "Моделювання екологічних систем та процесів" описаний інший приклад імітаційнийногомоделювання: одна з багатьох моделей системи "хижак-жертва". Особи видів, що у зазначених відносинах, за певними правилами, які містять елементи випадковості, переміщуються, хижаки з'їдають жертв, і ті й інші розмножуються тощо. Такамодель не містить жодних математичних формул, але вимагає статистічноїобробки результатів

Приклад алгоритму детермінованої імітаційної моделі

Розглянемо імітаційну модель еволюції популяції живих організмів, відому під назвою "Життя", яку легко реалізувати будь-якою мовою програмування.

Для побудови алгоритму гри розглянемо квадратне поле з п -\- 1стовпців та рядків зі звичайною нумерацією від 0 до п.Крайні граничні стовпці та рядки для зручності визначимо як "мертву зону", вони грають лише допоміжну роль.

Для будь-якої внутрішньої клітини поля з координатами (i,j) можна визначити 8 сусідів. Якщо клітка "жива", її зафарбовуємо, якщо клітка "мертва", вона порожній.

Поставимо правила гри. Якщо клітина (i,j) "жива" і її оточує понад три "живі" клітини, вона гине (від перенаселення). "Жива" клітина також гине, якщо в її оточенні знаходиться менше двох "живих" клітин (від самотності). "Мертва" клітина оживає, якщо навколо неї з'являються три "живі" клітини.

Для зручності введемо двовимірний масив А, елементи якого набувають значення 0, якщо відповідна клітина порожня, і 1, якщо клітина "жива". Тоді алгоритм визначення стану клітини з координатою (i, j) можна визначити так:

S:=A+A+A+A+A+A+A;
If (A = 1) And (S> 3) Or (S< 2)) Then B: =0;
If (A = 0) And (S = 3)
Then B: = 1;

Тут масив визначає координати поля на наступному етапі. Для всіх внутрішніх клітин від i = 1 до n - 1 і j = 1 до n - 1 справедливо сказане вище. Зазначимо, що наступні покоління визначаються аналогічно, варто лише здійснити процедуру перепривласнення:

For I: = 1 То N - 1 Do
For J: = 1 То N - 1 Do
A: = В;

На екрані дисплея зручніше виводити стан поля над матричному, а графічному вигляді.
Залишилося лише визначити процедуру завдання початкової конфігурації ігрового поля. При випадковому визначенні початкового стану клітин підходить алгоритм

Для I: = 1 To K Do
Починаючи з K1: = Random (N-1);
K2:= Random (N-1)+1;
End;

Цікавіше для користувача самому задавати початкову конфігурацію, що легко здійснити. В результаті експериментів з цією моделлю можна знайти, наприклад, стійкі розселення живих організмів, які ніколи не гинуть, залишаючись незмінними або змінюючи свою конфігурацію з певним періодом. Абсолютно нестійким (що гине у другому поколінні) є розселення "хрестом".

У базовому курсі інформатики учні можуть реалізувати імітаційну модель "Життя" у рамках розділу "Вступ до програмування". Більше ґрунтовне освоєння імітаційного моделювання може відбуватися у старших класах у профільному або елективному курсі інформатики. Далі буде говорити про такий варіант.

Початок вивчення – лекція про імітаційне моделювання випадкових процесів. У російській школі поняття теорії ймовірностей і математичної статистики лише починають впроваджуватися в курс математики, і вчителю слід бути готовим до того, щоб зробити введення в цей найважливіший для формування світогляду і математичної культури матеріал. Підкреслимо, що йдеться про елементарне введення в коло понять, що обговорюються; це можна зробити за 1-2 години.

Потім обговорюємо технічні питання, пов'язані з генерацією на ЕОМ послідовностей випадкових чисел із заданим законом розподілу. Спиратися при цьому можна на те, що в кожній універсальній мові програмування є датчик рівномірно розподілених на відрізку від 0 до 1 випадкових чисел. На даному етапі недоцільно вдаватися до складного питання про принципи його реалізації. Спираючись на наявні датчики випадкових чисел, показуємо, як можна влаштувати

а) генератор рівномірно розподілених випадкових чисел на будь-якому відрізку [а, b];

б) генератор випадкових чисел під практично будь-який закон розподілу (наприклад, використовуючи інтуїтивно ясний метод відбору-відмови).

Розпочати розгляд описаного вище завдання масового обслуговування доцільно з обговорення історії вирішення проблем масового обслуговування (завдання Ерланга про обслуговування запитів на телефонній станції). Потім слід розгляд найпростішого завдання, яке можна сформулювати з прикладу формування та обстеження черги у магазині з одним продавцем. Зазначимо, що на першому етапі моделювання розподілу випадкових величин на вході можна прийняти рівноймовірними, що хоч і не реалістично, але знімає ряд труднощів (для генерації випадкових чисел можна просто використовувати вбудований у мову програмування датчик).

Звертаємо увагу учнів те що, які питання ставляться насамперед при моделюванні систем такого виду. По-перше, це обчислення середніх значень (математичних очікувань) деяких випадкових величин. Наприклад, який середній час доводиться стояти у черзі до прилавка? Або: знайти середній час, проведений продавцем в очікуванні покупця.

Завдання вчителя, зокрема, у тому, щоб пояснити, що вибіркові середні власними силами - випадкові величини; в іншій вибірці того ж обсягу вони будуть мати інші значення (при великих обсягах вибірки - не дуже відрізняються один від одного). Можливі варіанти: у більш підготовленій аудиторії можна показати спосіб оцінювання довірчих інтервалів, в яких знаходяться математичні очікування відповідних випадкових величин при заданих довірчих ймовірностях (відомими з математичної статистики методами без спроби обґрунтування). У менш підготовленій аудиторії можна обмежитися суто емпіричним твердженням: якщо у кількох вибірках рівного обсягу середні значення співпали у певному десятковому знаку, цей знак швидше за все вірний. Якщо при моделюванні не вдалося досягти бажаної точності, слід збільшити обсяг вибірки.

У ще більш підготовленої в математичному відношенні аудиторії можна порушувати питання: який розподіл випадкових величин, що є результатами статистичного моделювання, при заданих розподілах випадкових величин, що є його вхідними параметрами? Оскільки виклад відповідної математичної теорії у разі неможливо, слід обмежитися емпіричними прийомами: побудова гістограм підсумкових розподілів і порівняння їх із декількома типовими функціями розподілу.

Після відпрацювання первинних навичок зазначеного моделювання переходимо до більш реалістичної моделі, в якій вхідні потоки випадкових подій розподілені, наприклад, Пуассону. Це вимагатиме від учнів додатково освоїти метод генерування послідовностей випадкових чисел із зазначеним законом розподілу.

У розглянутій задачі, як і в будь-якій складнішій задачі про черги, може виникнути критична ситуація, коли черга необмежено зростає з часом. Моделювання наближення до критичної ситуації в міру зростання одного з параметрів - цікаве дослідження для найбільш підготовлених учнів.

На прикладі завдання про чергу відпрацьовуються відразу кілька нових понять та навичок:

  • поняття про випадкові процеси;
  • поняття та найпростіші навички імітаційного моделювання;
  • побудова оптимізаційних імітаційних моделей;
  • побудова багатокритеріальних моделей (шляхом вирішення завдань про найбільш раціональне обслуговування покупців у поєднанні з інтересами
    власника магазину).

Завдання :

    1. Скласти схему ключових понять;
  • Підібрати практичні завдання з рішеннями для базового та профільного курсів інформатики.

Імітаційне моделювання.

Концепція імітаційної моделі.

Підходи до побудови імітаційних моделей.

За визначенням академіка В.Маслова: «імітаційне моделювання полягає насамперед у конструюванні уявної моделі (імітатора), що імітує об'єкти та процеси (наприклад, верстати та їх роботу) за потрібними (але неповними) показниками: наприклад, за часом роботи, інтенсивності, економічним витрат, розташування в цеху і т.п. Саме неповнота опису об'єкта робить імітаційну модель принципово відмінну від математичної у традиційному сенсі цього слова. Далі відбувається перебір у діалозі з ЕОМ великої кількості можливих варіантів та вибір у конкретні терміни найбільш прийнятних з погляду інженера рішень. При цьому використовується інтуїція та досвід інженера, який приймає рішення, що розуміє всю складну ситуацію на виробництві.

При дослідженні таких складних об'єктів оптимального рішення в математичному сенсі взагалі можна не знайти. Зате можна отримати прийнятне рішення порівняно короткі терміни. Імітаційна модель включає евристичні елементи, використовує іноді неточну і суперечливу інформацію. Цим імітаційне моделювання ближче до реального життя і доступніше для користувачів – інженерів у промисловості. У діалозі з ЕОМ фахівці розширюють свій досвід, розвивають інтуїцію, передають їх імітаційної моделі.

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

Припустимо, що перехожий, стоячи на розі вулиці, вирішив прогулятися, щоб розігнати хміль. Нехай ймовірність того, що, досягнувши чергового перехрестя, він піде на північ, південь, схід чи захід, однакові. Якою є ймовірність того, що пройшовши 10 кварталів, перехожий виявиться не далі двох кварталів від місця, де він почав прогулянку?

Позначимо його місце розташування на кожному перехресті двовимірним вектором

(X1, X2) («вихід»), де

Кожне переміщення однією квартал на схід відповідає приросту X1 на 1, а кожне переміщення однією квартал на захід – зменшенню X1 на 1 (X1, X2 – дискретна змінна). Подібним чином переміщення перехожого на один квартал на північ X2 збільшується на 1, а на один квартал на південь – X2 зменшується на1.

Тепер, якщо ми позначимо початкове положення (0,0), то точно знатимемо, де буде перехожий щодо цього початкового положення.

Якщо наприкінці прогулянки сума абсолютних значень X1 і X2 буде більшою за 2, то вважатимемо, що він пішов далі за два квартали наприкінці прогулянки завдовжки 10 кварталів.

Оскільки можливість руху нашого перехожого у кожному з чотирьох можливих напрямів за умовою однакова і дорівнює 0,25 (1:4=0,25), можна оцінювати його пересування з допомогою таблиці випадкових чисел. Умовимося, якщо випадкове число (СЧ) лежить у межах від 0 до 24, п'яний піде на схід і ми збільшимо X1 на 1; якщо від 25 до 49, він піде на захід, і ми X1 зменшимо на 1; якщо від 50 до 74 він піде на північ, і ми X2 збільшимо на 1; якщо СЧ лежить у межах від 74 до 99, то перехожий піде на південь, і ми зменшимо X2 на 1.

Схема (а) та алгоритм (б) руху «п'яного перехожого».

а) б)

Потрібно провести досить велику кількість "машинних дослідів", щоб отримати достовірний результат. Але іншими методами це завдання вирішити практично неможливо.

У літературі метод імітаційного моделювання зустрічається також під назвами методу цифрового, машинного, статистичного, імовірнісного, динамічного моделювання чи методу машинної імітації.

Метод імітаційного моделювання можна розглядати як своєрідний експериментальний метод. На відміну від традиційного експерименту у тому, що як об'єкт експериментування виступає імітаційна модель, реалізована як програми на ЕОМ.

За допомогою імітаційної моделі неможливо одержати аналітичні залежності між величинами.

Можна певним чином обробити експериментальні дані та підібрати відповідні математичні вирази.

При створенні імітаційних моделей зараз використовуються два підходу: дискретний та безперервний.

Вибір підходу значною мірою визначається властивостями об'єкта – оригіналу та характером на нього зовнішнього середовища.

Проте, відповідно до теореми Котельникова, безперервний процес зміни станів об'єкта можна як послідовність дискретних станів і навпаки.

При використанні дискретного підходу до створення імітаційних моделей зазвичай використовуються абстрактні системи.

Безперервний підхід до побудови імітаційних моделей широко розвинений американським вченим Дж. Форрестер. Об'єкт, що моделюється, незалежно від його природи формалізується у вигляді безперервної абстрактної системи, між елементами якої циркулюють безперервні «потоки» тієї чи іншої природи.

Таким чином, під імітаційною моделлю об'єкта – оригіналу в загальному випадку ми можемо розуміти певну систему, що складається з окремих підсистем (елементів, компонентів) та зв'язків між ними (що володіє структурою), причому функціонування (зміна стану) та внутрішня зміна всіх елементів моделі під дією зв'язків може бути алгоритмізовано так чи інакше так само, як і взаємодія системи із зовнішнім середовищем.

Завдяки не лише математичним прийомам, а й добре відомим можливостям самої ЕОМ при імітаційному моделюванні можуть бути алгоритмізовані та відтворені процеси функціонування та взаємодії найрізноманітніших елементів абстрактних систем – дискретних та безперервних, ймовірнісних та детермінованих, що виконують функцію обслуговування, затримки та ін.

Як імітаційна модель об'єкта за такої постановки виступає програма на ЕОМ (разом з обслуговуючими, сервісними програмами), написана універсальною мовою високого рівня.

Академік Н.Н.Моїсеєв так сформулював поняття імітаційного моделювання: «Імітаційна система – це сукупність моделей, що імітують перебіг досліджуваного процесу, об'єднана зі спеціальною системою допоміжних програм та інформаційною базою, що дозволяє досить легко та оперативно реалізувати варіантні розрахунки».

Loading...Loading...