You are on page 1of 313

ПИТАННЯ ДО КВАЛІФІКАЦІЙНОГО ЕКЗАМЕНУ

Зміст
ІНФОРМАЦІЙНІ СИСТЕМИ І ТЕХНОЛОГІЇ УПРАВЛІННЯ В
ІННОВАЦІЙНІЙ ЕКОНОМІЦІ 9
1. Базові завдання державної інноваційної політики 9
2. Види інновацій. Основні джерела інновацій 9
3. Економічний зміст інноваційного підприємництва і стану його розвитку
в економіці 10
4. Етапи й тенденції розвитку інформаційних систем 14
5. Етапи проектування інформаційної системи управління інноваційною
діяльністю 16
6. Зміст інноваційної діяльності 18
7. Зміст, основні різновиди державної інноваційної політики 19
8. Інноваційна політика в окремих галузях економіки 21
9. Інноваційні процеси в соціально-економічних системах 22
10. Інноваційні технології в процесі ухвалення управлінських рішень 24
11. Інформаційне забезпечення в системі управління інноваційною
діяльністю підприємства 25
12. Класифікація та життєвий цикл інновацій 27
13. Конкурентоспроможність інновацій і економіки 28
14. Критерії показників оцінки ефективності інноваційного бізнесу 30
15. Методи вимірювання рівня інноваційного розвитку підприємства 31
16. Механізми регулювання інноваційної діяльності в різних
господарських системах 34
17. Основні елементи сучасного інноваційного менеджменту і їх динаміка
37
18. Основні елементи сучасного інноваційного менеджменту і їх динаміка
38
19. Основні світові тенденції, пов'язані з переходом національних
економік на інноваційний тип 39
20. Основні цілі державної інноваційної політики 40
21. Основні чинники активізації інноваційної діяльності 41
22. Особливості інноваційних циклів 43
23. Показники результативності інноваційної діяльності. 46
24. Світові тенденції розвитку інноваційної діяльності 48
25. Склад та структура системи управління інноваційною діяльністю
підприємства 50
26. Сучасний світовий стан інноваційної діяльності. 52
27. Сучасні чинники інноваційного розвитку підприємства 54
28. Характеристика управління інноваційною діяльністю як бізнес-
процесу 56
29. Циклічність розвитку світової економіки у контексті інноваційної
діяльності 58
30. Шляхи підвищення ефективності використання результатів наукової і
науково-технічної діяльності 61
МУЛЬТИАГЕНТНІ СИСТЕМИ В ЕКОНОМІЦІ 62
1. Автономні агенти та їх класифікація 62
2. Агентно-орієнтоване моделювання (АОМ). Побудова агентних
моделей. Засоби розробки систем АОМ 63
3. Агентно-орієнтоване моделювання (АОМ). Суть агентно-орієнтованого
моделювання 65
4. Агентно-орієнтоване моделювання. Інструментальний засіб AnyLogic 68
5. Агентно-орієнтоване моделювання. Інструментальний засіб MASON 71
6. Агентно-орієнтоване моделювання. Інструментальний засіб NetLogo 72
7. Архітектура агентів на основі планування (реактивна архітектура) 78
8. Архітектура взаємодії системи агентів 82
9. Архітектури агентів, засновані на знаннях 83
10. Базові типи співробітництва і суперництва агентів в мультиагентних
системах 87
11. Взаємодія агентів в мультиагентних системах 89
12. Вимоги до інструментальних засобів для побудови мультиагентних
систем 91
13. Висхідний і низхідний підходи до проектування МАС 92
14. Еволюційне та коеволюційне проектування МАС 93
15. Елементи реалізації мультиагентних систем 98
16. Зв'язок в мультиагентних системах 102
17. Інструментальне середовище для побудови мультиагентних систем
INGENIAS Development Kit (IDK) 105
18. Інструментальне середовище для побудови мультиагентних систем
JADE (Java Agent Development Framework) 107
19. Інструментальне середовище для побудови мультиагентних систем
JASON 109
20. Інструментальне середовище для побудови мультиагентних систем
MadKit 111
21. Інструментальний програмний комплекс для побудови
мультиагентних систем AgentTool 112
22. Когерентність та координація в мультиагентних системах 114
23. Кооперація агентів в мультиагентних системах 115
24. Критерії і ситуації взаємодії агентів в мультиагентних системах 121
25. Методика низхідного проектування МАС 122
26. Мультиагентні системи в державному управлінні та соціальній сфері
124
27. Мультиагентні системи в електроенергетиці 126
28. Мультиагентні системи в електронній комерції 127
29. Мультиагентні системи для вирішення задач логістики 130
30. Мультиагентні системи для підтримки прийняття рішень на
фондовому ринку 135
31. Основи об’єктно-орієнтованої розробки МАС 139
32. Основи стандартної методології проектування МАС 141
33. Основні характеристики і види взаємодії агентів в мультиагентних
системах 144
34. Переваги мультиагентних систем 146
35. Поняття програмного агента. Властивості програмних агентів 147
36. Порівняльна характеристика мов програмування агентів. Мови Java
та KQML 151
37. Порівняльна характеристика мов програмування агентів. Мови AСL
та Penguin 155
38. Порівняльна характеристика мов програмування агентів. Мови
TeleScript, Agent-Tcl та Oz 156
39. Порівняльна характеристика мов програмування агентів. Мови KIF та
AgentSpeak 158
40. Порівняльна характеристика мов програмування агентів. Мови SKTP
та April 161
41. Приклади агентно-орієнтованого моделювання соціально-
економічних процесів та систем. 162
42. Приклади агентно-орієнтованого моделювання соціально-
економічних процесів та систем. 163
43. Приклади агентно-орієнтованого моделювання соціально-
економічних процесів та систем. 166
44. Причини взаємодії агентів в мультиагентних системах 166
45. Програмування агентів. Вимоги до мов програмування агентів 169
46. Програмування агентів. Класифікація мов програмування агентів 171
47. Суть мультиагентних систем та основні поняття 176
48. Таксономія програмних агентів. Мобільні та інформаційні/Internet
агенти 180
49. Таксономія програмних агентів. Партнерські та інтерфейсні агенти
185
50. Таксономія програмних агентів. Реактивні та гібридні агенти 191
РОЗПОДІЛЕНІ ІНТЕЛЕКТУАЛЬНІ СИСТЕМИ В ЕКОНОМІЦІ 197
1. Варіанти клієнт-серверної архітектури інтелектуальної розподіленої
системи 197
2. Веб-орієнтована архітектура інтелектуальної розподіленої системи 198
3. Задачі функціонування розподілених інтелектуальних систем 199
4. Змішана архітектура розподілених інтелектуальних систем 200
5. Концепція мультипроцесорних апаратних рішень у розгортанні
розподілених інтелектуальних систем 201
6. Моделі представлення даних у розподілених інтелектуальних системах
201
7. Поняття архітектурного стилю розподілених інтелектуальних систем
202
8. Поняття і технології масштабування розподілених інтелектуальних
систем 203
9. Поняття та особливі риси інтелектуальної розподіленої системи 204
10. Приклади та сфери застосування інтелектуальних розподілених
систем в економіці 205
11. Проблема адаптивності в роботі розподілених інтелектуальних
систем: суть та шляхи вирішення 205
12. Проблема надійності в роботі розподілених інтелектуальних систем:
суть та шляхи вирішення 206
13. Проблема стійкості до відмов у роботі розподілених інтелектуальних
систем: суть та шляхи вирішення 206
14. Проблема стійкості до зовнішніх впливів у роботі розподілених
інтелектуальних систем: суть та шляхи вирішення 208
15. Проміжний рівень програмного забезпечення у розподілених
інтелектуальних системах 210
16. Реалізація віддаленого виклику процедур (RPC) у розподілених
інтелектуальних систем 211
17. Реалізація технології CORBA у розподілених інтелектуальних
системах 212
18. Розподілена інтелектуальна система – як діалогова система 213
19. Розподілена інтелектуальна система – як система просторово
розподілених компонентів 213
20. Розподілені бази даних, особливості архітектури 213
21. Розподілені інтелектуальні системи на основі агентів. 214
22. Сильні і слабкі сторони розподілених інтелектуальних систем. 215
23. Синхронізація доступу до даних в розподілених інтелектуальних
системах. 215
24. Стандартизація та основні стандарти розробки розподілених
інтелектуальних систем. 216
25. Характеристика вимог до функціонування розподілених
інтелектуальних систем: масштабованість. 216
26. Характеристика вимог до функціонування розподілених
інтелектуальних систем: гнучкість 216
27. Характеристика вимог до функціонування розподілених
інтелектуальних систем: стійкість 217
28. Характеристика вимог до функціонування розподілених
інтелектуальних систем: відкритість 219
29. Характеристика вимог до функціонування розподілених
інтелектуальних систем: прозорість. 220
СИСТЕМИ РОЗПІЗНАВАННЯ ОБРАЗІВ ТА ОБРОБКА ЗОБРАЖЕНЬ 221
1. Алгоритм внутрішньо групових середніх (к-means) 221
2. Алгоритм і мережа Кохонена 222
3. Алгоритм і мережа Хеммінга 223
4. Алгоритм ІСОМАД (ISODATA) 224
5. Алгоритм навчання за Байєсом 225
6. Алгоритм навчання персептрона 226
7. Алгоритм навчання Хебба 226
8. Алгоритм самонавчання на основі методу потенційних функцій 227
9. Архітектура нейронних мереж та математичні можливості нейронних
мереж 228
10. Генетичний алгоритм навчання нейронної мережі 228
11. Градієнтний алгоритм навчання нейронної мережі 229
12. Дайте визначення лінійної розділимості та лінійної вирішувальної
функції. 230
13. Знаходження дискримінантної функції по прецедентах методом
потенційних функцій 231
14. Класифікатор Неймана-Пірсона 231
15. Класифікація за допомогою вирішальних функцій 232
16. Класифікація моделей навчання. Формальна модель навчання 234
17. Класифікація у разі багатовимірного нормального розподілу ознак в
класах 235
18. Критерії класифікації у разі нормального одновимірного розподілу
ознак 236
19. Лінійні вирішальні функції (ЛВФ) 237
20. Математична постановка задачі розпізнавання образів 237
21. Метод опорних векторів (Лінійно роздільний випадок та лінійно
нероздільний випадок) 237
22. Метод найближчих сусідів 238
23. Метод потенційних функцій 239
24. Навчання багатошарової НМ методом зворотного розповсюдження
помилки 239
25. Нейронна мережа Хопфілда та її застосування . 240
26. Нечіткі нейронні мережі. Властивості. Алгоритми функціонування.
240
27. Опишіть алгоритм персептрона для побудови лінійної вирішувальної
функції. 241
28. Опишіть відомі Вам постановки задачі класифікації. 241
29. Опишіть типову схему розпізнавання в просторі ознак. 242
30. Основні задачі теорії розпізнавання образів 243
31. Охарактеризуйте байєсівські методи розпізнавання образів. 243
32. Охарактеризуйте гіпотезу компактності. 245
33. Охарактеризуйте етап навчання, який передує розпізнаванню в
робочому режимі. 246
34. Охарактеризуйте основні задачі, які вирішуються на етапі
попередньої обробки сигналів і зображень. 246
35. Перелічіть основні властивості класів. 246
36. Персептронний метод навчання 247
37. Поняття вирішальних функцій 247
38. Постановка задачі байесовської класифікації 248
39. Постановка задачі кластеризації 249
40. Приклади дихотомічних, номінальних та порядкових ознак 250
41. Простий байесовський класифікатор 251
42. Способи визначення відстані між вектором-образом і класом 251
43. Способи стандартизації ознак і векторів-образів 253
44. Структура та математична модель нейро мережі 254
45. Сформулюйте задачу розпізнавання як задачу віднесення об’єкта до
певного класу. 254
46. Сформулюйте метод найближчого сусіда. 254
47. Типи систем розпізнавання 255
48. Типи характеристик образів 257
49. Узагальнені вирішальні функції 258
50. Чому рукописні літери важче розпізнавати, ніж машинні? 259
51. Що таке зважені євклідові відстані? В якому випадку їх доцільно
використовувати? 260
52. Що таке ланцюговий код Фрімена? 261
53. Які Ви знаєте міри близькості між об’єктами, якщо ознаки є
кількісними? 261
ПРОЕКТУВАННЯ СИСТЕМ ШТУЧНОГО ІНТЕЛЕКТУ
1. Аналіз стабільно-ефективних компромісів в складних системах на основі
методу «загроз і контрзагроз»
2. Архітектура експертних систем
3. Архітектура рекомендаційних систем
4. Архітектура системи штучного інтелекту на основі нейромережевих
методів обчислювального інтелекту
5. Галузі застосування систем штучного інтелекту
6. Динамічні експертні системи в управлінні
7. Диференціально-модельна концепція систем штучного інтелекту
8. Еволюційний алгоритм оптимізації структури нейромережевої моделі
9. Еволюційні алгоритми вирішення задач багатокритеріальної безумовної
оптимізації
10. Еволюційні алгоритми вирішення задач умовної оптимізації
11. Еволюційні алгоритми вирішення нестаціонарних задач оптимізації
12. Етапи створення експертних систем
13. Загальна структура системи штучного інтелекту
14. Застосування еволюційних алгоритмів в задачах автоматизації
проектування
інтелектуальних інформаційних технологій
15. Інструментальна оболонка розробки експертних систем – CLIPS
16. Інструментальні засоби проектування експертних систем
17. Комбінування робастного й адаптивного управління за допомогою систем
штучного
інтелекту
18. Модифіковані еволюційні алгоритми моделювання й оптимізації
складних систем
19. Організація прийняття рішень в експертних системах. Типова структура
експертної
системи
20. Основи проектування еволюційних алгоритмів
21. Основні цілі досліджень щодо розробки систем штучного інтелекту
22. Підходи до проектування систем штучного інтелекту
23. Підходи до розробки систем штучного інтелекту
24. Побудова структурно-алгоритмічної моделі системи штучного інтелекту
та її
використання в задачах управління
25. Покоління розвитку технологій розробки інтелектуальних систем
26. Створення проекту онтології за допомогою Protégé
27. Сучасні напрями досліджень і розробок систем штучного інтелекту
28. Технологія проектування систем штучного інтелекту на основі нейронних
мереж
29. Технологія створення експертної системи
30. Типова структура експертної системи
ІНФОРМАЦІЙНІ СИСТЕМИ І ТЕХНОЛОГІЇ УПРАВЛІННЯ В
ІННОВАЦІЙНІЙ ЕКОНОМІЦІ
1. Базові завдання державної інноваційної політики
Державна інноваційна політика - складова частина соціально-економічної
державної політики, спрямована на розвиток і стимулювання інноваційної
діяльності, під якою розуміється створення нової або вдосконаленої
продукції, нового або удосконаленого технологічного процесу, що
реалізуються в економічному обороті з використанням наукових досліджень,
розробок, дослідно-конструкторських робіт або інших науково-технічних
досягнень.
Для досягнення поставлених цілей держава повинна вирішувати
наступні завдання інноваційної політики:
• визначення та реалізація пріоритетів державної інноваційної
політики;
• забезпечення прогресивних структурних перетворень в економіці;
• створення і розвиток інфраструктури інноваційної діяльності;
• здійснення заходів щодо підтримки вітчизняної інноваційної
продукції на міжнародному ринку і розвитку зовнішньоекономічної
інноваційної діяльності;
• забезпечення взаємодії науки, освіти, виробництва та фінансово-
кредитної сфери у розвитку інноваційної діяльності;
• забезпечення ефективного використання науково-технічного
потенціалу для стабілізації розвитку економіки на головних напрямах,
які визначають стратегію, темп і пропорції розвитку народного
господарства і його структурної збалансованості.

2. Види інновацій. Основні джерела інновацій


Інновація – це кінцевий результат нововведень, спрямований
на досягнення відповідного ефекту та створення нових або удосконалених
конкурентоспроможних товарів (послуг, технологій і т.д.), що задовольняють
потреби споживачів, може охоплювати всі сфери діяльності підприємства і
сприяє розвитку та підвищенню його ефективності.
Класифікація інновацій. Інновації класифікують за такими ознаками :
1) за сферами діяльності (характеру застосування): технологічні, виробничі,
економічні, торгові (збутові), соціальні, управлінські;
2) за технологічними параметрами: продуктові (нові продукти), процесні
(нові технології, методи керування, організаційні форми і т. п.);
3) залежно від глибини змін, що вносяться: радикальні (піонерні), ординарні
(винаходи, нові рішення), що поліпшують чи модифікують (модернізації);
4) за ступенем новизни: нові для підприємства, нові для галузі, нові для
країни, нові для світового ринку;
5) за адресатом інновацій: для виробника, для споживача, для суспільства в
цілому;
6) за механізмом здійснення: одиничні, дифузійні, завершені, незавершені,
успішні, неуспішні;
7) за відношенням до попереднього стану процесу: ті, що заміняють; ті, що
відміняють; ті, що відкривають; ретроінновації;
8) за обсягом: точкові, системні, стратегічні;
9) за ступенем інтенсивності: “бум”, рівномірні, слабкі, масові;
10) за рівнем управління: народногосподарські, галузеві, територіальні,
первинної ланки управління.
Пітер Друкер у своїй книзі "Інновації та підприємництво" (1986) виділив сім
класів "можливостей", які він назвав "джерелами інновацій":
• несподівана подія, якою може бути несподіваний успіх, несподівана удача;
• невідповідність між реальністю, такою, якою вона є, і її віддзеркаленням в
думках і в оцінках людей;
• зміна потреб виробничого процесу;
• зміни в структурі галузі або ринку;
• демографічні зміни;
• зміни у сприйнятті та ціннісних установках;
• нові знання, наукові та ненаукові.

3. Економічний зміст інноваційного підприємництва і стану його


розвитку в економіці
У загальному плані інноваційне підприємництво можна визначити як
економічний процес, що приводить до створення кращих за своїми
властивостями товарів (продукції, послуг) і технологій шляхом практичного
використання інновацій (нововведень). Дослідження інноваційного
підприємництва як цілісного об’єкта аналізу, визначення його місця і впливу
на еволюцію економічної системи суспільства потребує комплексного
системного підходу, зумовлює проникнення наукової думки у складну
матерію підприємницької діяльності, ґрунтовне вивчення багатьох проблем,
пов’язаних з фундаментальними дослідженнями та нововведеннями.
Незважаючи на те, що методологічні основи дослідження сутності інновації
та інноваційної діяльності закладені у працях представників різних наукових
шкіл, багато робіт вітчизняних і зарубіжних вчених-економістів присвячено
різнобічним аспектам формування сучасної концепції підприємництва, в
тому числі інноваційного, все ж загалом у вітчизняній науці теорія
інноваційного підприємництва розроблена недостатньо, оскільки є відносно
новою, складною, різноплановою, стосується багатьох аспектів ринкової
трансформації економічної системи. правомірно стверджувати, що інновації є
визначальним фактором впливу на економічний розвиток.
У міру нагромадження знань про зміст і сутність інноваційних змін
удосконалювалися форми і методи управління цим процесом на рівні
суб’єктів, регіонів та держави. Однак і дотепер галузь знань економічної
теорії в частині інноваційного підприємництва не набула завершеної форми і
не може характеризуватися повним і детальним дослідженням усіх її
аспектів. Тому виникає об’єктивна потреба наблизитися до сутності і логіки
новітніх економічних явищ, до обґрунтування і формулювання теоретичних
засад, закономірностей та методологічного інструментарію інноваційного
підприємництва, який надає трансформаційним процесам нових якісних рис.
Реалії сучасного етапу ринкових перетворень в Україні переконують у тому,
що українська економіка не повною мірою придатна для функціонування в
сучасному ринковому середовищі.
В Україні винаходи і новації у різних соціально-економічних сферах на
нинішньому трансформаційному етапі зазнають значних труднощів і
перешкод на всіх етапах технологічного циклу — від появи до впровадження
і розповсюдження. Неприйняття економікою України нововведень
спричинено відсутністю органічного взаємозв’язку між фазами й елементами
інноваційного процесу, який на етапі формування ринкових відносин має
свої особливості і серйозні проблеми. Через брак необхідних ресурсів,
глибоких теоретичних знань про побудову і механізм функціонування
інноваційного підприємництва у трансформаційній економіці інновації й
донині не стали визначальним фактором формування ринкового
економічного потенціалу країни.
За нових умов політичного та економічного розвитку країни діалектика
суспільно-економічних відносин може стати більш досконалою, лише якщо
будуть осмислені і визначені теоретичні і методологічні засади інноваційного
підприємництва, управління його розширеним відтворенням.
На сьогодні в Україні існує нагальна потреба у формуванні такого механізму
управління інноваційним підприємництвом, який би об’єднував усі етапи
інноваційного процесу в єдине ціле, визначав зміст і форму державного
регулювання цього процесу, принципи і методи фінансового забезпечення
інноваційного підприємництва та ціноутворення у цій сфері діяльності,
врегулював
би методичні, економіко-правові та організаційні аспекти інноваційного
підприємництва у трансформаційній економіці.
Різні аспекти інноваційного підприємництва в умовах формування ринкових
відносин в Україні розглядаються у працях видатних українських учених: А.
Амоші, А. Гальчинського, В. Гейця, М. Герасимчука, Г. Доброва, С.
Дорогунцова, І. Лукінова, В. Мамутова, А. Чухна та
Але головною постаттю серед фундаторів інноваційної теорії економічного
розвитку вважається австрійський учений-економіст Йозеф Шумпетер (1883
—1950), який у праці «Теорія економічного розвитку» узагальнив теоретичні
дослідження попередників і передусім використав інвестиційну теорію
циклів українського вченого, економіста-класика М. І. Туган-Барановського
та теорію «довгих хвиль» М. Д. Кондратьєва.
Й. Шумпетер розрізняв терміни «винахід», «дослідження і розробки» та
«інновація». Так, за його оцінками винахід — це ідея, яка може бути
використана у сфері бізнесу. Дослідження і розробки — це науково-технічна
діяльність, яка може здійснюватись як на виробництві, так і в різних
установах. Інновація — це комерційне впровадження нової технології чи
нових засобів виробництва.
Слід зазначити, що на сьогодні теорія інноваційного підприємництва
відрізняється неоднозначністю і суперечностями у понятійному апараті. У
вітчизняній і зарубіжній економічній літературі та серед сучасних учених і
практиків не існує ані загальноприйнятої системи понять у цій галузі
наукових знань, ані визначення навіть таких основних категорій, як
інновація, нововведення, винахід, інноваційне підприємництво тощо.
Саме нововведення (інновація) є основним елементом у системі
інноваційного підприємництва, що визначає розвиток виробництва
матеріальних і нематеріальних благ.
Характер інноваційного підприємництва в країні на кожному етапі
економічного розвитку залежить від інноваційної політики як конкретного
суб’єкта підприємницької діяльності, так і держави в цілому. Інноваційне
підприємництво конкретного підприємця можна умовно поділити на такі
стадії: пошук нової ідеї та її оцінка, складання бізнес-плану, пошук ресурсів,
виробництво товару і випробування його на ринку, управління створеним
підприємством.
З другого боку, з макроекономічних позицій інноваційне підприємництво
можна розглядати як модель, форму розширеного економічного відтворення
на основі впровадження інновацій у всі сфери суспільного життя.
Інноваційне підприємництво надає економіці динамічних змін, а економічна
теорія набуває нових характеристик, рис та якостей. Саме в такому контексті
інноваційне підприємництво в умовах трансформаційної економіки стає
новою галуззю знань економічної теорії.
У політико-економічному значенні інноваційне підприємництво — це
особлива підсистема економічних відносин, які формуються з приводу
утворення, впровадження та розширеного відтворення нововведень.
Система понять інноваційного підприємництва включає також такі важливі
терміни, як інноваційна діяльність, інноваційний процес, інноваційний
потенціал, інноваційна політика.
Основними завданнями інноваційної політики держави на даному етапі
мають бути:
• визначення стратегії інноваційного підприємництва на середньострокову та
віддалену перспективу для прискорення структурної перебудови економіки;
• прогнозування найбільш доцільних траєкторій розвитку інноваційного
підприємництва в країні та її окремих сферах;
• фінансування фундаментальних досліджень;
• підтримка досліджень прикладного характеру, що передбачають створення
нових моделей для передавання у сферу матеріального виробництва;
• формування в країні правового поля для забезпечення економічної
зацікавленості суб’єктів інноваційного підприємництва у створенні новацій
та їх упровадженні для радикальної зміни темпів зростання економіки;
• формування стійкого економічного механізму розвитку наукової та
інноваційної діяльності для надання їй відтворювального характеру;
• формування ефективної організаційної структури управління інноваційним
підприємництвом;
• створення умов для маневру інвестиційними ресурсами за потреби їх
концентрації на ключових завданнях;
• координація процесу підготовки кадрів для реалізації державної політики у
сфері інноваційного підприємництва;
• забезпечення контролю на всіх етапах інноваційного підприємництва з
метою досягнення визначених цілей економічного розвитку з найменшими
витратами.
Готовність і здатність економіки країни та окремих суб’єктів підприємництва
створювати новації та впроваджувати їх характеризує інноваційний
потенціал країни або окремого суб’єкта. Інакше кажучи, інноваційний
потенціал — це сукупність різноманітних ресурсів (матеріальних,
сировинних, фінансових, трудових, інтелектуальних тощо), необхідних для
здійснення інноваційного підприємництва.

4. Етапи й тенденції розвитку інформаційних систем


Історія створення і розвитку інформаційних систем тісно пов'язана з
автоматизацією діяльності підприємств та організацій, розвитком моделей їх
управління.
Етапи:
Інформаційні системи першого покоління виникли на початку 60-х років 20-
го століття при необхідності автоматизації управління підприємством на базі
великих ЕОМ (електронних обчислювальних машин) і централізованого
оброблення інформації. Вони створювались для управління окремими
підрозділами чи видами діяльності і з часом інтегрувались у комплексні
автоматизовані системи. В зарубіжній літературі дані системи мають назву
Data Processing System - DPS (системи електронної обробки даних). У
вітчизняній - автоматизовані системи управління (АСУ) - позадачний підхід.
Для інформаційних систем першого покоління характерним є ефективна
обробка запитів, використання інтегрованих файлів для зв'язування між
собою задач і генерування зведених звітів для керівництва. Кожна система
була націлена на конкретне застосування, і тому опис її функцій був
мінімальний і призначався для спеціаліста в цій предметній галузі.
Другий етап (70-80-і роки XX ст.) характерний розробленням програмних
продуктів відповідно до концепцій MRP і MRP II:
o MRP (Material Requirements Planning) - планування потреби в матеріалах.
o MRPII (Manufactory Resource Planning) - планування ресурсів підприємства.
СІМ (Computer Integrated Manufactoring) - комп'ютеризоване інтегроване
виробництво, передбачає інтеграцію всіх підсистем: керування постачанням,
виробництвом, транспортно-складськими системи, якістю, збутом тощо.
Однією з передумов виникнення інформаційних систем другого покоління
було створення концепції комп'ютеризованого інтегрованого виробництва
СІМ на початку 80-х років, яка передбачала автоматизацію інтеграції
гнучкого виробництва й системи керування підприємством на основі
потужних комп'ютерів. Розвиток автоматизованих систем управління
підприємством в технологічному плані йшов шляхом від файлових систем до
систем управління базами даних (СУБД), ускладнення технічних засобів і
збільшення їх потужності, розширення переліку завдань, які вирішувалась.
Третій етап (початок 90-х років) характерний розробкою програмних
продуктів відповідно до концепції ERP (Enterprise Requirements Planning) -
планування ресурсів підприємства та переходом на нову технічну платформу
- ПК, тобто від мейнфреймів із централізованою обробкою інформації до
відкритих систем з розподіленою обробкою даних і комп'ютерних мереж.
Широкого застосування набувають сучасні корпоративні інформаційні
системи R/3, Вааn IV, Scala, Галактика та ін. Розвиваються клієнт-серверні,
web-серверні та Інтернет-технології.
Четвертий етап (початок третього тисячоліття) характерний глобальною
комп'ютеризацією суспільства. Основу структури корпоративних
інформаційних технологій визначає методологія CSRP (Customer
Synchronized Resource Planning) - планування ресурсів, що синхронізоване з
покупцем. Відображає весь цикл виробництва - від проектування і взаємодії
із замовниками до подальшого сервісного обслуговування.
Сучасний стан розвитку інформаційних технологій характеризується
переходом на використання Internet/Intranet-технологій.
Особливості інформаційних систем четвертого покоління полягають в:
o максимальному використанні потенціалу ПК і середовища розподіленої
обробки даних;
o модульній побудові системи (поєднання різних типів архітектурних рішень
у межах одного комплексу);
o економії ресурсів системи за рахунок централізації зберігання та обробки
даних на вищих рівнях системи;
o наявність ефективних централізованих засобів мережевого системного
адміністрування.
Зазначимо, що на кожному етапі розвитку інформаційні системи нового
покоління не заважали розвитку попередніх, а просто розширяли діапазон їх
застосування. В деяких сучасних гібридних системах присутні елементи всіх
поколінь ІС.
Тенденції розвитку інформаційних технологій.
Сьогодні можна спостерігати дві антагоністичні тенденції розвитку ІТ.
Перша тенденція пов'язана з небезпечним впливом машинізації на
свідомість та поведінку людей: проникненням ІТ в економічну діяльність
суспільства для отримання надприбутків, здійснення інформаційного
неоколоніалізму, розгортання інформаційних війн, формування у населення
виявів насилля, агресії, перетворення молодшого покоління у комп'ютерних
рабів, пропаганда сексуальних збочень. ІТ можуть зруйнувати особисте
життя людей та організацій. Великої ваги набуває вплив електронних засобів
масової інформації, через відсутність критеріїв відбору якісної та достовірної
інформації виникає небезпека дезінформації. Процес адаптації до нових
прийомів та методів роботи людьми старшого покоління проходить важче,
ніж молодшого покоління. Збільшується дистанція між працівниками
інформаційної індустрії та тими, хто не належить до інформаційної еліти.
Друга тенденція розвитку ІТ полягає в тому, що застосування сучасних
технологій має формувати гармонійне, культурне суспільство без державних
кордонів, вікових, освітніх, статевих, національних обмежень, на основі
миролюбства, духовності та партнерства. Зменшується відстань між
спеціалістами ІТ та користувачами. Прогнозується перетворення всієї земної
кулі в єдине інформаційне суспільство, де люди проживатимуть в
електронних квартирах і працюватимуть у віртуальних офісах, обладнаних
уніфікованим програмним та апаратним забезпеченням.
На сучасному етапі розвитку суспільства ринкова економіка - це передусім
інформаційна економіка. Накопичені інформаційні ресурси - ключ до успіху
в економічній діяльності. Забезпечення сумісності є важливою
технологічною проблемою для постачальників та користувачів
інформаційних продуктів. Щоб вирішити цю проблему, Міжнародна
організація з питань стандартизації (ISO - The International Standards
Organization) розробила систему стандартів, які дають змогу розробникам
програмних та апаратних засобів створювати сумісні інформаційні продукти,
координуючи, наприклад, протоколи взаємодії та стандартні інтерфейси.

5. Етапи проектування інформаційної системи управління інноваційною


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

Рис.17.1. Схема етапів розробки ІС


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

6. Зміст інноваційної діяльності


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

− інноваційна діяльність на основі зовнішньої організації за допомогою


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

Найчастіше використовується другий спосіб організації інноваційної


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

7. Зміст, основні різновиди державної інноваційної політики


Державна інноваційна політика - сукупність певних напрямів, форм і методів
діяльності держави, спрямованих на створення взаємопов'язаних механізмів
інституційного, ресурсного забезпечення підтримки та розвитку інноваційної
діяльності, на формування мотиваційних факторів активізації інноваційних
процесів.
Практика управління інноваційними процесами в різних країнах дозволяє
виділити основні типи(різновиди) державної інноваційної політики.
1. Політика технологічного поштовху. Головні цілі та пріоритетні напрями
науково-технологічного та інноваційного розвитку задає держава, на основі
чого визначаються методи стимулювання інноваційної діяльності, які мають
здійснюватись через удосконалення управління в науково-технологічній та
інноваційній сферах. Такий варіант передбачає розроблення різних
державних програм, великі капіталовкладення у масштабні інноваційні
проекти, використання інших прямих форм державної участі в регулюванні
інноваційних процесів. Держава підтримує лише довгострокові інноваційні
проекти, які потребують значних фінансових вкладень, а отже, можуть
реалізовуватися лише потужними підприємствами.
2. Політика ринкової орієнтації. Передбачає провідну роль ринкового
механізму в розподілі ресурсів і визначенні напрямів розвитку науки та
техніки, а також обмеження ролі держави в стимулюванні фундаментальних
досліджень. Спрямована на створення сприятливого економічного клімату і
розвиток інформаційного середовища з метою реалізації нововведень у
фірмах, скорочення прямої участі держави в НДДКР і дослідженнях ринків, а
також прямих форм регулювання, які перешкоджають стимулюванню
ринкової ініціативи та ефективній перебудові ринку. Націлена на
короткострокові і недорогі інноваційні проекти, що реалізуються окремими
фірмами.
3. Політика соціальної орієнтації. Спрямована на соціальне регулювання
результатів НТП. Процеси прийняття рішень відбуваються із залученням
широкої громадськості за умов досягнення соціально-політичного
консенсусу. Цей тип інноваційної політики має бути поєднаний з іншими
типами у співвідношенні, яке б не перешкоджало повноцінному
економічному розвитку держави.
4. Політика, спрямована на реформування економічної структури
господарського механізму. Передбачає суттєвий вплив передових технологій
на вирішення соціально-економічних проблем, на зміну галузевої структури,
взаємодію суб'єктів господарювання, рівень життя тощо. Це потребує нових
форм організації й механізмів управління розвитком науки і техніки, а також
їх взаємодії. На сучасному етапі таку політику, разом з ринковою,
використовує Японія.
Суб'єктами інноваційної політики є державний та регіональний рівні влади,
крупні корпорації, передусім транснаціональні, наукові центри і товариства,
в контексті форм власності (а отже, й секторів, укладів економіки) —
державний, колективний, приватний, наддержавний.
Об'єктом інноваційної політики виступають не тільки і не стільки окремі
наукові та виробничі підприємств, але також налагодженість і стабільність
взаємозв'язків, системність їх взаємодії у процесі створення інновацій.
В економічній науці існують різні погляди стосовно ролі держави в
інноваційному процесі. Перший: інновації є суто ринковим процесом.
Держава визначає лише загальні правові норми цієї діяльності та спостерігає
за їх дотриманням, не втручаючись безпосередньо в інноваційний процес
Друга, протилежна, концепція: ринок цікавлять лише поточні корисні
інтереси, він не в змозі
взяти на себе перспективні інноваційні завдання. Основним інноватором є
держава, яка визначає стратегічні цілі й склад інновацій, концентрує
необхідні для цього кошти, фінансує діяльність інноваторів — осіб та
організацій і жорстко контролює результати інноваційної діяльності. Третя,
інтегральна концепція поєднує переваги двох попередніх та ліквідує властиві
їм недоліки. Основними інноваторами поліпшуючих інновацій є вчені,
підприємці. Вони вкладають власні кошти на свій страх і ризик.
До інструментів створення сприятливого середовища для інноваційної
діяльності відносять передусім податкові пільги, пільгове кредитування і
субсидування; страхування і гарантування; надання прав на прискорену
амортизацію устаткування; розвиток державою патентного права; системи
стандартизації і сертифікації виробництв та окремих видів продукції;
регулювання монопольних підприємств і видів діяльності, сприятливих умов
для міжнародної комерційної діяльності; розвиток і підтримка системи освіти
в країні; створення умов для особистісного розвитку людини, соціальне
страхування, охорона здоров'я, довкілля тощо.
Слід підкреслити, що тільки визначення пріоритетних напрямів державної
інноваційної політики та відповідних програм, хоч би які важливі вони не
були, не здатне вивести державу вперед по шляху інноваційного розвитку.
Головне завдання державного регулювання інноваційної діяльності полягає у
створенні та використанні механізмів реалізації цих пріоритетів
і програм.

8. Інноваційна політика в окремих галузях економіки


Кожний товар, починаючи свій шлях до ринку, проходить етап генерації ідей,
тобто на цьому етапі закладаються основи його комерційного успіху. Тому
інноваційна політика - це основа товарної політики.
Під інноваційною політикою розуміють процес пошуку ідеї та створення
нового товару з урахуванням потреб споживачів, вихід нового товару на
ринок, спостереженням за його реалізацією та поведінкою. Під новим
товаром розуміють п'ять типів товарів:
- принципово новий товар, що задовольняє ті потреби споживачів, які раніше
були незадоволеними;
- товар принципової новизни відносно наявних товарів-аналогів;
- оновлені товари з удосконаленими характеристиками, новими
властивостями відносно традиційних товарів;
- товар, що є новим для конкретного ринку;
- товар нової сфери використання.
Інноваційна політика держави ґрунтується на певній інноваційній стратегії.
Виділяють три стратегічні моделі інноваційної політики:
1. Модель стратегії "перенесення " полягає у використанні наявного
зарубіжного науково-технічного потенціалу в економіці власної країни через
закупівлю ліцензій на високоефективні технології для освоєння виробництва
продукції нових поколінь, що користується попитом за кордоном.
2. Модель стратегії "запозичення "передбачає освоєння випуску наукомісткої
продукції, яку виробляли раніше в індустріально розвинутих країнах, на
основі використання дешевої робочої сили та частини науково-технічного
потенціалу власної країни.
3. Модель стратегії "нарощування" полягає в тому, що з використанням
власного науково-технічного потенціалу, залученням іноземних учених,
об'єднанням результатів фундаментальної і прикладної науки можна
створювати нові продукти і технології, які використовуються на виробництві
та в соціальній сфері.
Найуспішніші галузі української економіки - це IT, агро, хімічне
виробництво і фармацевтика.
Серед факторів успіху IT-бізнесу в Україні виділяють:
1)високий рівень інтеграції у глобальні ланцюги доданої вартості
2) сприятливий режим оподаткування
3)трудові відносини за межами українського законодавства
4)висока кваліфікація працівників
5)аутсорсинг
Серед факторів успіху агро-бізнесу в Україні виділяють:
⎯ Значний земельний потенціал
⎯ Сприятливі кліматичні умови
⎯ Висока рентабельність вирощування у рослинництві
⎯ Низька вартість робочої сили
Серед факторів успіху хімічного виробництва в Україні виділяють:
⎯ Попит на внутрішньому ринку
⎯ Відкриття нових та відновлення існуючих виробництв
Серед факторів успіху фармацевтики в Україні виділяють:
⎯ Стабільний внутрішній попит та переорієнтація внутрішніх споживачів
на внутрішню продукцію
⎯ Цінова конкурентоспроможність

9. Інноваційні процеси в соціально-економічних системах


В економічній літературі можна виділити різні підходи щодо визначення
сутності інноваційних процесів. Традиційно інноваційний процес
досліджують у вигляді деякої тимчасової послідовності наступних етапів:
пошукові дослідження (Ідея), науково-дослідні (НДР) і дослідно-
конструкторські роботи (ДКР), підготовка виробництва, виробництво й
реалізація наукоємної продукції або послуг. Дана послідовність покладена в
основу ряду методик по проведенню оцінок ефективності фінансування
проектів на етапі їх підготовки, а також по відслідковуванні фінансових
потоків на етапі реалізації.
Разом з перевагами, поетапне дослідження інноваційного процесу залишає на
другому плані питання, пов'язані з визначенням ролі кожного з суб'єктів
інноваційної діяльності та їх взаємодією в рамках конкретного підприємства.
В зв'язку з цим, аналізуючи кожного з учасників як власника певного
ресурсу, доцільно використовувати підхід до моделювання інноваційного
процесу як до процесу інтеграції технологій, виробництва, управління,
фінансів, інформації [6].
За висновками Завліна П. Н. інноваційний процес – це процес перетворення
наукового знання в інновацію, який можна представити як послідовний
ланцюг подій, в ході яких інновація визріває від ідеї до конкретного
продукту, технології або послуги і поширюється при практичному
використанні. Цей процес не уривається і після впровадження новини у
виробництво, бо у міру поширення воно удосконалюється, робиться
ефективнішим, набуває раніше невідомих споживчих властивостей [7]. Такий
підхід розглядає інноваційний процес на рівні підприємства в цілому не
враховуючи його особливості в межах внутрішнього середовища.
Поряд з тим, Л.А. Евсеева вважає, що інноваційний процес - діяльність по
створенню, реалізації й поширенню інновацій в суспільному виробництві а
саме: створення готової до вживання розробки, що пройшла всі стадії
перевірки на виробництві й у споживача [8].
Цю ж ідею підтримують і А.Д.Корчагин, Ю.Г. Смирнов і стверджують, що
інноваційний процес можна представити в такому технологічному ланцюзі:
дослідження - створення об'єкту техніки і технологій - його правова охорона
- введення в господарський обіг об'єкту техніки й технологій
(комерціалізація).
Існує твердження, що інноваційний процес визначається інноваційними
чинниками, абсолютно необхідними для його здійснення такими як:
правовий, технічний, соціальний, економічний і культурний конкретними
умовами, в яких розгортається інноваційний процес, а також інноваційним
менеджментом, який пов’язав інноваційні чинники й діє в цих конкретних
умовах і в конкретному середовищі. Існує багато загального між процесами
промислового виробництва і інноваційними процесами в тому, що стосується
таких чинників виробництва, як праця, інфраструктура, матеріали, капітал і
знання, і інноваційних чинників, навіть коли процес протікає значно
складніше і вимагає набагато більших професійних знань [10].
Група авторів вважає, що інноваційні процеси є постійним і безперервним
потоком перетворення конкретних технічних або технологічних ідей на
основі наукових розробок в нові технології або окремі її складові частини і
доведення їх до освоєння безпосередньо у виробництві з метою здобуття
якісно нової продукції [11].
За висновками О. Г. Мендрула інноваційний процес – це сукупність
послідовних дій із створення й впровадження нових або вдосконалених
технологій. Він вимагає залучення багатьох функціональних сфер, у тому
числі, служби НІОКР, маркетингу, виробництва, фінансів, персоналу. Від
того наскільки ефективний кожен підрозділ виконає поставлені перед ним
цілі й завдання, залежатиме результативність інноваційної діяльності на
підприємстві в цілому. Важливе значення при цьому має не лише
порівняльна оцінка господарських результатів, але і аналіз організаційно-
економічних дій, які сприяли досягненню підсумкових інноваційних
показників [12]. Такий підхід обмежує інноваційний процес окремим
підрозділом підприємства не враховуючи окремі бізнес–процеси.
Також, інноваційний процес - процес змін елементів системи й взаємозв'язків
між ними, внутрісистемний процес формування результату, процес реакції
системи у відповідь на зміну зовнішніх умов, в першу чергу, на зміну вимог
ринку [13].

10. Інноваційні технології в процесі ухвалення управлінських рішень


Інноваційну діяльність компанії можна розглядати як процес послідовних і
взаємопов’язаних дій. Згідно з процесним підходом до управління для того,
щоб управляти організацією, необхідно управляти процесами.
Інноваційний процес, результатом якого має стати виведення нового товару
або послуги на ринок, можна розділити на дві основні стадії:
1) наукові дослідження і конструкторські розробки (найтриваліша стадія, що
містить фундаментальні, прикладні дослідження, дослідно-конструкторські
роботи);
2) виведення товару на ринок і проходження усіх стадій життєвого циклу
товару.
Модель інноваційного розвитку має спонукати до вирішення завдань:
– розширити можливості для генерування потоку ідей (сприяння розвитку
культури інноваційності в компанії, залучення більшої кількості зацікавлених
людей у потрібний час, сприяння колективній участі працівників в
інноваційному процесі);
– формалізувати і структурувати інноваційний процес (забезпечення балансу
креативності й дисципліни, визначення термінів прийняття ключових рішень
і виконання робіт, страхування
інтелектуального капіталу від ризиків та управління ним);
– оптимізувати показники окупності інвестицій (ROI) і скоротити період від
початку розробки товару до його виходу на ринок (TTM) (установлення
об’єктивних стратегічних критеріїв
відбору ідей для максимізації релевантності, капіталізація бізнес
можливостей завдяки покращанню надійності та швидкості відбору ідей,
максимізація фінансової віддачі від відібраних інноваційних проектів,
оптимізація бюджетних асигнувань відповідно до стратегічного значення
інноваційних проектів).
Провідні компанії світу використовують різноманітні алгоритми управління
інноваційним процесом, спрямовані на виконання зазначених вище завдань.
Наприклад, компанія Microsoft розробила спеціальний алгоритм
прийняття рішення інноваційного розвитку:
1) напрацювання стратегії – визначаються головні чинники та показники
розвитку компанії, розставляються пріоритети між ними;
2) фіксація ідей – ідеї збираються і фіксуються на централізованому
колективному порталі, доступному для всіх працівників компанії та, як
варіант, для її клієнтів. До обговорення залучаються експерти як усередині,
так і зовні компанії. Починається створення бізнес-кейсу. В процесі робочого
обговорення та завдяки колективній технології співпраці формуються і
виділяються робочі команди й спільний робочий простір для аналізу
майбутнього проекту;
3) створення проекту – вивчається стратегічне значення ідеї, її ринковий
потенціал, проводиться фінансовий аналіз, SWOTаналіз. Результати аналізу
публікуються для загального вивчення.
Інші члени спільноти можуть залишати зворотній зв’язок, а саме:
забезпечувати рейтинговими оцінками, критичними оглядами для визначення
пріоритетності та цінності ідеї;
4) оцінювання та відбір – відбираються найперспективніші ідеї відповідно до
пріоритетних бізнес-параметрів, аналізу та об’єктивної оцінки бізнес-кейсу.
Приймаються ідеї з найвищим рейтингом;
5) створення проектної команди – команда підбирається з урахуванням
наявності компетенцій, зацікавленості у реалізації проекту. На цьому етапі
фіналізується проектний документ, визначається обсяг необхідних ресурсів і
навички для виконання проекту та моніторингу прогресу;
6) затвердження – остаточне затвердження фінансування відібраних проектів
і перехід до їхньої реалізації.
11. Інформаційне забезпечення в системі управління інноваційною
діяльністю підприємства
Будь-яке підприємство функціонує в певному середовищі і обмінюється з
ним інформаційними потоками. Особливого значення інформація набуває в
інноваційній діяльності. Адже досить часто її або не вистачає, або вона є
недостатньо достовірною, або з її взагалі немає. На сьогодні інформація є
таким самим товаром, як і продукція підприємств, при цьому значно
дорожчим. Через це багато підприємств постійно відчувають інформаційний
голод. Тому постійний збір на аналіз інформації є одним з головних завдань
на підприємствах-інноваторах.
На кожній стадії інноваційного циклу, а також залежно від типу інновації
джерела інновації мають свої характерні особливості. Так, на стадії появи ідеї
про інновації більше значення має зовнішня інформація, яка знаходиться
поза підприємством. Так, для споживчих інновацій, ця інформація
здобувається шляхом проведення маркетингових досліджень, а для інновацій
промислового призначення – шляхом участі в різних виставках, семінарах,
вивченню спеціалізованої літератури, закордонним стажуванням тощо. Крім
того, одним з популярних на сьогодні джерел інформації є мережа Internet,
який використовується підприємствами не лише для отримання інформації, а
й для її розповсюдження. Велика кількість інформації є випадковою, яка
доходить до підприємств не заплановано. Але вона може бути дуже
корисною, і до того ж є безкоштовною.
На стадії безпосередньої розробки інновації для оцінки внутрішніх
можливостей використовується переважно внутрішня інформація. Однак
вона повинна все рівно узгоджуватись з зовнішньою. На сьогодні існує
багато підприємств, які оснащені інформаційними технологіями, за
допомогою яких зібрати всю необхідну в середині підприємства інформацію
стає набагато швидше.
На етапі виходу на ринок підприємство повинно вже узгоджувати всю вхідну
інформацію з вихідною, тобто з тією, яку він розповсюджує зовні для
просування інновації на ринку. В даному випадку необхідно ретельно
підходити до вибору джерел просування інформації про новинку, і, що
найважливіше, мати зворотний потік інформації, який дозволить оцінити
ефективність заходів, що проводяться.
Забезпечення інформаційної підтримки інноваційної діяльності охоплює:
– створення і поповнення банків даних науково-технічних результатів і
потенційних можливостей виконавців науково-технічних програм і проектів
за пріоритетними напрямами;
– здійснення зв'язку з віддаленими інформаційними центрами і базами даних,
у тому числі зарубіжними, з використанням українських та іноземних
телекомунікаційних систем;
– забезпечення доступу зацікавлених організацій та осіб до інформаційних
баз даних (ІБД) та інформаційних ресурсів Інтернет в галузі інноваційної
діяльності;
– пошук і відбір інноваційних проектів, пропозицій з виробництва
наукомісткої продукції для організацій і фізичних осіб, зацікавлених у їх
фінансуванні;
– створення і поповнення банків даних про споживчі властивості товарів
провідних фірм і т. п.
При цьому необхідно забезпечити:
– можливості для кожного з учасників інноваційного процесу отримувати як
загальну, так і спеціальну (відповідну розв'язуваним їм завданням)
інформацію;
– можливість нарощування відомостей про науково-технічні розробки
(створення та зберігання історії розробки – від отримання корисної ідеї до
здійснення випуску нової продукції і сфер її застосування);
– забезпечення доступу до різних джерел інформації, необхідних для
прийняття рішення, а за її відсутності – до потенційних контрагентів, які
можуть мати або підготувати дану інформацію;
– наявність відомостей про потенційних партнерів по здійсненню
інноваційного процесу на всіх етапах його здійснення за основними
функціями (від інноваційного менеджменту до сприяння використанню нової
продукції / послуги кінцевим споживачем);
– виконання деяких "інтелектуальних" функцій, тобто за відсутності в базах
даних необхідної інформації надавати не лише негативну відповідь, а й
перелік об'єктів, що частково відповідають запитам, інформацію про
суб'єктів, які можуть знайти інформацію, та ін.

12. Класифікація та життєвий цикл інновацій


При прийнятті рішення про виготовлення нового продукту, впровадження
нової технології, інших технічних чи організаційних новацій слід
враховувати їх потенційні можливості, тобто величину вигоди, яку матиме
підприємство, реалізувавши інновацію. Потенційні можливості інновації, у
свою чергу, залежать від того, на якій стадії її життєвого циклу конкретне
підприємство прийме рішення про її залучення у свою діяльність.
Життєвий цикл інновації — період від зародження ідеї, створення новинки та
її практичного використання до моменту зняття з виробництва.
За своїм характером життєвий цикл інновації відповідає типовому життєвому
циклу товару і проходить етапи розроблення, просування на ринок,
зростання, зрілості та занепаду, які характеризуються різним
співвідношенням витрат, пов’язаних з розробленням та виведенням новинки
на ринок, і доходів від її продажу. Кожен етап життєвого циклу інновації
охоплює кілька стадій, які відрізняються за змістом робіт.
Етап розроблення. Включає стадії зародження ідеї, проведення науково-
дослідних і дослідно-конструкторських робіт для перетворення ідеї на
придатний для промислового виготовлення продукт, розроблення технології
його виробництва.
Етап виведення на ринок. На цьому етапі відбуваються налагодження
технологічного процесу, випуск пробної партії та її ринкова апробація,
формування стратегії та каналів збуту. На цьому етапі прибуток відсутній,
оскільки витрати перевищують доходи від продажу.
Етап зростання. Період швидкого сприйняття нового товару ринком і
швидкого зростання прибутків.
Етап зрілості. Характеризується уповільненням темпів збуту внаслідок
придбання товару більшістю покупців. Товар перестає бути новинкою.
Прибуток стабілізується або зменшується у зв’язку зі зростанням витрат на
його захист від конкурентів. Цим етапом життєвий цикл інновації фактично
завершується.
Етап занепаду. Різке падіння збуту і зниження прибутків. Товар знімають з
виробництва.
Як правило, такі стадії життєвого циклу проходить технічно складна
інновація, створення якої вимагає попередніх досліджень ефективності
технічного рішення, взятого за її основу, конструкторського розроблення
дослідного зразка, його апробації, вдосконалення, розроблення технології
виготовлення тощо. Цей процес може бути тривалим і не обов’язково
завершуватися успіхом.
Оригінальне інноваційне спостереження було зроблено Н. Д. Кондратьєвим в
20-х роках, що виявив існування так званих «більших циклів» або, як їх
називають за рубежем, «довгих хвиль». Динаміка нововведень досліджується
в розрізі фаз великого циклу. У дослідженнях Н. Д. Кондратьєва вперше
проглядаються основи так званого кластерного підходу. Н. Д. Кондратьєв
показав, що нововведення розподіляються за часом нерівномірно,
з’являючись групами, тобто говорячи сучасною мовою, кластерами.
Рекомендації Н. Д. Кондратьєва можуть бути використані при виробленні
інноваційної стратегії.
Слід зазначити, що одна й та сама іновація може належати до кількох
класифікаційних груп, наприклад, бути продуктовою (за предметним змістом
інноваційної діяльності), споживчою (за її адресатом), ординарною (за рівнем
новизни) і т. ін.
При цьому інноваційна діяльність може потребувати створення кількох
взаємопов'язаних інновацій: нового продукту та технології його
виготовлення, нової системи управління виробництвом і збутом,
застосування нових маркетингових прийомів просування інновації на ринок і
т. п.

13. Конкурентоспроможність інновацій і економіки


Одним із найважливіших стимулів для інноваційного розвитку, повинно
стати створення умов добросовісної конкуренції у всіх галузях економіки.
Саме завдяки конкурентній боротьбі суб'єкти господарювання змушені
розробляти та впроваджувати нововведення у вигляді нових видів продукції
та послуг, інноваційних технологій, соціально-економічних та організаційно-
технічних рішень виробничого, фінансового, комерційного, або іншого
спрявування.
В свою чергу, ці інновації сприяють підвищенню конкурентоспроможності
товарів та послуг, успішному представленню їх на внутрішньому та
зовнішніх ринках, що безперечно є важливим мотиваційним чинником
подальшого інноваційного розвитку в країні. І навпаки, за умови, коли
конкуренція відсутня на товарному ринку, то для суб'єктів господарювання
відсутні і стимули для інноваційного розвитку. А саме, на монополізованих
ринках підприємці не бачать вагомих причин для витрачання коштів на
удосконалення виробництва чи покращення якості товарів і послуг, оскільки
вони і так впевнені, що їх продукція знайде свого споживача.
Для забезпечення інноваційного розвитку національної економіки та
забезпечення її конкурентоспроможності необхідним є створення моделі
ефективної конкуренції (рис. 1). Ефективна конкуренція здійснює вплив як
на технологічні, так і на продуктові інновації. В умовах модернізації
ефективна конкуренція повинна бути спрямована на розвиток внутрішнього
виробництва завдяки швидкому впровадженню інновацій.
Під ефективною конкуренцією, як правило, розуміють такі ринкові умови, за
яких cуб'єкти господарювання перебувають під розумно допустимим рівнем
конкурентного тиску з боку наявних та потенційних конкурентів та
споживачів, а роль держави полягає у тому, щоб забезпечити наявність
такого тиску на ринку. Поняття "ефективної конкуренції" дало змогу відійти
в економічній теорії від поділу конкуренції на досконалу та недосконалу.
Ефективна конкуренція стає важливим фактором економічного зростання, не
порушуючи при цьому рівноваги внутрішнього ринку. Слід зазначити, що в
науковій літературі поки, що немає єдиної точки зору щодо поняття
ефективна конкуренція, що зумовлює необхідність продовження наукових
досліджень та наукових дискусій щодо цієї економічної категорії. У
господарській практиці ефективна конкуренція повинна забезпечувати
найвищу ефективність виробництва, яка досягається за рахунок
раціонального розміщення виробничих ресурсів та мінімізації затрат на
виробництво. Зростання інноваційної активності, підвищення ефективності і
конкурентоспроможності економіки України у глобалізованому середовищі
неможливе без розвитку ефективної конкуренції. Світовий досвід показує,
що розробка і впровадження інновацій – це не лише шлях до підвищення
конкурентоспроможності окремих підприємств, але й серйозний стимул
економічного розвитку країни. В умовах безперервних технологічних
змагань найбільші іноземні компанії здійснюють постійне стимулювання
інноваційного процесу. Уряди економічно розвинених країн приділяють
постійну увагу інноваційній політиці і стежать за ефективністю інноваційних
технологій, що впроваджуються. Реалізуючи стратегію інноваційного
розвитку країни, урядові органи створюють необхідні умови для розробки і
реалізації інновацій. Отже, сучасний стан економічного зростання
характеризують три явища – конкуренція, інновації та
конкурентоспроможність, які здійснюють значний взаємовплив один на
одного (рис. 2).

14. Критерії показників оцінки ефективності інноваційного бізнесу


Ефективність упровадження інноваційних розробок потрібно аналізувати за
допомогою інноваційного потенціалу, що являє собою сукупність
взаємодіючих і взаємозв’язаних організаційно-управлінських, науково-
технічних, виробничих, фінансово-економічних, маркетингових ресурсів, які
мають учасники інноваційного процесу і використовують при впровадженні
інноваційних розробок [16]. Сумісна позитивна дія використання ресурсів
забезпечує істотне підвищення результативності впровадження інноваційних
розробок. Оцінювання ефективності впровадження інноваційних розробок
повинне стати об’єктом безперервної управлінської діяльності на всіх етапах
інноваційного процесу.
Ефективне функціонування механізму впровадження інноваційних розробок
передбачає, що кожен його організаційно-економічний елемент відповідає
вимогам успішної комерціалізації інновацій.
Оцінювання ефективності впровадження інноваційних розробок вимагає
цілісної методики, що передбачає виділення ефектів упровадження
інноваційних технологій, необхідність формування системи критеріїв та
показників, за допомогою яких можуть бути оцінені результати
інноваційного процесу.
Система критеріїв та показників оцінювання ефективності упровадження
інновацій будується на основі процесів визначення ефектів впровадження
інноваційних розробок; визначення критеріїв, показників і практичних
процедур; формування висновків за результатами оцінювання реалізації
інноваційного процесу з метою вдосконалення механізму впровадження
інноваційних розробок. Оцінювання ефективності впровадження інновації
повинне передбачати аналіз цілей із позиції кожного учасника інноваційного
процесу (виробників, споживачів, компаній-інтеграторів, держави, інвесторів
та ін.), що, у свою чергу, сприяє визначенню ефектів упровадження
інноваційних розробок і впливає на розроблення системи критеріїв і
показників.
До критеріїв показників оцінки ефективності інноваційного бізнесу
відносять:
− Чиста поточна вартість
− Внутрішня норма дохідності
− Індекс прибутковості вкладень
− Рентабельність інвестицій
− Рентабельність продажу
− Рентабельність продукції
− Дисконтований період окупності
− Зростання збуту
− Посилення ринкових позицій та інші

15. Методи вимірювання рівня інноваційного розвитку підприємства
В дослідженні Маслак О.І. та Квятковської Л.А. «Система оцінки показників
інноваційного потенціалу промислового підприємства» [6] також визначено
певну систему показників оцінки ефективності інноваційної діяльності
підприємства, до яких віднесено:
– показники виробничої ефективності науково-технічних заходів: темп
приросту ефективності виробництва конкретних видів продукції (робіт) від
використання науково-технічних заходів; відносна економія собівартості
продукції в результаті запровадження науково-технічних заходів;
– показники фінансової ефективності науково-технічних заходів: приріст
прибутку в результаті реалізації науково-технічних заходів; приріст доданої
вартості, включаючи амортизацію, в результаті реалізації науково-технічних
заходів, у тому числі за рахунок інтенсивних і екстенсивних факторів;
приріст доходу за рахунок реалізації науково-технічних заходів;
– показники інвестиційної ефективності науково-технічних заходів: ці
показники характеризують кількість впроваджених науково-технічних
засобів, зростання питомої ваги прогресивних технологічних процесів та
нових інформаційних технологій, підвищення коефіцієнта автоматизації та
організаційного рівня виробництва і праці, кількість патентів або авторських
свідоцтв, індекс цитування, підвищення конкурентоспроможності
підприємства, товарів (послуг) на ринку.
В науковій праці Т. М. Пілявоз «Методологічні підходи щодо оцінювання
інноваційного розвитку підприємства»[7] на мою думку проаналізованни і
представлено узагальнену систему оцінювання інноваційного розвитку
підприємства, яка, в свою чергу, має класифікаційний поділ змістовної
оцінки кількісних показників (табл.2).
Таблиця 2. Узагальнена система економіко-соціального оцінювання
інноваційного розвитку підприємства [8]
Вид показника Відповідні коефіцієнти
ПОКАЗНИКИ РІВНЯ ІННОВАЦІЙНОГО ПОТЕНЦІАЛУ РОЗВИТКУ
ПІДПРИЄМСТВА

Виробничо-технологічні коефіцієнт оновлення продукції (П(1.1)),


показники коефіцієнт основних виробничих фондів (П(1.2)),
коефіцієнт фондовіддачу (П(1.3)),
коефіцієнт матеріаломісткості (П(1.4)),
коефіцієнти механізації та автоматизації
виробництва (П(1.5)),
коефіцієнт прогресивності технологій (П(1.6))
Науково-технічний коефіцієнт наукомісткості (П(1.7)).
показник
Фінансово-економічні коефіцієнт самофінансування (П(1.8)),
показники коефіцієнт використання позиченого капіталу
(П(1.9)),
коефіцієнт витрат на придбання результатів
НДДКР (П(1.10)),
коефіцієнт рентабельності інвестиційної
діяльності (П(1.11)),
коефіцієнт рентабельності реалізованої
інноваційної продукції (П(1.12)).
Трудові показники коефіцієнт плинності кадрів (П(1.13)),
коефіцієнт частки спеціалістів, які виконують
наукові та науково-технічні роботи (П(1.14)).
ПОКАЗНИКИ РІВНЯ МАРКЕТИНГОВОГО ЗАБЕЗПЕЧЕННЯ
ІННОВАЦІЙНОГО РОЗВИТКУ ПІДПРИЄМСТВА
Система маркетингових коефіцієнт ринкової частки (П(2.1)),
показників коефіцієнт передпродажної підготовки (П(2.2)),
коефіцієнт зміни обсягів продажу (П(2.3)),
коефіцієнт доведення продукту до споживача
(П(2.4)),
коефіцієнт рекламної діяльності (П(2.5)),
коефіцієнт використання зв’язків з
громадськістю (П(2.6)).
ПОКАЗНИКИ СОЦІАЛЬНОГО РІВНЯ ІННОВАЦІЙНОГО РОЗВИТКУ
ПІДПРИЄМСТВА

Показники розвитку коефіцієнт кваліфікаційного рівня (П(3.1)),


системи гуманізації коефіцієнт можливості для розвитку працівників
праці та їхнього професійного зростання (П(3.2)),
коефіцієнт витрат на підготовку та навчання
працівників (П(3.3)),
коефіцієнт рівня соціальної напруженості в
трудовому колективі (П(3.4)),
коефіцієнт участь працівників в управлінні
підприємством (П(3.5)).
Показники розвитку коефіцієнт формування доходів працівників та
системи соціальних рівень оплати праці (П(3.6)),
гарантій персоналу коефіцієнт участі підприємств у соціальній
підтримці працівників (П(3.7)).
Показники розвитку коефіцієнт відповідності робочих місць
системи безпеки та санітарно-гігієнічним вимогам (П(3.8)),
охорони праці коефіцієнт рівня безпеки та охорони праці на
підприємстві (П(3.9)).
Показники розвитку коефіцієнт виконання обов’язків перед
системи корпоративної бюджетом (П(3.10)),
відповідальності коефіцієнт створення робочих місць (П(3.11)),
коефіцієнт витрат на екологізацію виробництва
(П(3.12)).

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

16. Механізми регулювання інноваційної діяльності в різних


господарських системах

Згідно із Законом України «Про інноваційну діяльність» головною метою


державної інноваційної політики є створення соціальноекономічних,
організаційних і правових умов для ефективного відтворення, розвитку і
використання науково-технічного потенціалу країни, забезпечення
впровадження сучасних екологічно чистих, безпечних, енерго- та
ресурсозберігаючих технологій, виробництва та реалізації нових видів
конкурентоздатної продукції.
Здійснення державного регулювання інноваційної діяльності відбувається
шляхом: 1. Визначення і підтримки пріоритетних напрямів інноваційної
діяльності державного, галузевого, регіонального і місцевого рівнів. 2.
Формування і реалізації державних, галузевих, регіональних і місцевих
інноваційних програм. 3. Створення нормативно-правової бази та
економічних механізмів для підтримки і стимулювання інноваційної
діяльності. 4. Захисту прав та інтересів суб'єктів інноваційної діяльності. 5.
Фінансової підтримки виконання інноваційних проектів. 6. Стимулювання
комерційних банків та інших фінансово-кредитних установ, що кредитують
виконання інноваційних проектів. 7. Встановлення пільгового оподаткування
суб'єктів інноваційної діяльності. 8. Підтримки функціонування і розвитку
сучасної інноваційної інфраструктури [2].
Під державною інноваційною політикою розуміють комплекс правових,
організаційно-економічних та інших заходів держави, спрямованих на
створення належних умов для розвитку інноваційних процесів в економіці,
стимулювання впровадження результатів інноваційної діяльності у
виробництво.
Розглянемо основні методи реалізації державної інноваційної політики. До
них можна віднести: - надання суб’єктам інноваційної діяльності податкових
пільг та позик на вигідних умовах; - стимулювання підприємців до
формування власних інноваційних фондів; - фінансове стимулювання; -
підтримка розвитку техніки, науки та освіти; - вдосконалення законодавчої
бази щодо інноваційної та інвестиційної діяльності; - підтримка та розвиток
міжнародного співробітництва тощо [4].
Для забезпечення підтримки розвитку інноваційної діяльності існує багато
методів та заходів. Найбільш ефективними є як заходи (методи) прямого
впливу, так і опосередкованого. До заходів прямого впливу відносять:
державні цільові програми розвитку інноваційної діяльності, пільгові
кредити, субсидії, дотації. Заходи опосередкованого впливу – це
застосування пільгової системи оподаткування для підприємств, діяльність
яких орієнтована на розвиток інновацій, оподаткування прибутку за
зниженими ставками, звільнення від сплати податків на прибуток на деякий
період (податкові канікули), страхування, митні пільги тощо[3]. Механізм
державного регулювання інноваційної політики зображено на рисунку 1.
З рисунку бачимо, що механізм державного регулювання інноваційної
політики містить у собі наступні складові: форми регулювання, методи
регулювання, цілі, складові опосередкованого та прямого впливу. До форм
регулювання інноваційної діяльності відносять бюджетне, податкове, цінове,
соціальне, структурне та грошово-кредитне. Встановлюють проміжні,
тактичні та стратегічні цілі, які досягаються через правові, адміністративні та
економічні методи регулювання інноваційної діяльності. Також виділено
складові, які прямо впливають на інноваційний процес (законодавство,
інформаційна діяльність, фінансування, заохочення та ін..) та складові
опосередкованого впливу (пільги при оподаткуванні, пільгове кредитування
та ін..).

17. Основні елементи сучасного інноваційного менеджменту і їх динаміка


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

19. Основні світові тенденції, пов'язані з переходом національних


економік на інноваційний тип
Перманентна реструктуризація та диверсифікація технологій виробництва,
асортименту продукції, методів організації виробництва та управління, а
також прийомів маркетингу стає не тільки найважливішою константою
конкурентної ринкової стратегії сучасного підприємства, але й відіграють
ключову роль в економічному і соціальному прогресі всього суспільства.
Очевидно, що успіх перспективних економічних реформ неможливий без
активізації інноваційних процесів на всіх рівнях економічної системи.
Дослідження розвитку ринку інновацій на міжнародному і національному
рівнях дозволить визначити місце України в процесі інтернаціоналізації і
глобалізації науковотехнічного розвитку.
Незважаючи на значний багаж емпіричних знань і теоретичних концепцій, у
вітчизняній економічній науці відсутня узагальнююча інноваційна теорія,
існують розбіжності з ряду важливих методологічних питань, а також
тлумачення основних категорій.
Складна ситуація, в якій опинилася Україна показала необхідність пошуку
ефективних шляхів виходу на новий тип інноваційного розвитку в стислі
терміни.
Одним з можливих шляхів виходу України з кризи є інноваційний
технологічний розвиток на основі урахування досвіду найбільш успішних в
цьому відношенні країн. Поряд з позитивними факторами (наявність
інвестицій і високого технологічного потенціалу) спостерігається і
негативний вплив цих факторів. Часто відбувається вкладення додаткових
інвестицій у вдосконалення існуючих технологій, що відволікає кошти від
нових технологій, що містять більший потенціал у своєму використанні.
Тому, незважаючи на значні труднощі у формуванні ефективної національної
економіки України на основі інноваційного розвитку, країна має певні
можливості для свого технологічного розвитку [1].
Національна інноваційна система (НІС) Ę це система економічних відносин,
інститутів, структурних елементів, а також напрямів і форм реалізації
державної політики, що зумовлюють і забезпечують інноваційні процеси
(розробку, розповсюдження та впровадження інновацій), а також підвищують
на основі цього ефективність і конкурентоспроможність національної
економіки. Система економічних відносин як базовий рівень НІС повинна
відповідати, по-перше, прогресивним тенденціям загальносвітового розвитку
(змішана економіка, соціальна орієнтація, глобалізація, постіндустріалізм,
економіка знань), а, по-друге, відображати, національну специфіку країни,
особливості національної економічної моделі.
У НІС багатьох західноєвропейських країнах порівняно з США більш вагому
роль відіграє держава (особливо у фінансуванні фундаментальної науки Ę
університетської та академічної) за активної участі бізнесу в прикладних
дослідженнях і розробках. Більшої ваги набуває інтеграційний чинник:
проголошено завдання перетворити Європейський Союз на світовий центр
інновацій із одночасним збільшенням бюджетів НІОКР до 3% щодо ВВП.
Свої особливості має і японська НІС: слабкість фундаментальної науки
компенсується широким імпортом патентів, наявністю могутніх
дослідницьких підрозділів у найбільших корпораціях, розвитком прикладних
інженерних розробок, активним виходом високотехнологічної продукції на
зовнішні ринки.
Особливостями нової української НІС повинні стати такі характеристики:
− спрямованість на вирішення завдань національного розвитку, які
забезпечують формування конкурентоздатної економіки, реалізацію
національних інтересів країни, істотне підвищення рівня і якості життя
людей; забезпечення науково-технічної оборонної, економічної та
загальної національної безпеки країни;
− використання потенціалу, позитивного досвіду і традицій радянської
інноваційної системи, творчого заряду російських соціокультурних
цінностей;
− опора переважно на власну базу знань і орієнтація одночасно як на
внутрішній ринок із метою зміцнення та підвищення рівня
національної економіки, так і на зовнішній ринок із метою подолання
сировинної спрямованості експорту і посилення ролі у світовій
економіці;
− пріоритет державного фінансування і механізмів дер регулювання
інноваційного процесу в Україні при стимулюванні інших (більш
ринкових) джерел і механізмів, включаючи державно-приватне
партнерство й інноваційне підприємництво;
− сильна і масштабна інноваційна політика держави в поєднанні з
системою прогнозування, програмування і стратегічного планування
економічного розвитку.

20. Основні цілі державної інноваційної політики


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

21. Основні чинники активізації інноваційної діяльності


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

Рис. 1. Чинники впливу на інноваційну активність підприємств


До внутрішніх чинників впливу на інноваційну активність підприємств
можна віднести усі ті внутрішні змінні, які мотивують працівників
підприємств до створення інновацій.
До матеріальних чинників впливу на інноваційну активність підприємств
можемо віднести фізичні умови праці та матеріальну вартість результатів
індивідуальної праці працівників. Своєю чергою, до показників оцінювання
фізичних умов праці можемо віднести обсяг фінансових ресурсів, стан
техніки та технології на підприємстві та кількість науково-дослідних
лабораторій.
До чинників, що пов'язані зі стратегією та структурою підприємства,
пропонуємо відносити правові, організаційні та стратегічні чинники. Такий
набір чинників можемо визначити як універсальний, що характерний будь-
яким підприємствам незалежно від їх місцезнаходження (регіон, держава,
материк).
Суспільство як чинник впливу на інноваційну активність підприємств відіграє
дуже важливу роль, яка проявляється в рівні економічного розвитку держави,
відкритості на зміни, ефективному організуванні та заохоченні суспільства до
інноваційних змін, які є визначальною умовою розвитку підприємств. З
огляду на це, у цій площині ми виділили дві групи чинників: суспільні та
культурні. Суспільні чинники знаходять своє відображення в динаміці
розвитку сфери досліджень та розробок, а також в розвитку освіти. Торги,
виставки, семінари, а також наукові конференції також є суспільною
ініціативою, яка може стимулювати підприємства до інноваційної діяльності.
Культурні чинники тісно пов'язані з історією окремих держав. Наступним
важливим фактором впливу на інноваційну активність підприємств є
економічна політика держави, в межах якої можемо виділити економічні,
політичні, правові та екологічні чинники.
Економічні чинники визначаються розміром витрат державного бюджету на
дослідження та розроблення, фінансовими показниками держави, рівнем
розвитку економіки, станом платіжного балансу у сфері техніки та
технологій, прямими іноземними інвестиціями тощо.
Політичні чинники впливу на інноваційну активність підприємств
охоплюють насамперед податкову політику держави, а також політику уряду
у сфері інновацій.
Правові чинники визначаються правовою системою та нормами права, що
стосуються інновацій, і враховують зміни в податковому законодавстві,
нормативно-правові акти у сфері інтелектуальної власності, зовнішньої
торгівлі тощо.
Важливою групою чинників впливу на інноваційну активність підприємств є
екологічні чинники, увага щодо яких постійно зростає у веденні інноваційної
політики держави та підприємств.
Останнім з виділених чинників впливу на інноваційну активність
підприємств є ринок, в межах якого виділено інфраструктура ринку.
22. Особливості інноваційних циклів
Інноваційний процес - системна організована сукупність послідовно
здійснюваних видів продуктивної діяльності. З точки зору предметно-
результативного змісту видів діяльності інноваційний процес поділяється на
наступні типові етапи, для кожного з яких характерний специфічний набір
організаційно-технічних і економічних операцій:
− виникнення ідеї - усвідомлення необхідності і можливості створення
науково-технічного або іншого виду (організаційного, економічного)
нововведення;
− генерація альтернативних ідей про способи його створення
(формування "портфеля ідей");
− організація відбору пріоритетних ідей;
− проведення наукових досліджень і розробок, спрямованих на
апробацію (випробування) ідей;
− формування "портфеля" досліджень та розробок, проведення робіт з
відбору і розподілу ресурсів між напрямками;
− виконання досліджень і розробок за обраними напрямками;
− формування "портфеля" дослідно-конструкторських робіт і проведення
робіт з відбору і розподілу ресурсів між проектами нововведень;
− відбір проектів нововведень для його освоєння у виробництві;
− створення промислового зразка нововведення і його освоєння у
виробництві;
− серійне виробництво нововведення і його поширення на ринку;
− модернізація виробництва і самого нововведення шляхом локальних
інновацій, орієнтованих на поліпшення споживчих властивостей і
зменшення собівартості його виробництва (зниження вартості одиниці
споживчих властивостей);
− вичерпання технологічних можливостей нововведення і зниження
масштабів його застосування.
Весь хід інноваційного процесу повинен відслідковуватися і коригуватися на
основі інформації про стан ринку інновацій: про досягнення конкурентів, про
запити потенційних споживачів та ін. На основі цього приймається рішення
про подальший розвиток інноваційного процесу або про його припинення (у
випадку, наприклад, якщо конкурент випередив з розробкою аналогічного
продукту з кращими споживчими характеристиками).
Особливо важливо на перших етапах розробки нововведення здійснювати
прогноз попиту майбутнього товару на ринку і ймовірність його
комерційного успіху. Тому не випадково, як показує практика інвестицій в
інновації, витрати на ці роботи порівнянні з витратами на проведення власне
досліджень і розробок, дослідно-конструкторських робіт.
  В інноваційному менеджменті використовується поняття "життєвий цикл"
інновацій, що виражає форми і фази їхнього руху в системі ринкових умов
конкуренції.
Як правило, виділяються п'ять основних фаз життєвого циклу інновацій -
процесу створення, комерціалізації та використання нововведення (рис. 1):

Фундаментальні дослідження.
Це виявлення, вивчення і систематизація об'єктивних явищ і закономірностей
розвитку природи і суспільства. Особливість фундаментальних досліджень
як творчого процесу - неможливість заздалегідь визначити кінцевий
результат, витрати часу і коштів на його досягнення, індивідуальний,
неповторний характер дослідження.
Прикладні дослідження.
Ґрунтуються на результатах фундаментальних досліджень і включають
вивчення технічної можливості, соціально-економічної ефективності і шляхів
практичного використання результатів фундаментальних досліджень у
конкретній галузі (галузі). Їх продукцією є галузева інформація: створення
технологічних регламентів, ескізних проектів і аванпроектов, технічних
завдань та вимог, методик і стандартів, проектів підприємств і техніки
майбутнього, типових нормативів, а також інших наукових рекомендацій. На
цій стадії здійснюються і дослідно-експериментальні роботи, пов'язані з
лабораторними і полупроизводственными випробуваннями.
Розробка (проектування).
Це виготовлення на основі результатів прикладних досліджень та дослідно-
експериментальної перевірки науково-технічної документації для створення
нових або вдосконалених виробів, споруд, процесів і систем управління.
Розрізняються розробки за видами: конструкторські (створення нових
виробів), технологічні, проектно-вишукувальні (для будівництва або
реконструкції об'єктів), організаційні (створення нових систем організації
виробництва, праці і управління).
Виробництво.
Первинне (піонерний) освоєння нововведень - це впровадження результатів
розробок у виробництво, що передбачає наступний порядок дій:
− індивідуальне виробництво нових виробів, необхідних в одиничних
екземплярах, освоєння серійного випуску нових виробів, здачу в
експлуатацію нових споруд, технологічних процесів та систем
управління, практичне використання нових методів;
− досягнення проектної потужності і проектного обсягу використання
нововведення;
− досягнення проектної соціально-економічної ефективності
нововведення.
У першому випадку мова йде про технічному освоєнні, у другому - про
виробничому і в третьому - про економічному освоєнні, у процесі якого
досягаються кінцеві результати науково-технічного розвитку.
Споживання.
Ця фаза життєвого циклу нововведення характеризується поступовою
стабілізацією витрат і зростанням ефекту, в основному за рахунок
нарощування обсягів використання нововведення. Саме тут реалізується
основна частина фактичного ефекту від нововведення.
Старіння - завершує весь життєвий цикл нововведення. Воно починається з
моменту закінчення розробки наступного нововведення, економічна,
екологічна або соціальна ефективність якого робить раціональним його
освоєння.

23. Показники результативності інноваційної діяльності.


Мета комплексного аналізу інноваційної діяльності полягає в обґрунтуванні
найбільш ефективних напрямів інноваційної діяльності, інноваційних
програм і проектів фірми. Основними завданнями комплексного аналізу є:
− визначення відповідності фінансового стану фірми його цільовим
параметрам щодо інноваційного розвитку;
− оцінювання спроможності до інноваційного розвитку;
− вибір інноваційних проектів;
− оцінювання показників інноваційної діяльності;
− виявлення невикористаних резервів підвищення ефективності
інноваційної діяльності;
− оцінювання впливу інноваційних рішень на фінансові результати
діяльності фірми.
Комплексна оцінка рівня інноваційного розвитку підприємства здійснюється
за трьома складовими:
- ресурсною складовою, яка визначає рівень інноваційних ресурсів, що
забезпечили інноваційний розвиток підприємства;
- технологічною складовою, яка показує рівень технологічного оновлення
виробництва через впровадження нових технологічних процесів і освоєння
виробництва нових видів продукції;
- ринковою складовою інноваційного розвитку, яка визначає вплив
підприємства на економіку через реалізацію і насичення ринку власною
інноваційною продукцією.
Кожна з наведених складових охоплює відповідний набір первинних
показників, які поступово інтегруються за найбільш суттєвими ознаками
інноваційного розвитку з урахуванням впливу кожного показника на оцінку
загального рівня інноваційного розвитку підприємства.
Поняття «показник» є характеристикою певної властивості, аспекту, сторони
об’єкта, що оцінюється. Критерії і показники співвідносяться як загальне і
окреме. Якщо критерії визначають ознаки, за якими описується стан об’єкта,
явища, процесу, то показники – це характеристики цих ознак, вимірники, що
дають змогу теоретичні положення трансформувати в емпіричний простір.
 
Таблиця 1. Показники оцінки ефективності інноваційної діяльності
підприємств
24. Світові тенденції розвитку інноваційної діяльності
− COVID-19 глибоко змінив наш спосіб життя і роботи, а також спосіб
споживання.
− Ці зміни призвели до вибуху нових технологій та інновацій, змушуючи
бізнес швидко адаптуватися або зникати.
− Ми запитали вісім молодих глобальних лідерів, як вони
використовуватимуть технологічні тенденції та впроваджувати
інновації, щоб стати кращими лідерами у 2022 році.
Історично часи великої кризи призводять до часів великих інновацій . Під час
криз ми стикаємося з можливістю думати по-іншому та створювати швидкі
зміни, які можуть мати довготривалий вплив. Криза COVID-19 не є
винятком. Згідно з дослідженням McKinsey & Company , COVID-19 різко
прискорив впровадження нових технологій, і багато з них залишилися тут.
Організації були змушені миттєво впроваджувати нові технології, щоб
вижити, або ризикують стати неактуальними. В результаті майже кожен
сектор змінив спосіб взаємодії та ведення бізнесу зі своїми клієнтами за
останні два роки.
Прогрес у сфері штучного інтелекту, робототехніки та автоматизації
прискорився протягом пандемії. Автоматична перевірка температури та нові
біосенсори, наповнені AI виявлення масок для обличчя, тепер
використовуються в різних куточках світу. Роботи та штучний інтелект
швидше, ніж будь-коли , замінюються роботами, втраченими під час
пандемії .
Технології та інновації в 2022 році це:
-Краще стратегічне планування за допомогою теорії ігор та ШІ
Нові обчислювальні засоби та інструменти штучного інтелекту вже
використовуються лідерами бізнесу для прийняття стратегічних рішень. У
наступне десятиліття це програмне забезпечення стане потужнішим і буде
застосовуватися в нових і інших налаштуваннях. Побудовані на математиці
теорії ігор, інструменти штучного інтелекту використовують обчислювальні
інновації, які забезпечують роботу шахових двигунів.
-Більше інформації, керовані краще
Доступ лідера до нової інформації зростає з приголомшливою
швидкістю. Щоб ефективно керувати в 2020-х роках і далі, підприємства та
уряди повинні отримувати, аналізувати та діяти на основі цих даних у режимі
реального часу. Однак, якщо не керувати належним чином, потоки
інформації не можуть використовуватися для прийняття рішень і навіть
можуть перешкоджати керівництву.
-Дорожня карта, гнучкість і прийняття рішень на основі даних
-Використання технологій, щоб розширити людську проникливість і талант
Цифрова інфраструктура тепер значною мірою замінила фізичне робоче
місце, дозволяючи керівникам створити більш продуктивну, збалансовану
робочу силу з асинхронним графіком роботи. У світі венчурних технологій
технологія вирівняла ігрове поле, усунувши упередженість, яка діяла проти
засновників і спонсорів, які інакше були б не помічені. Наступна проблема
полягає в тому, щоб продовжувати створювати спільні цілі, використовуючи
технології для посилення проникливості та таланту людини.
-Технологія, яка забезпечує зв’язок співробітників, безпечність і
продуктивність
Приголомшливі дані показують, що майже кожна п’ята людина витрачає
більше третини свого часу на роботі – 52% усіх працівників відчувають
вигорання. Керівники повинні знайти способи зберегти дорогоцінний час
співробітників і організаційну досконалість, а також зменшити повторювану
роботу. Гібридна робота кинула виклик лідерам у всьому світі. Деякі
сподіваються, що ми повернемося до «старих добрих часів».
Прогнозні та інноваційні компанії впроваджують нове програмне
забезпечення, апаратне забезпечення, штучний інтелект та інші технологічні
досягнення, щоб підтримувати зв’язок співробітників, безпечні, продуктивні
та залучати таланти. Не можна заперечувати неймовірний вплив технологій
на робочому місці на традиційний офіс і те, як вони будуть продовжувати
руйнувати майбутнє роботи.
− ШІ може як максимізувати прибуток, так і прискорити інклюзивне
зростання
− Кібербезпека є опорою довіри в цифровій економіці
− Покращене прийняття рішень на основі аналізу даних

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


підприємства
Розроблення стратегії розпочинається з формулювання головної мети, яка повинна бути
чітко сформульованою, вираженою у чисельних вимірниках (грошових, натуральних
тощо), бути досяжною в принципі, обмеженою в часі. Далі виконується декомпозиція
головної мети – її конкретизація, унаслідок чого формується комплекс цілей. Визначені
цілі не повинні суперечити одна одній і головній меті.
Охарактеризуємо більш докладно особливості формування (розроблення) інноваційної
стратегії розвитку підприємства. її доцільно розглядати на трьох рівнях узагальнення (рис.
1.1):
Рис. 1.1. Структурно-логічна схема стратегічного управління інноваційним
процесом (інноваційною діяльністю) на підприємстві
1) корпоративному рівні, на якому розробляються загальні засади
інноваційної стратегії як складової загальноекономічної стратегії розвитку
(поряд з маркетинговою, кадровою, фінансовою, технологічною та іншими
складовими), здійснюється її взаємне узгодження з іншими функціональними
стратегіями. Особливу увагу слід приділяти взаємному узгодженню
інноваційної, маркетингової та фінансових стратегій, які, власне, і
визначають успіх інноваційної діяльності, зокрема товарних інновацій;
2) бізнес-рівні, що передбачає здійснення в межах інноваційної стратегії
заходів з розроблення й упровадження інновацій для кожної зі стратегічних
зон господарювання (для кожного бізнес-проекту, що стосуються окремого
ринку, його сегменту чи ніші або окремої товарної групи). На цьому рівні
приймають стратегічні рішення щодо модифікації існуючої товарної
номенклатури й товарного асортименту, які передбачають генерування ідей
нових товарів і їх відбір, розроблення задуму товарів і перевірку;
3) власне товарному рівні, на якому розробляють товарну інноваційну
стратегію і маркетингові програми з просування кожної з товарних інновацій
(у межах окремих бізнес-проектів) на ринку. Вони містять: аналіз поточної
маркетингової ситуації на ринку і перспектив її розвитку, аналіз ринкових
позицій і перспектив підприємства та його продукції (як традиційної, так і
нової), детальний опис комплексу маркетингу для кожної асортиментної
групи і товарної одиниці.
Як додатковий елемент вмотивованості керівників, які працюють на бізнес-
рівні (рис. 1.1), слід застосовувати систему створення центрів фінансової
відповідальності (ЦФВ). їх створення може відбуватися як на рівні керівника
портфеля бізнес-проектів, так і на рівні окремих бізнес-проектів.

26. Сучасний світовий стан інноваційної діяльності.


Технологічний розвиток довгий час розглядався як руйнівна сила, що
провокує зміни на багатьох рівнях, від повсякденної діяльності окремих
людей до конкуренції між глобальними наддержавами. У 2022 році пандемія
COVID-19 продовжуватиме впливати на наше життя багатьма способами. Це
означає, що ми й надалі спостерігатимемо прискорені темпи цифровізації та
віртуалізації бізнесу та суспільства. Однак у міру того, як ми рухаємося
вперед, стійкість, постійно зростаючі обсяги даних, а також збільшення
швидкості обчислень і мережі знову отримають свій статус найважливіших
рушійних сил цифрової трансформації.
1) Stripe
Для індустрії видалення вуглецю
Для боротьби зі зміною клімату знадобиться більше, ніж скорочення викидів
парникових газів. Суспільству потрібно буде витягти вуглець з атмосфери.
До наступного десятиліття світу може знадобитися видаляти з повітря
десятки мільйонів тонн CO2 на рік; до 2050 року ця цифра може зрости до 10
гігатонн на рік. Природні рішення, такі як посадка дерев, можуть зайти лише
так далеко. Stripe Climate дозволяє клієнтам компанії з онлайн-платежів
приєднатися до її стратегії фінансування амбітної технології видалення
вуглецю, вносячи відсоток своїх цифрових продажів, які протікають через
програмне забезпечення Stripe. Навесні 2021 року Stripe відкоригував свій
процес адаптації, щоб дозволити новим клієнтам приєднатися до програми.
Незабаром кожен десятий погодився. Десятки тисяч компаній тепер є
частиною Stripe Climate.
Solugen
За розробку способу перетворення цукру на промислові хімікати без викидів.
Компанія Solugen розробила процес перетворення кукурудзяного сиропу в
промислові хімічні речовини за допомогою ферментів і металевого каталізу,
видаляючи з процесу нафту, вугілля та природний газ.
Twelve
Для того, щоб переломити ситуацію в нафтохімічній промисловості
Процес трансформації вуглецю стартапу використовує металевий каталізатор
і відновлювану енергію, щоб розбити молекули CO2 і води на більш дрібні
атоми, а потім знову перетворити їх на нові хімічні речовини, які можна
використовувати у виробництві. Twelve вже співпрацює з Повітряними
силами, щоб виготовляти реактивне паливо з CO2, і співпрацює з Daimler і
Procter & Gamble, щоб продемонструвати, що вони можуть відтворювати
інгредієнти, необхідні для виготовлення автомобільних деталей і Tide,
відповідно. Нові хімікати є заміною один на один, тому клієнти Twelve
можуть знизити вуглецевий слід, не впливаючи на продуктивність продукту.
BlocPower
Для боротьби зі зміною клімату, надаючи кожному домовласнику
можливість електрифікуватися.
Сонячні батареї та досягнення в галузі енергоефективності вплинули на
вуглецевий слід будівельного сектору, але донедавна ніхто не вирішував суть
проблеми, яка лежить у центрі будинку: видалення печей, котлів, печей та
іншого масла. - і продукти на основі газу, які стимулюють попит на викопне
паливо. Ці застарілі прилади – це саме те, чим займається BlocPower. Під
керівництвом співзасновника та генерального директора Доннела Бейрда
стартап електрифікує будівлі, встановлюючи такі технології, як теплові
насоси, і зосереджує свої зусилля на громадах з низьким і середнім рівнем
доходу.
Climate Trace
Для відстеження даних про викиди на рівні країни.
Маючи 59 трильйонів байт даних з понад 300 супутників і 11 000 датчиків,
Climate Trace, коаліція організацій, сформована у 2020 році, оновлює та
підтримує оцінки викидів парникових газів, щоб дати країнам інформацію,
необхідну для ефективнішого пом’якшення клімату.
Watershed
Для того, щоб перевести компанії на вуглецеву дієту.
Стартап Watershed, який стартував у лютому 2021 року, використовує
програмне забезпечення, щоб допомогти таким компаніям, як Airbnb,
DoorDash, Shopify, Sweetgreen та Warby Parker, оцінити всі свої викиди,
розробити стратегію скорочення та підключитися до рішень для видалення
вуглецю.
Doconomy
Для розрахунку вартості нашого способу життя.
Шведська компанія Doconomy, що займається технологіями впливу на
навколишнє середовище, визначає вплив на навколишнє середовище за
допомогою таких інструментів, як калькулятор стилю життя, випущений у
вересні минулого року. У 2021 році компанія також запустила калькулятор
2030 року, інструмент, який спрощує процес розрахунку вуглецевого сліду
виробленої продукції з високою точністю для кількох категорій продуктів.
Це дозволяє брендам кількісно оцінити вплив усіх етапів їх ланцюгів
створення вартості аж до точки продажу продукту на основі таких факторів,
як матеріали, процеси, енергія та транспортування.
Microsoft
Для гуманізації продуктивності.
Microsoft тепер використовує їх для інформування про нові функції
продукту, такі як варіант планування, призначений для забезпечення того,
щоб співробітники отримували перерви між нарадами — цінна вправа для
очищення розуму, яку часто ігнорують в епоху відеодзвінків. . Враховуючи
масштаби ділового програмного забезпечення Microsoft — станом на липень
2021 року лише Teams нараховувала майже 250 мільйонів активних
користувачів щомісяця — жодна компанія не в кращому становищі, щоб
допомогти зняти проблеми з продуктивністю.
SpaceX
Для створення ракети, яка просто бігає.
Canva
Для створення дизайнерів із усіх нас.
Canva — це текстовий процесор для нашої сучасної візуальної культури,
який коригує все, що ви бачите — текст, зображення, фон, анімацію —
простим дотиком. Його проста у використанні платформа для дизайну з
шаблонами дозволяє людям створювати візитні картки, запрошення на день
народження, рекламу в соціальних мережах, торгові презентації, кавові
кружки та щорічники. «

27. Сучасні чинники інноваційного розвитку підприємства


В сучасних умовах інноваційний розвиток підприємств є вирішальною
частиною інноваційного розвитку економіки країни в цілому. Важливість
інноваційного розвитку для сучасної економіки України переоцінити
неможливо. Адже саме завдяки інноваційному типу розвитку може бути
досягнуто економічне зростання вже в найближчій та стратегічній
перспективі. Сьогодні на ринку склалося досить жорстке конкурентне
середовище, тож підприємства повинні мати досить міцні і стійкі
конкурентні переваги. Інноваційний розвиток зі сучасних умов
функціонування є одним з найбільш перспективних напрямів розвитку
кожного підприємства незалежно від виду діяльності. Для забезпечення
інноваційного розвитку підприємств виникає об’єктивна необхідність
виділити та оцінити чинники даного розвитку.
Слід зазначити, що на інноваційний розвиток вливають багато чинників, що
сприяють інноваційного розвитку або перешкоджають
впровадженню інновацій. 
До таких факторів відносять: політичну ситуацію в країні, рівень
економічного зростання країни наявність зовнішніх джерел фінансування,
національну та міжнародну законодавчу базу, податкову політику, науково-
технічний прогрес в країні, екологічну ситуацію в країні та міжнародні
програми з екологічної безпеки тощо [2].
Внутрішні чинники – це чинники, які здійснюють вплив на інноваційний
розвиток в межах підприємства. До них належать: цілі організації, що
спрямовані на реалізацію стратегічних заходів; інноваційний
потенціал підприємства; наявність фахівців з економічної безпеки та відповід
них функціональних підрозділів.
Однак, в сучасній літературі існує безліч спроб систематизації та
класифікації чинників, що впливають на впровадження інновацій у діяльність
підприємства.
Так, на думку Г.Г. Фетисова, « внутрішні чинники слід поділяти на чотири
самостійні групи:
1) організаційні-управлінські − стан менеджменту;
здатність до інновацій, змін, перебудови; внутрішня
структура управління;
2) технологічні − орієнтація на розвиток сучасних
технологій і потреб ринку в нових продуктах ;
3) економічні − достатність капіталу, якість активів і
пасивів, прибутковість і ліквідність;
4) соціально-психологічні – ставлення, очікування та реакція співробітників
на введення в організації інновацій».
Здійснюючи інноваційний розвиток підприємства, необхідно визначити, які
чинники здатні загальмувати або прискорювати інноваційний процес.
Інноваційним підприємствам перш, ніж приступити до організації
інноваційної діяльності та впровадження інновацій необхідно оцінити вплив
цих факторів, щоб прийняти рішення про оптимальний спосіб та інструменти
здійснення інноваційного розвитку.
Отже, слід зазначити, що на інноваційний розвиток впливає багато чисельні
чинники, які або  сприяють розвитку інновацій або перешкоджають їх
впровадженню. Так, чинники інноваційного розвитку можна розділити на дві
основних групи: внутрішні (чинники, які підлягають контролю з боку
окремого підприємства сфери послуг) та зовнішні чинники (фактори, які не
підлягають впливу з боку суб`єкта господарювання). Серед внутрішніх
факторів основний вплив на інноваційний розвиток підприємств мають
економічні фактори, що характеризують потенціал підприємств до
інноваційного розвитку.
Вплив на інноваційний розвиток України здійснюють значною мірою
економічні фактори, важливим фактором є непідготовленість матеріально-
технічної бази для впровадження новітніх технологій. В свою чергу,
нестабільність економічної та політичної ситуації в Україні призводить до
визначення її економіки як непривабливої для інвестицій. Чинниками, що
сприяють інноваційному розвитку підприємств України є підтримка
державою інноваційного розвитку, наявність кваліфікованих кадрів,
наукових співробітників, необхідних для здійснення інноваційного розвитку,
готовність споживачів та їх довіра до впровадження новітніх та тих, що вже
використовуються закордоном, технологій для здійснення покупок.
Отже, інноваційний розвиток підприємства є одним з пріоритетних шляхів
досягнення підприємства поставлених цілей в умовах конкурентного
середовища, для успішного його здійснення необхідно прогнозувати та
оцінювати вплив тієї чи іншої групи чинників на цей процес.
Серед методів управління інноваційним розвитком на макрорівні провідну
роль займає економічне стимулювання: розвиток пріоритетних галузей,
стимулювання розвитку науки і техніки тощо). Мікрорівень управління
визначає дії окремих економічних суб`єктів щодо пошуку можливостей
розвитку ринкових можливостей. Відповідно до наведеної схеми системи
управління інноваційним розвитком підприємства сфери послуг керівництво
підприємства здійснює управління інноваційним розвитком за допомогою
системи економічних та адміністративних інструментів.

28. Характеристика управління інноваційною діяльністю як бізнес-


процесу
Згідно ЗУ «Про інноваційну діяльність», інноваційна діяльність –  це
діяльність,  що спрямована на використання й комерціалізацію результатів
наукових досліджень і розробок та зумовлює випуск на ринок нових
конкурентоспроможних товарів і послуг.
Проаналізувавши суть та варіанти понять «бізнес-процес», «інноваційна
діяльність» та «технологічна інновація», можна визначити поняття «бізнес-
процес в сфері технологічних інновацій», як систематизоване послідовне
виконання логічно пов’язаних та взаємозалежних завдань (заданих в часі та
просторі, з точним визначенням входів та виходів) з використанням ресурсів,
що забезпечують використання й комерціалізацію результатів наукових
досліджень і розробок.
Бізнес-процес в сфері технологічних інновацій – це потік роботи, що має свої
межі і відкривається первинними постачальниками процесу, тобто входами
процесу, якими можуть виступати результати наукових досліджень та
розробок. Закінчується процес виходом – появою нової технології
виробництва традиційних, удосконалених чи принципово нових продуктів,
упровадження інформаційних систем, нових джерел енергії, тощо.
Ефективність управління бізнес-процесами в сфері технологічних інновацій
на підприємстві прямо залежить від якості та повноти інформації, що
використовується в процесі реалізації системи управління бізнес-процесами.
Чим більше факторів враховує обрана (розроблена) підприємством система
управління, тим швидше, точніше та адекватніше керівництво реагуватиме на
зміну внутрішнього та зовнішнього середовища підприємства.
У статті Чекуліної Т.А. «Функціонування механізму управління бізнес-
процесами за розвитку інноваційної діяльності» [7, с. 132] запропоновано
наступні основні етапи однойменного механізму:
- визначення значущості впливу важелів управління на бізнес-процеси;
- виявлення пріоритетних показників удосконалення результативності бізнес-
процесу;
-  визначення заходів щодо вдосконалення бізнес-процесів на підприємстві за
обраним показником;
- аналіз впливу інноваційної діяльності на загальну діяльність  підприємства;
- оцінка ефективності функціонування механізму управління підприємством.
Основними недоліками такого механізму є: відсутність початкового процесу
планування бізнес-процесів інноваційної діяльності, етапу їх впровадження
та реалізації, та відсутній акцент орієнтації бізнес-процесів на зовнішнє
середовище, зокрема визначення його компонентів.
Автори даної системи стверджують, що процесний підхід в управлінні
інноваційною діяльністю підприємства може бути реалізований у вигляді
організаційного механізму,  що включає три контури управління –
стратегічний, тактичний і операційний.
Для реалізації даного механізму необхідно аналізувати, яким чином
регулювати сукупність процесів за умови збереження її стійкого стану,
дослідити сутність механізму реалізації цього явища. Ініціатором даного
механізму є відповідальний центр управління. Його головне завдання полягає
у формулюванні місії і стратегічних планів підприємства. Тактичне
управління відноситься до групи управлінських процесів.  Входом в нього є
стратегічні цілі, плани і програми, стратегії, політика. Виходом –
управлінські дії для підрозділів і бізнес-процесів,  результати оцінки
діяльності підприємства і пропозиції по вдосконаленню процесів, 
стратегічних і тактичних планів.
 Операційний центр управління припускає вирішення таких завдань:
- моніторинг виконання процесів;
- порівняння планових і фактичних значень показників процесів;
- здійснення коригуючи дії.

29. Циклічність розвитку світової економіки у контексті інноваційної


діяльності
Проблема циклічності економічного розвитку, в тому числі
інноваційного розвитку національної економіки, була й залишається
актуальною і важливою. Циклічність – це загальна форма руху, що
відображає нерівномірність розвитку, зміну еволюційних і
революційних форм. Характерна риса циклічності в тому, що рух іде не
по колу, а по спіралі, тобто на кожному новому циклі досягається
більш високий рівень розвитку в порівнянні з попереднім. Ідея
циклічності розвитку характерна не лише для економічної думки, але й
для інших наук. Так, наприклад, у філософії це ідея про циклічність
розвитку Гегеля у вигляді закону заперечення заперечення, де розвиток
– це процес, а його циклічність полягає у проходженні стадій «теза-
антитеза-синтез» (тобто «затвердження-заперечення-зняття протиріч»).
Циклічність є постійною динамічною характеристикою ринкової
економіки, про що свідчить історія її становлення і розвитку.
Періодичні злети і падіння ділової активності характерні для економік
усіх країн. У процвітаючих країнах зростання економіки, що
супроводжується збільшенням добробуту власників капіталу і
найманих працівників, періодично переривається, поступаючись
місцем спаду, який характеризується падінням попиту, збільшенням
безробіття та іншими негативними явищами. При цьому, незалежно від
тривалості періоду спаду і сили його наслідків, після спаду незмінно
відбувається відновлення економічного зростання. Така актуальна
послідовність коливань, тобто періодів підйому і зростання економіки,
рух економіки від одного економічної кризи до іншого і називається
економічним циклом. Учені займаються дослідженням природи
економічних циклів вже більше ста років, проте так і не прийшли до
однозначного розуміння причин циклічності. У кінці XIX – початку XX
ст. виникнення циклів пов’язували з рівнем сонячної активності,
погодою і урожаєм або з песимістичними чи оптимістичними
настроями населення або з діями політиків, які маніпулюють
виборцями. Однак, більшість наукових шкіл пов’язували циклічність з
виробничо-економічними факторами. Головний недолік багатьох
теорій полягає в тому, що вони зосереджувалися лише на окремих
аспектах циклічного механізму. Серед досліджень, що носять
системний характер, виокремлюють теорію Дж. М. Кейнса, відповідно
до якої циклічний процес формується динамікою ефективного попиту,
що визначається функціями споживання та інвестицій. Серед сучасних
американських дослідників економічний цикл прийнято окреслювати
як «діловий цикл» (від англ. business cycle). Таке бачення
обґрунтовується тим, що, з одного боку, основними суб’єктами
ринкової економіки є підприємства, ділова активність яких формує
загальну економічну активність, а, з іншого ж боку, підйоми і спади як
складові економічного циклу відіграють ключову роль у коливаннях
ділової активності. Діловий цикл – це одна з основних концепцій
макроекономіки, тому що фази ділового циклу – підйоми і спади
загальної економічної активності – впливають на всю економіку. У
сучасних умовах більшість учених сходяться на думці, що циклічність
обумовлена внутрішніми причинами та характером ринкової
економічної системи. Сучасні теорії циклічних коливань виходять з дії
ефекту мультиплікатора-акселератора, який пояснює механізм
самопідтримаючих циклічних коливань. Причинами циклічного
розвитку є конфлікт умов виробництва та умов реалізації, порушення
пропорцій суспільного виробництва. Нині циклічні коливання
підсилюють також і діяльність фінансових інститутів, їх прагнення до
збільшення своїх доходів вже не за рахунок зростання виробництва
товарів і послуг, а за рахунок віртуальних широкомасштабних
фінансових операцій, що відрізняються високим рівнем ризику і
спекулятивним. Фінансовий капітал став домінуючим видом капіталу, а
фінансова сфера стала домінувати над сферою реального виробництва.
Це призвело до порушення процесу ринкового саморегулювання, до
посилення нестабільності світової і національних економік, до
зниження ступеня керованості соціально-економічними процесами.
Отже, постійне економічне зростання – це ідеальний стан економіки.
Поряд із зростанням проявляються і періоди стабілізації й спади. Ці
стани змінюють один одного в певній послідовності й з певною
періодичністю, що свідчить про циклічність розвитку в економіці.
Родоначальником теорій розвитку економіки через інноваційний
розвиток вважаються Й. Шумпетер [4].
Основні положення теорії інноваційного (економічного) розвитку Й.
Шумпетера:
1. Кожен довгий цикл має форму не частини хвилі, а Б-подібної або
логістичної кривої, яка описує траєкторію життєвого циклу
конкретного технічного способу виробництва. На завершальній стадії
старого технічного базису виникає новий.
2. Двигуном прогресу у формі циклічного руху є інвестування, але не у
кожне виробництво, а лише в інновації.
3. Усі інновації поділяються на базисні і поліпшуючі, які знаходяться в
постійній конкуренції один з одним. Саме ця конкуренція призводить
до періодичного Б-подібного руху.
4. Крива життєвого циклу інновації нелінійно переходить в нову, що
породжує скачки.
5. З’являються нові винаходи, які виводять виробництво з рівноваги.
6. Численні життєві цикли інновацій зливаються в пучки (кластери).
Перехід від однієї логістичної кривої до іншої забезпечують інновації.
Більшими прибутками на першому етапі освоєння інновації (який до
того ж перекривається «хвостом» попереднього життєвого циклу,
завдяки чому прибутки «складаються»), пояснюється різкий підйом
кривої на початку циклу. Тому при розвинутому ринку і йде справжнє
«полювання» за інноваціями. Зниження прибутку по циклу стимулює
розробку та введення інновацій, у яких життєвий цикл коротший.
Важливі умови безперервності:
1) подальший інноваційний процес починається до завершення
життєвого циклу попереднього інноваційного процесу;
2) кожен новий інноваційний процес повинен приносити прибуток
(ефект) вище попереднього. Отже, говорячи про економічний розвиток
в умовах ринкових відносин завжди розуміють розвиток інноваційний.
М. Кондратьєв звернув увагу на те, що початок кожної хвилі
характеризувався впровадженням у промисловість значних досягнень
науки та техніки. Це дало змогу зробити висновки стосовно джерел й
направленості економічного розвитку, що знайшло своє відображення
у теорії «довгих хвиль» як теорії інноваційного розвитку. Суть теорії
«довгих хвиль» як дотичної до теорій інноваційного розвитку полягає,
по-перше, в тому, що інновації, науково-технічний прогрес є
стимуляторами фази зростання в економічних циклах і, по-друге, що
технологічний розвиток пов’язаний з групами базисних інновацій.
У працях М. Кондратьєва інноваційний розвиток пов’язується з такими
факторами економічної кон’юнктури:
1) з рівновагою першого порядку: попит та пропозиція;
2) з рівновагою другого порядку: перетікання капіталу в нове
обладнання, машини, модернізацію виробництва;
3) з рівновагою третього порядку: зміна структури виробництва,
джерел енергії, сировинної бази, кваліфікації та умов праці трудових
ресурсів. Фактор часу є визначальним в теорії Кондратьєва і саме він
дає змогу відновити рівновагу в економічній системі.
Отже, внесок М. Кондратьєва в інноваційну теорію полягає у тому, що
він, опрацювавши величезний фактичний матеріал, зумів виявити
важливу роль інновацій в економічній системі на практиці і окреслив
предмет для дослідження у рамках теорій інноваційного розвитку.
Циклічність інноваційного розвитку економіки виявив у своїх
дослідженнях американський вчений Маркетті. Він дослідив, що хвиля
нововведень триває 55 років, а хвиля винаходів 63 роки, що цілком
співпадає з положеннями теорії довгих хвиль Кондратьєва [5].

30. Шляхи підвищення ефективності використання результатів наукової


і науково-технічної діяльності
Основними заходами щодо підвищення ефективності використання
результатів наукової діяльності є:
− створення системи обліку й забезпечення доступу до інформації про
результати наукових досліджень, проведених ученими Університету;
− стимулювання процесів створення, правової охорони, захисту й
використання результатів наукової діяльності;
− закріплення в нормативно-правовому порядку прав на об'єкти
інтелектуальної власності й інші результати наукової діяльності;
− нормативно-правове забезпечення механізмів передачі Університету
прав на результати наукової діяльності для введення їх у господарський
обіг;
− сприяння формуванню ринку інтелектуальної власності, розширенню
прав цієї власності;
− вдосконалення патентної й ліцензійної діяльності.
− збереження та розвиток кадрового потенціалу.
МУЛЬТИАГЕНТНІ СИСТЕМИ В ЕКОНОМІЦІ
1. Автономні агенти та їх класифікація
Спочатку ідея створення інтелектуального посередника «агента», виникла у
зв’язку із бажанням спростити стиль спілкування кінцевого користувача з
комп’ютерними програмами, оскільки домінуючий, в основному, і нині стиль
взаємодії користувача з комп’ютером, коли користувач запускає завдання
явно і управляє його рішенням. Але це абсолютно не підходить для
недосвідченого користувача. Інакше кажучи, спочатку ідея інтелектуального
посередника виникла як спроба інтелектуалізації призначеного для
користувача інтерфейсу. Розвиток методів штучного інтелекту дозволив
зробити новий крок до зміни стилю взаємодії користувача з комп’ютером.
Виникла ідея створення так званих «автономних агентів», які породили вже
новий стиль взаємодії користувача з програмою. Замість взаємодії,
ініційованої користувачем шляхом команд і прямих маніпуляцій, користувач
втягується в спільний процес вирішення. При цьому, як користувач, так і
комп’ютер, обидва беруть участь в запуску завдання, управлінні подіями і
вирішенні задачі. Для такого стилю використовується метафора
персональний асистент, який співпрацює з користувачем в цьому ж робочому
середовищі. Словники дають таке тлумачення слова агент: «хтось або щось,
що прикладає зусилля для досягнення ефекту».
Агент (від латинського agens, род. в. agentis — той, що діє) (Большая
Советская Энциклопедия):
1) особа, що діє за дорученням кого-небудь; представник організації,
установи і т. ін., що виконує доручення, уповноважений.
2) у природних науках А. — чинник, що діє в якому-небудь процесі або
явищі, наприклад сірковулканізуючий А. в процесі вулканізації каучуку.
Автономія(греч.), тобто самозаконня, — індивідуальна свобода дії,
означає у філософському сенсі самостійне буття, що визначається власним
розумом і совістю (Кант); у сенсі юридичному - це є право, що надається
об’єднанням, станам, корпораціям керувати власними нормами і правилами в
певних межах.
Класифікація автономних агентів.
Робот (від чешськ. robota) — автоматичний пристрій з
антропоморфною дією, який часткова або повністю замінює людину при
виконанні робіт в небезпечних для життя умовах або при відносній
недоступності об'єкту. Робот може управлятися оператором або працювати
за заздалегідь складеною програмою. Використання роботів дозволяє
полегшити або зовсім замінити людську працю на виробництві, в
будівництві, при роботі з важкими вантажами, шкідливими матеріалами, а
також в інших важких або небезпечних для людини умовах.
Комп’ютерний вірус — різновид комп'ютерної програми, відмітною
особливістю якої є здібність до розмноження (самореплікация). На додаток
до цього він може ушкоджувати або повністю знищувати дані, підконтрольні
користувачеві, від імені якого була запущена заражена програма.
Неспеціалісти до комп'ютерних вірусів інколи зараховують і інші види
шкідливих програм, такі як трояни, програми-шпигуни і навіть спам.

2. Агентно-орієнтоване моделювання (АОМ). Побудова агентних


моделей. Засоби розробки систем АОМ
АОМ – спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. В основі агентно-орієнтованих моделей лежать три основні ідеї:
1) об'єктна орієнтованість;
2) здатність агентів до навчання (або їх еволюція);
3) складність обчислень.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі множину агентів.
При цьому, власне моделі, використовуючи прості правила поведінки,
можуть видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатньо складним.
Основними властивостями агентів в АОМ є:
1) інтелектуальність; 2) наявність життєвої мети; 3) розташування в часі і
просторі. (Мається на увазі деяке «місце існування», яке може бути
представлена і у вигляді грат, так і у вигляді набагато складнішої структури.
Інколи результат взаємодії агентів в «місці існування« – рівновага, інколи –
безперервний процес еволюції, а інколи – нескінченний цикл без певного
рішення). З середини 1990-х років АОМ стали використовувати для
вирішення широкого спектру комерційних і технологічних проблем.
Прикладами можуть послужити завдання: а) оптимізації мережі
постачальників і логістика; б) моделювання споживчої поведінки (у тому
числі соціальні мережі); в) розподілених обчислень; г) менеджменту
трудових ресурсів; д) управління транспортом; е) управління інвестиційними
портфелями тощо.
У цих та інших додатках стратегії поведінки визначаються з урахуванням
поведінки множини індивідуальних агентів-атомів і їх взаємодій. Таким
чином, АОМ можуть допомогти у вивченні впливу індивідуальної поведінки
агентів на еволюцію всієї системи.
Побудова агентних моделей
Побудова агентних моделей здійснюється здебільшого так, як і побудова
будь-якої іншої моделі в процесі моделювання.
Автори роботи (4) відзначають характерні риси в побудові агентних моделей.
На додаток до стандартних задач побудови моделі, практичне АМ потребує
виконання таких кроків:
−  визначення агентів і теоретичних основ поведінки агентів;
−  визначення взаємовідносини між агентами і теоретичних основ таких
відносин;
−  пошук платформи для АМ і розробка стратегії АМ моделі;
−  отримання необхідних даних для агентів,
−  перевірка (етап валідації) моделі поведінки агентів (на додаток до
всієї моделі в цілому);
−  запуск моделі та аналіз вихідних даних з точки зору зв'язку між
поведінкою агентів на мікрорівні та поведінкою всієї системи в цілому.
Засоби розробки систем АОМ
Агентно-оієнтоване моделювання може бути реалізовано на невеликих,
настільних комп'ютерах, або з використанням великих кластерів комп'ютерів,
або ж на будь-якому іншому варіанті між першими двома.
1) Настільне АОМ. Настільні агентні моделі можуть бути простими. Вони
можуть бути використані для навчання тому, як моделювати з використанням
агентів, протестувати концепції розробки агентних моделей та роаналізувати
результати. Для побудови агентних моделей використовують елeктронні
таблиці (зокрема, Excel) та математичні обчислювальні системи (МВС) такі,
як Mathematica і MATLAB. Застосування настільних АМ систем обмежено
максимальною кількістю керованих агентів, яке зазвичай знаходиться в
діапазоні від кількох десятків до кількох сотень.
2) Великомасштабне АОМ. Великомасштабне АОМ розширює можливості
простих агентних настільних моделей і дозволяє більшій кількості агентів
(від ти сяч до мільйонів) брати участь у складних взаємодіях.
Великомасштабне агентне моделювання зазвичай виконується з
використанням спеціальних середовищ моделювання. Ці середовища
традиційно включають в себе:
а) планувальника (за часом);
б) механізми комунікації;
в) гнучкі топології взаємодій агентів; г) широкий вибір пристроїв для
зберігання і відображення стану агентів. До такого класа середовищ можна
віднести Repast, Swarm, NetLogo, MASON, AnyLogic та ін. (3-4).

3. Агентно-орієнтоване моделювання (АОМ). Суть агентно-


орієнтованого моделювання
АОМ - спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. Такі комп'ютерні симуляції тісно взаємозв'язані з наступними
поняттями: складні системи, метод Монте-Карло, обчислювальна соціологія,
системи з безліччю агентів і еволюційне програмування тощо.
Перша АОМ була розроблена в кінці 1940-х рр. Надалі розвиток
мікрокомп'ютерів сприяв подальшому розвитку цього напряму і можливості
проводити комп'ютерні симуляції. Основна ідея, що лежить в основі АОМ,
полягає в побудові «обчислювального інструменту» (сукупності агентів з
певним набором властивостей), що дозволяє проводити симуляції реальних
явищ. Кінцева мета процесу по створенню АОМ – відстежити вплив
флуктуацій агентів, що діють на мікрорівні, на показники макрорівня.
Прийнято вважати, що агенто-орієнтовані моделі беруть свій початок з
обчислювальних машин Джона фон Неймана (Von Neumann), що є
теоретичними машинами, здатними до відтворення. Джон фон Нейман
запропонував використовувати машини, які слідують детальним інструкціям
для створення точних копій самих себе. Згодом даний підхід був
вдосконалений другом фон Неймана – Станіславом Уламом, який
запропонував відтворювати машину на папері, - як набір кліток на гратах.
Даний підхід став початком розвитку клітинних автоматів.
АОМ – спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. В основі агентно-орієнтованих моделей лежать три основні ідеї:
1) об'єктна орієнтованість;
2) здатність агентів до навчання (або їх еволюція);
3) складність обчислень.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі множину агентів.
При цьому, власне моделі, використовуючи прості правила поведінки,
можуть видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатньо складним.
Агентно-орієнтована модель (АОМ) складається з сукупності (популяції)
агентів і віртуального ринку (ВР), де агенти можуть торгувати цінними
паперами.
Агент – автономна сутність, що представляє трейдера (або інвестора) зі
своїми власними активами (у грошовій формі та/або у формі цінних паперів)
та своєю власною торгівельною стратегією.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі безліч агентів. При
цьому, власне моделі, використовуючи прості правила поведінки, можуть
видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатнє складним.
Основними властивостями агентів в АОМ є:
1) інтелектуальність. В той же час, ця властивість має бути помірною
для того, щоб агенти не могли пізнати щось більше, що виходить за рамки
правил гри;
2) наявність життєвої мети;
3) розташування в часі і просторі. Мається на увазі деяке «місце
існування», яке може бути представлена і у вигляді грат, так і у вигляді
набагато складнішої структури. Інколи результат взаємодії агентів в «місці
існування» - рівновага, інколи – безперервний процес еволюції, а інколи –
нескінченний цикл без певного рішення.
Вважається, що АОМ доповнюють традиційні аналітичні методи. Останні
дозволяють нам охарактеризувати рівновагу системи, а АОМ - досліджувати
можливість отримання такого стану. АОМ можуть пояснити причину
виникнення таких явищ, як: терористичні організації, війни, обвалення ринку
акцій та ін. В ідеалі АОМ можуть допомогти ідентифікувати критичні
моменти часу, після настання яких надзвичайні наслідки матимуть
незворотній характер.
З середини 1990-х років АОМ стали використовувати для вирішення
безлічі комерційних і технологічних проблем. Прикладами можуть
послужити завдання:
- оптимізації мережі постачальників і логістика;
- моделювання споживчої поведінки (у тому числі соціальні мережі);
- розподілених обчислень;
- менеджменту трудових ресурсів;
- управління транспортом;
- управління інвестиційними портфелями.
У цих та інших додатках стратегії поведінки визначаються з урахуванням
поведінки безлічі індивідуальних агентів–атомів і їх взаємодій. Таким чином,
АОМ можуть допомогти у вивченні впливу індивідуальної поведінки агентів
на еволюцію всієї системи.
На відміну від системної динаміки або дискретно-подійних моделей в
рамках агентно-орієнтованого моделювання не існує такого місця, де б
централізовано визначалася поведінка (динаміка) системи в цілому. Замість
цього аналітик визначає поведінку на індивідуальному рівні, а глобальна
поведінка виникає (emerges) як результат діяльності багатьох (десятків,
сотень, тисяч, мільйонів) агентів, кожен з яких слідує своїм власним
правилам, живе в загальному середовищі і взаємодіє з середовищем і з
іншими агентами. Тому АМ називають ще моделюванням від низу до верху.
Рисунок 6 можна умовно розглядати як агентну модель динаміки населення
країни.
Рис. 6. Типова архітектура агентної моделі. Поведінка (карта
станів) в пакеті AnyLogic
У цій моделі один з аспектів поведінки агента заданий картою станів
(statechart), а модель середовища може включати житло, робочі місця,
транспортну інфраструктуру та ін.

4. Агентно-орієнтоване моделювання. Інструментальний засіб AnyLogic


АОМ – спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. В основі агентно-орієнтованих моделей лежать три основні ідеї:
1) об'єктна орієнтованість;
2) здатність агентів до навчання (або їх еволюція);
3) складність обчислень.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі множину агентів.
При цьому, власне моделі, використовуючи прості правила поведінки,
можуть видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатньо складним.
AnyLogic — програмне забезпечення для імітаційного моделювання бізнес-
процесів, розроблене російською компанією The AnyLogic Company.
Інструмент забезпечено сучасним графічним інтерфейсом та дозволяє
використовувати мову програмування Java для розробки моделей.
Сучасні системи моделювання підтримують весь арсенал новітніх
інформаційних технологій, а саме, розвинені графічні оболонки для
конструювання моделей та інтерпретації вихідних результатів моделювання,
мультимедійні засоби, анімацію в реальному масштабі часу,
об’єктноорієнтоване програмування, Internet-рішення та ін. Пакет AnyLogic –
це професійний інструмент, призначений для розробки і дослідження
імітаційних моделей. AnyLogic був розроблений на основі нових ідей у галузі
інформаційних технологій, теорії паралельних взаємодіючих процесів і теорії
гібридних систем. Завдяки цим ідеям надзвичайно спрощується побудова
складних імітаційних моделей, є можливість використання одного
інструменту при вивченні різних стилів моделювання. Програмний
інструмент AnyLogic заснований на об’єктно-орієнтованій концепції. Іншою
базовою концепцією є представлення моделі як набору взаємодіючих,
паралельно функціонуючих сутностей. Активний об’єкт в AnyLogic – це
об’єкт зі своїм власним функціоналом, що взаємодіє з оточенням. Він може
включати в себе будь-яку кількість екземплярів інших активних об’єктів.
Графічне середовище моделювання підтримує проектування, розробку,
документування моделі, виконання комп’ютерних експериментів,
оптимізацію параметрів щодо деякого критерію. При розробці моделі можна
використовувати елементи візуальної графіки: діаграми станів (стейтчарти),
сигнали, події (таймери), порти і т.д.; синхронне й асинхронне планування
подій; бібліотеки активних об’єктів. Зручний інтерфейс і численні засоби
підтримки розробки моделей в AnyLogic роблять не тільки використання, а й
створення комп’ютерних імітаційних моделей в цьому середовищі
доступними навіть для початківців. 3 При розробці моделі на AnyLogic
можна використовувати концепції та засоби з декількох класичних областей
імітаційного моделювання: динамічних систем, дискретно-подієвого
моделювання, системної динаміки, агентного моделювання. Крім того,
AnyLogic дозволяє інтегрувати різні підходи з метою отримати більш повну
картину взаємодії складних процесів різної природи. У даному посібнику
описується агентний підхід до моделювання – здійснюється постановка
проблеми, визначається структура моделі, описується процес побудови
моделі в середовищі AnyLogic і вивчається її поведінка. Агент – це деяка
сутність, яка володіє активністю, автономною поведінкою, може приймати
рішення згідно з деяким набором правил, взаємодіяти із середовищем й
іншими агентами, а також може змінюватися (еволюціонувати).
Мультиагентні моделі використовуються для дослідження децентралізованих
систем, динаміка функціонування яких визначається не глобальними
правилами і законами, а, навпаки, ці глобальні правила і закони є
результатом індивідуальної діяльності членів групи. Мета агентних моделей
– отримати уявлення про загальну поведінку системи, виходячи зі знань про
поведінку її окремих активних об’єктів і взаємодії цих об’єктів у системі.
Агентна модель може містити десятки й навіть сотні тисяч активних агентів.
За допомогою агентів моделюють ринки (агент – потенційний покупець),
конкуренцію та ланцюги поставок (агент – компанія), населення (агент –
сім’я, житель міста або виборець) та багато іншого. У середовищі AnyLogic
можна легко та швидко створювати моделі з агентами. Агент природно
реалізовувати за допомогою базового елементу AnyLogic – активного
об’єкта. У моделі можна створювати класи активних об’єктів і далі
використовувати в моделі будь-яку кількість екземплярів цих класів.
Активний об’єкт має параметри, які можна змінювати ззовні, змінні, які
можна вважати пам’яттю агента, а також поведінку. Параметри можуть
вказувати стать агента, дату народження і т.д. Змінними можна, наприклад,
виразити вік агента, його координати в просторі, соціальні властивості.
Стейтчарти та лічильники можуть відображати поведінку: стани агента та
зміну станів під впливом подій та умов. Наприклад, переходи в різні вікові
або соціальні групи, зміни освіти або доходу і т.д. Крім того, агент може мати
інтерфейс для взаємодії з оточенням, який реалізується за допомогою
інтерфейсних об’єктів: портів та інтерфейсних змінних.
Графічне середовище моделювання AnyLogic включає в себе такі елементи:
− Stock & Flow Diagrams (діаграма потоків та накопичувачів)
застосовується для розробки моделей із використанням методу
системної динаміки.
− Statecharts (карти станів) використовується здебільшого в агентних
моделях для визначення поведінки агентів. Також використовується в
дискретно-подійному моделюванні, наприклад для симуляції
машинних відмов.
− Action charts (блок-схеми) використовуються для побудови алгоритмів.
Застосовуються в дискретно-подійному моделюванні та агентному
моделюванні.
− Process flowcharts (діаграми процесів) основна конструкція, що
використовується для визначення процесів в дискретно-подійному
моделюванні.
Середовище моделювання також включає в себе: низькорівневі конструкції
моделювання (змінні, рівняння, параметри, події тощо), форми
представлення (лінії, квадрати, овали тощо), елементи аналізу (бази даних,
гістограми, графіки), стандартні зображення та форми експериментів.
Середовище моделювання AnyLogic надає засоби проектування, розробки та
документування моделі, виконання комп'ютерних експериментів з моделлю,
включаючи різні види аналізу — від аналізу чутливості до оптимізації
параметрів моделі за певним критерієм.

5. Агентно-орієнтоване моделювання. Інструментальний засіб MASON


АОМ – спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. В основі агентно-орієнтованих моделей лежать три основні ідеї:
1) об'єктна орієнтованість;
2) здатність агентів до навчання (або їх еволюція);
3) складність обчислень.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі множину агентів.
При цьому, власне моделі, використовуючи прості правила поведінки,
можуть видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатньо складним.
MASON – Java бібліотека для моделювання мультиагентних систем.
Пакет MASON організований як невелика бібліотека для дуже широкої
агентно-орієнтованої симуляції, заснований на Java. Забезпечує більше чим
достатню функціональність для потреб симуляції. MASON включає в себе
бібліотеку моделей та необов’язковий набір засобів для 2D та 3D візуалізації
Особливості пакету MASON:
• 100% Java (1.3 або вище);
• швидкий, мобільний та невеликий;
• моделі повністю незалежні від візуалізації, яка може бути додана,
переміщена або змінена в будь-який час;
• за моделями може бути здійснений контроль;
• моделі можуть запускатися через інші Java додатки та засоби 2D та 3D
візуалізації;
• може створювати моментальні знімки PNG, кінофільми Quicktime,
діаграми і графіки та вхідні потоки даних.
Щоб запустити моделі MASON, необхідно активізувати (вибрати) командну
послідовність mason\start\ mason.bat, в результаті чого з’явиться вікно для
здійснення нової симуляції (моделювання).
Для того, щоб запустити обрану модель, слід натиснути на кнопку Select.
З’явиться два вікна - Heat Bugs Display та Heat Bugs .
Вікно Heat Bugs складається меню та панелі з 5 закладками: About, Console,
Displays, Inspectors та Model. Закладка About відображає інформацію про
вибраний додаток (модель). Кнопка Запуск (Play) в нижній частині вікна
дозволяє користувачу запустити симуляцію на виконання. Якщо симуляція
зупинена, слід натиснути цю кнопку для виконання симуляції на один крок
вперед. Кнопка Пауза (Pause) в нижній частині вікна дозволяє зупинити
симуляцію. Це дозволяє контролювати швидкість виконання симуляції. Для
того, щоб запустити симуляцію знову, треба натиснути зазначену кнопку
посторно. Кнопка Стоп (Stop) в нижній частині вікна зупиняє симуляцію.
Зупинена симуляція не може бути запущена знову. Інші два поля
відображають поточний крок симуляції та вибір кроку. Панель (закладка)
Console включає в себе елементи налаштування для симуляції (рис. 4). Перші
3 позиції дозволяють змінити час між кроками виконання симуляції (у
випадку, якщо вона відбувається занадто швидко). Інші 3 позиції визначають,
коли симуляція повинна бути зупинена (якщо симуляція буде зупинена, вона
не може бути відновлена).
Панель (закладка) Inspectors показує інформацію про розташування агентів
на площині.

6. Агентно-орієнтоване моделювання. Інструментальний засіб NetLogo


АОМ – спеціальний клас обчислюваних моделей, що базуються на
індивідуальній поведінці агентів та створюються для комп'ютерних
симуляцій. В основі агентно-орієнтованих моделей лежать три основні ідеї:
1) об'єктна орієнтованість;
2) здатність агентів до навчання (або їх еволюція);
3) складність обчислень.
Домінуючим методологічним підходом є підхід, при якому обчислюється
рівновага або псевдорівновага системи, що містить в собі множину агентів.
При цьому, власне моделі, використовуючи прості правила поведінки,
можуть видавати вельми цікаві результати. АОМ складаються з агентів, що
динамічно взаємодіють за певними правилами. Середовище, в якому вони
взаємодіють, може бути достатньо складним.
Багато складних систем можна досліджувати тільки шляхом моделювання.
Для систем, що складаються з великої кількості незалежних об'єктів, таких як
поведінка натовпу, розвиток багатоклітинних організмів або військові
операції, найбільш адекватним є моделювання на основі агентів. На сьогодні
існує багато програмних продуктів для агентно-орієнтованого моделювання.
До них відноситься і пакет NetLogo, який представлений десктопною та веб-
орієнтованою версіями (https://ccl.northwestern.edu/netlogo/) (рис. 1, а-б).
а)
б)
Основу пакету NetLogo складає однойменна мова програмування.
Мова програмування NetLogo
NetLogo є подальшим розвитком мови Logo, створеної в 1968 році
Сеймуром Пайпертом для навчання дітей за допомогою комп'ютера. Однак
це не означає, що Logo - це якась легковажна «дитяча» мова. Досить сказати,
що Logo - це діалект мови Lisp, яка протягом багатьох років є основною
мовою для створення систем штучного інтелекту. Брайан Харві, автор
тритомного підручника з Logo, характеризує її як мову, поріг майстерності
якої низький, а стеля повністю відсутня.
У традиційному Logo програміст дає інструкції одному виконавцю -
«черепашці». В NetLogo є багато агентів-черепашок. Такий підхід відкриває
можливість пояснення і розуміння зв'язків між поведінкою окремих індивідів
і явищ, що відбуваються на макрорівні, в результаті самостійних дій багатьох
індивідів. Основною метою NetLogo, таким чином, є агентне моделювання
поведінки складних систем.
Синтаксис
Синтаксис Logo мінімалістичний — розділена пробілами послідовність
імен і констант з рідкісним групуванням з використанням [] або (). []
використовуються для створення списків і групування команд у блок у
більшості конструкцій, () є звичайними дужками для підвиразів. Імена
відносяться до вбудованих або визначених програмістом сутностей —
функцій, змінних.
Функції в NetLogo називаються «репортерами» і оголошуються трохи по-
іншому:
to-reporter ім’я [список імен аргументів]
тіло
report значення, що повертається
end
Про кожну процедуру або функцію компілятор знає «арність»
( «валентність») і не вимагає зайвого разу використовувати групування.
Правда з функціями вищих порядків може помилятися - тоді їй потрібен
натяк у вигляді дужок.
Агенти
Агенти бувають чотирьох видів - черепахи (turtle), зв’язки (link) і плями
(patch - це місця в просторі), а також спеціальний агент – спостерігач
(observer). Для черепах і зв’язків можна задавати визначену користувачем
породу (breed). Агенти одного типу об'єднуються в набір відповідних агентів
(agentset) - turtles, links та pathes. Представники однієї породи також
об'єднуються в набір. Нова порода створюється командою
breed [ninjas ninja]
де ninja - це назва породи, а ninjas - назва набору, який об'єднує всіх
агентів цієї породи.
Черепахи створюються командою create-turtles (з аргументом - кількість
черепах, які потрібно створити), а потім індексуються функцією turtle. Агент
- це «first class value» і при бажанні може зберігатися в змінній, але це рідко
потрібно.
Агент або набір агентів може бути контекстом для команди. Виконання
команд в контексті агентів є основним механізмом роботи з ними.
Змінні
В оригінальному Logo була реалізована динамічна сфера застосування, яка
незручна і суперечить сучасним тенденціям в мовах програмування.
Розробники NetLogo діяли жорстко – заборонили створення однойменних
змінних, сфера застосування яких може перетинатися. Це не додає зручності
розробникам бібліотек, але досить корисно в навчанні. А соціологам і
військовим фахівцям при розробці моделей це дозволяє робити менше
помилок.
Сфера застосування статична, що спрощує використання функцій вищого
порядку.
Змінні можуть бути глобальними, власні для агента або типу породи,
формальними аргументами та локальними в кодовому блоці. Одне і те ж ім'я
змінної не може відноситися до різних класів змінних, але локальні змінні в
різних блоках, в тому числі в одній функції, можуть називатися однаково.
Ім'я локальної змінної не може збігатися з іменем аргументу функції, в якому
вона визначена, або з іменем глобальної або агентної змінної.
Функції вищих порядків
Деякі стандартні функції, такі як map, отримують іншу функцію як один з
аргументів. Вони можуть просто вказати назву функції, яку потрібно
передати, або написати закриття. Закриття — це код, вкладений у []. Про те,
що це закриття, а не список, укладач здогадується з контексту. В якості
формальних параметрів використовуються змінні '?', '?1', '?2' і т.ін.
Користуватися функціями вищого порядку складніше. Користувач може
призначити функцію значення змінній або передати іншу функцію значенню
за допомогою спеціальної функції task, а викликати функцію зі змінною за
допомогою runresult (або run для команд).
Інтерфейс і графіка
Програма має три вкладки (таби): інтерфейс, документація та редактор
коду. У вкладці Интерфейс є поле графічних об'єктів (включаючи
зображення світу), поле виводу тексту і REPL. У REPL можна перемикати
режими, в яких вказується, в якому контексті виконуються команди, що
вводяться, - «спостерігач», «черепахи», «плями» і «зв’язки». REPL
обмежений - не можна описувати змінні, породи, процедури і функції в
ньому (вони створені поза контекстом) – в цьому випадку доведеться зайти в
редактор коду.

Рис. 3. Структура робочого вікна програми


Кнопка (Button) – об'єкт є кнопкою. Містить команду, яка виконується
при натисканні.
Рычажок (Slider) – представляє змінну, числове значення якої можна
змінити візуально.
Переход (Switch) – перемикач, логічна змінна, значення якої можна
візуально змінити.
Выбор (Chooser) – змінна, яка надає можливість вибору значень зі
списку, складеного користувачем.
Ввод (Input) – поле для ручного введення значення для вказаної змінної.
Экран (Monitor) – відображає поточне значення вибраної змінної.
График (Plot) – об'єкт є координатною площиною для побудови графіків.
Для побудови графіків потрібно вказати, які змінні будуть значеннями
функцій.
Результат (Output) – як і об'єкт Monitor, він відображає інформацію.
Однак різниця полягає в тому, що він може відображати будь-яку текстову
інформацію за замовленням користувача.
Заметка (Note) – об'єкт для складання записів в робочій області (може
використовуватися як коментарі).
Вкладка Инфо (Information) - містить інформацію про модель. Щоб
заповнити інформацію, слід натиснути кнопку Редактировать (Edit).
Вкладка Код (Procedures) - призначена для створення визначених
користувачем функцій. Вирази в об'єктах і процедурах пишуться мовою
Logo.
Бібліотека моделей
NetLogo поставляється з великою бібліотекою моделей - від освітніх та
розважальних до досліджень. Деякі моделі здатні спілкуватися зі
спеціалізованим обладнанням, таким як дошка GoGo board.
В табл. 1 наведено перелік та тлумачення деяких основних термінів, що
мають відношення до програмної платформи NetLogo.
Таблиця 1 - 0Перелік термінів та їх тлумачення
7. Архітектура агентів на основі планування (реактивна архітектура)
Прийнято виділяти 3 класи архітектур:
□ Деліберативна (ДА): агенти використовують тільки точне
представлення картини світу в символьній формі, рішення приймають
на основі формальних суджень і використання методів порівняння по
зразку.
Приклади реалізації – системи Integrated Planning, Execution
and Monitoring (IPEM) PHEONIX, HOMER, Grate.
□ Реактивна (РА): агенти не мають будь-якої символьної моделі світу,
вони працюють за правилом «ситуація - дія», вибираючи найбільш
підходящу дію для конкретної ситуації, при цьому під ситуацією
розуміють потенційно складну комбінацію внутрішніх та зовнішніх
станів.
Приклад – архітектура Брукса – «subsumption architecture».
□ Гібридна (ГА): поєднання класичної та реактивної архітектури.
Приклади - TOURINGMACHINE, INTRRAP, PRS, OASIS,
CIRCA.

Базова архітектура РА

У реальному світі інтелект не є експертною системою або машиною


логічного висновку, а інтелектуальна поведінка виникає як результат
взаємодії продуктів взаємодії агента з середовищем.
Замість моделювання світу і планування реактивні агенти (РА)
повинні мати колекцію простих поведінкових схем, які реагують на
зміни в середовищі у формі «стимул – реакція».

Реактивна компонента відображає перцептуальні стимули на


примітивні дії. Деліберативна компонента виконує символічний
висновок для управління поведінкою реактивної компоненти,
наприклад, змінює множину правил ситуація - дія. У деяких
архітектурах деліберативна компонента прямо зв’язана із сенсорами і
ефекторами агента, в інших - ні.
Архітектура агентів
CA = (K, M, P, R, I, C)
K – ментальна підсистема;
M– підсистема моделювання;
P – підсистема аналізу та планування;
R – реактивна підсистема;
I – підсистема координації і взаємодії;
C- підсистема комунікацій.
Пошуки шляхів вирішення проблем, що виникають при використанні в агентних системах
класичних методів ШІ, призвели до появи нового класу – реактивних архітектур.
Засновником цього напряму прийнято вважати Р. Брукса (R. Brooks). В основі ідей, що
стали базою для створення реактивних архітектур, лежать такі погляди на інтелект:
- інтелектуальна поведінка може створюватися без явного символьного представлення
знань;
- інтелектуальна поведінка може створюватися без явного абстрактного логічного
висновку;
- інтелект є раптово виникаючою властивістю деяких складних систем.
У реальному світі інтелект не є експертною системою або машиною логічного висновку, а
інтелектуальна поведінка виникає як результат взаємодії агента із середовищем. Замість
моделювання світу і планування реактивні агенти (РА) повинні мати колекцію простих
поведінкових схем, які реагують на зміни в середовищі у формі «стимул – реакція»
Реактивні архітектури не використовують централізовану символьну
модель світу та не застосовують складні символьні міркування. Така
архітектура оперує на низькому рівні абстракції.
Невеликий час очікування відповіді забезпечує ефективну взаємодію між
агентами з такою архітектурою один з одним та з середовищем.
Недолік архітектури – неможливість глибокого аналізу даних від сенсорів.
Реактивна архітектура забезпечує прийняття рішень за значно меншим
обсягом інформації про оточуюче середовище та за значно менший час,
використовуючи прості емпіричні правила, специфічні для певної ПрО.

8. Архітектура взаємодії системи агентів


При виборі архітектури мультиагентної системи необхідно мати на увазі два
її аспекти:
1) архітектуру, що підтримує методи взаємодії агентів у процесі
функціонування системи в цілому, і
2) архітектуру окремого агента.
1) Архітектура взаємодії системи агентів
Основне призначення цієї компоненти архітектури полягає - забезпечити
скоординовану поведінку агентів при вирішенні загального та/або своїх
приватних завдань.
Тут можна виділити два основних варіанти архітектур.
1) В одному з них агенти не утворюють ієрархії і вирішують загальну
задачу повністю в розподіленому варіанті.
2) В іншому варіанті координація розподіленого функціонування
агентів в тій чи іншій мірі підтримується спеціально виділеним агентом, який
при цьому відноситься до мета-рівня по відношенню до решти агентів.
Розглянемо найпростіший варіант ієрархічної організації взаємодії агентів,
який передбачає використання одного агента "мета-рівня", що здійснює
координацію розподіленого рішення задач агентами.
Агент, який здійснює координацію, може бути прив'язаний до
конкретного сервера, і тоді він називається "місцем зустрічі агентів". Місце
зустрічі агентів (AMP - Agent Meeting Place) - це агент, який грає роль
брокера між агентами, що запитують деякі ресурси, якими володіють інші
агенти, і тими агентами, які ці ресурси можуть надати.
Архітектура AMP є архітектура звичайного агента (див. тему 2),
доповнена деякими допоміжними компонентами, наявність яких зумовлена
роллю цього агента як координатора взаємодії інших агентів. Ці допоміжні
компоненти повинні, з одного боку, містити уніфіковане опис безлічі
доступних через AMP агентів і їхніх можливостей (ресурсів, функцій тощо) і,
з іншого, організувати уніфікований доступ до них. Це забезпечується
такими компонентами AMP.
1.Об'єкти базових сервісів, зокрема, це можуть бути віддалений виклик
об'єктів, впорядкування об'єктів, дублювання об'єктів та інші базові
можливості, які звичайно підтримуються тією чи іншою платформою
відкритої розподіленої обробки, наприклад, OMG / CORBA.
2. Зв'язкові порти, відповідальні за прийом і відправку агентів в AMP за
допомогою відповідних протоколів.
3. Компонента встановлення автентичності агента по імені (впізнання агента,
"авторизація").
4. Консьєрж, що виконує функції контролю повноважень агента, що
надходить, наявності на AMP запитуваного сервісу, надання допомоги агенту
у виборі подальшого маршруту переміщення та ін.
5. Поверхневий маршрутизатор, який виконує функції інтерфейсу між
агентами і компонентами AMP, які самі по собі реєструються в цьому
маршрутизаторі; він підтримує обмежений словник для задоволення
aгентських запитів.
6. Лінгвістичний журнал, який представляє собою базу даних, що допомагає
агентам і AMP розуміти один одного в процесі комунікацій. У ньому
реєструються словники і мови, але не описи мов або сенс термінів, а лише
посилання на них, тобто журнал надає інформацію про те, що може бути
зрозуміле в AMP.
7. Глибинний маршрутизатор, який асистує поверхневому при більш
спеціальних і складних запитах.
8. Менеджер ресурсів; він реєструє агентів на AMP та асоційовані з ними
ресурси, а також управляє ресурсами AMP.
9. Середовище виконання агента, яке реєструється в AMP і управляє
доступом до компонентів агента; воно інтерпретує сценарії, забезпечує
доступ до базових можливостей та ін.
10. Система доставки подій; джерелами подій можуть бути локальні засоби,
резидентні агенти AMP та ін; система реєструє події і виконує пошук агентів
для відповідного типу подій, повідомлень.

9. Архітектури агентів, засновані на знаннях


Мови, "орієнтовані на знання":
· мови представлення знань (KIF)
· мови переговорів і обміну знаннями (KQML, AgentSpeak,
April)
· мови специфікацій агентів.
Мова KIF
KIF - це мова для обміну знаннями між різними програмами,
написаними різними людьми, на різних мовах і в різний час.
Вона:
- має декларативну семантику (значення виразів, представлених на цій
мові, може бути зрозуміле без звертання до спеціального інтерпретатора);
- вона логічно повна (забезпечує вираження довільних пропозицій
логіки предикатів першого порядку),
- забезпечує представлення знань про представлення знань;
- забезпечує представлення немонотонних правил висновку,
визначення об'єктів, функцій і відносин.
KIF не претендує на звання мови для внутрішнього представлення знань
(хоча і може бути використаний для цих цілей). Звичайно програма одержує
зовнішні знання, виражені мовою KIF, потім транслює їх у внутрішнє
представлення (списки, фрейми і т.ін.) і виконує всі обчислення,
використовуючи ці внутрішні представлення.
KIF використовується при комунікаціях із зовнішніми програмами.
Ціль мови KIF аналогічна меті мови Postscript - вона не є мовою,
досить ефективною для представлення внутрішніх знань програм, проте вона
зручна для незалежної розробки програм, що працюють зі знаннями.
Основні властивості мови KIF – це:
1. Мова є декларативною, чим відрізняється від мов типу Prolog і Emycin.
2. Мова є логічно повною.
3. Мова є трансльованою (translatability) - вона припускає значення для
трансляції декларативних баз знань в/із типових мов представлення знань.
4. Мова є такою, що добре читається - це спрощує її використання
розроблювачем баз знань.
5. Мова може бути використана як мова представлення знань.
Існують два різновиди мови KIF: лінійний і структурований.
У лінійному варіанті всі її вирази - це рядки ASCII-символів, що
зручно для збереження на пристроях з послідовним доступом.
У структурованому варіанті мови правильні вирази - це
структуровані об'єкти. Структурована мова зручна для використання при
комунікаціях програм, що працюють в одному адресному просторі. Між
лінійним і структурованим представленнями однієї і тієї ж сутності існує
взаємо-однозначна відповідність.
Відповідність між лінійним і структурованим представленнями
визначається в такий спосіб: рядок ASCII-символів буде правильним виразом
лінійного варіанта мови KIF тоді і тільки тоді, коли
(1) він допускається інтерпретатором мови Common Lisp, і
(2) структура, породжена інтерпретатором Common Lisp, буде
правильним виразом структурованого KIF.
У структурованому KIF визначені наступні синтаксичні конструкції: word,
expression, operator, constant, term, sentence, definition, rule і т.ін.
Застосовність KIF у рамках розробки агентів бачиться в такий спосіб.
Ядро агента, а саме: підсистеми керування пам'яттю, планування, база знань і
т.ін. пишуться на С++ чи на одній з мов Java, Telescript (якщо нас цікавить
здатність агента до міграції по мережах), а KIF використовується як мова для
обміну знаннями/даними з іншими агентами (для цього агент повинний мати
підсистему перетрансляції з мови внутрішнього представлення знань на
KIF).
Мову KIF можна також використовувати і як мову представлення
власних знань агента, у цьому випадку відпадає потреба в згаданому вище
трансляторі.
Мова AgentSpeak
Аналогом класу в даній мові виступає сімейство, представником
(екземпляром) сімейства є агент. Кожен агент має базу даних відносин з
публічною і приватною частинами, безліч сервісів і безліч планів - процедур,
про які відомо лише те, виконані вони чи ні. Мова забезпечує розподіленість
збереження інформації в просторі функціонування агентів.
Кожен агентський сервіс може бути одного з наступних трьох типів:
achieve, query, told.
Кожен агентський план визначається за допомогою імені й опису
абстрактної ситуації, у якій він може бути застосований.
Під час роботи агента, якщо план є прийнятним в поточній ситуації,
виконуються дії, пов'язані з даним планом.
Передача повідомлень синхронно/асинхронна. Кожному агенту
привласнюється особиста поштова скринька, у яку складаються всі
повідомлення, що надходять на його адресу.
Крім передачі повідомлень типу агент-агент, підтримуються
комунікації агент-сімейство агентів, останнє дозволяє агентам
використовувати сервіси обробки повідомлень на базі властивостей
сімейства. Повідомлення маршрутизуються по просторах повідомлень,
кожне з яких приєднане до конкретного сімейства агентів.
Повідомлення, що використовуються в мові, можуть відноситися до
одного з трьох типів: інформувати, запитувати з чеканням відповіді,
запитувати без чекання відповіді.
Кілька слів про операційну семантику мови. Мова вимагає, щоб усі
сімейства агентів були визначені до початку виконання середовищем
агентських завдань (під час компіляції), динамічне створення агентів не
підтримується.
Кожен агент може знаходитися в одному з трьох станів: активний
стан, стан очікування, непрацюючий стан (idle).
Після прибуття до агента повідомлення воно кладеться в його поштову
скриньку, далі агент починає обробляти повідомлення. Суть обробки полягає
в наступному. Спочатку по типу мовного повідомлення (achieve, query, told)
вибираються плани, що можуть бути потенційно застосовні в даній ситуації
(множина придатних планів), далі виконується перегляд абстрактних
ситуацій множини обраних на попередньому кроці планів (множина
застосовних планів). Потім для останньої множини будуються реалізації
(посилання).
Мова KQML
KQML - мова і протокол для підтримки взаємодії агентів у
розподілених додатках. Приклади можливих застосувань мови включають
інтелектуальні мультиагентні системи, такі як інтелектуальні агенти
планування, що підтримують розподілену обробку. Перед визначенням
інтерфейсів систем, заснованих на знаннях, необхідно перерахувати типові
компоненти таких систем:
- додаток, розрахований на непідготовленого користувача (End User
Application);
- систему, засновану на знаннях (Knowledge Based System);
- сховище спеціальних знань (Knowledge Base Repository) - сховище знань
про вміст бази знань - використовується для відстеження історії доступу,
цілісності та інших аспектів функціонування баз знань;
- систему керування базами даних (Database System);
- активні сенсори (Active Sensors) - відповідають за обмін даними
(знаннями) з “зовнішнім світом”.
Можливі різні способи взаємодії перерахованих компонентів.
Розроблювачі KQML виділяють 3 напрями, особливо важливі з їхнього
погляду, для комунікацій інтелектуальних агентів:
1) зв'язність (Connectivity) - фокусується на способі зв'язування агентів між
собою;
2) архітектура (Architecture) - акцентує увагу на способі побудови
майбутньої системи (буде система статичною, коли усі компоненти відомі
вже на етапі проектування/ реалізації чи динамічною);
3) комунікації (Communication) - даний напрямок розглядає
синхронність/асинхронність обміну повідомленнями між агентами.
При розробці мови були зроблені спеціальні припущення про основні
моменти її використання для опису комунікацій мультиагентних систем:
1) Архітектура. Агенти - це окремі процеси, що працюють в одному
адресному просторі чи на різних машинах, з'єднаних за допомогою Internet.
2) Комунікації. Мова підтримує наступні стратегії передачі інформації:
point to point, multicast, broadcast.
3) Синтаксис. Повідомлення між рівнями вмісту, повідомлень і
комунікацій представлені у вигляді s-виразів мови Lisp. Між процесами
вирази передаються як потоки ASCII-символів.
4) Протокол. Для транспортної підтримки KQML був створений
спеціальний протокол - SKTP (Simple Knowledge Transfer Protocol).
Мова KQML складається з трьох рівнів:
- змісту,
- повідомлень і
- комунікацій.
KQML-вираз можна розглядати як вираз-вміст, поміщений у
повідомлення-обгортку, що, у свою чергу, поміщено в комунікаційну
обгортку. На рівні змісту знаходиться представлення знань на деякій мові.
Рівень повідомлень додає додаткові атрибути, такі як опис мови, на
якому виражений зміст, його онтологію і тип використовуваного методу
переговорів.
Комунікаційний рівень додає інформацію про відправника й
одержувача повідомлення, а також вказує на те, є повідомлення синхронним
чи асинхронним.
Основу синтаксису мови KQML складають імена примітивних дій-
повідомлень, що в англійській транскрипції називаються “performatives”
(перформативності). Тип повідомлень визначає, що можна зробити з
пропозиціями, що містяться в повідомленні, з цим зв'язана сама назва KQML-
повідомлень англійською мовою.
Усі дії-повідомлення можна розділити на наступні категорії:
- мови змісту KQML, що припускає модель баз у формі безлічі
пропозицій деякої мови, що може бути об'єктною;
- контексту міркувань - підмножини пропозицій (фрагмента) бази знань;
запити і відгуки повинні робитися щодо деякого контексту, при цьому
повідомлення даного типу повинні дозволяти визначати контекст і
переключатися між фрагментами бази знань;
- визначення, що мають на меті активізувати і скасовувати визначення;
- відповіді на питання, що дозволяють задавати питання щодо істинності
пропозицій;
- відгуки, що визначають набір повідомлень для одержання відповідей на
задані питання.

10. Базові типи співробітництва і суперництва агентів в мультиагентних


системах
Спробуємо побудувати більш детальну класифікацію типів взаємодії агентів
у МАС на основі трьох ключових критеріїв формування груп з окремих
агентів:
• а) рівень сумісності цілей агентів;
• б) потреба в чужому досвіді (знаннях);
в) спільне використання ресурсів.
Розглянемо вісім базових (еталонних) ситуацій взаємодії агентів.
Тут граничний випадок незалежності агентів рівносильний відсутності
МАС (цілком автономні агенти).
Інші ситуації охоплюють різні варіанти кооперації (співробітництва) і
конфлікту (суперництва) агентів.
Просте співробітництво припускає інтеграцію досвіду окремих
агентів ( що виражається в розподілі задач і обміні знаннями), коли не
вимагаються додаткові заходи щодо координації їхніх дій.
Непродуктивне співробітництво реалізує відому ситуацію “лебедя,
рака і щуки” з байки І.О. Крилова, коли агенти, не маючи потреби в
додатковому досвіді, але, спільно використовуючи ресурси, заважають один
одному.
Координоване співробітництво означає, що агенти повинні погодити
свої дії (можливо, за допомогою спеціального агента-координатора), щоб
продуктивно використовувати наявні досвід і ресурси. Це — найбільш
складний випадок співробітництва, коли до проблеми розподілу задач
додається проблема координації дій, обумовлена обмеженістю ресурсів.
В деякому сенсі протилежним по відношенню до координованого
співробітництва є випадок чистого індивідуального суперництва, коли
агенти поставлені в практично однакові умови, а доступ до ресурсів не є
причиною конфлікту. Прикладом служить участь агентів у конкурсі на
одержання деякого завдання. Тут при несумісності цілей агенти змушені
вести переговори один з одним. Індивідуальне суперництво за ресурси являє
собою класичний варіант конфліктної ситуації, коли кожен агент хоче
монополізувати наявні спільні ресурси.
У випадку чистого колективного суперництва, агентам, що мають різні
індивідуальні цілі, але недостатній досвід для їхнього досягнення,
приходиться поєднуватися в коаліції. При цьому спочатку відбувається
формування груп агентів, а потім починається суперництво між цими
групами.
Нарешті, колективне суперництво за ресурси, тобто ситуація, що
комбінує колективне суперництво й індивідуальні конфлікти за ресурси,
являє собою найбільш продуктивний випадок конфліктної ситуації з погляду
функціонування МАС, оскільки конкуруючі групи сприяють ліквідації
монополій і розширенню ринку послуг.
Звичайно, ці всі ці еталонні випадки є ідеалізацією і задають лише вихідні
орієнтири для встановлення типів взаємодії. Діапазон реальної взаємодії
агентів значно ширший і не може бути описаний у рамках булевой шкали.
Тут необхідним є перехід до більш загальних алгебраїчних конструкцій,
наприклад, до алгебр Де Моргана та алгебр Кліні.
11. Взаємодія агентів в мультиагентних системах
Взаємодія агентів — це перше, про що слід говорити, коли мова йде про
створення МАС.
Взаємодія означає встановлення двосторонніх та багатосторонніх
динамічних відносин між агентами. При цьому вона є одночасно джерелом і
продуктом деякої організації. Іншими словами, взаємодія являє собою не
тільки наслідок яких-небудь дій, що виконуються агентами в МАС
одгочасно, але і є необхідною умовою формування віртуальних колективів і
штучних співтовариств. Одне з гасел синергетичного ШІ (штучного
інтелекту) говорить: “немає знань без взаємодій”.
Взаємодія — це не просто зв'язок, взаємозумовленість між
співіснуючими агентами, але і передумова для взаємних перетворень:
модифікацій як самих агентів, так і відносин між ними.
Наприклад, у ході взаємодії в МАС агент-виконавець може
перетворитися в агента-координатора, а відносини співробітництва — у
конфлікт за ресурси.
Головними характеристиками будь-якої взаємодії є
- спрямованість,
- вибірковість,
- інтенсивність і
- динамічність.
Усі це повною мірою відноситься і до взаємодій агентів.
1) По-перше, взаємодії між агентами мають визначену спрямованість
— позитивну чи негативну, тобто носять характер
- сприяння чи протидії,
- притягання чи відштовхування,
- кооперації чи конкуренції,
- співробітництва чи конфлікту,
- координації чи субординації, і т.ін.
Так сприяння агентів один одному означає їх взаємодопомогу, коли дії
одних агентів допомагають діям інших. Відбувається узгодження У контексті
аналізу взаємодії агентів і їхніх групп становить інтерес концепція групової
динаміки К. Левіна, що спирається на його теорію поля.
Подібно тому, як індивідуальний агент і його оточення формують
психологічне поле, група агентів і її оточення утворять соціальне поле.
Групове поводження в будь-який момент часу є функцією загального
стану соціального поля.
Воно визначається конкуруючими підгрупами в групі, окремими
агентами, обмеженнями і каналами спілкування.
У груповій динаміці вводиться поняття валентності, близьке до
спрямованості. Тут валентність характеризує взаємне притягання чи
відштовхування агентів: позитивна валентність відбиває прагнення
агентів у визначений район “силового поля”, негативна — рух у зворотну
сторону.
індивідуальних дій в інтересах посилення кінцевого ефекту (досягнення
синергії). Сприяння переростає в кооперацію при наявності загальної мети,
взаємну адаптації і широке використання можливостей один одного.
Навпаки, у випадку протидії агенти заважають один одному, перешкоджають
досягненню індивідуальних цілей кожного.
В літературі аналізуються такі види взаємодії, як кооперація і
конкуренція.
Виділяються два різновиди кооперативних відносин:
- союзництво (адитивний ефект об'єднання агентів) і
- партнерство (мультиплікативний ефект об'єднання агентів).
Важливим показником ступеня кооперації служить кількість
включених у неї агентів.
Конкуренція характеризується негативним ефектом об'єднання агентів,
а конфлікт може сприяти наближенню до гомеостатическим границь агентів.
2) По-друге, взаємодії між агентами виборчі. При формуванні МАС
взаємодіють лише такі агенти, що деяким чином відповідають один одному і
поставленій задачі. При цьому агенти можуть бути зв'язані в одному
відношенні і незалежні в іншому. Одні агенти можуть взаємодіяти один з
одним з більшою легкістю, а інші — з меншою. Наприклад, взаємодія
полегшується у випадку просторового зближення агентів, їхньої
гомогенізації, попереднього знайомства один з одним і т.ін.
3) По-третє, взаємозв'язок і взаємозалежності між агентами звичайно
не зводяться до дихотомічному випадку (“зв'язок присутній” чи “зв'язок
відсутній”), а характеризуються деякою силою (інтенсивністю).
4) По-четверте, взаємодії між агентами динамічні. У залежності від
ситуації може
- змінюватися їхня інтенсивність і спрямованість,
- відбуватися ескалація (деескалація) співробітництва чи конфлікту.
Наприклад, при необхідності спільного використання ресурсів заради
вирішення складної задачі ступінь взаємозалежності агентів зростає, а
зближення цілей і досягнення компромісу в процесі переговорів може
привести до зміни знака відносин між агентами — переходу від протидії до
сприяння.
12. Вимоги до інструментальних засобів для побудови мультиагентних
систем
Проблема створення інструментальних засобів проектування мультиагентних
систем дуже інтенсивно досліджується в останні роки. Назвемо найбільше
відомі проекти з численного ряду інструментальних систем, орієнтованих на
вирішення подібних задач, такі як AgentBuilder, Ascape, Bee-gent, Cable,
Decaf, FIPA-OS, Grasshopper, Gypsy, JADE, JASON, JATLite, JAFMAS,
MAML, ProcessLink, Swarm, Zeus та інші.
Разом з тим, практично не існує інструментальних засобів, які б
задовольняли
комплексу пропонованих до них на сучасному рівні вимог. Розділимо
комплекс вимог на два класи - загальносистемні та інструментально-
технологічні.
До першого класу варто віднести: наскрізну підтримку усіх фаз життєвого
циклу АОС і МАС; наявність єдиного інтегрованого середовища розробки
всіх
компонентів АОС; підтримка різних категорій користувачів; забезпечення
засобів візуального проектування; автоматичне створення програмних кодів,
що виконуються, для інтелектуальних агентів (ІА); підтримка колективної
роботи над проектом системи та автоматизованого документування усіх фаз
процесу розробки.
До другого класу відносяться такі складові, як забезпечення побудови
розподілених баз знань і механізмів логічного висновку; підтримка процесу
формування логічних моделей розподіленої системи (формування онтологій
описуваних областей і розподіл знань по інтелектуальних компонентах
АОС);
забезпечення способів побудови моделей поводження ІА; реалізація
механізмів паралельного функціонування, комунікації і координації агентів;
підтримка модифікованості і розширюваності моделей ІА в процесі
реального
функціонування тощо.
Відомі засоби не вийшли поки за рамки академічних проектів і не
перетворилися в інструмент промислової технології виробництва МАС.
Очевидно це справа майбутнього, за аналогією з процесом становлення
технології програмування. У найближчі роки повинні виділитися лідери
агентного промислового проектування, але видима розмаїтість
інструментальних засобів у цій області буде більшою, чим у сучасних
системах об’єктно-орієнтованого програмування (ООП), тому що в основі
МАС лежить широкий спектр теоретичних моделей та архітектур агентів.
Варто врахувати і зростаючу кількість нових логічних моделей і перехід до
створення гетерогенних АОС, у яких розмаїтість типів інтелектуальних
агентів (ІА) й інших компонентів буде значною.
Серед російських розробок варто виділити інструментальні засоби групи
інтелектуальних систем Санкт-Петербургського інституту інформатики та
автоматизації РАН, очолюваної В.І. Городецьким, розробки колективу В.Ф.
Хорошевського, інструментальне середовище MagentAEngine, засноване на
роботах В.А. Віттиха і П.О. Скобелєва.

13. Висхідний і низхідний підходи до проектування МАС


Історично склалися два протилежних підходи до проектування
мультиагентних систем. Найбільш відомою та загальноприйнятою є
методологія висхідного проектування, що припускає рух “від частин до
цілого”. Це вимагає попереднього завдання вихідних функцій (ролей) агентів,
визначення кола їхніх зобов'язань по відношенню один до одного,
формування вихідних структур та структур, що розвиваються, на основі
виділених функцій і дослідження адекватності цих структур характеру
розв'язуваних задач у даній проблемній області. По суті, структура МАС
утвориться в результаті розподілу ролей між агентами.
Класичний висхідний підхід спирається на визначення системи як
сукупності елементів, що знаходяться в деяких відносинах один з одним та із
середовищем, (сформульовано ще в роботах Л. фон Берталанфі і являє
собою скорочений варіант концепції А. А. Богданова). Тут для визначення
системи потрібно попередньо задати її функції і заздалегідь розподілити їх
між елементами, указавши їхні відносини між собою і із середовищем.
Формально це записується у вигляді S= (Х, R), де Х — безліч елементів, а R
— безліч зв'язків.
На відміну від висхідного підходу, головна ідея низхідного проектування
зводиться до руху “від цілого до частин”, що припускає виділення загальних
соціальних характеристик співтовариства МАС (інтелектуальних організацій)
за деяким набором критеріїв, побудова базових типів подібних організацій з
наступним визначенням вимог до архітектури агентів. При цьому
індивідуальні властивості і поводження агентів у МАС визначаються на
основі типу соціальної організації і множини відповідних взаємин між
агентами. В такому випадку проектування припускає рух “зверху вниз”, коли
властивості агентів у МАС визначаються властивостями співтовариства
МАС. Вдалий вибір вихідного набору організаційних критеріїв (системного
базису полярних шкал) та використання ознаки “централізація —
децентралізація” дозволяють соціально структурувати МАС.
Загальну ідею низхіднонго проектування віртуальних організацій як МАС
можна представити у вигляді наступного ланцюжка: “вибір соціальних
критеріїв для характеризации співтовариства МАС — визначення типу
штучного співтовариства — синтез структури МАС — вибір типів агентів —
проектування архітектури агента”.
Формально задачу низхідного проектування мультиагентних систем
(віртуальних організацій) можна виразити як узагальнену задачу прийняття
рішень (що відноситься до класу багатокритеріальних задач із суб'єктивними
моделями) за допомогою набору

DMP=(E, N, З, SC, М, U, DR), (1)


де:
Е - множина середовищ прийняття рішень;
N - множина експертів;
С - множина критеріїв формування співтовариства МАС,
SC - множина типів використовуваних шкал оцінок (наприклад, точні
числові чи якісні лінгвістичні оцінки),
М - множина припустимих значень оцінок,
U - множина варіантів структур МАС,
DR — вирішальне правило.

14. Еволюційне та коеволюційне проектування МАС


Організаційне моделювання і проектування МАС спирається на наступні
базові процеси:
1) функціональний аналіз і моделювання, спрямовані на специфікацію
функцій МАС, ролей і складу агентів;
2) структурний аналіз і моделювання — визначення загальної структури
МАС і ряду її основних параметрів;
3) задання та уточнення деяких параметрів конкретизації МАС, що
визначають ефективну реалізацію МАС, тобто перехід від вихідної базової
структури до конкретної структури МАС (чи перехід від класу МАС до
екземплярів МАС);
4) визначення функціонально-структурної організації МАС;
5) еволюційне проектування, що включає функціонально-структурний
синтез і структурно-функціональний аналіз.
Функціональний аналіз МАС спрямований на визначення функцій агентів.
Функції МАС можуть розглядатися в різних вимірах, що відповідають
точкам зору спостерігачів.
Структурний аналіз МАС спрямований на упорядкування множини
можливих взаємодій між агентами шляхом виділення зв’язуючих їх
абстрактних відносин і аналізу їхніх змін у часі.
Функціонально-структурний підхід до розробки МАС припускає побудову
її функціонально-структурної організації, тобто визначення функцій
майбутньої системи і синтез відповідної базової структури з агентів, що
виконують зазначені функції.
Еволюційний синтез МАС означає породження і трансформацію її
функціонально-структурної організації. Елементарний крок процессу
еволюційного проектування включає дві нерозривно зв'язані фази:
а) функціонально-структурний синтез (ФСС);
б) структурно-функціональний аналіз (СФА).
При розгляді їх як “чорних шухляд” у випадку ФСС на вході маємо набір
функцій, а на виході — сукупність структур. Іншими словами,
функціонально-структурний синтез МАС являє собою побудову структур,
компонентами яких є функції агентів, а також установлення відповідності
між видами функцій і структур. Навпаки, фаза СФА починається з розгляду
раніше отриманих структур, а завершується визначенням наступних функцій.
При зміні умов існування МАС, росту складності і невизначеності
зовнішнього середовища, її життєздатність може бути забезпечена лише
шляхом модифікації (найчастіше, розширення) сукупності реалізованих нею
функцій, що звичайно спричиняє зміну структури МАС. Тут важливу роль
відіграє стратегія адаптації до зовнішнього середовища, що пов'язана з
забезпеченням оптимального співвідношення стійкості і мінливості як
вихідних характеристик МАС, так і самої її функціональної структури.
Загальна схема висхідного еволюційного проектування МАС задається
рекурсивним ланцюжком:
“середовище — функції МАС — розподіл функцій (ролей) між агентами
— склад агентів — набір відносин між агентами — базові структури МАС —
модифікації (.)...”,
де (.) означає можливість зміни кожного з ланок зазначеного ланцюжка.
Так зміни середовища (зовнішніх умов) приводять до змін функцій МАС, що
спричиняють перерозподіл ролей між агентами, заміну одних і породження
інших агентів, що супроводжується зміною відносин між ними та еволюцією
вихідних структур. Основним фактором еволюції МАС є її самозбереження
завдяки адаптації до змін середовища. Іншими словами, коеволюція МАС із
середовищем (чи з іншими системами розглянутого класу) припускає і
збереження індивідуальності, і взаємну адаптацію.
Тоді методика висхідного проектування МАС включає наступні основні
етапи:
1. Формулювання призначення (мети розробки) МАС.
2. Визначення типу та основних властивостей середовища МАС.
3. Визначення основних і допоміжних функцій агентів у МАС.
4. Уточнення складу агентів і розподіл ролей між агентами. Вибір
архітектур і мов реалізації агентів.
5. Виділення базових взаємозв'язків (відносин) між агентами в МАС.
6. Визначення можливих дій (операцій) агентів.
7. Побудова базової архітектури (функціонально-структурної одиниці)
МАС, аналіз її можливих станів (нормальний, вироджений, критичний
тощо.).
8. Аналіз реальних поточних чи передбачуваних змін зовнішнього
середовища (умов функціонування) чи внутрішніх протиріч МАС.
9. Визначення відповідних змін функцій агентів і формулювання стратегії
еволюції МАС.
10. Побудова загальної архітектури МАС, інваріантної до розглянутої
області змін середовища (чи самовідтворення функціонально-структурної
одиниці МАС).
Технічне завдання (специфікація) на проектування МАС повинне поряд з
її призначенням містити опис типу середовища, в якому буде функціонувати
МАС. Можна виділити замкнуті і відкриті середовища, детерміноівні та
стохастичні, середовища, що трансформуються, та середовища, що не
трансформуються. Потім необхідно визначити головні функції, покладені на
агентів. При цьому організація може розглядатися як система ролей, де
кожна роль визначає множину функцій агента в МАС. Ролі можуть бути
зосереджені чи, навпаки, широко розподілені між агентами.
Для будь-якої відкритої системи легко виділити наступні найважливіші
функції:
1. Функція відображення чи представлення зовнішнього світу (зв'язок від
середовища до системи) охоплює сукупність функцій моделювання
середовища та інших систем, а також представлення подій, що можуть
вплинути на життєдіяльність системи.
2. Функція регуляції діяльності системи (зв'язок від системи до
середовища) звичайно характеризує результати роботи системи, вироблені
нею продукти чи послуги. Іншими словами, вона часто зводиться до
продуктивної, операційної чи виконавчої функції, що включає множину дій і
операцій, необхідних для вирішення задачі чи виконання замовлення.
3. Для встановлення і підтримки зазначених зв'язків між системою і
середовищем служить спеціальна комунікативна функція. Вона забезпечує
функціонування усіх входів і виходів, а також інтерфейси системи. Цій
функції відповідає інтерфейсний агент.
4. Функція самоврядування в системі визначає джерела діяльності,
обмеження і вибір видів діяльності. Відповідно, у МАС виділяються три
підфункції:
а) інтенціональна функція (функція мотивації), яка характеризує
формування цілей, виходячи з потреб і інтересів системи;
б) законодавча функція, тобто функція вироблення обмежень (норм,
принципів, заборон) на поводження агентів у МАС;
в) вирішальна функція, пов'язана з оцінкою ступеня досягнення мети і
вибором задач.
5. Ресурсна чи консервативна функція відповідає за збереження структури
системи і агентів, придбання та обслуговування ресурсів, — словом, за все,
що потрібно для підтримки і відтворення системи.
Функції агентів зв'язані з перетворенням їхніх потреб у дії. Ролі
характеризують функції агентів незалежно від їх внутрішньої структури. Для
МАС, що моделює мережні організації, можна виділити наступні ролі
агентів:
1. Агент-замовник, що розсилає заявки на виконання деякого завдання
іншим агентам.
2. Агент-координатор (посередник), що приймає замовлення і розподіляє
їх між іншими (компетентними) агентами.
3. Агент-виконавець.
4. Агент-субординатор (супервізор), що організує і контролює роботу
вищевказаних трьох агентів і наділений правом екстреного втручання і
перерозподілу ресурсів у критичних (позаштатних) ситуаціях.
Процеси еволюції і реорганізації МАС можуть бути пов'язані з
відповідями на наступні питання.
• Чи мають місце зміни середовища, в якому функціонує МАС? Чи носять
вони регулярний, спрямований характер чи скоріше випадкові?
• Чи можна спрогнозувати майбутній стан середовища і як швидко він
наступить?
• У якому ступені можуть бути скомпенсовані небажані зміни середовища
активними діями МАС?
• Як і в якому ступені варто змінити функції, процеси, структуру і
діяльність МАС? Якими є її нові організаційні структури, що будуть досить
ефективними при новому стані середовища?
• Які агенти (і організаційні рівні) у МАС у найбільшому ступеня будуть
порушені її структурною перебудовою? Які організаційні одиниці мають
найбільший запас адаптивних резервів?
• Які ресурси необхідні для перебудови різних рівнів системи?
Основними видами змін функцій агентів у ході еволюції МАС є:
а) інтенсифікація функцій — основний тип філогенетичної зміни;
б) ослаблення функцій;
в) мобілізація функцій;
г) іммобілізація функцій;
д) розширення функцій;
е) перерозподіл функцій;
є) зменшення числа функцій (з посиленням головної функції
придушуються інші, другорядні);
ж) зміна функцій;
з) заміщення функції одного агента аналогічною функцією іншого агента;
і) компенсація функцій різних агентів і нерівномірності їх адаптації до
середовища.
Як приклади параметрів конкретизації, що визначають перехід від деякого
класу МАС до конкретного екземпляра, розглянемо пари параметрів, що
задаються на полярних шкалах: а) “спеціалізація — універсальність”; б)
“достатність — надмірність”. Ступінь спеціалізації s (придатності) агента а
для вирішення проблеми Р є показник його компетентності, що характеризує
наявність і обсяг спеціальних знань по відношенню до необхідного обсягу
знань для вирішення задачі. Коли s = 0, агент універсальний, а коли s = 1,
агент гранично спеціалізований. У свою чергу, ступінь надмірності r
характеризує число агентів, що володіють тими самими знаннями. Коли r = 0,
є тільки один агент, здатний виконати дану задачу. Наприклад, у МАС,
заснованій на кооперації агентів-фахівців (тоді, коли вони не є
взаємозамінними), s =1, а r= 0.
Можна виділити чотири граничних варіанти організації МАС в залежності
від двох розглянутих параметрів:
1. Гіперспеціалізована ненадлишкова організація (s = 1, r = 0): кожен агент
спеціалізується на вирішенні тільки однієї задачі, і більш того, кожна задача
може бути виконана тільки одним з агентів. Цей тип організації відбиває
чисто функціональний підхід (тейлорівську організацію), коли кожна
функція представлена у вигляді агента; для нього характерна мінімальна
надійність і відмовостійкість.
2. Спеціалізована надлишкова організація (s = 1, r = 1). Кожен агент
здатний виконувати тільки одну задачу, яку можуть виконати і всі інші
агенти. Тут мова йде про крайній випадок, коли всі агенти мають ті самі
знання. Іноді цей тип класичної, функціонально однорідної організації
використовується локально для збільшення надійності системи.
3. Універсальна надлишкова організація (s = 0, r = 1). Кожен агент може
виконувати множину різних задач, і кожна задача виконується великим
числом агентів. Коли ж надмірність дорівнює числу задач, кожен агент є
універсалом. Головна проблема зводиться до розподілу задач між агентами.
4. Універсальна ненадлишкова організація (s = 0, r = 0). Тут кожен агент
може виконувати кілька задач, але кожна задача виконується лише одним
агентом.

15. Елементи реалізації мультиагентних систем


Для того, щоб одержати когерентну поведінку системи, індивідуальні агенти
в мультиагентній системі не тільки повинні розділяти знання про проблеми і
їх вирішення, але й повинні також “обміркувати” процеси координації дій з
іншими агентами. Аналіз показує, що в мультиагентній системі немає
можливості
- глобального управління,
- глобального подання знань,
- глобального критерію успіху, або
- навіть глобального представлення системи, так що завдання
координації може бути досить важким.
Характерні труднощі, які зустрічаються при реалізації координованої
поведінки в будь-якій мультиагентній системі є такими:
1. Зв'язок: Як дати агентам можливість здійснювати зв'язок? Які
протоколи зв'язку слід використовувати?
2. Взаємодія: Яку мову агенти повинні використовувати для того, щоб
взаємодіяти один з одним і об'єднувати свої зусилля?
3. Когерентність та координація: Як гарантувати, що агенти
координуються один з одним з метою конкретного вирішення проблеми, яку
вони намагаються вирішити?
3.1. Зв'язок в мультиагентних системах
Зв'язок дає можливість агентам в мультиагентній системі
обмінюватись інформацією, на основі якої вони координують свої дії і
співробітничають один з одним.
Це підіймає важливе питання стосовно сприятливості протоколів та
механізмів зв'язку, які могли б активізувати співробітництво між суміжними
агентами.
На сьогодні існує кілька шляхів обміну інформацією між агентами в
мультиагентних системах Агенти можуть безпосередньо обмінюватись
повідомленнями (прямий зв’язок), вони можуть об'єднуватися в систему на
федеративних умовах і зв'язуватись через спеціальних агентів – помічників
(facilitator), або ж вони можуть передати повідомлення спеціальними
каналами зв’язку.
Інший популярний підхід, який використовується для надання агентам
можливості мати стосунки, це загальнодоступне сховище даних (має назву
“блекбоард”), в яке інформація може бути відіслана і з якої вона може бути
отримана.
1) Прямий зв'язок.
Прямий зв'язок включає прямі фізичні лінії зв'язку з іншими агентами,
використовуючи такі протоколи, як, наприклад, TCP/IP, які забезпечують
безпечне надходження пакетів повідомлень за допомогою здійснення
кінцевого підтвердження. Фізичний зв'язок слід розуміти так, що агенту
необхідно бути обізнаним з іншим агентом в системі. Адреси агентів можуть
бути одержані або як частина отриманих повідомлень від інших агентів, або
від централізованого об'єкту, наприклад, менеджера діалогу, який є
своєрідною довідковою службою, до якої всі агенти приєднуються та
реєструються в системі. Агент відправника може мати доступ до адрес
агентів-одержувачів шляхом звернення до такого централізованого об'єкту.
Реєстрація є подібною процесу запуску довідника з метою ознайомлення з
цим всіх агентів в системі.
Специфікація зв’язку конкретизує, що будь-яка мультиагентна система
повинна мати Довідник Агентів, який містить інформацію про всіх агентів в
конкретному середовищі і полегшує ідентифікацію та доступ до агентів.
Керований механізм зв'язку використовується в більшості існуючих агентних
мовах і платформах. Такий зв'язок є доцільним у ситуаціях, де агент бере
участь в діалозі з іншим агентом, і знає точно, до кого слід надіслати
повідомлення.
2) Федеративні системи.
Коли кількість агентів в системі стає дуже великою (наприклад, як в
Internet), то вартість та існуючі процедури обробки, які мають місце при
прямому зв'язку, стають на заваді. Популярна альтернатива прямому зв'язку,
яка дозволяє подолати зазначені труднощі, - це організувати набір агентів в
об'єднану на федеративних умовах систему.
Наведений нижче рисунок ілюструє структуру такої об'єднаної на
федеративних умовах системи. Як видно з рисунку, агенти безпосередньо не
спілкуються один з одним. Замість цього вони спілкуються через спеціальних
агентів-помічників (facilitator). Набір агентів має в даному випадку
помічника, який є поінформованим про їхні індивідуальні потреби і
здатності. Агенти можуть також надсилати інформацію рівня додатку і
запити до такого помічника та приймати інформацію рівня додатку і запити у
відповідь. Помічники використовують інформацію, що забезпечується цими
агентами, для того, щоб перетворити ці повідомлення рівня додатку і
послати їх до відповідних місць.
По суті, агенти формують "федерацію", в якій вони "віддають" свою
автономію своїм помічникам і такі помічники беруть на себе
відповідальність за здійснення їхніх потреб. Специфікація FIPA визначає
спеціалізованого агента - доменного помічника для кожного домена, чия
функція зводиться до підтримки довідника агентів домену та до поліпшення
зв'язку між агентами в домені.
Об'єднана на федеративних умовах мультиагентна система

3) Трансляційний зв'язок.
У тих ситуаціях, де повідомлення повинно бути передане всім агентам
в оточенні, або агент відправника не знає того, хто буде одержувати
повідомлення (подібно до того, коли він оголошує завдання і необхідно
вибрати з усіх можливих агентів тільки тих, які можуть виконати таке
завдання), мають місце дві альтернативи:
- або він може фізично передавати трансляційне повідомлення до всіх
агентів в системі,
- або він може підтримати індивідуальні зв'язки з усіма агентами в
системі і надіслати кожному з них пряме повідомлення (використовуючи,
наприклад, протокол TCP/IP ).
Коли довжина повідомлення значна і кількість агентів в системі велика,
ширина смуги пропускання в мережі, яка використовується для передачі
повідомлень, повинна бути досить суттєвою.
Підтримка індивідуальних зв'язків мається на увазі в тих випадках,
коли численні копії одного й того ж повідомлення необхідно послати до
кожного агента, що отримує повідомлення.
Трансляція, з другого боку, запобігає перевантажуванню мережі. Вона
допомагає в імплементації повністю автономної, масштабованої та гнучкої
мультиагентної системи, до якої агенти можуть приєднуватись або яку
можуть покидати без інформування будь-кого, при цьому забезпечується
завершення виконання агентами всіх завдань, в яких вони були зайняті, і це
не впливає на дії інших агентів.
Два головні популярні підходи в трансляційному зв'язку - це контрактно-
мережний підхід та підхід з розподілом специфікацій.
У контрактно-мережному підході до взаємодії агенти в разі потреби
розподіляють запити для пропозицій (передані повідомлення) до інших
агентів. Одержувач повідомлень оцінює такі запити і, якщо здатний,
представляє пропозиції ціни (пряме повідомлення) агентам, що ініціювали
запит. Ініціатори використовують ці пропозиції для того, щоб визначитись, з
яким агентом укладати контракт (пряме повідомлення).
В рамках підходу з розподілом специфікацій агенти передають свої
можливості та потреби і інші агенти використовують цю інформацію для
координації власних дій та потреб.
Трансляційний зв'язок через Internet прийнято називати Web-трансляцією.
Основна перевага Web-трансляції полягає в тому, що Internet може бути
використаний для передачі достатньо складних відео, аудіо та інших
мультимедійних сигналів для будь-якої кількості споживачів у
навколишньому середовищі.
4) Блекбоард-системи.
В теорії штучного інтелекту блекбоард - це модель розподіленої
пам'яті, що часто використовується. Фактично це репозитарії, в які агенти
записують повідомлення, надсилають часткові результати та з яких
отримують інформацію. Він зазвичай ділиться на кілька рівнів абстракції
відповідно до суті проблеми, і агенти, що працюють на конкретному рівні,
мають доступ до відповідного рівня блекбоарду разом з сусідніми рівнями. В
такому випадку дані, синтезовані на будь-якому рівні, можуть бути передані
на вищі рівні, з іншого боку цілі вищих рівнів можуть передаватись для
управління агентами нижчого рівня.
3.2. Питання взаємодії агентів в мультиагентних системах
Другим важливим моментом реалізації МАС є взаємодія. В загальному
випадку взаємодія визначається як тип колективної дії, в рамках якої один
агент проявляє дію або приймає рішення, на які впливають наявність або
знання іншого агента. Вона є суто розподіленим поняттям, оскільки
базується на координованій дії агентів-учасників. Оскільки будь-яка дія в
системі зазвичай орієнтована на досягнення цілі, то більшість взаємодій
продиктовані цілями. Це є важливим базовим поняттям в імплементації
мультиагентних систем, оскільки саме процес взаємодії робить можливим
об'єднання власних зусиль кількома розумними агентами.
3.3. Когерентність та координація в мультиагентних системах
Третім важливим елементом, який слід мати на увазі при створенні
MAС, є забезпечення повної когерентності та координації системи.
В загальному випадку різниця між поняттями "когерентність" та
"координація" визначаються так:
- про когерентність говорять тоді, коли мають на увазі те, як "добре"
поводить себе система в цілому, вирішуючи проблему, тобто досліджують
поведінку в цілому;
- що ж стосується координації, то під нею розуміють узгоджену
взаємодію набору агентів, що виконують деяку колективну дію.

16. Зв'язок в мультиагентних системах


Зв'язок дає можливість агентам в мультиагентній системі
обмінюватись інформацією, на основі якої вони координують свої дії і
співробітничають один з одним.
Це підіймає важливе питання стосовно сприятливості протоколів та
механізмів зв'язку, які могли б активізувати співробітництво між суміжними
агентами.
На сьогодні існує кілька шляхів обміну інформацією між агентами в
мультиагентних системах Агенти можуть безпосередньо обмінюватись
повідомленнями (прямий зв’язок), вони можуть об'єднуватися в систему на
федеративних умовах і зв'язуватись через спеціальних агентів – помічників
(facilitator), або ж вони можуть передати повідомлення спеціальними
каналами зв’язку.
Інший популярний підхід, який використовується для надання агентам
можливості мати стосунки, це загальнодоступне сховище даних (має назву
“блекбоард”), в яке інформація може бути відіслана і з якої вона може бути
отримана.
1) Прямий зв'язок.
Прямий зв'язок включає прямі фізичні лінії зв'язку з іншими агентами,
використовуючи такі протоколи, як, наприклад, TCP/IP, які забезпечують
безпечне надходження пакетів повідомлень за допомогою здійснення
кінцевого підтвердження. Фізичний зв'язок слід розуміти так, що агенту
необхідно бути обізнаним з іншим агентом в системі. Адреси агентів можуть
бути одержані або як частина отриманих повідомлень від інших агентів, або
від централізованого об'єкту, наприклад, менеджера діалогу, який є
своєрідною довідковою службою, до якої всі агенти приєднуються та
реєструються в системі. Агент відправника може мати доступ до адрес
агентів-одержувачів шляхом звернення до такого централізованого об'єкту.
Реєстрація є подібною процесу запуску довідника з метою ознайомлення з
цим всіх агентів в системі.
Специфікація зв’язку конкретизує, що будь-яка мультиагентна
система повинна мати Довідник Агентів, який містить інформацію про всіх
агентів в конкретному середовищі і полегшує ідентифікацію та доступ до
агентів. Керований механізм зв'язку використовується в більшості існуючих
агентних мовах і платформах. Такий зв'язок є доцільним у ситуаціях, де агент
бере участь в діалозі з іншим агентом, і знає точно, до кого слід надіслати
повідомлення.
2) Федеративні системи.
Коли кількість агентів в системі стає дуже великою (наприклад, як в
Internet), то вартість та існуючі процедури обробки, які мають місце при
прямому зв'язку, стають на заваді. Популярна альтернатива прямому зв'язку,
яка дозволяє подолати зазначені труднощі, - це організувати набір агентів в
об'єднану на федеративних умовах систему.
Наведений нижче рисунок ілюструє структуру такої об'єднаної на
федеративних умовах системи. Як видно з рисунку, агенти безпосередньо не
спілкуються один з одним. Замість цього вони спілкуються через спеціальних
агентів-помічників (facilitator). Набір агентів має в даному випадку
помічника, який є поінформованим про їхні індивідуальні потреби і
здатності. Агенти можуть також надсилати інформацію рівня додатку і
запити до такого помічника та приймати інформацію рівня додатку і запити у
відповідь. Помічники використовують інформацію, що забезпечується цими
агентами, для того, щоб перетворити ці повідомлення рівня додатку і
послати їх до відповідних місць.
По суті, агенти формують "федерацію", в якій вони "віддають" свою
автономію своїм помічникам і такі помічники беруть на себе
відповідальність за здійснення їхніх потреб. Специфікація FIPA визначає
спеціалізованого агента - доменного помічника для кожного домена, чия
функція зводиться до підтримки довідника агентів домену та до поліпшення
зв'язку між агентами в домені.
Об'єднана на федеративних умовах мультиагентна система
Коли довжина повідомлення значна і кількість агентів в системі велика,
ширина смуги пропускання в мережі, яка використовується для передачі
повідомлень, повинна бути досить суттєвою.
Підтримка індивідуальних зв'язків мається на увазі в тих випадках,
коли численні копії одного й того ж повідомлення необхідно послати до
кожного агента, що отримує повідомлення.
Трансляція, з другого боку, запобігає перевантажуванню мережі. Вона
допомагає в імплементації повністю автономної, масштабованої та гнучкої
мультиагентної системи, до якої агенти можуть приєднуватись або яку
можуть покидати без інформування будь-кого, при цьому забезпечується
завершення виконання агентами всіх завдань, в яких вони були зайняті, і це
не впливає на дії інших агентів.
Два головні популярні підходи в трансляційному зв'язку - це
контрактно-мережний підхід та підхід з розподілом специфікацій.
У контрактно-мережному підході до взаємодії агенти в разі потреби
розподіляють запити для пропозицій (передані повідомлення) до інших
агентів. Одержувач повідомлень оцінює такі запити і, якщо здатний,
представляє пропозиції ціни (пряме повідомлення) агентам, що ініціювали
запит. Ініціатори використовують ці пропозиції для того, щоб визначитись, з
яким агентом укладати контракт (пряме повідомлення).
В рамках підходу з розподілом специфікацій агенти передають свої
можливості та потреби і інші агенти використовують цю інформацію для
координації власних дій та потреб.
4) Блекбоард-системи.
В теорії штучного інтелекту блекбоард - це модель розподіленої
пам'яті, що часто використовується. Фактично це репозитарії, в які агенти
записують повідомлення, надсилають часткові результати та з яких
отримують інформацію. Він зазвичай ділиться на кілька рівнів абстракції
відповідно до суті проблеми, і агенти, що працюють на конкретному рівні,
мають доступ до відповідного рівня блекбоарду разом з сусідніми рівнями. В
такому випадку дані, синтезовані на будь-якому рівні, можуть бути передані
на вищі рівні, з іншого боку цілі вищих рівнів можуть передаватись для
управління агентами нижчого рівня.
3) Трансляційний зв'язок.
У тих ситуаціях, де повідомлення повинно бути передане всім агентам
в оточенні, або агент відправника не знає того, хто буде одержувати
повідомлення (подібно до того, коли він оголошує завдання і необхідно
вибрати з усіх можливих агентів тільки тих, які можуть виконати таке
завдання), мають місце дві альтернативи:
- або він може фізично передавати трансляційне повідомлення до всіх
агентів в системі,
- або він може підтримати індивідуальні зв'язки з усіма агентами в
системі і надіслати кожному з них пряме повідомлення (використовуючи,
наприклад, протокол TCP/IP ).

17. Інструментальне середовище для побудови мультиагентних систем


INGENIAS Development Kit (IDK)
Останнім часом визначений інтерес викликає інструментарій INGENIAS
Development Kit (IDK). Розглянуте середовище є розробкою дослідницької
групи GRASIA з університету Мадрида.
У сукупності IDK являє собою набір інструментальних засобів для опису,
перевірки і реалізації МАС. Дане середовище розробки є функціонально
замкненим та платформо-незалежним. Крос-платформовість забезпечується
за рахунок реалізації мовою Java, а функціональна замкнутість виявляється в
тому, що середовище дозволяє здійснювати повний цикл проектування МАС
– від візуального опису до фінального моделювання.
Даним інструментарієм можуть користуватися як програмісти-
початківці, яким потрібно описати свою МАС і сформувати для неї код, так і
досвідчені розробники, що бажають доповнити функціонал IDK за рахунок
власних модулів.
У складі IDK передбачені наступні модулі:
– HTML модуль дозволяє побудувати набір HTML файлів на основі опису
мультиагентної системи;
– JADE модуль перетворить опис МАС у код, що виконується, на
платформі JADE. На виході даного модуля розроблювач одержує набір
агентів, поводження кожного з яких описано в метамоделі агента, а
взаємодія між ними описана в метамоделі взаємодії;
– JADE Leap модуль є модифікацією JADE-модуля і дозволяє адаптувати
розроблену МАС на платформу JADE Leap для наступного використання в
мобільних пристроях;
– модуль верифікації коду перевіряє опис МАС на наявність
недовизначених сутностей і вказує місце розташування помилок.
Моделювання МАС здійснюється при використанні Ant Apache XML
Parser, що завантажує JADE-контейнер і запускає на ньому зазначену МАС.
IDK підтримує два види візуального опису: мову AUML і методологію
INGENIAS. AUML являє собою розширення мови UML, спеціалізоване для
опису АОС. Методологія INGENIAS ґрунтується на визначенні набору
метамоделей, що описують поводження кожного агента, взаємодію між
агентами, організацію МАС, оточення, цілі і задачі, визначені для кожного
агента. Представлення МАС, складене в контексті метамоделі,
відображається на однеіменній діаграмі.
Методологія передбачає побудову наступних метамоделей:
– організаційної метамоделі, що описує архітектуру МАС і її функції.
Функції визначаються в момент завдання цілей організації і порядку їхнього
виконання;
– метамоделі оточення, що описує сутності, що впливають на сприйняття
агентів;
– метамоделі цілей/задач, що описує зміни станів агента у часі в
залежності від виконання конкретних задач, шляху досягнення цілей і дії,
починаються у випадку, якщо ціль не може бути досягнута;
– метамоделі агента, що описує поводження кожного агента;
– метамоделі взаємодії, що описує поводження двох і більш взаємодіючих
агентів. У залежності від мови опису вона може бути представлена у вигляді
UML-діаграми кооперації, чи AUML-діаграми GRASIA-діаграми взаємодії.
Отриманий у вигляді метамоделей опис МАС може оброблятися
відповідними модулями.
Поводження агентів визначається їхніми цілями і задачами, а також
взаємодіями між ними. Цілі у свою чергу можуть розбиватися на більш
прості підцілі, які можуть досягатися визначеними планами,
послідовностями задач. В методології INGENIAS будь-яка взаємодія може
мати одного ініціатора й одного чи кількох учасників. Потік повідомлень у
МАС може бути описаний діаграмою Grasia чи іншими діаграмами взаємодії,
такими як UML, Agent UML. У INGENIAS будь-яка взаємодія починається з
задачі. Сукупність задач і взаємодій визначає глобальне поводження системи.
На основі всього опису системи відбувається генерація коду. Отриманий
опис може бути використаний для створення програмного коду МАС під
конкретну платформу.

18. Інструментальне середовище для побудови мультиагентних систем


JADE (Java Agent Development Framework)
Найбільш популярні засоби розробки MAC такі:
• JADE (Java Agent Development Framework) – широко використовуване
програмне середовище для створення мультиагентних систем і додатків, що
підтримує FIPA – стандарти для інтелектуальних агентів. Включає в себе
середовище виконання агентів (агенти реєструються і працюють під
управлінням середовища), бібліотеку класів, які використовуються для
розробки агентних систем, набір графічних утиліт для адміністрування і
спостереження за життєдіяльністю активних агентів. Програмне середовище
JADE підключається до будь-якого проекту на мові Java. Агенти JADE
можуть бути абсолютно різними – від простих, що тільки реагують, до
складних – ментальних.
Досить широке застосування в Росії, особливо в академічних та навчальних
цілях, отримала платформа мультиагентного програмування JADE (Java
Agent Development Framework), цілком реалізована мовою Java. Проект
розробляється компанією Telecom Italia з 2000 року, є вільно
розповсюджуваним програмним забезпеченням (ПЗ) по ліцензії LGPL
(Lesser General Public License Version 2). Розроблювачі повідомляють, що з
цього сайту здійснюється більше 100 завантажень архіву пакета JADE
щодня.
JADE пропонує програмісту - розроблювачу агентних систем наступні
інструментальні засоби:
– FIPA-compliant Agent Platform – агентну платформу, що базується на
рекомендаціях FIPA і включає обов'язкові типи системних агентів: керування
агентною платформою (AMS – Agent Management Service), каналу
комунікації (ACC – Agent Communication Channel) і служби каталогів (DF –
Directory Facilitator). Ці три типи агентів автоматично активуються при
запуску платформи;
– Distributed Agent Platform – розподілену агентну платформу, що може
використовувати кілька комп'ютерів (вузлів), причому на кожнім вузлі
запускається тільки одна віртуальна машина (Java Virtual Machine). Агенти
виконуються як Java-потоки. Для доставки повідомлень між агентами, в
залежності від їх місцезнаходження, використовується відповідний
транспортний механізм – Multiple Domains support – ряд заснованих на FIPA-
специфікаціях DF-агентів, що можуть об’єднуватися у федерацію,
реалізуючи мультидоменне агентне середовище;
– Multithreaded execution environment with two-level scheduling –
багатопотокове середовище виконання з дворівневим плануванням. Кожен
JADE-агент має власний потік керування, але також здатний працювати в
багатопотоковому режимі;
– Library of interaction protocols – бібліотеку протоколів взаємодії з
використанням стандартних інтерактивних протоколів fipa-request і fipa-
contract-net. Для створення агента, що функціонує згідно з даними
протоколами, розроблювачу необхідно реалізувати тільки специфічні
доменні дії, уся незалежна від прикладної програми протокольна логіка буде
здійснюватися системою JADE;
– Administration GUI – графічний інтерфейс адміністратора, що
забезпечує прості операції керування платформою та відображає активних
агентів та контейнери агентів. Використовуючи GUI, адміністратори
платформи можуть створювати, знищувати, переривати і відновляти дії
агентів, створювати ієрархії доменів і мультиагентні федерації DF.
JADE написана мовою програмування Java з використанням Java RMI,
Java CORBA IDL, Java Serialization і Java Reflection API. Вона спрощує
розробку мультиагентних систем завдяки використанню FIPA-специфікацій
та інструментів, що підтримують фази налагодження і розгортання системи.
Агентна платформа може встановлюватися на комп'ютерах з різними
операційними системами та конфігуруватися через віддалений GUI-
інтерфейс навіть під час виконання агентів. Комунікаційна архітектура
пропонує гнучкий і ефективний процес обміну повідомленнями, де JADE
створює чергу і керує потоком ACL-повідомлень, які є приватними для
кожного агента.
Агенти здатні звертатися до черги за допомогою комбінації декількох
режимів роботи: блокування, голосування, перерви в роботі та зіставлення з
еталоном. На даний момент у системі використовується Java RMI, event-
notification і IIOP, але
можна додати й інші протоколи. Також передбачена можливість інтеграції
SMTP, HTTP і WAP. Більшість комунікаційних протоколів, що вже визначені
міжнародним співтовариством розроблювачів АОС, доступні і можуть
використовуватися після визначення поводження системи і її основних
станів. Онтологія керування агентами реалізована з підтримкою визначених
користувачем контентних мов. З метою істотного розширення працездатності
JADE передбачена можливість інтеграції з JESS (середовищем виконання
додатків, заснованих на правилах) і Java-оболонкою CLIPS.
З травня 2003 року працює група JADE Board, що керує даним проектом
та включає такі компанії як Telecom Italia, Motorola, Whitestein Technologies
AG, Profactor Gmb, France Telecom R&D.
Для платформи JADE розроблене середовище JADEX, що являє собою
BDI розширення мультиагентної платформи. Проект виконується Distributed
Systems and Information Systems Group Гамбурзького університету. Це
середовище передбачає гібридну реактивно-деліберативну архітектуру, у якій
агент розгляджається як «чорна шухляда», що приймає і відправляє
повідомлення. Ґрунтуючись на результатах обробки повідомлень, внутрішніх
і зовнішніх подій, деліберативний механізм приймає рішення про перехід до
нового плану дій чи продовження старого. Діючий план може посилати
повідомлення іншим агентам, змінювати базу переконань, формувати нові
цілі і викликати внутрішні події. Система використовує бібліотеку планів, що
обробляються як Java-класи.

19. Інструментальне середовище для побудови мультиагентних систем


JASON
Удосконалювання інструментальних засобів АОП виявляється в тому, що
вони стають здатними практично реалізувати строгі теоретичні моделі МАС,
особливо архітектуру BDI. У цьому сенсі яскравим прикладом є
інструментальний пакет JASON, що є реалізацією відомої мови опису МАС
AgentSpeak(L).
JASON є першим повним інтерпретатором мови AgentSpeak(L), що
включає можливості міжагентної комунікації на основі теорії мовних актів.
Даний інтерпретатор забезпечує такі можливості, як
– сильне заперечення, що допускає розгляд як замкнутих, так і відкритих
моделей світу;
– обробка помилок у планах, виконуваних агентами;
– посилання на мітки плану, що можуть використовувати складні
вирішальні функції;
– підтримка середовищ розробки, що не реалізують спочатку
AgentSpeak(L) через програмування мовою Java;
– запуск МАС розподілених у локальній мережі;
– використання функцій вибору, що набудовуються, функцій довіри,
ревізії
переконань, міжагентної комунікації і дій;
– використання бібліотек внутрішніх дій, визначених користувачем
мовою Java.
За твердженням розроблювачів у системі JASON реалізована операційна
семантика, формально визначена для мови AgentSpeak(L).
Дана мова визначає агента через специфікацію множини базових
переконань і планів. Атомарне переконання є звичайним предикатом
першого порядку. Атомарні переконання чи їхні заперечення позначаються
відповідними літералами. Початкова множина переконань є набором базових
атомарних переконань.
У мові AgentSpeak(L) визначаються два типи цілей: досяжні цілі і тестові
цілі. Досяжна мета встановлюється тоді, коли агент прагне досягти
визначеного стану світу, у якому зв'язаний предикат є дійсним. Практично
для цього ініціюється виконання вкладених планів.
Тестова мета повертає уніфікацію для зв'язаного предиката з одним з
переконань агента, у випадку невдачі така ціль відкидається.
Перемикаюча подія може ініціювати виконання деякого плану. Подія
може бути внутрішньою, коли досягнута визначена підціль, чи зовнішньою,
породжувану у результаті модифікації переконань після сприйняття стану
зовнішнього середовища. Плани використовують базові дії, що агент здатний
виконувати в середовищі. Дії також визначаються як предикати першого
порядку, але позначаються спеціальними символами.
План утвориться перемикаючою подією, за якою випливає кон’юнкція
літералів, що утворять контекст. Контекст повинний бути послідовністю
таких поточних переконань агента, для яких даний план може бути
застосованим. Залишкова частина плану є послідовністю базових дій і цілей,
що агент досягає (чи перевіряє), коли план обраний для виконання.
Програми агентів інтерпретуються циклічно. У кожному циклі
оновлюється список подій, породжуваних або перцепцією із зовнішнього
середовища, або виконанням підцілей, визначених у тілі плану. Далі
інтерпретатор уніфікує обрану подію з перемикаючими подіями в заголовках
планів, визначаючи, таким чином, множину релевантних планів.
Перевіряючи вміст контексту цих планів, інтерпретатор визначає множину
застосовних планів і вибирає один прийнятний план з цієї множини. Коли
усі формули в тілі плану виявляються виконаними, то ціль вважається
досягнутою і план також видаляється з черги планів. Цикл роботи
інтерпретатора повторюється.
На сьогодні з використанням AgentSpeak(L) пов’язане невелике число
діючих додатків, серед яких у літературі згадуються програми моделювання
росту міст і керування складським роботом у середовищі віртуальної
реальності.
Реалізація інтерпретатора JASON виглядає продуманою і дуже
елегантною, що дозволяє припустити більш широке його використання як у
дослідницьких, так і прикладних проектах.
Незважаючи на значну кількість інструментальних засобів розробки
МАС, проблема створення інструментарію, що поєднує теоретично
обґрунтовану методологію проектування й ефективну реалізацію в
об’єктно- орієнтованому середовищі, як і раніше повною мірою не вирішена.

20. Інструментальне середовище для побудови мультиагентних систем


MadKit
Останнім часом визначений інтерес викликає інструментарій INGENIAS
Development Kit (IDK). Розглянуте середовище є розробкою дослідницької
групи GRASIA з університету Мадрида.
У сукупності IDK являє собою набір інструментальних засобів для опису,
перевірки і реалізації МАС. Дане середовище розробки є функціонально
замкненим та платформо-незалежним. Крос-платформовість забезпечується
за рахунок реалізації мовою Java, а функціональна замкнутість виявляється в
тому, що середовище дозволяє здійснювати повний цикл проектування МАС
– від візуального опису до фінального моделювання.
Даним інструментарієм можуть користуватися як програмісти-
початківці, яким потрібно описати свою МАС і сформувати для неї код, так і
досвідчені розробники, що бажають доповнити функціонал IDK за рахунок
власних модулів.
У складі IDK передбачені наступні модулі:
– HTML модуль дозволяє побудувати набір HTML файлів на основі опису
мультиагентної системи;
– JADE модуль перетворить опис МАС у код, що виконується, на
платформі JADE. На виході даного модуля розроблювач одержує набір
агентів, поводження кожного з яких описано в метамоделі агента, а
взаємодія між ними описана в метамоделі взаємодії;
– JADE Leap модуль є модифікацією JADE-модуля і дозволяє адаптувати
розроблену МАС на платформу JADE Leap для наступного використання в
мобільних пристроях;
– модуль верифікації коду перевіряє опис МАС на наявність
недовизначених сутностей і вказує місце розташування помилок.
Моделювання МАС здійснюється при використанні Ant Apache XML
Parser, що завантажує JADE-контейнер і запускає на ньому зазначену МАС.
IDK підтримує два види візуального опису: мову AUML і методологію
INGENIAS. AUML являє собою розширення мови UML, спеціалізоване для
опису АОС. Методологія INGENIAS ґрунтується на визначенні набору
метамоделей, що описують поводження кожного агента, взаємодію між
агентами, організацію МАС, оточення, цілі і задачі, визначені для кожного
агента. Представлення МАС, складене в контексті метамоделі,
відображається на однеіменній діаграмі.
Методологія передбачає побудову наступних метамоделей:
– організаційної метамоделі, що описує архітектуру МАС і її функції.
Функції визначаються в момент завдання цілей організації і порядку їхнього
виконання;
– метамоделі оточення, що описує сутності, що впливають на сприйняття
агентів;
– метамоделі цілей/задач, що описує зміни станів агента у часі в
залежності від виконання конкретних задач, шляху досягнення цілей і дії,
починаються у випадку, якщо ціль не може бути досягнута;
– метамоделі агента, що описує поводження кожного агента;
– метамоделі взаємодії, що описує поводження двох і більш взаємодіючих
агентів. У залежності від мови опису вона може бути представлена у вигляді
UML-діаграми кооперації, чи AUML-діаграми GRASIA-діаграми взаємодії.
Отриманий у вигляді метамоделей опис МАС може оброблятися
відповідними модулями.
Поводження агентів визначається їхніми цілями і задачами, а також
взаємодіями між ними. Цілі у свою чергу можуть розбиватися на більш
прості підцілі, які можуть досягатися визначеними планами,
послідовностями задач. В методології INGENIAS будь-яка взаємодія може
мати одного ініціатора й одного чи кількох учасників. Потік повідомлень у
МАС може бути описаний діаграмою Grasia чи іншими діаграмами взаємодії,
такими як UML, Agent UML. У INGENIAS будь-яка взаємодія починається з
задачі. Сукупність задач і взаємодій визначає глобальне поводження системи.
На основі всього опису системи відбувається генерація коду. Отриманий
опис може бути використаний для створення програмного коду МАС під
конкретну платформу.

21. Інструментальний програмний комплекс для побудови


мультиагентних систем AgentTool
agentTool III (або aT3) — це проект лабораторії Multiagent & Cooperative
Robotics ( MACR ) Університету штату Канзас. agentTool — це графічне
середовище розробки на основі Java, яке допомагає користувачам
аналізувати, проектувати та впроваджувати мультиагентні системи. Він
розроблений для підтримки нової методології Multiagent Systems Engineering
( O-MaSE ), заснованої на організації. Системний дизайнер графічно визначає
поведінку системи високого рівня, використовуючи гнучку методологію O-
MaSE.

Початкова версія aT3 була опублікована восени 2007 року як версія 1.0.5. aT3
— це плагін Eclipse , який надасть розробнику системи агентів
безпрецедентну гнучкість, але при цьому збереже можливості перевірки, які
були надані раніше. Зрештою, aT3 надасть прогнозні показники
продуктивності, щоб дозволити дизайнеру зробити розумні компроміси та
генеруватиме код для різних мультиагентних платформ.
1. Запуск програмного пакету agentTool
Програмний пакет agentTool дозволяє створити модель взаємодії агентів
для мультиагентної системи шляхом проектування ряду діаграм: цілей,
варіантів використання, послідовності, ролей, компонентів, станів та
розгортання. Після створення відповідної моделі програмний пакет agentTool
дозволяє згенерувати шаблон коду. Робота із програмними агентами дуже
схожа на моделювання системи в нотації UML, практично повністю
повторюючи її логіку.
На рис. 1 наведено командну послідовність для запуску пакету.
Рис. 1. Командна послідовність для запуску пакету agentTool
Agenttool –це графічний редактор для проектування мультиагентних
систем. Він підтримує реалізацію основних етапів проектування МАС:
створення агентів, зв'язків між ними, визначення цілей
ISSN2415-3486. Вісник машинобудування та транспорту No1(13), 2021 89і завдань
агентів. Тобто створюються агенти і їх архітектура, а також детально
описуються взаємозв'язки між ними. Для заданої в такий спосіб системи
конструктор генерує код агентної системи.
Розробка Agenttool базується на методах програмного моделювання, які
дозволяють описувати деякі аспекти, використовуючи абстрактні моделі.
Головна сутність такого підходу в тому, що розроблювач може
сконцентрувати увага на більш важливих речах, опускаючи деякі деталі.
Наприклад, при розробці мультиагентної системи необхідно враховувати
взаємодію агентів через мережу. Це може бути реалізовано за допомогою
певних методів, що знизить кількість помилок на даному рівні й дозволить
зосередиться на описі структури агентів.Незручність такого підходу –
необхідність мати «правильні» моделі й методи підсистем. Були
розроблені різні підходи до подолання цієї проблеми, але вона однаково
залишається відкритою й над її розв'язанням ведеться робота.

22. Когерентність та координація в мультиагентних системах


Третім важливим елементом, який слід мати на увазі при створенні
MAС, є забезпечення повної когерентності та координації системи.
В загальному випадку різниця між поняттями "когерентність" та
"координація" визначаються так:
- про когерентність говорять тоді, коли мають на увазі те, як "добре"
поводить себе система в цілому, вирішуючи проблему, тобто досліджують
поведінку в цілому;
- що ж стосується координації, то під нею розуміють узгоджену
взаємодію набору агентів, що виконують деяку колективну дію.
Без координації переваги від децентралізованого вирішення проблеми
зникають і спільноти агентів можуть швидко перейти в набір хаотичних
несумісних індивідів. Обидва ці терміни пов'язані, оскільки більша
координація в результаті приводить до більш когерентного вирішення
проблеми в цілому.
До числа трьох головних причин, що викликають потребу в
координації дій в мультиагентних системах, слід віднести:
1) існують залежності між діями агентів, які можуть відбутися тоді, коли
індивідуальні цілі агентів взаємопов'язані;
2) є потреба в подоланні глобальних обмежень. Вони існують тоді, коли
рішення, яке розробляється системою, повинно задовольняти конкретним
умовам, щоб вважатися успішним;
3) окремий агент не має достатньої компетентності, ресурсів, або інформації,
щоб вирішити проблему в цілому. Багато проблем не можуть бути вирішені
агентами, які працюють в ізоляції, через те, що вони не володіють
необхідним "досвідом", ресурсами або інформацією.
Навіть коли окремі агенти можуть працювати незалежно, і при цьому
здається, що координація не є істотною, інформація, яка відкривається одним
агентом, може бути достатньо корисною для іншого, в результаті чого два
агенти можуть вирішити проблему удвічі швидше (наприклад, пошуки
втраченого об'єкта у великій області).

23. Кооперація агентів в мультиагентних системах


Кооперація між агентами означає їхню колективну роботу в інтересах
одержання спільних результатів.
Саме кооперація приводить до синергетичних ефектів при об'єднанні
окремих агентів у МАС.
По суті, це основна форма соціального поводження та організації
взаємодії між агентами, що характеризується об'єднанням їхніх зусиль для
досягнення спільної мети при одночасному поділі між ними функцій і
обов'язків.
Тому в теорії агентів поняття загальної мети, на виконання якої
спрямовані дії агентів, відіграє провідну роль.
Формування спільної мети можливо в двох різних випадках:
• цілі окремих агентів близькі чи практично збігаються,
• ціль, зформована одним агентом, цілком приймається іншими агентами.
У загальному випадку поняття кооперації можна визначити формулою:
кооперація = співробітництво + координація дій + вирішення
конфліктів.
Головні переваги від кооперації агентів такі:
1. Можливість спільного вирішення задачі, яку не можна вирішити поодинці
2. Підвищення ефективності і продуктивності кожного агента.
3. Збільшення якості загального рішення за рахунок росту числа і більш
детального пророблення приватних рішень, обміну інформацією між
агентами.
4. Збільшення імовірності того, що рішення буде знайдено, завдяки
об'єднанню різних точок зору, і ін.
Кооперацію агентів можна вивчати подвійно:
а) ззовні з позиції зовнішнього спостерігача;
б) зсередини МАС як форму поводження агентів, що вирішили працювати
спільно.
Основними критеріями кооперації можуть служити:
− час колективного вирішення задачі (наскільки він менший у
порівнянні з часом індивідуального рішення);
− ефективність розподілу задач між агентами;
− успішність об'єднання різних точок зору.
Докладно про рівень кооперації агентів у МАС можна судити на основі
наступних показників:
1) ступінь розподілу обов'язків, відповідальності і ресурсів (у тому числі,
знань);
2) рівень координації дій, включаючи узгодження напрямку дій агентів у
просторі і в часі;
3) ступінь запаралелювання (сполучення) задач, що розв'язуються різними
агентами;
4) ненадмірність дій, досить мале число дублюючих одна одну дій;
5) виключення (чи мала тривалість) конфліктів;
6) живучість, що розуміється як здатність МАС пережити відмовлення чи
втрату агента.
Ці показники взаємно суперечливі:
- розподіл ресурсів неминуче породжує конфлікти, а ненадмірність дій
вступає в протиріччя з вимогою запаралелювання задач.
В свою чергу прикладами типових обмежень на кооперацию агентів
служать:
- їхня віддаленість один від одного;
- недостатньо інтенсивна комунікація, істотні розходження в рівнях
автономії агентів;
- сильна взаємозалежність розв'язуваних задач (наприклад, коли один
агент не може почати свою задачу без іншого).
В іншому випадку, коли кооперація як спільна діяльність ототожнюється з
формою навмисного поводження, базову формулу можна записати у такому
вигляді:
кооперація = загальна ціль + зобов'язання агентів.
Прикладами використання подібної форми можуть служити статути
різних асоціацій і об'єднань, члени яких приймають загальну мету і беруть на
себе зобов'язання спільно брати участь у деякій роботі.
Очевидно, що кооперація залежить не тільки від установки, наміру
співробітничати, але і від поводження, а головне, від результатів спільної
діяльності.
У контексті ефективності кооперації важливими є питання розподілу задач
між агентами та узгодження їхніх дій. Можна виділити три типових способи
централізованого розподілу задач:
1) командне керування чи система “пан-раб” (master-slave), коли агент-
менеджер самостійно розподіляє всі задачі між заздалегідь визначеними
агентами-виконавцями і контролює їхнє виконання;
2) розподіл за принципом торгів (чи “оголошення конкурсу”), коли агент-
менеджер поширює оголошення про загальне завдання, а потенційні агенти-
виконавці пропонують свої послуги, тобто виконавці заздалегідь не
визначені, а відбираються в результаті конкурсу; однак і розподіл окремих
задач, і контроль залишаються рерогативою менеджера;
3) розподіл шляхом змагання, коли агенти-виконавці дають свої
пропозиції вже на рівні окремих задач, тобто відбувається підбір виконавця
під конкретну задачу, а роль менеджера зводиться до контролю і координації
їхніх дій.
1) Форми кооперації агентів
З різними типами агентів і МАС зв'язані різні рівні і форми кооперації.
Насамперед, варто виділити
- навмисну кооперацію, характерну для когнітивних, інтенціональних
агентів, і
- ненавмисну, спонтанну кооперацію, властиву реактивним агентам.
У випадку директивної кооперації колектив агентів утвориться на
примусових засадах. В деякому сенсі антиподом директивної є ситуативна
кооперація, що виникає на базі позитивних відносин, які формуються між
когнітивними агентами.
Нарешті, контрактні форми кооперації припускають об'єднання
індивідуальних інтересів агентів на основі формальних чи неформальних
угод між ними.
2) Передумови і умови кооперації
Необхідними передумовами й умовами кооперації агентів виступають:
а) мотивація до об'єднання індивідуальних зусиль;
б) географічне зближення, об'єднання і розмноження агентів;
в) комунікація;
г) співробітництво і координація дій;
д) спеціалізація;
е) переговори між агентами.
Ведення переговорів, спрямованих на досягнення взаємовигідних
угод між агентами, є основною передумовою для виникнення кооперації.
При цьому звичайно передбачається, що правила ведення переговорів
установлені заздалегідь і відомі всім агентам. Для реалізації переговорів
необхідний спеціальний протокол, до якого пред'являються наступні вимоги:
а) простота;
б) децентралізація (переговори здійснюються прямо, без
централізованого керування);
в) симетричність (всі агенти є рівноправними учасниками переговорів);
г) стійкість (протоколи переговорів не повинні дозволяти агентам, що
відхилилися від установлених правил ведення переговорів, отримувати
додаткову користь);
д) ефективність (як стосовно окремих агентів, так і стосовно їх
коаліцій).
Побудова протоколу ведення переговорів включає три кроки:
а) визначення простору можливих угод;
б) введення правил взаємодії (наприклад, на основі теорії мовних актів
у термінах “пропозиція— контрпропозиція”;
в) завдання оптимальних стратегій агентів.
3) Продуктивна роль конфліктів при кооперації агентів
У соціальних взаємодіях конфлікти часто виступають як невід'ємні
атрибути кооперації агентів. Вони одночасно можуть бути як причинами, так
і наслідками кооперації агентів.
Під конфліктом у МАС слід розуміти прояв об'єктивних чи
суб'єктивних протиріч, що виражаються в протиборстві агентів.
У конфліктній ситуації відбуваються зіткнення цілей, інтересів, думок,
дій агентів.
Таким чином, конфліктна ситуація включає деяку підмножину безлічі
агентів, а також предмет конфлікту між ними.
Існують різні причини і джерела конфліктів.
Частіше усього, у МАС виникає конфлікт цілей чи конфлікт
переконань агентів.
Однак, конфлікти можуть зароджуватися навіть тоді, коли цілі агентів
сумісні, і вони заздалегідь вирішили співробітничати. У цих випадках,
конфлікти звичайно відбуваються через брак ресурсів. Саме обмеження на
ресурси можуть породжувати взаємно виключні, несумісні цілі і цінності.
Так формується “замкнене коло” конфлікту.
Підставами для класифікації конфліктів у МАС виступають:
- цілі агентів, відповідність їхніх дій існуючим нормам,
- кінцевий результат конфлікту і
- його вплив на розвиток МАС.
Відповідно до першої з двох ознак розрізняються конфронтація і
змагання агентів.
Конфронтація агентів припускає тотальний конфлікт із
протилежними цілями і невизнанням існуючих норм відносин.
Під змаганням слід розуміти обмежений конфлікт агентів відповідно
до заздалегідь визначених правил.
За останньою ознакою виділяються
- стабілізуючі,
- конструктивні і
- деструктивні конфлікти.
Стабілізуючі конфлікти спрямовані на усунення відхилень від норми,
а деструктивні, навпаки, руйнують старі норми, поглиблюють протиріччя.
Конструктивні (чи продуктивні) конфлікти між агентами,
породжуючи нові норми взаємин, сприяють адаптації МАС у нових умовах
середовища за рахунок функціонально-структурної перебудови і
установлення нових зв'язків між агентами.
У гнучких соціальних системах конфлікт можна уподібнити корисному
сигналу, що запобігає стагнації. Його розкриття і вирішення стимулює
нормальний розвиток. Навпаки, у жорстких системах, для яких типові
стратегії замовчування конфліктів чи їхнього усунення за будь-яку ціну,
виникають різні аномалії, що збільшують небезпеку катастрофічних змін.
В синергетичному тлумаченні, конфлікти переносять соціальну
систему в область невизначеності, нестійкості, підвищеної чутливості до
змін, де виникають різні біфуркації. Тому вони виступають як двигуни
спонтанних соціальних перетворень.
До числа основних функцій конфліктів у МАС відносяться
- зміна структури взаємин,
- прояснення цілей і збільшення згуртованості групи агентів,
- становлення балансу інтересів агентів,
- виявлення порушень нормального функціонування МАС.
Вони допомагають виявити недоліки старих норм і ведуть до
породження нових норм. Це дуже важливо для еволюції соціальної системи
при збереженні її цілісності: виживання в постійно мінливих умовах
вимагає регулярної переоцінки цілей і перегляду переконань.
Отже, соціальний конфлікт у МАС чи в штучній організації, у першу
чергу, виступає як механізм установлення гнучких норм взаємин між
агентами, більш адекватних новим умовам. Завдяки конфліктам,
співтовариство агентів стає більш життєздатним, оскільки створення і
модифікація соціальних норм забезпечує його стійкість в умовах, що
змінюються.
4) Моделі кооперації агентів
Класичними методами дослідження кооперації і переговорних процесів
є методи теорії корисності і теорії ігор, зокрема, відомі моделі та умови
оптимальності, виражені у виді принципів рівноваги.
Рівновага за Парето — це ситуація рівноваги, при якій поліпшення
положення одного агента неможливо без погіршення стану іншого.
Принцип Парето застосовується для сильно централізованих систем,
підсистеми яких мають широкі можливості обміну інформацією про
рішення, що приймаються, а рівновага за Нешем характеризує
децентралізовані системи.
Ці типи оптимальності мають різні “ідейні підстави”: основою оптимальності
за Нешем є стійкість МАС, обумовлена інтересами і можливостями окремих
агентів, тоді як принцип оптимальності за Парето спирається на ідею
корисності, вигоди для МАС у цілому, що розуміється як вигода відразу для
всіх її агентів.
З урахуванням вищенаведених вимог до розробки протоколів у МАС
більше застосування знаходить арбітражна схема Неша чи математично
еквівалентна їй модель Зейтена. Однак, ці схеми прийнятны далеко не
завжди (наприклад, рівновага за Нешем не є вичерпним рішенням для
некооперативних ігор). Більше того, існують принципові труднощі
використання класичної теорії ігор у МАС.
Стандартні моделі теорії ігор статичні в тому сенсі, що вони зосереджені
на результатах переговорів, а не на процесі переговорів як такому.
У них також передбачається, що агент (гравець) володіє повною
інформацією про свої власні переваги і функцію корисності, а також про
імовірності, позв'язані з різними можливими результатами. Але в МАС
інтелектуальний агент практично ніколи не має точну інформацію про
переваги інших агентів. Приймаючи рішення, він повинний прогнозувати дії
інших агентів, вибір, яких, у свою чергу, залежить від його власних дій. Це
веде до появи ефекту “обмеженого прогнозування”, коли неможливо зробити
точний прогноз чи визначити чітку стратегію індивідуального вибору.
Для того щоб обійти цей ефект обмеженого прогнозування, у традиційних
моделях теорії ігор накладають наступні обмеження:
1) передбачається, що і кількість агентів, і їх індивідуальні характеристики
зафіксовані і відомі всім агентам;
2) також передбачається, що всі агенти розумні і кожен агент, знає, що всі
інші агенти розумні (аксіома загального знання); відповідно, набір
альтернатив для кожного гравця зафіксований і відомий;
3) нарешті, висувається допущення, що тип поводження кожного агента
(зокрема, його схильність до ризику) також зафіксований і відомий всім
агентам.
Усі ці припущення істотно обмежують сферу застосування традиційної теорії
ігор для формалізації взаємодій агентів. Так, дослідники в області РШІ
надають особливого значення побудові протоколів взаємодії, що пояснює
компроміси між агентами. При цьому структуру взаємодії можна
представити як приклад послідовного прийняття рішень.
Основні характеристики моделі послідовного прийняття рішень у МАС
такі:
• існує послідовність точок ухвалення рішення агентами, що залежать
один від одного;
• у особи , що приймає рішення, є можливість, установивши зворотний
зв'язок за результатами рішення, обновити свої знання для того, щоб на
наступній стадії приймати рішення з більшою інформацією.

24. Критерії і ситуації взаємодії агентів в мультиагентних системах


Ключовими парами критеріїв, що характеризують процес взаємодії агентів, є
- “активність — пасивність” агентів,
- “власні цілі агента — цілі інших агентів”,
- “індивідуальні дії — спільні дії”.
Активні дії агента приводять до відносин співробітництва чи
конкуренції.
Перші виникають, коли агент здатний до вироблення загальної
(спільної) мети з іншим агентом і надає перевагу спільним діям в порівнянні
з індивідуальними.
У противному випадку виникають відносини конкуренції (конфлікту)
між агентами.
Коли агент орієнтований лише на свої інтереси і не бажає компромісів,
він керується принципом конкурентної раціональності, і конфлікт
виливається в конфронтацію між агентами, що триває до повної перемоги
одного з них.
Навпаки, коли агент здатний брати до уваги цілі іншого агента, цілком
природним стає прийняття ними компромісної стратегії, коли формується
загальна мета, що дозволяє частково задовольнити інтереси обох агентів.
До пасивних варіантів поводження агента, спрямованих на вихід з
конфлікту, відносяться конформізм і пристосування.
Тут агент прагне адаптуватися до впливів з боку іншого агента, цілком
відмовляючись від своїх цілей і приймаючи вимоги іншого агента.
Стратегія солідарності характеризує “пасивне сприяння”, коли спільні
дії не зв'язані з власною активністю агента і не спрямовані на формування
загальних цілей.
Нарешті, стратегія відхилення припускає повне зречення від взаємодії.
Допустимо, що є пара агентів, цілі яких не збігаються, але вони ведуть
переговори і можуть укладати угоди, приймаючи на себе взаємні
зобов'язання.
Тоді в залежності від властивостей переговорної множини різні
ситуації взаємодії можна підрозділити на наступні основні типи:
- симетрична кооперативна ситуація,
- симетрична компромісна ситуація,
- асиметрична кооперативно-компромісна ситуація,
- конфліктна ситуація.
У симетричній кооперативній ситуації в переговорній множині існує
підмножина взаємовигідних угод. Тут кожному агенту легше досягти
індивідуальних цілей при взаємодії з партнером, чим поодинці. Тому вони
прагнуть співробітничати один з одним.
Навпаки, у симетричній компромісній ситуації агентам доцільніше
працювати поодинці, і вони прагнуть ухилитися від взаємодії. Однак, в силу
обставин (найчастіше, за наявності спільно використовуваних ресурсів) їм
приходиться співіснувати, причому вироблення компромісних угод, що
визначають принципи співіснування, вигідне обом агентам.
У третьому випадку виникає елемент асиметрії: один агент розцінює
взаємодію як співробітництво, а інший — як компроміс.
Нарешті, конфліктна ситуація виникає тоді, коли переговорна
множина є порожньою: угоди між агентами неможливі.

25. Методика низхідного проектування МАС


Будемо розглядати середовище низхідного (спадного) проектування в
координатах “ступінь невизначеності — ступінь динаміки — ступінь
складності”. Тоді проблема синтезу організаційних структур може
інтерпретуватися як динамічна багатокритеріальна задача при наявності
нечіткої інформації.
Методика організаційного синтезу МАС і віртуальних організацій
включає наступні кроки:
1) формулювання задачі організаційного синтезу і вибір вирішального
правила;
2) формування множини експертів N;
3) формування сімейства організаційних критеріїв С;
4) побудова полярних (опозиційних) шкал для обраних критеріїв;
5) визначення припустимих типів оцінок на шкалах;
6) виділення “ідеальних організаційних типів”, що відповідають
екстремальним принципам (бінарним оцінкам) і їхнє представлення у вигляді
графів;
7) представлення лінгвістичних експертних оцінок по шкалах у вигляді
поверхонь у просторі критеріїв;
8) співвіднесення реальних оцінок з ідеальними організаційними типами
за ознакою мінімізації відстані до ідеальної точки в просторі критеріїв
(вирішальне правило).
Найважливішим етапом процедури організаційного проектування є вибір
представницького набору критеріїв, що дозволяють синтезувати тип
організаційної структури. В якості подібних критеріїв можуть виступати: вид
зовнішнього середовища МАС чи ВО (статична чи динамічна, стабільна чи
нестабільна); переважні взаємодії в організації (вертикальні чи
горизонтальні), стратегії організаційного розвитку (тверде планування чи
самоорганізація) і т.ін.
Будемо рахувати, що базовими критеріями для організаційного
проектування можуть служити: керування (влада), ресурси (власність) і
інтенсивність взаємодії підприємства з зовнішніми партнерами (ступінь
відкритості організації як складної системи). Влада є основним
системоутворюючим фактором будь-якої організації. Вона представлена
структурами керування: централізоване керування на основі вертикальних
зв'язків волоче за собою класичну ієрархічну організаційну структуру, яка
відображається у вигляді дерева, а децентралізоване керування з перевагою
горизонтальних зв'язків породжує мережні структури. Встановлення деякого
“розумного компромісу” між децентралізацією і централізацією по суті
означає пошук найкращого співвідношення між числом горизонтальних і
вертикальних зв'язків.
Здатність організації робити продукцію чи надавати послуги, що
задовольняють клієнтів, тісно пов'язана з наявністю в неї деякої власності
(ресурсів) і характером її розподілу. У класичній економіці дилема “повного
зосередження — повного розподілу ресурсів” відображає економічну модель
організації, наприклад, державне підприємство чи акціонерне товариство.
Аналогічно, за характером розподілу і використання ресурсів можна
виділити різні типи штучних організацій: віртуальні асоціації, що поєднують
рівноправних агентів-власників ресурсів; віртуальні пули, що включають
різнорідних агентів, які розподіляють ресурси в єдиний фонд за
встановленою пропорцією; віртуальні концерни, що характеризуються
делегуванням повноважень центру і зосередженням ресурсів агентів.
Нарешті, відкритий чи закритий характер штучної організації може
визначатися за критерієм інтенсивності (і спрямованості) її взаємодії з
зовнішнім середовищем. У плані інтенсивності взаємодії можуть бути
частими, періодичними чи, навпаки, рідкими, епізодичними. З погляду
спрямованості, стратегії взаємодії організацій як соціальних агентів можуть
визначатися конкурентною чи організаційною раціональністю. У першому
випадку панують відносини конкуренції, часті конфлікти, що приводять до
підпорядкування однією організацією іншої (чи навіть до ліквідації
останньої). В другому випадку переважають кооперативні взаємодії між
організаціями, спрямовані на проведення погоджених дій чи вироблення
компромісу. По суті, такі взаємодії виражають тип соціального поводження,
який можна грубо оцінити співвідношенням між числом зовнішніх і
внутрішніх зв'язків. Коли це співвідношення (тобто число зовнішніх
горизонтальних зв'язків) є малим, в організації переважає “езопове”
поводження і пріоритет віддається стратегіям конкурентної раціональності. З
його збільшенням все більшу роль в організаційному поводженні починають
грати стратегії компромісу і співробітництва. Однак, коли число зовнішніх
зв'язків стає порівнянним з числом внутрішніх, організація виявляється на
грані розпаду. Тут також варто знайти ефективний ступінь відкритості
організації.

26. Мультиагентні системи в державному управлінні та соціальній сфері


В Росії лідерами практичного використання АОС в області державного
керування та у соціальній сфері є Інститут проблем керування складними
системами РАН і НВК «Генезис знань» (м. Самара), що показують наочний
приклад того, як теоретичні моделі МАС можуть бути доведені до
практичного використання.
Цими організаціями разом з Адміністрацією Самарської області в
рамках Федеральної цільової програми «Електронна Росія 2002-2010 р.»
виконується проект «Розробка першої черги системи керування регіоном із
застосуванням мультиагентних технологій». Замовниками проекту виступили
Міністерство економічного розвитку і торгівлі Російської Федерації та
Адміністрація Самарської області.
Проект спрямований на підвищення якості і ефективності керування у
регіоні для реалізації потреб і можливостей громадян і забезпечення стійкого
соціально-економічного розвитку регіону. Для цього застосовуються нові
інформаційні технології керування, що використовують індивідуальний
підхід до рішення проблем кожної людини в умовах обмежених ресурсів та
забезпечують взаємодію влади і населення за допомогою персональних
інтелектуальних агентів.
В процес міжагентної взаємодії населення області та органів виконавчої
влади на різних рівнях залучаються громадяни Самарської області,
представники органів виконавчої влади регіонального рівня, співробітники
підвідомчих організацій і комерційних структур, що діють у соціальної сфері.
Система керування регіоном містить у собі три основні підсистеми.
МАС адресної взаємодії населення й органів державної влади у
соціальній сфері працює на основі карти соціального паспорта. Власник
соціального паспорта одержує можливість із загальнодоступного Інтернет-
кіоску чи за допомогою Інтернету, з будь-якого місця, відправити запит на
надання пільги чи послуги, а також описати свої культурні потреби. Робота
ІА дозволяє громадянину в режимі реального часу одержувати пропозиції від
організацій з урахуванням індивідуальних переваг і формувати з них власний
календар подій.
МАС керування департаментом соціального блоку підтримує менеджерів
по роботі з населенням і менеджерів по організації процесів керування.
Перші безпосередньо допомагають громадянам реалізувати свої запити, другі
задають правила діяльності менеджерів по роботі з населенням і
контролюють ефективність їхні роботи і роботи підвідомчих організацій у
режимі реального часу.
Інтернет-портал для інтеграції ресурсів і міжвідомчої взаємодії дозволяє
громадянам і організаціям описувати свої потреби і можливості; інформує
користувачів про кращі шляхи рішення їхніх проблем і реалізації їх
можливостей. В умовах обмеженості ресурсів портал допомагає державним
службовцем залучати сферу бізнесу до рішення державних задач, надавати
громадянам широкий спектр якісних послуг у залежності від індивідуальних
переваг.
У підсистемі адресної взаємодії діє база знань законів, яка об’єднує
більше 40 законів федерального, регіонального і муніципального рівнів та
зберігає знання про більше, ніж 300 пільг і виплат і більш, ніж 100 зв'язаних
p ними соціальних категорій. На основі запиту від людини, його агент
здійснює оперативний пошук по БЗ і представляє тільки ту інформацію, що
стосується конкретної людини. Підсистема керування соціальним блоком
крім законодавчої БЗ використовує також і базу знань лікування
захворювань, засновану на загальносвітових клінічних протоколах. Агенти
допомагають зіставляти відповідність поставленого діагнозу і
запропонованої методики лікування на основі закладених у БЗ клінічних
протоколів. Портал інтеграції ресурсів використовує БЗ суб'єктів і об'єктів
соціальної сфери і зв'язаних з ними потреб, що допомагає швидко знайти
відповідну до заявленої потреби можливість і одержати пропозиції від
організацій, що містяться в порталі, з урахуванням настроювання
персонального агента.
Система керування регіоном використовує існуючі інформаційні ресурси
департаментів соціального блоку, інтегруючи їх в одну систему, до неї
підключені існуючі бази даних міністерства праці і соціального розвитку
населення Самарської області, база даних пенсійного фонду, що зберігають
інформацію про 1,5 млн. жителів області. Інтеграція з існуючими базами
даних створює можливість розробки на основі даного проекту системи
персонального обліку населення.
Інтернет-портал дає можливість громадянам і організаціям описати
власні можливості і потреби і вже сьогодні одержувати пропозиції
від 415 організацій, зведення про які зберігаються в порталі. За сферами
організації диференціюються в такий спосіб: 72 організації - зі сфери
соціального захисту, 23 — зі сфери охорони здоров'я, 257 — зі сфери
культури, 63 — з інших сфер.
Застосування мультиагентного підходу дозволило скоротити час
оформлення
документів, створити єдиний інформаційний простір між департаментами і
підвідомчими їм організаціями в соціальній сфері, забезпечити прозорість
керування і надання послуг громадянам.

27. Мультиагентні системи в електроенергетиці


На іншому полюсі практичного використання агентно-орієнтованого
підходу знаходяться МАС контролю і керування станом
електроенергетичних комплексів. В останні роки такі системи активно
впроваджуються у Великобританії.
Сучасна енергетична система містить множину контролю та управління,
наприклад, компанія National Grid Transco (NGT) у Великобританії
обслуговує передавальну мережу з 244 підстанцій на 275 кВ чи 400 кВ, з
наступним розподілом по підстанціях на 132 кВ і нижче. Якщо раніше кожна
підстанція мала централізовану керуючу систему, то сучасні підстанції
оснащуються розподіленими інтелектуальними електронними пристроями
контролю та управління (IEDs), що виконують різні задачі з передачі та
обробки даних у корпоративної промислової мережі.
Мережі передачі електроенергії складаються з множини підстанцій із
взаємопов’язаними лініями. Кожна підстанція містить трансформатори,
комутаційну апаратуру, захисне устаткування та інші елементи. В
електроенергетиці використовуються три основних типи систем
автоматизації: Supervisory Control And Data Acquisition (SCADA) системи,
системи EMS (Energy Management Systems) і Substation Automation Systems
(SAS) систем автоматизації підстанцій. Вони утворюють ієрархічну
структуру, з EMS на верхньому рівні, системою SCADA безпосередньо
залежною від EMS і з індивідуальною для кожної підстанції системою SAS,
що знаходиться на нижньому рівні.
З ростом масштабів електричних мереж і збільшенням використання
систем автоматизації стає важко ефективно обробляти великі обсяги
вироблених даних, і перетворювати ці дані в знання, придатні для
подальшого використання. Структура зобов'язана забезпечувати відкритий
доступ до інформації підстанції через глобальну мережу енергетичної
компанії і поєднувати попередньо оброблені функції захисту, контролю та
інформаційного керування. Діючі системи автоматизації виявляються
недостатньо гнучкими і не можуть легко адаптуватися до нових вимог і змін
типу устаткування.
Тому з'явилися діючі реалізації МАС, що надбудовуються над типовими
засобами автоматизації в електричних мережах.
Система ARCHONTM використовується для усунення помилок
ідентифікації та сервісного відновлення в електромережі і використовує 7
агентів, що находяться на різних рівнях керування. Кожен агент відповідає за
специфічну задачу, наприклад, за ідентифікацію невідомої мережі чи
інтерфейсу системи управління.
Окрім цього, розроблена МАС керування комутаційним устаткуванням у
електросиловій системі. Система включає агентів помічників, агентів
устаткування і агентів розподілу. Агенти устаткування представляють
трансформатори, шини ілінії передачі, і стежать за операційним стан, часом
обслуговування та часом використання елементів устаткування. Агенти
розподілу представляють вимикачі чи групи вимикачів. Система була
реалізована засобами мови Java і випробувана на рівні натурного
моделювання.
Застосування ІА також виявляється ефективним у системах розрахунків
за послуги електропостачання. На сьогодні впроваджена система ведення
переговорів між агентами, що представляють незалежних системних
операторів і компанії, що здійснюють передачу електроенергії споживачам.
Впроваджена також система, що використовується для оптимізації
використання електроенергії. Система містить агентів пристроїв, що
представляють кінцеві пристрої споживачів, і сервісних агентів, що беруть
участь в аукціонному механізмі з покупки і продажу електроенергії.
Експериментально удалося підтвердити, що система в стані пристосуватися
до зміни цін у межах кількох аукціонних кроків. Переваги системи полягають
у тому, що вона здатна взаємодіяти з великомасштабними системами, і може
бути налаштована на індивідуальні вимоги в широкому діапазоні додатків.

28. Мультиагентні системи в електронній комерції


Сучасний електронний бізнес характеризується новими можливостями
замовників, постачальників, більш жорсткою конкуренцією, швидкими
змінами технологій як створення, так і впровадження інформаційних систем
забезпечення електронної комерції. Як зручний засіб виконання купівлі або
продажу товарів/послуг через телекомунікації доцільно використовувати
агентно-орієнтований підхід.
Завдяки властивостям агентів процедури торговельних операцій можна
автоматизувати. Розглянемо систему управління торговельними операціями.
Торговельну операцію можна подати як операцію, що містить три фази:
• перша, що передує продажу, містить операції ідентифікації товару
покупцем, вибір товару й продавця, укладання контракту;
• друга, під час якої здійснюється продаж, - це операції оплати й
доставки товару;
• третя, що триває після продажу, - це забезпечення супроводу товару
після продажу та можливості відмови від покупки.
На віртуальному ринку припускається наявність групи покупців (покупцем
може бути підприємство або певна людина-клієнт) і групи продавців, де
проміжними посередниками є електронні брокерські системи.
Брокер, спілкуючись з покупцем, довідується про його бажання за
допомогою системи оповіщень - запитів і відповідей, а потім, після
підтвердження, створює брокерського комерційного агента (Broker
Negotiation Agent), щоб забезпечити подальше виконання торговельної
операції з боку покупця.
Кожна група продавців має постійно працюючих агентів зі своїм спеціально
вмонтованим профілем (Merchant Negotiation Agent), що взаємодіють із
брокерськими комерційними агентами. Автоматизація продажу виконується
за допомогою програмних агентів з боку груп покупців і продавців
відповідно до розподіленої онтології та протоколу (FIPA-iterated-contract-net-
protocol) з урахуванням коригуючої системи обмежень правил торгівлі.
Конструкції програмних агентів розрізняються за компактністю, гнучкістю та
функціональністю. Вибір моделі програмного агента електронного бізнесу
визначається залежно від типу інформації, що обробляється, задекларованих
цілей, строку дії агента тощо.
Архітектуру мультиагентної системи управління торговельними операціями
подано на рис. 1.

Рис. 1. Архітектура системи підтримки електронного бізнесу

Відповідно до цієї схеми купівлі/продажу кожен програмний агент містить


такі компоненти:
• комунікації, через які відбуваються взаємодії між агентами;
• мова торговельних операцій, що забезпечує загальну онтологію
взаєморозуміння, можливість коректного аналізу вхідних повідомлень і
відправлення вихідних повідомлень;
• протокол спостереження допустимості вхідних і/або вихідних
повідомлень;
• модуль прийняття рішень і стратегії/тактики поведінки агента з
приводу індивідуалізації інформаційного наповнення.
Програмний агент купівлі/продажу містить бази даних продавців в Інтернет і
засоби доступу до цих баз даних. Клієнт, вибираючи послуги або товар,
знаходить потрібне ключове слово або інші параметри, після чого
персональний агент купівлі (продажу) починає шукати товар в усіх базах
даних продавців торговельних підприємств, що приєднані до Інтернет.
Інформацію про агентів купівлі можна знайти, приміром, у каталозі
SmartBots.com (http://www.smartbots.com).
Jango-агент, розроблений американською компанією Netbot, спеціалізується
на продажах комп'ютерів і комп'ютерного обладнання.
DealPilot-агент, розроблений німецькими студентами, - найкращий агент
книжкової продукції.
Auction Watchers - це спеціалізований агент, який надає інформа¬цію про
ціни на Інтернет-аукціонах комп'ютерного обладнання.
Bargain Finder - агент, що спеціалізується на пошуку компакт-дисків.
Shopper.com - агент, що порівнює ціни на сто тисяч товарів Інтернет.
Програмні агенти мультиагентних систем є вузько-орієнтованими щодо
виконання свого завдання, це сприяє їхній успішній загальній роботі в певній
галузі, і вимагає наявності порівняно невеликої бази знань у кожного агента.
Набір невеликих баз знань замість однієї великої значно спрощує процес,
наприклад, купівлі послуг. Він також зменшує наслідки випадкових помилок,
зроблених агентами, тому що їхні бази знань знаходяться у постійному
процесі поповнення необхідними новими знаннями.

29. Мультиагентні системи для вирішення задач логістики


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

Рис. 5. Процес переговорів в мультиагентній мережі


Розглянемо процес переговорів в мультиагентній мережі.
Надходить замовлення на деталь, і тут же створюється Агент-Замовлення І для
проведення переговорів про ухвалення його у виробництво. Агент замовлення знаходить
вже існуючу готову деталь на одному з складів (крок 1). Він пропонує певну ціну за дану
деталь, а Агент-Деталі, у свою чергу, може прийняти цю пропозицію або відмовитися від
нього, залежно від запропонованої ціни. Припустимо, що Агент Деталі приймає
пропозицію (крок 2), деталь резервується, і її колір на екрані міняється. Припустимо, що
далі в систему поступає інше замовлення (крок 3), і другий Агент-Замовлення ІІ
намагається зарезервувати для себе ту ж деталь, оскільки іншої відповідної не знаходить.
Розуміючи, що деталь вже зайнята, Агент-Замовлення ІІ пропонує відмінити бронювання
за певну компенсацію. В результаті Агент-Деталі знову звертається до Агента-Замовлення
І з пропозицією прийняти компенсацію. Агент-Замовлення І може погодитися і прийняти
компенсацію, якщо тільки це не вплине на терміни його виконання, або дата поставки
може бути перенесена на більш пізній термін. Якщо Агент-Замовлення І згоден, то деталь
перебронюється наново, тепер уже для другого замовлення (крок 4), і її колір знову
міняється.
В ході переговорів агенти, що розробляються, можуть реалізовувати різні стратегії.
Наприклад, «обережний» агент замовлення деякої частини послідовно обходить весь
«ринок» пропозицій виробників, торгує з ними і в результаті знаходить якнайкращу
пропозицію (яке, втім, до моменту ухвалення розв'язання вже може «знято»), а «рішучий»
– негайно бронює першу ж пропозицію, якщо воно задовольняє його вимогам. У
результаті, вступаючи в переговори, агенти можуть як конкурувати між собою, так і
кооперуватися для досягнення заданої мети.
Окрім «рою» агентів замовлень і готових частин, що постійно шукають зустрічі, в системі
є і ряд інших більш традиційних додаткових агентів: агенти виробника, складу,
складального виробництва (конвейєра) і деякі інші. При цьому агент складу стягує із
замовлень платню за зберігання частин і постійно дозамовляє частини, постійно
оцінюючи співвідношення між змінним попитом і пропозицію. Агент конвейєра управляє
критеріями збору і при необхідності може перемикати переговори замовлень з отримання
максимального прибутку, наприклад, на резервування часу по ремонту складальної лінії.
Отже, в процесі переговорів і ре-переговорів мультиагентна система знаходить
розв'язання, яке максимально задовольняє всіх учасників, забезпечуючи якщо не
оптимальні, то квазіоптимальні показники для всього ланцюжка. Оскільки процес
переговорів безперервний, динаміка моделі системи повністю відображає її динаміку в
реальному житті - зі всіма непередбаченими обставинами і витікаючими з них наслідками.
Архітектура мультиагентної системи для моделювання логістики
В архітектурі системи, що розробляється, основну частину складає предметно-залежне
мультиагентне ядро, у складі якого виділяються наступні базові компоненти (рис. 6):
Служба прямого доступу забезпечує прямий доступ візуальної частини до атрибутів
агентів. При цьому, візуальна частина може спілкуватися з агентами за допомогою
повідомлень, але використовування даної підсистема по-перше, швидше, а по-друге,
володіє більш широкими можливостями для операції агентами.
Служба повідомлень відповідає за передачу повідомлень між самим агентами, а також між
агентами і додатковими системами ядра.
Бібліотека класів агентів це частина бази знань, яка містить інформацію, про те, яких
типів бувають агенти. Для підвищення гнучкості системи, інформація в цьому довіднику
може бути доповнена із зовнішніх розширень через інтерфейс EM API (розширення ядра).
Співтовариство агентів – місце, де розміщуються агенти. Цей блок, окрім життєдіяльності
агентів, ще забезпечує функції по завантаження/записи агентів і їх властивостей і за
оптимізацію роботи з ресурсами.
Онтологія – предметна база знань, що містить конкретні знання про предмет (логістику),
що представляються у вигляді семантичної мережа.

Рис. 6. Архітектура ядра мультиагентної системи.


При цьому предметна орієнтація системи досягається шляхом створення додаткових
класів агентів в системі Delphi і упровадження їх через EM API, а так же через
розширення предметної бази знань.
Окрім перерахованих вище блоків система має 4 типи інтерфейсів, для взаємодії із
зовнішніми компонентами, це:
- DBI API. Інтерфейс взаємодії з модулем доступу до БД і БЗ. Так само, цей модуль
відповідає за взаємодію з накопичувачами, для збереження опису сцен і т.п.
- UI API. Інтерфейс для приєднання системи спостереження/редагування. При цьому
кожний проект може використовувати як уніфіковану оболонку для роботи з системою,
так і свій власний блок, наприклад для веб-уявлення.
- EM API. Інтерфейс розширень ядра, дозволяє динамічно вносити в систему власні типи
агентів без модифікації самого ядра. Спочатку в систему вбудовується основний набір
агентів для конкретного напряму, а потім вносяться розширення.
- CI API. Інтерфейс взаємодії між декількома різними ядрами. На основі даного ядра
розроблена оболонка користувача (рис. 7), що реалізувала найбільш загальні класи
логістичних агентів і бібліотека їх класів для програміста.

Рис. 7. Інтерфейс графічної оболонки системи.


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

30. Мультиагентні системи для підтримки прийняття рішень на


фондовому ринку
Досить часто в економічній сфері виникають різного роду проблеми. Такі
проблеми мають місце і на фондовому ринку. Серед них проблема, щодо
якісного та швидкісного рішення щодо купівлі/продажу акцій. Для
вирішення цих проблем пропонується використовувати мультиагентні
системи.
На фондовому ринку пропонується застосування мультиагентних систем
підтримки прийняття рішень при торгівлі акціями (МАСТА).
МАСТА слід розглядати як систему-посередника, розташовану між стороною
запиту інформації (тобто інвесторами на фондовому ринку) та стороною
постачання інформації (тобто Інтернетом). Концептуальна модель МАСТА
наведена на рис.2
МАСТ Інтерне
А т
Користувач
Рис. 2. Концептуальна модель МАСТА
МАСТА призначена для:
1) пошуку інформації про акції;
2) моніторингу статусу акцій та управління ризиками;
3) підтримки прийняття рішень при купівлі-продажу акцій.
1) Пошуку інформації про акції — ця функція запропонованої системи не є
унікальною. На сьогодні таку функцію дозволяють реалізувати on-line
брокерські системи та комерційні програмні продукти для аналізу фондових
ринків.
У системі МАСТА пропонуються чотири категорії інформаційного пошуку:
1. отримання торгової історії та інформації про поточні котирування (ціна
відкриття, найвища ціна, найнижча ціна, поточна ціна, а також обсяг торгів
для вибраної акції на задану дату торгів тощо);
2. огляд діаграм технічного аналізу акцій, таких як діаграма руху цін,
діаграма обсягу торгів, а також діаграми різноманітних технічних
індикаторів;
3. отримання різноманітних опублікованих фундаментальних даних про стан
конкретної компанії, а також пошук інформації про фінансовий стан
(«фінансове здоров'я») компанії, а саме: загальна кількість акцій,
прибутковість компанії, дивіденди на акцію, річне зростання дивідендів, нові
продукти чи послуги, новини менеджменту в компанії, а також ринкові
новини;
4. пошук ринкової статистичної інформації, наприклад, списку перших
десяти акцій з максимальним підвищенням (чи зниженням) ціни, списку
десяти перших акцій з максимальним обсягом продажів у заданий день (дні)
торгів;
2) Моніторингу статусу акцій та управління ризиками — МАСТА має
автоматично здійснювати моніторинг ринкового статусу акцій, якими
користувач управляє і до яких проявляє інтерес. Ринковий статус акцій
включає опублікований фундаментальний фінансовий стан компанії, а також
стан технічних індикаторів акцій. Використовуючи такий статус, МАСТА
автоматично формує звіти про будь-які аномальні ситуації. Це можуть бути:
а) аномальні обсяги торгів; б) аномальний стан технічних індикаторів; в)
аномальні шаблони цінових діаграм; г) прояв непередбачуваних новин, що
можуть вплинути на статус акцій.
Також МАСТА має забезпечувати управління прибутковістю та ризиками,
підраховуючи коефіцієнт прибутковості (ризик на основі ринкового статусу
акцій та розміру інвестицій користувача).
3) Підтримки прийняття рішень при купівлі-продажу акцій — кожен
інвестор має свої власні стратегії купівлі/продажу акцій та свої правила.
МАСТА покликана забезпечувати підтримку прийняття рішень щодо
купівлі/продажу, використовуючи правила поведінки, визначені власне
інвесторами. Завдяки комбінації моделей та машинних знань, а також
використанню агентних технологій та технологій штучного інтелекту,
МАСТА дозволяє зменшити обсяг перевантаження роботою інвесторів в
процесі аналізу фондового ринку та в процесі прийняття інвестиційних
рішень.
У складі МАСТА інтелектуальні агенти взаємодіють з метою збору,
фільтрації та об'єднання інформації з розподілених та таких, що знаходяться
в різних комп'ютерних мережах, джерел інформації та вироблення
пропозицій щодо прийняття рішень інвесторами на предмет купівлі-продажу
акцій в процесі щоденних торгів. До числа ключових компонентів системи
належить:
⎯ база даних профілів користувачів (БДПК);
⎯ базою даних стратегії торгівлі (БДСТ);
⎯ база даних історії торгів (БДІТ);
⎯ база даних торгів у реальному часі (БДТРЧ);
⎯ база даних фундаментальної інформації (БДФІ).
База даних профілів користувачів (БДПК), яка є динамічною, змінною та
розподіленою між агентами в межах системи. Кожен користувач володіє
персоналізованим інтерфейсним агентом, індивідуальним параметром
(профілем користувача), а також базою даних стратегії торгівлі (БДСТ), де
зберігаються особисті торгові стратегії. МАСТА орієнтована на надання
безпечних і конфіденційних багаторазових послуг користувачам. БДПК
включає таку інформацію: ім'я користувача, пароль, список акцій, якими
користувач володіє, список акцій, які становлять інтерес для користувача,
інструкції щодо проведення моніторингу, заплановані задачі, переваги та
приватні настанови. Агенти системи орієнтовані на індивідуальні потреби
користувача і повинні бути в змозі «вивчати» інтереси користувача та його
автономну поведінку, а також адаптуватися до змін потреб користувача в
часі.
База даних історії торгів (БДІТ), база даних торгів у реальному часі (БДТРЧ),
а також база даних фундаментальної інформації (БДФІ) утворюють локальне
сховище даних, яке є внутрішнім джерелом даних і постійно оновлюється
доречною зовнішньою інформацією за допомогою агента технічного аналізу
та агента фундаментального аналізу.
Функціональна схема МАСТА наведена на рис. 3.
Функції та зв'язки між агентами в складі МАСТА такі:
а) інтерфейсний агент взаємодіє з користувачем, отримуючи від нього
завдання та специфікації та доставляючи йому результати. Агент
користувача передає задачі користувача агенту-координатору та отримує
від нього результати;
б) агент-координатор є відповідальним за декомпозицію та планування
задач. Цей агент володіє інформацією про можливості всіх агентів у складі
МАСТА, він може здійснити декомпозицію заданої задачі на ряд підзадач та
відіслати ці підзадачі доречним агентам для виконання з метою досягнення
поставлених цілей;
в) профільний агент надає механізм, за допомогою якого генеруються та
підтримуються профілі (параметри) користувачів, а також БДСТ. Профільний
агент взаємодіє з агентом-координатором на предмет отримання інформації
від користувача та з середовищем на предмет визначення інтересів
користувача;
г) агент моніторингу контролює статус визначених акцій від імені
користувачів відповідно до його профілем. Цей агент формує звіти про стан
технічних індикаторів заданих акцій і сповіщає користувача про будь-яку
аномальну зміну в обсязі торгів та в цінах;
д) комунікаційний агент створює основу для взаємодії чи спілкування з
іншими агентами або програмами, створеними іншими розробниками;
е) агент управління ризиком на підставі параметрів користувача взаємодіє з
агентом моніторингу та агентом вироблення рішень з метою аналізу рівнів
ризику пакетів акцій користувача, формування звіту про стан доходності
тощо;
Рис. 3. Функціональна схема МАСТА
є) агент технічного аналізу здійснює пошук в Інтернеті та обробку «сирих»
даних про торги акціями, заносить такі дані у відповідну базу даних (БДІТ,
БДТРЧ), підраховує різні технічні індикатори, ідентифікує різні зразки ціни
та обсягів торгів, а також надає необхідну інформацію для агента вироблення
рішень;
ж) агент фундаментального аналізу збирає макроекономічні дані,
фундаментальні дані про фінансовий стан компаній, про погляди ринкових
аналітиків чи експертів, про деякі доречні новини та заносить цю інформацію
в БДФІ. Агент фундаментального аналізу інтегрує цю інформацію та формує
рекомендації для агента вироблення рішень;
з) агент вироблення рішень обробляє результати діяльності агента
технічного аналізу та агента фундаментального аналізу відповідно до
інвестиційними стратегіями, вибраними з БДСТ користувача. Агент
вироблення рішень повинен виконувати дві основні функції:
1) надавати список акцій, які наступного торгового дня бажано було б
купити;
2) надавати пропозиції користувачам щодо того, які акції слід утримувати
або продавати.

31. Основи об’єктно-орієнтованої розробки МАС


5.1. Опис етапів об’єктно-орієнтованої розробки МАС - етапи аналізу
Як уже відзначалося, ця методологія включає стадії аналізу і
проектування. Стадію аналізу можна узагальнено представити у вигляді
наступних кроків:
1. Визначити склад ролей у системі. На виході маємо прототип моделі
ролей — список ключових ролей з їхнім неформальним описом.
2. Для кожної ролі визначити і задокументувати пов'язані з нею
протоколи. Протоколи — це схеми взаємодій між ролями. На виході
одержуємо модель взаємодій, що описує схеми міжролевих взаємодій.
3. Розробити модель ролей, беручи за основу модель протоколів. На
виході маємо цілком пророблену модель ролей, в якій описані всі ключові
ролі в системі, їхні дозволи і відповідальності та протоколи, у яких вони
беруть участь.
4. При необхідності повторити кроки (1) - (3).
5.2. Опис етапів етапів об’єктно-орієнтованої розробки МАС –процес
проектування
Задачею процесу проектування є перетворення абстрактних моделей
високого рівня, розроблених на стадії аналізу, у моделі більш низького рівня,
що забезпечують досить просту реалізацію. Агентно-орієнтований аналіз
полягає в розумінні того, як співтовариство агентів виконує спільні дії при
вирішенні різних задач і які дії вимагаються від конкретного агента.
Процес розробки включає в себе створення трьох моделей: моделі агентів,
моделі послуг і моделі відносин. Модель агентів задає класи агентів, що
складають МАС, і відповідні екземпляри агентів. Модель послуг визначає
основний набір послуг, пов'язаний з кожним типом агентів. Нарешті, модель
відносин характеризує можливі контакти для кожного типу агентів.
5.3. Опис етапів етапів об’єктно-орієнтованої розробки МАС - модель
агентів
Призначення цієї моделі полягає в описі різних типів агентів, що існують
у системі. Типи агентів визначаються множиною ролей. Розроблювач може,
для визначеності, запропонувати об'єднати кілька подібних ролей в один тип
агентів. Головним критерієм на цій стадії є ефективність реалізації:
розроблювач насамперед прагне до оптимізації одержуваних рішень і
агрегування кількох ролей в один тип є один зі способів досягнення цієї
ефективності. Прикладом, коли приймається подібне рішення, може служити
ситуація, у якій обчислювальні ресурси, необхідні для кожного агента, дуже
великі. Тоді бажано скоротити число агентів, тому приймається рішення про
“покладання” декількох ролей на одного агента. В цьому випадку слід
дотримуватися розумного компромісу між простотою розуміння
функціональних характеристик агента та ефективністю його реалізації.
Модель агентів визначається за допомогою дерева типів агентів, у якому
кореневими вузлами є ролі, а вузли відповідають типам агентів.
5.4. Опис етапів етапів об’єктно-орієнтованої розробки МАС - модель
послуг
Призначення моделі послуг полягає у визначенні послуг, пов'язаних с
кожним типом агентів, і специфікації основних властивостей цих послуг. Під
послугою слід розуміти деяку функціональну складову агента. У термінах
об’єктно-орієнтованго підходу послуга буде відповідати методу; однак, це не
означає, що послуги доступні для інших агентів, подібно методам в рамках
ООП.
Для кожної послуги агента повинні бути описані її властивості, а саме
входи, виходи, передумови та післяумови. Входи і виходи для послуги
просто беруться з моделі протоколів. Попередні умови і післяумови являють
собою обмеження, що накладаються на послугу. Важливо відзначити, що по
визначенню кожна роль повинна бути зв'язаною щонайменше з однією
послугою. Модель послуг не містить у собі опису їхніх реалізацій.
Розроблювач вправі будувати послуги так, як рахує потрібним. Приміром,
він може вирішити реалізувати послугу, як метод в об’єктно-орієнтованій
мові, чи як набір методів.
5.5. Опис етапів об’єктно-орієнтованої розробки МАС - модель контактів
Модель контактів визначає комунікативні зв'язки, що існують між
агентами. При цьому не уточнюється, коли і які повідомлення проходять від
одного агента до іншого, а просто вказується, що існує канал комунікації між
агентами. Зокрема, призначення моделі контактів полягає і у визначенні
вузьких місць у системі комунікацій між агентами. На підставі аналізу і
розробки моделі контактів може бути прийнято рішення про повернення до
стадії аналізу і перепроектування МАС для усунення вузьких місць.
Модель контактів являє собою граф, у якому вузли відповідають типам
агентів, а дуги — комунікаційним шляхам. Звичайно граф моделі є
орієнтованим, а запис аb означає, що агент а може зв'язуватися з агентом b, і
зовсім не обов'язково, що при цьому b може зв'язуватися з а. Модель
контактів будується на основі моделей ролей, протоколів і агентів.
Етапи процесу проектування
Процес проектування МАС можна представити у вигляді наступних
кроків:
1. Створення моделі агентів:
• на основі ролей розробити типи агентів, що утворять ієрархію типів;
• записати існуючі екземпляри у вигляді поміток на дереві типів.
2. Розробити модель послуг на основі моделі протоколів і обов'язків
агентів.
3. Розробити модель контактів на основі моделі взаємодій і моделі агентів.

32. Основи стандартної методології проектування МАС


При проектуванні МАС її можна розглядати як набір ролей, що знаходяться
між собою у визначеному відношенні та взаємодіють одна з одною.
Виходячи з цього, загальна модель МАС далі розпадається на дві частини:
модель ролей і модель взаємодій.
Поняття ролі визначається за допомогою трьох атрибутів:
відповідальності, дозволу і протоколів. Тут ключовим атрибутом є
відповідальність, що тісно зв'язана з функціональними характеристиками.
Прийняття відповідальності невіддільно від множини дозволів, які
визначають “права”, пов'язані з роллю, а, отже, і набір наявних ресурсів для
реалізації відповідальності. Нарешті, будь-яка роль описується за допомогою
набору протоколів, що визначають способи її взаємодії з іншими ролями в
МАС. У свою чергу, модель взаємодій містить у собі опис послуг,
взаємозв'язків і зобов'язань, існуючих між агентами.
На стадії аналізу відбувається попередня ідентифікація ролей, потім
визначаються і документуються відповідні протоколи і, нарешті, будується
остаточна модель ролей. На стадії проектування створюється модель агента,
тобто ролі агрегуються в типи агентів, формується ієрархія типів і
документуються приклади кожного типу. Далі розробляються модель послуг
і модель контактів.
Для опису відповідальності беруться два типи характеристик ситуації:
поточні (змінювані) характеристики (liveness properties) і інваріантні
характеристики, що забезпечують збереження (safety properties). Поточні
характеристики описують дії, які агент повинен розпочинати за певних умов.
Характеристики, що забезпечують збереження, визначають інваріантість
системи до зовнішніх збурювань. Наприклад, “стежити за тим, щоб
температура реактора залишалася в інтервалі 0 - 100 градусів”.
Для реалізації відповідальності роль звичайно асоціюється з множиною
дозволів. У класі систем, що звичайно приходиться моделювати, дозволи в
основному відносяться до інформаційних ресурсів. Наприклад, роль агента
може бути пов'язана з можливістю зчитувати чи змінювати визначену
(закриту для інших) інформацію. Роль також може зводитися до створенні
інформації.
Всяка роль описується за допомогою набору протоколів, що визначають
спосіб її взаємодії з іншими ролями в системі. Наприклад, роль “продавець”
(на аукціоні) може мати протоколи: “голландський аукціон” чи “англійський
аукціон”.
Тепер розглянемо докладніше основні етапи реалізації даної методології.
4.1. Основи стандартної методології проектування МАС - аналіз
Суть стадії аналізу полягає у вивченні структури системи (не торкаючись
деталей її реалізації). Її розуміння виражається в створенні моделі організації.
В цьому випадку організація розглядається як множина ролей, що
знаходяться у визначених відносинах та взаємодіють одна з одною. Отже, для
того, щоб описати організацію, необхідно визначити набір ролей та
дослідити, як ці ролі співвідносяться одна з одною. Виходячи з
вищесказаного, організаційна модель далі розпадається на дві частини:
модель ролей і модель взаємодій.
Стадію аналізу можна розділити на наступні етапи:
1. Опис сценарію - природною мовою описуються головні ролі як
природних, так і штучних агентів в організації, визначаються об'єкти
середовища і типові сценарії діяльності.
2. Функціональний опис ролі. Ролі агентів можуть описуватися на основі
діаграм поводження, що відображають основні процеси, відповідну
інформацію і взаємодії між агентами.
3. Концептуальне моделювання ролі і даних. Дані і знання, необхідні
агенту, моделюються на основі діаграм “сутність — відношення”, а також
діаграм життєвого циклу сутності.
4. Моделювання взаємодії користувача і системи. Визначаються
інтерфейси між користувачем і МАС для різних сценаріїв.
4.2. Основи стандартної методології проектування МАС - модель ролей
Модель ролей описує ключові ролі в системі. Тут роль може розглядатися
як абстрактний опис функціональної властивості агента. Іншими словами,
роль в деякому сенсі аналогічна поняттю посада (наприклад, “директор” чи
“старший менеджер”). Будь-які ролі (посади) можна охарактеризувати за
допомогою атрибутів 2-х типів: дозволу і відповідальності.
А. Дозволи/права зв'язані з роллю
Роль асоціюється з дозволами, що відносяться до можливості
використовувати визначені ресурси при реалізації функціональних
характеристик ролі.
Дозволи, пов'язані з роллю, звичайно мають два аспекти:
• вони вказують типи ресурсів, які можна витратити для виконання ролі;
• вони задають обмеження на витрати ресурсів.
У загальному випадку дозволи можуть відноситися до ресурсів будь-якого
типу. Наприклад, в організаціях ролі “Керівник” може бути виділений
коллектив виконавців (підрозділ організації) і т.ін. Однак, в описуваній
методології ресурси ототожнюються з інформацією, яку має агент.
Для реалізації ролі агенту може знадобитися доступ до додаткового
інформації. Деякі ролі можуть бути пов'язані зі створенням нової інформації,
а інші можуть мати тільки можливість читання чи запису наявної інформації.
Природно, у загальному випадку потрібно більш багата модель ресурсів, але
для багатьох додатків досить розглядати лише інформаційні ресурси.
Б. Відповідальності ролі
Роль створюється для того, щоб у системі щось робилося. Тому роль
завжди припускає деяке функціональне призначення, що виражається у
вигляді відповідальності.
Як уже відзначалося, відповідальність визначається поточними
(змінюваними) характеристиками та інваріантними характеристиками.
Справді, агент, що виконує роль, повинний підтримувати деякі інваріанти в
процесі виконання визначених дій. Наприклад, можна зажадати, щоб агент,
що приймає участь в електронній торгівлі, не витратив грошей більше, ніж
було виділено. Ці інваріанти називаються характеристиками збереження,
тому що в основному вони забезпечують захист системи від небажаних
ситуацій. Інваріантні властивості в моделі природно представляти у вигляді
списку предикатів, що повинні залишатися дійсними протягом усього часу
несення відповідальності.
4.3. Основи стандартної методології проектування МАС - модель
взаємодій
Модель взаємодій складається з множини протоколів, обумовлених для
кожної міжролевої взаємодії. По суті протокол може розглядатися як схема
взаємодії. Дана схема визначається формально, абстрагуючи від конкретного
варіанта реалізації (безпосередньої послідовності кроків). Подібний розгляд
взаємодій означає, що основна увага приділяється природі і призначенню
взаємодії, а не точній схемі обміну повідомленнями.
У даному підході передбачається, що реалізація протоколу буде викликати
серію взаємодій. Для прикладу розглянемо протокол торгів типу
англійського аукціону. Він містить у собі кілька ролей (продавці і покупці) і
множину потенційних схем взаємодії (призначення ціни, оголошення заявок і
т.ін.).
Загальне визначення протоколу складається з наступного набору
атрибутів:
• призначення: короткий опис змісту взаємодії (наприклад, “запит
інформації”, “видача завдання”);
• ініціатор: роль(і), відповідальна(і) за початок взаємодії;
• респондент: роль(і), з якою(ими) здійснюється взаємодія;
• входи: інформація, що використовується ініціатором для початку
взаємодії;
• виходи: інформація, надана респондентом у ході взаємодії.

33. Основні характеристики і види взаємодії агентів в мультиагентних


системах
Взаємодія агентів — це перше, про що слід говорити, коли мова йде
про створення МАС.
Взаємодія означає встановлення двосторонніх та багатосторонніх
динамічних відносин між агентами. При цьому вона є одночасно джерелом
і продуктом деякої організації. Іншими словами, взаємодія являє собою не
тільки наслідок яких-небудь дій, що виконуються агентами в МАС
одгочасно, але і є необхідною умовою формування віртуальних колективів і
штучних співтовариств. Одне з гасел синергетичного ШІ (штучного
інтелекту) говорить: “немає знань без взаємодій”.
Взаємодія — це не просто зв'язок, взаємозумовленість між співіснуючими
агентами, але і передумова для взаємних перетворень: модифікацій як самих
агентів, так і відносин між ними.
Наприклад, у ході взаємодії в МАС агент-виконавець може
перетворитися в агента-координатора, а відносини співробітництва — у
конфлікт за ресурси.
Головними характеристиками будь-якої взаємодії є
- спрямованість,
- вибірковість,
- інтенсивність і
- динамічність.
Усі це повною мірою відноситься і до взаємодій агентів.
1) По-перше, взаємодії між агентами мають визначену спрямованість —
позитивну чи негативну, тобто носять характер
- сприяння чи протидії,
- притягання чи відштовхування,
- кооперації чи конкуренції,
- співробітництва чи конфлікту,
- координації чи субординації, і т.ін.
Так сприяння агентів один одному означає їх взаємодопомогу, коли дії
одних агентів допомагають діям інших. Відбувається узгодження
індивідуальних дій в інтересах посилення кінцевого ефекту (досягнення
синергії). Сприяння переростає в кооперацію при наявності загальної мети,
взаємну адаптації і широке використання можливостей один одного.
Навпаки, у випадку протидії агенти заважають один одному, перешкоджають
досягненню індивідуальних цілей кожного.
У контексті аналізу взаємодії агентів і їхніх групп становить інтерес
концепція групової динаміки К. Левіна, що спирається на його теорію поля.
Подібно тому, як індивідуальний агент і його оточення формують
психологічне поле, група агентів і її оточення утворять соціальне поле.
Групове поводження в будь-який момент часу є функцією загального
стану соціального поля.
Воно визначається конкуруючими підгрупами в групі, окремими
агентами, обмеженнями і каналами спілкування.
У груповій динаміці вводиться поняття валентності, близьке до
спрямованості. Тут валентність характеризує взаємне притягання чи
відштовхування агентів: позитивна валентність відбиває прагнення
агентів у визначений район “силового поля”, негативна — рух у зворотну
сторону.
В літературі аналізуються такі види взаємодії, як кооперація і
конкуренція.
Виділяються два різновиди кооперативних відносин:
- союзництво (адитивний ефект об'єднання агентів) і
- партнерство (мультиплікативний ефект об'єднання агентів).
Важливим показником ступеня кооперації служить кількість
включених у неї агентів.
Конкуренція характеризується негативним ефектом об'єднання агентів,
а конфлікт може сприяти наближенню до гомеостатическим границь агентів.
2) По-друге, взаємодії між агентами виборчі. При формуванні МАС
взаємодіють лише такі агенти, що деяким чином відповідають один одному і
поставленій задачі. При цьому агенти можуть бути зв'язані в одному
відношенні і незалежні в іншому. Одні агенти можуть взаємодіяти один з
одним з більшою легкістю, а інші — з меншою. Наприклад, взаємодія
полегшується у випадку просторового зближення агентів, їхньої
гомогенізації, попереднього знайомства один з одним і т.ін.
3) По-третє, взаємозв'язок і взаємозалежності між агентами звичайно
не зводяться до дихотомічному випадку (“зв'язок присутній” чи “зв'язок
відсутній”), а характеризуються деякою силою (інтенсивністю).
4) По-четверте, взаємодії між агентами динамічні. У залежності від
ситуації може
- змінюватися їхня інтенсивність і спрямованість,
- відбуватися ескалація (деескалація) співробітництва чи конфлікту.
Наприклад, при необхідності спільного використання ресурсів заради
вирішення складної задачі ступінь взаємозалежності агентів зростає, а
зближення цілей і досягнення компромісу в процесі переговорів може
привести до зміни знака відносин між агентами — переходу від протидії до
сприяння.
Загальна проблема аналізу взаємодій між агентами включає наступні задачі:
− ідентифікація ситуації взаємодії агентів;
− виділення основних ролей агентів у МАС і розподіл їх між
агентами;
− визначення числа взаємодіючих агентів;
− визначення типів взаємодіючих агентів;
− побудова формальної моделі взаємодії;
− визначення набору можливих стратегій агентів;
− визначення безлічі комунікативних дій.
34. Переваги мультиагентних систем
Мультиагентні системи пропонують шлях для послаблення обмежень
централізованого, запланованого, послідовного управління - вони
дозволяють побудувати системи, які є децентралізованими, незалежними та
паралельними. Багатьом додаткам властива розподіленість.
Деякі додатки розподіляються в просторі (наприклад, інтерпретація і
інтеграція даних, які отримані від розподілених в просторі датчиків, або
контролюють групу роботів).
Інші додатки розподіляються функціонально, як, наприклад, група
експертів з різних спеціалістів, які співробітничають з метою вирішення
складної проблеми. Серед переваг, які можна отримати шляхом
використання систем на основі автономних агентів, слід назвати такі:
1. Відказостійкість - агентам властивий розподілений механізм і тому
система, виготовлена з автономних агентів, не виходитиме з ладу, коли один
або більше компонентів є несправними, оскільки не буде ніякої загальної
точки пошкодження.
2. Модульне програмне забезпечення /масштабована архітектура -
причина, по якій агенти є такими потужними суб'єктами, полягає в тому, що
існує можливість розкладання на частки проблеми, яку вони вирішують.
Кожний агент може бути ідентифікований як суб'єкт (наприклад, верстат,
цех, інструментальний засіб або їх частина) і це допомагає в нарощуванні
системи і зростанні її гнучкості. Перевага модульного нарощування
забезпечується тим, що кожний агент може приєднатися до системи, почати
працювати з іншими агентами, або навіть залишити систему, якщо тільки він
закінчив план, в якому був задіяний, без впливу на роботу системи в цілому.
3. Можливість самоконфігурування - популяція агентів може повторно
самоконфігуруватись. Це є важливою перевагою для систем, які повинні
реагувати на широкий спектр різних умов. Так як поведінка системи
залежить від локальних рішень, система переналаштовує себе автоматично
на збурення від оточення або на переміщення інших агентів. Тому
повнофункціональна система з самоконфігурацією може бути ефективно
імпламентована шляхом простого створення мережі контактів ресурсів
агентів.
4. Зменшені витрати на програмне забезпечення - оскільки програмне
забезпечення стає більш модульним, час його розробки та складність
зменшуються.
5. Зменшені витрати на апаратне забезпечення - використовуються більш
дешеві технічні засоби.
6. Прискорене вирішення проблеми – досягається за допомогою реалізації
паралельності.
7. Зменшений зв'язок - шляхом передачі іншим агентам тільки
високорівневих часткових рішень.
8. Гнучкість системи - маючи агентів з різними можливостями, можна
динамічно об'єднувати їх для вирішення поточних проблем.

35. Поняття програмного агента. Властивості програмних агентів


Програмні агенти стали одним із найбільш важливих досягнень
комп'ютерних наук у 90-х роках. Агенти застосовуються в додатках, де
людина і комп'ютер тісно пов'язані між собою в процесі управління
виробничими (технологічними) та невиробничими процесами. Велика
кількість різноманітної інформації вносить плутанину у визначення того, що
ж насправді є програмним агентом. Саме тому спочатку необхідно
визначитись в суті поняття “програмний агент” та виділити основні
властивості програмних агентів.
Фахівці, які працюють над розробкою агентів, пропонують багато
варіантів визначення поняття “агент” з наміром розтлумачити його з позицій
своєї роботи. Спробуємо порівняти та проаналізувати деякі з цих визначень:
1) The AIMA Agent:”
Агент – це все те, що може бути описано як таке, що сприймає своє
середовищe через сенсори та працює в середовищі через виконавчі
елементи”.
AIMA – це абревіатура від “Штучний інтелект: сучасний підхід” - дуже
відомої системи штучного інтелекту, що була використана в 1995 році в 200
коледжах та університетах США. Автори роботи були зацікавлені в
використанні програмних агентів в засобах штучного інтелекту. Цілком
очевидно, що визначення АІМА побудовано значною мірою на тому, що ми
розуміємо під середовищем та що означає для нас діяльність та мислення.
Якщо припустити, що середовище – це все те, що забезпечує вхідну
інформацію та в результаті отримує відповідну реакцію об’єкта, і визначити
мислення як обробку вхідної інформації, а дію як продукування результату, -
то будь-яка програма є агентом.
Таким чином, якщо ми хочемо побачити чітку різницю між агентом та
програмою, ми повинні визначитися з поняттями середовище, мислення та
дія.
2) The Maes Agent:
“Автономний агент – це обчислювальна система, що знаходиться в
деякому комплексному динамічному середовищі, мислить та діє автономно в
цьому середовищі і таким чином реалізує покладені на неї функції”.
Патті Маєс з Mit’s Media Lab – одна з піонерів в області дослідження
агентів. Її визначення має серйозне доповнення: агент має діяти автономно
та “виконувати ряд функцій”. Крім того, за її словами, середовище має бути
комплексним та динамічним.
3) The KidSim Agent:
“ Ми б визначили агента як стійкого, постійного елемента програмного
забезпечення, призначеного для виконання певних цілей.
Саме ознака постійності (стійкості) відрізняє агентів від підпрограм;
агенти мають власний шлях вирішення певної задачі, мають власний порядок
дій. Наявність певної задачі також відрізняє агентів від
багатофункціональних програм: вони, як правило, значно менші”.
Автори цієї думки з компанії Apple виділяють стійкість
(постійність) як невід’ємну рису агентів – це нове і дуже важливе рішення
проблеми таксономії. Що ж стосується того, що агенти мають певну
функцію, то це, напевне, не є характерною рисою об’єкту дослідження.
4) The Hayes-Roth Agent:
“Інтелектуальні агенти виконують три функції: сприймають динамічний
стан середовища, впливають на нього та у відповідь пропонують рішення
проблеми, роблячи висновки і визначаючи напрямок дій”.
Барбара Хаєс-Роз зі Stanford’s Knowledge System Laboratory наполягає
на тому, що агент розмірковує під час процесу вибору дії
5) The IBM Agent:
”Інтелектуальні агенти – це об’єкти програмного забезпечення, що
виконують ряд операцій, заданих користувачем або іншою програмою, та
мають певну ступінь незалежності та автономності. При цьому вони
використовують певні знання та враховують потреби користувача”.
Таке визначення характеризує агента, що діє на замовлення іншої
програми та користується наданими йому повноваженнями. В цьому
випадку типовим прикладом може слугувати агент, що збирає інформацію.
6) The Wooldridge, Jennings Agent:
“Агенти – це комп’ютерні системи, що працюють на апаратному,
частіше програмному, забезпеченні та мають наступні якості:
а) автономність: агенти працюють без прямого втручання людини чи
будь-кого та контролюють певним чином свої дії та внутрішній стан;
б) соціальна пристосованість: агенти взаємодіють з іншими агентами
(з людиною) за допомогою певної мови спілкування;
в) реагування: агенти спостерігають за середовищем (яке може бути
представлене фізичним світом, користувачем через графічні інтерфейси,
групою інших агентів, Інтернетом, або всім вищезгаданим разом) та
реагують своєчасно на зміни в цьому оточенні;
г) проактивність: агенти діють не тільки у відповідь на зміни в
середовищі; вони також можуть діяти на власний розсуд’’. Крім того, що таке
визначення виділяє такі риси агентів, як автономність, розуміння та здатність
до дій, воно також бере до уваги широкий, але обмежений, перелік всього
того, що відноситься до середовища. Також додається така характеристика
агентів, як можливість зв’язку та взаємодії.
7) The SodaBot Agent:
“Програмний агент – це програма, що має справу з “веденням діалогів”
та з передачею інформації.”
SodaBot – розробка середовища для програмних агентів, що
розробляється в MIT AI LAB Майклом Коеном. Можна помітити певну
відмінність його визначення від шести попередніх.
Але ця відмінність не носить визначальний характер, так як “ведення
діалогу”, наприклад, потребує таких якостей агента, як “розумність” та
“здатність до дій”. Але все ж таки це визначення значною мірою
відрізняється від тих, які наведено на початку, і, здається, включає майже всі
стандартні програми.
8) The Brustoloni Agent:
“Автономні агенти – це системи, що здатні до самостійної
цілеспрямованої діяльності в реальному світі.”
Тобто агент Брустолоні, на відміну від попередніх агентів, повинен
“жити” та виконувати свої функції в “реальному світі”.
Це визначення відрізняє програмних агентів від програм взагалі.
Брустолоні також наполягає на тому, що його агенти повинні реагувати на
зовнішні несинхронні збудники за часовим принципом.
Розглянемо детальніше основні властивості програмних агентів:
1) здатність реагування - ця властивість у літературі, присвяченій
програмним агентам, трактується по різному – зокрема, є два головних
значення. Перше визначає спроможність агентів своєчасно реагувати на
зовнішнє середовище, друге - те, що агенти діють без будь-яких зовнішніх
або внутрішніх консультацій.
2) автономність - автономність дуже часто згадується як важлива
властивість агентів, яку дуже важко чітко визначити.
Ряд авторів визначають автономного агента наступним чином:
“Автономний агент - це система, яка розміщена в зовнішньому середовищі і
яка є його частиною; при цьому агент діє в такому середовища постійно і у
відповідності зі своєю програмою (задачами) так, щоб впливати в
майбутньому”.
В іншій роботі наводиться таке твердження: “Поводження агентів
може базуватися як на своєму власному досвіді, так і на умонтованій базі
знань для агентів, працюючих у визначеному зовнішньому середовищі.
Система є автономною в рамках свого поводження, заснованого на власному
досвіді”.
Іншим чином визначається автономність в третій роботі. Її автори виділяють
5 видів автономності:
а) абсолютна автономність - чим менш передбачливим є агент, тим
більш він автономний;
б) соціальна автономність - агент “усвідомлює” все про своїх колег і
про свою соціальність;
в) автономність інтерфейсу - у більшості практичних систем, де не
припустима абсолютна автономність, існує внутрішній проект (сукупність
характеристик, прихованих від користувача);
г) автономність виконання - агент має свободу в діях доти, поки
працює в зовнішньому середовищі;
д) автономність проектування - автономність проектування
компонентів середовища.
3) програмність: програмний агент є насамперед комп’ютерною програмою.
Хоча в агентах можна виділити властивості апаратні та людські, проте дати
їм визначення дуже складно.
4) раціональность (розумовість): коли агент розглядають як об'єкт із
розумовими компонентами, такими, як думка, ціль, наміри, бажання тощо, то
мають на увазі розумовість агента. Ряд авторів розглядають дану властивість
як внутрішній стан агента, коли він працює з осмисленням, передчуттям і
т.ін. зовнішнього світу.
5) розважливість: ця властивість використовується для того, щоб
описати спроможність агентів до мислення. Вона проявляється тоді, коли
агент, використовуючи знання і мислення, намагається визначити, що йому
варто почати робити (чи зробити).
6) комунікативність: агенти можуть ігнорувати один одного, працювати
разом або конкурувати між собою. Найчастіше має місце кооперація (або
координація дій) агентів, коли агенти об'єднують свої зусилля для досягнення
загальної цілі. Координація дуже тісно пов'язана з раціональним
поводженням агентів, оскільки при координації кожному окремому агенту
необхідно знати цілі, думки і бажання інших агентів. Для кооперації агентів
повинні бути визначені відповідні коопераційні стратегії, колективне
навчання, ієрархічна організація тощо. Міжагентні зв’язки (комунікація) є
дуже важливими для кооперації. Взагалі, комунікація - це абстрактний
рівень, який грунтується на мовах та протоколах.
7) тривалість функціонування: визначає те, що агент повинен бути в
змозі функціонувати протягом великого періоду часу.
36. Порівняльна характеристика мов програмування агентів. Мови Java
та KQML
1) Мова Java
Java - імовірно, одна з найбільш популярних мов, що
використовуються останнім часом для програмування агентів. Java
представляє із себе мову програмування, подібну до C++ за синтаксисом, але
більш схожу зі Smalltalk і Objective C за ідеологією.
Система програмування на Java містить у собі віртуальну машину Java
і транслятор з Java у bytecode.
Мова Java передбачає створення додатків, що переносяться на різні
платформи. Програма, написана на Java, компілюється в спеціальний
машинно-незалежний байт-код. Потім цей код може бути виконаний за
допомогою інтерпретатора Java на будь-якому комп'ютері, де реалізована
Java Virtual Machine.
Тим самим забезпечується платформо-незалежність Java - додатків на рівні
байта-коду, що може надходити відкіля завгодно, включаючи Web-сторінку,
у якій міститься посилання на нього. Java Virtual Machine працює в
середовищі витискуючої мультизадачності і підтримує полегшені процеси
(threads). Засоби створення і синхронізації таких процесів включені в Java на
рівні мовних конструкцій і класів. Засоби мультизадачності також покликані
забезпечити реакцію системи в реальному часі для мультимедійнихх
додатків, критичних до часу.
Java являє собою дійсно об’єктно-орієнтовану мову програмування із
сильною типізацією. Схожість з C++ робить її простою для вивчення
програмістами. В ній відсутній гранично чіткий розподіл пам'яті і для
підвищення надійності програм з мови виключена арифметика покажчиків.
Кожен тип даних розуміється як клас об'єктів, будь-яка функція є
методом класу. Її виклик розглядається з об’єктно-орієнтованих позицій як
посилка повідомлення об'єкту.
Існує вбудована розширювана бібліотека класів, що включає Abstract
Window Toolkit (AWT) для створення користувацьких інтерфейсів, класи
підтримки основних типів даних, threads, мережних можливостей, графіки,
мультимедіа тощо.
До засобів підвищення надійності варто віднести вбудовану в мову
обробку виняткових ситуацій (exceptions) і run-time контроль за виконанням
програми, такий, як перевірка виходу за границі масивів тощо.
Мова Java може бути використана для створення двох типів програмного
забезпечення: автономних додатків, що можуть включати «рідний» (тобто
машинно-залежний) код і аплетів - платформо-незалежних додатків, що
можуть приходити з мережі і запускатися за допомогою підтримуючих Java
Web - броузерів. Аплети можуть вбудовуватися в Web-сторінки після
спеціальної помітки мови HTML, що вказує посилання на їхній код, і
запускатися автоматично, коли сторінка відкривається в броузері.
Мова Java був спроектована з урахуванням можливості створення додатків,
що працюють у розподіленому середовищі.
Крім підтримки можливостей TCP/IP, таких як читання URLs, роботу
із сокетами та обмін повідомленнями на рівні датаграмм, у Java
передбачений механізм віддаленого виклику об'єктів, визначений у
специфікації RMI (Remote Method Invocation). Цей механізм дозволяє
викликати методи віддалених об'єктів, оголошені в спеціальному інтерфейсі,
причому синтаксично такий виклик виглядає ідентично виклику простого
методу. Ця схема надає більш гнучкі можливості в порівнянні з традиційним
протоколом RPC (Remote Procedure Call). Механізм серіалізації (Serialization)
дозволяє зберігати об'єкти і графи об'єктів у потоках даних (файлах,
мережних каналах) і відновлювати їх при необхідності.
При цьому забезпечується достатній рівень таємності переданої інформації. З
виходом специфікації Java IDL і нового продукту Black Widow компанії
PostModern Computing Technologies відкрилася можливість до зближення
Java додатків і комунікаційного стандарту CORBA 2.0 консорціуму OMG
(Object Management Group). Спеціальний компілятор дозволяє, виходячи з
описів інтерфейсів мовою IDL CORBA, генерувати код Java-об'єктів. Це
дозволить використовувати виклики об'єктів, що знаходяться в
корпоративних мережах, з Java додатків і зробити Java - об'єкти доступними
для цих викликів.
На сьогоднішній день Java доступна на наступних платформах:
Windows, Solaris (Intel, SPARC), Macintosh System 7.5.
2) Мова KQML
KQML - мова і протокол для підтримки взаємодії агентів у
розподілених додатках. Приклади можливих застосувань мови включають
інтелектуальні мультиагентні системи, такі як інтелектуальні агенти
планування, що підтримують розподілену обробку. Перед визначенням
інтерфейсів систем, заснованих на знаннях, необхідно перерахувати типові
компоненти таких систем:
- додаток, розрахований на непідготовленого користувача (End User
Application);
- систему, засновану на знаннях (Knowledge Based System);
- сховище спеціальних знань (Knowledge Base Repository) - сховище знань
про вміст бази знань - використовується для відстеження історії доступу,
цілісності та інших аспектів функціонування баз знань;
- систему керування базами даних (Database System);
- активні сенсори (Active Sensors) - відповідають за обмін даними
(знаннями) з “зовнішнім світом”.
Можливі різні способи взаємодії перерахованих компонентів.
Розроблювачі KQML виділяють 3 напрями, особливо важливі з їхнього
погляду, для комунікацій інтелектуальних агентів:
1) зв'язність (Connectivity) - фокусується на способі зв'язування агентів між
собою;
2) архітектура (Architecture) - акцентує увагу на способі побудови
майбутньої системи (буде система статичною, коли усі компоненти відомі
вже на етапі проектування/ реалізації чи динамічною);
3) комунікації (Communication) - даний напрямок розглядає
синхронність/асинхронність обміну повідомленнями між агентами.
При розробці мови були зроблені спеціальні припущення про основні
моменти її використання для опису комунікацій мультиагентних систем:
1) Архітектура. Агенти - це окремі процеси, що працюють в одному
адресному просторі чи на різних машинах, з'єднаних за допомогою Internet.
2) Комунікації. Мова підтримує наступні стратегії передачі інформації:
point to point, multicast, broadcast.
3) Синтаксис. Повідомлення між рівнями вмісту, повідомлень і
комунікацій представлені у вигляді s-виразів мови Lisp. Між процесами
вирази передаються як потоки ASCII-символів.
4) Протокол. Для транспортної підтримки KQML був створений
спеціальний протокол - SKTP (Simple Knowledge Transfer Protocol).
Мова KQML складається з трьох рівнів:
- змісту,
- повідомлень і
- комунікацій.
KQML-вираз можна розглядати як вираз-вміст, поміщений у
повідомлення-обгортку, що, у свою чергу, поміщено в комунікаційну
обгортку. На рівні змісту знаходиться представлення знань на деякій мові.
Рівень повідомлень додає додаткові атрибути, такі як опис мови, на
якому виражений зміст, його онтологію і тип використовуваного методу
переговорів.
Комунікаційний рівень додає інформацію про відправника й
одержувача повідомлення, а також вказує на те, є повідомлення синхронним
чи асинхронним.
Основу синтаксису мови KQML складають імена примітивних дій-
повідомлень, що в англійській транскрипції називаються “performatives”
(перформативності). Тип повідомлень визначає, що можна зробити з
пропозиціями, що містяться в повідомленні, з цим зв'язана сама назва KQML-
повідомлень англійською мовою.
Усі дії-повідомлення можна розділити на наступні категорії:
- мови змісту KQML, що припускає модель баз у формі безлічі
пропозицій деякої мови, що може бути об'єктною;
- контексту міркувань - підмножини пропозицій (фрагмента) бази знань;
запити і відгуки повинні робитися щодо деякого контексту, при цьому
повідомлення даного типу повинні дозволяти визначати контекст і
переключатися між фрагментами бази знань;
- визначення, що мають на меті активізувати і скасовувати визначення;
- відповіді на питання, що дозволяють задавати питання щодо істинності
пропозицій;
- відгуки, що визначають набір повідомлень для одержання відповідей на
задані питання.

37. Порівняльна характеристика мов програмування агентів. Мови AСL


та Penguin
Мова Penguin
Penguin - модуль мови Perl 5, що забезпечує, набір функцій для: (1)
посилки шифрованого Perl-коду з цифровим підписом до віддаленої машини,
на якій він буде потім виконаний; (2) одержання коду і, у залежності від того,
ким він підписаний, його виконання з дотриманням відповідних прав.
Комбінація цих функцій дає можливість для безпосереднього кодування
мовою Perl алгоритмів обробки безпечних фінансових угод по Internet,
мобільних агентів, що збирають інформацію, “оживлених” Web-брoузеров,
розподілених обчислень, віддаленого відновлення програмного забезпечення,
віддаленого адміністрування, поширення інформації, конструкторів
мережних програм тощо.
Мова AKL
AKL (Agent Kernel Language) - паралельна мова програмування,
розроблена у Шведському Інституті Інформатики (SICS). У AKL обчислення
виконуються агентами, взаємодіючими через сховища обмежень і умов
(stores of constraints). Цей підхід поєднує відразу кілька парадигм
програмування. У відповідних контекстах про AKL - агентів можна думати
як про процеси, об'єкти, функції, відносини чи обмеження. AGENTS -
система для програмування в AKL. PENNY - це паралельна реалізація AKL,
для якої були отримані дуже перспективні результати, і яка буде розвиватися
далі.
38. Порівняльна характеристика мов програмування агентів. Мови
TeleScript, Agent-Tcl та Oz
Мова TeleScript
Перша комерційна реалізація концепції мобільного агента була
зроблена в середовищі TeleScript-технології фірми General Magic. Дана
технологія заснована на метафорі електронного ринку - загальнодоступної
мережі (public network), що дозволяє продавцям і споживачам товарів і
послуг знаходити один одного і займатися спільним бізнесом.
TeleScript-технологія оперує наступними поняттями: місця (places),
агенти (agents), переміщення (travels), зустрічі (meetings), з'єднання
(connections), повноваження (authority) і дозволу (permits).
Далі коротко роз'ясняються перераховані поняття:
• Місця. TeleScript-технологія розглядає комп'ютерну мережу як
множину місць. Місце - стаціонарний процес на сервері, що пропонує
послуги вхідному агенту.
• Агенти. Комунікаційний додаток трактується як набір агентів.
Кожен агент займає конкретне місце. Однак, агент може переміщатися
від місця до місця, і тому він може займати декілька різних місць у те
саме час. Агентські процедури виконуються паралельно. У моделі
електронного ринку на типовому місці постійно присутній один,
виділений агент.
• Переміщення. Агенту надається можливість подорожувати з місця на
місце. Переміщення - відмітна ознака системи віддаленого
програмування, воно дозволяє агенту одержати віддалену послугу і
потім повернутися на місце його старту. TeleScript дозволяє
комунікаційному пакету (computer package) - агенту (його процедурам і
стану) переміщатися між комп'ютерами.
Для переміщення між комп'ютерами агент виконує інструкцію go. Інструкція
включає ticket - дані про бажане місце доставки та інші параметри
переміщення. У випадку, якщо переміщення пройшло успішно, агент
одержує повідомлення про це (його наступна інструкція виконується вже на
новому місці). У моделі електронного ринку інструкція go дозволяє агентам
покупців і продавців розташовувати один одного для більш ефективної
взаємодії.
• Зустрічі. Зустріч дозволяє агентам викликати процедури один
одного. Зустрічі - це те, що “змушує” агента переміщатися. Для зустрічі
з розташованим рядом (co-located) агентом, агент виконує інструкцію
meet. Дана інструкція містить вимогу (petition) - дані, що визначають
агента, що “хоче” зустрітися, та інші параметри зустрічі. Meet-
інструкція дозволяє покупцям і продавцям здійснювати транзакції.
• З'єднання. Вони дозволяють агентам обмінюватися інформацією з
різних місць. Для з'єднання агент виконує connect-інструкцію. Дана
інструкція містить кілька параметрів, таких як ціль (target) з'єднання.
Connect-інструкція дозволяє агентам обмінюватися інформацією на
відстані.

• Повноваження. Технологія дозволяє агенту чи місцеві розпізнавати


повноваження іншого агента/місця, причому агент чи місце не можуть
ні ховати, ні фальсифікувати свої повноваження. Анонімність
виключена. Технологією передбачена перевірка повноважень при
переміщенні агента між регіонами (network regions) мережі - набором
місць, розташованих на комп'ютерах, що володіють однаковими
повноваженнями. Для перевірки повноважень агент чи місце виконує
інструкцію name. Результатом виконання інструкції є telename - дані,
що дозволяють розпізнавати повноваження в рамках регіону мережі.
Дана можливість дозволяє захистити агентів і місця від проникнення
вірусів.
• Дозволи. Технологія дозволяє керувати призначенням повноважень.
Мова програмування дозволяє розроблювачу комунікаційного додатка
визначати алгоритми функціонування агентів і дані, що переносяться
агентами під час переміщення по мережі. Мова містить у собі можливості,
пропоновані C і C++. Додаток може бути написаний цілком мовою TeleScript,
але частіше розроблювачі чинять інакше: агенти й оболонки місць пишуться
за допомогою TeleScript, а стаціонарні частини додатка (інтерфейси з
користувачем, базами даних і т.ін.) - на С чи С++.
Мові Telescript притаманні наступні характеристики:
Повнота.
2) Об'єктно-орієнтованість.
3) Динамічність (dynamic). Агент може переносити інформацію з місця на
місце. Навіть якщо при пересиланні об'єкт не відомий на місці призначення,
його клас переноситься разом з ним по мережі (код, визначення класу).
4) Збереження (persistency). На кожному кроці виконання агент і
інформація, що переноситься ним, безпечно зберігається в не-volatile - пам'яті
(постійній - напевне, службовій пам'яті інтерпретатора). Ця операція
дозволяє запобігти краху комп'ютерної системи.
5) Переносимість та безпека. Комп'ютер виконує інструкції, що
складають агента не прямо, а за допомогою engine-інтерпретатора. Агент
може виконуватися на будь-якому комп'ютері, на якому інстальований
інтерпретатор.
6) Орієнтованістю на комунікації (communication-centric). У мову
убудовані інструкції, що дозволяють агенту просто виконувати складні
мережні задачі.
Мова Agent-Tcl
Agent-Tcl - це система мобільних агентів, у якій агенти написані на Tcl
7.4 і Tk 4.0. Agent-Tcl активно використовується в задачах інформаційного
пошуку і прикладних програм інформаційного керування. Agent-Tcl у цілому
аналогічний мові TeleScript, за винятком того, що Agent-Tcl є більш
полегшеним і в даний час забезпечує обмежений захист. Альфа - версія
доступна на Unix платформах.
Мова Oz
Oz - паралельна, об'єктно-орієнтована мова програмування, що була
розроблена у DFKI (Німеччина). Існує кілька проектів у DFKI, що
використовують Oz разом з архітектурою агшентів InteRRa (див. тему 3).
InteRRa представляє із себе багаторівневу архітектуру, що побудована для
моделі взаємодіючих автономних агентів. DFKI пропонує паралельну мову
програмування, пристосовану для прикладних програм, що вимагають
складних символьних обчислень, організації кооперації агентів і деяких
можливостей керування в реальному масштабі часу. Реалізація Oz є
закінченим середовищем програмування, що включає обєктно-орієнтований
інтерфейс до Tcl/Tk. Прикладні програми на Oz вже використовувалися для
моделювання мультиагентних систем, обробки природної мови, віртуальної
реальності, графічних користувацьких інтерфейсів, планування і створення
розкладів.

39. Порівняльна характеристика мов програмування агентів. Мови KIF


та AgentSpeak
4) Мова KIF
KIF - це мова для обміну знаннями між різними програмами,
написаними різними людьми, на різних мовах і в різний час.
Вона:
- має декларативну семантику (значення виразів, представлених на цій
мові, може бути зрозуміле без звертання до спеціального інтерпретатора);
- вона логічно повна (забезпечує вираження довільних пропозицій
логіки предикатів першого порядку),
- забезпечує представлення знань про представлення знань;
- забезпечує представлення немонотонних правил висновку,
визначення об'єктів, функцій і відносин.
KIF не претендує на звання мови для внутрішнього представлення знань
(хоча і може бути використаний для цих цілей). Звичайно програма одержує
зовнішні знання, виражені мовою KIF, потім транслює їх у внутрішнє
представлення (списки, фрейми і т.ін.) і виконує всі обчислення,
використовуючи ці внутрішні представлення.
KIF використовується при комунікаціях із зовнішніми програмами.
Ціль мови KIF аналогічна меті мови Postscript - вона не є мовою,
досить ефективною для представлення внутрішніх знань програм, проте вона
зручна для незалежної розробки програм, що працюють зі знаннями.
Основні властивості мови KIF – це:
1. Мова є декларативною, чим відрізняється від мов типу Prolog і Emycin.
2. Мова є логічно повною.
3. Мова є трансльованою (translatability) - вона припускає значення для
трансляції декларативних баз знань в/із типових мов представлення знань.
4. Мова є такою, що добре читається - це спрощує її використання
розроблювачем баз знань.
5. Мова може бути використана як мова представлення знань.
Існують два різновиди мови KIF: лінійний і структурований.
У лінійному варіанті всі її вирази - це рядки ASCII-символів, що
зручно для збереження на пристроях з послідовним доступом.
У структурованому варіанті мови правильні вирази - це
структуровані об'єкти. Структурована мова зручна для використання при
комунікаціях програм, що працюють в одному адресному просторі. Між
лінійним і структурованим представленнями однієї і тієї ж сутності існує
взаємо-однозначна відповідність.
Відповідність між лінійним і структурованим представленнями
визначається в такий спосіб: рядок ASCII-символів буде правильним виразом
лінійного варіанта мови KIF тоді і тільки тоді, коли
(1) він допускається інтерпретатором мови Common Lisp, і
(2) структура, породжена інтерпретатором Common Lisp, буде
правильним виразом структурованого KIF.
У структурованому KIF визначені наступні синтаксичні конструкції: word,
expression, operator, constant, term, sentence, definition, rule і т.ін.
Застосовність KIF у рамках розробки агентів бачиться в такий спосіб.
Ядро агента, а саме: підсистеми керування пам'яттю, планування, база знань і
т.ін. пишуться на С++ чи на одній з мов Java, Telescript (якщо нас цікавить
здатність агента до міграції по мережах), а KIF використовується як мова для
обміну знаннями/даними з іншими агентами (для цього агент повинний мати
підсистему перетрансляції з мови внутрішнього представлення знань на
KIF).
Мову KIF можна також використовувати і як мову представлення
власних знань агента, у цьому випадку відпадає потреба в згаданому вище
трансляторі.
Мова AgentSpeak
Аналогом класу в даній мові виступає сімейство, представником
(екземпляром) сімейства є агент. Кожен агент має базу даних відносин з
публічною і приватною частинами, безліч сервісів і безліч планів - процедур,
про які відомо лише те, виконані вони чи ні. Мова забезпечує розподіленість
збереження інформації в просторі функціонування агентів.
Кожен агентський сервіс може бути одного з наступних трьох типів:
achieve, query, told.
Кожен агентський план визначається за допомогою імені й опису
абстрактної ситуації, у якій він може бути застосований.
Під час роботи агента, якщо план є прийнятним в поточній ситуації,
виконуються дії, пов'язані з даним планом.
Передача повідомлень синхронно/асинхронна. Кожному агенту
привласнюється особиста поштова скринька, у яку складаються всі
повідомлення, що надходять на його адресу.
Крім передачі повідомлень типу агент-агент, підтримуються
комунікації агент-сімейство агентів, останнє дозволяє агентам
використовувати сервіси обробки повідомлень на базі властивостей
сімейства. Повідомлення маршрутизуються по просторах повідомлень,
кожне з яких приєднане до конкретного сімейства агентів.
Повідомлення, що використовуються в мові, можуть відноситися до
одного з трьох типів: інформувати, запитувати з чеканням відповіді,
запитувати без чекання відповіді.
Кілька слів про операційну семантику мови. Мова вимагає, щоб усі
сімейства агентів були визначені до початку виконання середовищем
агентських завдань (під час компіляції), динамічне створення агентів не
підтримується.
Кожен агент може знаходитися в одному з трьох станів: активний
стан, стан очікування, непрацюючий стан (idle).
Після прибуття до агента повідомлення воно кладеться в його поштову
скриньку, далі агент починає обробляти повідомлення. Суть обробки полягає
в наступному. Спочатку по типу мовного повідомлення (achieve, query, told)
вибираються плани, що можуть бути потенційно застосовні в даній ситуації
(множина придатних планів), далі виконується перегляд абстрактних
ситуацій множини обраних на попередньому кроці планів (множина
застосовних планів). Потім для останньої множини будуються реалізації
(посилання).

40. Порівняльна характеристика мов програмування агентів. Мови


SKTP та April
Мова SKTP
SKTP - Simple Knowledge Transfer Protocol. Перші дві реалізації SKTP
були написані на мовах Common Lisp і Пролог відповідно. В даний час
розробляються інтерфейси на інших мовах.
SKTP - це реалізація стека протоколу KQML. Як і KQML, SKTP
складається з декількох рівнів: змісту, повідомлень і комунікації.
Комунікації між додатками відбуваються мовою додатків, підтримку
даного процесу забезпечує рівень змісту (content layer).
Вирази, позначені для передачі, “обертаються” у повідомлення - це так
званий рівень повідомлень (message layer), реалізований за допомогою
інтерфейсу бібліотеки посередника (Facilitator Interface Library - FIL).
Рівень, відповідальний за стратегію передачі повідомлень (multicast,
broadcast і т.ін.) називається комунікаційним і реалізований у вигляді
окремого агента, що має назву посередника (facilitator).
На самому нижньому рівні, що реально несе структуровані дані між
посередниками, знаходиться протокол TCP/IP.
Мова April
April: Agent Process Interaction Language. Це мова високого рівня, що
пропонує простий інтерфейс до інших мов програмування типу C.
April орієнтована на реалізацію мультиагентних систем. Однак, April
не є мовою програмування агентів у тому сенсі, що вона не пропонує таких
високорівнених можливостей, як планувальники, механізми висновку на
основі правил і системи представлення знань.
April скоріше є об'єктно-орієнтованою мовою з засобами підтримки
паралельного виконання задач та такою, яка розглядає об'єкти як процеси.
Вона є придатною основою розширень для задач розподіленого штучного
інтелекту і для прикладного програмування мультиагентних систем.

41. Приклади агентно-орієнтованого моделювання соціально-


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

Рис. 8. Схема використання агентно-орієнтованої моделі на фондовому ринку


Агентно-орієнтована модель (АОМ) складається з сукупності (популяції)
агентів і віртуального ринку (ВР), де агенти можуть торгувати цінними
паперами. Агент - автономна сутність, що представляє трейдера (або
інвестора) зі своїми власними активами (у грошовій формі та/або у формі
цінних паперів) та своєю власною торгівельною стратегією.
Цикл функціонування АОМ представлений на рис. 9.
Рис. 9. Цикл функціонування агентно-орієнтованої моделі на фондовому
ринку
Отримавши новий набір котирувань (прайс-лист), агенти проводять
оцінку та можуть розмістити нові накази на купівлю/продаж чи залишитися
неактивними в залежності від власної торгової стратегії. Після того, як всі
агенти оцінять свою торгівельну стратегію, віртуальний ринок визначає ціни
посередництва (клірингові ціни або ціни ВР), виконує всі виставлені накази
щодо купівлі/продажу та представляє прогноз цін на наступний період. І на
завершення здійснюється виведення нових агентів (за допомогою
генетичних операторів – селекції, кросоверу (схрещування) та мутації) та
заміна ними неефективних представників поточної популяції агентів. Цей
процес повторюється після надходження наступного набору котирувань.
Самоорганізація агентів через еволюцію і результуюча динаміка цін
навчає модель визначати та передбачати зміну структури ціни, адаптуючись
до зміни поведінки ринку. Еволюція моделі ніколи не закінчується. Коли всі
наявні історичні ціни були оброблені, модель очікує на те, щоб нові цінові
дані стали доступними, а потім розвивається далі. Модель може
еволюціонувати паралельно з реальним світовим фондовим ринком.

42. Приклади агентно-орієнтованого моделювання соціально-


економічних процесів та систем.
Агентно-орієнтоване моделювання ланцюгів постачань на підприємствах
Ланцюг постачань складаються з чотирьох частин: виробництво,
дистриб'ютори, оптові торговці та роздрібні торговці, які відповідають на
запити кінцевих споживачів.
Для спрощення моделі пропонується наступні умови: 1) існує тільки один
продукт, 2) не відбуваються перетворення товарів і 3) неприпустимим і не
потрібним є складання різних матеріалів в кінцевий продукт.
Агентами в рамках ланцюгів постачань виступають споживачі (customers),
роздрібні торговці (retailers), оптові торговці (wholesalers), дистриб'ютори
(distributors) та виробники (factories) (рис. 10). В кожний період часу агенти
ланцюгів постачань виконують дії, керуючись наступними правилами своєї
поведінки:
1) споживач подає заявку роздрібному торговцю;
2) роздрібний торговець задовольняє заявку негайно з відповідних
запасів, якщо має достатньо запасів на складі (якщо запаси закінчилися, то
заявка споживача поміщається в невиконані і виконується за умови
поповнення складу);
3) роздрібний торговець отримує чергову партію вантажу від оптового
торговця у відповідь на попередні заявки. Роздрібний торговець вирішує,
скільки вантажу замовити оптовому торговцеві, грунтуючись на «правилі
заявок». Він також оцінює майбутні замовлення споживачів, використовуючи
правила «прогнозу вимог (заявок)». Потім роздрібний торговець замовляє
товар у оптового торговця, щоб покрити очікувані вимоги і будь-який
дефіцит щодо запасів і цілей, які задаються явно;
4) аналогічно кожен оптовий продавець отримує товар від виробника та
подає заявки дистриб'юторам, грунтуючись на заявках роздрібних торговців.
Цей процес продовжується далі вгору по ланцюжку до виробника, який
вирішує, скільки виробити продукції.

Рис. 10. Типова мережа ланцюгів постачань та агенти


(orders – замовлення; shipments – вантажі (товари))
Метою агентів в цьому моделюванні є управління їх власними запасами
таким чином, щоб мінімізувати їх вартість за допомогою раціональних
рішень, що грунтуються на тому, скільки товару слід замовляти в кожний
період часу. Коли запаси практично незначні і існує загроза їх спустошення,
агенти замовляють більше; коли запасів занадто багато і агенти несуть
великі витрати на зберігання цих запасів, вони замовляють менше товарів.
Кожен агент несе витрати на зберігання товару на складі. Агенти також
несуть накладні витрати, коли вони отримують заявку (замовлення) і не
можуть її відразу ж виконати через відсутність запасів на складі. Кожен
агент робить вибір між занадто великими запасами на складі, які збільшують
витрати на зберігання, і занадто маленькими запасами на складі, що
збільшує ризик того, що закінчаться товари і йому доведеться нести накладні
витрати. На рис. 11 наведена схема інформаційних та товарних потоків
агента оптової торгівлі при його функціонуванні в рамках ланцюга
постачань.
У цьому прикладі агенти ланцюгів постачань мають доступ тільки до
локальної інформації. Ніхто з агентів не бачить всього ланцюга постачань
або не може оптимізувати всю систему в цілому. Адаптивні правила
прийняття рішень агентів використовують тільки локальну інформацію для
прийняття рішень.

Рис. 11. Схема потоків (інформаційних та товарних), яка відображає


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

43. Приклади агентно-орієнтованого моделювання соціально-


економічних процесів та систем.
Використання агентно-орієнтованого моделювання в банківській діяльності
До числа задач зі сфери банківської діяльності, для вирішення яких доцільно
використовувати агентно-орієнтоване моделювання, можна віднести,
наприклад, такі:
1) вимірювання та мінімізація операційних ризиків управління активами
банку;
2) оцінка результату від виведення на ринок нових продуктів або
здійснення рекламних компаній. Однією з поширених областей
застосування імітації є оцінка результату від здійснення маркетингових
заходів. Типовими завданнями є оцінка прибутковості і ризиків виведення на
ринок нових продуктів (наприклад, нового кредитного пропозиції) або оцінка
ефективності рекламних компаній. Для вирішення цих завдань доцільно
застосовати агентне моделювання, при цьому описується типове
індивідуальну поведінку одного клієнта (агента) і на основі групи
взаємодіючих один з одним агентів можна оцінити ефект від реалізації
заходу.
3) оцінка вартості продуктів з підвищеним рівнем ризику. Актуальним
на сьогоднішній день практичним завданням є оцінка вартості (процентної
ставки) банківських продуктів з підвищеним рівнем ризику, наприклад,
депозитів з можливістю дострокового часткового зняття або поповнення,
кредитів з можливістю дострокового погашення. Додаткові можливості
призводять до збільшення процентного ризику і ризику ліквідності, які
повинні бути скомпенсовані зниженням процентної ставки для депозитів і
збільшенням процентної ставки за кредитами. Розрахунок відхилення
процентних ставок при різних сценаріях поведінки ринку і клієнтів може
бути проведений за допомогою імітаційного моделювання, зокрема, шляхом
використання агентного підходу.

44. Причини взаємодії агентів в мультиагентних системах


При взаємодії агентів можливості досягнення індивідуальних і формування
спільних цілей залежать від їхнього типу (стилю поводження).
Так, егоїстичний агент, взаємодіючи з альтруїстичним агентом, по суті
нав'язує йому свою мету.
Два егоїстичних агенти прагнуть досягти своїх власних цілей. У
випадку сумісних цілей вони обидва в стані досягти бажаного. При
виникненні конфлікту або обидва агента, або один з них не зможуть досягти
необхідного результату.
Процес формування взаємодії в МАС можна охарактеризувати за
допомогою чотирьох основних критеріїв:
- сумісність цілей чи намірів агентів;
- відношення агентів до ресурсів;
- досвід агентів, пов'язаний з деякою проблемною областю;
- зобов'язання агентів один перед іншим.
Розглянемо докладніше кожний з цих критеріїв.
1) Наявність сумісних цілей
Виділення основних типів взаємодії зручно почати з аналізу цілей агентів і
встановлення їхньої сумісності (чи несумісності). Зокрема, коли цілі агентів
абсолютно несумісні, то задоволення мети одного з них веде до
незадоволення цілей іншого. Так для трофічних агентів, наприклад, у
ситуації “хижак — жертва”, задоволення мети хижака веде до загибелі
жертви. Звідси зрозуміло, що необхідною умовою кооперації агентів (чи,
хоча б, їхньої байдужності один до одного) виявляється вимога про те, щоб
живучість (час життя) одного агента не зменшувалася при його взаємодії з
іншим агентом.
Модель “хижак — жертва” є гарним прикладом одночасного
співіснування стратегій співробітництва та антагонізму. Хижаки, утворивши
групу, кооперуються у процесі полювання за жертвами, знаходячись з ними у
відносинах антагонізму.
2) Недостача індивідуальних ресурсів
Під ресурсами розуміються будь-які засоби, корисні для досягнення
мети (а в більш широкому плані, необхідні для виживання агента).
Обмеженість ресурсів породжує конфлікти. Ці конфлікти виникають
тоді, коли в кількох агентів одночасно є потреба в тих самих ресурсах.
Прикладами таких ситуацій служать “пробки” на дорогах чи конфлікт двох
одночасно запущених програм. У цьому випадку взаємодія агентів носить
непродуктивний характер: один агент створює перешкоди іншому.
Відомі різні шляхи ліквідації чи попередження подібних конфліктів,
що спираються на механізми координації дій і вирішення конфліктів.
Найбільш простим способом вирішення конфлікту за ресурси є “право
сильного”: більш сильний агент відбирає ресурси в більш слабкого.
Прикладами більш тонких методів служать методи ведення переговорів, що
спрямовані на досягнення компромісів, тобто прагнуть нівелювати рівні
задоволення цілей у різних агентів.
3) Нездатність агента вирішити задачу поодинц
Ще однією причиною взаємодії агентів виявляється неузгодженість
між вимогами задачі і реальними можливостями агентів. Тут можна
виділити три різні ситуації:
1) агент здатний виконати задачу без сторонньої допомоги, тобто його
власних можливостей (з урахуванням їхнього оперативного поповнення)
досить для її успішного рішення.
2) агент може самостійно вирішити деяку задачу, але групою агентів вона
вирішується значно ефективніше (швидше, легше і т.ін.).
3) агент принципово не може вирішити задачу поодинці, оскільки в нього
явно відчувається недостача здібностей (знань, досвіду) для її рішення.
4) Наявність зобов'язань
− Усі соціальні системи спираються на досить складні структури
зобов'язань. Чи йде мова про договори, угоди чи обіцянки, чи
називається це відповідальністю, вірністю чи боргом, чи стосується це
малої групи, великого колективу чи всього співтовариства, факт
залишається фактом — зобов'язання лежать в основі спільних дій.
− Зобов'язання торкаються практично всіх аспектів соціального життя. В
агентів вони можуть відноситися до поставлених цілей (“я повинний за
час t потрапити у вузол мережі g”), виконаних дій (“я зобов'язуюся вам
заплатити”), висловленої думки (“я запевняю, що це судження щире”),
суспільних угод (“я зобов'язуюся дотримувати конвенції”) чи до
соціальної ролі (“я зобов'язуюся зробити усе, що в моїх
повноваженнях”).
− Відповідно, зобов'язання — один із ключових аспектів взаємодії у
випадку МАС, що складається з інтелектуальних агентів.
− Воно є найважливішою умовою зародження деякого порядку з хаосу
можливих взаємодій. Приймаючи зобов'язання, агент зв'язує себе
обіцянкою чи договором, що обмежує волю його поводження.
− По суті, зобов'язання — це форма визначення зв'язків між агентами, за
допомогою яких МАС стабілізує свої відносини, що сприяє її
надійному функціонуванню. Виходячи з існуючих зобов'язань, агенту
простіше передбачати поводження інших агентів, прогнозувати
майбутні події і планувати власні дії.
Усі зобов'язання в МАС можна розділити на наступні класи:
− зобов'язання агента перед іншим агентом;
− зобов'язання агента перед групою;
− зобов'язання групи перед агентом;
− зобов'язання агента перед самим собою.
Найчастіше зустрічаються зобов'язання одного агента перед іншим.
Зазвичай вони пов'язані або з обіцянкою одного агента перед іншим виконати
дії на його прохання, або з прийняттям відповідальності за передану
інформацію.
Зобов'язання агента перед групою також бувають двох типів. З однієї
сторони, агент також може пообіцяти виконати визначену задачу в інтересах
групи. З іншого боку, зобов'язання агента можуть стосуватися виконання
функцій, вимог чи угод, обумовлених його роллю в групі. Навпаки,
зобов'язання групи перед агентом звичайно пов'язані з захистом агента від
зовнішніх впливів, збереженням чи підвищенням його статусу і
забезпеченням ресурсами.

45. Програмування агентів. Вимоги до мов програмування агентів


Насамперед слід зазначити, що в даний час не існує мови програмування, яка
б повною мірою відповідала потребам технології мультиагентних систем.
Розроблювальні в даний час агентські системи використовують великий
спектр різних базових мов, але, на жаль, жодна з них не може розглядатися
як істинно “агентно-оріентована“.
Здійснюються спроби розширити існуючі мови, а також спроби
використовувати традиційні мови програмування.
Існує ряд проектів щодо розробки нових спеціалізованих агентських
мов.
Перш ніж почати порівняння та аналіз агентських мов, доцільно розглянути
основні вимоги, що висуваються до них.
Найбільш важливими представляються нижченаведені.
1) Забезпечення переносимості коду на різні платформи.
Ця вимога виникає завжди, коли необхідно забезпечити агента
властивістю мобільності. Щоб забезпечити мобільність агента, мова повинна
підтримувати механізм посилання, передачі, одержання і виконання кодів,
що містять агентів.
Існує два різних підходи, що вирішують проблему мобільності.
Перший - це передача агента в текстовій формі, як спеціального
сценарію (script) з наступною інтерпретацією цього сценарію на приймаючій
машині.
Другий - передача агента у формі машинно-незалежного байт-коду.
Цей байт-код генерується транслятором на етапі створення агентської
системи, посилається по мережі і виконується інтерпретатором байт-кодів на
приймаючому комп'ютері. Обидва ці методи мають свої переваги і недоліки.
2) Доступність на багатьох платформах.
Ця вимога безпосередня випливає з попередньої. Інтелектуальні агенти
повинні працювати в гетерогенному комп'ютерному середовищі. Будь-який
комп'ютер, що одержує агента, повинен бути здатним прийняти і виконати
його.
3) Підтримка мережної взаємодії.
Властивість агентів брати участь у переговорах і багато інших
особливостей агентів мають потребу в доступі до віддалених ресурсів.
Підтримка мережних послуг може включати сімейства відповідних
програмних інтерфейсів (APIs) таких як: sockets, інтерфейси до баз даних,
інтерфейси взаємодії об'єктів (CORBA, OLE, Active і т.ін.), спеціальні
механізми, вбудовані в мову (типу Remote Method Invocation у мові Java),
спеціальні примітиви мови для здійснення переговорів агента тощо.
4) Багатопотокова обробка (“Multithreading”).
Агент може виконувати деякі дії одночасно. А це означає, що мова
програмування агентів повинна включати підтримку паралельного виконання
різних функцій агента (типу “threads”) і різних примітивів синхронізації
(семафори, монітори, критичні секції, і т.ін.). Крім того, процес, який
об’єднує всіх агентів (і може, фактично, розглядатися як метаагент), повинен
підтримувати паралельне виконання агентів. Останнього можна домогтися за
допомогою окремої віртуальної машини з реалізованим режимом
витискуючої багатозадачности і власною стратегією розподілу часу.
5) Підтримка символьних обчислень.
Оскільки в рамках сучасних поглядів агент повинен активно
використовувати досягнення і методи штучного інтелекту, було б корисно
мати підтримку символьних обчислень і, можливо, логічного програмування,
вбудовану в мову (подібно PROLOG і LISP), а також мати вбудований
механізм висновків, що включає різні стратегії пошуку рішення.
Автоматичне керування пам'яттю і збирання сміття - стандартні засоби для
таких мов.
6) Безпека, зокрема, наявність системи захисту від несанкціонованого
доступу і “поганих кодів”.
Це важливо з багатьох причин. Мобільні агенти, що приходять з
мережі, можуть таїти в собі безліч небезпек для приймаючої машини, тому
що вони виконуються в її адресному просторі. Для забезпечення безпеки
перед передачею керування кожному агенту необхідно виконати процес
авторизації агента, тобто перевірити, чи зареєстрований він і чи має
відповідні повноваження (привілеї), щоб виконати ту чи іншу дію або
звернутися до деяких ресурсів. Система безпеки повинна запобігати будь-
якій несанкціонованій дії агента.
7) Дійсна об'єктна орієнтованість.
Мова повинна мати механізми спадкування, розглядати виклики
процедур як повідомлення, передані від одних об'єктів іншим, включати
можливості синхронної та асинхронної взаємодії об'єктів, а також допускати
паралельність усередині об'єкта.
8) Мовна підтримка властивостей агента.
Було б, імовірно, зручно мати підтримку специфічних для агента
властивостей, вбудовану в мову на рівні синтаксичних конструкцій, так, щоб,
наприклад, властивості типу “beliefs-desires-intentions” (BDI), інструкції для
переговорів і забезпечення мобільності, місця зустрічі, і т.ін. могли б бути
виражені за допомогою відповідних примітивів мови.

46. Програмування агентів. Класифікація мов програмування агентів


Нижче наведена класифікація мов, що найчастіше використовуються у
технології інтелектуальних агентів. Слід зазначити, що границі між групами
носять достатньо умовний характер.
1. Універсальні мови програмування (Java)
2. Мови, "орієнтовані на знання":
− мови представлення знань (KIF)
− мови переговорів і обміну знаннями (KQML, AgentSpeak,
April)
− мови специфікацій агентів.
3. Спеціалізовані мови програмування агентів (TeleScript)
4 Мови сценаріїв і scripting languages (Tcl/Tk)
5. Символьні мови і мови логічного програмування (Oz).
1) Мова Java
Java - імовірно, одна з найбільш популярних мов, що
використовуються останнім часом для програмування агентів. Java
представляє із себе мову програмування, подібну до C++ за синтаксисом, але
більш схожу зі Smalltalk і Objective C за ідеологією.
Система програмування на Java містить у собі віртуальну машину Java
і транслятор з Java у bytecode.
Мова Java передбачає створення додатків, що переносяться на різні
платформи. Програма, написана на Java, компілюється в спеціальний
машинно-незалежний байт-код. Потім цей код може бути виконаний за
допомогою інтерпретатора Java на будь-якому комп'ютері, де реалізована
Java Virtual Machine.
Java являє собою дійсно об’єктно-орієнтовану мову програмування із
сильною типізацією. Схожість з C++ робить її простою для вивчення
програмістами. В ній відсутній гранично чіткий розподіл пам'яті і для
підвищення надійності програм з мови виключена арифметика покажчиків.
Кожен тип даних розуміється як клас об'єктів, будь-яка функція є
методом класу. Її виклик розглядається з об’єктно-орієнтованих позицій як
посилка повідомлення об'єкту.
Існує вбудована розширювана бібліотека класів, що включає Abstract
Window Toolkit (AWT) для створення користувацьких інтерфейсів, класи
підтримки основних типів даних, threads, мережних можливостей, графіки,
мультимедіа тощо.
До засобів підвищення надійності варто віднести вбудовану в мову
обробку виняткових ситуацій (exceptions) і run-time контроль за виконанням
програми, такий, як перевірка виходу за границі масивів тощо.
Мова Java може бути використана для створення двох типів
програмного забезпечення: автономних додатків, що можуть включати
«рідний» (тобто машинно-залежний) код і аплетів - платформо-незалежних
додатків, що можуть приходити з мережі і запускатися за допомогою
підтримуючих Java Web - броузерів. Аплети можуть вбудовуватися в Web-
сторінки після спеціальної помітки мови HTML, що вказує посилання на
їхній код, і запускатися автоматично, коли сторінка відкривається в броузері.
При цьому забезпечується достатній рівень таємності переданої інформації. З
виходом специфікації Java IDL і нового продукту Black Widow компанії
PostModern Computing Technologies відкрилася можливість до зближення
Java додатків і комунікаційного стандарту CORBA 2.0 консорціуму OMG
(Object Management Group). Спеціальний компілятор дозволяє, виходячи з
описів інтерфейсів мовою IDL CORBA, генерувати код Java-об'єктів. Це
дозволить використовувати виклики об'єктів, що знаходяться в
корпоративних мережах, з Java додатків і зробити Java - об'єкти доступними
для цих викликів.
На сьогоднішній день Java доступна на наступних платформах:
Windows, Solaris (Intel, SPARC), Macintosh System 7.5.
2) Мова KQML
KQML - мова і протокол для підтримки взаємодії агентів у
розподілених додатках. Приклади можливих застосувань мови включають
інтелектуальні мультиагентні системи, такі як інтелектуальні агенти
планування, що підтримують розподілену обробку. Перед визначенням
інтерфейсів систем, заснованих на знаннях, необхідно перерахувати типові
компоненти таких систем:
- додаток, розрахований на непідготовленого користувача (End User
Application);
- систему, засновану на знаннях (Knowledge Based System);
- сховище спеціальних знань (Knowledge Base Repository) - сховище знань
про вміст бази знань - використовується для відстеження історії доступу,
цілісності та інших аспектів функціонування баз знань;
- систему керування базами даних (Database System);
- активні сенсори (Active Sensors) - відповідають за обмін даними
(знаннями) з “зовнішнім світом”.
Можливі різні способи взаємодії перерахованих компонентів.
Розроблювачі KQML виділяють 3 напрями, особливо важливі з
їхнього погляду, для комунікацій інтелектуальних агентів:
1) зв'язність (Connectivity) - фокусується на способі зв'язування агентів
між собою;
2) архітектура (Architecture) - акцентує увагу на способі побудови
майбутньої системи (буде система статичною, коли усі компоненти відомі
вже на етапі проектування/ реалізації чи динамічною);
3) комунікації (Communication) - даний напрямок розглядає
синхронність/асинхронність обміну повідомленнями між агентами.
Мова KQML складається з трьох рівнів:
- змісту,
- повідомлень і
- комунікацій.
KQML-вираз можна розглядати як вираз-вміст, поміщений у
повідомлення-обгортку, що, у свою чергу, поміщено в комунікаційну
обгортку. На рівні змісту знаходиться представлення знань на деякій мові.
Рівень повідомлень додає додаткові атрибути, такі як опис мови, на
якому виражений зміст, його онтологію і тип використовуваного методу
переговорів.
Комунікаційний рівень додає інформацію про відправника й
одержувача повідомлення, а також вказує на те, є повідомлення синхронним
чи асинхронним.
3) Мова KIF
KIF - це мова для обміну знаннями між різними програмами,
написаними різними людьми, на різних мовах і в різний час.
Вона:
- має декларативну семантику (значення виразів, представлених на цій
мові, може бути зрозуміле без звертання до спеціального інтерпретатора);
- вона логічно повна (забезпечує вираження довільних пропозицій
логіки предикатів першого порядку),
- забезпечує представлення знань про представлення знань;
- забезпечує представлення немонотонних правил висновку,
визначення об'єктів, функцій і відносин.
5) Мова April
April: Agent Process Interaction Language. Це мова високого рівня, що
пропонує простий інтерфейс до інших мов програмування типу C.
April орієнтована на реалізацію мультиагентних систем. Однак, April
не є мовою програмування агентів у тому сенсі, що вона не пропонує таких
високорівнених можливостей, як планувальники, механізми висновку на
основі правил і системи представлення знань.
April скоріше є об'єктно-орієнтованою мовою з засобами підтримки
паралельного виконання задач та такою, яка розглядає об'єкти як процеси.
Вона є придатною основою розширень для задач розподіленого штучного
інтелекту і для прикладного програмування мультиагентних систем.
6) Мова AgentSpeak
Аналогом класу в даній мові виступає сімейство, представником
(екземпляром) сімейства є агент. Кожен агент має базу даних відносин з
публічною і приватною частинами, безліч сервісів і безліч планів - процедур,
про які відомо лише те, виконані вони чи ні. Мова забезпечує розподіленість
збереження інформації в просторі функціонування агентів.
Кожен агентський сервіс може бути одного з наступних трьох типів:
achieve, query, told.
Кожен агентський план визначається за допомогою імені й опису
абстрактної ситуації, у якій він може бути застосований.
Під час роботи агента, якщо план є прийнятним в поточній ситуації,
виконуються дії, пов'язані з даним планом.
7)Мова TeleScript
Перша комерційна реалізація концепції мобільного агента була
зроблена в середовищі TeleScript-технології фірми General Magic. Дана
технологія заснована на метафорі електронного ринку - загальнодоступної
мережі (public network), що дозволяє продавцям і споживачам товарів і
послуг знаходити один одного і займатися спільним бізнесом.
TeleScript-технологія оперує наступними поняттями: місця (places),
агенти (agents), переміщення (travels), зустрічі (meetings), з'єднання
(connections), повноваження (authority) і дозволу (permits).
Далі коротко роз'ясняються перераховані поняття:
• Місця. TeleScript-технологія розглядає комп'ютерну мережу як
множину місць. Місце - стаціонарний процес на сервері, що пропонує
послуги вхідному агенту.
• Агенти. Комунікаційний додаток трактується як набір агентів.
Кожен агент займає конкретне місце. Однак, агент може переміщатися
від місця до місця, і тому він може займати декілька різних місць у те
саме час. Агентські процедури виконуються паралельно. У моделі
електронного ринку на типовому місці постійно присутній один,
виділений агент.
• Переміщення. Агенту надається можливість подорожувати з місця
на місце. Переміщення - відмітна ознака системи віддаленого
програмування, воно дозволяє агенту одержати віддалену послугу і
потім повернутися на місце його старту. TeleScript дозволяє
комунікаційному пакету (computer package) - агенту (його процедурам і
стану) переміщатися між комп'ютерами.
Для переміщення між комп'ютерами агент виконує інструкцію go. Інструкція
включає ticket - дані про бажане місце доставки та інші параметри
переміщення. У випадку, якщо переміщення пройшло успішно, агент
одержує повідомлення про це (його наступна інструкція виконується вже на
новому місці). У моделі електронного ринку інструкція go дозволяє агентам
покупців і продавців розташовувати один одного для більш ефективної
взаємодії.
• Зустрічі. Зустріч дозволяє агентам викликати процедури один
одного. Зустрічі - це те, що “змушує” агента переміщатися. Для зустрічі
з розташованим рядом (co-located) агентом, агент виконує інструкцію
meet. Дана інструкція містить вимогу (petition) - дані, що визначають
агента, що “хоче” зустрітися, та інші параметри зустрічі. Meet-
інструкція дозволяє покупцям і продавцям здійснювати транзакції.
• З'єднання. Вони дозволяють агентам обмінюватися інформацією з
різних місць. Для з'єднання агент виконує connect-інструкцію. Дана
інструкція містить кілька параметрів, таких як ціль (target) з'єднання.
Connect-інструкція дозволяє агентам обмінюватися інформацією на
відстані.
• Повноваження. Технологія дозволяє агенту чи місцеві розпізнавати
повноваження іншого агента/місця, причому агент чи місце не можуть
ні ховати, ні фальсифікувати свої повноваження. Анонімність
виключена. Технологією передбачена перевірка повноважень при
переміщенні агента між регіонами (network regions) мережі - набором
місць, розташованих на комп'ютерах, що володіють однаковими
повноваженнями. Для перевірки повноважень агент чи місце виконує
інструкцію name. Результатом виконання інструкції є telename - дані,
що дозволяють розпізнавати повноваження в рамках регіону мережі.
Дана можливість дозволяє захистити агентів і місця від проникнення
вірусів.
• Дозволи. Технологія дозволяє керувати призначенням повноважень.

Мова Agent-Tcl
Agent-Tcl - це система мобільних агентів, у якій агенти написані на Tcl
7.4 і Tk 4.0. Agent-Tcl активно використовується в задачах інформаційного
пошуку і прикладних програм інформаційного керування. Agent-Tcl у цілому
аналогічний мові TeleScript, за винятком того, що Agent-Tcl є більш
полегшеним і в даний час забезпечує обмежений захист. Альфа - версія
доступна на Unix платформах.
Мова Oz
Oz - паралельна, об'єктно-орієнтована мова програмування, що була
розроблена у DFKI (Німеччина). Існує кілька проектів у DFKI, що
використовують Oz разом з архітектурою агшентів InteRRa (див. тему 3).
InteRRa представляє із себе багаторівневу архітектуру, що побудована для
моделі взаємодіючих автономних агентів. DFKI пропонує паралельну мову
програмування, пристосовану для прикладних програм, що вимагають
складних символьних обчислень, організації кооперації агентів і деяких
можливостей керування в реальному масштабі часу. Реалізація Oz є
закінченим середовищем програмування, що включає обєктно-орієнтований
інтерфейс до Tcl/Tk. Прикладні програми на Oz вже використовувалися для
моделювання мультиагентних систем, обробки природної мови, віртуальної
реальності, графічних користувацьких інтерфейсів, планування і створення
розкладів.

47. Суть мультиагентних систем та основні поняття


Мультиагентні системи (МАС) відносяться до розподілених систем штучного
інтелекту. Спершу мультиагентні системи визначались як "вільно пов'язані
мережні засоби вирішення проблем, що працюють разом з метою вирішити
проблеми, які виходять за межі їхніх індивідуальних можливостей".
Дещо пізніше термін “мультиагентні системи” набув більш
загального значення і зараз, як правило, використовується для всіх типів
систем, які компонуються з автономних компонентів багаторазового
використання і для яких характерними є наступні риси:
1) кожний агент не має достатніх можливостей самостійно вирішити
проблему;
2) не існує глобальної системи управління;
3) дані є децентралізованими;
4) обчислення є асинхронним.
Дж. Люгер визначає МАС як обчислювальну програму, вирішувачі якої
розташовані в деякому середовищі і кожен з них здатний до гнучких,
автономних та соціально-організованих дій у напрямку визначеної мети.
В. Б. Тарасов дає формалізоване визначення МАС, не деталізуючи зміст
складових, що входять у формулу:
MAS = (A, E, R, ORG, ACT, COM, EV)
де А - множина агентів, Е - множина середовищ, що перебувають у
певних взаємовідносинах R та взаємодіють одне з одним, формують певну
організацію ORG, володіють набором індивідуальних і сумісних дій ACT
(стратегія поведінки і вчинків), включаючи можливі комунікативні дії COM
та можливість еволюції EV.
Розглядаючи суть МАС, важливо також визначитись в поняттях, що мають
безпосереднє відношення до цього класу систем. Насамперед мова повинна
йти про наступні поняття:
1) архітектури агентів – мова йде про аналіз агентів як незалежних
реагуючих/проактивних суб'єктів. По суті архітектура концептуалізує той
факт, що агенти повинні складатися з компонентів, які дозволяють
сприймати середовище, діяти та мислити;
2) архітектури систем агентів - мова йде про аналіз агентів як
взаємодіючих суб'єктів. Архітектури систем полегшують дії та взаємодії
агентів при наявності обмежень середовища, в якому вони знаходяться, та
дозволяють їм скористатися перевагою загальнодоступних послуг і
можливостей;
3) інфраструктури агентів – мова йде про забезпечення правил, якими
агенти повинні керуватися для того, щоб повідомляти та розуміти один
одного, ділячись таким чином наявними знаннями. Інфраструктура агентів
пов’язана з наступними аспектами:
а) онтології: вони дозволяють агентам “домовлятися” про значення
понять;
б) протоколи зв'язку: вони описують мови для зв'язку агентів;
в) інфраструктури зв'язків: вони конкретизують канали для зв'язку між
агентами;
г) протоколи взаємодій: вони описують домовленості щодо взаємодій
агентів.
Одним із вагомих факторів заохочення розвитку МАС стало зростання
популярності глобальної комп’ютерної мережі Internet, яка забезпечує базис
для відкритого середовища, де агенти взаємодіють один з одним для того,
щоб досягнути своїх індивідуальних або загальних цілей.
Щоб взаємодіяти в такому середовищі, агентам насамперед потрібно
вирішити дві проблеми:
- по-перше, вони повинні бути спроможними знайти один одного
(так як агенти можуть з'являтися, зникати і переміщуватися в будь-який
момент часу), і
- по-друге, після успішного закінчення пошуку агенти повинні бути в
змозі взаємодіяти між собою.
Розглянемо детальніше дві вище виділені проблеми, які стоять перед
агентами в рамках МАС.
1) Пошук агентів для співробітництва.
Мова йде насамперед про потребу в механізмах реклами, пошуку,
використання, презентації, управління та удосконалення послуг та
інформації, що надаються агентами. Щоб реалізувати це на практиці, було
запропоноване поняття “середніх” агентів.
Середні агенти є суб'єктами, стосовно яких інші агенти рекламують
свої можливості і які не є ні замовниками, ні постачальниками з точки зору
можливих угод між агентами.
Перевага середніх агентів полягає в тому, що вони дозволяють МАС
ефективно діяти у випадках появи, зникнення та проявів мобільності інших
агентів. Існує кілька типів агентів, які підпадають під визначення “середніх”
(при цьому слід зазначити, що досить важко чітко вказати різницю між цими
типами):
а) агенти-помічники (facilitators): це агенти, яким інші агенти
“здають” свою автономію в обмін на послуги. Агенти-помічники можуть
координувати види діяльності інших агентів і можуть задовольнити прохання
інших підпорядкованих агентів;
б) агенти-посередники (mediators): це агенти, які використовують
наявні знання з метою надання послуг додатків вищого рівня. При цьому
слід зазначити, що визначення агента-помічника та агента-посередника дещо
перекриваються;
в) агенти-брокери або просто брокери (brokers): це агенти, які отримують
прохання і виконують дії, використовуючи послуги від інших агентів в
поєднанні з їхніми власними ресурсами ;
г) агенти-мейчмейкери та жовті сторінки (matchmakers та yellow
pages): це агенти, які допомагають знайти послуги інших агентів, виходячи
з оголошених (прорекламованих) можливостей [124];
д) агенти-блекбоарди (blackboards): це агенти-сховища, які
отримують і утримують (зберігають) запити від інших агентів для подальшої
обробки.
2) Взаємодія агентів.
Взаємодія - це одна з найбільш важливих ознак агентів. Іншими
словами, в природі агентів закладено періодичну взаємодію для того, щоб
розділяти інформацію, знання та завдання з метою досягнення власних цілей.
При розгляді взаємодії агентів традиційно виділяють три ключові елементи:
1) загальну мову зв'язку агентів та протокол;
2) загальний формат для змісту зв'язку;
3) загальнодоступну онтологію.

Розглянемо детальніше деякі з цих елементів.


1) Мови зв'язку агентів. Існує два основних підходи до проектування мови
зв'язку агентів.
Перший підхід є процедурним, в рамках якого зв'язок базується на
змісті, що реалізується. Для його імплементації можуть використовуватися
такі мови програмування, як, наприклад, Java або Tcl.
Другий підхід є декларативним - він базується на операторах опису,
таких, як, наприклад, визначення, припущення тощо. Можливо, через
обмеження процедурного підходу (наприклад, зміст, що реалізується, може
бути важким для контролю, координації та злиття), саме декларативним
мовам надається перевага під час проектування мови зв'язку агентів.
Більшість імплементацій декларативних мов базуються на діях, таких як,
наприклад, запити чи команди, що в загальному випадку мають назву
перформативностей.
Однією із найбільш популярних декларативних мов є мова запиту та
маніпулювання знаннями (МЗМЗ)(детальніше буде розглянута в наступних
лекціях).
2) Онтології. Онтології визначаються як схеми специфікацій для опису
понять та їхніх відношень у домені інтересу (тобто у конкретній предметній
області). Важливо, щоб агенти не тільки мали онтології для концептуалізації
домену, але також щоб вони мали онтології з подібними - якщо навіть не
однаковими - конструкціями. Такі онтології, якщо вони існують,
називаються загальними онтологіями. В тому випадку, коли агенти, що
взаємодіють, використовують загальну онтологію, вони в змозі розуміти і
навіть передбачувати поведінку собі подібних.
Онтолігва часто згадується в літературі як система, яка надає словник
для визначення багаторазового використання, портативних та таких, що
можуть бути розподіленими, онтологій. Визначення онтолігви приводяться
на основі використання таких синтаксису та семантики, які характерні для
мови формату обміну знаннями (ФОЗ). (В рамках останньої зроблена спроба
стандартизувати схеми представлення знань на основі обчислення предикатів
першого порядку).
Як було вказано вище, одним із найбільш суттєвих моментів в процесі
побудови мультиагентних систем є розробка архітектури таких систем. На
сьогодні вже існують приклади таких архітектур. В їх рамках можна
виділити деякі типові елементи ( агенти), а саме:
1) мінімальні агенти: це абстрактна загальна назва всіх агентів в
архітектурі. Вони імплементують основні комунікативні функціональні
можливості, необхідні для взаємодій між агентами;
2) локальні зонні координатори: як правило, існує один локальний
зонний координатор на область (зону). Локальні зонні координатори
представляють агентів всередині області і допомагають їм здійснювати
міжагентні взаємодії. Вони також забезпечують послуги довідника ''білих
сторінок'' для агентів в конкретній області;
3) сервери “жовтих сторінок”: вони відповідають за збереження і
створення доступної інформації про послуги, які рекламуються агентами;
4) сервери доменного співробітництва: вони забезпечують віртуальні
середовища, які підтримують зв’язки та розподіл інформації в
мультиагентних системах.

48. Таксономія програмних агентів. Мобільні та інформаційні/Internet


агенти
Існує декілька підходів щодо класифікації існуючих програмних агентів.
1) По-перше, агенти можуть бути класифіковані за рухливістю, тобто
їхньою здатністю пересуватися в рамках деякої мережі. За цією ознакою
агенти можуть бути
- статичними або
- рухливими (мобільними).
2) По-друге, вони можуть бути класифіковані або як дорадчі, або як
реагуючі (реактивні).
Дорадчі агенти походять від парадигми дорадчого мислення: агенти
володіють внутрішньою символікою, моделлю мислення і вони залучаються
в планування і переговори для того, щоб досягнути координації з іншими
агентами.
Реактивні агенти на відмінну дорадчих не мають ніяких внутрішніх,
символічних моделей власного середовища, і діють шляхом реагування на
поточний стан оточення, в якому знаходяться.
3) По-третє, агенти можуть бути класифіковані на основі кількох основних
атрибутів, котрі агенти повинні проявляти. До переліку таких атрибутів
входять: автономія, можливість навчання та кооперація
(співробітництво). На основі такого набору атрибутів можна визначити
чотири типи агентів, які ввійдуть в типологію: партнерські агенти,
партнерські агенти з можливістю навчання, інтерфейсні агенти і "думаючі"
агенти.
) По-четверте, агенти можуть інколи бути прокласифіковані за їхніми
ролями (краще, якщо є кілька ролей), наприклад, інформаційні в глобальних
мережах.
Ця категорія агентів зазвичай "експлуатує" машини пошуку в Internet
(наприклад, WebCrawlers, Lycos і Spiders). По суті вони допомагають
управляти величезною кількістю інформації в глобальних комп’ютерних
мережах, таких як Internet, тому більшість авторів класифікують їх як
інформаційних або Internet-агентів. Такі інформаційні агенти можуть бути
статичними, рухливими або дорадчими.
Очевидно, що також за ролями можна виділити і інші класи агентів –
а) агенти для формування звітів,
б) агенти для презентацій,
в) агенти для аналізу та дизайну,
г) агенти для тестування,
д) агенти для пакування тощо.
Список з подібним переліком може бути досить великим.
5) По-п’яте, слід також виділити і категорію гібридних агентів як
об'єднання двох або більше філософій агентів в єдиному агенті.
Насправді, агенти існують в мультивимірному просторі, саме тому не
слід використовувати дво- або трьохмірну матрицю, щоб класифікувати їх –
такий підхід не буде повним та точним. Однак найчастіше фахівцями
виділяються наступні сім типів агентів:
- партнерські агенти;
- інтерфейсні агенти;
- рухливі (мобільні) агенти;
- інформаційні/Internet агенти;
- реагуючі (реактивні) агенти;
- гібридні агенти;
- інтелектуальні ("думаючі") агенти.
Програмні агенти можна розподілити на три групи:
- для настільних систем,
- для інтранет-мереж і
- для Internet.
Сьогодні користувачі комп’ютерів найкраще знайомі з агентами для
настільних систем.
Найпростішими прикладами таких агентів є «майстри» (Wizards), які
автоматично настроюють додатки для персональних комп’ютерів відповідно
до побажань користувача, і «офісні помічники» (Offiсe Assistants), які
вносять пропозиції щодо підвищення продуктивності на основі спостережень
за тим, як використовуються ті або інші програмні блоки.
У рамках корпоративних мереж програмні агенти можна використовувати,
наприклад,
- для автоматизації процесів керування потоками даних,
- для пошуку в базах даних і
- для організації взаємодії між різними компонентами системи.
Мобільні агенти – це обчислювальні програмні модулі, здатні до блукання
“в глобальних комп’ютерних мережах” (ГКМ) (таких, як, наприклад,
Internet), до взаємодії зі сторонніми хостами на предмет збирання інформації
в інтересах власника і до “повернення додому” після того, як були виконанні
обов'язки, встановлені користувачем. Такі обов'язки можуть знаходитися в
широкому діапазоні – від бронювання авіаквитків до управління мережею
передачі даних. Однак, мобільність не є ні необхідною, ні достатньою
умовою для існування цього класу агентів. Мобільні агенти є агентами
завдяки тому, що вони автономні і що вони співробітничають (хоча по-
різному) з партнерськими агентами.
Наприклад, вони можуть кооперуватися або установлювати зв’язок з іншим
агентом, визначаючи місцезнаходження деяких з його внутрішніх об'єктів та
використовуючи методи, відомі іншим агентам. Виконуючи це, агент
обмінюється даними або інформацією з іншими агентами. Це є дуже
важливим моментом – насамперед тому, що громадське сприйняття агентів
(завдяки популярній комп’ютерній пресі) майже синонімічне з мобільними
агентами.
1) Гіпотеза, мотивація і переваги. Ключова гіпотеза, що лежить в основі
мобільних агентів – це те, що агентам не потрібно бути стаціонарними;
дійсно, ідея зводиться до того, що значні переваги, які зростають в
конкретних додатках, досягаються за рахунок уникнення статичності агентів
в середовищі діяльності таких агентів.
Проте ці переваги значною мірою не є функціональними, тобто можна
було б обійтися і без рухливих агентів, тобто мати тільки статичних, але
витрати такого переходу є високими. По суті, мобільні агенти забезпечують
ряд практичних, а не функціональних, переваг, яких немає у статичних
аналогів. Мотивація щодо використання мобільних агентів – це:
а) зменшення витрат на зв'язок: може бути безліч необробленої інформації,
яку потрібно дослідити, щоб визначити її доречність. Передача такої
необробленої інформації може привести до значних витрат часу і до
“блукання” мережами;
д) надання природного середовища для розвитку та здійснення торгових
послуг “вільного ринку”. Нові служби можуть приходити і “діяти” більш
динамічно і багато більш гнучких служб може співіснувати з традиційними,
надаючи більше альтернатив для користувачів;
е) гнучка розподілена архітектура обчислення: мобільні агенти
забезпечують унікальну розподілену архітектуру обчислення, яка функціонує
відмінно від статичних аналогів. Це передбачає нові способи виконання
розподілених розрахунків;
є) мобільні агенти представляють можливість для радикального і
привабливого повторного переосмислення процесів проектування в цілому.
Це може привести до появи нових інноваційних продуктів, що базуються на
технологіях мобільних агентів.
Інформаційні агенти з’явилися через нагальну потребу в інструментальних
засобах, які повинні допомогти управляти “вибуховим” зростанням
інформації сьогодні і в майбутньому. Інформаційні агенти виконують роль
управління, маніпулювання чи порівняння інформації від багатьох
розподілених джерел.
Важко відрізнити цей тип агентів від інших, раніше розглянутих
(наприклад, партнерських чи інтерфейсних агентів). Суть відмінностей
можна висловити таким чином: інформаційні агенти визначаються тим,
що вони роблять, на відмінну від партнерських чи інтерфейсних агентів,
які визначаються тим, чим вони є (наприклад, через набір атрибутів).
1) Гіпотеза, мотивація і переваги. Основна гіпотеза появи інформаційних
агентів зводиться до того, що вони можуть покращити, але звичайно не
ліквідувати специфічну проблему інформаційного перевантаження, і що
вони є загальним елементом інформаційного управління в інформаційну еру.
Основна задача в цьому плані – створити простий інтерфейс
користувача, причому такий, щоб інформаційний пошук і перегляд на
основі використання інформаційних агентів став таким же природним
для людей, як підняття телефонної трубки або читання газети.
Інформаційні агенти повинні бути забезпечені можливостями
отримання знань про те, де шукати інформацію, як її знайти і як її
порівнювати.
2) Принципи роботи інформаційних агентів. Як було зазначено раніше,
інформаційні агенти мають змінні характеристики:
- вони можуть бути статичні або мобільні;
- вони не є кооперативними або соціальними і
- вони можуть або не можуть вчитися.
По суті, немає стандартного методу щодо огляду їх дій.
Internet-агенти повинні бути рухливими, тобто вони повинні бути в
змозі перетинати WWW, збирати інформацію і звітувати про те, що вони
забирають до основної пам’яті. Однак, це ще не є нормою.
На нижче наведеному рисунку представлено, як працює статичний
інформаційний агент. Рисунок дає уявлення про те, як інформаційний агент,
звичайно в рамках деякого броузера, наприклад, Netscape, використовує хост
інструментальних засобів управління Internet (наприклад, Spiders) та машини
пошуку для того, щоб зібрати інформацію. Інформаційний агент може бути
пов’язаний з деяким специфічним індексатором, наприклад, Spider. Spider -
це індексатор, спроможний здійснювати пошук за допомогою WWW,
насамперед, в глибину, та зберігати топологію WWW в СУБД та повний
індекс URL-адрес в WAIS. Інші машини пошуку/індексації або спайдери, такі
як, наприклад, Lycos або Webcrawler, можуть використовуватися аналогічним
чином для побудови індексу.
Інформаційний агент користувача, перед яким поставлено задачу
порівняння інформації в деякій предметній області, виставляє різні пошукові
запити до однієї чи кількох URL-пошукових машин для виконання запиту.
Частина результатів пошуку може бути розміщена в локальну кеш-пам’ять.
Результатна інформація порівнюється і надсилається назад користувачеві.

49. Таксономія програмних агентів. Партнерські та інтерфейсні агенти


Існує декілька підходів щодо класифікації існуючих програмних агентів.
1) По-перше, агенти можуть бути класифіковані за рухливістю, тобто
їхньою здатністю пересуватися в рамках деякої мережі. За цією ознакою
агенти можуть бути
- статичними або
- рухливими (мобільними).
2) По-друге, вони можуть бути класифіковані або як дорадчі, або як
реагуючі (реактивні).
Дорадчі агенти походять від парадигми дорадчого мислення: агенти
володіють внутрішньою символікою, моделлю мислення і вони залучаються
в планування і переговори для того, щоб досягнути координації з іншими
агентами.
Реактивні агенти на відмінну дорадчих не мають ніяких внутрішніх,
символічних моделей власного середовища, і діють шляхом реагування на
поточний стан оточення, в якому знаходяться.
3) По-третє, агенти можуть бути класифіковані на основі кількох основних
атрибутів, котрі агенти повинні проявляти. До переліку таких атрибутів
входять: автономія, можливість навчання та кооперація
(співробітництво). На основі такого набору атрибутів можна визначити
чотири типи агентів, які ввійдуть в типологію: партнерські агенти,
партнерські агенти з можливістю навчання, інтерфейсні агенти і "думаючі"
агенти.

) По-четверте, агенти можуть інколи бути прокласифіковані за їхніми


ролями (краще, якщо є кілька ролей), наприклад, інформаційні в глобальних
мережах.
Ця категорія агентів зазвичай "експлуатує" машини пошуку в Internet
(наприклад, WebCrawlers, Lycos і Spiders). По суті вони допомагають
управляти величезною кількістю інформації в глобальних комп’ютерних
мережах, таких як Internet, тому більшість авторів класифікують їх як
інформаційних або Internet-агентів. Такі інформаційні агенти можуть бути
статичними, рухливими або дорадчими.
Очевидно, що також за ролями можна виділити і інші класи агентів –
а) агенти для формування звітів,
б) агенти для презентацій,
в) агенти для аналізу та дизайну,
г) агенти для тестування,
д) агенти для пакування тощо.
Список з подібним переліком може бути досить великим.
5) По-п’яте, слід також виділити і категорію гібридних агентів як
об'єднання двох або більше філософій агентів в єдиному агенті.
Насправді, агенти існують в мультивимірному просторі, саме тому не
слід використовувати дво- або трьохмірну матрицю, щоб класифікувати їх –
такий підхід не буде повним та точним. Однак найчастіше фахівцями
виділяються наступні сім типів агентів:
- партнерські агенти;
- інтерфейсні агенти;
- рухливі (мобільні) агенти;
- інформаційні/Internet агенти;
- реагуючі (реактивні) агенти;
- гібридні агенти;
- інтелектуальні ("думаючі") агенти.

Програмні агенти можна розподілити на три групи:


- для настільних систем,
- для інтранет-мереж і
- для Internet.
Сьогодні користувачі комп’ютерів найкраще знайомі з агентами для
настільних систем.
Найпростішими прикладами таких агентів є «майстри» (Wizards), які
автоматично настроюють додатки для персональних комп’ютерів відповідно
до побажань користувача, і «офісні помічники» (Offiсe Assistants), які
вносять пропозиції щодо підвищення продуктивності на основі спостережень
за тим, як використовуються ті або інші програмні блоки.
У рамках корпоративних мереж програмні агенти можна використовувати,
наприклад,
- для автоматизації процесів керування потоками даних,
- для пошуку в базах даних і
- для організації взаємодії між різними компонентами системи.
Партнерським агентам притаманні, насамперед, автономія та
співробітництво (з іншими агентами) для того, щоб виконати завдання для
своїх власників. Вони можуть навчатися, але цей аспект не є головним в
процесі їх діяльності. Для того, щоб мати скоординований набір
партнерських агентів, останнім можливо необхідно буде вести переговори з
метою досягнення взаємно прийнятних угод щодо деяких моментів.
Якщо говорити коротко, то до числа особливостей цих агентів слід
віднести автономію, соціальну здатність, можливість давати відповіді та
проактивність. А це означає, що вони можуть (або повинні) діяти
раціонально і автономно у відкритих і з часовими обмеженнями
мультиагентних середовищах. Вони повинні бути статичними, великими
“крупнозернистими” агентами.
1) Гіпотеза/ціль. Гіпотеза, тобто правильне пояснення або мета для
систем із партнерських агентів – це специфікація мети в теорії розподіленого
штучного інтелекту (РШІ), як зазначено Хансом та Сайном. Перефразовуючи
цих авторів, можна стверджувати, що створення системи, яка зв'язує окремі
розвинені партнерські агенти – це “ансамбль” агентів, здатних функціонувати
з більшими можливостями, а ніж можливості окремих членів (агентів).
Формально це можна представити так:
V(Σagenti)>max(V(agenti)) (1)
де V представляє "сумарність дій". Вона може мати довільне
визначення, включаючи такі атрибути, як, наприклад, швидкість, виконання
найгіршого випадку, надійність, пристосованість, точність або деяка
комбінація цих атрибутів.
2) Мотивація. Мотивація для системи, що складається з партнерських
агентів, може включати один або кілька наступних випадків (вони є
спеціалізацією мотивації в системах розподіленого штучного інтелекту):
а) для вирішення проблем, які є дуже великими для одиночного
централізованого агента в плані обмеження ресурсів чи наявного ризику;
б) для того, щоб зв’язати та забезпечити взаємодію численних існуючих
систем зі спадщиною, тобто таких, як експертні системи, системи підтримки
прийняття рішень тощо;
в) для того, щоб забезпечити вирішення розподілених проблем, наприклад,
таких які є в розподілених мережах (з сенсорами) або в системах контролю
повітряного руху;
г) для того, щоб забезпечити рішення, які базуються на розподілених
джерелах інформації, наприклад, якщо мова йде про розподілені он-лайн
джерела інформації, то природнім є використання підходу на основі
розподілених і партнерських агентів;
д) для того, щоб забезпечити рішення там, де експертиза є розподіленою,
наприклад, в галузі охорони здоров’я;
е) для того, щоб збільшити модульність (яка зменшує складність),
швидкість (завдяки паралелізму), надійність (завдяки надмірності), гнучкість
(тобто нові завдання компонуються більш легко від більш модульної
організації) і повторну вигоду на рівні знань (завдяки розподілу ресурсів);
є) для того, щоб досліджувати результати в інших сферах, наприклад, для
розуміння взаємодій між людськими спільнотами.
При розгляді інтерфейсних агентів акцент слід робити на таких якостях, як
автономність та навчання, що дозволяє виконувати завдання для своїх
власників.
Патті Маєс, "захисник" цього класу агентів, відмічає, що основною
відмінністю інтерфейсного агента є те, що він є особистим асистентом,
який співробітничає з користувачем в тому ж робочому середовищі. При
цьому слід визначитись в тому, чим відрізняється співробітництво з
користувачем від співробітництва з іншими агентами у випадку партнерських
агентів.
Співробітництво з користувачем не потребує ясної мови спілкування
агентів, яка є необхідною у випадку партнерських агентів.
Інтерфейсні агенти підтримують та забезпечують допомогу, наприклад, при
навчанні користувача на предмет використання конкретних додатків, таких
як електронна таблиця або операційна система.
Агент користувача спостерігає і контролює дії, які вибираються
користувачами в інтерфейсі, навчає новим найкращим діям та пропонує
кращі шляхи виконання завдань.
По суті агент користувача служить автономним особистим асистентом,
який співробітничає з користувачем стосовно завершення деякого завдання в
додатку.
Щодо навчання, то інтерфейсні агенти зазвичай “вчаться” для того, щоб
краще допомагати користувачеві чотирма способами:
1) за допомогою спостерігання і імітування користувачів (тобто навчання
від користувача);
2) через отримання позитивного і негативного зворотного зв'язку від
користувача (навчання від користувача);
3) за допомогою отримання ясних інструкцій від користувача (навчання від
користувача);
4) за допомогою запиту у інших агентів поради (тобто навчання від
подібних собі).
б) обмежені місцеві ресурси: потужність обробки і обсяг зберігання на
локальній машині можуть бути дуже обмеженими (тільки для обробки і
збереження результатів пошуку) – саме це досягається за рахунок
використання мобільних агентів;
в) полегшена координація: значно простішою є координація ряду
віддалених і незалежних запитів і тільки порівняння всіх результатів у
певному місці;
г) асинхронна обробка (обчислення): користувач може спонукати своїх
агентів і на виконання ще чогось іншого і результати будуть записані у його
поштову скриньку дещо пізніше. Вони (агенти) можуть діяти навіть тоді,
коли користувач навіть не підключений;
1) Гіпотеза/цілі. Мета дослідження інтерфейсних агентів (як це бачить Маєс)
– це працювати в напрямку такої мрії: мати інтерфейси “людина-комп’ютер”,
що управляються опосередковано. Аргументом є наступне.
Існуючі інтерфейси “користувач – обчислювальна система” тільки
реагують на пряму маніпуляцію, тобто комп'ютер пасивний і завжди чекає на
те, щоб виконати надзвичайно конкретизовані інструкції від користувача. Це
забезпечує лише незначну проактивну допомогу (вона навіть може бути
відсутньою) для складних задач або для проведення таких дій, як пошук
інформації, які можуть тривати невизначений час.
Отже, ціль - мігрувати від концепції прямого маніпулювання до концепції, у
відповідності з якою користувач делегує деякі завдання програмним
інтерфейсним агентам (проактивним і таким, що надають допомогу) для того,
щоб як найшвидше пристосувати користувачів-новачків. Суть полягає в
тому, що ці агенти можуть бути надійні для компетентного виконання деяких
завдань, які делегуються їм користувачами. Більш точно це означає, що “при
конкретних умовах інтерфейсний агент може програмувати себе” (тобто він
може набути знання, які йому потрібні для допомоги користувачеві). Агент
володіє мінімумом допоміжних базових знань, і він вивчає відповідну
“поведінку” від користувача та від інших агентів.
2) Мотивація. Підсумовуючи, можна сказати, що інтерфейсний агент є квазі-
інтелектуальною часткою програмного забезпечення, яке допомагає
користувачеві, взаємодіючи з одним або більшою кількістю комп'ютерних
додатків.
Таким чином, мотивацію дії інтерфейсних агентів можна
сформулювати так:
“Це агенти, які зменшують обсяг робіт та інформаційне
перевантаження користувача”.
3) Переваги/ролі. Можна виділити три загальні переваги інтерфейсних
агентів.
По-перше, вони приводять до зменшення обсягів робіт, які повинні
виконувати кінцевий користувач та розробник додатків.
По-друге, агент з часом може адаптуватися до переваг користувача та
його звичок.
Накінець, знання справи (ноу-хау) між різними користувачами в
суспільстві може бути розділено (наприклад, коли агенти навчаються від
подібних собі).

50. Таксономія програмних агентів. Реактивні та гібридні агенти


Існує декілька підходів щодо класифікації існуючих програмних агентів.
1) По-перше, агенти можуть бути класифіковані за рухливістю, тобто
їхньою здатністю пересуватися в рамках деякої мережі. За цією ознакою
агенти можуть бути
- статичними або
- рухливими (мобільними).
2) По-друге, вони можуть бути класифіковані або як дорадчі, або як
реагуючі (реактивні).
Дорадчі агенти походять від парадигми дорадчого мислення: агенти
володіють внутрішньою символікою, моделлю мислення і вони залучаються
в планування і переговори для того, щоб досягнути координації з іншими
агентами.
Реактивні агенти на відмінну дорадчих не мають ніяких внутрішніх,
символічних моделей власного середовища, і діють шляхом реагування на
поточний стан оточення, в якому знаходяться.
3) По-третє, агенти можуть бути класифіковані на основі кількох основних
атрибутів, котрі агенти повинні проявляти. До переліку таких атрибутів
входять: автономія, можливість навчання та кооперація
(співробітництво). На основі такого набору атрибутів можна визначити
чотири типи агентів, які ввійдуть в типологію: партнерські агенти,
партнерські агенти з можливістю навчання, інтерфейсні агенти і "думаючі"
агенти.

) По-четверте, агенти можуть інколи бути прокласифіковані за їхніми


ролями (краще, якщо є кілька ролей), наприклад, інформаційні в глобальних
мережах.
Ця категорія агентів зазвичай "експлуатує" машини пошуку в Internet
(наприклад, WebCrawlers, Lycos і Spiders). По суті вони допомагають
управляти величезною кількістю інформації в глобальних комп’ютерних
мережах, таких як Internet, тому більшість авторів класифікують їх як
інформаційних або Internet-агентів. Такі інформаційні агенти можуть бути
статичними, рухливими або дорадчими.
Очевидно, що також за ролями можна виділити і інші класи агентів –
а) агенти для формування звітів,
б) агенти для презентацій,
в) агенти для аналізу та дизайну,
г) агенти для тестування,
д) агенти для пакування тощо.
Список з подібним переліком може бути досить великим.
5) По-п’яте, слід також виділити і категорію гібридних агентів як
об'єднання двох або більше філософій агентів в єдиному агенті.
Насправді, агенти існують в мультивимірному просторі, саме тому не
слід використовувати дво- або трьохмірну матрицю, щоб класифікувати їх –
такий підхід не буде повним та точним. Однак найчастіше фахівцями
виділяються наступні сім типів агентів:
- партнерські агенти;
- інтерфейсні агенти;
- рухливі (мобільні) агенти;
- інформаційні/Internet агенти;
- реагуючі (реактивні) агенти;
- гібридні агенти;
- інтелектуальні ("думаючі") агенти.

Програмні агенти можна розподілити на три групи:


- для настільних систем,
- для інтранет-мереж і
- для Internet.
Сьогодні користувачі комп’ютерів найкраще знайомі з агентами для
настільних систем.
Найпростішими прикладами таких агентів є «майстри» (Wizards), які
автоматично настроюють додатки для персональних комп’ютерів відповідно
до побажань користувача, і «офісні помічники» (Offiсe Assistants), які
вносять пропозиції щодо підвищення продуктивності на основі спостережень
за тим, як використовуються ті або інші програмні блоки.
У рамках корпоративних мереж програмні агенти можна використовувати,
наприклад,
- для автоматизації процесів керування потоками даних,
- для пошуку в базах даних і
- для організації взаємодії між різними компонентами системи.
Реактивні агенти представляють спеціальну категорію агентів, які не
володіють внутрішніми, символічними моделями своїх оточень; замість
цього вони діють/реагують до певної міри на поточний стан оточення, в
якому знаходяться.
Реактивні агенти вперше розглядалися в роботах Брукса та Агре і
Чепмена, але відтоді було створено багато теорій архітектур і мов для цього
класу агентів. Проте, не ці речі (мови, теорії чи архітектури) є найбільш
визначальними для характеристики даного класу агентів – головним є те,
що ці агенти є відносно простими і взаємодіють з іншими агентами
звичайним чином.
Маєс виділяє три ключові ідеї, які характеризують реактивні агенти.
По-перше, це “неочікувана функціональність”, тобто динаміка
взаємодії веде до неочікуваної складності. Саме тому не існує специфікації
для того, щоб описати поведінку реактивних агентів.
По-друге, наявність “декомпозиції задач”: реактивні агенти
розглядаються як набір модулів, які діють автономно і відповідають за
специфічні завдання (наприклад, зчитування, управління двигуном,
розрахунки тощо). Зв'язок між модулями мінімізований і цілком низького
рівня.
По-третє, реактивні агенти мають тенденцію реагувати на зображення
– образи, які знаходяться близько (необроблені дані в додатках), в
протилежність високорівневим символічним зображенням, які
використовуються іншими типами агентів.
Слід сказати, що на сьогодні існує відносно незначна кількість прикладів
проактивного використання реактивних агентів. Частково, завдяки цій
причині, не існує стандартного методу опису їхньої дії.
Насамперед, реактивні агенти використовуються в фізичних
(технічних) системах як роботи. Наприклад, дослідники концерну створили
Philips цифрові відео та 3-мірні аніматори на основі реактивних агентів.
Гібридні агенти
1) Гіпотеза, мотивація і переваги. Досі було розглянуто п’ять типів агентів:
партнерські, інтерфейсні, мобільні, Internet-агенти та реактивні агенти.
Дебати щодо того, який з цих типів є кращій, носять, скоріше академічний
характер, оскільки кожний із типів має свої переваги і недоліки.
Способом поєднання переваг є створення гібридних агентів. По суті
мова йде про створення деяких архітектур агентів. На сьогодні існує кілька
архітектур гібридних агентів. На нижче наведеному рисунку представлено
архітектуру, запропоновану Фішером та іншими. Ця архітектура може
використовуватися для того, щоб створити такого агента, як, наприклад,
автономний робот.

Архітектура складається з бази знань агентів і зв'язаного блоку управління.


Є також три шари управління в цій архітектурі:
- шар, що базується на поведінці (BBL),
- локальний шар планування (LPL) і
- кооперативний шар планування (CPL).
Очевидно, архітектура є симбіозом дорадчої і реактивної філософії.
Реагуюча частина каркаса, який слугує для дієвості, реактивності,
імплементується за допомогою BBL, який містить набір зразків поведінки
(PS), точніше, правила щодо дій в конкретних ситуаціях. Вони описують
реагуючу “майстерність” агента, який здійснює швидке розпізнавання
ситуації для того, щоб реагувати на критичні в часі ситуації. Проміжний LPL-
шар імплементує локальну керовану метою поведінку, в той час як найвищий
CPL-шар дає агенту можливість спланувати/кооперуватися з іншими
агентами для того, щоб досягнути мульти-агентних планів, а також для того,
щоб вирішити конфлікти. LPL і CPL слугують для більшого “обдумування”.
Ці всі шари, працюють з різними моделями в базах знань агентів: BBL, LPL і
CPL оперують з “світовими”, розумовими і соціальними моделями
відповідно. Кожний шар InteRRaP також складається з двох процесів – SG і
PS, які взаємодіють один з одним, а також з сусідніми шарами. Ці шари
працюють асинхронно.
Архітектура InteRRaP була оцінена за допомогою створення додатку
FORKS, який керує вантажно-підйомними роботами в доках.
РОЗПОДІЛЕНІ ІНТЕЛЕКТУАЛЬНІ СИСТЕМИ В ЕКОНОМІЦІ
1. Варіанти клієнт-серверної архітектури інтелектуальної розподіленої
системи
Базовою моделлю архітектури в компонентних системах 
є дворівнева модель Клієнт-сервер.
У цій моделі всі процеси в системі діляться на дві групи, що можливо
перекриваються. Процеси, що реалізують деяку службу, наприклад, службу
файлової системи або БД, називаються серверами. Процеси, що запрошують
служби в серверів шляхом посилки запиту і подальшого чекання відповіді від
сервера, називаються клієнтами.
Ця модель завжди була предметів суперечок серед розробників ПЗ, що
стосуються в, першу чергу, розділення функцій компонентів системи між
клієнтом і сервером. Зазвичай чіткої відмінності немає. Наприклад, сервер
РБД може виступати клієнтом, який передає запити на файлові сервери, що
відповідають за реалізацію таблиць цією БД.
Проте, розглядаючи різні застосування типу клієнт-сервер, для роботи з
БД, рекомендують розділяти їх на три логічні рівні:
1) рівень інтерфейсу користувача;
2) рівень обробки;
3) рівень даних.
Один з підходів – розподіл програм на два типи машин, клієнти і сервери,
що призводить до фізично дворівневої архітектури (two-tiered architecture).
Архітектурні рішення варіюються від мінімізації функцій інтерфейсу
користувача на клієнті (тонкий клієнт) до передачі клієнту всієї роботи з
інтерфейсом користувача (товстий клієнт). В обох випадках ми відділяємо
від застосування графічний зовнішній інтерфейс, пов'язаний з рештою
застосування (що знаходиться на сервері) за допомогою конкретного для
даного застосування протоколу. У цьому підході зовнішній інтерфейс робить
лише те, що потрібне для надання інтерфейсу застосування.
Подальший розвиток архітектури клієнт-сервер призвів до трирівневої
архітектури (three-tiered architecture).
У такій архітектурі програми, які входять до складу рівня обробки,
виносяться на окремий сервер (сервер застосувань), але крім цього, можуть
частково знаходитися на машинах клієнтів і серверів (рис. 20.3).

Таким чином, разом з клієнтською частиною застосунку і сервером баз


даних з'явилися сервери застосувань (Application Servers).

В такій трирівневій архітектурі:


● програма-клієнт реалізує інтерфейс користувача, передає запити
серверу застосувань і приймає від нього відповідь;
● сервер застосувань реалізує бізнес-логіку і звертається із запитами
до сервера "третього рівня" (наприклад, сервера бази даних за
даними);
● сервер третього рівня обслуговує запити сервера застосувань.
Програма-клієнт, таким чином, може бути "тонким клієнтом". Переваги
такої архітектури очевидні:
● зміни на кожній з ланок можна здійснювати незалежно;
● знижуються навантаження на мережу, оскільки ланки не
обмінюються між собою великими об'ємами інформації;
● забезпечується масштабування і проста модернізація устаткування і
програмного забезпечення, що підтримує кожна з ланок, у тому
числі оновлення серверного парку і термінального устаткування,
СКБД і т.д.;
● Застосування можуть створюватися на стандартних мовах
програмування (Java, C/C++/C#, PHPтощо).

Сучасні варіанти архітектури – багаторівневі.


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

2. Веб-орієнтована архітектура інтелектуальної розподіленої системи


Поява мови Java і простота завантаження аплетів дозволила виділити веб-
архітектуру у самостійний ряд архітектур моделі «клієнт-сервер».
По-суті, вона може бути реалізована як три чи більше рівнева архітектура
(Three-tier or N-tier architecture).
Її відмінність від класичної трирівневої архітектури «клієнт-сервер» полягає
в наявності веб-сервера.
Інтерфейс користувача організується засобом Web-броузера, який запускає
виконання комнад клієнтів на віддалених серверах.
Клієнтська частина реалізує користувальницький інтерфейс, формує запити
до сервера і обробляє відповіді від нього.
Серверна частина отримує запит від клієнта, виконує обчислення, після цього
формує веб-сторінку і відправляє її клієнту через мережу з використанням
протоколу HTTP.
▪ Веб-сервер – це сервер, що приймає  HTTP- запити від клієнтів,
зазвичай  веб-браузерів, який видає їм HTTP- відповіді, як правило, 
разом з HTML-сторінкою, зображенням, фай- лом, медіа-потоком або
іншими  даними.  
▪ Загальна класифікація веб-серверів Інтернету має наступний вигляд:
● група 1 — сервери управління трафіком (Web  Traffic Control Sites), які
включають: пошукові системи; каталоги; ініціюючі сервери;
● група 2 — кінцеві сервери (Destination Sites), а саме: інформаційні
сервери; сервери присутності в Інтернеті; інтерактивні магазини.
Яскравим прикладом такої архітектури є система управління вмістом статей
Вікіпедії: безліч її учасників можуть брати участь у створенні мережевої
енциклопедії, використовуючи для цього браузери своїх операційних систем
(будь то Microsoft Windows, GNU / Linux або будь-яка інша операційна
система) і не завантажуючи додаткових виконуваних модулів для роботи з
базою даних статей.

3. Задачі функціонування розподілених інтелектуальних систем


1) з'єднання користувачів із ресурсами
Основне завдання РІС – полегшити користувачам доступ до віддалених
ресурсів і забезпечити їх спільне використання, регулюючи цей процес.
Ресурси можуть бути віртуальними, проте зазвичай вони включають у себе
принтери, комп'ютери, пристрої зберігання даних, файли і дані. Web-сторінки
й мережі, також, входять в цей список
2) Прозорість
Прозорість є основною вимогою, яка спрощує взаємодію розподілених
компонентів інтелектуальних систем і приховує фізичне розподілення
процесів і ресурсів серед багатьох комп’ютерів.
Ця властивість означає, що користувачам надано повністю прозорий доступ
до ресурсів (transparent) і в той же час приховано інформацію про розподіл
ресурсів у системі (система – єдине ціле).
3) Відкритість
Відкрита розподілена інтелектуальна система (open distributed intelligence
system) – це система, що пропонує стандартні засоби і служби доступу до
системи широкому колу користувачів, які використовують стандартні
синтаксис і семантику всіх протоколів взаємодії. Всі протоколи взаємодії
компонент усередині розподіленої системи в ідеальному випадку
ґрунтуються на загальнодоступних стандартах, що дозволяє
використовувати для створення компонентів різні засоби розробки й
різні операційні системи, кожна компонента має точну й повну
специфікацію своїх сервісів. У цьому разі компоненти розподіленої
системи можуть бути створені незалежними розробниками.
4) Масштабованість
Масштабованість (scalable) – одне з найбільш важливих завдань при
проектуванні РІС.
Масштабованість системи може вимірюватися за трьома різними
показниками:
по-перше, система може бути масштабованою по відношенню до її розмірів,
що означає легкість підключення до неї додаткових користувачів та ресурсів
(size scalability);
по-друге, система може масштабуватись географічно, тобто користувачі та
ресурси можуть бути рознесені в просторі (geographical scalability);
по-третє система може бути масштабованою в адміністративному сенсі,
тобто бути проста в управлінні при роботі з безліччю адміністративно
незалежних елементів чи модулів (administrative scalability).
4. Змішана архітектура розподілених інтелектуальних систем
Змішана – комбінація елементів централізованої та децентралізованої
архітектури.
При дуже великій кількості бенкетів гібридні системи не здатні забезпечити
коректну обробку всіх запитів. Вони перевантажені запитами і здатні їх
обробити за прийнятний час.
Існує безліч архітектур РС у яких успішно поєднуються архітектури клієнт
сервер та децентралізовані архітектури Р2Р систем.
У цих системах всі вузли поділяються кілька типів залежно від ієрархічної
організації. У дворівневій системі є два види вузлів: супервузли (supernodes);
потужні вузли пов'язані між собою добрими каналами зв'язку. Зберігають
метадані про розташування ресурсів та рядові бенкети (peers); пов'язані з
одним або декількома супервузлами.
Гібридна архітектура особливо широко використовується у системах на
основі взаємної співпраці. Як приклад розглянемо BitTorent. Основна ідея
полягає в тому, що користувач завантажує файл не з одного місця, а з
багатьох джерел частинами. Такими джерелами є машини інших
користувачів, які теж шукають у системі файли для закачування, але мають
надавати доступ до завантажених файлів. Ця умова забезпечує підтримку
співпраці між користувачами.

5. Концепція мультипроцесорних апаратних рішень у розгортанні


розподілених інтелектуальних систем
Послідовна несуперечливість (sequential consistency) – це менш строга модель
несуперечливості. Вперше її було визначено в контексті спільно
використовуваної пам'яті мультипроцесорних систем. Загалом сховище
даних уважають послідовно несуперечливим, якщо воно задовольняє такій
умові: результат будь-якої дії такий самий, коли операції (читання й запису)
всіх процесів у сховище даних виконувалися у деякому послідовному
порядку, причому операції кожного окремого процесу - у порядку,
зумовленому його програмою.
Це означає, що коли процеси виконуються паралельно на (можливо) різних
машинах, будь-яке правильне чергування операцій читання й запису є
допустимим, але всі процеси бачать одне й те ж чергування операцій.
Відзначимо, що фактор часу виконання операції ніяк не впливає, тобто
ніякий процес не посилається на останню операцію запису об'єкта, у цьому
контексті процес «бачить» записи всіх процесів, але тільки тих, які сам читає.
Приклад. Розглянемо роботу чотирьох процесів без врахування часу
виконання опeрацій з одним елементом даних х (рис. 1.6). На рис. 1.6, а
спочатку процес Р1 здійснює запис W(x)a в елемент х, пізніше (за
абсолютним часом) процес Р2 також здійснює запис, установлюючи значення
x в b. Однак обидва процеси, РЗ і Р4, спочатку читають значення b і лише
потім – значення а. Інакше кажучи, операція запису процесу Р2 виглядає
такою, що відбувається раніше запису процесу Р1.

6. Моделі представлення даних у розподілених інтелектуальних


системах
Залежно від виду організації даних розрізняють чотири основні моделі
представлення даних у БД:

• ієрархічна;
• мережева;
• реляційна;
• об'єктно-орієнтована.

У ієрархічній моделі дані подаються у вигляді деревоподібної (ієрархічної)


структури та базується на теорії графів. Така організація даних зручна лише
роботи з ієрархічно впорядкованою інформацією. При оперуванні даними зі
складними логічними зв'язками ієрархічна модель стає надто громіздкою та
складною.
У мережевої моделі дані організуються як довільного графа і є розширенням
ієрархічної моделі. У ієрархічних структурах запис-нащадок повинен мати в
точності одного предка; в мережевий структурі цих нащадок може мати будь-
яке число предків. Основними елементами бази даних є елемент даних,
агрегат даних, запис, набір.
У объектно-ориентированной моделі окремі записи бази даних
представляються як об'єктів. Між записами бази даних та функціями їх
обробки встановлюються взаємозв'язки за допомогою механізмів, подібних
до відповідних засобів об'єктно-орієнтованих мов програмування. Об'єктно-
орієнтовані моделі поєднують особливості мережевої та реляційної моделей
та використовуються для створення великих БД зі складними структурами
даних.
Реляційна модель складається з relations (зв'язків, відносин), кожне з яких має
унікальне ім'я та складається з рядків (записів – кортежів) та стовпців (полів
– атрибутів). Кожен запис представляє об'єкт реального світу. Властивості
об'єкта (його характеристики) визначають значення полів. Кожне поле має
ім'я, тип та розмір даних, що зберігаються в ньому. Імена полів винесені до
шапки таблиці.
7. Поняття архітектурного стилю розподілених інтелектуальних систем
При проектуванні і створенні РІС вибір архітектури є ключовим технічним
рішенням, що визначає успіх створення великих розподілених систем.
Під час обговорення архітектурних аспектів РІС важливим поняттям є
архітектурний стиль, який описується в термінології компонент і визначає:
спосіб комунікацій між компонентами системи, порядок обміну даними між
ними, а також структурований опис взаємодії елементів системи, що
формують собою РІС.
Використання архітектурного стилю дозволяє реалізувати інкрементне та
ітеративне проектування, тобто оперативно змінювати існуючий і додавати
новий функціонал РІС.
Як правило, виділяють три класи архітектурних стилів для РІС:
● централізований (монолітний);
● децентралізований (peer-to-peer або p2p);
● гібридний.
Парадигма централізованого архітектурного стилю припускає чіткий
розподіл між існуючими компонентами РІС: одні виконують обробку,
зберігають дані, забезпечують керування; інші звертаються за необхідною
обробкою.
Парадигма децентралізованого архітектурного стилю припускає розподіл
рівних ролей всім елементам: кожний комп'ютер у мережі може бути і
клієнтом і сервером і посередником передачі повідомлень. Р2Р системи
дозволяють забезпечити підтримку надання послуг без використання дорогих
серверів. І хоча основним напрямком є доступ до файлів (file sharing), вони з
успіхом можуть застосовуватися для рішення різних завдань, пов'язаних
зі зберіганням, пошуком і обробкою інформації.

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


систем
Обговорення деяких проблем масштабування приводить нас до питання про
те, а як же зазвичай вирішуються ці проблеми. Оскільки проблеми
масштабованості в розподілених системах, такі як проблеми продуктивності,
спричиняються обмеженою потужністю серверів і мереж, існують три
основні технології масштабування: приховування часу очікування зв'язку,
розподіл і реплікація.
Приховування часу очікування зв'язку застосовується в разі географічного
масштабування. Основна ідея проста: постаратися по можливості уникнути
очікування відповіді на запит від віддаленого сервера. Наприклад, якщо була
запрошена служба віддаленої машини, альтернативою очікуванню відповіді
від сервера буде здійснення запитуючою стороною інших можливих дій. По
суті, це означає розробку додатки, який запитує службу, в розрахунку
використання виключно асинхронного зв'язку (asynchronous communication)
(розказати як завантажуються JavaScript-бібліотеки у web-сторінках).
Коли буде отримана відповідь, додаток перерве свою роботу і викличе
спеціальний обробник для завершення відправленого раніше запиту.
Асинхронний зв'язок часто використовується в системах пакетної обробки і
паралельних програмах, в яких під час очікування одним завданням
завершення зв'язку передбачається виконання інших більш-менш незалежних
завдань. Для здійснення запиту може бути запущений новий керуючий потік
виконання. Хоча він буде блокований на час очікування відповіді, інші
потоки процесу продовжать своє виконання.
Наступна важлива технологія масштабування - розподіл (distribution).
Розподіл передбачає розбиття компонентів на дрібні частини і подальше
рознесення цих частин по системі. Хорошим прикладом розподілу є система
доменних імен Інтернету (DNS).
При розгляді проблем масштабування, часто виявляються у вигляді падіння
продуктивності, нерідко гарною ідеєю є реплікація (replication) компонентів
розподіленої системи. Реплікація не тільки підвищує доступність, але і
допомагає вирівняти завантаження компонентів, що веде до підвищення
продуктивності. Крім того, в сильно географічно розосереджених системах
наявність копії, яка близько лежить, дозволяє знизити гостроту проблем
очікування завершення зв'язку.
Кешування (caching) являє собою особливу форму реплікації, причому
відмінності між ними нерідко малопомітні або взагалі штучні. Як і в разі
реплікації, результатом кешування є створення копії ресурсу, зазвичай в
безпосередній близькості від клієнта, що використовує цей ресурс. Однак на
противагу реплікації кешування - це дії, що робляться споживачем ресурсу, а
не його власником.

9. Поняття та особливі риси інтелектуальної розподіленої системи


Розподілена інтелектуальна система – це:
інформаційна (діалогова) система, що забезпечує збір, зберігання,
оброблення, представлення інформації, робота якої ґрунтується на принципі
територіального та/або технічного розподілення та використанні
інструментів штучного інтелекту, а також математичних методів та моделей,
комп’ютерної бази експертних знань та правил, методів Data Mining тощо.
Риси:
● компоненти РІС можуть працювати паралельно, а можуть шляхом
інтерактивної взаємодії;
● кожний компонент РІС можна і потрібно розглядати локально
(відокремлено);
● компоненти працюють незалежно й можуть «випадати», не руйнуючи
систему в цілому;
● система працює асинхронно. Зміни й процеси синхронізуються;
● РІС може утворюватися як об'єднання вже існуючих інтелектуальних
та інших систем;
● програми й дані можуть переміщатися між різними вузлами (node), ця
концепція називається міграцією;
● РІС повинні підтримувати роботу з динамічними змінами структури;
● архітектура РІС може використовувати різні топології;
● РІС підлягають еволюції, тобто за час їх життя
відбуваються різні зміни;
● РІС повинні готові обробляти постійно зростаючий обсяг даних, тобто
є легко розширюваними (масштабованими). 

10. Приклади та сфери застосування інтелектуальних розподілених


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

11. Проблема адаптивності в роботі розподілених інтелектуальних


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

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


систем: суть та шляхи вирішення
Відмовостійкість (стійкість до відмов) - фундаментальний метод для
досягнення гарантованості виконання обчислень. Способи забезпечення
відмовостійкості такі: виявлення помилки; обробка несправності; аналіз
пошкодження; відновлення після помилки.
Всі ці способи реалізуються за допомогою захисної надлишковості
алгоритмічних, функціональних, часових та інших елементів архітектури
системи з урахуванням обмежень, які визначають несправності, а також
зміни вимог і умов використання.
Виявлення помилки здійснюється за допомогою перевірки правильності
виконання завдання. В ідеалі правильність роботи системи має грунтуватися
на перевірці того, чи відповідає ця робота специфікації системи. Таку
перевірку мають виконувати незалежні від системи механізми (блоки,
модулі), а специфікацію - виражати в термінах інформації, яка є зовнішньою
по відношенню до системи.
Однією з головних особливостей відмовостійкості програмного забезпечення
є можливість перевірки правильності результату до того, як результат вийде
за межі системи (блока, модуля).
Залежно від обмежень вартості й продуктивності системи перевірка може
виконуватися порівнянням таких результатів:
− повторного використання системи;
− використання кількох копій однієї системи;
− використання кількох різних версій системи.
Іноді застосовують перевірку зворотним ходом: результат, який надає
система, обробляється у зворотному порядку, щоб отримати відповідні вхідні
дані й порівняти їх із фактичними.
Ще один спосіб – перевірка результату на відповідність обмеженням
предметної області. Використовують також відсутність відповіді компоненти
на повідомлення в межах визначеного часу, порівняння контрольних сум
інформаційних блоків тощо.
Обробка несправності полягає у визначенні місцеположення несправної
компоненти програмного забезпечення та її заміні, для цього система
повинна мати у своєму розпорядженні надлишкові компоненти програмного
забезпечення та резерви часу. Надлишковість у системі може бути
маскувальна або динамічна. Маскувальна надлишковість – статична,
наприклад, трикратне модульне резервування (TMR). Динамічна
надлишковість – це внутрішня надмірність компоненти, яка
використовується для знаходження помилкової інформації та має бути
доповнена зовнішньою надлишковістю, щоб забезпечити відновлення
компоненти після усунення помилки. Відновлювання виконують за
допомогою заміщення або ре конфігурації: у разі заміщення замість
несправної компоненти використовується резервна компонента, яка не була
активною; у разі реконфігурації функції несправної компоненти
перекладаються на ті компоненти системи, які працюють успішно, при цьому
загальна продуктивність системи дещо знижується, що слід ураховувати,
проектуючи критичні системи. На відміну від апаратного заміщення у
програмному забезпеченні резервна компонента замінює основну лише на
деякий час (для певної комбінації вхідних даних), після чого система
намагається повернути до роботи основну компоненту.
Для забезпечення гарантованості працездатності система або її компоненти
повинні мати механізми обмеження помилки, що дозволять заблокувати
процес поширення пошкодженої інформації до взаємодіючих зовнішніх
систем (компонент). Після цього слід визначити ступінь пошкодження та
можливі наслідки для оточуючого програмно-апаратного середовища і
задіяти необхідні механізми, щоб уникнути негативного розвитку подій та
аварії.
Аналіз пошкодження, зумовленого несправністю, визначає, які процеси і
починаючи з якого моменту слід уважати неправильними, щоб повторно їх
перезапустити. Такий аналіз виконується за допомогою методу
структурування системи, що забезпечує подання роботи системи у вигляді
елементарних дій. Значно простіше виконувати аналіз, починаючи з
правильної контрольної точки, зафіксованої в пам’яті перед збоєм, повторно
перезапустити процеси
або, враховуючи наявний резерв реального часу, замінити їх процесами, які
дублюють дану функцію. Відновлення після помилки здійснюється за
допомогою двох основних методів: ретроспективного відновлення після
помилки та відновлення без повернення до попереднього стану.
Ретроспективне відновлення після помилки грунтується на фіксації в пам’яті
контрольних точок. Цей метод допускає незнання точного місцеположення
несправності й наслідків її дії в системі. Блок відновлення містить деяку
кількість резервних альтернативних алгоритмів (які називають «замінами»),
на яких перезапускаються потрібні процеси з даними, взятими з пам’яті
контрольних точок. Отже, ідея методу дуже проста, оскільки таке
відновлення не потребує діагностування та з’ясування місцеположення
несправності, але при цьому втрачається час уже виконаної роботи.
Відновлення без повернення до попереднього стану передбачає точну
ідентифікацію несправності й забезпечення механізму для її усунення, при
цьому заново виконуються лише ті процеси, які були виконані неправильно,
тобто цей метод більш ефективний, ніж попередній. Однак він прийнятний
лише для простих несправностей та механізмів їх усунення.
14. Проблема стійкості до зовнішніх впливів у роботі розподілених
інтелектуальних систем: суть та шляхи вирішення
Відмовостійкість (стійкість до відмов) - фундаментальний метод для
досягнення гарантованості виконання обчислень. Способи забезпечення
відмовостійкості такі: виявлення помилки; обробка несправності; аналіз
пошкодження; відновлення після помилки.
Всі ці способи реалізуються за допомогою захисної надлишковості
алгоритмічних, функціональних, часових та інших елементів архітектури
системи з урахуванням обмежень, які визначають несправності, а також
зміни вимог і умов використання.
Виявлення помилки здійснюється за допомогою перевірки правильності
виконання завдання. В ідеалі правильність роботи системи має грунтуватися
на перевірці того, чи відповідає ця робота специфікації системи. Таку
перевірку мають виконувати незалежні від системи механізми (блоки,
модулі), а специфікацію - виражати в термінах інформації, яка є зовнішньою
по відношенню до системи.
Однією з головних особливостей відмовостійкості програмного забезпечення
є можливість перевірки правильності результату до того, як результат вийде
за межі системи (блока, модуля).
Залежно від обмежень вартості й продуктивності системи перевірка може
виконуватися порівнянням таких результатів:
− повторного використання системи;
− використання кількох копій однієї системи;
− використання кількох різних версій системи.
Іноді застосовують перевірку зворотним ходом: результат, який надає
система, обробляється у зворотному порядку, щоб отримати відповідні вхідні
дані й порівняти їх із фактичними.
Ще один спосіб – перевірка результату на відповідність обмеженням
предметної області. Використовують також відсутність відповіді компоненти
на повідомлення в межах визначеного часу, порівняння контрольних сум
інформаційних блоків тощо.
Обробка несправності полягає у визначенні місцеположення несправної
компоненти програмного забезпечення та її заміні, для цього система
повинна мати у своєму розпорядженні надлишкові компоненти програмного
забезпечення та резерви часу. Надлишковість у системі може бути
маскувальна або динамічна. Маскувальна надлишковість – статична,
наприклад, трикратне модульне резервування (TMR). Динамічна
надлишковість – це внутрішня надмірність компоненти, яка
використовується для знаходження помилкової інформації та має бути
доповнена зовнішньою надлишковістю, щоб забезпечити відновлення
компоненти після усунення помилки. Відновлювання виконують за
допомогою заміщення або ре конфігурації: у разі заміщення замість
несправної компоненти використовується резервна компонента, яка не була
активною; у разі реконфігурації функції несправної компоненти
перекладаються на ті компоненти системи, які працюють успішно, при цьому
загальна продуктивність системи дещо знижується, що слід ураховувати,
проектуючи критичні системи. На відміну від апаратного заміщення у
програмному забезпеченні резервна компонента замінює основну лише на
деякий час (для певної комбінації вхідних даних), після чого система
намагається повернути до роботи основну компоненту.
Для забезпечення гарантованості працездатності система або її компоненти
повинні мати механізми обмеження помилки, що дозволять заблокувати
процес поширення пошкодженої інформації до взаємодіючих зовнішніх
систем (компонент). Після цього слід визначити ступінь пошкодження та
можливі наслідки для оточуючого програмно-апаратного середовища і
задіяти необхідні механізми, щоб уникнути негативного розвитку подій та
аварії.
Аналіз пошкодження, зумовленого несправністю, визначає, які процеси і
починаючи з якого моменту слід уважати неправильними, щоб повторно їх
перезапустити. Такий аналіз виконується за допомогою методу
структурування системи, що забезпечує подання роботи системи у вигляді
елементарних дій. Значно простіше виконувати аналіз, починаючи з
правильної контрольної точки, зафіксованої в пам’яті перед збоєм, повторно
перезапустити процеси
або, враховуючи наявний резерв реального часу, замінити їх процесами, які
дублюють дану функцію. Відновлення після помилки здійснюється за
допомогою двох основних методів: ретроспективного відновлення після
помилки та відновлення без повернення до попереднього стану.
Ретроспективне відновлення після помилки грунтується на фіксації в пам’яті
контрольних точок. Цей метод допускає незнання точного місцеположення
несправності й наслідків її дії в системі. Блок відновлення містить деяку
кількість резервних альтернативних алгоритмів (які називають «замінами»),
на яких перезапускаються потрібні процеси з даними, взятими з пам’яті
контрольних точок. Отже, ідея методу дуже проста, оскільки таке
відновлення не потребує діагностування та з’ясування місцеположення
несправності, але при цьому втрачається час уже виконаної роботи.
Відновлення без повернення до попереднього стану передбачає точну
ідентифікацію несправності й забезпечення механізму для її усунення, при
цьому заново виконуються лише ті процеси, які були виконані неправильно,
тобто цей метод більш ефективний, ніж попередній. Однак він прийнятний
лише для простих несправностей та механізмів їх усунення.

15. Проміжний рівень програмного забезпечення у розподілених


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

При розробці проектів розподілених систем вирішальними факторами


виступають відповіді на наступні питання:
▪  Хто і яким чином буде розробляти;
▪  Яку архітектуру використовувати при розробці;
▪  Які елементи рішення є типізований (шаблонними);
▪ Які платформи будуть використовуватися при розробці та експлуатації.
16. Реалізація віддаленого виклику процедур (RPC) у розподілених
інтелектуальних систем
Ідея  віддаленого  виклику  процедур  (Remote  Procedure  Call, RPC) полягає
в тому, що за допомогою проміжного програмного забезпечення функцію на 
віддаленому комп’ютері  можна  викликати  так  само,  як  і  функцію  на 
локальному комп’ютері.  
Щоб віддалений виклик відбувався прозоро з погляду прикладної програми, 
яка  виконує  виклик,  проміжне  середовище  має надати процедуру-
заглушку (stub), що буде викликатися клієнтською прикладною програмою.
Після виклику процедури-заглушки проміжне середовище  надає  переданим 
їй  аргументам  виду,  придатного  для передачі  за  транспортним 
протоколом,  і  передає  їх  на  віддалений комп’ютер  з  викликуваною 
функцією.  
На  віддаленому  комп'ютері параметри  вилучаються  проміжним 
середовищем  з  повідомлення транспортного рівня й передаються 
викликуваній функції. 
Аналогічно  на  клієнтську  машину  передається  результат  виконання
функції, яка викликана з сервера. 
Розрізняють три можливі варіанти віддаленого виклику процедур: 
▪ Синхронний  виклик  –  клієнт  очікує  завершення процедури
сервером  і, у  разі потреби, отримує від нього результат виконання
віддаленої функції. 
▪ Однонаправлений  асинхронний  виклик  –  клієнт  продовжує
виконувати своє завдання, не отримуючи відповіді від сервера,
відповідь або відсутня, або її реалізація якось інакше передбачена під
час розробки (наприклад, через функцію клієнта, яку віддалено
викликає сервер).  
Асинхронний виклик – клієнт продовжує виконаувати завдання, після 
завершення  сервером  процесу  виконання  процедури  він  отримує
повідомлення  й  результат  її  виконання,  наприклад  через  callback-
функцію, яка викликається проміжним середовищем під час одержання
результату від сервера.
17. Реалізація технології CORBA у розподілених інтелектуальних
системах
Технологію розподілених систем об'єктів розглянемо з погляду
узагальненої архітектури брокера об'єктних запитів (Common Object
Request Broker Architecture, CORBA), яка є не стільки технологією
побудови розподілених систем, скільки її специфікацією. Подібні
специфікації розроблені некомерційною спеціалізованою організацією,
групою керування об'єктами (Object Management Group, OMG).
Основною метою OMG під час розробки CORBA було створення
технології побудови розподіленої системи, яка б не мала більшості
недоліків міжопераційної сумісності у разі інтеграції мережного
прикладного програмного забезпечення. Перші специфікації CORBA
з’явилися на початку 90-х років.
Глобальну архітектуру CORBA у відповідності до моделі OMG
представлено на рис. 4.3, вона містить чотири групи архітектурних
елементів, пов'язаних з брокером об'єктних запитів (Object Request
Broker, ORB), який утворює ядро будь-якої розподіленої системи,
побудованої за допомогою технології CORBA. ORB відповідає за
підтримку зв'язку між об'єктами та їх клієнтами, приховуючи
особливості, пов'язані з розподілом і різнорідністю системи. В багатьох
розподілених системах ORB реалізується у вигляді множини бібліотек,
які компонуються з прикладним програмним забезпеченням клієнта і
сервера, надаючи їм базові служби зв'язку.
18. Розподілена інтелектуальна система – як діалогова система
Розподілена інтелектуальна система – це діалогова система, що забезпечує
збір, зберігання, оброблення, представлення інформації, робота якої
ґрунтується на принципі територіального та/або технічного розподілення та
використанні інструментів штучного інтелекту, а також математичних
методів та моделей, комп’ютерної бази експертних знань та правил, методів
Data Mining тощо
19. Розподілена інтелектуальна система – як система просторово
розподілених компонентів
Розподілена інтелектуальна система є інформаційною системою із
просторово розподіленими компонентами, які не використовують спільну
пам’ять, підлягають централізованому адмініструванню для досягнення
встановлених цілей та з використанням елементів штучного інтелекту;
20. Розподілені бази даних, особливості архітектури
Розподілені бази даних (сховища даних) – сукупність логічно
взаємопов'язаних баз даних (сховищ даних), розподілених у комп'ютерній
мережі.
Spanner  – географічно розподілена масштабована багатоваріантна база
даних з підтримкою розподілених транзакцій від Google для внутрішніх
сервісів корпорації (еволюція Google Bigtable). 

Hbase – масштабована розподілена база даних з підтримкою структуровано


зберігання даних великого обсягу (проект екосистеми Hadoop).

MongoDB – розподілена крос-платформна документо-орієнтована система


управління базами даних з підтримкою JSON та динамічних схем.
21. Розподілені інтелектуальні системи на основі агентів.
Мультиагентна архітектура представляє собою підхід до проектування
інтелектуальних систем на базі сукупності програмних агентів (автономних
модулів, інтелектуальних агентів), які взаємодіють мiж собою.
Мультиагентні архітектури можуть бути використані ІС, що вирішують
проблеми, які складно або неможливо вирішити за допомогою одного агента
або монолітної системи. Прикладами таких завдань є онлайн-торгівля,
ліквідація надзвичайних ситуацій, і моделювання соціальних структур та ін.
Мультиагентні системи зазвичай складається з таких основних компонентів: 
▪ множина організаційних одиниць, у якій виділяються підмножини
агентів, що маніпулюють підмножинами об’єктів; 
▪ множина завдань; 
▪ середовище – тобто деякий простір, в якому існують агенти і об’єкти; 
▪ множина відносин між агентами; 
▪ множина дій агентів (наприклад, множина операцій над об’єктами). 
Основною формою організації взаємодії між агентами, що характеризується
об’єднанням їхніх зусиль для досягнення спільної мети при одночасному
розподілі між ними функцій, ролей і обов’язків, є кооперація. 
У загальному випадку це поняття можна визначити формулою: 
кооперація = співпраця + координація дій + вирішення конфліктів
Розрізняють два основні класи мультиагентної архітектури: 
● архітектура, яка ґрунтується на принципах і методах штучного
інтелекту, тобто систем, заснованих на знаннях (“deliberative agent
architecture”, “архітектура розумного агента”);
● архітектура, яка базується на поведінці (reactive architecture), або
“реактивна архітектура” (заснована на реакції системи на події
зовнішнього світу). 
22. Сильні і слабкі сторони розподілених інтелектуальних систем.
Переваги:
● Легко масштабуються.
● Існуючі рішення інтегруються.
● Самостійне управління компонентом.
● Автономні складові частини РІС.
● Гнучка адаптована система.
● Поступове розширення функціональності.
Недоліки:
● Складне програмне забезпечення.
● Слабкий захист даних.
● Збої при підключенні нових компонентів.
● Складність доступу до даних.
23. Синхронізація доступу до даних в розподілених інтелектуальних
системах.
Зв'язок на основі потоків даних застосовується при передачі інформації, що
не має чітких обмежень за обсягом і часу передачі.
Розрізняють три режими передачі потоків даних.
1. Асинхронний режим. Тимчасові обмеження на передачу потоків даних не
накладаються.
2. Синхронний режим. Для кожного елемента потоків даних визначається
максимально можлива затримка передачі.
3. Ізохронний режим. Для кожного елемента даних визначається як
максимально можлива, так і мінімальна затримка передачі даних.
Потоки даних можуть бути дискретними (потоки байт або потоки слів) і
безперервними (потоки біт). Також потоки даних можуть бути простими –
містять тільки одну послідовність даних - і комплексними - містять кілька
пов'язаних потоків даних, званих вкладеними потоками даних.
Тимчасові залежності потоків даних виражаються у вигляді вимог до якості
обслуговування, що описують, що повинна зробити розподілена система, для
того щоб гарантувати збереження в потоці даних заданих тимчасових
співвідношень. Для передачі потоків даних розподілена система повинна
захопити ресурси, що задовольняють вимогам до якості обслуговування.
24. Стандартизація та основні стандарти розробки розподілених
інтелектуальних систем.
Стандарт X.500 – серія стандартів ITU-T (1993 р.) для служби розподіленого
каталогу мережі, який надає централізовану інформацію про всі іменовані
об’єкти мережі (ресурси, прикладне програмне забезпечення та користувачів)
(рекомендації MKKTT для каталогів). Спочатку стандарт X.500 планували
для використання іменувань вузлів, адрес та поштових скриньок,
передбачених стандартом X.400.
Каталоги містять статичні й рідко змінювані елементи, оскільки їх
оптимізовано для дуже швидкого відгуку на запити пошуку і читання даних.
Стандарт Common Object Request Broker Architecture (CORBA) – це
архітектура і специфікація для створення і управління об'єктно-
орієнтованими програмами, розподіленими в обчислювальної мережі. В
даний час вироблено
кілька версій стандарту CORBA, які вводять стандартизовану специфікацію
брокера об'єктів, але не містять ніякої реалізації.
25. Характеристика вимог до функціонування розподілених
інтелектуальних систем: масштабованість.
Масштабованість (scalable) – одне з найбільш важливих завдань при
проектуванні РІС.
Масштабованість системи може вимірюватися за трьома різними
показниками:
по-перше, система може бути масштабованою по відношенню до її розмірів,
що означає легкість підключення до неї додаткових користувачів та ресурсів
(size scalability);
по-друге, система може масштабуватись географічно, тобто користувачі та
ресурси можуть бути рознесені в просторі (geographical scalability);
по-третє система може бути масштабованою в адміністративному сенсі,
тобто бути проста в управлінні при роботі з безліччю адміністративно
незалежних елементів чи модулів (administrative scalability).
На жаль, система, що володіє масштабованістю за одним чи кількома з цих
параметрів, при масштабуванні часто дає втрату продуктивності. Проблема
масштабування має враховувати ефективність розподілу ресурсів серверів,
які обслуговують запити клієнтів.
Проблема: підвищення продуктивності роботи
26. Характеристика вимог до функціонування розподілених
інтелектуальних систем: гнучкість
Важлива характеристика відкритих розподілених систем - це гнучкість.
Під гнучкістю ми розуміємо легкість конфігурування системи, що
складається з різних компонентів, можливо від різних виробників. Не має
викликати труднощів додавання до системи нових компонентів або заміна
існуючих, при цьому інші компоненти, з якими не проводилося ніяких дій,
повинні залишатися незмінними.
Іншими словами, відкрита розподілена система повинна бути
розширюваною.
Наприклад, до гнучкої системи повинно бути відносно нескладно додати
частини, що працюють під керуванням іншої операційної системи, або навіть
замінити всю файлову систему цілком. Наскільки всім нам знайома
сьогоднішня реальність, говорити про гнучкість куди простіше, ніж її
здійснити.
27. Характеристика вимог до функціонування розподілених
інтелектуальних систем: стійкість
Відмовостійкість (стійкість до відмов) - фундаментальний метод для
досягнення гарантованості виконання обчислень. Способи забезпечення
відмовостійкості такі: виявлення помилки; обробка несправності; аналіз
пошкодження; відновлення після помилки.
Всі ці способи реалізуються за допомогою захисної надлишковості
алгоритмічних, функціональних, часових та інших елементів архітектури
системи з урахуванням обмежень, які визначають несправності, а також
зміни вимог і умов використання.
Виявлення помилки здійснюється за допомогою перевірки правильності
виконання завдання. В ідеалі правильність роботи системи має грунтуватися
на перевірці того, чи відповідає ця робота специфікації системи. Таку
перевірку мають виконувати незалежні від системи механізми (блоки,
модулі), а специфікацію - виражати в термінах інформації, яка є зовнішньою
по відношенню до системи.
Однією з головних особливостей відмовостійкості програмного забезпечення
є можливість перевірки правильності результату до того, як результат вийде
за межі системи (блока, модуля).
Залежно від обмежень вартості й продуктивності системи перевірка може
виконуватися порівнянням таких результатів:
− повторного використання системи;
− використання кількох копій однієї системи;
− використання кількох різних версій системи.
Іноді застосовують перевірку зворотним ходом: результат, який надає
система, обробляється у зворотному порядку, щоб отримати відповідні вхідні
дані й порівняти їх із фактичними.
Ще один спосіб – перевірка результату на відповідність обмеженням
предметної області. Використовують також відсутність відповіді компоненти
на повідомлення в межах визначеного часу, порівняння контрольних сум
інформаційних блоків тощо.
Обробка несправності полягає у визначенні місцеположення несправної
компоненти програмного забезпечення та її заміні, для цього система
повинна мати у своєму розпорядженні надлишкові компоненти програмного
забезпечення та резерви часу. Надлишковість у системі може бути
маскувальна або динамічна. Маскувальна надлишковість – статична,
наприклад, трикратне модульне резервування (TMR). Динамічна
надлишковість – це внутрішня надмірність компоненти, яка
використовується для знаходження помилкової інформації та має бути
доповнена зовнішньою надлишковістю, щоб забезпечити відновлення
компоненти після усунення помилки. Відновлювання виконують за
допомогою заміщення або ре конфігурації: у разі заміщення замість
несправної компоненти використовується резервна компонента, яка не була
активною; у разі реконфігурації функції несправної компоненти
перекладаються на ті компоненти системи, які працюють успішно, при цьому
загальна продуктивність системи дещо знижується, що слід ураховувати,
проектуючи критичні системи. На відміну від апаратного заміщення у
програмному забезпеченні резервна компонента замінює основну лише на
деякий час (для певної комбінації вхідних даних), після чого система
намагається повернути до роботи основну компоненту.
Для забезпечення гарантованості працездатності система або її компоненти
повинні мати механізми обмеження помилки, що дозволять заблокувати
процес поширення пошкодженої інформації до взаємодіючих зовнішніх
систем (компонент). Після цього слід визначити ступінь пошкодження та
можливі наслідки для оточуючого програмно-апаратного середовища і
задіяти необхідні механізми, щоб уникнути негативного розвитку подій та
аварії.
Аналіз пошкодження, зумовленого несправністю, визначає, які процеси і
починаючи з якого моменту слід уважати неправильними, щоб повторно їх
перезапустити. Такий аналіз виконується за допомогою методу
структурування системи, що забезпечує подання роботи системи у вигляді
елементарних дій. Значно простіше виконувати аналіз, починаючи з
правильної контрольної точки, зафіксованої в пам’яті перед збоєм, повторно
перезапустити процеси
або, враховуючи наявний резерв реального часу, замінити їх процесами, які
дублюють дану функцію. Відновлення після помилки здійснюється за
допомогою двох основних методів: ретроспективного відновлення після
помилки та відновлення без повернення до попереднього стану.
Ретроспективне відновлення після помилки грунтується на фіксації в пам’яті
контрольних точок. Цей метод допускає незнання точного місцеположення
несправності й наслідків її дії в системі. Блок відновлення містить деяку
кількість резервних альтернативних алгоритмів (які називають «замінами»),
на яких перезапускаються потрібні процеси з даними, взятими з пам’яті
контрольних точок. Отже, ідея методу дуже проста, оскільки таке
відновлення не потребує діагностування та з’ясування місцеположення
несправності, але при цьому втрачається час уже виконаної роботи.
Відновлення без повернення до попереднього стану передбачає точну
ідентифікацію несправності й забезпечення механізму для її усунення, при
цьому заново виконуються лише ті процеси, які були виконані неправильно,
тобто цей метод більш ефективний, ніж попередній. Однак він прийнятний
лише для простих несправностей та механізмів їх усунення.

28. Характеристика вимог до функціонування розподілених


інтелектуальних систем: відкритість
Відкрита розподілена інтелектуальна система (open distributed intelligence
system) – це система, що пропонує стандартні засоби і служби доступу до
системи широкому колу користувачів, які використовують стандартні
синтаксис і семантику всіх протоколів взаємодії. Всі протоколи взаємодії
компонент усередині розподіленої системи в ідеальному випадку
ґрунтуються на загальнодоступних стандартах, що дозволяє
використовувати для створення компонентів різні засоби розробки й
різні операційні системи, кожна компонента має точну й повну
специфікацію своїх сервісів. У цьому разі компоненти розподіленої
системи можуть бути створені незалежними розробниками.
У разі порушення цієї вимоги може стати неможливим створення
розподіленої системи, яка охоплює кілька незалежних організацій. У РІС
служби зазвичай визначаються через інтерфейси (interfaces), які часто
описуються за допомогою мови визначення інтерфейсів (Interface Definition
Language, IDL).
Важливою характеристикою, що забезпечує відкритість розподілених
систем, є наявність загальних специфікацій інтерфейсів, які
підтримуються службами розподілених систем для реалізації інтерфейсів
різними виробниками програмного забезпечення. Такі специфікації
інтерфейсів є однозначними для різних реалізацій конкретного
інтерфейсу.
Проблема: як забезпечити відкритість
29. Характеристика вимог до функціонування розподілених
інтелектуальних систем: прозорість.
Прозорість є основною вимогою, яка спрощує взаємодію розподілених
компонентів інтелектуальних систем і приховує фізичне розподілення
процесів і ресурсів серед багатьох комп’ютерів.
Ця властивість означає, що користувачам надано повністю прозорий доступ
до ресурсів (transparent) і в той же час приховано інформацію про розподіл
ресурсів у системі (система – єдине ціле).
Розрізняють багато характерних рис прозорості розподілу, серед яких
відокремлюють: прозорість доступу, прозорість місця розташування,
прозорість міграції, прозорість реплікації, прозорість відмов, прозорість
збереження, прозорість зміни місця розташування, прозорість паралельного
доступу та ін.
Прозорість доступу (access transparency) покликана приховати різницю в
представленні даних і в способах доступу користувачів до ресурсів. РІС може
містити комп'ютери із різними операційними системами, кожна з яких має
файлові та інші особливості, які повинні бути приховані від користувачів
системи.
Прозорість розташування (location transparency) покликана приховати від
користувача, де саме фізично розташований в системі потрібний йому
ресурс.
У РІС, в яких зміна місця розташування ресурсів не впливає на доступ до
них, кажуть як про такі, що забезпечують прозорість перенесення (migration
transparency).
Прозорість реплікації (replication transparency) дозволяє приховати той факт,
що існує кілька копій ресурсу.
Прозорість відмов (failure transparency) означає, що користувача ніколи не
повідомляють про те, що ресурс не в змозі правильно працювати, і що
система відновилася після якогось пошкодження.
Останній тип прозорості, який зазвичай асоціюється з РІС – це прозорість
збереження (persistence transparency), що маскує реальний (диск) або
віртуальний (оперативна пам'ять) ресурси збереження.
Проблема: як організувати прозорість
СИСТЕМИ РОЗПІЗНАВАННЯ ОБРАЗІВ ТА ОБРОБКА ЗОБРАЖЕНЬ
1. Алгоритм внутрішньо групових середніх (к-means)
Кластериза́ція ме́тодом k-сере́дніх (англ. k-means clustering) — популярний
метод кластеризації, — впорядкування множини об'єктів в порівняно однорідні
групи. Винайдений в 1950-х роках математиком Гуґо Штайнгаузом[1] і майже
одночасно Стюартом Ллойдом[2]. Особливу популярність отримав після
виходу роботи МакКвіна[3].
Мета методу — розділити n спостережень на k кластерів, так щоб кожне
спостереження належало до кластера з найближчим до нього середнім
значенням. Метод базується на мінімізації суми квадратів відстаней між
кожним спостереженням та центром його кластера, тобто функції

Опис алгоритму
Маємо масив спостережень (об'єктів), кожен з яких має певні значення по
ряду ознак. Відповідно до цих значень об'єкт розташовується у
багатовимірному просторі.
1) Дослідник визначає кількість кластерів, що необхідно утворити
2) Випадковим чином обирається k спостережень, які на цьому кроці
вважаються центрами кластерів
3) Кожне спостереження «приписується» до одного з n кластерів — того,
відстань до якого найкоротша
4) Розраховується новий центр кожного кластера як елемент, ознаки якого
розраховуються як середнє арифметичне ознак об'єктів, що входять у
цей кластер
5) Відбувається така кількість ітерацій (повторюються кроки 3-4), поки
кластерні центри стануть стійкими (тобто при кожній ітерації в
кожному кластері опинятимуться одні й ті самі об'єкти), дисперсія
всередині кластера буде мінімізована, а між кластерами —
максимізована
Вибір кількості кластерів відбувається на основі дослідницької гіпотези.
Якщо її немає, то рекомендують створити 2 кластери, далі 3,4,5, порівнюючи
отримані результати.
Головні переваги методу k-середніх — його простота та швидкість
виконання. Метод k-середніх більш зручний для кластеризації великої
кількості спостережень, ніж метод ієрархічного кластерного аналізу (у якому
дендограми стають перевантаженими і втрачають наочність).
2. Алгоритм і мережа Кохонена
Мережа Кохонена з’явилася у 1982 р., як спеціальний вид нейронних мереж
для обробки зображень і звука. Основною метою мереж Кохонена є
перетворення складних багатомірних даних в більш просту структуру малої
розмірності. Але виявилось, що вони гарно пристосовані для кластерного
аналізу, коли треба виявити приховані закономірності у великих масивах
даних.
Мережа Кохонена складається з вузлів, які об’єднуються в кластери.
Найбільш близькі вузли відповідають схожим об’єктам, а віддалені – не
схожим. В основі побудови мережі лежить конкурентне навчання, коли
вихідні вузли (нейрони) конкурують між собою за «перемогу». У ході
змагань в процесі навчання нейрони вибірково налагоджуються для різних
вхідних прикладів

Вхідні нейрони утворюють вхідний шар мережі, якій містить по одному


нейрону для кожного вхідного поля. Як і у звичайній мережі вхідні нейрони
не беруть участі у процесі навчання. Їх задачею е передача значень вхідних
полів початкової вибірки на нейрони вихідного шару. Кожен зв’язок між
нейронами має певну вагу, яка в процесі ініціалізації встановлюється
випадковим чином в інтервалі [0;1]. Процес навчання полягає у настроюванні
ваг. На відміну від більшості нейронних мереж, мережа Кохонена не має
прихованих шарів: дані з вхідного шару передаються безпосередньо на
вихідний, нейрони якого впорядковані у одномірну або двохмірну решітку
прямокутної або шестикутної форми. Значення кожної ознаки надходять
через вхідні нейрони на нейрони вихідного шару.
3. Алгоритм і мережа Хеммінга
Мережа Хемінга (Hamming) - розширення мережі Хопфілда. Мережа Хемінга
реалізує класифікатор, що базується на найменшій похибці для векторів
двійкових входів, де похибка визначається відстанню Хемінга. Відстань
Хеммінга визначається як число біт, що відрізняються між двома відповідними
вхідними векторами фіксованої довжини. Один вхідний вектор є незашумленим
прикладом образу, інший - зіпсованим чином. Вектор виходів навчальної
множини є вектором класів, до яких належать образи. У режимі навчання вхідні
вектори розподіляються за категоріями, для яких відстань між зразковими
вхідними векторами і поточним вхідним вектором є мінімальним.

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

Мережа є простою архітектурою прямого поширення з вхідним рівнем,


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

Навчання мережі Хемінга схоже на методологію Хопфілда. На вхідний шар


надходить бажаний навчальний образ, а на вихід вихідного шару надходить
значення бажаного класу, до якого належить вектор. Вихід містить лише
значення класу до якого належить вхідний вектор. Рекурсивний характер
прошарку Хопфілда забезпечує засоби корекції всіх ваг з'єднань.
4. Алгоритм ІСОМАД (ISODATA)
Для побудови системи розпізнавання образів можна використати
алгоритм ISODATA (Iterative Self-Organizing Data Analysis, Ітеративний
аналіз даних, що самоорганізовується) є цілком визначеною, гнучкою
послідовністю операцій. Їх ітеративне виконання призводить до того, що
основні елементи класифікації виробляються безпосередньо в процесі
роботи. Зокрема, це належить і до ядер, кількість яких апріорі не була
визначена. Алгоритм складається з наступних етапів. Початкове
розташування центрів вибирають довільно. Досвід показує, що остаточний
результат майже не залежить від первинного вибору. Визначають області, в
які входять точки, близькі (у евклідовому геометричному сенсі) до
початкових центрів.

Це - різновид алгоритму k-means,відрізняється введенням деяких


евристичних процедур, зокрема зміни числа кластерів.
Видалення кластерів. Якщо кластер містить мало елементів |Хі |q2 , тоді
кластер Хі розділяється на два. Обчислюються по компонентні дисперсії
5. Алгоритм навчання за Байєсом
Алгоритм наївного Байєса - це техніка, яка допомагає побудувати
класифікатори. Класифікатори - це моделі, які класифікують проблемні
екземпляри та надають їм мітки класів, які представлені у вигляді векторів
предикторів або значень ознак. Він заснований на теоремі Байєса. Його
називають наївним Байесом, оскільки він передбачає, що значення ознаки не
залежить від іншої ознаки, тобто зміна значення ознаки не вплине на
значення іншої ознаки. Його також називають ідіотським Бейесом через ту ж
причину. Цей алгоритм працює ефективно для великих наборів даних, тому
найкраще підходить для прогнозування в реальному часі.

Це допомагає обчислити задню ймовірність P (c | x), використовуючи


попередню ймовірність класу P (c), попередню ймовірність прогноктора P (x)
та ймовірність прогнозованого даного класу, що також називається
імовірністю P (x | c ).
Формула або рівняння для обчислення задньої ймовірності:
P (c | x) = (P (x | c) * P (c)) / P (x)
Для чого використовується алгоритм Naive Bayes?
1. Прогнозування в режимі реального часу: Алгоритм наївних Байєсів
швидкий і завжди готовий вивчити, тому найкраще підходить для
прогнозування в реальному часі.
2. Багатокласне передбачення: ймовірність багатокласової будь-якої цільової
змінної можна передбачити, використовуючи алгоритм Naive Bayes.
3. Система рекомендацій: класифікатор Naive Bayes за допомогою спільної
фільтрації будує систему рекомендацій. Ця система використовує методи
видобутку даних та методи машинного навчання для фільтрації інформації,
яку раніше не бачили, а потім передбачення, чи оцінить користувач певний
ресурс чи ні.
4. Класифікація тексту / Аналіз почуттів / Фільтрування спаму: Завдяки
кращій роботі з проблемами у багатьох класах та правилом незалежності
алгоритм Naive Bayes працює краще або має більш високий показник
успішності в класифікації тексту, тому його використовують у аналізі натур і
Фільтрація спаму.
6. Алгоритм навчання персептрона
Перцептро́н, або персептро́н (англ. perceptron від лат. perceptio —
сприйняття; нім. perzeptron) — математична або комп'ютерна модель
сприйняття інформації мозком (кібернетична модель мозку), запропонована
Френком Розенблатом в 1957 році[1] й реалізована у вигляді електронної
машини «Марк-1»[ru][nb 1] у. 1960 році. Перцептрон став однією з перших
моделей нейромереж, а «Марк-1» — першим у світі нейрокомп'ютером.
Важливою властивістю будь-якої нейронної мережі є здатність до навчання.
Процес навчання є процедурою налаштування ваг та порогів з метою
зменшення різниці між бажаними (цільовими) та отримуваними векторами на
виході. У своїй книзі Розенблат намагався класифікувати різні алгоритми
навчання перцептрону, називаючи їх системами підкріплення.

Система підкріплення — це будь-який набір правил, на підставі яких можна


змінювати з плином часу матрицю взаємодії (або стан пам'яті) перцептрону.
Класичний метод навчання перцептрону — це метод корекції помилки.[9]
Він являє собою такий вид навчання з учителем, при якому вага зв'язку не
змінюється до тих пір, поки поточна реакція перцептрона залишається
правильною. При появі неправильної реакції вага змінюється на одиницю, а
знак (+/-) визначається протилежним від знаку помилки.
Крім класичного методу навчання перцептрону, Розенблат також ввів
поняття про навчання без учителя, запропонувавши наступний спосіб
навчання:
Альфа-система підкріплення — це система підкріплення, за якої ваги всіх
активних зв'язків, що ведуть до елемента, змінюються на однакову величину,
а ваги неактивних зв'язків за цей час не змінюються.

7. Алгоритм навчання Хебба


Алгоритм навчання Хебба в контексті штучних нейронних мереж можна
сформулювати у вигляді таких тверджень:
• якщо два нейрони, пов'язані синаптичним зв'язком, збуджуються
синхронно, то відповідна синаптична вага зростає;
• якщо два нейрони по обидві сторони синапсу збуджуються асинхронно,
такий синапс слабшає (синаптична вага зменшується).
Можна сформулювати такі властивості синапсу Хебба:
• Залежність від часу. Зміна синаптичної ваги залежить від точного часу
виникнення передсинаптичного і постсинаптичного сигналів.
• Локальність. На зміну синаптичної ваги чинять дію сигнали, що
знаходяться в просторово-часовій близькості.
• Інтерактивність. Зміна синаптичної ваги визначається сигналами на
обидвох його кінцях.
• Кореляція. Механізм зміни синаптичної ваги визначається наявністю
кореляції між передсинаптичним і постсинаптичним сигналом.
8. Алгоритм самонавчання на основі методу потенційних функцій
Процес навчання за методом потенційних функцій полягає в побудові
вирішального правила (2.6.1.). Тоді процес розпізнівання за цим методом
може здійснюватись за таким алгоритмом: якщо в точці   , де знаходиться
реалізація, що розпізнається, обчислюємо   і отримуємо правило

IF   THEN   ELSE  .


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

9. Архітектура нейронних мереж та математичні можливості нейронних


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

Рекурентні мережі вважаються динамічними, оскільки за рахунок зворотних


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

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

Важливою властивістю нейронних мереж, що свідчить про їх великий


потенціал і широкі прикладні можливості - паралельна обробка інформації
одночасно великою кількістю нейронів. Завдяки цьому досягається значне
пришвидшення обробки інформації. Іншою не мнеш важливою особливістю
нейронних мереж є здатність до навчання та узагальнення інформації. Таким
чином досягається деяка схожість з роботою головного мозку людини.
10. Генетичний алгоритм навчання нейронної мережі
Генети́чний алгори́тм (англ. genetic algorithm) — це еволюційний алгоритм
пошуку, що використовується для вирішення задач оптимізації і
моделювання шляхом послідовного підбору, комбінування і варіації шуканих
параметрів з використанням механізмів, що нагадують біологічну еволюцію.

Особливістю генетичного алгоритму є акцент на використання оператора


«схрещення», який виконує операцію рекомбінацію рішень-кандидатів, роль
якої аналогічна ролі схрещення в живій природі. «Батьком-засновником»
генетичних алгоритмів вважається Джон Голланд (англ. John Holland), книга
якого «Адаптація в природних і штучних системах» (англ. Adaptation in
Natural and Artificial Systems) є фундаментальною в цій сфері досліджень.

Можна виділити такі етапи генетичного алгоритму:


1. Створення початкової популяції:
2. Обчислення функції допасованості для осіб популяції (оцінювання)
3. Повторювання до виконання критерію зупинки алгоритму:
1. Вибір індивідів із поточної популяції (селекція)
2. Схрещення або/та мутація
3. Обчислення функції допасованості для всіх осіб
4. Формування нового покоління

11. Градієнтний алгоритм навчання нейронної мережі


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

Де b - наступна позиція
a - поточне положення, гамма - функція очікування.

Отже, як ви бачите, градієнтний спуск - це дуже звукова техніка, але є багато


областей, де спуск градієнта працює неправильно. Нижче наведено деякі з
них:
1. Якщо алгоритм не виконаний належним чином, ми можемо зіткнутися
з чимось на зразок проблеми зниклого градієнта. Вони виникають, коли
градієнт занадто малий або занадто великий.
2. Проблеми виникають, коли розташування даних створює проблему
оптимізації, що не є опуклою. Градієнт гідний працює лише з
проблемами, які є опуклою оптимізованою проблемою.
3. Одним з дуже важливих факторів, на який слід звернути увагу при
застосуванні цього алгоритму, є ресурси. Якщо у нас менше пам'яті,
призначеної для програми, нам слід уникати алгоритму спуску
градієнта.
12. Дайте визначення лінійної розділимості та лінійної вирішувальної
функції.
Лінійна роздільність є властивістю двох наборів точок . Це найлегше уявити
у двох вимірах ( евклідова площина ), вважаючи, що один набір точок має
синій колір, а інший - червоний. Ці два множини можна лінійно розділити,
якщо на площині існує принаймні одна лінія з усіма синіми точками на одній
стороні лінії та всіма червоними точками на іншій стороні. Ця думка негайно
узагальнює евклідові простори вищих розмірів, якщо пряму замінити на
гіперплощину .

Проблема визначення того, чи є пара множин лінійно розділимими, та


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

Общий вид линейной решающей функции задается формулой


 
d(у)=wTy=w1y1+w2y2+…+ wnyn+wn+1= w0Тy+wn+1 (*)
 
где w=(w1,w2,…, wn)Т – весовой вектор.
Общепринято во все векторы образов вводить после последней компоненты 1
и представлять соотношение (*) в виде
 
d(у)=wTy
 
где х=(х1, х2,…, хn , 1)Т и w=(w1,w2,…, wn, wn+1)Т – пополненные векторы
образов и весов соответственно.
Рассмотрим случаи разбиения на несколько классов w1, w2,…, wМ. 

13. Знаходження дискримінантної функції по прецедентах методом


потенційних функцій
У методі потенційних функцій дискримінантна функція d(x) на-
ходиться по навчальній вибірці Ξ = {x1 ,..., x N } шляхом корекції k-й апрок-
симуючої функції d k (x) за допомогою наступної рекурентної процедури.
ри:
d k +1 (x) = d k (x) + rk +1u (x, x k +1 ), d0 (x) ≡ 0 , (1)
де {rk} - деяка послідовність, яка повинна бути такою, щоб
гарантувалася збіжність у певному сенсі d k (x) до d (x)
при k → ∞ .
Другий доданок в ітераційній формулі (1) здійснює корекцію
дискримінантної функції у разі, якщо черговий пред'явлений елемент
навчальної вибірки класифікується неправильно. Досліджуємо,
як при цьому необхідно здійснювати вибір коефіцієнтів rk. На початку
роботи алгоритму вважаємо, що d0(x) ≡0. При
пред'явленні вектора x1
відповідно до формули (1) знайдемо d1(x) = ru(x, x1). Вимагаємо, щоб
d1 ( x1 ) > 0 , якщо x1 ∈ X 1 і d1 ( x1 ) < 0 , якщо x1 ∈ X 2 (тобто y1d1 (x1 ) > 0
). Так як u ( x1 , x1 ) > 0 , то необхідно, щоб r1 > 0 якщо x1 ∈ X 1 і r1 < 0 ,
якщо x1 ∈ X 2 .
Далі перевіримо, чи класифікується вектор x 2 функцією d1 (x).
Якщо вектор х 2 класифікується правильно, тобто. d1 ( x 2 ) > 0 і x 2 ∈ X 1
або
d1 ( x 2 ) < 0 і x 2 ∈ X 2 (іншими словами, y2 d1 (x 2 ) > 0 ), то функція d1 (x)
не
коригується (думаємо r2 = 0 і d 2 (x) = d1 (x)). Якщо ж вектор x 2 класи-
фікується неправильно, то функцію d1(x) необхідно підкоригувати
за формулою (1). У цьому r2 > 0 , якщо d1 ( x 2 ) < 0 , x 2 ∈ X 1 і r2 < 0 , якщо
d1 ( x 2 ) > 0 , x 2 ∈ X 2 і т.д. Така корекція дискримінантної функції
аналогічною схемою корекції вагового вектора в алгоритмі персептрона.
14. Класифікатор Неймана-Пірсона

http://repo.ssau.ru/bitstream/Metodicheskie-ukazaniya/Baiesovskaya-
klassifikaciya-Elektronnyi-resurs-elektron-metod-ukazaniya-k-lab-rabote-2-
53546/1/%D0%9A%D0%BE%D0%BB%D0%BE%D0%BC
%D0%B8%D0%B5%D1%86%20%D0%AD.
%D0%98.%20%D0%91%D0%B0%D0%B9%D0%B5%D1%81%D0%BE
%D0%B2%D1%81%D0%BA%D0%B0%D1%8F%20%D0%BA%D0%BB
%D0%B0%D1%81%D1%81%D0%B8%D1%84%D0%B8%D0%BA
%D0%B0%D1%86%D0%B8%D1%8F.pdf

15. Класифікація за допомогою вирішальних функцій


Однією з основних задач розпізнавання образів є завдання опису класів.
Припустимо, що є деяка (кінцева) безліч класів Ω={w 1, …, wm}. Кожен
образ х описується деяким набором ознак просторі ознак – вектором х.
Весь простір ознак Х розбивається на m+1 попарно несумісних множин
(повну групу множин) Х 0, Х 1, …, Хm: Отже, якщо х Хi. Якщо ж х Х 0, то
вважатимемо, що образ х потрапив у область «невизначеності» і в цьому
випадку його класифікувати не будемо.
Кажуть, що множина Хі є множиною переваги класу wi в просторі Х.
Таким чином, межами класів образів, що розпізнаються, будемо вважати
межі областей Хi (i=0, 1, . . , m). Автоматичне перебування меж класів – одне
з основних завдань теорії розпізнавання образів. Межі класів об'єктів, що
розпізнаються, можна визначати по-різному, наприклад, за допомогою
поняття вирішальних функцій.

16. Класифікація моделей навчання. Формальна модель навчання


Модель завжди подібна до об'єкта моделювання. Вона може бути ізоморфна
або гомоморфна до об'єкта. Ізоморфна модель – це коли існує взаємно
однозначна відповідність між елементами і зв'язками моделі та об'єкта.
Гомоморфиа модель – коли відповідність однозначна лише в одному з
аспектів. Процес моделювання передбачає такі етапи:

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

Формальна модель має загальний характер без конкретного наповнення, є


немовби каркасом, на основі якого можна побудувати цілий ряд змістовних
моделей. Формальних моделей існує обмежена кількість. В описі формальної
моделі абстрагуються від змісту, внутрішнього наповнення, предметної
області, для якої створюється модель. Формальні моделі є абстрактними
моделями, описаними абстрактною, найбільш загальною мовою. Залежно від
рівня абстракції формальні моделі можуть охоплювати різну кількість
систем. До формальних моделей найбільш високого рівня абстракції
належать моделі "чорний ящик", "склад системи", "структура системи",
"структурна схема".
17. Класифікація у разі багатовимірного нормального розподілу ознак в
класах
Класифікація у разі багатовимірного нормального розподілу ознак у класах
● Багатовимірний нормальний розподіл
● Байєсовський класифікатор для нормального багатовимірного
розподілу ознак у класах
● Імовірності помилки неправильної класифікації у разі байєсівського
класифікатора для нормального розподілу ознак у класах

Багатовимірний нормальний розподіл (чи багатовимірний гаусів розподіл) у


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

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


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

http://repo.ssau.ru/bitstream/Metodicheskie-ukazaniya/Baiesovskaya-
klassifikaciya-Elektronnyi-resurs-elektron-metod-ukazaniya-k-lab-rabote-2-
53546/1/%D0%9A%D0%BE%D0%BB%D0%BE%D0%BC
%D0%B8%D0%B5%D1%86%20%D0%AD.
%D0%98.%20%D0%91%D0%B0%D0%B9%D0%B5%D1%81%D0%BE
%D0%B2%D1%81%D0%BA%D0%B0%D1%8F%20%D0%BA%D0%BB
%D0%B0%D1%81%D1%81%D0%B8%D1%84%D0%B8%D0%BA
%D0%B0%D1%86%D0%B8%D1%8F.pdf
19. Лінійні вирішальні функції (ЛВФ)

20. Математична постановка задачі розпізнавання образів


Нехай U – безліч образів у цій задачі розпізнавання. Окремий образ з цієї
множини будемо позначати символом x. Кожен образ x U∈ може
характеризуватись нескінченним (і навіть незліченним) числом
ознак. На етапі формування алфавіту ознак ми маємо обрати деяку
підмножину ознак (як правило, кінцеве), яку називають простором ознак. Це
безліч будемо позначати через X. Як правило, безліч X має лінійну або
метричну структури. Найчастіше X – кінцевий метричний ( n X R = ) або
лінійний простір. Нехай x – елемент простору X , який відповідає образу x
U∈ , а P U X : → – оператор, що відображає x у x.
Зауважимо, що оператор є оператором проектування,
тобто. P^2 = P.

http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf

стр 14-16
21. Метод опорних векторів (Лінійно роздільний випадок та лінійно
нероздільний випадок)
Машина (метод) опорних векторів (SVM, Support Vector Machine) виник у
ряді робіт У. Вапника1 та інших. в 60-80-ті роки. Цей метод відноситься до
методів навчання з учителем і призначений для знаходження оптимальних у
певному сенсі вирішальних функцій. Найбільш ефективна машина опорних
векторів при розподілі двох класів. За швидкістю поділу двох класів SVM
вважається найкращим методом. C1 = х1
Переваги та недоліки SVM:
1) це найшвидший метод знаходження вирішальних функцій;
2) метод зводиться до вирішення завдання квадратичного програмування у
опуклій області, яка завжди має єдине рішення;
3) метод знаходить смугу максимальної ширини, що дозволяє в подальшому
здійснювати більш впевнену класифікацію;
4) метод чутливий до шумів та стандартизації даних;
5) немає загального підходи до автоматичного вибору ядра (і побудові
спрямляющего підпростору загалом) у разі лінійної неподільності класів.
http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 46-52
22. Метод найближчих сусідів

http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 117
23. Метод потенційних функцій
Цей підхід був розвинений у 1962-1965 роках у роботах радянських
математиків М.А. Айзермана, Е.М. Браверманна, Л.І. Розоноера та ін. І. Е.М.
У цьому методі для побудови безлічі прецедентів вирішальної функції d(x) ,
що розділяє точки двох класів, використовується наступна фізична аналогія.
Кожна точка навчальної вибірки ототожнюється з одиничним гравітаційним
зарядом. Багато таких зарядів створює гравітаційне поле. Якщо є кілька
множин точкових зарядів, що відповідають різним класам, то пробний заряд
«притягнеться» до того класу, який у цій точці простору створює більший
потенціал.
Оцінюючи в цілому метод потенційних функцій, можна сказати, що він є
деяким узагальнюючим підходом до знаходження дискримінантної функції -
багато інших методів вирішення цього завдання (наприклад, алгоритм
навчання персептрона) є ітераційною процедурою і відрізняються один від
одного вибором потенційної функції.

24. Навчання багатошарової НМ методом зворотного розповсюдження


помилки
Метод зворотного поширення помилки (error back propagation) було
запропоновано Румельхартом, Хінтоном і Вільямсом (Rumelhart D.E., Hinton
G.E., Williams RJ) в 1986 році і призначений для навчання багатошарової
мережі.

25. Нейронна мережа Хопфілда та її застосування .


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

26. Нечіткі нейронні мережі. Властивості. Алгоритми функціонування.


Перевагою моделей, побудованих на основі нейронних мереж, є можливість
отримання нової інформації про проблемну область в формі деякого
прогнозу. При цьому побудова та налаштування нейронних мереж
здійснюється за допомогою їх навчання на основі наявної і доступної
інформації.
Недоліком нейронних мереж є уявлення знань про проблемну область у
спеціальному вигляді, яке може істотно відрізнятися від можливої змістовної
інтерпретації існуючих взаємозв'язків і відношень.
Нечітка нейронна (гібридна) мережа – це нейронна мережа з чіткими
сигналами, вагами і активаційною функцією, але з об'єднанням xi і wi, p1і p2
з використанням t-норми, t-конорми або деяких інших безперервних
операцій. Входи, виходи і ваги нечіткої нейронної мережі дійсні числа, що
належать відрізку [0, 1]. Нечіткою нейронною мережею зазвичай називають
чітку нейронну мережу, яка побудована на основі багатошарової архітектури
з використанням «І», «АБО» нейронів. Нечіткий нейрон «І». Сигнали xi і wi в
даному випадку об'єднуються за допомогою трикутної конорми, а вихід
утворюється із застосуванням трикутної норми.
Нечітка нейронна мережа як правило складається з чотирьох шарів: шару
фазифікація вхідних змінних, шару агрегування значень активації умови,
шару агрегування нечітких правил і вихідного шару.
27. Опишіть алгоритм персептрона для побудови лінійної вирішувальної
функції.

http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 53
28. Опишіть відомі Вам постановки задачі класифікації.
Задача класифіка́ції — формалізована задача, яка містить множину об'єктів
(ситуацій), поділених певним чином на класи. Задана скінченна множина
об'єктів, для яких відомо, до яких класів вони належать. Ця множина
називається вибіркою. До якого класу належать інші об'єкти невідомо.
Необхідно побудувати такий алгоритм, який буде здатний класифікувати
довільний об'єкт з вихідної множини.
Класифікувати об'єкт — означає, вказати номер (чи назву) класу, до якого
належить цей об'єкт.

Класифікація об'єкта — номер або найменування класу, що видається


алгоритмом класифікації в результаті його застосування до цього об'єкта.

Наведемо деякі типові постановки задач класифікації.

1. Задача ідентифікації, яка полягає у тому, щоб вирізнити певний


конкретний об’єкт серед йому подібних (наприклад, впізнати серед інших
людей свою дружину).

2. Віднесення об’єкта до того чи іншого класу. Це може бути, наприклад,


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

3. Кластерний аналіз, який полягає в розділенні заданого набору об’єктів на


класи – групи об’єктів, схожі між собою за тим чи іншим критерієм. Цю
задачу часто називають класифікацієюбез учителя, оскільки, на відміну від
задачі 2, класи апріорно не задані.
29. Опишіть типову схему розпізнавання в просторі ознак.
Схема розпізнавання в просторі ознак повністю відповідає загальній схемі. В
даному разі “модельним описом” об’єкта є його вектор ознак, і тому
“формування модельного опису об’єкта “ є не що інше, як виділення ознак,
отримання числових значень ознак.
Виділення ознак не варто змішувати з іншою задачею – задачею вибору
інформативних ознак, за якими необхідно здійснювати класифікацію. Такий
вибір повинен здійснюватися на етапі навчання; на етапі розпізнавання
просто визначаються конкретні значення ознак для всіх розпізнаних об’єктів.

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

Розпізнавання образів є однією з найфундаментальніших проблем теорії


інтелектуальних систем. З іншого боку, задача розпізнавання образів має
величезне практичне значення. Замість терміну "розпізнавання" часто
використовується інший термін — "класифікація". Ці два терміни у багатьох
випадках розглядаються як синоніми, але не є повністю
взаємозамінюваними. Кожний з цих термінів має свої сфери застосування, і
інтерпретація обох термінів часто залежить від специфіки конкретної задачі.
Типові постановки задач класифікації
1. Задача ідентифікації, яка полягає у тому, щоб вирізнити певний
конкретний об'єкт серед йому подібних (наприклад, впізнати серед
інших людей свою дружину).
2. Віднесення об'єкта до того чи іншого класу. Це може бути, наприклад,
задача розпізнавання літер або прийняття рішення про наявність
дефекту у деякій технічній деталі. Віднесення об'єкта до певного класу
відображає найтиповішу проблему класифікації, і, коли говорять про
розпізнавання образів, найчастіше мають на увазі саме цю проблему.
Саме вона розглядається тут у першу чергу.
3. Кластерний аналіз, який полягає в розділенні заданого набору об'єктів
на класи — групи об'єктів, схожі між собою за тим чи іншим критерієм.
Цю задачу часто називають класифікацією без учителя, оскільки, на
відміну від задачі 2, класи апріорно не задані.

31. Охарактеризуйте байєсівські методи розпізнавання образів.


32. Охарактеризуйте гіпотезу компактності.
Як уже зазначалося, будь-який об’єкт при застосуванні дискримінантних методів
розпізнавання зображається вектором ознак у деякому n-вимірному просторі,
де n – кількість ознак. Таким чином, будь-якому об’єктові відповідає n –вектор X =
(xj; j = 1,…,n);

де xj – значення j –ї ознаки.

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


називається матрицею даних:

Y=( yij  ; i =1,…, q; j = 1, … , n+1).

де q - загальна кількість представників усіх класів, n - кількість ознак;

yij (j = 1, … , n) – значення j–ї ознаки для i-го об’єкта;

yi, n+1 - клас, до якого належить i - й об’єкт.

Всі дискримінантні методи так чи інакше спираються на гіпотезу компактності.


Відповідно до цієї гіпотези класові відповідає компактна множина точок у деякому
просторі ознак.

Слово «компактний» тут використовується у дещо незвичному значенні.


Компактною у даному розумінні називається множина точок, для якої:

● число граничних точок мале порівняно з загальним числом точок;


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

Ми будемо для простоти розглядати випадок двох класів, ця методологія


поширюється на більш загальний випадок.

+Отже, нехай ми маємо два класи: К1  і К2. Нехай довільний вектор X описується


своїми координатами: X = (x1, ... , xn). Кажуть, що вирішувальна
функція g(X) розділяє ці класи, якщо для всіх векторів класу К1  g(X) > 0, а для всіх
векторів класу К2  g(X) < 0.

33. Охарактеризуйте етап навчання, який передує розпізнаванню в


робочому режимі.
34. Охарактеризуйте основні задачі, які вирішуються на етапі
попередньої обробки сигналів і зображень.
Попередня обробка:
1. вибрати систему ознак, характерних для даної задачі, і перетворити дані
відповідним чином для подачі на вхід мережі (нормування, стандартизація і
т.д.). В результаті бажано отримати лінійно відокремлюваний простір
множини зразків;
2. вибрати систему кодування вихідних значень (класичне кодування, 2 на 2
кодування і т.д.)
35. Перелічіть основні властивості класів.
Можна виокремити такі основні властивості класів:

1) Усі представники класу мають певний набір спільних ознак (випливає з


визначення).
2) Змінюваність реалізацій класів. По-перше, різні об’єкти, що на лежать
одному класу, можуть бути не схожими між собою. Вони повинні мати
спільні інваріантні ознаки, але всі інші ознаки можуть як завгодно
варіювати. По-друге, один і той самий об’єкт може змінюватися з
часом і навіть поступово переходити від одного класу до іншого
(наприклад, перетворення пуголовка на жабу). Усе це свідчить про те,
що розпізнати чіткі межі класу часто неможливо.
3) Ознайомлення з деякою скінченою кількістю представників одного
класу дає можливість впізнавати інших представників цього класу.
Взагалі кажучи, ця властивість може не виконуватися. Але якщо ця
властивість виконується (принаймні, теоретично), це є дуже сильним і
важливим твердженням. Воно по суті означає можливість навчатися на
прикладах, тобто на основі спостереження певної кількості прикладів
(можливо, разом з контрприкладами), сформулювати правило
розпізнавання, яке дає змогу відрізняти представників даного класу від
представників іншого (можливо, з певною достовірністю тобто з
певним процентом помилок). У деяких випадках правилом
розпізнавання може бути предикат, який залежить від інформативних
або інваріантних ознак, інколи правило розпізнавання реалізується у
вигляді деякої складної процедури.
36. Персептронний метод навчання
Алгоритм навчання персептрона зводиться до ітераційного визначення вектора
ваг   за принципом “заохочення – покарання”. Наведемо короткий його опис.

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


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

k-ий крок навчання виглядає таким чином:

Якщо   і   то вектор ваг   замінюється вектором

 (3.6)

де с – приріст корекції.

Якщо   і   то вектор   замінюється вектором

 (3.7)

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

. (3.8)

Інакше кажучи, алгоритм вносить корекцію в вектор ваг   тільки в тому


випадку, коли пред’явлене на k-ому кроці навчання зображення було
неправильно класифіковано вектором  . Приріст корекції   повинен бути
додатним і може мати сталу або змінну величину.
37. Поняття вирішальних функцій
http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 16
38. Постановка задачі байесовської класифікації
http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 82
39. Постановка задачі кластеризації
http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 38
40. Приклади дихотомічних, номінальних та порядкових ознак
Номінальна шкала відображає лише можливість встановлювати рівність або
нерівність об'єктів. За такою шкалою вимірюють такі ознаки, як стать,
національність, віросповідання тощо. Приписування різних чисел різним
варіантам ознаки потрібно для того, щоб відрізняти один об'єкт від іншого
(напр., у випадку ознаки «стать» у відповідному місці анкети чи формуляра
ставити «1» для респондента чоловіка, а «2» — для жінки). В. для таких
випадків полягає в тому, що дослідник повинен уміти встановлювати
відношення рівності (нерівності) об'єктів з метою поділу спільноти, яку
вивчають, на класи (кожен клас - це пункт шкали), які не перетинаються.
Тому дослідник має визначити такі емпіричні індикатори, за допомогою яких
кожен об'єкт можна співвіднести з певним класом, тобто з позицією шкали.
Іноді це просто, як у вищеозначених випадках, але нерідко потрібно провести
значну й складну роботу для цього.
Серед атрибутивних ознак виділяють альтернативні (дихотомічні) і порядкові
(рангові).

Альтернативні (дихотомічні) ознаки містять два протилежних


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

41. Простий байесовський класифікатор


Байєсовський підхід об’єднує групу алгоритмів класифікації, заснованих на
принципі умовної ймовірності: для об’єкту за допомогою формули Байєса
визначається апостеріорна ймовірність належності кожному класу і
обирається той клас, для якого вона максимальна. Байєсовська класифікація
спочатку використовувалась для нормалізування знання експертів в
експертних системах, зараз вона також використовується у якості одного з
методів Data Mining [9].
Особливе місце у даній області відведене простому класифікатору Байєса
(Naive Bayes), в основі якого лежить припущення про незалежність ознак, що
описують системи, які підлягають класифікації. Це припущення значно
спрощує задачу, оскільки замість складної процедури оцінки багатовимірної
щільності ймовірності потрібна оцінка декількох одномірних щільностей.
Але, як показує практика, припущення щодо незалежності ознак рідко
виконується, що і дало ім’я методу.
До основних переваг класифікатору можна віднести легкість програмної
реалізації й низькі затрати на розрахунки. У тих випадках, коли ознаки
дійсно незалежні, метод оптимальний. Головний його недолік – відносно
низька якість класифікації у більшості реальних задач. Тому найчастіше його
використовують як примітивний еталон для порівняння різних моделей, чи як
блок для побудови більш складних алгоритмів.
42. Способи визначення відстані між вектором-образом і класом
43. Способи стандартизації ознак і векторів-образів

http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 33
44. Структура та математична модель нейро мережі
https://habr.com/ru/company/skillfactory/blog/525260/
45. Сформулюйте задачу розпізнавання як задачу віднесення об’єкта до
певного класу.
Віднесення об’єкта до того чи іншого класу. Це може бути, наприклад, задача
розпізнавання літер або прийняття рішення про наявність дефекту у деякій
технічній деталі. Віднесення об’єкта до певного класу відображає
найтиповішу проблему класифікації, і, коли говорять про розпізнавання
образів, найчастіше мають на увазі саме цю проблему. Тому ми
розглядатимемо її першочергово.

46. Сформулюйте метод найближчого сусіда.

47. Типи систем розпізнавання


Будь-яка класифікація засновується на класифікаційних принципах, у даному
випадку – властивостей інформації. Система РО класифікується: за
сукупністю ознак, які обробляються (прості, складні); за кількістю рівнів
датчиків ознак, які передають виміряні ознаки у систему РО (однорівневі,
багаторівневі); за відношенням до навчання (без навчання, з учителем, із
самонавчанням); за методами, покладанеми в основу математичного,
логічного та програмного забезпечення системи РО (логічні, ймовірнісні,
детерміновані, лінгвістичні, нейронні і т.д.).

1. За сукупністю ознак, які обробляються, системи РО класифікуються на:

1.1. Прості СРО з фізично однорідною інформацією: читаючі РС, в яких


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

1.2. Складні СР, які використовують фізично неоднорідну інформацію:


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

2. За кількістю рівнів датчиків ознак системи РО класифікуються на:


2.1. Однорівневі системи РО, які мають один рівень датчиків ознак Т1,Тз, …
Тn, що вимірюють властивості – ознаки невідомих об’єктів та явищ (x11,
…, x1k; x21, …, x2к; xn1, …, xnк) і передають їх у блок алгоритмів розпізнавання
(БАР). БАР за допомогою блоку апріорної інформації виробляє рішення
про розпізнавання образів.
2.2. Багаторівневі складні системи. В ній датчики ознак діляться на кілька
рівнів. Перший рівень складається з розпізнавальних локальних датчиків
нижчого рівня, які частку ознак переробляють і передають після переробки
на вищі рівні. Другий рівень складається з датчиків (розпізнавальних
пристроїв), призначених для фільтрації, переробки, об’єднання ознак
нижчого рівня і визначення ознак власного другого рівня, які можуть
передаватись на третій або ще вищий рівень.
Тобто, якщо в однорівневих СР ознаки отримуються безпосередньо в
результаті експериментів, то у багаторівневих хоча б частка ознак
формується на основі непрямих вимірювань, фільтрації, обробки та
об’єднання ознак.

3. За відношенням до навчання системи РО класифікуються на:


3.1. Системи без навчання мають достатньо апріорної інформації для
визначення апріорного словника та алфавіту класів ознак і для визначення
опису кожного класу на мові цих ознак. Тобто у першому наближенні
достатньо визначити відстані між класами або вирішальні границі та
вирішальні правила, які дозволяють розділити простір ознак на класи.
Звичайно для побудови цієї системи РО необхідно мати повну початкову
апріорну інформацію.
3.2. Системи з навчанням. В цих системах початкової інформації достатньо
для визначення апріорного алфавіту класів і апріорного словника ознак, але
недостатньо (чи недоцільно використовувати) для опису класів на мові ознак.
Початкова інформація дозволяє виділити конкретні об’єкти, які належать
різним класам. “Вчитель” багаторазово показує системі РО навчальні образи
відомого класу. Якщо система РО дає невірну відповідь, то за визначеним
алгоритмом у системі РО змінюють коефіцієнти підсилювання визначених
сигналів до отримання вірних відповідей. Після іспиту система РО працює
самостійно.
3.3. Самонавчальні системи. В цих системах початкової апріорної інформації
достатньо лише для визначення словника ознак, але недостатньо для
класифікації об’єктів. На стадії формування системі показують початкову
сукупність об’єктів, які задані значеннями своїх ознак. Але через обмежений
об’єм початкової інформації система при цьому не отримує вказівок, до якого
класу належать об’єкти початкової сукупності. Ці вказівки замінюються
рядом правил, у відповідності до яких на стадії самонавчання СР сама
виробляє класифікацію, якою вона керується в подальшому. Мета
самонавчання – напрацювання такої кількості інформації, щоб її було
достатньо для функціонування СР, для чого потрібно мати зворотний зв’язок
для коригування та уточнення напрацьованої апріорної інформації.

4. За методами, покладеними в основу математичного, логічного та


програмного забезпечення, системи РО класифікуються на:
4.1. Детерміновані системи – для будування алгоритмів розпізнавання
використовують “геометричні” міри близькості, засновані на вимірах
відстаней між кількісними ознаками об’єкта та еталонів класів.
4.2. Ймовірнісні системи – для будування алгоритмів розпізнавання
використовують ймовірнісні методи теорії статистичних рішень. Для цього
треба мати ймовірнісні залежності між ознаками об’єктів і класами.
4.3. Логічні системи засновані на дискретному аналізі й обчисленні
висловлень. Ми повинні вирішити систему булевих рівнянь з використанням
логічних ознак об’єктів і знайти невідомі величини – класи, до яких ці
об’єкти відносяться.
4.4. Структурні (лінгвістичні) системи – для побудови алгоритмів
розпізнавання використовується речення, кожне з яких описує структуру
(будову) об’єкта з непохідних (“атомарних”) елементів. Ці речення
складають спеціальну мову. Класифікація об’єкта виконується шляхом
порівняння речення невідомого об’єкта з еталонними реченнями класів.
4.5. Нейронні мережі – використовують моделі нейронів для розпізнавання
образів.
4.6. Системи з використанням методу потенціалів – ознака об’єкта
розглядається як його електричний потенціал, який зменшується зі
зростанням відстані до об’єкта. За рахунок цього області класів об’єктів
мають велике числове значення потенціалу і можуть розглядатися як “гори,
які відділяються одна від другої “ярами”.
4.7. Експертні системи РО. Експертні системи застосовують там, де існують
евристичні або інтуїтивні методи рішень і немає точних алгоритмів або
розрахунків. Експертна система – це сукупність комп’ютерних програм, яка
містить накопичені знання багатьох експертів у певній предметній області і
здатна в рамках цієї області класифікувати об’єкти, давати відповіді,
рекомендації, поради, запитуючи при необхідності додаткову інформацію.

48. Типи характеристик образів


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

Це інформаційні задачі, що складаються з двох етапів:

- перетворення початкових даних до вигляду, зручного для розпізнавання;

- власне розпізнавання (вказівка приналежності об'єкту певному класу).

В цих задачах можна вводити поняття аналогії або подібності об'єктів і


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

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


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

Виділяють наступні типи задач розпізнавання:


● Задача розпізнавання - віднесення пред'явленого об'єкту по його опису
до одного із заданих класів (навчання з вчителем);

● Задача автоматичної класифікації - розбиття безлічі об'єктів, ситуацій,


явищ по їх описах на систему непересічних класів (таксономия,
кластерний аналіз, самонавчання);

● Задача приведення початкових даних до вигляду, зручного для


розпізнавання;

● Динамічне розпізнавання і динамічна класифікація - задачі 1 і 2 для


динамічних об'єктів;

● Задача прогнозування - суть попередній тип, в якому рішення повинне


відноситися до деякого моменту в майбутньому.
49. Узагальнені вирішальні функції
http://www.lepskiy.ucoz.com/lect_Lepskiy_Bronevich_pass.pdf
стр 23
50. Чому рукописні літери важче розпізнавати, ніж машинні?
Розпізнати символи що акуратно надрукував лазерний принтер легко,
порівняно з чиїмось кривим рукописним почерком. Ось така проста, але
хитра, щоденна проблема, в якій людина завжди виграє перед машиною: всі
ми можемо зробити грубе але доволі успішне припущення щодо значення,
прихованого навіть у найгіршому людському почерку.
Тому якщо компьютеру необхідно розпізнати рукописний текст, то проблему
зазвичай спрощують. Наприклад машини для сортування пошти повинні
вміти розпізнавати тільки поштовий індекс, а не усю адресу доставки. Таким
чином їм потрібно тільки ідентифікувати відносно невелику кількість тексту
створеного з базових літер та чисел. Людей заохочують писати поштові
індекси акуратно дотримуючись пробілів між символами, також поштові
сервіси продають конверти з підготовленим місцем для поштового індексу
обережно виділеного квадратами на кожний символ.
Планшетні комп'ютери та мобільні телефони, які розпізнають рукописний
текст, часто використовують принцип особливостей для розпізнавання букв
під час їх написання. Наприклад, якщо ви пишете букву A, сенсорний екран
може зрозуміти що спочатку йде написання однієї нахиленої лінії, потім
другої, а потім горизонтальної лінії, що приєднується до них. Іншими
словами, комп’ютер завчасно на півшляху розуміє що саме ви хочете
написати, оскільки ви формуєте символ з окремих штрихів, один за одним, і
це робить розпізнавання набагато простішим, ніж розпізнавання рукописного
тексту вже написаного на папері.
51. Що таке зважені євклідові відстані? В якому випадку їх доцільно
використовувати?

52. Що таке ланцюговий код Фрімена?


Відомий спосіб кодування контуру – це ланцюговий код Фрімена.
Ланцюгові коди застосовуються для представлення межі у вигляді
послідовності відрізків прямих ліній певної довжини та напрямки. В основі
цього уявлення лежить 4 або 8 зв'язні грати. Довжина кожного відрізка
визначається роздільною здатністю ґрат, а напрямки задаються вибраним
кодом.
(Для представлення всіх напрямків у 4-зв'язній решітці достатньо 2-х біт, а
для 8-зв'язної решітки ланцюгового коду потрібно 3 біти)
Один з перших способів кодування ЕВ був запропонований в роботах
Фрімена [52-53], в залежності від восьми можливих напрямків на квадратної
сітківці кожен стандартний елементарний вектор кодується відповідним
цілим числом від 0 до 7. Алгоритм показано на рисунку
53. Які Ви знаєте міри близькості між об’єктами, якщо ознаки є
кількісними?
ПРОЕКТУВАННЯ СИСТЕМ ШТУЧНОГО ІНТЕЛЕКТУ
1. Аналіз стабільно-ефективних компромісів в складних системах на
основі методу «загроз і контрзагроз»

2. Архітектура експертних систем


Експертна система (expert system) – комп’ютерна програма, здатна частково
замінити фахівця-експерта у вирішенні проблемної ситуації. Вона є
інструментом, що підсилює інтелектуальні здібності експерта. Мета розробки
експертної системи (ЕС) полягає в отриманні програми, яка при розв’язанні
задач, складних для експерта-людини, отримує результати, що не
поступаються якістю та ефективністю рішенням, отримуваним експертом.
Використовують також термін «інженерія знань», введений Е.
Фейгенбаумом. Призначення ЕС полягає у вирішенні досить складних для
експертів задач на основі накопичуваної бази знань, що відображає досвід
роботи експертів у даній проблемній області. Перевага застосування ЕС
полягає в можливості прийняття рішень в унікальних ситуаціях, для яких
алгоритм заздалегідь не відомий і формується за вихідними даними у вигляді
ланцюжка міркувань (правил прийняття рішень) із БЗ. Причому рішення
завдань передбачається здійснювати в умовах неповноти, недостовірності,
багатозначності вихідної інформації і якісних оцінок процесів.
ЕС відрізняються від інших видів програм із галузі ШІ,
оскільки: − оперують предметами реального світу, що
потребує наявності значного досвіду, накопиченого
людиною. Мають яскраво виявлену практичну
направленість у науковій або комерційній галузі; −
високопродуктивні, тобто система за прийнятний час
знаходить рішення, яке не гірше за запропоноване
спеціалістом у цій предметній області; − має здатність
пояснити, чому запропоноване саме таке рішення, і
довести його обґрунтованість.
Типова статична ЕС складається з таких основних компонентів (рис.
4.1): вирішувача (інтерпретатора); робочої пам’яті (РП), яка називається
також базою даних (БД); бази знань (БЗ); компонента набуття знань;
пояснювального компонента; діалогового компонента.
Рис. 4.1. Структура статичної ЕС База даних (робоча пам’ять) призначена для
зберігання вихідних і проміжних даних розв’язуваного в поточний момент
завдання. База знань в ЕС призначена для зберігання довгострокових (а не
поточних) даних, що описують розглянуту область, і правил, що описують
доцільні перетворення даних цієї області. Вирішувач, використовуючи
вихідні дані з робочої пам’яті і знання з БЗ, формує таку послідовність
правил, які, будучи застосованими до вихідних даних, приводять до
вирішення завдання. Компонент набуття знань автоматизує процес
наповнення ЕС знаннями, здійснюваний користувачем-експертом.
Пояснювальний компонент пояснює, як система отримала розв‘язок задачі
(або чому вона не отримала розв‘язку) і які знання вона при цьому
використовувала, що полегшує експерту тестування системи і підвищує
довіру користувача до отриманого результату. Діалоговий компонент
орієнтований на організацію дружнього спілкування з користувачем як у ході
вирішення завдань, так і в процесі набуття знань і пояснення результатів
роботи. Статичні ЕС використовуються в тих додатках, де можна не брати до
уваги зміни навколишнього світу, що відбуваються за час виконання
завдання. Перші ЕС, які отримали практичне використання, були
статичними.
На рис. 4.2 показано, що в архітектуру динамічної ЕС
вводяться два додаткові компоненти: − підсистема
моделювання зовнішнього світу; − підсистема зв’язку із
зовнішнім оточенням. Остання здійснює зв’язки із
зовнішнім світом через систему датчиків і контролерів.
Крім того, традиційні компоненти статичної ЕС (БЗ і
машина виведення) зазнають істотних змін, щоб
відобразити часову логіку, яка відбувається в
реальному світі подій.

Рис. 4.2. Структура динамічної ЕС


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

3. Архітектура рекомендаційних систем


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

Рис. 1. Схема інтеграції рекомендаційної системи


з основними сервісами компаній-клієнтів
Універсальна рекомендаційна система включає дві підсистеми, взаємодіють з
основним сервісом: власне рекомендаційна система, яка забезпечує збір
даних та вироблення рекомендацій; модуль обробки та інтелектуального
аналізу даних (рис. 2).
Рис. 2. Підсистеми універсальної рекомендаційної системи
Ці дві підсистеми можуть працювати незалежно одна від одної. Проте
доповнення рекомендаційної системи засобами аналізу даних суттєво
підвищує якість її роботи.
Архітектура рекомендаційної системи
При проектуванні архітектури системи, яка взаємодіє з сервісом та
користувачами, було обрано мікросервісний підхід. Мікросервісний підхід –
це особливий
метод розробки програмних систем, який знаходить широке застосування в
останні
роки. Мікросервісна архітектура передбачає розробку програмних програм як
набору незалежних невеликих сервісів, що розгортаються, кожен з яких
запускає
унікальний процес і забезпечує комунікацію за допомогою чітко
визначеного,
легкий механізм. Завдяки гнучкості та масштабованості ці архітектурні
рішення
є найбільш підходящими, коли потрібно включити підтримку для цілого ряду
платформ та пристроїв різних типів.
Основні переваги застосування мікросервісів:
 архітектура надає розробникам свободу самостійно розробляти
та розгортати служби;
 мікросервіс може бути розроблений невеликою командою;
 код для різних служб може бути написаний різними мовами;
 проста інтеграція та автоматичне розгортання (з використанням
інструментів безперервної інтеграції з відкритим вихідним кодом, таких як
Jenkins, Hudson і т. д.);
 легкість розуміння та модифікації коду;
 можливість використання розробниками новітніх технологій;
 простота масштабування та інтеграції зі сторонніми сервісами.
Але цей підхід має свої недоліки – розробникам доводиться мати справу з
збільшенням складності робіт при проектуванні, реалізації та супроводі
розподіленої системи, зокрема:
 розподілена архітектура привносить додаткову складність, оскільки
розробникам доводиться балансувати навантаження, підтримувати
відмовостійкість тощо;
 розробники повинні докласти додаткових зусиль для впровадження та
підтримання механізмів взаємодії між сервісами, обробки різних
форматів повідомлень, реалізації дорожчих віддалених викликів,
повинні використовувати грубіші віддалені API-інтерфейси;
 завдяки розподіленому розгортанню тестування може стати складним та
стомлюючим;
 при «перерозподілі обов'язків» між компонентами можуть виникнути
проблеми, неузгоджена робота може призвести до дублювання зусиль;
обробка функцій, що охоплюють більше однієї служби, потребує
взаємодії та співпраці між різними командами;
 збільшення кількості послуг може призвести до інформаційних бар'єрів;
 коли кількість послуг збільшується, інтеграція та управління системою в
цілому
може стати складним;
 архітектура зазвичай призводить до збільшення споживання пам'яті та ін.
Таким чином, етап проектування архітектури, вибору технологій для
реалізації
компонентів системи стає найскладнішим та найвідповідальнішим етапом
розробки.
У системі, що розробляється, виділені наступні завдання, що реалізуються як
окремі мікросервіси: збирання даних; формування оцінки об'єктів; видача
рекомендацій.
Для службових обчислень обрано архітектуру, засновану на кластерах,
що забезпечують прозорість системи. В результаті цього підвищується
надійність, збалансованість та продуктивність платформи.
Загальна архітектура рекомендаційної системи представлена на рис. 3.
Як основний кластер для зберігання та обробки даних використовується
програмна платформа Hadoop - система, що складається з безлічі різних
компонентів, що у сукупності створюють єдину платформу. Ця платформа
має
відкритий вихідний код і призначена для зберігання та обробки даних, які
надто великі для одного конкретного пристрою або сервера. Сила Hadoop
полягає у її здатності масштабуватися за тисячами товарних серверів, які не
поділяють пам'ять чи дисковий простір. Hadoop делегує завдання через
робочі сервери, які називаються «робочими вузлами» або «підлеглими
вузлами», суттєво використовуючи можливості кожного пристрою та
запускаючи їх одночасно. Для цілей роботи використовується розподілена
файлова система Hadoop (HDFS) - масштабована файлова система, яка
розподіляє та зберігає дані на всіх машинах у кластері Hadoop (групі
серверів), що дозволяє зберігати величезні файли.

Рис. 3. Спрощена архітектура рекомендаційної системи


4. Архітектура системи штучного інтелекту на основі нейромережевих
методів обчислювального інтелекту

5. Галузі застосування систем штучного інтелекту


Застосування ШІ ефективне для: − слабоструктурованих
наочних галузей, тобто галузей алгоритм дії в яких
наперед невідомий. Для таких галузей характерна
неясність і нечіткість у вхідних даних, наявність різних
шумів. Разом із тим рішення вимагається ухвалювати
однозначні, чіткі й зрозумілі, бажано також передбачити
ефективність цих рішень. До таких галузей відносяться:
медицина, економічний менеджмент, управління
складними технічними об’єктами, психологія,
лінгвістика тощо;
− сфери освіт и. У низці галузей навчання припускає
дуже велику кількість циклів повторень навчальної
інформації і дій в спеціально сконструйованій
навчальній ситуації з різними варіаціями: керування
рухом літака, заучування іноземних слів і фраз щодо
певної ситуації тощо. Навчання окремим навичкам і
умінням за допомогою обчислювальних машин набагато
дешевше, а головне ефективніше;
− систем пошуку інформації, оскільки вони є основою
для побудови глобальних інформаційних сховищ. Одним
із найяскравіших прикладів може бути «м’який пошук».
Галузями неефективного застосування методів ШІ є добре структуровані
предметні галузі. До них відносяться передусім точні та інженерні науки
(математика, фізика, опір матеріалів тощо). Це обумовлено тим, що для
вирішення задач у цих науках вже існують свої власні надійні алгоритми і
методи, випробувані протягом десятків або навіть сотень років.
Далі наведено деякі галузі застосування ШІ з прикладами реалізації.
1. Системи, що імітують творчі процеси:
− доведення теорем на основі дедукції;
− автоматичний синтез програм, доведення їх правильності;
− ігрові програми: хрестики-нулі, шахи. Розвиток теорії пошуку в
просторі вирішення;
− програми генерації прозаїчних і поетичних текстів, музичних творів;
− інтелектуальні навчальні системи (т’ютори).
2. Сприйняття і розпізнавання образів: розпізнавання мови; розпізнавання
тексту машинописного і рукописного (ABBYY FineReader); розпізнавання
образів, сцен.
3. Інформаційні системи, що ґрунтуються на знаннях: експертні системи;
системи машинного перекладу; системи автоматичного реферування –
перетворення первинної інформації з метою її стиснення із збереженням
головної ідеї документа; індуктивні системи – виведення закономірностей на
основі даних спостереження або експериментальних даних.
4. Інтелектуальні інформаційні системи – великі і дуже великі програми,
призначені для вирішення задач у предметній галузі на основі математичних
і алгоритмічних моделей, які можуть вести осмислений діалог із
користувачем з метою спростити управління, скоротити обсяг роботи
людини, підвищити якість тощо: системи підтримки ухвалення рішень для
людей, що працюють в екстремальних умовах (дефіцит інформації і часу,
висока ціна помилки) – оператори керування рухом повітряних суден,
льотчики, військові при протизенітному маневрі; системи інтелектуального
моніторингу: стеження за станом пацієнтів у реанімації, контроль
технологічних процесів в екологічно небезпечних підприємствах (хімічні
заводи, атомні електростанції). Монотонність процесу нагляду «присипляє»
оператора. При аварії він від «раптовості» переходить у стресовий стан і
неадекватно реагує на ситуацію.
5. Робототехніка. З погляду «інтелектуальності» розрізняють декілька
поколінь роботів: перше покоління – роботи-маніпулятори, які діють згідно
із затвердженою і незмінною програмою (наприклад, подаючи заготівки до
верстата). Якщо в процесі роботи з будьяких причин зміниться відстань до
заготівки, робот її втратить; друге покоління – адаптивні роботи, оснащені
великою кількістю датчиків. Застосовуються, наприклад, для зварювання
кузовів автомобілів; Третє покоління – робото-технічні системи
(дослідницькі роботи на планетах, роботи, що працюють за несприятливих
умов середовища – радіація, хімічне зараження).
6. Системи спілкування з обчислювальними машинами природою мовою –
системи типу запитання-відповідь, синтезатори мови.

6. Динамічні експертні системи в управлінні


Нове покоління систем - інтелектуальні системи (ІВ) - викликало до життя
інші принципи організації компонентів систем: з'явилися інші поняття,
терміни, блоки, які раніше не зустрічалися в розробках і, отже, у науковій
літературі.
Інтелектуальні системи здатні синтезувати ціль, приймати рішення до дії,
забезпечувати дію для досягнення мети, прогнозувати значення параметрів
результату дії та зіставляти їх із реальними, утворюючи зворотний зв'язок,
коригувати ціль або управління [4, 5]. На рис. 8 наведена структурна схема
ІС, де виділено два великі блоки системи: синтез мети та її реалізація. У
першому блоці на основі активного оцінювання інформації, отриманої від
системи датчиків, за наявності мотивації та знань синтезується мета та
приймається рішення до дії. Активне оцінювання інформації починається під
впливом пускових сигналів. Мінливість навколишнього середовища та
власного стану системи може призводити до потреби в чомусь (мотивації), а
за наявності знань може бути синтезована мета. Під метою розуміється
ідеальне, уявне передбачання результату діяльності. Продовжуючи активно
оцінювати інформацію про навколишнє середовище та власний стан системи,
зокрема об'єкта управління, зі зіставленням варіантів досягнення мети можна
прийняти рішення до дії.
Далі, у другому блоці динамічна експертна система (ДЕС) на підставі
поточних відомостей про навколишнє середовище та власний стан ІС за
наявності мети та знань здійснює експертну оцінку, приймає рішення про
управління, прогнозує результати дії та виробляє управління. Подане в
кодованому вигляді управління перетворюється на фізичний сигнал і
надходить на виконавчі пристрої. Об'єкт управління, отримуючи сигнал від
виконавчих пристроїв, здійснює ту чи іншу дію, результати якого,
представлені у вигляді параметрів, ланцюга зворотного зв'язку 2 надходять у
ДЕС, де порівнюються з прогнозованими. Одночасно параметри результату
дії, інтерпретовані відповідно до властивостей мети і що надходять у блок 1,
можуть використовуватися для емоційної оцінки досягнутого результату:
наприклад, мета досягнута, але результат не подобається. Якщо ціль
досягається за всіма параметрами, то керування підкріплюється. Інакше
відбувається корекція управління. Коли ж ціль недосяжна, то коригується
ціль. Слід зазначити, що з раптових змін стану навколишнього середовища,
чи об'єкта управління, чи системи загалом можливий синтез нової мети та
організація її досягнення. Структура ІС поряд з новими містить традиційні
елементи та зв'язки, центральне місце у ній займає динамічна експертна
система.
Динамічні експертні системи та база знань. Формально ІС описується
наступною шісткою:

де - безліч моментів часу; і - безліч станів системи,


навколишнього середовища, мотивації, мети, прогнозованого та реального
результату; та -- матриці параметрів; - інтелектуальні оператори
перетворення, які використовують знання.

У цьому описі поєднуються уявлення об'єктів системи як безлічі значень, чи


безлічі висловлювань, чи якихось інших форм. Динамічні властивості ІВ
можуть бути описані у просторі станів. Інтелектуальні оператори, що
реалізують сприйняття, уявлення, формування поняття, судження та
умовиводи у процесі пізнання, є формальним засобом обробки відомостей та
знань, а також прийняття рішення. Всі ці аспекти мають бути покладені в
основу побудови ДЕС, що функціонують у реальному часі та реальному світі.
Динамічна експертна система є деяке комплексне освіту, здатне оцінювати
стан системи та середовища, зіставляти параметри бажаного та реального
результатів дії, приймати рішення та виробляти управління, що сприяє
досягненню мети. Для цього ДЕС повинна мати запас знань і мати методи
вирішення завдань. Знання, що передаються експертній системі, можна
поділити на три категорії [7].
Сюди ж входять зв'язки, відносини та залежності між поняттями та їх
властивостями, причому зв'язки абстрактні, також виражені словами та
термінами. Концептуальне (на рівні понять) знання - це знання, втілене в
словах людської мови або, конкретніше, - у науково-технічних термінах і,
природно, у класах і властивостях об'єктів навколишнього середовища, що
стоять за цими термінами. Концептуальне знання - це сфера головним чином
фундаментальних наук, якщо враховувати, що поняття є найвищим
продуктом вищого продукту матерії - мозку.
Фактуальне, предметне знання - це сукупність відомостей про якісні та
кількісні характеристики конкретних об'єктів. Саме з цією категорією знання
пов'язуються терміни «інформація» та «дані», хоча таке вживання цих
терміналів дещо принижує їхнє значення. Будь-яке знання несе інформацію
та може бути представлене у вигляді даних; фактуальне знання - це те, з чим
завжди мали справу обчислювальні машини і з чим вони мають справу досі.
Сучасну форму накопичення даних прийнято називати базами даних.
Звичайно, для організації баз даних, для пошуку в них необхідної інформації
треба спиратися на концептуальне знання.
Алгоритмічне, процедурне знання — це те, що прийнято називати словами
«уміння», «технологія» та ін. та використовуватись без участі авторів. Така
реалізація алгоритмічного знання називається програмним продуктом.
Найбільш поширені форми програмного продукту – пакети прикладних
програм, програмні системи та інші, орієнтовані на конкретну сферу
застосування ДЕС. Організація та Використання пакетів прикладних програм
базується на концептуальному знанні.
Ясно, що концептуальне знання є вищою, що визначає категорією знання,
хоча з точки зору практики інші категорії можуть здаватися важливішими.
Саме тому, мабуть, концептуальне знання рідко втілюється у формі,
доступної обробки на обчислювальних машинах. А якщо втілюється, то
найчастіше неповно та однобічно. Носителем концептуального знання
залишається здебільшого людина. Це гальмує автоматизацію багатьох
процесів.
Подання концептуального знання, а точніше, системи, що реалізують всі три
категорії знання, але виділяють концептуальне знання на перший план і
працюють на основі його інтенсивного використання, називаються базами
знань.
Створення та широке застосування баз знань в ІС – одне з найактуальніших
завдань.
Концептуальну частину бази знань називатимемо моделлю предметної
області, алгоритмічну частину – програмною системою, а фактуальну
частину – базою даних.
Наступна функція ДЕС – вирішення завдань. Завдання може бути вирішена
машиною тільки в тому випадку, якщо вона формально поставлена (див.
наприклад, п1.2) - якщо для неї написано формальну специфікацію. Остання
має спиратися на деяку основу знань. Модель предметної області визначає
загальну обстановку, у якій виникло завдання, а специфікація – зміст
завдання. У сукупності вони дозволяють встановити, які абстрактні зв'язки та
залежності, у яких поєднаннях та в якій послідовності повинні бути
використані для вирішення задачі. Прикладні програми є конкретні засоби,
що стоять за цими залежностями, а також містять алгоритми для вирішення
рівнянь, що при цьому виникають. Нарешті, база даних постачає всі вихідні
дані або частина їх для виконання цих алгоритмів, відсутні дані повинні
утримуватися в специфікації.

Цим трьом частинам баз знань відповідають три етапи розв'язання задачі:
побудова абстрактної програми вирішення (включаючи виникнення задачі, її
постановку та специфікацію);
переклад завдання на підходящу машинну мову;
трансляція та виконання програми.
Побудова абстрактної програми пов'язана з представленням та обробкою
концептуального знання в ІС та за визначенням є надбанням штучного
інтелекту.
Штучний інтелект пов'язують з обробкою текстів, усних повідомлень
природною мовою, з аналізом та обробкою інформації (Розпізнавання всіх
видів зображень, доказ теорем, логічний висновок тощо).
Функціями ДЕС є також оцінка результатів розв'язання задачі, формування
параметрів майбутнього результату дії, прийняття рішення про управління,
вироблення управління та звірення параметрів бажаного та реального
результатів. Тут передбачається моделювання процесів для оцінки можливих
наслідків та коректності вирішення задачі.
Зазначимо, що у реальних випадках існує проблема опису досліджуваних
об'єктів. Такий опис неправомірно вважати частиною специфікації завдання,
оскільки щодо одного об'єкта ставиться, як правило, багато завдань, що,
природно, потрібно враховувати для формування бази знань. Крім того, може
виявитися, що завдання не вирішити до кінця автоматично, наприклад, через
неповноту специфікації або опису об'єкта. Тому в ІС доцільний на певних
стадіях інтерактивний режим роботи з ДЕС. Слід пам'ятати, що модель
предметної області визначає загальну обстановку (знання), а специфікація –
зміст завдання.
Дуже важливими проблемами є створення єдиного програмного середовища
та синтез алгоритмів безпосередньо по постановці задачі.
Залежно від мети, що стоїть перед ІС, база знань, алгоритми вирішення
задачі, прийняття рішення, вироблення управління можуть, природно, мати
різне уявлення, що залежить, у свою чергу, від характеру розв'язання задач.
Відповідно до цього можна бачити три типи ДЕС.
Структура ДЕС першого типу дано на рис. 9.

Тут передбачається, що концептуальні та фактуальні знання точно


відображають процеси та відомості, що належать до певної предметної
галузі. Тоді вирішення задачі, що виникає в цій галузі, буде отримано на
основі строгих математичних методів відповідно до постановки та
специфікації. Результати дослідження рішення та прогноз використовуються
для отримання експертної оцінки та прийняття рішення про необхідність
управління. Потім на основі відповідного алгоритму управління, що є в базі
знань, формується вплив, що управляє. Ефективність та несуперечність цього
впливу, перш ніж воно надійде на об'єкт управління, оцінюється за
допомогою імітаційної математичної моделі. Оцінка повинна виконуватися
швидше за реальні процеси в ІС.
Однак ДЕС, що реалізують прийняття рішення, є складними програмними
комплексами, призначеними для автоматичного прийняття рішення або для
допомоги особам, що приймають рішення, і при оперативному управлінні
складними системами та процесами, як правило, працюють в умовах
жорстких тимчасових обмежень.
На відміну від ДЕС першого типу, призначених для пошуку оптимального
рішення і базуються на строгих математичних методах і моделях оптимізації,
ДЕС другого типу в основному орієнтовані на вирішення задач, що важко
формалізуються, без повної і достовірної інформації. Тут використовуються
експертні моделі, побудовані на основі знань експертів – фахівців у даній
проблемній галузі, та евристичні методи пошуку рішення. Однією з основних
проблем при проектування ДЕС другого типу є вибір формального апарату
для опису процесів прийняття рішень та побудова на його основі моделі
прийняття рішень, адекватної проблемній області (семантично коректній). Як
такий апарат зазвичай використовують продукційні системи. Однак основні
дослідження ведуться в контексті алгоритмічного (детермінованого)
трактування продукційної системи з властивою їй послідовною схемою
пошуку рішення.
Отримані в результаті моделі часто неадекватні реальним проблемним
областям, що характеризується недетермінізм процесу пошуку рішення (рис.
10). Вихід із цього - паралелізм під час пошуку.
Реально слід орієнтуватися на об'єднання ДЕС першого та другого типу в
розрахунково-логічну ДЕС третього типу, де база знань поєднує опис у
вигляді строгих математичних формул з інформацією експертів, а також
відповідно – математичні методи пошуку рішення з нестрогими
евристичними методами, причому вага того чи іншого компонента
визначається можливістю адекватного опису предметної області та способом
відшукання рішення (рис. 11).
При розробці ДЕС виникають такі проблеми:
визначення складу бази знань та її формування;
розробка нових та використання відомих теорій та методів для опису
інформаційних процесів в ІС;
розробка способів уявлення та організації використання знань;
розробка алгоритмів та програмного забезпечення з розпаралелюванням та
використанням «гнучкої» логіки;
Знаходження відповідних обчислювальних середовищ для реалізації
паралельних алгоритмів для формування ДЕС.

Поряд з викладеним важливо відзначити, що ДЕС повинні володіти


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

7. Диференціально-модельна концепція систем штучного інтелекту


Диференціальні моделі повсюдно і звично використовуються у сучасній
науці та техніці для представлення динамічних систем. Природний інтерес до
побудови та застосування цих моделей при розробці та створенні
перспективних інтелектуальних систем автоматизованого проектування,
управління та навчання. Метою справжньої роботи є викладення тих
далекосяжних фундаментальних результатів у галузі систематики бази
макрофізичних знань, які випливають із дослідження проблеми
алгоритмізації побудови диференціальних моделей.
З погляду гносеології, фізика є наукою про пізнання фізичних сутностей
матеріальних об'єктів та систем. У макрофізиці пізнання ведеться без
залучення відомостей про будову речовини, починаючи з молекулярно-
кінетичного рівня, а фізична сутність ототожнюється з диференціальною
моделлю, тобто пізнання фізичної сутності полягає у побудові відповідної
диференціальної моделі. Подібна інтерпретація призводить до виділення
диференціальної макрофізики – сукупності макрофізичних наук, що досягли,
за класифікацією А. Ампера, найвищого диференціального рівня розвитку.
Диференціальну макрофізику утворюють: механіка (лінійна та кутова),
гідравліка (для рідин та газів), електрика (включаючи електромеханіку) та
термодинаміка. На жаль, згадана та підкреслена диференціально-модельна
концепція у пізнанні є єдиним, що ці науки поєднує. Решта - традиції,
термінологія, змінні, закони природи, принципи тощо. - специфічно кожної з
них і сприяє сприйняттю диференціальної макрофізики як єдиного
систематизованого і інтегрованого цілого. У кожній науці займаються тим
самим - пізнають фізичну сутність, тобто. будують диференціальні моделі,
але своїм вузькоспеціалізованим шляхом. Це багатомовність фізиків не
бентежить. Вони вважають своє завдання виконаним. А численна армія не
фізиків, що займається побудовою та застосуванням диференціальних
моделей, вимушено мириться з непростими міждисциплінарними
труднощами, що виникають. Особливо гостро це проявляється під час
навчання студентів, насамперед, у галузях автоматизованого проектування,
управління та технічної кібернетики.
Таким чином, проблема алгоритмізації побудови диференціальних моделей,
яка нас цікавить, до певної міри виявляється на «нічийній»
міждисциплінарній смузі. І одне із шляхів її вирішення - уважний аналіз
основи макрофізичних знань з позицій диференціально-модельної концепції,
єдино загальної всім макрофізичних наук. Насамперед звернемося до єдиної
процедури побудови диференціальних моделей, що включає наступні етапи:
1) вибір фізичних ефектів, що враховуються в моделі, і відповідного їм
переліку використовуваних законів природи;
2) визначення фізичного сенсу причинних та слідчих змінних;
3) причинно-наслідкова інтерпретація у законах природи;
4) застосування принципу композиції;
5) побудова шуканої диференціальної моделі з урахуванням причинно-
наслідкової інтерпретації законів природи.
Специфіка кожної макрофізичної науки проявляється у всіх чотирьох етапах.
Однак уважний аналіз принципів композиції (четвертий етап), що
використовуються в різних науках, призводить до однозначного висновку
про доцільність визнання принципу Лагранжа-Релея як універсального для
диференціальної макрофізики в цілому. Це закономірне наслідок з доведеної
його застосування для лінійної і кутовий механік (Ж. Лагранж), для
електрики та електромеханіки (Дж. Максвелл).
Дослідження прийнятої структури запису принципу композиції Лагранжа-
Релея призводить до отримання важливої інформації з другого та третього
етапів зазначеної вище процедури. По-перше, принцип має на увазі
необхідність використання чотирьох типів змінних, причинних координат р і
швидкості , наслідкових координат і швидкості .
По-друге, принцип являє собою рівняння балансу зовнішньої (вхідної) та

внутрішніх причинних швидкостей: , де


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

-кінетичного ,

-потенційного ,

-дисипативного ,
де А, В, С - відповідної назви коефіцієнти для лінійного варіанта законів.
Назви законів пов'язані з кінетичною і потенційною енергіями, що
визначаються ними, а також з дисипативною функцією Релея . Закони
представлені у нормальній формі запису, яка для кінетичного вигляду
відмінна від природної, загальноприйнятої форми. Для дисипативних законів
можливі нелінійні варіанти, для формування яких слід враховувати
незаперечення дисипативной функції .
Пропускаючи подальшу деталізацію, все представлене дозволяє заповнити
процедуру-алгоритм побудови диференціальних моделей систематизованим
міждисциплінарним звучанням з позицій диференціальної макрофізики в
цілому. Кожна макрофізична наука лише впорядковано конкретизує цей
алгоритм фізичним змістом змінних та законів природи. Причому з'являється
можливість дуже компактного представлення подібної конкретизації за
допомогою відповідних приватних діаграм, яка для зазначених вище трьох
законів має вигляд (див. рис. 1).
Вкрай важлива і цікава, з наукознавчої точки зору, можливість знаходження
способу співвіднесення приватних діаграм між собою. Адже це, з одного
боку, просто інша і конкретніша постановка завдання подолання
роз'єднаності макрофізичних наук, з другого - продовження більш високому
рівні систематики основи макрофізичних знань. Зрозуміло, що при такому
загальному розгляді співвідносити можна лише розмірності змінних та
коефіцієнтів. Перехід до приватних діаграм розмірності очевидний. Єдиною
проблемою є вибір підходящої для міждисциплінарних досліджень системи
розмірностей. За цією ознакою система СІ не підходить, оскільки відображає
багатомовність роз'єднаних фізичних наук. Повністю вільної від цього
недоліки є лише кінематична система розмірностей, що дозволяє
співвідносити змінні та коефіцієнти будь-якої фізичної природи, на що
звернув увагу Р. О. ді Бартіні.
У разі застосування кінематичної системи, приватні діаграми породжують
узагальнену діаграму розмірностей. Кожна з приватних діаграм пов'язана з
чотирма сусідніми правилами, що породжують (рис. 2).

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


на рис. 5.
Не маючи змоги в деталях обговорювати всі найцікавіші особливості
узагальненої діаграми, відзначимо лише головне:
1. Завдяки формальним породжувальним правилам вона включає у собі всі
відомі приватні діаграми, а й має яскраво вираженими прогнозуючими
властивостями, пропонуючи «інформацію для роздуми» про безліч раніше не
розгляданих приватних діаграм, тобто. про зовсім нову точку зору на
диференціальну макрофізику в цілому з новими можливостями систематики,
що відкриваються, і розвитку бази макрофізичних знань для перспективних
інтелектуальних систем.
2. Істотно нові можливості виникають у галузі алгоритмізації побудови
диференціальних моделей.
3. Стимулюється розвиток нової прогнозуючої галузі теорії розмірностей.
8. Еволюційний алгоритм оптимізації структури нейромережевої моделі
Нейронні мережі являють собою модель будови та процесів, що відбуваються
в корі головного мозку. Штучна нейронна мережа (ІНС) - Це набір
формальних нейронів (ФН), з'єднаних між собою. Формальний нейрон є
спрощеною моделлю біологічний нейрон. Структура формального нейрона
представлена на
Рис. 1.

Рисунок 1 – Штучний нейрон


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

где OUT – величина сигнала на выходе нейрона; f – функция активации


нейрона; xi – величина сигнала на i-м входе нейрона; Wi – весовой
коэффициент i-го входа нейрона.
Налаштування ІНС з апріорі заданою структурою полягає у пошуку
деякого набору вагових коефіцієнтів, такого, що отримана
нейромережна модель у процесі експлуатації дозволяла б найкращим
чином вирішувати поставлені завдання.
Існують три парадигми навчання ІНС:
- «З учителем»;
- «без учителя» (самонавчання);
- Змішана.

9. Еволюційні алгоритми вирішення задач багатокритеріальної


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

Де: x = (x1 , x2 ,..., xN )∈ X – вектор рішень, що задовольняє M


обмеження g(x) = (g1 (x), g2 (x),..., g M (x)) ≥ 0 , y = ( y1 ,
y2 ,..., yK )∈Y – вектор цільових функцій.
У цьому X позначає простір рішень, а Y – простір цілей чи
критерійний простір. Обмеження g(x) ≥ 0 визначають
множину допустимих розв'язків задачі.
Крім самої постановки задачі багатокритеріальної оптимізації необхідно
також запровадити ще ряд визначень та понять, характерних для теорії
вирішення багатокритеріальних завдань.
Допустима множина D визначається як множина векторів рішень x, які
задовольняють обмеженням g(x):
D = {x∈X | g(x) ≥ 0}.
Тоді допустима область у просторі цілей позначається через:

Критерії можуть бути узгодженими, нейтральними або суперечливими. У


першому випадку оптимізація одного з критеріїв призводить до покращення
інших. У другому випадку оптимізація одного критерію аж ніяк не впливає
на інші.
Багатокритеріальна оптимізація з генетичним алгоритмом
Загальна схема ГА
Нагадаємо загальну схему генетичного алгоритму:
1. Ініціалізувати випадковим чином популяцію рішень.
2. За допомогою оператора селекції вибрати частину популяції
(батьків) для породження нащадків.
3. Застосувати оператор схрещування.
4. Нові рішення (нащадки) зазнають мутації.
5. Формується нова популяція: вибрати рішення з батьків та нащадків.
6. Повторювати кроки 2 – 5 доки не виконається умова зупинки.
Далі йтиметься про чотири найбільш поширені методи
багатокритеріальної оптимізації з ГА:
1. VEGA – Vector Evaluated Genetic Algorithm;
Метод VEGA, вперше запропонований Шафером 1984 року, відноситься
до категорії селекції за цільовими функціями, що перемикаються. Це означає,
що селекція проводиться за придатністю індивідів для кожного з K критеріїв
окремо. Тим самим є проміжна популяція заповнюється рівними порціями
індивідів, відібраних по кожному з приватних критеріїв.
2. FFGA - Fonseca and Fleming's Multiobjective Genetic Algorithm;
Метод FFGA (1993) використовує засновану на Парето-домінуванні
процедуру ранжування індивідів, де ранг кожного індивіда визначається
кількістю домінуючих його індивідів.
3. NPGA - Niched Pareto Genetic Algorithm;
Третій аналізований метод - NPGA (Horn, Nafpliotis and Goldberg,
1994, В.Р. Гаріпов, 1998) - принципово відрізняється від двох попередніх,
оскільки у ньому закладено механізм підтримки різноманітності. Метод
NPGA
являє собою комбінацію турнірної селекції та концепції домінування за
Парето.
4. SPEA – Strength Pareto Evolutionary Algorithm.
Метод SPEA (Zitzler and Thiele, 1998) докорінно відрізняється від
розглянутих раніше методів, оскільки у ньому:
- Для призначення індивідам скалярного значення придатності
використовується концепція Парето-домінування;
- індивіди, що недомінуються щодо інших членів популяції, зберігаються
зовні у спеціальному зовнішньому множині;
- для зменшення кількості індивідів, що зберігаються у зовнішньому безлічі,
виконується кластеризація, що у свою чергу

10. Еволюційні алгоритми вирішення задач умовної оптимізації


Стандартний генетичний алгоритм
Загалом роботу генетичного алгоритму можна уявити
наступним чином:
1. Ініціалізувати випадковим чином популяцію рішень.
2. За допомогою оператора селекції вибрати частину популяції (батьків) для
породження нащадків.
3. Застосувати оператор схрещування.
4. Нові рішення (нащадки) зазнають мутації.
5. Формується нова популяція: вибрати рішення з батьків та нащадків.
6. Повторювати кроки 2 – 5 доки не виконається умова зупинки.
Умовна оптимізація з ГА
На кроках 2 та 5 стандартного ГА (селекція батьків та формування нового
покоління) вибір індивіда з популяції відбувається залежно від його ступеня
придатності. У випадку, ніж індивід більш придатний, тим більше шансів
бути відібраним. Ступінь придатності обчислюється через функцію
придатності.
Один із недоліків класичних еволюційних алгоритмів полягає без механізму
обліку обмежень оптимізаційної задачі. Можна, можливо вказати кілька
можливих методів безпосереднього вирішення цієї проблеми.
Метод статичних штрафів
Даний метод передбачає формування для кожного обмеження сімейства
інтервалів, які визначають відповідні коефіцієнти штрафів.
Метод працює за наступною схемою:
- для кожного обмеження визначається кілька рівнів (l) його
порушення,
- для кожного рівня порушень кожного обмеження визначається
коефіцієнт штрафу R (i 1,2,...,l, j 1,2,...,m) ij = =; великі значення
коефіцієнтів відповідають більшим рівням порушення обмежень,
- Стартова популяція індивідів визначається випадковим чином (можуть
присутні допустимі та неприпустимі індивіди),
- Придатність індивідів визначається за такою формулою:

де f(x)j – штраф за порушення j-го обмеження.


Недоліком методу є велика кількість параметрів. Для m обмежений метод
вимагає визначення m(2l+1) параметрів, де m задає кількість інтервалів для
кожного обмеження, l+1 параметрів для кожного обмеження – це межі
інтервалів (рівень порушення обмежень), та l параметрів для кожного
обмеження визначають коефіцієнти штрафів Rij.
Метод «смертельних» штрафів
Метод полягає у відсіканні («вбивстві») неприпустимих точок, тобто ці точки
не беруть більше участі у відтворенні. Для деяких задач цей простий метод
може давати добрі результати. Для використання даного методу необхідно
ініціалізувати стартову популяцію допустимими значеннями.
Метод поведінкової пам'яті
У деяких завданнях буває досить важко отримати навіть допустиме рішення.
Найчастіше це відбувається через те, що у завданні велика кількість
обмежень та/або допустима область є «достатню малу» по відношенню до
всього пошукового простору. Для подолання цієї проблеми існує спосіб
поведінкової пам'яті:
1. Генерація початкової популяції (допустимі та неприпустимі індивіди).
2. Лічильник обмежень, що враховуються j=1.
3. Поточна популяція є стартовою точкою для наступної фази еволюції,
протягом якої всі точки, що не задовольняють одному з j-1 облікових
обмежень, що відкидаються. Критерій зупинки – задоволення j-му критерію
заданої частини популяції.
4. j=j+1; повторювати два останні кроки поки j не дорівнює числу обмежень
+1.
Для даного алгоритму дуже важливий порядок додавання врахованих
обмежень.
У багатьох випадках цей метод працює краще за штрафні методи, т.к. часто
невелике в порівнянні зі значенням цільової функції значення штрафу
залишає допустиму область прихованої серед піків “оштрафованої” цільової
функції, що у неприпустимих областях.
З іншого боку, як показали експерименти, для цього методу не складає праці
швидко локалізувати популяцію в рамках допустимої області за умови
успішного вибору послідовності обліку обмежень.

11. Еволюційні алгоритми вирішення нестаціонарних задач оптимізації


У випадку постановка завдання оптимізації нестаціонарної функції
формалізується наступним чином: задана функція , де: x(t) –
вектор стану, визначений на інтервалі t∈[t0, tN];
α(t) – вектор параметрів моделі, тобто параметрична характеристика функції
F;
t – час.
Необхідно знайти таку функцію x(t), яка у кожний момент часу t∈[t0,
tN] приносить функції F(x(t),α(t),t) оптимальне значення:

Під це формулювання потрапляють практично всі завдання, пов'язані з


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

12. Етапи створення експертних систем


Розробка ЕС має суттєві відмінності від розробки звичайного програмного
продукту. Використовувати ЕС слід лише тоді, коли розробка ЕС можлива,
виправдана й методи інженерії знань відповідають розв’язуваній задачі. Щоб
розробка ЕС була можливою для даного додатка, необхідне одночасне
виконання принаймні таких вимог:
− експерти в даній галузі вирішують завдання значно
краще, ніж фахівці-початківці;
− експерти сходяться в оцінці запропонованого рішення;
− експерти здатні вербалізувати (виразити природною
мовою) і пояснити використовувані ними методи;
− вирішення завдання вимагає лише міркувань, а не дій
завдання не повинно бути занадто важким (тобто
вирішення повинно займати у експерта декілька годин
або днів, а не тижнів);
− завдання має ставитися до структурованої області.
Застосування експертної системи може бути виправдане одним із таких
чинників:
− вирішення завдання принесе значний ефект, наприклад
економічний;
− використання людини-експерта неможливо;
− при передачі інформації експертові відбувається
неприпустима втрата часу або інформації.
Програма відповідає методам ЕС, якщо розв’язувана задача характеризується
такими рисами:
− завдання може бути природним чином вирішено за
допомогою маніпуляції з символами (тобто за допомогою
символічних міркувань), а не маніпуляцій із числами, як
прийнято в математичних методах і в традиційному
програмуванні;
− завдання повинно мати евристичну природу, а не
алгоритмічну;
− завдання має бути досить складне, щоб виправдати
витрати на розробку ЕС; − завдання має бути досить
вузьким, щоб вирішуватися методами ЕС, і практично
значущим. При розробці ЕС, як правило,
використовується концепція «швидкого прототипу».
Суть цієї концепції полягає в тому, що розробники не намагаються відразу
побудувати кінцевий продукт. На початковому етапі вони створюють
прототип (прототипи) ЕС, який може вирішувати типові завдання конкретної
програми, при цьому час і трудомісткість його розробки незначні. У разі
успіху експерт за допомогою інженера зі знань розширює знання прототипу
про проблемну область. При невдачі може знадобитися розробка нового
прототипу або розробники можуть прийти до висновку про непридатність
методів ЕС для даної програми. У міру збільшення знань прототип може
досягти такого стану, коли він успішно вирішує всі завдання даної програми.
Перетворення прототипу ЕС на кінцевий продукт зазвичай приводить до
перепрограмування ЕС мовами низького рівня, що забезпечує як збільшення
швидкодії, так і зменшення необхідної пам’яті. Технологія розробки ЕС
включає шість основних етапів (рис. 4.3): 1) ідентифікацію; 2)
концептуалізацію; 3) формалізацію; 4) виконання; 5) тестування; 6) дослідну
експлуатацію.
Рис. 4.3. Технологія розробки ЕС На етапі ідентифікації визначаються цілі та
завдання розробки, визначаються експерти і типи користувачів. На етапі
концептуалізації проводиться змістовний аналіз проблемної області,
виявляються використовувані поняття і їх взаємозв’язки, визначаються
методи розв’язання задач. На етапі формалізації вибираються ЕС і
визначаються способи подання всіх видів знань, формалізуються основні
поняття, визначаються способи інтерпретації знань, моделюється робота
системи, оцінюється адекватність цілям системи зафіксованих понять,
методів рішень, засобів подання й маніпулювання знаннями. На етапі
виконання здійснюється наповнення експертом бази знань. У зв’язку з тим,
що основою ЕС є знання, даний етап є найбільш важливим і найбільш
трудомістким етапом розробки ЕС. Процес набуття знань розділяють
отримання знань від експерта, організацію знань, що забезпечує ефективну
роботу системи, і подання знань у вигляді, зрозумілому ЕС. Процес набуття
знань здійснюється інженером зі знань на основі аналізу діяльності експерта
з вирішення реальних завдань. На етапі тестування прототип перевіряється на
зручність і адекватність інтерфейсів введення-виведення, ефективність
стратегії керування, якість перевірочних прикладів, коректність БЗ.
Тестування – це виявлення помилок у вибраному підході, у реалізації
прототипу, а також вироблення рекомендацій із доведення системи до
промислового варіанта. На етапі дослідної експлуатації перевіряється
придатність експертної системи для кінцевих користувачів. За результатами
цього етапу може знадобитися суттєва модифікація експертної системи. Слід
зазначити, що процес розробки експертної системи не зводиться до суворої
послідовності перерахованих вище етапів. У ході робіт доводиться
неодноразово повертатися на більш ранні етапи й переглядати прийняті там
рішення.

13. Загальна структура системи штучного інтелекту


Штучний інтелект – це один з розділів інформатики, в якому розглядаються
завдання апаратного і програмного моделювання тих видів людської
діяльності, які вважаються інтелектуальними.
Інформаційні системи, що працюють на основі моделювання інтелекту
людини, називають штучним інтелектом.
Започаткував роботи в цій галузі Роберт Вінер. Під час другої світової війни
він брав участь у створенні системи управління вогнем зенітних гармат.
Стрільбу зенітних гармат вдалося зробити ефективнішою, використовуючи в
системах їх наведення принцип зворотного зв’язку: наведення гармат
постійно змінювалося відповідно до зміни курсу літака, який летить.
Принцип зворотного зв’язку використовується живими істотами для
пристосування до навколишнього середовища. Застосування систем
управління зі зворотнім зв’язком при моделюванні мислення людини
привело до створення науки, що називається кібернетикою (від грецьк.
Kybernetike – мистецтво управління).
Найвагомішим практичним результатом у цих напрямах стало створення
експертних систем – програм, що імітують роботу людини-експерта в деякій
предметній галузі.
Під управлінням експертної системи комп’ютер, використовуючи
інформацію про предметну галузь, робить логічні висновки і складає
відповіді на запитання так, як це робила б людина-експерт у даній
предметній галузі.
В процесі роботи з експертною системою користувач має можливість
поповнювати базу даних і базу знань – «навчати» систему. Отже, експертна
система в своїй роботі використовує ту базу знань, що була закладена в неї
при її розробленні і поповнена в процесі експлуатації. Це – знання та досвід
людей – фахівців у конкретній галузі знань. Набути своїх власних знань без
допомоги людини експертна система не здатна. Отже, експертній системі
бракує головного, властивого кожній розумній істоті – здатності до
самонавчання, тобто до навчання на власному досвіді.
Для створення самонавчаючих інтелектуальних систем почали робити
спроби моделювання діяльності мозку як біологічної системи, що реагує на
різні подразники і враховує досвід своїх реакцій. Так з’явилися нейронні
мережі (від слова нейрон – нервова клітина біологічної системи).
Дослідження, що пов’язані з нейронними мережами, почали бурхливо
розвиватися останнім часом. Вони ведуться на межі нейробіології,
математики, електроніки і програмування. В результаті цих робіт створено
системи розпізнавання образів – системи, що впізнають обличчя, різні
сигнали, підписи тощо. За допомогою нейрокомп’ютерів, – комп’ютерів, що
використовують нейронні мережі – вивчається робота нервової системи
людини в різних умовах тощо.
Прийнято розрізняти штучний і природній інтелект. Природним інтелектом
володіють високоорганізовані біологічні системи, які здатні нагромаджувати
знання про навколишній світ, аналізувати ці знання, приймати рішення в
різних ситуаціях і організовувати цілеспрямовану діяльність для досягнення
поставлених цілей.
Штучний інтелект не ставить своєю метою моделювання способів людського
мислення. Для відтворення людського мислення за допомогою техніко-
програмних систем необхідно, щоб ці системи володіли можливостям живих
істот, які пройшли довгий шлях еволюційного розвитку і мають досвід
соціальної практики. У галузі штучного інтелекту досліджуються методи і
способи аналізу і конструювання технічних програмно управляючих систем,
які здатні виконувати функції різних видів людської діяльності. Системи
штучного інтелекту для забезпечення ефективності свого існування повинні
володіти рисами інтелектуальної системи: нагромаджувати знання з певної
предметної галузі в процесі функціонування або виконувати аналіз поточної
інформації, виконувати дії, для забезпечення досягнення поставленої мети.

14.Застосування еволюційних алгоритмів в задачах автоматизації


проектування інтелектуальних інформаційних технологій
Гібридний алгоритм генетичного програмування
При розв'язанні задачі символьної регресії за допомогою методу генетичного
програмування часто виникає така проблема: у завданнях, де рішення має
складне вираз, дерева з більш простою структурою (зазвичай лінійні вирази)
мають придатність вище, ніж дерева зі складними структурами (які зазвичай
виявляються перспективнішими). В результаті прості рішення починають
переважати в популяції, і пошук сповільнюється. Це пов'язано з тим, що
набір констант у безлічі термів фіксований, і в успішно вирощених
структурах чисельні коефіцієнти часто виявляються підібрані погано. Таким
чином, рішення з дуже хорошою структурою може мати помилку
апроксимації набагато більше, ніж проста структура, у якій коефіцієнтів
менше.
15. Інструментальна оболонка розробки експертних систем – CLIPS
Експертні системи, створені за допомогою CLIPS, можуть бути запущені
трьома основними способами: • уведенням відповідних команд і
конструкторів мови безпосередньо в середовище CLIPS; • використанням
інтерактивного віконногоінтерфейсу CLIPS (наприклад для версій Windows
або Macintosh); • за допомогою програм-оболонок, що реалізують свій
інтерфейс спілкування з користувачем і механізмів, що використають, знань і
логічного висновкуCLIPS. Крім того, CLIPS при запуску дозволяє
виконувати командні файли власного формату (ця можливість також
доступна за допомогою команди batch). Для реалізації цієї можливості
необхідно запустити CLIPS (у нашому випадку це файл CLIPSWin.exe) з
одним із трьох наступних аргументів:
-f <імені-файлу>
-f2<імена-файли>
-l<імені-файлу>

Текстовий файл, заданий за допомогою опції -f,повинен містити команди


CLIPS.

Основними перевагами CLIPS як оболонки експертної системи є наступні: 1.


Суть технології CLIPS полягає в тому, що мова і середовище CLIPS дають
змогу користувачеві швидко створювати ефективні, компактні і легко
керовані експертні системи. При цьому користувач застосовує безліч вже
готових інструментів (вбудований механізм управління базою знань,
механізм логічного виводу, менеджери різних об’єктів CLIPS і т.п.) та
конструкції (факти, шаблони, правила, функції, родові функції, класи,
модулі, обмеження, мову COOL). 2. Система, крім виконання
обчислювальних операцій, формує певні висновки, ґрунтуючись на тих
знаннях, якими вона володіє. Знання в системі представлені на спеціальній
мові і зберігаються окремо від власне програмного коду, що і формує
висновки і розуміння. Цей компонент програми прийнятий називати базою
знань. 3. CLIPS має змогу пояснити, чому запропоновано саме таке рішення, і
довести його обґрунтованість. 4. На даний час CLIPS – це вільно
поширюваний продукт, який продовжує успішно розвиватися і
вдосконалюватися. 5. Локалізація CLIPS передбачає локалізацію інтерфейсу
користувача, ядра та синтаксису CLIPS. В результаті локалізації була
створена «Русская версия CLIPS», застосування якої показало наступні
переваги: а) зручність у використанні та при написанні експертних систем; б)
якщо виникає помилка, система видає повідомлення російською мовою, що
полегшує розуміння змісту помилки; в) при написанні програми користувач
має можливість застосовувати російські та українські позначення фактів,
змінних, правил, процедур тощо.

16. Інструментальні засоби проектування експертних систем


При розробленні експертних систем використовується спеціальний
інструментарій, який дозволяє значно скоротити час розробки. Такий
інструментарій включає як програмні, так і апаратні засоби. До апаратних
засобів відносяться: ПЕОМ, інтелектуальні робочі станції, послідовні
символьні ЕОМ (ЛІСП і ПРОЛОГ машини), ЕОМ загального призначення та
паралельні символьні ЕОМ. Крім того, для розширення можливостей
числових процесорів всіх типів випускаються спеціальні символьні
співпроцесори.
Загальну класифікацію програмного інструментарію можна показати так:
1) Процедурні мови, орієнтовані на обробку символьної інформації
(наприклад, ЛІСП і т.і.);
2) мови інженерії знань, тобто мови високого рівня, які орієнтовані на
розробку ЕС (наприклад, PROLOG,OPS-5);
3) засоби автоматизації процесів конструювання, використання та
модифікації ЕС (наприклад, RLL, HEARSАY-4 іт.і);
4) пусті (базові) ЕС або „оболонки”, які не містять знань ні про яку ПО
(наприклад, CODEX, EMYCIN, DECTOOLS іт.і).
В наведеній вище класифікації інструментальні засоби (ІЗ) розташовані в
порядку зменшення трудовитрат, необхідних при створенні за їх допомогою
конкретних ЕС. При використанні інструментарію першого типу програміст
вимушений самостійно програмувати всі компоненти ЕС на мові достатньо
низького рівня. На другому рівні продуктивність різко зростає, однак за
рахунок деякого падіння ефективності. ІЗ третього рівня дозволяють
розробнику ЕС не розробляти всі або деякі компоненти ЕС, а обирати їх із
заздалегідь сформованого набору. При використанні ІЗ четвертого рівня
розробник повністю звільняється від роботи зі створення програм, оскільки
він має в своєму розпорядженні пусту систему, яку необхідно наповнити
знаннями з відповідної ПО [19].
Разом з тим, при використанні ІЗ третього та четвертого типів виникає і ряд
проблем:
- реалізовані в них стратегії управління виведенням можуть не відповідати
методам вирішення, які використовує експерт, наслідком чого можуть стати
неефективні або взагалі неправильні рішення;
- мова подання знань може не підійти для даної ПО.
В наш час дуже широке розповсюдження отримали ІЗ, які називають
оболонками, що налагоджуються. Вони дозволяють використовувати
оболонку не в деякому «застиглому» вигляді, а генерувати її з деякої
множини механізмів, які передбачені в ЕС (наприклад, ЕКО, ЕКСПЕРТИЗА,
НЕКС). В останній час розмежовують оболонки, які отримали назву
"оболонок застосування" від тих оболонок, які призначені для здобуття
знань. Кім того стали виділяти універсальні та спеціалізовані оболонки.
Таким чином, ми розглядатимемо інструментальні засоби побудови ЕС в
якості систем програмування, які спрощують проектування ЕС.
Відповідно, їх склад і структура визначаються особливостями вирішуваних
експертними системами задач і технологій проектування ЕС.
Необхідно відзначити, що вибір технології і інструментальних засобів
реалізації ЕС – це ключове питання створення ЕС.
Відповідно до наведеної вище загальної класифікації, розглянемо більш
детально особливості програмного інструментарію, що використовується для
розробки ЕС.

17. Комбінування робастного й адаптивного управління за допомогою


систем штучного інтелекту
В даний час теорія робастного управління (Н∞ - теорія управління, Н∞ -
управління) є однією з гілок теорії управління, що інтенсивно розвиваються.
Порівняно молода (перші роботи з'явилися на початку 80-х рр. [19]), вона
виникла з нагальних практичних проблем синтезу багатовимірних лінійних
систем управління, що функціонують в умовах різноманітних обурень та
зміни параметрів. Бурхливо розвиваються такі нові напрямки, як нелінійна
[20] та нестаціонарна [21] Н∞ - теорія управління, завдання якої розглядаються
як завдання теорії ігор [22]. Зростає кількість публікацій - зарубіжних та
вітчизняних. На Європейській конференції з управління (ЕСС93) у
Гронінгені значна частина доповідей так чи інакше стосувалася теорії
робастного управління.
Декілька років тому найбільш популярною гілкою теорії управління була
теорія адаптивного управління. Вона розвивалася як детермінованої, так
ймовірнісної постановки завдання. Існує величезна бібліографія у цій галузі.
Проте останні роки інтерес до цієї теорії став помітно зменшуватися.
Причина цього у складності розвиненої теорії, а й у складності реалізації
запропонованих алгоритмів. Алгоритми адаптивного управління (прямого та
непрямого) виявилися негрубими до неврахованих зовнішніх та
параметричних обурень, причому алгоритми безпошукового
самоналаштування ляпунівського типу – особливо чутливими. У вісімдесяті
роки зроблено спроби будувати грубі адаптивні регулятори; проте ці
алгоритми були складні у реалізації і, по суті, були «підправленими»
алгоритмами ляпунівського типу.
Можна підійти до проблеми проектування керування реальним складним
об'єктом, що функціонує в умовах невизначеності, іншим чином: не
намагатися використовувати один тип керування – адаптивний чи робастний.
Очевидно, слід вибирати той тип, який відповідає стану навколишнього
середовища та системи, визначеному за наявною у розпорядженні системи
інформації. Якщо в процесі функціонування системи можна організувати
отримання інформації, доцільно використовувати її в процесі управління.
Але реалізація такого комбінованого управління донедавна наштовхувалася
на непереборні труднощі щодо алгоритму вибору типу управління. Досягнуті
у створенні проблем штучного інтелекту успіхи уможливлюють синтез
такого алгоритму. Дійсно, поставимо завдання: спроектувати систему, яка
використовує адаптивне та робастне управління та здійснює вибір типу
управління на основі методів штучного інтелекту. Для цього розглянемо
особливості обох типів і з огляду на їх специфічні якості визначимо, як
можна побудувати систему комбінованого управління.

Особливості робастного управління. Однією з основних понять теоретично


робастного управління є поняття невизначеності. Невизначеність об'єкта
відбиває неточність моделі об'єкта, причому як параметричну, і структурну.
Розглянемо докладніше форми завдання невизначеності в робастної теорії
управління за допомогою простої системи – з одним входом та одним
виходом (рис. 16). Сигнали мають таку інтерпретацію: r - задаючий вхідний
сигнал; u-вхідний сигнал (вхід) об'єкта; d – зовнішнє обурення; y - вихідний
сигнал (вихід) об'єкта, що вимірюється.

У Н∞ - теорії управління невизначеність зручно задавати у частотній ділянці.


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

Невизначеність вхідних сигналів d відображає різну природу зовнішніх


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

У процесі функціонування робастної системи інформація про


невизначеності в системі не використовується для керування.
Звичайно, це призводить до того, що робасні системи консервативні і якість
перехідних процесів часом не задовольняє розробників цих систем.
Особливості адаптивних систем керування. Подібно до робастної адаптивна
система управління будується для об'єктів, інформація про які або про
впливи, на які недоступна на початку функціонування системи. Найчастіше,
властивість адаптації досягається за допомогою формування у явному чи
неявному вигляді математичної моделі об'єкта чи вхідного впливу. Цим
відрізняється як пошукове адаптивне управління, в основі якого пошук та
утримання екстремуму показника якості управління, так і безпошукове, в
основі якого компенсація відхилення фактичних змін керованих координат
від бажаних змін, які відповідають необхідному рівню показника якості. Далі
за уточненою моделлю відбувається підстроювання адаптивного регулятора.
Таким чином, основна особливість адаптивних систем управління -
можливість отримання інформації у процесі функціонування та
використання цієї інформації для управління.
Більше того, в адаптивних системах завжди використовується апріорна
інформація про невизначеність у системі. Це важлива відмінність
адаптивного підходу від робастного.
Розглянемо найпростішу адаптивну систему управління, що забезпечує
відстеження вхідного сигналу у присутності перешкоди на вході об'єкта (рис.
17). Алгоритми побудови такої системи управління широко відомі та описані,
наприклад, у роботі [21].

Формальна відмінність від схеми на рис. 16 - блок адаптації А, який на


підставі вихідного сигналу об'єкта та сигналу, що характеризує задану якість,
виробляє сигнал підстроювання коефіцієнтів адаптивного регулятора. Маючи
на увазі недоліки кожного з регуляторів, доцільно спробувати використати їх
переваги, запропонувавши комбіновану схему управління об'єктом.
Адаптивна система за допомогою блоку адаптації виробляє деяку
інформацію про стан довкілля. Зокрема, в даному випадку можна отримати
інформацію про зовнішнє обурення d. Алгоритм управління Ca відповідає
поточному стану зовнішнього середовища відповідно до закладеного в блоці
адаптації критерію. Але адаптивна система вимагає, щоб вхідний сигнал r
мав досить широкий частотний діапазон і накладає жорсткі обмеження на
значення і частотний спектр сигналу зовнішнього обурення d. Тому
адаптивні системи можуть працювати лише у вузьких діапазонах вхідного
сигналу r та зовнішнього обурення d [22]. Поза цими діапазонами адаптивна
система має низьку якість управління і може навіть втратити стійкість.
Розглянуті вище характеристики робастного і адаптивного управління
призводять до висновку, що у процесі функціонування системи у випадках
вигідно використовувати робастное управління, за іншими - адаптивне,
тобто. мати можливість комбінувати управління залежно стану зовнішнього
середовища.
Комбіноване керування. Основне питання при проектуванні систем
комбінованого управління у тому, яким чином, виходячи з яких знань
(інформації) здійснювати вибір тієї чи іншої типу управління. Найбільш
широкі можливості для цього є методи штучного інтелекту [23]. Їх перевага в
порівнянні з простими перемикаючими алгоритмами полягає у використанні
широкого спектра даних та знань для формування алгоритму вибору типу
управління.
Якщо формально поєднати схеми, наведені на рис. 16, 17, то отримаємо
схему комбінованого керування (рис. 18). Як видно з малюнка, сигнал
управління u повинен перемикатися з робастного регулятора на адаптивний і,
навпаки, у міру зміни довкілля у процесі функціонування системи.
Використовуючи методи теорії інтелектуальних систем [23] можна
забезпечити перехід з одного типу управління на інший залежно від умов
роботи системи.
Розглянемо спочатку, яку інформацію можна використовуватиме роботи
інтелектуального блоку системи. Як відомо, SISO - системи добре
описуються у частотній області. Тому природно використовувати частотні
характеристики організації процесу прийняття рішень під час виборів типу
управління. Як зазначалося вище, частотна характеристика системи з
робастним управлінням відповідає найгіршому поєднанню параметрів
області невизначеності. Тому робастне управління можна прийняти за одну з
кордонів керування, що вибирається. Інша межа визначається можливостями
досліджуваної системи (швидкість приводу, енергоозброєність тощо). Між
двома межами знаходиться область, де розумно використовувати адаптивне
управління.
Оскільки адаптивний алгоритм чутливий до початкового етапу
функціонування системи, то цьому етапі доцільно використовувати
робастное управління, яке досить нечутливе до швидкості зміни зовнішньої
перешкоди. Але його недоліком є велика тривалість перехідних процесів та
великі допустимі значення вихідної координати при дії перешкоди.
Через деякий час робасте управління має сенс переключити на адаптивне.
Адаптивне керування дозволяє більш точно відстежити вхідний сигнал за
наявності інформації про перешкоду. Адаптивне управління вимогливо до
багатства спектра вхідного сигналу, і, наприклад, при повільно змінюються
сигнали можливі зриви процесів адаптації або сильне їхнє уповільнення. У
такій ситуації необхідно знову переходити на роботне управління, що
гарантує стабільність роботи системи.
З вищевикладеного випливає, що для функціонування системи необхідно
мати інформацію про частотний спектр корисного сигналу перешкоди та
відношення сигнал/шум. Крім того, потрібна попередня інформація про
частотний спектр, на якому працює адаптивна система, та про приватні
характеристики об'єкта управління на межах області невизначеності. З цієї
інформації можна сформувати базу даних, до якої інформація, індивідуальна
кожному за класу об'єктів, заноситься заздалегідь. Інформація про частотний
спектр корисного сигналу, перешкод і відношення сигнал/шум надходить у
базу даних у міру функціонування системи та постійно оновлюється.
Вміст бази даних можна використовувати у основі знань, що формується як
правил. Залежно від конкретних властивостей системи можна встановити
перемикання двох типів керування. Необхідні правила формуються у одній з
логічних систем, придатної для аналізованого випадку.
Маючи бази даних та знань, можна розробити механізм прийняття рішень,
який забезпечуватиме правильний вибір типу управління залежно від умов
функціонування системи.
Інтелектуальна частина системи працює дискретно на заданих інтервалах
часу. На рис. 19 наведено структурну схему системи з інтелектуальним
блоком ІБ, що забезпечує вибір типу управління. На вхід блоку надходять
сигнал r і вимірюваний вихідний сигнал об'єкта y. У блоці попередньої
обробки інформації БПОІ за тимчасовими характеристиками сигналів r(t), y(t)
визначаються частотні характеристики вхідного сигналу r(w) та зовнішнього
обурення d(w), взаємне розташування спектрів r(w) та d(w) та характерні
значення відношення сигнал/шум r(w)/d(w). Вся ця інформація надходить до
бази даних БД. Блок прийняття рішення БПР, використовуючи сформовану
базу знань БЗ та дані БД, виробляє рішення, відповідно до якого включається
один із типів управління. На наступному інтервалі повторюється з
використанням нових даних.
18. Модифіковані еволюційні алгоритми моделювання й оптимізації
складних систем

19. Організація прийняття рішень в експертних системах. Типова


структура експертної системи

20. Основи проектування еволюційних алгоритмів


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

Класифікація алгоритмів

Моделювання еволюції можна розділити на дві категорії:


Системи, які використовують лише еволюційні принципи. Вони успішно
використовувалися для завдань виду функціональної оптимізації і можуть
легко бути описані на математичній мові. До них належать еволюційні
алгоритми, такі як еволюційне програмування, генетичні алгоритми,
еволюційні стратегії.
Системи, які є біологічно реалістичніші, але які не виявилися корисними в
прикладному сенсі. Вони більше схожі на біологічні системи і менш
направлені на вирішення технічних завдань. Вони володіють складною і
цікавою поведінкою, і, мабуть, незабаром отримають практичне вживання.
До цих систем відносять так зване штучне життя.
Еволюційні алгоритми, в сучасному вигляді, з'явились наприкінці 1960-х на
початку 1970-х (існують посилання на раніші дослідження). Еволюційні
алгоритми можна поділити на три групи:[1]
Еволюційне програмування: фокусується більше на адаптації індивідів, аніж
на еволюції генетичної інформації. Зазвичай, еволюційне програмування
застосовує безстатеве розмноження та мутації, тобто, внесення невеликих
змін в поточний розв'язок та методи селекції основані на прямій
конкуренції.
Еволюційні стратегії (ЕС): Важливою особливістю еволюційних стратегій є
використання само-адаптивних механізмів для контролю процесу мутації.
Ці механізми зосереджені не лише на еволюції шуканих розв'язків, а й на
еволюції параметрів мутації.
Генетичний алгоритм (ГА): Основною особливістю генетичних алгоритмів є
використання оператора рекомбінації (схрещення) як основного механізму
пошуку. Це ґрунтується на припущенні, що частини оптимального розв'язку
можуть бути знайдені незалежно та рекомбіновані для отримання кращого
розв'язку.

21. Основні цілі досліджень щодо розробки систем штучного інтелекту

Штучний інтелект – це галузь досліджень, що перебуває на стику наук.


Фахівці, що працюють у цій галузі, намагаються зрозу- міти, яка поведінка
вважається розумною (аналіз), і створити пра- цюючі моделі цієї поведінки
(синтез). Дослідники ставлять запи- тання про те, як за допомогою нових
теорій і моделей навчитися розуміти принципи й механізми інтелектуальної
діяльності. Прак- тичною метою є створення методів і техніки, необхідної
для про- грамування «розумності» і її передача комп’ютерам, а через них –
різним системам і засобам. Інженерні методи і навички у галузі штучного
інтелекту стали називати технологією знань (knowledge engineering).

штучний інтелект - властивість автоматичних систем брати на себе окремі


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

22. Підходи до проектування систем штучного інтелекту

23. Підходи до розробки систем штучного інтелекту


24. Побудова структурно-алгоритмічної моделі системи штучного
інтелекту та її використання в задачах управління
Одним з нових напрямків, що розвиваються останнім часом у теорії
управління, є теорія інтелектуальних систем (ІС), що включає:
• формування структури та алгоритмів функціонування ІС у цілому;
• розробку елементів структури ІС, алгоритмів їх функціонування, механізму
їхньої взаємодії між собою та з навколишнім середовищем;
• побудова алгоритмів обробки інформації та управління в ІС т.д.
Відповідно до [3] ІС визначено, як деякі об'єднані єдиним інформаційним
процесом системи, що виробляють на основі відомостей та знань за наявності
мотивації (мети) рішення про дію та реалізують його раціональним способом.
У [4]–[6] розглядалися деякі питання побудови структури ІВ, окремих
елементів у складі ІВ, а також алгоритми функціонування останніх та самих
ІВ. У перерахованих роботах лише частково порушувалися питання
побудови моделей ІВ, що у першу чергу важливо на вирішення з
урахуванням ІВ різних завдань управління тими чи іншими об'єктами,
формування алгоритмів обробки інформації. Необхідність побудови моделі
ІВ (зокрема і математичної) зумовлена неможливістю розв'язання без її
знання численних завдань теорії ІС. Окремим питанням, пов'язаним з
вирішенням цієї проблеми, присвячена дана робота, в якій також
пропонується підхід використання побудованої моделі до вирішення деяких
завдань управління.
Постановка задачі щодо побудови моделі ІС.
Відповідно до [4], [5] структура ІСУ повинна містити такі елементи (блоки),
як (див. мал. 6):
• динамічна експертна система (ДЕС), що включає базу знань (БЗ), блок
експертної оцінки (БЕО) та блок оцінки стану (БОС);
• блок ухвалення рішення (БПР);
• блок виробітку управління (БВУ), що включає блок виконання управління
(БІУ);
• блок формування мети;
• блок, що характеризує вплив довкілля на ІСУ.
З урахуванням [5] структурну схему ІСУ можна подати у вигляді, що
безпосередньо використовується в задачі синтезу (див. рис. 6).
Тут:
• інтелектуальний перетворювач (ІП) - це деякий розширений елемент (блок)
ІС, що включає ДЕС і БПР;
- Вектор обурення;
– сигнал моделі об'єкта;
– сигнал цілі;
● - Вектор стану інтелектуального перетворювача.
У випадку під ІП розуміється деяке пристрій, яке з урахуванням інформації
про вхідні сигнали формує сигнал ,
визначальний вид синтезованого БВУ закону управління об'єктом і навіть
несе інформацію, що дозволяє формувати закони управління досить
довільного виду. Сигнал моделі об'єкта містить інформацію про поточну
зміну структури та параметрів об'єкта. Сигнал мети містить інформацію
про стан мети.
У загальному випадку вважатимуться, що об'єкт описується рівняннями
виду:

Де:
– вектор стану;
– вектор управління;
– вектор виходу (вимірювання);
– задана вектор функція.
• – – вектор функція, що забезпечує існування та єдиність розв'язання
задачі Коші;
• – – Вектор параметрів об'єкта.
Причому:

де – контрольована (задана) складова вектора параметрів об'єкта (загалом


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

де – деякий оператор інтелектуального перетворення, що діє з простору


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

Неконтрольовані складові ,управління також задовольняють аналогічному


співвідношенню, тобто
(5)
(6)

де , , - Деякі задані множини відповідно в , .


Вважаємо, що мета управління об'єктом (1) у досить загальному випадку
може бути формалізована та представлена у вигляді наступних обмежень на
вектор стану

Де:
– – задана вектор функція, безперервно диференційована з усіх
змінним (можливий загальний випадок, коли –– оператор, що діє з в

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


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

де – норма в просторі , або

(9)
де – скалярна функція, позитивна за позитивних значень аргументу.
З урахуванням введених позначень визначимо величину видалення
довільного елемента від множини відповідно до міри близькості .

Визначення 3. Під величиною видалення елемента від множини


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

З урахуванням введених визначень співвідношення для мети управління (7)


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

Тоді мета управління у загальному випадку можна сформулювати так: для


об'єкта управління (1), початковий стан якого , може бути довільним
елементом з безлічі , тобто. , потрібно забезпечити виконання
співвідношення (11) для кожного за наявності обмежень (4) (6).
БВУ у досить загальному випадку з урахуванням поставленого перед ним
завдання реалізує співвідношення:

де – деякий оператор вироблення управління з областю визначення у


просторі та областю значень . При цьому інформація, що міститься у
векторі повинна бути достатньою для синтезу в БВУ необхідного
управління відповідно до поточної метою, що формується ІП.
Модель ІС можна вважати побудованою у тому випадку, якщо визначені
класи операторів, на яких слід вибирати оператор інтелектуального
перетворювача та оператор вироблення управління.
Тоді, з урахуванням використовуваного структурного представлення ІС
згідно з рис. 2, завдання побудови моделі ІС можна сформулювати
наступним чином: потрібно для ІС, сформованої для об'єкта (1) для
забезпечення мети (11) за наявності обмежень (4) (6), визначити можливий
вид операторів , що формує поточну (локальну) мету об'єктом (1), та
БВУ, що синтезує (виробляє) необхідний закон управління.

25. Покоління розвитку технологій розробки інтелектуальних систем

26. Створення проекту онтології за допомогою Protégé


27. Сучасні напрями досліджень і розробок систем штучного інтелекту

28. Технологія проектування систем штучного інтелекту на основі нейронних


мереж

29. Технологія створення експертної системи


Технологія розробки ЕС включає шість основних етапів (рис. 4.3): 1)
ідентифікацію; 2) концептуалізацію; 3) формалізацію; 4) виконання; 5)
тестування; 6) дослідну експлуатацію. Розглянемо детальніше послідовності
дій, які необхідно виконати на кожному з етапів.

Рис. 1. Технологія розробки ЕС


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

30. Типова структура експертної системи


Типова статична ЕС складається з таких основних компонентів (рис. 4.1):
вирішувача (інтерпретатора); робочої пам’яті (РП), яка називається також
базою даних (БД); бази знань (БЗ); компоне- 88 нта набуття знань;
пояснювального компонента; діалогового компонента.

Рис. 4.1. Структура статичної ЕС


База даних (робоча пам’ять) призначена для зберігання вихідних і
проміжних даних розв’язуваного в поточний момент завдання.
База знань в ЕС призначена для зберігання довгострокових (а не поточних)
даних, що описують розглянуту область, і правил, що описують доцільні
перетворення даних цієї області.
Вирішувач, використовуючи вихідні дані з робочої пам’яті і знання з БЗ,
формує таку послідовність правил, які, будучи застосованими до вихідних
даних, приводять до вирішення завдання.
Компонент набуття знань автоматизує процес наповнення ЕС знаннями,
здійснюваний користувачем-експертом.
Пояснювальний компонент пояснює, як система отримала розв‘язок задачі
(або чому вона не отримала розв‘язку) і які знання вона при цьому
використовувала, що полегшує експерту тестування системи і підвищує
довіру користувача до отриманого результату.
Діалоговий компонент орієнтований на організацію дружнього спілкування з
користувачем як у ході вирішення завдань, так і в процесі набуття знань і
пояснення результатів роботи. Статичні ЕС використовуються в тих
додатках, де можна не брати до уваги зміни навколишнього світу, що
відбуваються за час виконання завдання. Перші ЕС, які отримали практичне
використання, були статичними.
На рис. 4.2 показано, що в архітектуру динамічної ЕС вводяться два
додаткові компоненти: − підсистема моделювання
зовнішнього світу; − підсистема зв’язку із зовнішнім
оточенням. Остання здійснює зв’язки із зовнішнім світом
через систему датчиків і контролерів. Крім того,
традиційні компоненти статичної ЕС (БЗ і машина
виведення) зазнають істотних змін, щоб відобразити
часову логіку, яка відбувається в реальному світі подій.
Рис. 4.2. Структура динамічної ЕС

You might also like