Структурне моделювання

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

Структурно-функціональне моделювання започатковане у теорії автоматичного управління (ТАУ), де було розвинуто апарат, що містить не тільки правила утворення і перетворення, а й досить загальну методологію аналізу і синтезу структурних схем. Хоча динамічні структурно-функціональні схеми ТАУ мають широкі можливос­ті для аналізу неперервних, лінійних динамічних систем, що описуються диференційними рівняннями, вони погано підходять для описування процесів у організаційних системах, де зв’язки між окремими блоками мають набагато ширший зміст і рідко можуть бути зведені до деякої функції часу (сигналу).

Подальший розвиток структурно-функціонального моделювання пов’язаний із виникненням автоматизованих систем управління виробництвом (АСУ). Загалом АСУ використовують мову структурно-функціонального моделювання, яка застосовується при системному аналізі і проектуванні автоматизованих організаційних систем.

Сучасні методи структурно-функціонального аналізу і моделювання складних систем були закладені завдяки працям професора Масачусетського технологічного інституту Дугласа Росса, який уперше використовував поняття «структурний аналіз» ще сорок років тому, намагаючись створити алгоритмічну мову АРТ, орієнтовану на модульне програмування. Подальший розвиток ідеї описування складних об’єктів як ієрархічних, багаторівневих, модульних систем за допомогою невеликого набору типових елементів привів до появи SADT (Structured Analyses and Design Technique), що в дослівному перекладі означає «технологія структурного аналізу і проектування», а власне кажучи, є методоло­гією структурно-функціонального моделювання й аналізу складних систем [20]. З часу своєї появи SADT постійно удосконалю­валася і широко використовувалася для ефективного вирішення цілого ряду проблем, таких як удосконалення управління фінансами та матеріально-технічним постачанням великих фірм, розробка програмного забезпечення АСУ телефонними мережами, стратегічне планування діяльності фірм, проектування обчислювальних систем і мереж тощо.

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

Відомим програмним продуктом, що реалізує методологію структурно-функціонального аналізу SADT, є Design/IDEF виробництва компанії Meta Software Corp. Він орієнтований на проектування і моделювання складних систем широкого призначення, пов’язаних з автоматизацією і комп’ютеризацією виробництва, а також із завданнями економіко-організаційного управління та бізнес-планування. Design/IDEF має швидку і високоякісну графіку, яка уможливлює створення SADT-моделей, містить словник даних, що дає змогу зберігати необмежений обсяг інформації про об’єкти і моделі, допускає колективну роботу над моделлю, уможливлює генерування звітів за результатами системного аналізу.

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

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

Третьою особливістю моделювання на основі SADT є можливість одночасно зі структуруванням проблеми розробляти структуру бази даних, а точніше — баз даних, тому що на різних рівнях ієрархічного моделювання доцільно мати окремі бази даних. У пакеті DESIGN/IDEF автоматизовано процес опису бази даних, що відповідає структурі моделі. Отже, одночасно з ієрархічною структурою моделі одержують і структуру розподіленої бази даних. Для моделювання баз даних використовують мову SQL.

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

Ще одним широко відомим інструментальним засобом структурно-функціонального моделювання, заснованим на стандарті IDEFО, є пакет BPWin, що пропонується компанією MacroProject. Він призначений для моделювання й оптимізації бізнес-процесів і автоматизує багато рутинних операцій, пов’язаних з побудовою моделей організаційних систем.

7.4. Інформаційне забезпечення аналізу даних

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

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

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

Mathematica від Wolfram — вичерпна комп’ютерна система для чисельних, символьних та графічних обчислень і візуалізації. Інтерактивний обчислювальний та графічний інструмент із вбудованою мовою програмування для швидких та точних розв’яз­ків. Інформацію можна подавати як у звичайному математичному поданні, так і у вигляді функцій з використанням вбудованої мови програмування. Електронний документ цієї комп’ютерної системи, який називається notebooks (записна книжка), допомагає користувачеві створювати тексти, здійснювати обчислення, будувати графіки та анімацію для технічного звіту чи презентації роботи. Існує також можливість підключення додаткових пакетів за допомогою технології Add-ons.

S-PLUS від S-PLUS — інтерактивне програмне середовище для аналізу даних. S-PLUS містить об’єктно орієнтовану мову програмування, уніфіковану парадигму для дослідження статистичних моделей та тисячі вбудованих статистичних і графічних функцій.

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

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

Statistica від StatSoft Inc. — найзбалансованіший за співвідношенням «потужність/зручність» пакет. Має широкий спектр функціональних алгоритмів і потужну графіку, а також відповідні засоби для редагування графічних матеріалів. Користувач має знати статистичну термінологію, хоча дуже об’ємна довідкова система дає змогу досить повно ознайомлюватися з алгоритмами, що використовуються.

