When: Wednesday, April 17, 2019, 15:00
Where: Library Room, GSSI
Title: Model Repair with Reinforcement Learning
Seminar by Prof. Adrian Rutle, Department of Computing, Mathematics and Physics – Western Norway University of Applied Sciences
Abstract:Model Driven Engineering is an emerging branch of Software Engineering used to handle complex and evolving software systems. The industrial demand is quite high and with the increasing use of Model-Based Development in many domains (e.g., Automotive, Web Applications, Business processes), models are becoming core artifacts of modern software engineering processes. With this, it comes the necessity to keep models free of errors and in case errors happen, to repair them reasonably. This seminar will present our proposed approach to model repair with focus on these three topics:
Model repair methodologyWhen models increase in size and complexity, they tend to become hard to keep free from mistakes.In this seminar, we propose reinforcement learning algorithms as a step forward to achieve repair of broken models allowing both customization of results and automation at the same time. As a proof of concept, we have built a bridge between model repairing and reinforcement learning, designed a system of rewards to support customization of results and implemented a concrete scenario of model repairing. Although we have applied our approach to models defined in the Eclipse Modeling Framework (EMF), the approach is general enough to be extended to other modeling frameworks.We have validated our research by repairing a large set of broken models generated with a mutation tool.
Personalization, customization and transfer learning In the model repairing field there are tools providing automatic repairing of models.Some of them support user personalization, but none stores information from the repairing process.Reusing experience from past repairings would help to avoid duplicated calculations when facing repeated personalization preferences.Our tool PARMOREL, uses reinforcement learning algorithms as a step forward to achieve repair of broken models allowing both personalization of results and automation at the same time. We propose transfer learning as an approach to reuse the experience learned from each execution of PARMOREL.We have built a theoretical approach to support transfer learning in PARMOREL.Also, we have validated our research by repairing a model using different sets of preferences and studying how our tool’s performance evolved when reusing the experience from each repairing.
Using metrics for calibration of rewardsAs part of the seminar, moreover, we present a proposal for integrating quality assurance into PARMOREL.We describe an architecture that would allow PARMOREL to learn to automatically repair models with the highest quality possible.