Flow constructing and optimizing method for composite web service based on Q-learning

We propose a method of automated flow generation for the web services composition according to the de fined target state based on reinforcement machine learning. An agent that uses Q-learning gradually accu mulates knowledge about the environment to updates the evaluations of the usefulness of its a...

Full description

Saved in:
Bibliographic Details
Date:2025
Main Authors: Grishanova, I.Yu., Rogushina, J.V.
Format: Article
Language:Ukrainian
Published: PROBLEMS IN PROGRAMMING 2025
Subjects:
Online Access:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/767
Tags: Add Tag
No Tags, Be the first to tag this record!
Journal Title:Problems in programming
Download file: Pdf

Institution

Problems in programming
_version_ 1859477156689608704
author Grishanova, I.Yu.
Rogushina, J.V.
author_facet Grishanova, I.Yu.
Rogushina, J.V.
author_sort Grishanova, I.Yu.
baseUrl_str https://pp.isofts.kiev.ua/index.php/ojs1/oai
collection OJS
datestamp_date 2025-09-02T15:46:41Z
description We propose a method of automated flow generation for the web services composition according to the de fined target state based on reinforcement machine learning. An agent that uses Q-learning gradually accu mulates knowledge about the environment to updates the evaluations of the usefulness of its actions (these actions correspond to the existing services). The task is divided into two subtasks: - construction of possible flows represented as sequences of services where the results of the previous service execution change the current environment state and enable the exe cution of the next service; - choice of the optimal flow according to the history of interactions and to QoS criteria that is adapted to environment changes. We determine the main components of reinforcement learning and analyze their specifics for service com position task. Additional approaches that allow avoiding looping and the use of unnecessary services are considered. We propose modification of the Q-learning method developed for automatic generation of flows based on input and output data of web services and for selecting the optimal flow based on the analysis of their qualitative characteristics. This modified method uses approach with memory where the agent expands its knowledge about the environment at each step. We consider characteristics of proposed method based on analysis of its software implementation. Possibilities of proposed method are considered on example of generation an optimal study sequences used for individual educational trajectories in accordance with the personal needs of students. Every learning ob ject (information object used for educational needs described by metadata) is considered as a specific ser vice where inputs and outputs are represented by required and result competencies.Problems in programming 2025; 1: 82-93
first_indexed 2025-07-17T09:43:21Z
format Article
fulltext 82 Семантік Веб та лінгвістичні системи © І.Ю. Гришанова, Ю.В. Рогушина, 2025 ISSN 1727-4907. Проблеми програмування. 2025. №1 УДК 004.8, 005.94 https://doi.org/10.15407/pp2025.01.082 І.Ю. Гришанова, Ю.В. Рогушина МЕТОД ПОБУДОВИ ТА ОПТИМІЗАЦІЇ МАРШРУТУ ДЛЯ КОМПОЗИТНОГО ВЕБСЕРВІСУ НА ОСНОВІ Q-LEARNING Запропоновано метод автоматизованої генерації маршруту для композиції вебсервісів відповідно до поставленої цілі з використанням методів машинного навчання з підкріпленням (reinforcement learning). Агент, використовуючи Q-learning, поступово накопичує знання про середовище та онов- лює оцінку корисності своїх дій, яким відповідають наявні сервіси. Задача поділяється на дві підзадачі: побудову можливих маршрутів – таких послідовностей сервісів, що результати виконання попереднього сервісу змінюють середовище, уможливлюючи виконання наступного; та вибір оптимального маршруту відповідно до критеріїв QoS, що адаптується до змін самого середовища. Визначено основні складові навчання з підкріпленням, розглянуто їхню специфіку для аналізу серві- сів. Розглянуто додаткові підходи, які дозволяють уникнути зациклення та використання непотріб- них сервісів. Запропоновано модифікацію методу Q-learning для автоматичної генерації маршрутів на основі вхідних і вихідних даних вебсервісів і для вибору оптимального маршруту на основі аналі- зу їхніх якісних характеристик з використанням підходу з пам’яттю, де агент із кожним кроком роз- ширює свої знання про середовище. Запропоновано програмну реалізацію розробленого методу, яка дозволяє оцінити його властивості. Розглянуто можливості запропонованого методу на прикладі генерації оптимальних послідовностей вивчення матеріалів для індивідуальних освітніх траєкторій відповідно до особистих потреб студен- тів. Кожен навчальний об’єкт (інформаційний об’єкт, що використовується для освітніх потреб та описаний метаданими) розглядається як окремий сервіс, де входи та виходи представлені необхідни- ми та результуючими компетенціями. Ключові слова: вебсервіс, композиція сервісів, маршрут, машинне навчання. I. Grishanova, J. Rogushina FLOW CONSTRUCTING AND OPTIMIZING METHOD FOR COMPOSITE WEB SERVICE BASED ON Q-LEARNING We propose a method of automated flow generation for the web services composition according to the de- fined target state based on reinforcement machine learning. An agent that uses Q-learning gradually accu- mulates knowledge about the environment to updates the evaluations of the usefulness of its actions (these actions correspond to the existing services). The task is divided into two subtasks: - construction of possible flows represented as sequences of services where the results of the previous service execution change the current environment state and enable the exe- cution of the next service; - choice of the optimal flow according to the history of interactions and to QoS criteria that is adapted to environment changes. We determine the main components of reinforcement learning and analyze their specifics for se rvice com- position task. Additional approaches that allow avoiding looping and the use of unnecessary services are considered. We propose modification of the Q-learning method developed for automatic generation of flows based on input and output data of web services and for selecting the optimal flow based on the analysis of their qualitative characteristics. This modified method uses approach with memory where the agent expands its knowledge about the environment at each step. We consider characteristics of proposed method based on analysis of its software implementation. Possibilities of proposed method are considered on example of generation an optimal study sequences used for individual educational trajectories in accordance with the personal needs of students. Every learning ob- ject (information object used for educational needs described by metadata) is considered as a specific ser- vice where inputs and outputs are represented by required and result competencies. Keywords: web service, composition of services, flow, machine learning. 83 Семантік Веб та лінгвістичні системи 1. Вступ У сучасних системах вебсервіси є ключовим компонентом для реалізації ін- теграційних рішень. Вебсервіси забезпе- чують стандартизований інтерфейс для взаємодії між системами, а їх об'єднання дозволяє створювати складні композитні сервіси, що використовують кілька окре- мих вебсервісів для досягнення певної фу- нкціональності [1, 2]. Композиція вебсервісів – це процес вибору набору сервісів та послідовності їх виконання, що дозволяє перейти з наявно- го стану у бажаний (цільовий) стан. Вод- ночас враховуються як функціональні (входи, виходи, як саме перетворюються дані), так і нефункціональні (QoS – швид- кість роботи, вартість, доступність тощо) властивості сервісів [3]. Етапами ство- рення композиції вебсервісів є генерація можливих маршрутів сервісів, що викли- каються для досягнення цільового стану, та вибір серед них оптимального (ми вико- ристовуємо термін “маршрут” (flow) – за аналогією з теорією графів, де так позна- чається послідовність вершин та орієнто- ваних ребер – для опису послідовності ви- конання сервісів). Такий маршрут є осно- вою для подальшої композиції сервісів. Одним із сучасних підходів до ви- рішення задачі автоматизованої композиції вебсервісів є використання методів ма- шинного навчання (Machine Learning, ML), які дозволяють ефективно адаптувати ал- горитм до змін у середовищі, оптимізувати вибір сервісів на основі параметрів QoS та враховувати складні залежності між дани- ми та процесами. ML – це галузь штучного інтелекту, що досліджує алгоритми й статистичні мо- делі, які дозволяють комп'ютерам автома- тично поліпшуватися під час виконання завдань, спираючись на накопичені дані та досвід, без явного опису алгоритму [4]. Тобто комп’ютерні програми можуть пок- ращувати свою продуктивність, аналізую- чи дані й досвід, а не виконуючи заздале- гідь прописані інструкції. Сучасні алгори- тми ML оптимізують продуктивність з то- чки зору певного критерію на основі нако- пиченого досвіду [5]. Навчання з підкріп- ленням (reinforcement learning, RL) – підк- лас ML, що використовує зворотний зв'я- зок у вигляді винагороди або штрафу за- лежно від корисності певної дії для досяг- нення обраної цілі [6]. В рамках базової RL-системи виді- ляють наступні складові: Агент – це програма (наприклад, Q- learning), що шукає оптимальний шлях для досягнення цільового стану, тобто оцінює, які дії слід виконати у певному стані, щоб максимізувати винагороду і наблизитись до цільового стану. Агент навчається, удо- сконалюючи свої стратегії для досягнення максимальної винагороди в довгостроко- вій перспективі. Середовище – оточення агента, з яким він взаємодіє. Воно змінює стан у ві- дповідь на дії агента й генерує винагороду, яка стимулює або карає агента залежно від того, наскільки його дії сприяють досяг- ненню мети. Стратегія – правила, за якими агент обирає дії в кожному стані. Ці пра- вила агент змінює в результаті навчання, щоб знайти дії для максимізації сумарної винагороди. Функція винагороди – правило, яке визначає, яку винагороду отримує агент за дію в конкретному стані та забезпечує зво- ротний зв'язок, вказуючи агенту, чи його дії наближають до мети, і впливає на онов- лення стратегії. Функція цінності – оцінка впливу стану або пари "стан-дiя" на винагороду, яка дозволяє агенту оцінити вигідність своїх дій не лише на короткостроковій, а й на довгостроковій основі. Правила переходу між станами – визначення того, як середовище змінює свій стан після виконання агентом певної дії. Ці правила можуть бути як детерміно- ваними, так і стохастичними. Спостереження – інформація про стан середовища, доступна агенту залежно від типу середовища (повна або часткова). Ці компоненти описують замкне- ний цикл взаємодії в RL-системі (агент 84 Семантік Веб та лінгвістичні системи обирає дію → середовище реагує, змінюю- чи стан і надаючи винагороду → агент оновлює свою стратегію на основі отрима- ного досвіду), який повторюється, поки агент не навчиться оптимально виконувати завдання або досягати мети в середовищі. У методі навчання з підкріпленням Q-learning агент будує таблицю Q-значень для різних станів і дій, поступово знаходя- чи оптимальну стратегію через спроби й помилки. Таблиця Q-значень (або Q- таблиця) — це матриця, яка використову- ється в алгоритмі Q-learning для зберігання оцінок корисності виконання певної дії в конкретному стані середовища: рядки від- повідають станам, стовпці – можливим ді- ям. Значення Q(s,a) в таблиці показує очі- кувану винагороду, яку агент отримає, по- чавши зі стану s, виконавши дію a, і до- тримуючись оптимальної політики в пода- льшому. Завдяки тому, що агент постійно оновлює свої знання на основі отриманих винагород, він здатний адаптуватися до змін у середовищі, що робить його ефек- тивним інструментом для задач, де середо- вище є динамічним або частково відомим. 2. Постановка задачі У більшості відомих рішень з ком- позиції вебсервісів побудова маршруту не автоматизована. Ми пропонуємо: - алгоритм автоматичної побудови маршруту за описами характеристик веб- сервісів та вимогами до композитного сер- вісу; - метод вибору оптимального мар- шруту на основі порівняння властивостей за визначеним набором критеріїв QoS . Для вирішення задачі композиції вебсервісів методом Q-learning ми пропо- нуємо змоделювати та описати цю задачу через поняття агента і навколишнього се- редовища, де агент вивчає, які сервіси обирати для досягнення цільового резуль- тату (отримати вихідні параметри компо- зитного сервісу). Побудова композитного сервісу з оптимальними параметрами QoS має вра- ховувати додаткові вимоги: - уникнення використання зайвих і непотрібних сервісів; - уникнення зациклювання; - спрощення введення початкових даних, щоб термінальні стани, які не є ці- льовими, обчислювалися автоматично. До- сягнення таких термінальних станів озна- чає помилку і призводить до закінчення навчання; - адаптація до можливих змін хара- ктеристик сервісів та критеріїв QoS; - масштабування методу для вели- кої кількості сервісів; - оптимізація знайденого маршруту. 3. Елементи композитного вебсервісу Ми пропонуємо наступне визна- чення вебсервісу: вебсервіс WS – це п’ятірка WS = <ID, IN, OUT, QoS, Descr>, де: ID – ідентифікатор вебсервісу, уні- кальний атрибут: він дозволяє однозначно ідентифікувати кожен вебсервіс у системі; IN – множина вхідних параметрів <inp1; inp2; …; inpn>, N,1i = я к а о п и с у є п е р е д у м о в и д л я в и к о н а н н я в е б - с е р в і с у : ч і т к е в и - з н а ч е н н я в х і д н и х д а н и х д о з в о л я є з р о - з у м і т и , я к і с а м е п а - р а м е т р и м а є о т р и м а - т и в е б с е р в і с д л я с в о г о в и к о н а н н я ; OUT – множина вихідних параме- трів <out1; out2; …; outm>, M,1m = , я к а о п и с у є р е з у л ь - т а т р о б о т и в е б с е р - в і с у т а в и к о р и с т о - в у є т ь с я д л я с т в о - р е н н я к о м п о з и т н о г о с е р в і с у (в и х о д и о д - н о г о в е б с е р в і с у м о - ж у т ь в и к о р и с т о в у в а - т и с я я к в х о д и д л я і н - ш о г о ); 85 Семантік Веб та лінгвістичні системи QoS – кортеж нефункціональних характеристик <att1; att2; …; attk>, K,1k = (наприклад, доступність, час виконання, пропускна здатність), що містить важливі елементи для задачі адаптивної компози- ції, які визначають, наскільки вебсервіс ві- дповідає вимогам користувача та середо- вища, і впливають на вибір сервісів у ди- намічному середовищі; Descr – текстовий опис вебсервісу: цей компонент корисний для розуміння призначення вебсервісу, а також при сема- нтичній обробці вебсервісу для певних ці- лей. На даний час цей аспект ми не розгля- даємо, однак вважаємо перспективним до- слідження семантичної обробки таких описів. Композитний вебсервіс (Composite Web Service) – це впорядкована сукупність вебсервісів, об'єднаних для досягнення спільної мети – цільового стану. На почат- ку роботи композитний сервіс задається вхідними і вихідними параметрами (поча- тковим і цільовим станами). В результаті роботи нам необхідно отримати композитний вебсервіс як мно- жину можливих маршрутів і оптимальний маршрут – послідовність сервісів з опти- мальними параметрами QoS. Визначимо специфіку композиції сервісів у термінах базових елементів ML. Середовище – це простір станів і дій, які агент може виконувати для досягнення ці- льового стану. Станами є можливі комбі- нації доступних вхідних і вихідних пара- метрів, що змінюються залежно від того, які сервіси виконано. Множина всіх мож- ливих станів представляє простір станів, де окремо виділяють початковий і цільо- вий стани. Поточний стан агента – це те, які вхідні та вихідні дані відомі агенту піс- ля виклику певного вебсервісу. Початко- вий стан визначається вхідними парамет- рами композитного сервісу. Цільовий стан визначається набором вихідних даних (ви- ходів композитного вебсервісу), які агент повинен досягти. Якщо агент досягає ці- льового стану, епізод завершується, і він отримує винагороду. Досягнення цільово- го стану вказує на успішну композицію сервісів. Дія – це операції над станами в ре- зультаті виклику агентом доступного веб- сервісу, що змінює поточний стан агента, та збільшує його знання про середовище. Маршрут – це послідовність дій агента (викликів вебсервісів), які перево- дять його з початкового стану до цільового стану. Кожен крок маршруту відповідає виконанню певної дії (вебсервісу), яка змі- нює поточний стан агента на новий. В результаті роботи алгоритму агент формує множину маршрутів – набір усіх припустимих послідовностей дій, які переводять агента з початкового до цільо- вого стану. Кожному маршруту відповідає послідовність вебсервісів, що можуть бути використані для досягнення мети. 4. Q-learning для побудови оптимального композитного сервісу В загальному вигляді програма нав- чання агента методом Q-learning має на- ступний вигляд [7]: initialize Q(s, a) for all Ss , )s(Aa for each episode do s  s0 // Початковий стан while s terminal state do Choose )s(Aa using − greedy policy Execute action a, observe reward r and new state s' )]a,s)Q`)a`,s(Q̀amaxr[)a,s(Q)a,s(Q −++ s s' // Перехід до нового стану end while end for де: s – поточний стан агента, a – обрана дія, r – винагорода за виконання дії a, s′ – новий стан після виконання дії, α – швидкість навчання (learning rate), γ – фактор дисконтування (discount factor), ε – параметр для ε-жадібної страте- гії, що контролює баланс між досліджен- ням та експлуатацією. 86 Семантік Веб та лінгвістичні системи Загальні характеристики методу Q- learning створюють основу для розробки алгоритму, що дозволяє агенту діяти в се- редовищі оптимально (саме цей алгоритм реалізовано у нашій програмі). Він забез- печує ефективне навчання, знаходження оптимальної стратегії і, зрештою, вирі- шення поставленої задачі – побудови оп- тимального композитного сервісу з ураху- ванням заданих параметрів QoS. Розглянемо, як саме ми пропонуємо модифікувати Q-learning для побудови композитного сервісу. У просторі станів S, що описує мо- жливі комбінації вхідних даних, можна виділити наступні підмножини: - SS alminter  – множина терміна- льних станів, де alminteralminter Ss  – термінальний стан, у якому агент більше не може виконати жодну операцію або до- сяг завершення своєї мети. - alminteretargt SsS  – цільовий стан, в якому досягнуто бажаного резуль- тату (отримано необхідні вихідні дані). - SSnegative  – множина негатив- них станів, де negativelnegativel Ss  – це стан, у якому агент не може знайти жодної дії, яка б наближала його до цільового ста- ну, тобто не може рухатися до мети, і тому епізод має завершитися зі штрафом. . Стан вважається негативним в на- ступних ситуаціях: - для даного стану немає можливих дій (тобто жоден сервіс не може бути ви- конаний), - немає доступних дій (сервісів), що переводять агента у новий корисний стан (тобто будь-які дії не наближають агента до цільового стану). Якщо доступна дія не веде до ці- льового стану або не додає корисних вихо- дів, можна розглядати її як помилкову і призначати штраф за її виконання. Функція переходу — механізм, який визначає, як змінюється стан після виконання дії. У запропонованому методі зміна стану залежить від того, які виходи вебсервісу додаються до поточного стану (next_state), та від того, які обмеження враховуються для доступності сервісів. Ми пропонуємо функцію переходу визначати за допомогою таблиці переходів transition_table, яка зберігає нові стани для кожної пари (стан, дія). Такий підхід вра- ховує лише доступні сервіси в поточному стані, що запобігає вибору некоректних дій. З кожним кроком агент, переходячи зі стану Ss в стан S`s , розширює свої знання про середовище. Винагорода (Reward) в алгоритмі Q-learning – це кількісна оцінка того, на- скільки корисною або шкідливою була ця дія для досягнення кінцевої мети, тобто отримання цільових вихідних даних у композитному сервісі. Агент отримує її після виконання певної дії (виклик/аналіз сервісу) у конкретному стані. Винагорода визначається за формулою:  = −= n 1i ii 1)a,s(r*w)a,s(R . Стан Ss , дія Aa , iw – вага і-го параметру QoS значення винагороди за стан s та дію a, )a,s(ri – нормалізована оцінка винагороди для і-го параметру QoS, що визначається за наступним правилом: minmax mini i attatt att)a,s(att)a,s(r − − = , якщо па- раметр і потрібно максимізувати, minmax mini i attatt att)a,s(att1)a,s(r − − −= , якщо параметр і потрібно мінімізувати. )a,s(atti – значення і-го параметра QoS для дії а у стані s, а minatt та maxatt – його мінімальне та максимальне значення серед усіх можливих сервісів. Ми пропонуємо доповнювати ви- значення винагороди штрафами за непо- трібні дії, що не наближають агента до цілі або не дають нових корисних виходів. До- дається функція втрат (Loss Function), по- дібно до нейронних мереж, яка визнача- ється через різницю між поточним Q- значенням і цільовим значенням, що вико- ристовується для оновлення Q-таблиці. Щокожного оновлення вона визначається як окрема метрика TD-помилки – Temporal Difference error . 87 Семантік Веб та лінгвістичні системи Запропонований метод використо- вує популярну у Q-learning ε-жадібну (epsilon-greedy) стратегію, що забезпечує баланс між дослідженням нових дій і ви- користанням вже відомих дій з високими значеннями Q-значень. Спочатку агент ак- тивно досліджує середовище, а після нако- пичення достатньої інформації поступово починає фокусуватися на оптимальних ді- ях, зменшуючи випадкові вибори. Прове- дені нами експерименти на великих набо- рах даних виявили потребу в оптимізації процесу обчислення стратегії. Це зумовило необхідність розробки автоматизованого вибору методу розрахунку стратегії, що було реалізовано в нашій роботі. Алгоритм навчання для побудови оптимального композитного вебсервіса має наступний вигляд: 1. Ініціалізація середовища: опису- ються входи, виходи та QoS-параметри вебсервісів; формується список цільових виходів та початковий стан композитного сервісу; задаються глобальні параметри важливості елементів QoS; генерується таблиця досяжних станів, які можна отри- мати, виконуючи сервіси послідовно; фор- мується таблиця переходів, можливих за умови виконання наявних сервісів. 2. Пошук можливих маршрутів за допомогою модифікованого Q-learning: - Ініціалізація Q-таблиці всіх мож- ливих станів і дій (значення Q-функції іні- ціалізуються нулями); - Навчання. Початковий стан зада- ється відповідно до вхідних даних компо- зитного сервісу. Агент вибирає дію (веб- сервіс), яку можна виконати у цьому стані на основі обраної стратегії. Агент виконує дії та в результаті цього переходить з од- ного стану в інший. Винагорода нарахову- ється за: прогрес у досягненні мети та як- ість виконання сервісу (значення QoS). Якщо досягнуто стан, коли жодна дія не наближає агента до цілі, то за виконання будь-якої можливої дії агент отримує нега- тивну винагороду. Якщо через певну кіль- кість перевірок ситуація не змінюється, епізод завершується невдачею. 3. Вибір і контроль стратегії (ε- жадібної стратегії дій агенту). На основі проведених експериментів на даний час ми використовуємо експоненційне та лінійне зниження ε. Найкращий метод зниження ε підбирається автоматично шляхом запуску тестових епізодів з оцінкою кількості знайдених маршрутів та часу виконання. 4. Збереження досвіду. Після заве- ршення навчання Q-таблиця зберігається у файлі. Досвід агента (знайдені маршрути) також записується у форматі JSON. 5. Оцінка ефективності. Для конт- ролю роботи алгоритму процес знахо- дження оптимального маршруту відобра- жається наступним чином: виводяться всі маршрути, які досягають мети, із зазна- ченням їхніх сумарних QoS і наприкінці виводиться оптимальний. За результатами роботи будуються графіки сумарної вина- городи, TD-помилки та зміни ε за епізо- дами. 6. Використання збереженого дос- віду. Отримані результати роботи агента (Q-таблиця та список маршрутів) можливо зберігати і в подальшому завантажувати для виконання цільового завдання без не- обхідності додаткового навчання. 5. Наукова новизна Агент, який використовує Q- learning, може поступово вивчати та вдос- коналювати стратегію вибору оптималь- них вебсервісів, оновлюючи свою Q- таблицю – структуру, в якій зберігаються оцінки вигідності переходу з одного стану в інший через виконання конкретної дії (виклику вебсервісу). Під час цього проце- су агент отримує винагороду за правиль- ний вибір дії або штраф за неправильний і таким чином поступово адаптується до змін у середовищі. Більшість досліджень [8-10], що стосуються композиції вебсервісів із вико- ристанням методів навчання з підкріплен- ням (RL), зосереджуються на оптимізації параметрів якості обслуговування (QoS), тоді, як проблему автоматичної побудови можливих маршрутів часто ігнорують або вирішують вручну чи напів-автоматично. В попередній роботі автори дослідили до- цільність використання Q-learning для композиції сервісів за попередньо заданим 88 Семантік Веб та лінгвістичні системи маршрутом та визначили потребу в авто- матизації побудови таких маршрутів [11]. У роботі запропоновано модифіко- ваний алгоритм Q-learning для автоматич- ної генерації маршрутів на основі вхідних і вихідних даних вебсервісів і вибору опти- мального згідно з параметрами QoS і гло- бальних ваг важливості цих параметрів. Запропонований підхід побудови множини можливих маршрутів для задано- го композитного сервісу і вибір оптималь- ного відрізняється від традиційних тим, що адаптується до змін у середовищі в реаль- ному часі. Агент навчається на основі зво- ротного зв'язку від середовища і самостій- но коригує вибір вебсервісів для досягнен- ня кращої якості. Цей метод не потребує попередньо повної інформації про весь простір станів вебсервісів. Невідомі стани обробляються окремо: якщо для певного стану немає можливих переходів, епізод завершується зі штрафом, що мінімізує ри- зик неправильних дій та переходів у неви- значені стани. Надана формалізація композиції вебсервісів через базові поняття методу Q- learning: стани, простір станів, дії, перехо- ди таке інше, що дозволяє реалізувати ав- томатизацію процесу побудови маршрутів методом Q-learning, який раніше викону- вався частково вручну. Запропонований метод базується на даних, що збираються із описів вебсерві- сів, поданих стандартом OpenAPI [12], що додає гнучкості в адаптації для різних пла- тформ і надає доступ до описів функціона- льності кожного сервісу. Оптимізація процесу навчання здій- снюється за рахунок виключення з розгля- ду негативних станів та повторних дій у поточному епізоді, що дозволяє скоротити обчислювальні витрати та зосередити по- шук на більш релевантних станах та допо- магає запобігти зациклюванню в епізоді. Реалізовано також механізми для запобі- гання зациклюванню шляхом обмеження на кількість кроків без прогресу, щоб уни- кати петлевих станів. Такі види оптиміза- ції не входять до класичного Q-learning. Запропонований метод для побудо- ви композицій вебсервісів реалізує Q- learning алгоритм, що відрізняється від класичного адаптацією до специфічних вимог вибору і комбінації вебсервісів. 6. Основні відмінності запропонованого методу Запропонований метод побудови множини можливих маршрутів має низку принципових відмінностей від традицій- них підходів Q-learning. Динамічний вибір і корекція дій У запропонованому методі агент обирає послідовність вебсервісів з ураху- ванням специфічних параметрів QoS. Кла- сичний Q-learning орієнтується переважно на статичне середовище, де набір дій ви- значений наперед, а в нашому випадку дії можуть залежати від поточного набору до- сягнутих станів і комбінації входів-виходів кожного сервісу. Аналіз QoS. Даний метод включає оцінку якості сервісів на основі QoS для формування ви- нагороди, що дозволяє точніше оцінювати вигоду від кожного вибору сервісу. Кіль- кість параметрів QoS не є фіксованою. Крім того, на відміну від поширених прик- ладів з оптимізацєю QoS ми вводимо гло- бальні ваги параметрів QoS для врахуван- ня як важливості різних аспектів, так і їх- ній характер впливу: одні слід максимізу- вати, а інші — мінімізувати (наприклад, доступність, продуктивність треба макси- мізувати, а час виконання — мінімізувати) у процесі обчислення винагороди за вико- ристання певного вебсервісу. Таке уза- гальнення дає змогу адаптувати модель до конкретних умов задачі, підвищує її гнуч- кість і точність у виборі оптимального композитного сервісу. Класичний Q- learning зосереджений лише на кінцевій винагороді, не враховуючи QoS та їхньої модальності. Використання OpenAPI. Метод використовує дані, які зби- раються із специфікацій OpenAPI, що до- дає гнучкості в адаптації для різних плат- форм і надає доступ до описів функціона- льності кожного сервісу. Класичний Q- learning не містить аналогічного етапу ін- терпретації структурованих вебданих, тоді як наданий метод можливо використовува- 89 Семантік Веб та лінгвістичні системи ти з будь-якими стандартами подання веб- сервісів, що містять узгоджені описи вхід- них і вихідних даних. Механізми для запобігання зацик- люванню. Враховуючи складність побудови багатокомпонентних вебсервісів, додатко- во запроваджені обмеження на кількість кроків без прогресу, щоб уникати петлевих станів. Це розширює можливості класич- ного Q-learning, де подібні зациклювання не є критичними. Обробка безвихідних і неперспекти- вних станів. Запропоновано механізм, який за- побігає виконанню дій, що не мають пере- ходів для певного стану, і вводиться штраф за такі дії. Тобто агент перевіряє наявність можливих дій у кожному стані та отримує штраф за неперспективні дії. Це корисне розширення для обробки виня- тків або "неперспективних" станів, але класичний метод Q-learning цього не має. Встановлення параметрів навчання залежно від розміру вхідних даних. Автоматично визначаються: - кількість епізодів – залежно від розміру таблиці станів та складності за- вдання; - обмеження кроків на епізод – за- лежно від кількості станів і середньої дов- жини можливого маршруту; - порогова кількість кроків без про- гресу – для уникнення зациклювання зале- жно від складності середовища; - гіперпараметри Q-learning: стра- тегія навчання epsilon і метод зниження параметра epsilon epsilon_decay – для за- безпечення оптимального балансу між до- слідженням та експлуатацією; - швидкість навчання alpha – адап- тується під максимальну довжину марш- руту і стабільність навчання. Така модифікація Q-learning дозво- ляє агенту не просто знаходити можливі маршрути через список доступних веб- сервісів, а й адаптивно покращувати стра- тегію вибору на основі зворотного зв'язку від середовища. Це забезпечує системі можливість автоматично коригувати свої рішення, вибираючи такі вебсервіси, які оптимізують не тільки функціональність композитного сервісу, а й параметри QoS. Цей підхід є особливо корисним у динамі- чних середовищах, де характеристики веб- сервісів, такі як час виконання, доступ- ність або пропускна здатність, з часом мо- жуть змінюватися. Використання Q- learning дозволяє автоматично підбирати найкращі варіанти композиції, враховуючи не лише доступні сервіси, а й їхню поточ- ну продуктивність. Основні компоненти запропонованого методу залишаються в межах класичного Q-learning (формула оновлення, ε-жадібна стратегія тощо), але внесені вдосконалення роблять його реалі- зацію більш гнучкою і надійною, що ро- бить його ефективнішим у середовищах із високою динамікою і складними вимогами до виконання. 7. Застосування алгоритму композиції сервісів для побудови послідовностей навчальних об’єктів Розглянемо використання запропо- нованого методу на прикладі задачі вибору послідовності вивчення навчальних об'єк- тів (Learning Object, LO), що використо- вуються в індивідуальних освітніх траєк- торіях [13], які дозволяють персоніфікува- ти процес здобуття освіти відповідно до потреб та можливостей конкретного сту- дента. LO – це сукупність інформації, яку об’єднує певна навчальна ціль [14]. Це ав- тономний інформаційних об’єкт, що може багаторазово використовуватися у нав- чальному процесі. LO може містити лек- ційні матеріали, практичні завдання, засо- би оцінювання знань, представлені як текст, відео, аудіо, програмний код тощо, а контент та роль LO у навчанні однозначно визначаються в його метаописі. Використання метаописів є осно- вою для автоматизованого аналізу LO, що забезпечує їхнє багаторазове використання для різних навчальних задач, оптимізує їх- ній вибір та зменшує час цієї процедури, дозволяє шукати, оцінювати та комбінува- ти LO без додаткового аналізу їхнього ко- нтенту. 90 Семантік Веб та лінгвістичні системи Метадані LO дозволяють визначити вимоги до студента, який здатний оволоді- ти знаннями з LO, – вхідні компетенції, та результати такого вивчення – вихідні ком- петенції. Для забезпечення можливості співставлення компетенцій LO, виклада- чем курсу спочатку створюється тезаурус навчального курсу outincourse CCTh = , що містить усі основні компетенції, що їх має отримати студент, який успішно ви- вчить цей курс Q,1q,Cc outqoit = , та попередні вимоги до студентів P,1p,Cc inpin = [16]. Після цього ви- кладач здійснює попередній відбір LO, outkoutinkink C)l(c,C)l(cLl  так, щоб у цих LO були надані можливості отримання всіх результуючих компетенцій курсу, тобто )l(cc:lCc koutpoutkoutpout  . Це дозволяє визначати семантичні відношення між окремими LO – напри- клад, знаходити прийнятний порядок ви- вчення цих LO або перетин знань в їхньо- му контенті (Рис.1). Рис.1. Процес побудови послідовності LO на основі аналізу компетенцій студента Наступним кроком є оновлення ме- таданих LO з множини L, щоб пов’язати кожен з них із відповідними вхідними та вихідними наборами компетенцій курсу. Слід звернути увагу, що таке уточнення метаданих LO потрібно виконувати для кожного навчального курсу. Аналізувати метадані LO можна вручну, але, якщо LO багато та вони до- сить часто оновлюються, то це забиратиме дуже багато часу, а результати такого ана- лізу можуть бути неактуальними. Для автоматизації цього процесу пропонуємо вивчення кожного LO як веб- ервісу, що має функціональні вимоги і нефункціональні властивості. Функціональні вимоги сервісу LO – це входи (компетенції студента, які не- обхідні для вивчення) та виходи (компете- нції, які отримуються в результаті вивчен- 91 Семантік Веб та лінгвістичні системи ня). Нефункціональні властивості сервісу LO – це характеристики, що можуть впли- вати на вибір одного із сервісів з однако- вими функціональними вимогами – як-от, вартість і час вивчення, які треба мінімі- зувати, і рейтинг курсу, який треба макси- мізувати. Задача полягає в тому, щоб за па- раметрами наявних LO (вхідні дані – ком- петенції, що потрібні для вивчення; вихід- ні дані – компетенції, які можна отримати в результаті навчання [14]) побудувати оп- тимальну послідовність вивчення LO, що дозволяє отримати певний набір компете- нцій – цільовий стан. Цей цільовий стан формалізується як набір outC з courseTh . Сервіси LO функціонують у дина- мічному інформаційному середовищі, тоб- то може змінюватися набір доступних сер- вісів, умови їх використання та контент, а також поточний стан студента. Наприклад, у якийсь момент часу студент розуміє, що для отримання певної компетенції курсу він має доступ лише до таких LO, що по- дають інформацію природною мовою, якою він не володіє, тобто ситуація може розглядатися як негативний стан. Тоді сту- дент може почекати появи LO тими мова- ми, котрі він знає, вивчити мову, яку вико- ристовують LO з відповідними компетен- ціями або очікувати на зменшення резуль- туючих компетенцій курсу (у цьому дослі- дженні динамічні зміни цільового стану не розглядаються). Крім того, щомиті можуть змінюва- тися критерії оцінювання та відносні пріо- ритети параметрів LO. Приміром, іноді час навчання стає важливішим за його вар- тість. Це викликає потребу у застосуванні методів машинного навчання, які забезпе- чують можливість автоматизованої побу- дови маршруту без фіксації його довжини та послідовності елементів. Запропонований у роботі метод ві- дповідає цим умовам, а тестування його на прикладі з 1000 LO (кількість станів 25913), показало прийнятний час виконан- ня (час формування таблиць: 197.4923 се- кунд і час виконання: 2.5679 секунд) та ви- сокий рівень якості побудованої траєкторії навчання. Тестування виконувалось на Macbook Pro з чіпом Apple M1 Pro з 16Гб пам`яті. A B Рис.2. Результати тестування про- грами на прикладі з 1000 LO Графік винагороди за епізодами (крива навчання) (Рис.2.А) показує, як змі- нювалася винагорода під час навчання агента. На початку роботи алгоритму фі- нальна винагорода за виконання дій була низькою, але поступово її значення збіль- шувалося, що свідчить про навчання аген- та і його здатність знаходити кращі марш- рути навчання. Позитивна тенденція на графіку свідчить про успішність навчання та покращення алгоритму Q-learning. Графік TD-помилки (Рис.2.В) відо- бражає помилку часової різниці в процесі навчання. Спочатку помилка була висо- кою, що очікувано, оскільки агент тільки починав вивчати навколишнє середовище. Із часом значення помилки зменшувалося, що свідчить про покращення прогнозів агента щодо майбутніх винагород і стабі- лізацію процесу навчання. 8. Висновки Запропоновано новий підхід до по- будови композиції вебсервісів, в якому си- стема автоматично генерує можливі марш- рути без необхідності попередньо задавати повну інформацію про простір станів і оп- тимізує їх на основі параметрів QoS. Оп- тимізація процесу навчання здійснюється шляхом видалення з розгляду неперспек- тивних станів та обмеження повторних дій в межах поточного епізоду, що значно зменшує кількість обчислень та прискорює збіжність алгоритму. Якщо певний стан не 92 Семантік Веб та лінгвістичні системи - має можливих переходів, то епізод завер- шується зі штрафом, що запобігає неефек- тивним обчисленням у нерелевантних на- прямках. Це дозволяє швидше адаптувати- ся до змін і динамічно коригувати страте- гію вибору сервісів, мінімізуючи час на дослідження та покращуючи ефективність у реальних умовах. Запропоновано засоби запобігання зациклюванню, яке може ви- никати на великих об’ємах даних. Надалі для прискорення пошуку оптимальних сервісів рекомендується до- дати використання евристик для відбору сервісів, алгоритми прискореного навчан- ня та ефективні методи балансу між дослі- дженням і експлуатацією, а для адаптації до динамічних змін QoS-параметрів – он- лайн-навчання, відстеження змін у середо- вищі та регулярне оновлення стратегії на основі адаптивних алгоритмів. Крім того, для вирішення проблем, пов'язаних з дов- готривалим пошуком оптимальних серві- сів та динамічними змінами параметрів QoS, доцільно застосувати кілька різних стратегій і методів, які дозволять покра- щувати ефективність навчання та адапта- цію агента до змін середовища в реально- му часі. Ці рішення допоможуть підвищи- ти ефективність запропонованого методу. Отож, запропоновано новий підхід до вирішення задачі автоматизації проце- су композиції вебсервісів із динамічними характеристиками. Можливі подальші дослідження стосуються підвищення ефективності: покращення швидкості на- вчання агента, підвищення стабільності роботи, оптимізації таблиці станів і дос- лідження інших методів навчання з підк- ріпленням, таких як SARSA та глибокі нейронні мережі. References 1. Berners-Lee T., Web Services, Program Integration across Application and Organization boundaries, W3C, https://www.w3.org/DesignIssues/WebServic es.html 2. Web Services Activity Statement, W3C, https://www.w3.org/2002/ws/Activity 3. Kashyap V., Bussler C., Moran M., Web Service Composition. The Semantic Web: Se- mantics for Data and Services on the Web. In: The Semantic Web. Data-Centric Systems and Applications. Springer, Berlin, Heidelberg. 2008, pp.233-248 https://doi.org/10.1007/978- 3-540-76452-6_10. 4. Samuel A., Some studies in machine learning using the game of checkers. IBM Journal of research and development, 1959, 3(3), pp.210-229. 5. Mitchell T., Machine learning. New York: McGraw-hill. 1997, Vol. 1, No. 9 http://www.pachecoj.com/courses/csc380_fall 21/lectures/mlintro.pdf. 6. Barto A., Sutton R., Reinforcement Learning: An Introduction, The MIT Press: Cam-bridge, Massauchsetts, 2018. https://web.stanford.edu/class/psych209/Readi ngs/SuttonBartoIPRLBook2ndEd.pdf. 7. Jang B., Kim M., Harerimana G., Kim J.W., Q-learning algorithms: A comprehen-sive classi-fication and applications. IEEE access, 2019. 8. Lemos A.L., Daniel F., Benatallah B., Web service composition: a survey of techniques and tools. ACM Computing Surveys (CSUR), 2015, 48(3), 1-41. 9. Uc-Cetina V., Moo-Mena F., Hernandez- Ucan R., Composition of web services using Mar-kov decision processes and dynamic pro- gramming. The Scientific World Journal, 2015 (1). 10. Kalasapur S., Kumar M., Shirazi B.A., Dynamic service composition in pervasive com-puting. IEEE Transactions on parallel and dis-tributed systems, 2007, 18(7), pp.907- 918. 11. Gryshanova I., Rogushyna J., Technology of machine learning use for composite web ser- vice development. Problems in Programming, 2024, 4, pp.34-43. (in Ukrainian) 12. The OpenAPI Specification, https://swagger.io/specification/. 13. Rogushina J., Gladun A., Anishchenko O., Pryima S., Semantic Support of Personal Learning Trajectory Development, in: UkrPROG 2024, CEUR Vol-3806, 2024, pp.487-505. 14. Politis D., Tsalighopoulos M., Kyriafinis G., Designing Blended Learning Strategies for Rich Content, Handbook of Research on Building, Growing, and Sustaining Quality E- Learning Pro-grams, 2017. DOI: 10.4018/978-1-5225-0877-9.ch017. 15. Rogushina J., Gladun A., Anishchenko O., Pryima S., Semantic analysis of learning objects: thesaurus approach for digital transformation of educational resources, 93 Семантік Веб та лінгвістичні системи CEUR Workshop Proceed-ings (2024), CEUR, Vol-3771, 85–99. ceur- ws.org/Vol-3771/paper13.pdf Одержано: 05.02.25 Внутрішня рецензія отримана: 03.03.25 Зовнішня рецензія отримана: 07.03.25 Про авторів: Гришанова Ірина Юріївна, науковий співробітник. ORCID http://orcid.org/0000-0003-4999-6294. Рогушина Юлія Віталіївна, кандидат фізико-математичних наук, доцент, старший науковий співробітник. ORCID http://orcid.org/0000-0001-7958-2557. Місце роботи авторів: Інститут програмних систем НАН України, тел. (+38) 066 5501999, e-mail: ladamandraka2010@gmail.com,
id pp_isofts_kiev_ua-article-767
institution Problems in programming
keywords_txt_mv keywords
language Ukrainian
last_indexed 2025-09-17T09:21:03Z
publishDate 2025
publisher PROBLEMS IN PROGRAMMING
record_format ojs
resource_txt_mv ppisoftskievua/19/b47b523c94a19e1c34c40ae7fefb4919.pdf
spelling pp_isofts_kiev_ua-article-7672025-09-02T15:46:41Z Flow constructing and optimizing method for composite web service based on Q-learning Метод побудови та оптимізації маршруту для композитного веб-сервісу на основі Q-learning Grishanova, I.Yu. Rogushina, J.V. web service; composition of services; flow; machine learning UDC 004.8, 005.94 вебсервіс; композиція сервісів; маршрут; машинне навчання УДК 004.8, 005.94 We propose a method of automated flow generation for the web services composition according to the de fined target state based on reinforcement machine learning. An agent that uses Q-learning gradually accu mulates knowledge about the environment to updates the evaluations of the usefulness of its actions (these actions correspond to the existing services). The task is divided into two subtasks: - construction of possible flows represented as sequences of services where the results of the previous service execution change the current environment state and enable the exe cution of the next service; - choice of the optimal flow according to the history of interactions and to QoS criteria that is adapted to environment changes. We determine the main components of reinforcement learning and analyze their specifics for service com position task. Additional approaches that allow avoiding looping and the use of unnecessary services are considered. We propose modification of the Q-learning method developed for automatic generation of flows based on input and output data of web services and for selecting the optimal flow based on the analysis of their qualitative characteristics. This modified method uses approach with memory where the agent expands its knowledge about the environment at each step. We consider characteristics of proposed method based on analysis of its software implementation. Possibilities of proposed method are considered on example of generation an optimal study sequences used for individual educational trajectories in accordance with the personal needs of students. Every learning ob ject (information object used for educational needs described by metadata) is considered as a specific ser vice where inputs and outputs are represented by required and result competencies.Problems in programming 2025; 1: 82-93 Запропоновано метод автоматизованої генерації маршруту для композиції вебсервісів відповідно до поставленої цілі з використанням методів машинного навчання з підкріпленням (reinforcement learning). Агент, використовуючи Q-learning, поступово накопичує знання про середовище та онов лює оцінку корисності своїх дій, яким відповідають наявні сервіси. Задача поділяється на дві підзадачі: побудову можливих маршрутів – таких послідовностей сервісів, що результати виконання попереднього сервісу змінюють середовище, уможливлюючи виконання наступного; та вибір оптимального маршруту відповідно до критеріїв QoS, що адаптується до змін самого середовища. Визначено основні складові навчання з підкріпленням, розглянуто їхню специфіку для аналізу серві сів. Розглянуто додаткові підходи, які дозволяють уникнути зациклення та використання непотріб них сервісів. Запропоновано модифікацію методу Q-learning для автоматичної генерації маршрутів на основі вхідних і вихідних даних вебсервісів і для вибору оптимального маршруту на основі аналі зу їхніх якісних характеристик з використанням підходу з пам’яттю, де агент із кожним кроком роз ширює свої знання про середовище. Запропоновано програмну реалізацію розробленого методу, яка дозволяє оцінити його властивості. Розглянуто можливості запропонованого методу на прикладі генерації оптимальних послідовностей вивчення матеріалів для індивідуальних освітніх траєкторій відповідно до особистих потреб студен тів. Кожен навчальний об’єкт (інформаційний об’єкт, що використовується для освітніх потреб та описаний метаданими) розглядається як окремий сервіс, де входи та виходи представлені необхідни ми та результуючими компетенціями.Problems in programming 2025; 1: 82-93  PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2025-08-27 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/767 10.15407/pp2025.01.082 PROBLEMS IN PROGRAMMING; No 1 (2025); 82-93 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 1 (2025); 82-93 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 1 (2025); 82-93 1727-4907 10.15407/pp2025.01 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/767/819 Copyright (c) 2025 PROBLEMS IN PROGRAMMING
spellingShingle web service
composition of services
flow
machine learning
UDC 004.8
005.94
Grishanova, I.Yu.
Rogushina, J.V.
Flow constructing and optimizing method for composite web service based on Q-learning
title Flow constructing and optimizing method for composite web service based on Q-learning
title_alt Метод побудови та оптимізації маршруту для композитного веб-сервісу на основі Q-learning
title_full Flow constructing and optimizing method for composite web service based on Q-learning
title_fullStr Flow constructing and optimizing method for composite web service based on Q-learning
title_full_unstemmed Flow constructing and optimizing method for composite web service based on Q-learning
title_short Flow constructing and optimizing method for composite web service based on Q-learning
title_sort flow constructing and optimizing method for composite web service based on q-learning
topic web service
composition of services
flow
machine learning
UDC 004.8
005.94
topic_facet web service
composition of services
flow
machine learning
UDC 004.8
005.94
вебсервіс
композиція сервісів
маршрут
машинне навчання
УДК 004.8
005.94
url https://pp.isofts.kiev.ua/index.php/ojs1/article/view/767
work_keys_str_mv AT grishanovaiyu flowconstructingandoptimizingmethodforcompositewebservicebasedonqlearning
AT rogushinajv flowconstructingandoptimizingmethodforcompositewebservicebasedonqlearning
AT grishanovaiyu metodpobudovitaoptimízacíímaršrutudlâkompozitnogovebservísunaosnovíqlearning
AT rogushinajv metodpobudovitaoptimízacíímaršrutudlâkompozitnogovebservísunaosnovíqlearning