Although automated test generation is common in many programming domains, games still challenge test generators due to their heavy randomisation and hard-to-reach program states. Neuroevolution combined with search-based software testing principles has been shown to be a promising approach for testing games, but the co-evolutionary search for optimal network topologies and weights involves unreasonably long search durations. In this paper, we aim to improve the evolutionary search for game input generators by integrating knowledge about human gameplay behaviour. To this end, we propose a novel way of systematically recording human gameplay traces, and integrating these traces into the evolutionary search for networks using traditional gradient descent as a mutation operator. Experiments conducted on eight diverse Scratch games demonstrate that the proposed approach reduces the required search time from five hours down to only 52 minutes.
翻译:尽管自动测试生成在许多编程领域已很常见,但游戏因其高度随机性和难以达到的程序状态仍对测试生成器构成挑战。神经进化与基于搜索的软件测试原理相结合已被证明是测试游戏的有效方法,但为最优网络拓扑和权重进行的协同进化搜索涉及不切实际的长搜索时间。本文通过整合人类游戏行为知识,旨在改进游戏输入生成器的进化搜索。为此,我们提出了一种系统记录人类游戏轨迹的新方法,并将这些轨迹作为突变算子通过传统梯度下降方法整合到网络的进化搜索中。在八个不同的Scratch游戏上进行的实验表明,该方法将所需搜索时间从五小时缩短至仅52分钟。