اکتشاف و پردازش هوشمند دانش

اکتشاف و پردازش هوشمند دانش

توسعه منطق خودتطبیقی سیستم های خودتطبیق به کمک یادگیری تقویتی عمیق

نوع مقاله : مقاله پژوهشی

نویسنده
عضو هیات علمی گروه کامپیوتر دانشگاه آزاد اسلامی واحد بیرجند
چکیده
یک سیستم خودتطبیق می‌تواند ساختار و رفتار خود را در زمان اجرا، بر اساس درکش از محیط و از خودش و نیازمندی‌هایش، اصلاح کند. یکی از عناصر کلیدی در توسعه این سیستم‌ها، منطق خودتطبیقی آن است که زمان و نحوه تطبیق سیستم را رمزگذاری می‌کند. هنگام توسعه منطق تطبیق، مهندسان با چالش عدم قطعیت زمان طراحی مواجه‌اند. برای تعریف زمان تطبیق سیستم، باید تمام حالات محیطی بالقوه را پیش بینی کنند. پیش بینی تمام تغییرات محیطی بالقوه اغلب به دلیل اطلاعات ناقص در زمان طراحی، غیرممکن است. یادگیری تقویتی برخط، با یادگیری اثربخشی عملیات تطبیق، از طریق تعامل سیستم با محیط در زمان اجرا، مشکل عدم قطعیت زمان طراحی را برطرف، و توسعه منطق خودتطبیقی را بطور خودکار درمی‌آورد. عناصر یادگیری تقویتی، در حلقه MAPE-K سیستم‌های خودتطبیق ادغام می‌شود.
روشهای یادگیری تقویتی برخط موجود در سیستم‌های خودتطبیق، دانش آموخته شده را در قالب تابع ارزش نمایش می-دهند و دو نقص دارند که درجه خودکارسازی و توسعه را محدود می‌کند: 1- نیازمند تنظیم دقیق نرخ اکتشاف بصورت دستی هستند 2- برای تقویت توسعه‌پذیری، ممکن است نیاز به کمی سازی حالت های محیط به صورت دستی باشد. در این مقاله برای خودکارسازی فعالیت‌های فوق‌ از یادگیری تقویتی عمیق، استفاده شد. در این یادگیری، دانش در قالب یک شبکه عصبی، در وزن‌های شبکه عصبی پنهان است. نتایج آزمایشات از سرعت همگرایی بالای یادگیری حکایت دارد.
کلیدواژه‌ها