Інтелектуальний аналіз даних (Data Mining)

Останнім часом все більшої популярності набуває термін «інтелектуальний аналіз даних» (Data Mining) або «виявлення знань у базах даних» (knowledge discovery in databases). Це зумовлено, передовсім, нездатністю класичних статистичних методів досить повно задовольняти вимоги, що ставляться сьогодні до аналізу даних. Зокрема, специфіка даних та сучасних вимог до їх обробки така:

— дані мають практично необмежений об’єм;

— дані є різнорідними (кількісними, якісними, текстовими);

— результати мають бути конкретними та зрозумілими;

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

Загалом технологію DataMining досить точно визначає Григорій Піаецький-Шапіро — один із засновників цього напряму. DataMining — це процес виявлення в первинних даних:

— раніше невідомих;

— нетривіальних;

— практично корисних;

— доступних для інтерпретації знань, необхідних для прийнят­тя рішень у різних сферах людської діяльності.

Виділяють п’ять стандартних типів закономірностей та методів, які є найхарактернішими для DataMining:

— асоціація;

— послідовність;

— класифікація;

— кластеризація;

— прогнозування.

Асоціація має місце у тому разі, коли кілька подій пов’язані одна з одною.

Послідовність — ланцюг пов’язаних у часі подій.

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

Кластеризація відрізняється від класифікації тим, що самі групи спочатку не задано.

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

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

— предметно орієнтовані аналітичні системи.

Існує дуже багато програм такого типу;

— статистичні пакети;

— нейронні мережі;

— системи міркувань на основі аналогічних випадків;

— дерева рішень;

— еволюційне програмування;

— генетичні алгоритми;

— алгоритми обмеженого перебору;

— системи для візуалізації багатовимірних даних.

Загалом, стосовно DataMining можна зазначити, що:

1) ринок систем DataMining розвивається експоненційно. В ньо­му беруть участь практично всі крупні корпорації;

2) системи DataMining застосовують, головно, за такими напрямками, як:

— масовий продукт для бізнес-додатків,

— інструмент для проведення унікальних досліджень;

3) незважаючи на чисельність методів DataMining, пріоритет поступово зміщується в бік логічних алгоритмів аналізу даних if-then-правил (правил типу: «якщо..., то...»);

4) разом з тим головною проблемою логічних методів виявлення закономірностей є перебір варіантів за прийнятний термін. У відомих методах або штучно обмежується такий перебір (у алгоритмах КОРА, WizWhy), або будуються дерева рішень, що мають принципові обмеження ефективності пошуку if-then-правил. Інші проблеми пов’язані з тим, що відомі методи пошуку логічних правил не підтримують функцію узагальнення знайдених правил та функцій пошуку оптимальної композиції таких правил. Вдале розв’язання поставлених проблем може стати предметом нових конкурентоспроможних розробок.

Завдання для перевірки знань

1. Виберіть неправильну відповідь (одну чи кілька):

а) АСУавтоматизовані системи управління. Використовуються тільки для автоматизації базових функцій підприємства;

б) СППР — системи підтримки прийняття рішення. Призначені робити обґрунтований вибір з певного переліку альтернатив;

в) ЕС — експертні системи. Призначені замінити експерта в певній галузі;

г) CASE — комп’ютерне проектування ІС. Призначене для розроблення складних програмних комплексів;

д) SADT — техніка структурного моделювання. Призначена для побудови функціональної моделі об’єкта певної проблемної галузі.

2. Які з наведених міжнародних абревіатур не є англомовним еквівалентом терміна АСУ?

а) ERP, б) ERPII, в) CRM, г) ECM, д) ARM.

3. Виберіть правильні відповіді

а) існують АСУ, які реалізують автоматизацію абсолютно всіх функціональних напрямків діяльності підприємства;

б) більшість АСУ інтегруються в програмні системи;

г) у малих підприємствах, як правило, немає потреби у всіх можливостях, які надають найпотужніші АСУ;

д) переважна більшість АСУ не має можливості інтеграції в інші програмні пакети та модулі;

е) правильної відповіді немає.

4. Опишіть головні відмінності MIS від DSS.

5. Назвіть пари елементів з перерахованих, що позначають той самий компонент експертної системи:

а) розв’язувач;

б) робоча пам’ять;

в) база даних;

г) інтерпретатор;

д) база знань;

е) пояснювальний компонент;

є) діалоговий компонент.

6. Назвіть етапи створення експертної системи. На якому етапі визначається склад групи розробників та які спеціалісти обов’язково мають входити до неї?

7. Дайте визначення терміна «комп’ютерна модель».

8. Проаналізуйте два такі твердження, виберіть одну з наведених відповідей та обґрунтуйте свій вибір.

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

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

