When configuring a software product line, finding a good trade-off between multiple orthogonal quality concerns is a challenging multi-objective optimisation problem. State-of-the-art solutions based on search-based techniques create invalid configurations in intermediate steps, requiring additional repair actions that reduce the efficiency of the search. In this work, we introduce consistency-preserving configuration operators (CPCOs)--genetic operators that maintain valid configurations throughout the entire search. CPCOs bundle coherent sets of changes: the activation or deactivation of a particular feature together with other (de)activations that are needed to preserve validity. In our evaluation, our instantiation of the IBEA algorithm with CPCOs outperforms two state-of-the-art tools for optimal product line configuration in terms of both speed and solution quality. The improvements are especially pronounced in large product lines with thousands of features.
翻译:当配置软件产品线时,在多个正统质量关切之间找到一个良好的平衡点是一个具有挑战性的多目标优化问题。基于基于搜索技术的最先进的解决方案在中间步骤中创造了无效配置,需要额外的修理行动来降低搜索效率。在这项工作中,我们引入了在整个搜索过程中保持有效配置的一致保存配置操作员(CPCOs)-基因操作员。CPCOs将一系列连贯的改变捆绑在一起:特定特性的激活或停用,以及保持有效性所需的其他(de)功能。在我们的评估中,我们对IBEA算法的即时化与CPCOs对最佳产品线配置的两种最先进的工具在速度和溶液质量上均优。这些改进在具有数千个特性的大型产品线上尤为明显。