1.      Amoui, M., Salehie, M., Mirarab, S., & Tahvildari, L. (2008, March). Adaptive action selection in autonomic software using reinforcement learning. In Fourth International Conference on Autonomic and Autonomous Systems (ICAS'08) (pp. 175-181). IEEE.
2.      Arabnejad, H., Pahl, C., Jamshidi, P., & Estrada, G. (2017, May). A comparison of reinforcement learning techniques for fuzzy cloud auto-scaling. In 2017 17th IEEE/ACM international symposium on cluster, cloud and grid computing (CCGRID) (pp. 64-73). IEEE.
3.      Aschoff, R., & Zisman, A. (2011). QoS-driven proactive adaptation of service composition. In Service-Oriented Computing: 9th International Conference, ICSOC 2011, Paphos, Cyprus, December 5-8, 2011 Proceedings 9 (pp. 421-435). Springer Berlin Heidelberg.
4.      Barrett, E., Howley, E., & Duggan, J. (2013). Applying reinforcement learning towards automating resource allocation and application scalability in the cloud. Concurrency and computation: practice and experience25(12), 1656-1674.
5.      Bu, X., Rao, J., & Xu, C. Z. (2012). Coordinated self-configuration of virtual machines and appliances using a model-free learning approach. IEEE transactions on parallel and distributed systems24(4), 681-690.
6.      Caporuscio, M., D’Angelo, M., Grassi, V., & Mirandola, R. (2016). Reinforcement learning techniques for decentralized self-adaptive service assembly. In Service-Oriented and Cloud Computing: 5th IFIP WG 2.14 European Conference, ESOCC 2016, Vienna, Austria, September 5-7, 2016, Proceedings 5 (pp. 53-68). Springer International Publishing.
7.      Chen, T., & Bahsoon, R. (2016). Self-adaptive and online qos modeling for cloud-based software services. IEEE Transactions on Software Engineering43(5), 453-475.
8.      D'Ippolito, N., Braberman, V., Kramer, J., Magee, J., Sykes, D., & Uchitel, S. (2014, May). Hope for the best, prepare for the worst: multi-tier control for adaptive systems. In Proceedings of the 36th International Conference on Software Engineering (pp. 688-699).
9.      Dulac-Arnold, G., Evans, R., van Hasselt, H., Sunehag, P., Lillicrap, T., Hunt, J., ... & Coppin, B. (2015). Deep reinforcement learning in large discrete action spaces. arXiv preprint arXiv:1512.07679.
10.  Dutreilh, X., Kirgizov, S., Melekhova, O., Malenfant, J., Rivierre, N., & Truck, I. (2011, May). Using reinforcement learning for autonomic resource allocation in clouds: towards a fully automated workflow. In ICAS 2011, The Seventh International Conference on Autonomic and Autonomous Systems (pp. 67-74).
11.  Filho, R. R., & Porter, B. (2017). Defining emergent software using continuous self-assembly, perception, and learning. ACM Transactions on Autonomous and Adaptive Systems (TAAS)12(3), 1-25.
12.  Jamshidi, P., Cámara, J., Schmerl, B., Käestner, C., & Garlan, D. (2019, May). Machine learning meets quantitative planning: Enabling self-adaptation in autonomous robots. In 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS) (pp. 39-50). IEEE.
13.  Gheibi, O., Weyns, D., & Quin, F. (2021). Applying machine learning in self-adaptive systems: A systematic literature review. ACM Transactions on Autonomous and Adaptive Systems (TAAS)15(3), 1-37.
14.  Kephart, J. O., & Chess, D. M. (2003). The vision of autonomic computing. Computer36(1), 41-50.
15.  Klein, C., Maggio, M., Årzén, K. E., & Hernández-Rodriguez, F. (2014, May). Brownout: Building more robust cloud applications. In Proceedings of the 36th International Conference on Software Engineering (pp. 700-711).
16.  De Lemos, R., Giese, H., Müller, H. A., Shaw, M., Andersson, J., Litoiu, M., ... & Wuttke, J. (2013). Software engineering for self-adaptive systems: A second research roadmap. In Software Engineering for Self-Adaptive Systems II: International Seminar, Dagstuhl Castle, Germany, October 24-29, 2010 Revised Selected and Invited Papers (pp. 1-32). Springer Berlin Heidelberg.
17.  Lorido-Botran, T., Miguel-Alonso, J., & Lozano, J. A. (2014). A review of auto-scaling techniques for elastic applications in cloud environments. Journal of grid computing12, 559-592.
18.  Mann, Z. Á. (2017). Resource optimization across the cloud stack. IEEE Transactions on Parallel and Distributed Systems29(1), 169-182.
19.  Moustafa, A., & Zhang, M. (2014, June). Learning efficient compositions for QoS-aware service provisioning. In 2014 IEEE International Conference on Web Services (pp. 185-192). IEEE.
20.  Nachum, O., Norouzi, M., Xu, K., & Schuurmans, D. (2017). Bridging the gap between value and policy based reinforcement learning. Advances in neural information processing systems30.
21.  Ramirez, A. J., Jensen, A. C., & Cheng, B. H. (2012, June). A taxonomy of uncertainty for dynamically adaptive systems. In 2012 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS) (pp. 99-108). IEEE.
22.  Salehie, M., & Tahvildari, L. (2009). Self-adaptive software: Landscape and research challenges. ACM transactions on autonomous and adaptive systems (TAAS)4(2), 1-42.
23.  Schulman, J., Wolski, F., Dhariwal, P., Radford, A., & Klimov, O. (2017). Proximal policy optimization algorithms. arXiv preprint arXiv:1707.06347.
24.  Silvander, J. (2019). Business process optimization with reinforcement learning. In Business Modeling and Software Design: 9th International Symposium, BMSD 2019, Lisbon, Portugal, July 1–3, 2019, Proceedings 9 (pp. 203-212). Springer International Publishing.
25.  Sutton, R. S., McAllester, D., Singh, S., & Mansour, Y. (1999). Policy gradient methods for reinforcement learning with function approximation. Advances in neural information processing systems12.
26.  Sutton, R. S., & Barto, A. G. (2018). Reinforcement learning: An introduction. MIT press.
27.  Tesauro, G., Jong, N. K., Das, R., & Bennani, M. N. (2007). On the use of hybrid reinforcement learning for autonomic resource allocation. Cluster Computing10, 287-299.
28.  Iglesia, D. G. D. L., & Weyns, D. (2015). MAPE-K formal templates to rigorously design behaviors for self-adaptive systems. ACM Transactions on Autonomous and Adaptive Systems (TAAS)10(3), 1-31.