arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2402.04597cs.AIcs.SE
收藏

CMSA算法求解软件产品线中带优先级的成对测试数据生成问题

CMSA algorithm for solving the prioritized pairwise test data generation problem in software product lines

Universidad de Málaga(马拉加大学);CERN(欧洲核子研究组织)

Javier Ferrer, Francisco Chicano, José Antonio Ortega Toro

AI总结:

针对软件产品线中带优先级的成对测试数据生成问题,提出基于构造、合并、求解与适应的混合元启发式算法CMSA,与四种现有算法比较,在多数实例中显著提升解质量,但耗时更长。

摘要:

在软件产品线(SPLs)中,由于可能存在大量有效的特征组合,测试产品族中的所有产品可能很困难甚至不可能。因此,我们希望找到产品族的一个最小子集,使得能够测试所有可能的组合(成对)。此外,当测试单个产品需要很大工作量时,最好先测试由一组优先级特征组成的产品。这个问题被称为带优先级的成对测试数据生成问题。基于整数线性规划的现有最优算法对于中小规模实例来说速度足够快。然而,由于候选解数量的指数增长,存在一些真实实例规模过大,无法在合理时间内用这些算法计算。此外,这些启发式算法并不总能得到最佳解。在这项工作中,我们提出了一种基于混合元启发式算法——构造、合并、求解与适应(Construct, Merge, Solve & Adapt)的新方法。我们将这种数学启发式算法与四种算法进行比较:基于整数线性规划的混合算法(HILP)、基于整数非线性规划的混合算法(HINLP)、并行优先级遗传求解器(PPGS)以及一种名为优先级-ICPL的贪心算法。分析表明,在大多数实例和大多数加权覆盖率水平下,CMSA在统计上显著地产生更高质量的解决方案,尽管它需要更多的执行时间。

英文摘要:

In Software Product Lines (SPLs) it may be difficult or even impossible to test all the products of the family because of the large number of valid feature combinations that may exist. Thus, we want to find a minimal subset of the product family that allows us to test all these possible combinations (pairwise). Furthermore, when testing a single product is a great effort, it is desirable to first test products composed of a set of priority features. This problem is called Prioritized Pairwise Test Data Generation Problem. State-of-the-art algorithms based on Integer Linear Programming for this problema are faster enough for small and medium instances. However, there exists some real instances that are too large to be computed with these algorithms in a reasonable time because of the exponential growth of the number of candidate solutions. Also, these heuristics not always lead us to the best solutions. In this work we propose a new approach based on a hybrid metaheuristic algorithm called Construct, Merge, Solve & Adapt. We compare this matheuristic with four algorithms: a Hybrid algorithm based on Integer Linear Programming ((HILP), a Hybrid algorithm based on Integer Nonlinear Programming (HINLP), the Parallel Prioritized Genetic Solver (PPGS), and a greedy algorithm called prioritized-ICPL. The analysis reveals that CMSA results in statistically significantly better quality solutions in most instances and for most levels of weighted coverage, although it requires more execution time.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