The MO-DAGAME approach uses multiobjective evolutionary algorithms (MOEAs) to generate, at runtime, optimum configurations of Dynamic Software Product Lines (DSPLs) for mobile devices.
Deploying invalid configurations of the application is not appropriate for a reconfiguration service. Therefore, the algorithms should only generate valid configurations (i.e. configurations that satisfy all the constraints).
We have implemented a fix operator, which has been applied in existing MOEAs. This operator repairs invalid configurations, obtaining as a result a valid configuration. Therefore, it ensures that these algorithms only generate valid configurations.
We have evaluated our approach in desktop computers and Android devices, applying it to different SPLs which vary in size and complexity, including DSPLs for mobile devices and randomly-generated feature models.
We have used MOEAs available as part of the jMetal framework, and all the code used in the evaluation is available for download under the GNU GPLv3 license.