ЗАСТОСУВАННЯ МЕТОДІВ І ТЕХНОЛОГІЙ РЕКОМЕНДАЦІЙНИХ СИСТЕМ ДЛЯ КОНФІГУРУВАННЯ ДИНАМІЧНИХ ЛІНІЙОК ПРОГРАМНИХ ПРОДУКТІВ
DOI:
https://doi.org/10.20998/2079-0023.2021.01.15Анотація
У статті проведено аналіз існуючих підходів до вирішення задачі динамічного конфігурування у лінійках програмних продуктів (ЛПП). ЛПП це набір програмних систем, що мають спільні і варіабельні компоненти і використовують набір парадигм і методів до розробки. Завдяки використанню яких надаються можливості налаштовувати програмні рішення відповідно до потреб кінцевих користувачів. Було показано, що для вирішення цієї проблеми доцільно використовувати методи і технології побудови сучасних рекомендаційних систем (РС). Проведено аналіз існуючих підходів і методів побудови РС, були розглянуті такі можливі методи як: кластеризація, марковский процес прийняття рішень, факторизація матриць. В результаті огляду інтелектуальних методів розробки РС та дослідження функціональних можливостей технологій реалізації РС у проектах з відкритим кодом, для подальшого використання саме в задачах конфігурування динамічних ЛПП запропоновано метод N-вимірної контекстно-залежної тензорної факторизації та інструментальна система CARSkit. Розроблені функціональні вимоги та запропонована архітектура прототипу РС, яка уможливлює автоматизацію конфігурування програмних компонентів у системах «Розумний будинок» (РБ), і яка може бути програмно реалізована засобами системи CARSkit та алгоритмами обробки консолідованих даних на мові Python. Ця реалізація дозволяє побудувати процес відстеження змін у зовнішньому середовищі і передавати інформацію в РБ і після аналізу вхідних даних обробляти в РС для відстеження змін у контекстної інформації. Під час подальших досліджень заплановано проведення обчислювальних експериментів з урахуванням специфіки систем «Розумний будинок» і застосування кількісних метрик для оцінки ефективності алгоритмів тензорної авторизації для прогнозування динамічних змін програмних компонентів в цих системах.
Ключові слова: рекомендаційна система, лінійка програмних продуктів, варіабельність, динамічне конфігурування, архітектура
Посилання
Reinhartz-Berger I., Sturm A., Clark T., Cohen S., Bettin J. Domain Engineering: Product Lines, Languages, and Conceptual Models. Heidelberg, Springer, 2013. 420 p.
Metzger A., Pohl K. Software Product Line Engineering and Variability Management: Achievements and Challenges. Proceedings of FOSE’14 Conference, May 31 – June 7, 2014, Hyderabad, India. pp. 70–84.
Eleutério J. A Comparative Study of Dynamic Software Product Line Solutions for Building Self-Adaptive Systems, 2017. 30 p.
Sharifloo A. Learning and Evolution in Dynamic Software Product Lines, 2016. 8 p.
Gamzayev R. O., Karaçuha E., Tkachuk M. V. et al. An Approach to Assessment of Dynamic Software Variability in Mobile Applications Development. Visnyk Kharkivs'koho natsional'noho universytetu imeni V.N. Karazina, Seriya «Matematychne modelyuvannya. Informatsiyni tekhnolohiyi. Avtomatyzovani systemy upravlinnya». 2018, no 40, pp. 14–25.
Sohail S., Siddiqui J., Ali R. Classifications of Recommender Systems: A Review // Journal of Engineering Science and Technology Review. 2017, vol.10(4), pp.132–153.
Xiaoyuan Su, Taghi M. Khoshgoftaar. A Survey of Collaborative Filtering Techniques. Advances in Artificial Intelligence, Volume 2009, January 2009. 4 p.
Lytvyn V., Vysotska V., Shatskykh V. et al. Design of A Recommendation System Based on Collaborative Filtering and Machine Learning Considering Personal Needs of The User. EasternEuropean Journal of Enterprise Technologies. 2019, vol. 4/2 (100), pp. 6–28.
Bargesyan A. A., Kupriyanov M. S. Metody i modeli analiza dannykh OLAP i Data Mining. SPb, BKhV-Peterburg, 2004. 331 p.
Shani, G., Heckerman, D., Brafman, R. An MDP-Based Recommender System. Journal of Machine Learning Research, 2005, vol. 6, pp. 1265–1295.
Symeonidis, P., Zioupos, A. Matrix and Tensor Factorization Techniques for Recommender Systems. SpringerBriefs in Computer Science, 2016. 102 p.
Pereira J. et al. N-dimensional Tensor Factorization for SelfConfiguration of Software Product Lines at Runtime Gothenburg. SPLC '18: Proceedings of the 22nd International Systems and Software Product Line Conference. 2018, vol. 1, pp. 87–97.
Racoon Recommendation Engine Github [Електронний ресурс]. URL:https://github.com/guymorita/recommendationRaccoon#recom mendationraccoon-raccoon (дата звернення: 12.06.2021).
Michael D. Ekstrand. LensKit for Python. Dept. of Computer Science, Boise State University. Idaho, USA, September 3, 2020.
Surprise documentation URL:https://surprise.readthedocs.io/en/stable/index.html (accessed 01.05.2021).
Zheng, Y., Mobasher, B. CARSKit: A Java-Based Context-aware Recommendation Engine. Proceedings of the 15th IEEE International Conference on Data Mining, NJ, USA, 2015.
Hamzayev R. O., Tkachuk M. V., Tovstokorenko O.T. Zastosuvannya metodiv domennoho modelyuvannya dlya pidtrymky variabel'nosti prohramnoho zabezpechennya v rozrobtsi system «Rozumnyy budynok». Informatsiyni systemy ta tekhnolohiyi: Materialy statey 9--yi Mizhnarodnoyi nauk.-tekhn. konferentsiyi, Kharkiv, 17–20 lystopada 2020 roku. Kharkiv, KhNURE Publ., 2020, pp. 217–220.
Python documentation URL: https://www.python.org/about/ (accessed 01.05.2021).
##submission.downloads##
Опубліковано
Як цитувати
Номер
Розділ
Ліцензія
ЛіцензіяАвтори, які публікуються у цьому журналі, погоджуються з наступними умовами:
- Автори залишають за собою право на авторство своєї роботи та передають журналу право першої публікації цієї роботи на умовах ліцензії Creative Commons Attribution License, котра дозволяє іншим особам вільно розповсюджувати опубліковану роботу з обов'язковим посиланням на авторів оригінальної роботи та першу публікацію роботи у цьому журналі.
- Автори мають право укладати самостійні додаткові угоди щодо неексклюзивного розповсюдження роботи у тому вигляді, в якому вона була опублікована цим журналом (наприклад, розміщувати роботу в електронному сховищі установи або публікувати у складі монографії), за умови збереження посилання на першу публікацію роботи у цьому журналі.
- Політика журналу дозволяє і заохочує розміщення авторами в мережі Інтернет (наприклад, у сховищах установ або на особистих веб-сайтах) рукопису роботи, як до подання цього рукопису до редакції, так і під час його редакційного опрацювання, оскільки це сприяє виникненню продуктивної наукової дискусії та позитивно позначається на оперативності та динаміці цитування опублікованої роботи (див. The Effect of Open Access).