Application of deep reinforced learning for long-term dynamic composition of WEB services
In the service oriented architecture, software and systems are abstracted as web services to be invoked by other systems. Service composition is a technology, which builds a complex system by combining existing simple services. With the development of service oriented architecture and web service te...
Gespeichert in:
| Datum: | 2025 |
|---|---|
| 1. Verfasser: | |
| Format: | Artikel |
| Sprache: | Ukrainian |
| Veröffentlicht: |
PROBLEMS IN PROGRAMMING
2025
|
| Schlagworte: | |
| Online Zugang: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/836 |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Назва журналу: | Problems in programming |
| Завантажити файл: | |
Institution
Problems in programming| id |
pp_isofts_kiev_ua-article-836 |
|---|---|
| record_format |
ojs |
| resource_txt_mv |
ppisoftskievua/d0/d91ed1a4e19c39483420d6df5e1eeed0.pdf |
| spelling |
pp_isofts_kiev_ua-article-8362025-11-03T11:16:27Z Application of deep reinforced learning for long-term dynamic composition of WEB services Застосування глибокого навчання з підкріпленням для довгострокової динамічної композиції веб-сервісів Moroz, H.B. service-oriented computing; quality of service; web service composition; composite web service; deep reinforcement learning UDC 004.41 cервісно-орієнтоване обчислення; якість обслуговування; композиція вебсервісу; компо зитний вебсервіс; глибоке навчання з підкріпленням УДК 004.41 In the service oriented architecture, software and systems are abstracted as web services to be invoked by other systems. Service composition is a technology, which builds a complex system by combining existing simple services. With the development of service oriented architecture and web service technology, massive web ser vices with the same function begin to spring up. These services are maintained by different organizations and have different quality of service. Thus, how to choose the appropriate service to make the whole system to deliver the best overall quality of service has become a key problem in service composition research. Furthermore, because of the complexity and dynamics of the network environment, quality of service may change over time. Therefore, how to dynamically configure the composition system to adapt to the changing environment and ensure the quality of the composed web service is another problem. To address the above challenges, we propose a service composition approach based on quality of web service rediction and reinforcement learning. Specifi cally, we use long short-term memory neural network to predict the quality of web service hrough reinforcement learning. This approach can be well adapted to a dynamic network environment.Prombles in programming 2025; 2: 40-53 У сервісно-орієнтованій архітектурі програмне забезпечення та системи абстрагуються як вебсервіси, які можуть викликатися іншими системами. Композиція сервісу – це технологія, яка будує складну систему шляхом поєднання існуючих простих вебсервісів. Із розвитком сервісно-орієнтованих архітектур та тех нології вебсервісів починають з’являтися масові вебсервіси з однаковими функціями. Вони обслугову ються різними організаціями та мають різну якість обслуговування. Отож, як вибрати відповідні вебсер віси, щоб уся система забезпечувала найкращу загальну якість обслуговування, стало ключовою пробле мою в дослідженні композиції вебсервісів. Крім того, через складність і динаміку мережевого середо вища якість обслуговування з часом може змінюватися. Отже, як динамічно налаштувати систему компо зиції, щоб адаптуватися до мінливого середовища та забезпечити якість складеного вебсервісу є ще од нією проблемою. Для вирішення вищезазначених проблем, пропонується підхід до композиції вебсерві сів, заснований на прогнозуванні якості вебсервісів та навчанні з підкріпленням. Зокрема, ми використо вуємо нейронну мережу довгої короткотривалої пам’яті для прогнозування якості обслуговування, а по тім робимо динамічний вибір вебсервісів за допомогою навчання з підкріпленням. Цей підхід можна до бре адаптувати до динамічного мережевого середовища.Prombles in programming 2025; 2: 40-53 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2025-09-07 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/836 10.15407/pp2025.02.040 PROBLEMS IN PROGRAMMING; No 2 (2025); 40-53 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2 (2025); 40-53 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2 (2025); 40-53 1727-4907 10.15407/pp2025.02 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/836/887 Copyright (c) 2025 PROBLEMS IN PROGRAMMING |
| institution |
Problems in programming |
| baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
| datestamp_date |
2025-11-03T11:16:27Z |
| collection |
OJS |
| language |
Ukrainian |
| topic |
service-oriented computing quality of service web service composition composite web service deep reinforcement learning UDC 004.41 |
| spellingShingle |
service-oriented computing quality of service web service composition composite web service deep reinforcement learning UDC 004.41 Moroz, H.B. Application of deep reinforced learning for long-term dynamic composition of WEB services |
| topic_facet |
service-oriented computing quality of service web service composition composite web service deep reinforcement learning UDC 004.41 cервісно-орієнтоване обчислення якість обслуговування композиція вебсервісу компо зитний вебсервіс глибоке навчання з підкріпленням УДК 004.41 |
| format |
Article |
| author |
Moroz, H.B. |
| author_facet |
Moroz, H.B. |
| author_sort |
Moroz, H.B. |
| title |
Application of deep reinforced learning for long-term dynamic composition of WEB services |
| title_short |
Application of deep reinforced learning for long-term dynamic composition of WEB services |
| title_full |
Application of deep reinforced learning for long-term dynamic composition of WEB services |
| title_fullStr |
Application of deep reinforced learning for long-term dynamic composition of WEB services |
| title_full_unstemmed |
Application of deep reinforced learning for long-term dynamic composition of WEB services |
| title_sort |
application of deep reinforced learning for long-term dynamic composition of web services |
| title_alt |
Застосування глибокого навчання з підкріпленням для довгострокової динамічної композиції веб-сервісів |
| description |
In the service oriented architecture, software and systems are abstracted as web services to be invoked by other systems. Service composition is a technology, which builds a complex system by combining existing simple services. With the development of service oriented architecture and web service technology, massive web ser vices with the same function begin to spring up. These services are maintained by different organizations and have different quality of service. Thus, how to choose the appropriate service to make the whole system to deliver the best overall quality of service has become a key problem in service composition research. Furthermore, because of the complexity and dynamics of the network environment, quality of service may change over time. Therefore, how to dynamically configure the composition system to adapt to the changing environment and ensure the quality of the composed web service is another problem. To address the above challenges, we propose a service composition approach based on quality of web service rediction and reinforcement learning. Specifi cally, we use long short-term memory neural network to predict the quality of web service hrough reinforcement learning. This approach can be well adapted to a dynamic network environment.Prombles in programming 2025; 2: 40-53 |
| publisher |
PROBLEMS IN PROGRAMMING |
| publishDate |
2025 |
| url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/836 |
| work_keys_str_mv |
AT morozhb applicationofdeepreinforcedlearningforlongtermdynamiccompositionofwebservices AT morozhb zastosuvannâglibokogonavčannâzpídkríplennâmdlâdovgostrokovoídinamíčnoíkompozicíívebservísív |
| first_indexed |
2025-09-17T09:25:02Z |
| last_indexed |
2025-11-04T02:10:18Z |
| _version_ |
1850409912154193920 |
| fulltext |
Штучний інтелект
40
© Г.Б. Мороз, 2025
ISSN 1727-4907. Проблеми програмування. 2025. №2
УДК 004.41 http://doi.org/10.15407/pp2025.02.040
Г.Б. Мороз
ЗАСТОСУВАННЯ ГЛИБОКОГО НАВЧАННЯ
З ПІДКРІПЛЕННЯМ ДЛЯ ДОВГОСТРОКОВОЇ ДИНАМІЧНОЇ
КОМПОЗИЦІЇ ВЕБСЕРВІСІВ
У сервісно-орієнтованій архітектурі програмне забезпечення та системи абстрагуються як вебсервіси, які
можуть викликатися іншими системами. Композиція сервісу – це технологія, яка будує складну систему
шляхом поєднання існуючих простих вебсервісів. Із розвитком сервісно-орієнтованих архітектур та тех-
нології вебсервісів починають з’являтися масові вебсервіси з однаковими функціями. Вони обслугову-
ються різними організаціями та мають різну якість обслуговування. Отож, як вибрати відповідні вебсер-
віси, щоб уся система забезпечувала найкращу загальну якість обслуговування, стало ключовою пробле-
мою в дослідженні композиції вебсервісів. Крім того, через складність і динаміку мережевого середо-
вища якість обслуговування з часом може змінюватися. Отже, як динамічно налаштувати систему компо-
зиції, щоб адаптуватися до мінливого середовища та забезпечити якість складеного вебсервісу є ще од-
нією проблемою. Для вирішення вищезазначених проблем, пропонується підхід до композиції вебсерві-
сів, заснований на прогнозуванні якості вебсервісів та навчанні з підкріпленням. Зокрема, ми використо-
вуємо нейронну мережу довгої короткотривалої пам’яті для прогнозування якості обслуговування, а по-
тім робимо динамічний вибір вебсервісів за допомогою навчання з підкріпленням. Цей підхід можна до-
бре адаптувати до динамічного мережевого середовища.
Ключові слова: Сервісно-орієнтоване обчислення, якість обслуговування, композиція вебсервісу, компо-
зитний вебсервіс, глибоке навчання з підкріпленням.
H.B. Moroz
APPLICATION OF DEEP REINFORCED LEARNING
FOR LONG-TERM DYNAMIC COMPOSITION
OF WEB SERVICES
In the service oriented architecture, software and systems are abstracted as web services to be invoked by other
systems. Service composition is a technology, which builds a complex system by combining existing simple
services. With the development of service oriented architecture and web service technology, massive web ser-
vices with the same function begin to spring up. These services are maintained by different organizations and
have different quality of service. Thus, how to choose the appropriate service to make the whole system to deliver
the best overall quality of service has become a key problem in service composition research. Furthermore,
because of the complexity and dynamics of the network environment, quality of service may change over time.
Therefore, how to dynamically configure the composition system to adapt to the changing environment and
ensure the quality of the composed web service is another problem. To address the above challenges, we propose
a service composition approach based on quality of web service rediction and reinforcement learning. Specifi-
cally, we use long short-term memory neural network to predict the quality of web service hrough reinforcement
learning. This approach can be well adapted to a dynamic network environment.
Keywords: Service-oriented computing, quality of service, web service composition, composite web service,
deep reinforcement learning.
.
Вступ
Мережеві технології мають великий
вплив на розробку програмного забезпе-
чення в багатьох сферах застосування. Все
більше підприємств і організацій надають
своє програмне забезпечення, системи, об-
числювальні ресурси та ресурси зберігання
тощо у формі вебсервісів для використання
іншими користувачами. Тому питання про
те, як ефективно інтегрувати різні веб-
сервіси, стало фундаментальною пробле-
мою дослідження.
Композиція вебсервісів (web services
composition, WSC) в основному вивчає, як
створити програмну систему, яка може за-
довольнити складні функціональні вимоги
користувачів шляхом поєднання існуючих
Штучний інтелект
41
вебсервісів. При цьому потрібно врахову-
вати, що вебсервіси з однаковою функціо-
нальністю можуть надаватися різними пос-
тачальниками і з різною якістю обслугову-
вання (quality of service, QoS), яка в основ-
ному використовується для позначення не-
функціональних атрибутів вебсервісів, як-
то ціну, зручність використання, надійність,
час відгуку, репутацію, пропускну здатність
мереж і так далі. Через динамічну зміну ме-
режевого середовища, коливання продукти-
вності самого вебсервісу та зміну шаблонів
доступу користувачів QoS також можуть
динамічно змінюватися з часом. Тож, ме-
тоди WSC необхідно адаптувати до ди-
намічно змінюваного середовища [1].
Наразі процес WSC, зазвичай, пред-
ставляється як робочий. Кожний абстракт-
ний вебсервіс описує його необхідні
функціональні можливості і може мати
кілька реальних сервісів-кандидатів (ком-
понентів), які відповідають функціональ-
ним вимогам. WSC на основі робочого про-
цесу зосереджується на QoS. Для кожного
абстрактного вебсервісу використовуючі
QoS визначається кращий реальний веб-
сервіс, що дозволяє отримати оптимальний
результат WSC, який буде якнайбільше за-
довольняти вимоги користувача.
Час перебування конкретних компо-
нентів у складі композитного вебсервісу
(composite web service, СWS) сильно зале-
жать від їхньої здатності підтримувати дов-
гострокові вимоги до QoS [2]. Розробка дов-
гострокових СWS породжує проблему ви-
бору компонентів, які задовольняють ви-
моги до QoS протягом тривалих періодів
часу. Такий вибір передбачає прогно-
зування довгострокових трендів QoS (тобто
QoS протягом тривалого періоду). Основна
проблема, пов’язана з прогнозуванням дов-
гострокової QoS, полягає в тому, що її зна-
чення можуть коливатися в майбутньому.
Існує принаймні три переваги викори-
стання довгострокових тенденцій QoS під
час WSC. По-перше, розробники поклада-
ються на прогнозовану QoS, щоб точно виб-
рати найкращі вебсервіси, які відповідати-
муть вимогам до СWS протягом тривалого
періоду часу. Це забеспечує довготривале
перебування компонентів у складі CWS.
По-друге, реальні вебсервіси можуть зазна-
вати кількох змін протягом свого життєвого
циклу (як-от, припинення роботи веб-
сервісу), що може призвести до розриву
зв’язку між CWS та його компонентами. В
подальшому розробники зможуть замінити
проблемні компоненти новими, з кращими
характеристиками QoS. По-третє, поста-
чальники вебсервісу (наприклад, хмарні по-
стачальники) можуть покладатися на про-
гноз QoS для кращого управління ресур-
сами та балансування робочого наванта-
ження. Наприклад, вони можуть використо-
вувати більше ресурсів сервера (процесор і
пам’ять) у періоди пік. Точне прогно-
зування QoS дозволяє провайдерам
налаштовувати свої хмарні ресурси, щоб
якомога точніше задовольняти вимоги ко-
ристувачів у майбутньому. Це знижує
вірогідність порушення зв’язку між дов-
гостроковим CWS та його компонентами
через зміни QoS.
Існуючі в літературних джерелах
підходи до WSC на основі QoS здебільшого
зосереджені на статичних значеннях QoS,
які спостерігаються під час композиції
[3,4,5]. Проте на практиці через динамічну
зміну мережевого середовища та самого
вебсервісу його QoS буде змінюватися з ча-
сом, а, отже, такі майбутні варіації QoS
необхідно враховувати під час розробки
CWS.
Запропонований підхід поєднує про-
гнозування значення QoS та навчання з
підкріпленням, де перше використовується
для оцінки атрибутів QoS і покращення точ-
ності вибору вебсервісів у динамічному се-
редовищі, а останнє забезпечує самооп-
тимізацію та адаптивну здатність для ком-
позиції вебсервісів. Це приводить до нового
адаптивного методу WSC з урахуванням
QoS, яка може адаптуватися до динамічного
мережевого середовища.
Суміжні роботи
Враховуючи динаміку та складність
мережевого середовища, QoS вебсервіса
можуть постійно змінюватися, тому необ-
хідний метод WSC, який дозволяє сприй-
мати зміни середовища та автоматично на-
Штучний інтелект
42
лаштовувати систему. Ця проблема привер-
нула широку увагу, і було розроблено низку
рішень. У роботі [6] автори використовують
метод штучного інтелекту для планування
складу вебсервісу. Але цьому методу бракує
загального контролю над усім СWS. У [7,8]
автори розглядають задачу оптимізації ком-
позиції вебсервісу як задачу цілочисель-
ного програмування, а потім отримують оп-
тимальний розв’язок за допомогою
суміжної технології. У [9, 10] автори опису-
ють зв’язки між різними вебсервісами за
допомогою карти плану, моделюють компо-
зицію вебсервісів за допомогою моделі
діаграми плану, а потім шукають вебсервіси
низької якості та замінюють їх, використо-
вуючи жадібний алгоритм. Автори роботи
[11] використовують цілочисельне програ-
мування для глобальної оптимізації WSC.
Напочатку, завдяки використанню техно-
логії горизонту (skyline), значно змен-
шується кількість сервісів-кандидатів.
Отож, складність цілочисельного програ-
мування також суттєво зменшується. Так
само в [12] автори використовують техно-
логію горизонту для фільтрації вебсервісів.
Основна ідея наведених вище методів поля-
гає у вирішенні задачі композиції веб-
сервісу за допомогою цілочисельного про-
грамування або змішаного цілочисельного
програмування. Але такі методи застосовні
лише до невеликих проблем і не мають
здатності до самоадаптації. Таким чином,
вони не можуть вирішити проблему компо-
зиції вебсервісів у великомасштабному та
динамічному середовищі. Еволюційні алго-
ритми також використовувалися для вибору
та композиції вебсервіса. У [13] була запро-
понована оптимізація мурашиної колонії
для підтримки глобальної оптимізації QoS
композитного вебсервіса. Але цим методом
важко позбутися від проблеми локальної
оптимізації. У [14] розглядався баланс між
дослідженням та експлуатацією для компо-
зиції хмарного вебсервісу. Для цього стра-
тегія орла (eagle strategy) була об'єднана з
алгоритмом оптимізації кита (whale
optimization). Цей метод може уникнути ло-
кального оптимуму, але він не враховує
зміну QoS з часом, що впливає на адап-
тивність.
В останні роки одним із основних
напрямків досліджень у галузі інформацій-
них технологій стає машинне навчання. Де-
які вчені намагалися застосувати навчання з
підкріпленням (reinforcement learning, RL)
до композиції вебсервісів. У роботі [15] ви-
користовано модель марковського процесу
ухвалення рішень (Markov decision pro-
cesses, MDP) та навчання з підкріпленням
для виконання адаптивної WSC. У [16] ав-
тори використовують ієрархічний алгоритм
RL для підвищення ефективності компо-
зиції вебсервісів. Автори робіт [17 – 19] для
збільшення ефективності та якості резуль-
тату WSC застосовують багатоагентну тех-
нологію. У роботі [20] була запропоновано
трирівневу модель WSC із підтримкою
довіри. Використовуючи переваги методу
нечіткої комплексної оцінки, автори пред-
ставили інтегровану модель довірчого
управління. Ця модель може добре
аналізувати переваги користувачів, щоб от-
римати кращу композицію вебсервісу.
Проте наведені вище алгоритми, засновані
на навчанні з підкріпленням, хоч і мають
певну адаптивність, але вони ігнорують де-
які особливі проблеми в композиції веб-
сервісів. Більш конкретно, вебсервіси часто
розгортаються в мережевому середовищі.
QoS часто змінюється з часом через ди-
намічне мережеве середовище та можливі
коливання продуктивності самого веб-
сервісу. Тому для отримання кращих ре-
зультатів композиції вебсервісів необхідно
ефективно передбачити змінену якість веб-
сервісу. Незважаючи на те, що традиційний
метод RL має певну здатність до самоадап-
тації, він усе ще не може точно оцінити
якість вебсервісу, що призводить до неза-
довільних результатів композиції веб-
сервісів у високодинамічному середовищі.
Отже, необхідно певним чином передба-
чити зміну QoS, чого можна досягти за до-
помогою її прогнозування.
Останнім часом багато вчених вив-
чають проблему прогнозування QoS. Най-
поширенішим дослідженням є підходи на
основі спільної фільтрації [21–26]. Цей вид
методів передбачає, що подібні користувачі
можуть отримати подібну QoS від веб-
сервісу. Вони класифікують користувачів за
деякими функціями та забезпечують якісне
Штучний інтелект
43
прогнозування для інших подібних кори-
стувачів, використовуючи історичні дані,
створені користувачем, який послуговува-
вся вебсервісом. Прогноз QoS на основі
спільної фільтрації більше стосується
відмінностей QoS між різними користува-
чами. Але в композиції вебсервісів робочий
процес усієї композиції вебсервісів розроб-
лений відповідно до вимог певного кори-
стувача. Кожний вебсервіс викликається
цим користувачем. Зміни якості обслуго-
вування викликані не зміною розташування
або стану абонента вебсервісу, а тим, що
мережеве середовище на той момент зміни-
лося. QoS змінюється з часом і може бути
описана як дані часового ряду, подібні до
вартості акцій. Зважаючи на це, деякі вчені
намагаються застосувати технологію про-
гнозування часових рядів для прогно-
зування QoS. У [27] запропоновано прогно-
зувати часові ряди QoS на основі моделі ав-
торегресійної інтегрованої ковзної се-
редньої. Однак ця модель вимагає стабіль-
ності даних часових рядів, тому її не можна
застосовувати до сценаріїв із дуже ди-
намічними змінами. Останнім часом, з ро-
звитком технології глибокого навчання, де-
які дослідники вивчали методи прогно-
зування послідовності на основі рекурент-
них нейронних мереж (RNN), які досягли
певного прогресу в інших сферах [28–30].
Наприклад, у [31] RNN використовувалися
для багатокрокового прогнозування, яке
може відповідати ширшому діапазону шаб-
лонів даних. Загалом методи на основі гли-
бокого навчання краще відповідають склад-
ним функціям порівняно з традиційними
статистичними моделями і можуть забезпе-
чити кращу ефективність прогнозування у
роботі зі складними часовими рядами.
Попередні відомості
У цьому розділі представлено деякі
попередні відомості, включаючи навчання з
підкріпленням та прогнозування часових
рядів, які мають безпосереднє відношення
до предмету дослідження.
Прогнозування часових рядів
Прогноз часових рядів призначений для
оцінки майбутніх результатів на основі ми-
нулих даних. У сфері вебсервісних обчис-
лень через динамічну зміну мережевого се-
редовища та коливання продуктивності са-
мого вебсервісу його QoS часто змінюється
з часом. Ця зміна є певною закономірністю.
Таким чином QoS можна розглядати як дані
часових рядів, і наша мета полягає в тому,
щоб передбачити майбутню QoS на основі
історичних даних. Припускається, що дані
часового ряду xt задовольняють xt = g(T), де
g(T) втілює основні правила зміни xt з ча-
сом. Метод прогнозування часових рядів за-
звичай виходить з того, що майбутні дані
можна передбачити на основі минулих да-
них. Тобто існує функція f, така, що
g(t + 1) ≈ f(xt, xt-1, xt-2,…, x0).
Метою прогнозування часових рядів є
знаходження функції f, щоб майбутні дані
можна було оцінити на основі даних мину-
лих часових рядів [32].
Класичні методи прогнозування ча-
сових рядів включають метод ковзного се-
реднього, метод експоненційного зглад-
жування, авторегресійну модель і модель
авторегресійного підсумовування ковзного
середнього [33]. Загальний принцип цих
методів полягає в припущені, що f є
лінійною функцією. Це дозволяє вибрати
необхідну модель відповідно до характери-
стик історичних даних. Він встановлює
форму f(θ) із параметром θ, потім визначає
параметри функції, аналізуючи історичні
дані, і використовує цю функцію для про-
гнозування майбутніх даних. Більшість цих
методів базується на короткострокових да-
них і припускають, що цільова функція f є
лінійною, а це добре впливає на коротко-
строкове прогнозування або прогнозування
простого часового ряду. Однак, коли часові
ряди змінюються складним чином, який не-
можливо описати лінійними моделями, точ-
ність передбачення вищезазначених моде-
лей буде відносно низькою.
Навчання з підкріпленням
RL займає проміжне місце між кон-
трольованим та неконтрольованим навчан-
нями, оскільки вимагає скалярного сигналу
винагороди за серію вихідних дій. Воно
добре досягає деяких цілей у невідомому
середовищі, постійно коригуючи поведінку
Штучний інтелект
44
агента, як-от, керування роботом для
знаходження виходу у лабіринті. RL моде-
лює дослідницьку поведінку людини чи ін-
ших організмів у невідомому середовищі. У
такому середовищі агент постійно з ним
взаємодіє, отримує зворотний зв'язок, а
потім коригує власну поведінку. Кінцевою
метою є максимізація винагороди, отрима-
ної від середовища [34]. Існує багато різно-
видів навчання з підкріпленням. На рис.1
показана базова структура навчання з
підкріпленням. Агент виконує дію at. Після
її виконання він отримує із середовища ви-
нагороду rt+1, а потім переходить у новий
стан st+1. Агент буде коригувати вибір дій
відповідно до винагороди, і, нарешті, сфор-
мує власну стратегію вибору дій, яка отри-
мує максимальне значення винагороди.
Фактично агент і середовище утворюють
систему зі зворотним зв'язком.
Агент
Середовище
Дія
at
Cтан
rt+1
st+1
st
rt
Винагорода
Рис. 1. Базова структура навчання з підкрі-
пленням.
Вхідні дані алгоритму навчання з пі-
дкріпленням включають набір можливих
станів середовища, допустимі дії в кожному
стані, вартість винагороди та новий стан се-
редовища, які будуть отримані в результаті
виконання дії. Результатом є стратегія, яка
вибирає дії на основі станів, котрі мають
максимізувати очікування загальної вар-
тості винагороди.
Зазвичай вхідними даними навчання
з підкріпленням є марковський процес ухва-
лення рішень (MDP), який можна визначити
як 4-кортеж MDP = ⟨S, A(), P(), R()⟩, де
S – скінченна множина станів середовища;
A(s) – скінченний набір дій, які можна ви-
конати в стані s ∈ S;
P(s′|s, a) – функція розподілу ймовірностей
переходу середовища від поточного стану s
до наступного стану s′ при виконанні дії a
A(s).
R(s, a) – функція негайної винагороди, якщо
при поточному стані середовища s вибрана
дії a A(s).
Результатом навчання з підкріплен-
ням є стратегія вибору дії, виражена як
π: S → A, тобто вибір дії a = π(s) у стані s.
Найкраща стратегія вибору дій повинна
максимізувати очікування загальної цін-
ності винагороди. Загальна цінність вина-
городи агента (Gt), отримана за певною
послідовністю дій стану, початковим ста-
ном якої є st, може бути визначена як:
𝐺𝐺𝑡𝑡 = ∑ 𝛾𝛾𝑖𝑖∞
𝑖𝑖=0 𝑟𝑟𝑡𝑡+𝑖𝑖 (1)
де rt+i є винагорода, отримана при переході
зі стану s до стану s′ в момент часу t+i.
Змінна γ (0 ≤ γ ≤ 1) є ставкою дисконту-
вання, яка гарантує, що короткотривала ви-
нагорода є більшою, ніж довготривала, і
вплив нещодавньої винагороди відіграє
важливішу роль у виборі дії. Функція
«стан- цінність» визначається як очікування
випадкової величини Gt:
𝑉𝑉𝜋𝜋(𝑠𝑠𝑡𝑡) = 𝐸𝐸𝜋𝜋[𝐺𝐺𝑡𝑡|𝑠𝑠𝑡𝑡 = 𝑠𝑠] =
𝐸𝐸𝜋𝜋[∑ 𝛾𝛾𝑖𝑖∞
𝑖𝑖=0 𝑟𝑟𝑡𝑡+𝑖𝑖|𝑠𝑠𝑡𝑡 = 𝑠𝑠] (2)
де Eπ(∗) позначає очікуване значення випад-
кової величини за стратегією π. Величина
𝑉𝑉𝜋𝜋(𝑠𝑠𝑡𝑡) є очікуванням загальної винагороди
від початкового стану st за стратегією π. Її
рекурсивний вираз
𝑉𝑉𝜋𝜋(𝑠𝑠) = ∑ 𝜋𝜋(𝑎𝑎|𝑠𝑠)𝑎𝑎A ∑ 𝑝𝑝(𝑠𝑠′𝑠𝑠, 𝑎𝑎)[𝑟𝑟 +𝑠𝑠′𝑆𝑆
𝛾𝛾𝑉𝑉𝜋𝜋(𝑠𝑠′)] (3)
де p(s′|s, 𝑎𝑎) представляє ймовірність пере-
ходу від стану s до наступного стану s′.
Відповідно до формули (3) оптимальну
стратегію вибору дії π∗ можна виразити у
вигляді:
𝜋𝜋∗ = argmax
𝜋𝜋
𝑉𝑉𝜋𝜋(𝑠𝑠) , 𝑠𝑠S (4)
У поєднанні визначення MDP з фор-
мулами (3) та (4), кінцеву найкращу стра-
тегію вибору дії можна також представити
формулою
𝜋𝜋∗ = argmax
𝜋𝜋
(∑ 𝑝𝑝(𝑠𝑠′𝑠𝑠, 𝜋𝜋(𝑠𝑠))[𝑟𝑟 +𝑠𝑠′
𝛾𝛾𝑉𝑉𝜋𝜋(𝑠𝑠′)]) (5 )
Як результат вищезазначеного обго-
ворення, входом алгоритму навчання з
Штучний інтелект
45
підкріпленням є MDP, а виходом - стратегія
вибору дії a = π(s) у стані s, яка може бути
виражена формулою (5).
Q-навчання. Це широко використо-
вуваний алгоритм RL [35]. Його основна
ідея полягає в оцінці винагороди, отриманої
за дію, за допомогою таблиці значень Q, де
значення Q є оцінкою реальної винагороди.
Якщо фактичне та оцінене значення
відрізняються після виконання дії, таблиця
значень Q оновлюється різницею між двома
значеннями. Значення Q може поступово
наближатися до реального [36]. Після
певної кількості ітерацій таблиця значень Q
може мати точнішу оцінку реальної вар-
тості винагороди. Алгоритм Q-навчання ви-
користовує Q(s, a) для вказівки оціненої ви-
нагороди за дію a у стані s. Стратегія ви-
бору дій задана формулою (6):
𝜋𝜋(𝑠𝑠) = 𝑎𝑎𝑎𝑎𝑎𝑎max
𝑎𝑎
𝑄𝑄(𝑠𝑠, 𝑎𝑎) , 𝑎𝑎∈ A(s) (6)
Відповідно до цієї стратегії реальна
вартість винагороди за дію a на основі
стану s може бути виражена формулою (7),
де s′ представляє наступний стан, а нижній
індекс «real» представляє реальну вартість
винагороди, тоді як Q(s, a) представляє зна-
чення в таблиці значень Q для оцінки реаль-
ного значення Q:
𝑄𝑄𝑟𝑟𝑟𝑟𝑎𝑎𝑟𝑟(𝑠𝑠, 𝑎𝑎) = 𝑅𝑅(𝑠𝑠′𝑠𝑠, 𝑎𝑎) + 𝛾𝛾max𝑄𝑄(𝑠𝑠′, 𝑎𝑎′) (7)
Значення в таблиці Q буде оновлено
відповідно до формули (8).
𝑄𝑄(𝑠𝑠, 𝑎𝑎) = 𝑄𝑄(𝑠𝑠, 𝑎𝑎) + 𝛼𝛼 (𝑅𝑅(𝑠𝑠′𝑠𝑠, 𝑎𝑎) +
𝛾𝛾max𝑄𝑄(𝑠𝑠′, 𝑎𝑎′) − 𝑄𝑄(𝑠𝑠, 𝑎𝑎)) (8)
В алгоритмі Q-навчання вибір теоре-
тичної дії виконується за формулою (6). Але
в реальному процесі навчання, якщо що-
разу, коли ми вибираємо дію з найбільшим
значенням Q, вона може легко впасти в ло-
кальний оптимум. Отже, у виборі дій фак-
тичного алгоритму Q-навчання застосову-
ється ϵ − жадібна стратегія. Тобто вибір дії
здійснюється за формулою (6) з імовірністю
ϵ та за допомогою випадкового відбору з
імовірністю 1 − ϵ. Ця стратегія може допо-
могти алгоритму навчання з підкріпленням
досягти певного балансу між дослідженням
і використанням досвіду, а також уникнути
занадто ранього потрапляння в локальний
оптимум. Алгоритм Q-навчання наведено в
Алгоритмі 1.
Алгоритм 1: Q-навчання
Ініціалізуйте Q(s, a), параметри, введіть
модель MDP
repeat
встановіть поточний стан s
repeat
Виберіть a в A(s) на основі
ϵ − жадібної стратегії;
Виконайте a, отримайте винаго-
роду r = R(s′ | s, a) і новий стан s′;
𝑄𝑄(𝑠𝑠, 𝑎𝑎) = 𝑄𝑄(𝑠𝑠, 𝑎𝑎) + 𝛼𝛼(𝑎𝑎 +
𝛾𝛾max𝑄𝑄(𝑠𝑠′, 𝑎𝑎′) − 𝑄𝑄(𝑠𝑠, 𝑎𝑎))
s ← s′
until досягнення певного стану завер-
шення
until умова закінчення алгоритму
Глибоке навчання
Глибоке навчання — це підмножина ма-
шинного навчання, в якому використову-
ються нейронні мережі для розпізнавання
шаблонів у наданих даних для прогнозного
моделювання на прихованих даних. Дані
можуть бути табличними, текстовими,
графічними або мовними. Існує багато
типів архітектур нейронних мереж, викори-
стання яких залежить від особливостей
проблеми, що розглядається. Далі коротко
представлені три з них, які стосуються про-
блеми, що нас цікавить.
Нейронна мережа. Базова струк-
тура нейронної мережі показана на рис. 2.
Вона містить вхідний, прихований та
вихідний шари. Сила зв'язку між нейро-
нами задається вагами [37].
ВихідВаги q Вхід
Вхідний шар Прихований шар
Вихідний шар
Рис. 2. Базова структура нейронної мережі.
Нейронну мережу можна предста-
вити у вигляді певної функції y = f(x;θ), де x
— вхідні дані, y — вихідні дані, а θ — пара-
метри нейронної мережі, зокрема, ваги.
Вихідні дані ненавченої нейронної мережі
Штучний інтелект
46
часто незадовільні, тобто існує помилка
між виходом і очікуваним результатом. Зі
зміною параметрів нейронної мережі поми-
лка на певному наборі даних може ставати
більшою або меншою. Величину такої по-
милки можна визначити за допомогою
функції помилки L(θ). Отже, процес нав-
чання нейронної мережі фактично полягає
в знаходженні набору параметрів θ для
мінімізації значення функції помилки. Для
вирішення цієї проблеми часто використо-
вують метод градієнтного спуску. Основ-
ний принцип якогополягає в тому, що на-
прямок градієнта є (локально) найбільш
швидко змінюваним напрямком для функ-
ції, а отже, значення функції може бути зме-
ншено через коригування незалежної змін-
ної вздовж напрямку градієнта. Крок повто-
рюється багато разів, поки значення функції
не досягне найнижчої точки. Потім знахо-
диться локальне мінімальне значення.
Відповідно до цього принципу оновлення
параметрів нейронної мережі здійснюється
за формулою:
𝜃𝜃 = 𝜃𝜃 − 𝜂𝜂 𝐿𝐿(𝜃𝜃)
θ (9)
де η – швидкість навчання.
Рекурентні нейронні мережі. RNN є особ-
ливим типом нейронних мереж. Вони (на
відміну від звичайних нейронних мереж)
призначені для обробки послідовних даних
шляхом підтримки прихованого стану,
який фіксує інформацію про попередні вхі-
дні дані [38,39]. Базова архітектура скла-
дається з вхідного шару, прихованого шару
та вихідного шару. На відміну від нейрон-
них мереж прямого зв'язку, RNN мають ре-
курентні з'єднання, як показано на рис. 3,
що дозволяє інформації циклічно пе-
реміщатися в мережах.
Вхід
Прогноз
h3
y3
x3
h1
x1
h2
y2
x2
hn
yn
xn
y1
h0
Рис. 3. Архітектура простої RNN
На кожному часовому кроці t RNN приймає
вхідний вектор xt та оновлює свій прихова-
ний стан ht, використовуючи наступну фор-
мулу:
ht = tanh(Wxhxt +Whhht−1 + bh),
де Wxh - вагова матриця між вхідним та при-
хованим шаром, Whh - вагова матриця для
рекурентного з'єднання, bh - вектор
зміщення, а tanh - функція гіперболічного
тангенсна. Ця функція активації зводить
вхідні значення до діапазону [−1, 1],
роблячи її нульцентричною та придатною
для моделювання послідовностей як з пози-
тивними, так і з негативними значеннями.
Вихідний сигнал на кожному часовому
кроці t визначається так:
yt = σ(Whyht + by),
де Why – вагова матриця між прихованим та
вихідним шарами, by – вектор зміщення, а σ
– сигмоїдальна функція активації для вихі-
дного шару.
Нейронна мережа довгої короткотрива-
лої пам’яті (Long Short-Term Memory,
LSTM). Мережу LSTM було представлено
Hochreiter і Schmidhuber [40] головним чи-
ном для вирішення проблеми зникнення
градієнта, пов’язаної з простими RNN, що
ускладнювало виявлення довготривалих за-
лежностей у даних.
Ключовою інновацією в LSTM є викорис-
тання механізмів стробування (gating mech-
anisms) для керування потоком інформації
через мережу. Це дозволяє мережам LSTM
підтримувати й оновлювати свій внутріш-
ній стан протягом тривалих періодів, що
робить їх ефективними для завдань, які ви-
магають моделювання довгострокових за-
лежностей.
Типова внутрішня структура комі-
рки нейронної мережі LSTM показана на
рис. 4. Комірка містить три вентилі: вхід-
ний, забувальний і вихідний, які регулюють
стан комірки Ct і прихований стан ht. Ці вен-
тилі визначають, яку частину вхідних да-
них враховувати, яку частину попереднього
стану потрібно забути, та яку частину стану
комірки виводити.
Штучний інтелект
47
xt
ĉ
tanhσ
ot
σ
ht-1
Ct- 1 Ct
ht
σ
tanh
itft
Забувальний Вхідний Вихідний
В Е Н Т И Л І
Рис. 4. Внутрішня структура комірки
нейронної мережі LSTM.
Рівняння оновлення LSTM такі:
𝑓𝑓𝑡𝑡 = 𝜎𝜎(𝑊𝑊𝑓𝑓 ∙ [ℎ𝑡𝑡−1, 𝑥𝑥𝑡𝑡] + 𝑏𝑏𝑓𝑓) (10)
𝑖𝑖𝑡𝑡 = 𝜎𝜎(𝑊𝑊𝑖𝑖 ∙ [ℎ𝑡𝑡−1, 𝑥𝑥𝑡𝑡] + 𝑏𝑏𝑖𝑖) (11)
𝑜𝑜𝑡𝑡 = 𝜎𝜎(𝑊𝑊𝑜𝑜 ∙ [ℎ𝑡𝑡−1, 𝑥𝑥𝑡𝑡] + 𝑏𝑏𝑜𝑜) (12)
ĉ𝑡𝑡 = 𝑡𝑡𝑡𝑡𝑡𝑡ℎ(𝑊𝑊𝐶𝐶 ∙ [ℎ𝑡𝑡−1, 𝑥𝑥𝑡𝑡] + 𝑏𝑏𝐶𝐶) (13)
𝐶𝐶𝑡𝑡 = 𝑓𝑓𝑡𝑡 ⊗ 𝐶𝐶𝑡𝑡−1 + 𝑖𝑖𝑡𝑡 ⊗ ĉ𝑡𝑡 (14)
ℎ𝑡𝑡 = 𝑜𝑜𝑡𝑡 ⊗ 𝑡𝑡𝑡𝑡𝑡𝑡ℎ (𝐶𝐶𝑡𝑡) (15)
де ft - забувальний вентиль, it - вхідний вен-
тиль, ot - вихідний вентиль, Сt - стан комі-
рки, ĉ𝑡𝑡 - стан комірки-кандидата на стан ко-
мірки, ht - прихований стан, σ - сигмоїдна
функція, tanh -функція гіперболічного тан-
генса, ⊗ - поелементний добуток,
𝑊𝑊𝑓𝑓, 𝑊𝑊𝑖𝑖, 𝑊𝑊0, 𝑊𝑊𝐶𝐶 - вагові матрці, а 𝑏𝑏𝑓𝑓, 𝑏𝑏𝑖𝑖, 𝑏𝑏0, 𝑏𝑏𝐶𝐶
вектори зміщення.
У забувальному вентилі швидкість
забувавання обчислюється за формулою
(10), і знаходиться в діапазоні від 0 до 1.
Вхідний вентиль визначає, які дані
потрібно додати до стану комірки. Для
цього використовуються формули (11) та
(13). Нарешті, новий стан комірки контро-
люється спільно результатами розрахунку
забувального та вхідного вентилів за (14).
Вихід мережі LSTM визначається
новим станом комірки, поточним входом і
виходом прихованого шару в останній мо-
мент часу за формулою (15).
Додавши структуру з трьома венти-
лями до RNN, мережа LSTM може розріз-
няти та контролювати інформацію, за-
пам’ятовувати важливу інформацію протя-
гом тривалого часу та зберігати її в стані ко-
мірки. Отже, вона може бути використаною
для прогнозування часових рядів QoS.
Глибоке навчання з підкріплен-
ням (Deep Reinforcement Learning, DRL) ви-
никло як нова техніка, яка поєднує методи
навчання з підкріпленням та глибокого нав-
чання. Метою DRL є вивчення оптималь-
них дій, які максимізують нашу винагороду
за всі стани, в яких може перебувати наше
середовище. Ми робимо це, взаємодіючи зі
складними, багатовимірними середови-
щами, випробовуючи дії та навчаючись на
зворотному зв'язку. Галузь глибокого нав-
чання стосується апроксимації функцій у
багатовимірних задачах; задачах, які
настільки складні, що табличні методи
більше не можуть знайти точні рішення
[41]. Процес навчання DRL показаний на
рис. 5, який розділений на три етапи.
Агент
Стан S
Таблиця Q-значень
Нейронна
мережа
Винагорода3
Дія2
Спостереження1
Сприйняття
Глибоке навчання
Прийняття рішення
Навчання з підкріпленням
Середовищ
е
Рис. 5. Принцип глибокого навчання з
підкріпленням
1. Агент отримує спостереження за
допомогою взаємодії із навколишнім сере-
довищем (через RL) і передає результати до
нейронної мережі для вивчення абстракт-
них представлень;
2. Агент оцінює дію, виходячи з ве-
личини винагороди та зіставляє поточний
стан з відповідною дією за допомогою стра-
тегії поведінки;
3. Середовище реагує на дію та от-
римує наступне спостереження. Зрештою, з
вивченням вищезгаданих процесів може
бути досягнуто оптимальної стратегії.
Штучний інтелект
48
Щоб RL досягло оптимального ре-
зультату та конвергенції, потрібні дві важ-
ливі передумови: (1) доступна таблиця по-
шуку для зберігання значень Q; (2) Середо-
вище має відповідати властивості Маркова.
Перша передумова робить RL придатним
лише для проблем невеликого масштабу че-
рез недостатню здатність до вираження та
узагальнення. Тоді, як друга передумова пе-
редбачає, що агент чітко знає всю інфор-
мацію про навколишнє середовище, і
наступний стан може бути визначений
лише поточним станом і дією.
Довгострокова композиція
вебсервісу на основі
прогнозування QoS і DRL
У цьому розділі ми пропонуємо ада-
птивний метод WSC, що поєднує прогно-
зування QoS із навчанням з підкріпленням.
Щоб допомогти зрозуміти проблему спо-
чатку описується типовий сценарій компо-
зиції вебсервісу.
При WSC ми вибираємо відповідні
сервіси-кандидати за допомогою RL, щоб
максимізувати загальне значення QoS ком-
позитного вебсервісу. Враховуючи дина-
міку та складність мережевого середо-
вища, QoS постійно змінюється, тому для
її прогнозування пропонується метод на
основі LSTM. Далі ми поєднуємо прогно-
зування QoS і навчання з підкріпленням
для вирішення проблеми довгострокової
композиції вебсервісу, що може покра-
щити якість композитного вебсервісу в ди-
намічному середовищі.
Приклад сценарію композиції веб-
сервісу. Типовий процес WSC показано на
рис. 6, де ВСj, j=1,2,3,4 є абстрактні веб-
сервіси різного типу, як то готельний сер-
віс, авіасервіс, сервіс погоди тощо; aі – веб-
сервіси-кандидати одного і того ж типу,
але від різних постачальників. Для кож-
ного абстрактного вебсервісу нам необ-
хідно визначити його конкретні вебсервіси
та сформулювати конкретний робочий
процес композиції вебсервісу. Наприклад,
ґрунтуючись на робочому процесі компо-
зиції вебсервісу на рис. 6, можна отримати
24 варіанти компонування вебсервісів, 2 з
яких показано на рис. 7.
S0
Стан
завершення
S5S1
S3
S2
ВС3
(a4,a5)
ВС2
(a2,a3)
ВС4
(a6,a7,a8)
ВС1
(a0,a1)
Рис. 6. Простий робочий процес створення
композитного вебсервісу.
a1 a5 a6
СWS1 S0 S1 S3 S4
a0 a3 a7
СWS2 S0 S1 S2 S4
Рис. 7. Можливі результати композиції веб-
сервісу.
Легко побачити, що зі збільшенням
кількості сервісів-кандидатів і ускладнен-
ням робочого процесу композиції веб-
сервісів кількість можливих результатів
композиції вебсервісів різко збільшувати-
меться.
Завдання композиції вебсервісу по-
лягає в тому, щоб перевірити великий
простір кандидатів і отримати оптималь-
ний результат, який максимізує цінність
винагороди.
Модель композиції вебсервісу в
динамічному середовищі. Відповідно до
проблеми, описаної в попередньому роз-
ділі, пропонується модель динамічної ком-
позиції вебсервісу (Dynamic Web Service
Composition) на основі MDP, або коротко
«модель DWSC». Ця модель являє собою
6-кортеж DWSC=⟨S, S0, Sr, A(), P(), R()⟩,
де
S – скінченна множина станів середовища;
S0 – початковий стан, з якого починається
процес композиції вебсервісу.
Sr –набір станів завершення: при досяг-
ненні будь-якого з них, процес композиції
вебсервісів припиняється.
A(s) – скінченна множина вебсервісів, які
можуть бути викликані в стані s ∈ S;
Штучний інтелект
49
P(s′|s,a) – Імовірність переходу від поточ-
ного стану s до наступного стану s′ коли
викликається вебсервіс a.
R(s′|s,a,t) – функція негайної винагороди в
результаті переходу середовища з поточ-
ного стану s до стану s′ викликається дією
a, де t представляє час виклику вебсервісу.
У складі вебсервісу цінність винаго-
роди зазвичай визначається атрибутами
QoS вебсервісу.
Для повного опису робочого про-
цесу композиції вебсервісу можна викори-
стовувати модель DWSC. Розглянемо, як
приклад, простий робочий процес на
рис.6. Цей робочий процес можна описати
за допомогою моделі DWSC, у якій набір
станів S = {S0, S1, S2, S3, S4}, початковий
стан – S0, набір станів завершення – {S4}.
Вебсервіси, які можна викликати в різних
станах, включають A(S0) = {a0, a1} і A(S1)
= {a2, a3, a4, a5} тощо. Приклади ймовір-
ності переходу включають P(S1|S0, a0 ) = 1,
P(S2|S1, a2) = 1 і т. д. Значення винагороди
обчислюється за допомогою QoS, отрима-
ної під час виклику вебсервісу.
Після визначення робочого процесу,
процес WSC починається з початкового
стану, обирається конкретний вебсервіс
для кожного стану, а потім здійснюється
перехід до нового стану. Коли досягнуто
стану завершення, робочий процес компо-
зиції вебсервісу завершується. Цей робо-
чий процес, який складається з кількох
конкретних вебсервісів, є результатом
WSC. Хороший результат композиції веб-
сервісів має зробити загальну цінність ви-
нагороди якомога більшою.
Функція винагороди в складі веб-
сервісу. Алгоритм навчання з підкріплен-
ням видає найкращу стратегію вибору дій,
використовуючи модель MDP, що робить
його придатним для проблеми вибору веб-
сервісів. Для використання алгоритму нав-
чання з підкріпленням, нам потрібно спо-
чатку визначити функцію винагороди.
Оскільки під час композиції веб-
сервісу керуються, насамперед, вимогами
користувачів до QoS, то логічно функцію
винагороди визначати через атрибутами
QoS. Проте нам спочатку потрібно нор-
малізувати ці атрибути та відобразити їх на
[0, 1], так як різні атрибути QoS можуть
мати різні діапазони значень. Крім того,
враховуючи, що деякі атрибути QoS пози-
тивно корельовані (наприклад, пропускна
здатність), а деякі атрибути QoS корельо-
вані негативно (наприклад, час відповіді),
для визначенння винагороди будемо вико-
ристовувати дві формули:
𝑟𝑟 = 𝑄𝑄𝑄𝑄𝑄𝑄−𝑚𝑚𝑚𝑚𝑚𝑚
𝑚𝑚𝑚𝑚𝑚𝑚−𝑚𝑚𝑚𝑚𝑚𝑚 (15)
𝑟𝑟 = 𝑚𝑚𝑚𝑚𝑚𝑚−𝑄𝑄𝑄𝑄𝑄𝑄
𝑚𝑚𝑚𝑚𝑚𝑚−𝑚𝑚𝑚𝑚𝑚𝑚 (16)
Формула (15) використовується для нор-
малізації атрибутів QoS, які позитивно ко-
рельовані, а формула (16) використовується
для нормалізації атрибутів QoS, які ко-
рельовані негативно. Змінна r є результатом
нормалізації значення атрибута. QoS пред-
ставляє значення її атрибута після виклику
вебсервісу, а max і min представляють мак-
симальне та мінімальне значення атрибута
QoS. Якщо вебсервіс має кілька атрибутів
QoS, вартість винагороди буде розрахована
за формулою (17).
𝑅𝑅 = ∑ 𝑤𝑤𝑚𝑚
𝑚𝑚
𝑚𝑚=1 ∗ 𝑟𝑟𝑚𝑚 (17)
де R являє собою загальне значення винаго-
роди, m - кількість розглянутих атрибутів
QoS, ri - нормалізоване значення i-го атри-
бута QoS, а wi являє собою вагу i-го атри-
бута. Вага відображає важливість різних ат-
рибутів. Як правило, вона налаштовується
відповідно до переваг користувачів щодо
різних атрибутів так, що ∑ 𝑤𝑤𝑚𝑚
𝑚𝑚
𝑚𝑚=1 = 1.
Прогнозування часових рядів на
основі LSTM. У динамічному мережевому
середовищі QoS часто змінюється з часом, і
алгоритм навчання з підкріпленням не
може оцінити тенденцію зміни якості об-
слуговування. У цьому розділі буде пред-
ставлено метод прогнозування часових
рядів на основі LSTM, щоб допомогти
оцінити QoS у динамічному середовищі.
Основна ідея прогнозування часо-
вих рядів полягає в тому, щоб передбачити
майбутню QoS, використовуючи минулі
дані. У цій роботі використовується
нейронна мережа LSTM для прогнозування
Штучний інтелект
50
часових рядів, які можна представити та-
ким чином:
𝑥𝑥𝑡𝑡 = 𝐿𝐿𝐿𝐿𝐿𝐿𝐿𝐿(𝑥𝑥𝑡𝑡−1, 𝑥𝑥𝑡𝑡−2, 𝑥𝑥𝑡𝑡−3, … , 𝑥𝑥0; 𝜃𝜃), (18)
де xt є прогнозовані дані на наступному ча-
совому інтервалі, a
𝐿𝐿𝐿𝐿𝐿𝐿𝐿𝐿(𝑥𝑥𝑡𝑡−1, 𝑥𝑥𝑡𝑡−2, 𝑥𝑥𝑡𝑡−3, … , 𝑥𝑥0; 𝜃𝜃) представляє
нейронну мережу LSTM із параметром θ.
Вхідними даними нейронної мережі
є всі минулі дані. На практиці передбачити
за всіма минулими даними часто важко.
Тож, вхід нейронної мережі LSTM фак-
тично є даними попередніх n часових інте-
рвалів. Крім того, нейронна мережа LSTM
може передбачати більше, ніж один часо-
вий інтервал. Таким чином, передбачення
нейронної мережі LSTM можна виразити
формулою (19), в якій m є кількістю часо-
вих інтервалів передбачення, а n є кількістю
часових інтервалів вхідних даних.
𝑥𝑥𝑥𝑥+𝑚𝑚−1, … , 𝑥𝑥𝑡𝑡+1, 𝑥𝑥𝑡𝑡 =
𝐿𝐿𝐿𝐿𝐿𝐿𝐿𝐿(𝑥𝑥𝑡𝑡−1, 𝑥𝑥𝑡𝑡−2, … , 𝑥𝑥𝑡𝑡−𝑛𝑛; 𝜃𝜃) (19)
Після визначення входу та виходу
нейронної мережі можна побудувати
нейронну мережу LSTM, подану на рис. 8,
де показано розширення нейронної мережі
LSTM у часі. Тобто нейронна мережа, пред-
ставлена на рис.8 як A, є тією самою
нейронною мережею, і дані передаються
зліва направо в послідовності часу. На фазі
введення дані про n часових інтервалів по
черзі вводяться в нейронну мережу LSTM.
Вихідні дані останньої нейронної
мережі також будуть частиною поточних
вхідних даних. На етапі виведення
нейронна мережа LSTM спочатку виводить
дані прогнозу xt. Після цього нейронна ме-
режа більше не має вхідних даних із
зовнішніх даних (оскільки це тепер май-
бутній час, який більше не має фактичних
даних). Вона приймає лише прогнозоване
значення з попереднього моменту як вхід
поточного моменту, як показано на рис. 8, і
виводить прогнозоване значення на кож-
ному кроці. Коли отримано m прогнозова-
них значень, завдання прогнозування завер-
шується.
A
ht-n
xt-n
AA
ht-2
xt-2
A
ht-1
xt-1
xt+m-1
A
xt
Вхідна стадія Вихідна стадія
Рис. 8. Структура LSTM для прогно-
зування часових рядів.
Після побудови нейронної мережі
LSTM для її навчання потрібна велика кіль-
кість історичних даних. Навчальний набір
даних потрібно сегментувати, і кожні безпе-
рервні n+m точки даних використовуються
як навчальні дані. Перші n даних є вхідними
даними нейронної мережі, а дані останніх
m часових кроків представляють очікувані
результати прогнозування для обчислення
помилки нейронної мережі. Помилка об-
числюється за формулою (20), в якій xt
представляє фактичне значення моменту t,
x′t представляє прогнозоване значення в мо-
мент t, а N є кількістю точок даних у нав-
чальному наборі. Використана функція по-
хибки – це середня квадратична похибка:
𝐿𝐿 = 1
𝑁𝑁∑ (𝑥𝑥𝑡𝑡′ − 𝑥𝑥𝑡𝑡)2𝑁𝑁
𝑡𝑡=0 (20)
Після навчання метод градієнтного
спуску у формулі (9) використовується для
налаштування параметрів нейронної ме-
режі. Процес навчання повторюється багато
разів, поки значення помилки не стане
стабільним на мінімумі. Після навчання
нейронну мережу можна використовувати
для прогнозування майбутнього QoS.
Адаптивний алгоритм композиції веб-
сервісу. Розроблено новий адаптивний ал-
горитм композиції вебсервісів, який поєд-
нує навчання з підкріпленням і прогнозу-
вання QoS. Перш ніж представити алго-
ритм, нам потрібно вирішити дві проблеми
оцінки QoS у композиції вебсервісу. По-
перше, у композиції вебсервісу якість
сервісу-кандидата пов’язана не лише з ат-
рибутом QoS самого вебсервісу, а й з по-
дальшим робочим процесом, що є результа-
том вибору цього вебсервісу. Наприклад,
Штучний інтелект
51
хоча вебсервіс має кращі атрибути QoS,
QoS у подальшому процесі з вибором цього
вебсервісу може бути поганим, що призво-
дить до незадовільної загальної якості ком-
позиції вебсервісу. Тому в оцінці QoS ми
використовуємо алгоритм Q-навчання та
значення Q для представлення QoS у ком-
позиції вебсервісу. Відповідно до формули
значення Q (7), значення Q фактично є
лінійною суперпозицією кожного значення
винагороди за вебсервіс, тому його також
можна оцінити методом прогнозування ча-
сових рядів. Крім того, якщо значення Q
оцінюється за допомогою нейронної мережі
LSTM, формулу (7) потрібно переписати
так:
𝑄𝑄𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟(𝑠𝑠, 𝑎𝑎) = 𝑅𝑅(𝑠𝑠′𝑠𝑠, 𝑎𝑎) + 𝛾𝛾max𝐿𝐿𝐿𝐿𝐿𝐿𝐿𝐿(𝑠𝑠′, 𝑎𝑎′) (21)
де LSTM(s′, a′) представляє прогнозоване
значення нейронної мережі LSTM, що
відповідає стану s′ і вебсервісу a′, яка є
оцінкою значення Q для пари стан–дія
(s′, a′).
До того ж, із запуском алгоритму
композиції вебсервісу нові дані продов-
жуватимуть додаватися до набору історич-
них даних. Взагалі нейронна мережа нав-
чається на фіксованому навчальному
наборі, а потім застосовується до нових да-
них. Але в процесі створення вебсервісу
історичні дані поступово накопичуються,
тому потрібне поступове навчання нейрон-
ної мережі. Навчання нейронної мережі
необхідно проводити, якщо додається певна
кількість нових даних. Крім того, з накопи-
ченням історичних даних вони можуть зай-
мати багато місця і також впливатимуть на
ефективність навчання нейронної мережі.
Тому необхідно обмежити розмір набору
історичних даних і відкинути попередні
історичні дані, що може підвищити ефек-
тивність навчання нейронної мережі. Де-
тальний алгоритм наведено в Алгоритмі 2.
Алгоритм 2. WSC на основі прогнозування QoS
і навчання з підкріпленням
Iніціалізація LSTM(s,a), випадкових параметрів
дослідження ϵ, довжину вхідних даних n, ємність
історичних даних d, поріг оновлення LSTM u; вхі-
дної моделі DWSC;
repeat
Встановити s = s0;
repeat
Вибрати вебсервіс a за ϵ − жадібною
стратегією (використання LSTM для оцінки
якості обслуговування);
Викликати , отримати винагороду за
формулою (17), перейти в стан s′;
Обчислити значення Q за формулою (21),
додати ці дані до набору історичних да-
них;
if кількість даних у наборі історичних даних
set = d, then
Відмова від найдавніших історичних да-
них;
end if
if кількість нових даних у наборі історичних
даних = u,
then
Навчіть LSTM за формулою (20);
end if
s ← s′;
until досягти стану завершення;
until Збіжність (або до заданої кількості циклів);
Алгоритм закінчується. (Прогнозне значення QoS
кожного сервісу може визначити найкращий
сервіс-кандидат в кожному стані для завершення
композиції вебсервісу)
Висновок і майбутня робота.
Композиція вебсервісу пропонує
один із найважливіших способів повтор-
ного використання програмного забезпе-
чення шляхом поєднання існуючих вебсер-
вісів для створення нових систем, які відпо-
відають складним вимогам користувачів. Зі
збільшенням кількості функціонально схо-
жих вебсервісів виникає необхідність ви-
бору відповідних вебсервісів із великого
пулу кандидатів для формування якісного
композитного вебсервісу. Однак у динаміч-
ному мережевому середовищі QoS не є ста-
тичним, і якість може коливатися з часом.
Таким чином, метод композиції вебсервісів
потрібно динамічно коригувати, щоб адап-
туватися до змін навколишнього середо-
вища. Запропонований підхід враховує осо-
бливості динамічної зміни QoS. Для оцінки
часових рядів QoS розроблено рекурентну
модель на основі нейронної мережі. Модель
DWSC використовується для формального
представлення складу вебсервісу. Розроб-
лено адаптивний алгоритм композиції веб-
сервісів, який інтегрує навчання з підкріп-
ленням і динамічне прогнозування QoS.
Запропонований метод адаптивної компо-
зиції вебсервісів на основі навчання з підк-
ріпленням використовує таблицю значень Q
Штучний інтелект
52
і рекурентні нейронні мережі. Це вимагає
встановлення відповідної рекурентної ней-
ронної мережі для кожного можливого веб-
сервісу-кандидата, що призводить до висо-
кої обчислювальної вартості для великої кі-
лькості вебсервісів-кандидатів. Для цієї
проблеми ми плануємо вивчити глибоке на-
вчання з підкріпленням і використати відо-
браження нейронної мережі, щоб замінити
таблицю Q-значення в нашій майбутній ро-
боті. Ми також плануємо вивчити багатоа-
гентну систему, де кілька агентів спілку-
ються та координують один одного для під-
вищення ефективності.
References
1. Sangsanit, W. Kurutach, S. Phoomvuthisarn,
REST web service composition: A survey of
automation and techniques, in: 2018 Interna-
tional Conference on Information Networking,
ICOIN, 2018, pp. 116–121.
2. Kritikos, K., Pernici, B., Plebani, P., Cappiello,
C., Comuzzi, M., Benbernou, S.: I, B.,
Kertґesz, A., Parkin, M., Carro, M.: A survey
on service quality description. ACM Comput.
Surv. 46(1), 1:1–1:58 (2013)
3. Mistry, S., Bouguettaya, A., Dong, H., Qin,
A.K.: Predicting dynamic requests behavior in
long-term iaas service composition. In: IEEE
International Conference on Web Services
(ICWS) 2015, pp. 49–56. IEEE (2015)
4. Wang, S., Zhu, X., Yang, F.: Efficient QoS
management for qos-aware web service com-
position. Int. J. Web Grid Serv. 10(1), 1–23
(2014)
5. Zeng, L., Benatallah, B., Ngu, A.H., Dumas,
M., Kalagnanam, J., Chang, H.: Qos-aware
middleware for web services composition.
IEEE Trans. Softw. Eng. 30(5), 311–327
(2004)
6. Y. Yan, P. Poizat, L. Zhao, Repair vs. recom-
position for broken service compositions, in:
International Conference on Service-Oriented
Computing, Springer, 2010, pp. 152–166.
7. D. Ardagna, B. Pernici, Adaptive service com-
position in flexible processes, IEEE Trans.
Softw. Eng. 33 (6) (2007) 369–384.
8. F. Li, L. Zhang, Y. Liu, Y. Laili, QoS-aware ser-
vice composition in cloud manufacturing: a
Gale-Shapley algorithm-based approach, IEEE
Trans. Syst.Man Cybern. Syst. (2018) 1–12.
9. Y. Yan, P. Poizat, L. Zhao, Self-adaptive ser-
vice composition through graphplan repair, in:
Web Services (ICWS), 2010 IEEE Interna-
tional Conference on, IEEE, 2010, pp. 624–
627.
10. Y. Yan, P. Poizat, L. Zhao, Repairing service
compositions in a changing world, in: Software
Engineering Research, Management and Ap-
plications 2010, Springer, 2010, pp. 17–36.
11. M. Alrifai, D. Skoutas, T. Risse, Selecting sky-
line services for QoS-based web service com-
position, in: Proceedings of the 19th Interna-
tional Conference on World Wide Web, ACM,
2010, pp. 11–20.
12. V.A. Permadi, B.J. Santoso, Efficient skyline-
based web service composition with QoS -
awareness and budget constraint, in: 2018 In-
ternational Conference on Information and
Communications Technology, ICOIACT,
2018, pp.855–860.
13. O. Hammas, S.B. Yahia, S.B. Ahmed, Adap-
tive web service composition insuring global
QoS optimization, in: 2015 International Sym-
posium on Networks, Computers and Commu-
nications, ISNCC, IEEE, 2015, pp. 1–6.
14. S.K. Gavvala, C. Jatoth, G. Gangadharan, R.
Buyya, QoS-aware cloud service composition
using eagle strategy, Future Gener. Comput.
Syst. 90 (2019) 273–290.
15. H. Wang, X. Zhou, X. Zhou, W. Liu, W. Li, A.
Bouguettaya, Adaptive service composition
based on reinforcement learning, in: Interna-
tional Conference on Service-Oriented Com-
puting, Springer, 2010, pp. 92–107.
16. H. Wang, G. Huang, Q. Yu, Automatic hierar-
chical reinforcement learning for efficient
large-scale service composition, in: 2016 IEEE
International Conference on Web Services,
ICWS, 2016, pp. 57–64.
17. H. Wang, X. Chen, Q. Wu, Q. Yu, Z. Zheng,
A. Bouguettaya, Integratingon-policy rein-
forcement learning with multi-agent tech-
niques for adaptive service composition, in:
Service-Oriented Computing, Springer, 2014,
pp. 154–168.
18. Y. lei, P.S. Yu, Multi-agent reinforcement
learning for service composition, in: 2016
IEEE International Conference on Services
Computing, SCC, 2016, pp. 790–793.
19. P. Kendrick, T. Baker, Z. Maamar, A. Hussain,
R. Buyya, D. Al-Jumeily, An efficient multi-
cloud service composition using a distributed
multiagentbased, memory-driven approach,
IEEE Trans. Sustain. Comput. (2019) 1–13.
20. W. Li, J. Cao, K. Hu, J. Xu, R. Buyya, A trust-
based agent learning model for service compo-
sition in mobile cloud computing environ-
ments, IEEE Access 7 (2019) 34207–34226.
Штучний інтелект
53
21. D. Billsus, M.J. Pazzani, Learning collabora-
tive information filters, in: Icml, vol. 98, 1998,
pp. 46–54.
22. J.L. Herlocker, J.A. Konstan, A. Borchers, J.
Riedl, An algorithmic framework for perform-
ing collaborative filtering, in: SIGIR ’99: Pro-
ceedings of the International ACM SIGIR
Conference on Research and Development in
Information Retrieval, August 15–19, 1999,
Berkeley, CA, USA, 1999, pp. 230–237.
23. H.N. Kim, A.T. Ji, I. Ha, G.S. Jo, Collabora-
tive filtering based on collaborative tagging for
enhancing the quality of recommendation,
Electron. Commer. Res. Appl. 9 (1) (2010) 73–
83.
24. K. Chen, H. Mao, X. Shi, Y. Xu, A. Liu, Trust-
aware and location-based collaborative filter-
ing for web service QoS prediction, in: 2017
IEEE 41st Annual Computer Software and Ap-
plications Conference, COMPSAC, vol. 2,
2017, pp. 143–148.
25. C. Wu, W. Qiu, X. Wang, Z. Zheng, X. Yang,
Time-aware and sparsitytolerant QoS predic-
tion based on collaborative filtering, in: 2016
IEEE International Conference on Web Ser-
vices, ICWS, 2016, pp. 637–640.
26. G. Zou, M. Jiang, S. Niu, H. Wu, S. Pang, Y.
Gan, QoS aware web service recommendation
with reinforced collaborative filtering, in: In-
ternational Conference on Service-Oriented
Computing, Springer, 2018, pp. 430–445.
27. R.N. Calheiros, E. Masoumi, R. Ranjan, R.
Buyya, Workload prediction using ARIMA
model and its impact on cloud applications
x2019; QoS IEEE Trans. Cloud Comput. 3 (4)
(2015) 449–458.
28. I. Sutskever, O. Vinyals, Q.V. Le, Sequence to
sequence learning with neural networks, in:
Advances in Neural Information Processing
Systems, 2014, pp. 3104–3112.
29. A. Graves, A.-r. Mohamed, G. Hinton, Speech
recognition with deep recurrent neural net-
works, in: Acoustics, Speech and Signal Pro-
cessing (Icassp), 2013 Ieee International Con-
ference on, IEEE, 2013, pp. 6645–6649.
30. R.-G. Cirstea, D.-V. Micu, G.-M. Muresan, C.
Guo, B. Yang, Correlated time series forecast-
ing using multi-task deep neural networks, in:
Proceedings of the 27th ACM International
Conference on Information and Knowledge
Management, ACM, 2018, pp. 1527–1530.
31. L. Yunpeng, H. Di, B. Junpeng, Q. Yong,
Multi-step ahead time series forecasting for
different data patterns based on LSTM recur-
rent neural network, in: 2017 14th Web Infor-
mation Systems and Applications Conference,
WISA, 2017, pp. 305–310.
32. J.D. Hamilton, Time Series Analysis, Prince-
ton University Press, Princeton, NJ, 1994.
33. J. Contreras, R. Espinola, F.J. Nogales, A.J.
Conejo, ARIMA Models to predict next-day
electricity prices, IEEE Trans. Power Syst. 18
(3) (2003) 1014–1020
34. R. S. Sutton, A. G. Barto, Reinforcement
learning: An introduction, Adaptive computa-
tion and machine learning, MIT Press, 1998
35. D.E. Goldberg, J.H. Holland, Genetic algo-
rithms and machine learning, Mach. Learn. 3
(2) (1988) 95–99.
36. R.H. Crites, A.G. Barto, Elevator group con-
trol using multiple reinforcement learning
agents, Mach. Learn. 33 (2–3) (1998) 235–262.
37. Y. LeCun, Y. Bengio, G. Hinton, Deep learn-
ing, Nature 521 (7553) (2015) 436–444.
38. A. Karpathy, J. Johnson, L. Fei-Fei, Visualiz-
ing and understanding recurrent networks,
2015, ArXiv preprint, arXiv:1506.02078.
39. C. Goller, A. Kuchler, Learning task-depend-
ent distributed representations by backpropa-
gation through structure, in: Neural Networks,
1996, IEEE International Conference on, vol.
1, IEEE, 1996, pp. 347–352.
40. S. Hochreiter, J. Schmidhuber, Long short-
term memory, Neural Comput. 9 (8) (1997)
1735–1780.
41. A. Plaat, Deep Reinforcement Learning,
Springer Nature, 2022.
Одержано: 30.06.2025
Внутрішня рецензія оримана: 07.07.2025
Зовнішня рецензія оримана: 09.07.2025
Про авторa:
Мороз Григорій Борисович,
кандидат технічних наук,
старший науковий співробітник,
провідний науковий співробітник.
https://orcid.org/0000-0001-8666-9503
Місце роботи автора:
Інститут програмних систем
НАН України
тел. +38-044-526-60-33
E-mail: moroz170@gmail.com
|