علوم رایانشی

علوم رایانشی

یادگیری تقویتی برای تطبیق خودکار عناصر در تبدیل مدل: کاهش پیچیدگی و افزایش مقیاس‌پذیری

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

نویسندگان
1 دانش‌آموخته، دانشکده مهندسی، گروه مهندسی کامپیوتر، دانشگاه شهرکرد، شهرکرد، ایران
2 استادیار، دانشکده مهندسی، گروه مهندسی کامپیوتر، دانشگاه شهرکرد، شهرکرد، ایران
3 دانشیار، دانشکده مهندسی، گروه مهندسی کامپیوتر، دانشگاه شهرکرد، شهرکرد، ایران
10.22034/csj.2025.233054
چکیده
این مقاله یک رویکرد نوین مبتنی بر یادگیری تقویتی را برای تطبیق خودکار عناصر بین مدل‌های مبدا و مقصد در فرایند تبدیل مدل‌ها ارائه می‌دهد. این الگوریتم که با نام کیوموتور شناخته می‌شود، با استفاده از جداول پاداش، نگاشت‌های بهینه بین عناصر مدل‌ها را یاد می‌گیرد. در روش پیشنهادی، یک جفت مدل نمونه شامل مدل مبدا و مدل مقصد به‌همراه فرامدل‌های آن‌ها، به الگوریتم کیوموتور داده می‌شود. این الگوریتم سعی می‌کند در طول فرایند یادگیری یک مدل میانی مبتنی بر فرامدل مقصد از روی عناصر مدل مبدا ایجاد کند و این مدل میانی را با مدل مقصد مربوط به نمونه ورودی مقایسه کرده و جدول پاداش مبتنی بر شباهت ساختاری را به‌روز می‌کند. الگوریتم یادگیری تقویتی کیوموتور نیاز به یادگیری زبان‌های تبدیل پیچیده (مانند ATL و ETL) را حذف کرده و تنها با یک جفت نمونه اولیه، قادر به تعمیم قوانین تبدیل به نمونه‌های مشابه است. این ویژگی نه‌تنها پیچیدگی فرایند تبدیل را کاهش می‌دهد و استفاده برای کاربران غیرمتخصص را تسهیل می‌کند، بلکه امکان پردازش مدل‌های بسیار بزرگ (با بیش از 000/600 عنصر) را نیز فراهم می‌سازد. نتایج ارزیابی نشان‌دهندة برتری این الگوریتم نسبت به روش‌های مرسوم در زمان اجرای کوتاه‌تر و مقیاس‌پذیری بالاتر است. در ادامه، پیشنهادهایی برای توسعه آینده شامل افزایش دقت از طریق ادغام یادگیری عمیق، بهبود شناسایی الگوهای پیچیده‌تر و طراحی سیستم ارزیابی خودکار کیفیت تبدیل ارائه شده است. این رویکرد می‌تواند به‌عنوان پایه‌ای برای پژوهش‌های آینده در زمینه خودکارسازی فرایندهای مدل‌سازی مورد استفاده قرار گیرد.
کلیدواژه‌ها
موضوعات

[1]   Sharbaf, M., Zamani, B. & Sunyé, G. 2022."Automatic resolution of model merging conflicts using quality-based reinforcement learning," Journal of Computer Languages, Vol. 71, p. 101123.
[2]   Batot E. R. & Sahraoui, H. 2022. "Promoting social diversity for the automated learning of complex MDE artifacts," Software and Systems Modeling, Vol. 21, No. 3, pp. 1159-1178, doi: 10.1007/s10270-021-00969-9.
[3]   Akdur, D., Garousi, V. & Demirörs, O. 2018. "A survey on modeling and model-driven engineering practices in the embedded software industry," Journal of Systems Architecture, Vol. 91, pp. 62-82.
[4]   Höppner, S., Kehrer, T. & Tichy, M. 2021. "Contrasting dedicated model transformation languages versus general purpose languages: a historical perspective on ATL versus Java based on complexity and size," Software and Systems Modeling, Vol. 21, No. 2, pp. 805-837, doi: 10.1007/s10270-021-00937-3.
[5]   Rouhi, A., Kolahdouz Rahimi, S. & Lano, K. 2022. "Formalizing model transformation patterns," Journal of Software: Evolution and Process, Vol. 34, No. 2, p. e2406.
[6]   Jilani, A. A., Khan, M. U., Iqbal, M. Z. & Usman, M. 2022. "An automated searchbased test model generation approach for structural testing of model transformations," Journal of Software: Evolution and Process, Vol. 34, No. 11, p. e2461, 2022.
[7]   Weidmann, N., Yigitbas, E., Anjorin, A., Srivastava, A. & Jose, J. 2022. "Human-in-the-Loop Large-Scale Model Transformations with the VICToRy Debugger," J. Object Technol., Vol. 21, No. 3, pp. 3:1-15.
[8]   Höppner, S., Haas, Y., Tichy, M. & Juhnke, K. 2022. "Advantages and disadvantages of (dedicated) model transformation languages: A qualitative interview study," Empirical Software Engineering, Vol. 27, No. 6, p. 159.
[9]     Jouault, F., Allilaire, F., Bézivin, J. & Kurtev, I. 2008. "ATL: A model transformation tool," Science of computer programming, Vol. 72, No. 1-2, pp. 31-39.
[10]   Eisenberg, M., Pichler, H.-P., Garmendia, A. & Wimmer, M. 2021. "Towards reinforcement learning for in-place model transformations," in 2021 ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS), IEEE, pp. 82-88.
[11]   Kolovos, D. S., Paige, R. F. & Polack, F. A. 2008."The epsilon transformation language," in Theory and Practice of Model Transformations: First International Conference, ICMT 2008, Zürich, Switzerland, July 1-2, 2008 Proceedings 1, 2008: Springer, pp. 46-60.
[12]   Lano K. & Xue, Q. 2022. "Code Generation by Example," in MODELSWARD, pp. 84-92.
[13]   Lano, K., Kolahdouz-Rahimi, S. & Fang, S. 2021. "Model transformation development using automated requirements analysis, metamodel matching, and transformation by example," ACM Transactions on Software Engineering and Methodology (TOSEM), Vol. 31, No. 2, pp. 1-71.
[14]   Eisenberg, M.& Wimmer, M. 2024. "From single-objective to multi-objective reinforcement learning-based model transformation," Software and Systems Modeling, pp. 1-31.
[15]   Burgueno, L., Cabot, J., Li, S. & Gérard, S. 2022. "A generic LSTM neural network architecture to infer heterogeneous model transformations," Software and Systems Modeling, Vol. 21, No. 1, pp. 139-15.
[16]   Nikbakht-Nasrabadi, D., Samimi-Dehkordi, L. & Basiri, M. 2025. "A Preliminary Investigation into Automated Model Transformation Using Q-Learning: A Case Study," presented at the 29th International Conference of the Computer Society of Iran (CSICC 2025), Sharif University of Technology, Tehran.
[17]   Samimi-Dehkordi, L., Zamani, B. & Kolahdouz-Rahimi, S. 2018."EVL+ Strace: a novel bidirectional model transformation approach," Information and Software Technology, Vol. 100, pp. 47-72.
[18]   Westfechtel, B. 2018. "Case-based exploration of bidirectional transformations in QVT relations," Software & Systems Modeling, Vol. 17, pp. 989-1029.
[19]   Willink, E. D. 2003."A concrete UML-based graphical transformation syntax: The UML to RDBMS example in UMLX," Metamodelling for MDA, p. 129.