а) правильне перше твердження;

б) правильне друге твердження;

в) правильні обидва твердження;

г) необхідно шукати компроміс між суперечливими вимогами до моделі залежно від конкретної ситуації;

д) жодна з відповідей неправильна.

9. Дайте визначення термінам CASE-технології та CASE-засоби. У чому полягає їх різниця?

10. Які з наведених можливостей не реалізуються в SADT:

а) ієрархічне моделювання;

б) об’єктно орієнтоване моделювання;

в) функціональне моделювання;

г) багаторівневе моделювання;

д) реалізовані всі названі вище можливості.

11. Виберіть правильні твердження:

а) послідовність — це ланцюг пов’язаних у часі асоціацій;

б) прогноз будується на підставі послідовності асоціацій;

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

г) кластеризація — це групування асоціацій;

д) правильних тверджень немає.

12. Опишіть головні проблеми, що постають перед системами DataMining, та дайте оцінку перспективам розвитку таких систем.

Контрольні запитання

1. У чому полягає суть інформаційного забезпечення системного аналізу?

2. З яких компонентів складається інформаційна система підприємства?

3. Дайте тлумачення термінам АСУ, ERP, ERPII, ECM.

4. Назвіть головні функціональні сфери діяльності підприємства, в яких застосовуються АСУ.

5. Опишіть головні компоненти СППР.

6. У чому полягає важливість експертних систем?

7. Опишіть етапи створення експертної системи.

8. Дайте визначення поняття UML та опишіть його роль у комп’ютерному моделюванні.

9. Які ви знаєте промислові CASE-засоби? Дайте їм коротку характеристику.

10. За якими ознаками можна класифікувати CASE-засоби?

11. У чому полягає сутність SADT-технології?

12. Дайте визначення технології DataMining.

Практичне заняття № 5

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

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

Системи автоматизованого управління діяльністю підприємства. Експертні системи підтримки прийняття рішень у бізнесі. Комп’ютерне моделювання та проектування систем. Головні принципи і концептуальні засади SADT та CASE технологій. Огляд засобів для математично-статистичного аналізу даних. Нові технології аналізу даних. Інтелектуальний аналіз даних.

Самостійна робота студентів

На самостійне вивчення виносяться такі питання:

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

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

· Використання SADT та CASE засобів у фундаментальному аналізі соціально-економічних об’єктів.

· Аналіз наявних на вітчизняному ринку програмних SADT та CASE засобів.

· Аналіз наявних на вітчизняному ринку експертних систем та СППР.

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

Результат самостійної роботи студента оформлюється у вигляді реферату обсягом 15—20 стор.

Рекомендована література для самостійного вивчення теми: [11, 27, 33, 36, 43, 48]. Окрім цього, при написанні рефератів студентам рекомендується опрацювання сучасної науково-періодичної літератури та Internet-ресурсів.


Термінологічний словник

 

 

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

Аналіз — науковий підхід, який спрямований на послідовний поділ цілого на частини та дослідження їхніх властивостей.

Вихід системи — результат функціонування системи для досягнення певної мети або її реакції на вплив зовнішнього середовища.

Вхід системи — це дія на неї зовнішнього середовища.

Дисипативні структури — це структури, що виникають спонтанно у відкритих нерівноважних системах.

Елемент системи — це її частина, яка не підлягає подальшому поділу, тобто є неподільною з погляду завдання, що розв’язується, та виконує специфічну функцію.

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

Зв’язок — це спосіб, у який елементи системи взаємодіють між собою.

Зворотний зв’язок — складна система причинної залежності в системі, яка полягає у тому, що вихід системи впливає на її вхід.

Зовнішнє середовище — це все те, що знаходиться зовні системи, в тому числі необхідні умови її існування та розвитку.

Ієрархія системи — це розташування частин або елементів системи у певній послідовності від вищого до нижчого.

Кібернетичні системи — це системи з управлінням.

Критерій — це кількісний показник якісних цілей, який повинен точніше їх характеризувати.

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

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

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

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

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

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

Синтез — науковий підхід, який полягає у поєднанні частин, виявленні системних властивостей, що притаманні всій системі в цілому. За своїм змістом синтез протилежний аналізу.

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

Системний аналіз — методологія дослідження об’єктів довільної природи через їх розгляд як систем.

Стан системи характеризується значеннями змінних системи в даний момент.

Стійкість системи — здатність системи повертатися до стану рівноваги після виведення її з цього стану під впливом зовнішніх збурень.

Стратегія організації — це генеральний план дії, що визначає пріоритети стратегічних цілей, ресурси та послідовність дій для їх досягнення.

Структура системи — це стійкі зв’язки і впорядкованість між елементами та підсистемами системи.

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

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

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

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