Можливості і ефективність моделювання систем на обчислювальних машинах
Математичне моделювання
Для дослідження характеристик процесу функціонування будь-якої системи S математичними методами, включаючи і машинні, повинна бути проведена формалізація цього процесу, тобто побудована математична модель.
Під математичним моделюванням будемо розуміти процес встановлення відповідності даному реальному об'єкту деякого математичного об'єкта, званого математичною моделлю, і дослідження цієї моделі, що дозволяє одержувати характеристики розглянутого реального об'єкта. Вид математичної моделі залежить як від природи реального об'єкта, так і від завдань дослідження об'єкта і необхідної достовірності та точності вирішення цих завдань. Будь-яка математична модель, як і всяка інша, описує реальний об'єкт лише з деяким ступенем наближення. Математичне моделювання можна розділити на аналітичне, імітаційне та комбіноване.
Для аналітичного моделювання характерно те, що процеси функціонування елементів системи записуються у вигляді деяких функціональних співвідношень (алгебраїчних, інтегро-диференціальних, кінцево-різницевих і т. п.) або логічних умов.
Аналітична модель може бути досліджена наступними методами: а) аналітичним, коли прагнуть отримати у загальному вигляді явні залежності для шуканих характеристик; б) чисельним, коли, не вміючи розв’язувати рівняння у загальному вигляді, прагнуть отримати числові результати при конкретних початкових даних; в) якісним, коли, не маючи розв’язку в явному вигляді, можна знайти деякі властивості розв’язку (наприклад, оцінити стійкість розв’язку).
Найбільш повне дослідження процесу функціонування систем можна провести, якщо відомі явні залежності, які зв'язують шукані характеристики з початковими умовами, параметрами та змінними системи S. Однак такі залежності вдається отримати тільки для порівняно простих систем. При ускладненні систем дослідження їх аналітичним методом наштовхується на значні труднощі, які часто бувають непереборними. Тому, для використання аналітичного методу, в таких випадках, йдуть на істотне спрощення первинної моделі, щоб мати можливість вивчити хоча б загальні властивості системи. Таке дослідження на спрощеній моделі аналітичним методом допомагає отримати орієнтовні результати для визначення більш точних оцінок іншими методами. Числові методи дають змогу досліджувати у порівнянні з аналітичним методом більш широкий клас систем, але при цьому отримані розв’язки носять частковий характер. Чисельні методи особливо ефективні при використанні ЕОМ.
В окремих випадках дослідження системи можуть задовольняти і ті висновки, які можна зробити при використанні якісного методу аналізу математичної моделі. Такі якісні методи широко використовуються, наприклад, в теорії автоматичного керування для оцінки ефективності різних варіантів систем управління.
В даний час набули поширення методи машинної реалізації дослідження характеристик процесу функціонування великих систем. Для реалізації математичної моделі на ЕОМ необхідно побудувати відповідний моделюючий алгоритм.
При імітаційному моделюванні алгоритм, який реалізує модель, відтворює процес функціонування системи S у часі, причому імітуються елементарні явища, що формують процес, із збереженням їх логічної структури і послідовності протікання в часі, що дозволяє за вихідними даними отримати відомості про стан процесу в певні моменти часу, що дають можливість оцінити характеристики системи S.
Основною перевагою імітаційного моделювання, у порівнянні з аналітичним, є можливість вирішення більш складних завдань. Імітаційні моделі дозволяють досить просто враховувати такі фактори, як наявність дискретних і неперервних елементів, нелінійні характеристики елементів системи, численні випадкові впливи та інші, які часто створюють труднощі при аналітичних дослідженнях. В даний час імітаційне моделювання — найбільш ефективний метод дослідження великих систем, а часто і єдиний практично доступний метод отримання інформації про поведінку системи, особливо на етапі її проектування.
Коли результати процесу функціонування системи S, отримані при відтворенні на імітаційній моделі є реалізаціями випадкових величин і функцій, тоді для знаходження характеристик процесу потрібно його багаторазове відтворення з наступною статистичною обробкою інформації доцільно в якості методу машинної реалізації імітаційної моделі використовувати метод статистичного моделювання. Першочергово був розроблений метод статистичних випробувань, який був числовим методом, що застосовувався для моделювання випадкових величин і функцій, імовірнісні характеристики яких співпадали з розв’язками аналітичних задач (така процедура отримала назву методу Монте-Карло). Потім цей прийом стали застосовувати і для машинної імітації з метою дослідження характеристик процесів функціонування систем, що підпадають випадковим впливам, тобто з'явився метод статистичного моделювання. Таким чином, методом статистичного моделювання будемо надалі називати метод машинної реалізації імітаційної моделі, а методом статистичних випробувань (Монте-Карло) — числовий метод розв'язування аналітичної задачі.
Методи імітаційного моделювання дають змогу вирішувати задачі аналізу великих систем S, включаючи задачі оцінки: варіантів структури системи, ефективності різних алгоритмів керування системою, впливу зміни різних параметрів системи. Імітаційне моделювання може бути покладено також в основу структурного, алгоритмічного і параметричного синтезу великих систем, коли потрібно створити систему із заданими характеристиками при певних обмеженнях, яка є оптимальною за деякими критеріями оцінки її ефективності.
При вирішенні задач машинного синтезу систем на основі їх імітаційних моделей крім розробки моделюючих алгоритмів для аналізу фіксованої системи необхідно також розробити алгоритми пошуку оптимального варіанту системи. Далі в методології машинного моделювання будемо розрізняти два основні розділи: статику і динаміку, — основним змістом яких є відповідно питання аналізу та синтезу систем, заданих моделюючими алгоритмами.
Комбіноване (аналітико-імітаційне) моделювання при аналізі і синтезі систем дає змогу об'єднати переваги аналітичного та імітаційного моделювання. При побудові комбінованих моделей проводиться попередня декомпозиція процесу функціонування об'єкта на складові, підпроцеси і для тих з них, де це можливо, використовуються аналітичні моделі, а для решти підпроцесів будуються імітаційні моделі. Такий комбінований підхід дозволяє охопити якісно нові класи систем, які не можуть бути досліджені з використанням лише аналітичного та імітаційного моделювання окремо.
Можливості і ефективність моделювання систем на обчислювальних машинах
Забезпечення необхідних показників якості функціонування складних систем пов'язане з необхідністю вивчення характеру протікання стохастичних процесів у досліджуваних і проектованих системах S. Це дозволяє проводити комплекс теоретичних і експериментальних досліджень, які взаємно доповнюють один одного. Ефективність експериментальних досліджень складних систем виявляється вкрай низькою, оскільки проведення натурних експериментів з реальною системою або вимагає великих матеріальних затрат і значного часу, або взагалі є практично неможливим (наприклад, на етапі проектування, коли реальна система відсутня). Ефективність теоретичних досліджень з практичної точки зору в повній мірі проявляється лише тоді, коли їх результати з необхідною ступенем точності і достовірності можуть бути представлені у вигляді аналітичних відношень або моделюючих алгоритмів, придатних для отримання відповідних характеристик процесу функціонування даних систем.
Засоби моделювання систем. Поява сучасних ЕОМ була вирішальною умовою широкого впровадження аналітичних методів у дослідження складних систем. Стало очевидним, що моделі і методи, наприклад математичного програмування, стануть практичним інструментом вирішення задач керування для складних систем. Дійсно, були досягнуті значні успіхи у створенні нових математичних методів розв'язання цих завдань, однак математичне програмування так і не стало практичним інструментом дослідження процесу функціонування складних систем, так як моделі математичного програмування виявилися занадто грубими і недосконалими для їх ефективного використання. Необхідність врахування стохастичних властивостей системи, недетермінованості вихідної інформації, наявності кореляційних зв'язків між великим числом змінних і параметрів, що характеризують процеси в системах, призводять до побудови складних математичних моделей, які не можуть бути застосовані в інженерній практиці при дослідженні таких систем аналітичним методом. Придатні для практичних розрахунків аналітичні співвідношення вдається отримати лише при спрощуючих припущеннях, які, зазвичай, істотно спотворюють фактичну картину досліджуваного процесу. Тому останнім часом все відчутнішою є потреба в розробці методів, які дали б можливість уже на етапі проектування систем досліджувати більш адекватні моделі. Зазначені обставини призводять до того, що при дослідженні великих систем все ширше застосовують методи імітаційного моделювання.
Зараз найбільш конструктивним засобом вирішення інженерних задач на базі моделювання стали ЕОМ. Сучасні ЕОМ можна розділити на дві групи: універсальні, — які призначені для виконання розрахункових робіт; і керуючі, — які дають змогу проводити не тільки розрахункові роботи, але розраховані для керування об'єктами в реальному масштабі часу. Керуючі ЕОМ можуть бути використані як для управління технологічними процесами, експериментами, так і для реалізації різних імітаційних моделей. Залежно від того, чи вдається побудувати достатньо точну математичну модель реального процесу, або, внаслідок складності об'єкта, не вдається проникнути в глиб функціональних зв'язків реального об'єкта і описати їх якимись аналітичними співвідношеннями, можна розглядати два основних шляхи використання ЕОМ: як засобу розрахунку за отриманими аналітичними моделями і як засобу імітаційного моделювання.
Для відомої аналітичної моделі, вважаючи, що вона достатньо точно відображає досліджуваний бік функціонування реального фізичного об'єкта, перед обчислювальною машиною стоїть завдання розрахунку характеристик системи з яких-небудь математичних співвідношень при підстановці числових значень. У цьому напрямку обчислювальні машини мають можливості, які практично залежні від порядку рівняння, що розв’язується і від вимог до швидкості отримання розв’язків, причому можуть використовуватись як ЕОМ, так і АОМ.
При використанні ЕОМ розробляється алгоритм розрахунку характеристик, відповідно до якого складаються програми (або генеруються за допомогою пакета прикладних програм), що дають можливість здійснювати розрахунки за необхідними аналітичними співвідношеннями. Основне завдання дослідника полягає в тому, щоб спробувати описати поведінку реального об'єкта однією з відомих математичних моделей.
Використання АОМ, з одного боку, прискорює для досить простих випадків процес розв’язування задачі, з іншого боку, можуть виникати похибки, обумовлені наявністю дрейфу параметрів окремих блоків, що входять до АОМ, обмеженою точністю, з якою можуть бути задані параметри, що вводяться в машину, а також несправностями технічних засобів тощо.
Перспективним є поєднання ЕОМ і АОМ, тобто використання гібридних засобів обчислювальної техніки — гібридних обчислювальних комплексів (ГОК), що в ряді випадків значно прискорює процес дослідження.
У ГОК вдається поєднувати високу швидкість функціонування аналогових засобів і високу точність розрахунків на базі цифрових засобів обчислювальної техніки. Одночасно вдається, за рахунок наявності цифрових пристроїв, забезпечити контроль проведення операцій. Досвід використання обчислювальної техніки в задачах моделювання показує, що з ускладненням об'єкта більшу ефективність за швидкістю отримання розв’язків і щодо вартості виконання операцій дає використання гібридної техніки.
Конкретним технічним засобом втілення імітаційної моделі можуть бути ЕОМ, АВМ та ГОК. Якщо використання аналогової техніки прискорює отримання кінцевих результатів, зберігаючи деяку наочність протікання реального процесу, то використання цифрової техніки дозволяє здійснити контроль за реалізацією моделі, створити програми по обробці та збереженню результатів моделювання, забезпечити ефективний діалог дослідника з моделлю.
Зазвичай, модель будується за ієрархічним принципом, коли послідовно аналізуються окремі сторони функціонування об'єкта і при переміщенні центру уваги дослідника розглянуті раніше підсистеми переходять в зовнішнє середовище. Ієрархічна структура моделей може розкривати й ту, послідовність, в якій вивчається реальний об'єкт, а саме послідовність переходу від структурного (топологічного) рівня до функціонального (алгоритмічного) і від функціонального до параметричного.
Результат моделювання, в значній мірі, залежить від адекватності вихідної концептуальної (описової) моделі, від отриманого ступеня подібності опису реального об'єкта, числа реалізацій моделі та багатьох інших факторів. У ряді випадків складність об'єкта не дозволяє не тільки побудувати математичну модель об'єкта, а й дати досить близький кібернетичний опис, і перспективним тут є виділення частини об'єкта, що найбільш важко піддаються математичному опису і включення цієї реальної частини фізичного об'єкту в імітаційну модель. Тоді модель реалізується, з одного боку, на базі засобів обчислювальної техніки, а з іншого — є реальною частиною об'єкта. Це значно розширює можливості і підвищує достовірність результатів моделювання.
Імітаційна система, що реалізується на ЕОМ дозволяє досліджувати імітаційну модель М, що задається у вигляді визначеної сукупності окремих блокових моделей та зв'язків між ними в їх взаємодії у просторі та часі при реалізації будь-якого процесу. Можна виділити три основні групи блоків: блоки, що характеризують процес функціонування системи S; блоки, що відображають зовнішнє середовище та його вплив на процес; блоки, що відіграють службову допоміжну роль, забезпечуючи взаємодію перших двох, а також виконують додаткові функції по отриманню та обробці результатів моделювання. Крім того, імітаційна система характеризується набором змінних, за допомогою яких можна керувати процесом, що вивчається і набором початкових умов, коли можна змінювати умови проведення машинного експерименту.
Таким чином, імітаційна система є засобом проведення машинного експерименту, причому експеримент може ставитися багаторазово, заздалегідь плануватися, можуть визначатися умови його проведення. Необхідно при цьому вибрати методику оцінки адекватності одержуваних результатів і автоматизувати як процеси отримання, так і процеси обробки результатів у ході машинного експерименту.
Забезпечення моделювання. Експеримент з імітаційною моделлю вимагає серйозної підготовки, тому імітаційна система характеризується наявністю математичного, програмного, інформаційного, технічного, ергономічного та інших видів забезпечення.
Математичне забезпечення імітаційної системи включає в себе сукупність математичних співвідношень, які описують поведінку реального об'єкта, сукупність алгоритмів, що забезпечують як підготовку, так і роботу з моделлю. Сюди можуть бути віднесені алгоритми введення вихідних даних, імітації, виведення, обробки.
Програмне забезпечення за своїм змістом включає в себе сукупність програм: планування експерименту імітаційної моделі, проведення експерименту, обробки і інтерпретації результатів. Крім того, програмне забезпечення імітаційної системи має забезпечувати синхронізацію процесів в моделі, тобто необхідно мати блок, що організовує псевдопаралельне виконання процесів у моделі. Машинні експерименти з імітаційними моделями не можуть проходити без добре розробленого та реалізованого інформаційного забезпечення.
Інформаційне забезпечення включає в себе засоби та технологію організації і реорганізації бази даних моделювання, методи логічної та фізичної організації масивів, форми документів, що описують процес моделювання і його результати. Інформаційне забезпечення імітаційної системи є найменш розробленою частиною, оскільки тільки тепер спостерігається перехід до створення складних імітаційних моделей та розробляється методологія їх використання при аналізі та синтезі складних систем з використанням концепції бази даних і бази знань.
Технічне забезпечення імітаційної системи включає в себе, перш за все, засоби обчислювальної техніки, зв'язку і обміну між оператором і мережею ЕОМ, введення і виведення інформації, управління проведенням експерименту. До технічного забезпечення пред'являються дуже серйозні вимоги щодо надійності функціонування, так як збої і відмови технічних засобів, помилки оператора ЕОМ можуть різко збільшити час роботи з імітаційною моделлю і навіть призвести до невірних кінцевих результатів.
Ергономічне забезпечення імітаційної системи представляє собою сукупність наукових і прикладних методик і методів, а також нормативно-технічних та організаційно-методичних документів, що використовуються на всіх етапах взаємодії людини-експериментатора з інструментальними засобами (ЕОМ, гібридними комплексами тощо). Ці документи, які використовуються на всіх стадіях розробки та експлуатації імітаційних систем та їх елементів, призначені для формування та підтримання ергономічної якості шляхом обґрунтування та вибору організаційно-проектних рішень, які створюють оптимальні умови для високоефективної діяльності людини у взаємодії з моделюючим комплексом.
Таким чином, імітаційна система може розглядатися як машинний аналог складного реального процесу. Вона дозволяє замінити експеримент з реальним процесом функціонування системи експериментом з комп’ютерною моделлю цього процесу. В даний час імітаційні експерименти широко використовуються в практиці проектування складних систем, коли реальний експеримент неможливий.
Можливості машинного моделювання. Незважаючи на те що імітаційне моделювання на ЕОМ є потужним інструментом дослідження систем, його застосування раціонально не у всіх випадках. Відомо багато задач, які розв'язуються більш ефективно, але іншими методами. Разом з тим, для великого класу задач дослідження і проектування систем метод імітаційного моделювання найбільш прийнятний. Правильне його використання можливе лише у випадку чіткого розуміння сутності методу імітаційного моделювання та умов його використання в практиці дослідження реальних систем при врахуванні особливостей конкретних систем і можливостей їх дослідження різними методами.
В якості основних критеріїв доцільності застосування методу імітаційного моделювання на ЕОМ можна вказати наступні: відсутність або неприйнятність аналітичних, числових і якісних методів вирішення поставленої задачі; наявність достатньої кількості вихідної інформації про систему S, що моделюється для забезпечення можливості побудови адекватної імітаційної моделі; необхідність проведення на базі інших можливих методів дуже великої кількості обчислень, що важко реалізуються навіть з використанням ЕОМ; можливість пошуку оптимального варіанту системи при її моделюванні на ЕОМ.
Імітаційне моделювання на ЕОМ, як і будь-який метод досліджень, має переваги і недоліки, які проявляються в конкретних програмах. До числа основних переваг методу імітаційного моделювання при дослідженні складних систем можна віднести наступні: машинний експеримент з імітаційною моделлю дає можливість досліджувати особливості процесу функціонування системи S в будь-яких умовах; застосування ЕОМ в імітаційному експерименті істотно скорочує тривалість випробувань у порівнянні з натурним експериментом; імітаційна модель дозволяє включати результати натурних випробувань реальної системи або її частин для проведення подальших досліджень; імітаційна модель володіє гнучкістю варіювання структури, алгоритмів і параметрів системи, що важливо з точки зору пошуку оптимального варіанту системи; імітаційне моделювання складних систем часто є єдиним практично реалізованим методом дослідження процесу функціонування таких систем на етапі їх проектування.
Основним недоліком, що проявляється при машинної реалізації методу імітаційного моделювання, є те, що розв’язка, отримані при аналізі імітаційної моделі, завжди носять частковий характер, так як вони відповідають фіксованим елементам структури, алгоритмам поведінки і значенням параметрів системи, початкових умов і впливів зовнішнього середовища. Тому для повного аналізу характеристик процесу функціонування систем, а не отримання тільки окремої точки доводиться багато разів відтворювати імітаційний експеримент, варіюючи вихідні дані задачі. При цьому, як наслідок, збільшуються витрати машинного часу на проведення експерименту з імітаційною моделлю процесу функціонування досліджуваної системи.
Ефективність машинного моделювання. При імітаційному моделюванні, так само як і при будь-якому іншому методі аналізу та синтезу системи, дуже суттєвим є питання його ефективності. Ефективність імітаційного моделювання може оцінюватися низкою критеріїв, у тому числі точністю і достовірністю результатів моделювання, часом, що витрачається на побудову моделі, витратами машинних ресурсів (часу та пам'яті), вартістю розробки та експлуатації моделі. Очевидно, найкращою оцінкою ефективності є порівняння отриманих результатів з реальними дослідженнями, тобто з моделюванням на реальному об'єкті при проведенні натурного експерименту. Оскільки це не завжди вдається зробити, статистичний підхід дозволяє з певним ступенем точності при повторюваності машинного експерименту отримати якісь усереднені характеристики поведінки системи. Істотний вплив на точність моделювання має число реалізацій, і в залежності від необхідної достовірності можна оцінити необхідну кількість реалізацій відтворюваного випадкового процесу.
Суттєвим показником ефективності є витрати машинного часу. У зв'язку з використанням ЕОМ різної обчислювальної потужності, сумарні витрати складаються з часу введення та виведення даних, часу на проведення обчислювальних операцій, з урахуванням звернення до оперативної пам'яті і зовнішніх пристроїв, а також складності кожного моделюючого алгоритму. Розрахунки витрат машинного часу є наближеними і можуть уточнюватися в міру налагодження програм та накопичення досвіду у дослідника при роботі з імітаційного моделлю. Великий вплив на витрати машинного часу при проведенні імітаційних експериментів має раціональне планування таких експериментів. Певний вплив на витрати машинного часу можуть мати процедури обробки результатів моделювання, а також форма їх подання.
Побудова імітаційних моделей великих систем і проведення машинних експериментів з цими моделями є досить трудомістким процесом, в якому на даний час є багато невивченого. Однак фахівці в області проектування, дослідження та експлуатації великих систем повинні досконало знати методологію машинного моделювання, що склалася на сьогодні, щоб бути готовими до появи ЕОМ наступних поколінь, які дозволять зробити ще один суттєвий крок в автоматизації процесів побудови моделей і використання імітаційного моделювання систем.