PARMOREL: Personalized and automatic repair of models using reinforcement learning
Doctoral thesis
Accepted version
Permanent lenke
https://hdl.handle.net/11250/2826748Utgivelsesdato
2021Metadata
Vis full innførselSamlinger
Originalversjon
Barriga Rodríguez, A. (2021). PARMOREL: Personalized and automatic repair of models using reinforcement learning [Doctoral dissertation]. Western Norway University of Applied Sciences.Sammendrag
In model-driven software engineering, models are used in all phases of the development process. These models must hold a high quality since the implementation of the systems they represent relies on them. Models may get broken due to various editions throughout their life-cycle, and preserving their quality is crucial. Several existing tools reduce the burden of manually dealing with issues that affect models’ quality, such as syntax errors, model smells, and inadequate structures. However, the same issues might not have the same solutions in all contexts due to different user preferences and business policies. Personalization would enhance the usability of automatic repairs in different contexts while reusing the experience from previous repairs would avoid duplicated calculations when facing similar issues. In addition, the variety of model types together with the variety of potential issues require model repair tools and approaches which are flexible, extendible, and customizable. To this end, this thesis will focus on investigating the application of machine learning (ML) for repairing models. Our aim is to build a model repair approach that (i) provides automatic model repair, (ii) allows for user personalization, and (iii) may be extended to support the repair of different types of models which possess different kinds of issues. As a result, this thesis contains theoretical and practical contributions regarding the application of ML in model repair and the design of a personalizable and extensible model repair framework. Applying ML in model repair is not a straightforward process, as most ML algorithms require a large amount of labeled data which is still unavailable in the modeling field. Hence, we propose the use of reinforcement learning (RL) algorithms, which can learn to solve a problem by directly interacting with it, without needing to train on labeled data. To improve the performance by reusing experience from previous repairs, we also implement a transfer learning (TL) approach. In order to provide personalizable and extensible model repair, we have designed a modular framework: PARMOREL, wherewe integrate our RL and TL implementations. In PARMOREL, users can specify their repair settings before or after the repair and change the repair result by giving feedback to the framework. We extend and evaluate PARMOREL’s modules through a series of implementations. The results show that we achieve automatic and personalized model repair and that PARMOREL supports different configurations of types of models, issues, actions, preferences, and learning algorithms.
Beskrivelse
Articles III and IV republished with permission of ACM (Association for Computing Machinery), from the Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, 2020; permission conveyed through Copyright Clearance Center,Inc.
Består av
Barriga, A., Rutle, A., & Heldal, R. (2020). Improving model repair through experience sharing. The Journal of Object Technology, 19(2). https://doi.org/10.5381/jot.2020.19.2.a13Iovino, L., Barriga, A., Rutle, A., & Heldal, R. (2020). Model repair with quality-based reinforcement learning. The Journal of Object Technology, 19(2). https://doi.org/10.5381/jot.2020.19.2.a17
Barriga, A., Mandow, L., de la Cruz, J. L. P., Rutle, A., Heldal, R., & Iovino, L. (2020). A comparative study of reinforcement learning techniques to repair models. Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. https://doi.org/10.1145/3417990.3421395
Barriga, A., Heldal, R., Iovino, L., Marthinsen, M., & Rutle, A. (2020). An extensible framework for customizable model repair Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. https://doi.org/10.1145/3365438.3410957
Barriga, A., Bettini, L., Iovino, L., Rutle, A., & Heldal, R. (2021). Addressing the trade off between smells and quality when refactoring class diagrams. The Journal of Object Technology, 20(3). https://doi.org/10.5381/jot.2021.20.3.a1