Dynamic algorithm selection aims to exploit the complementarity of multiple optimization algorithms by switching between them during the search. While these kinds of dynamic algorithms have been shown to have potential to outperform their component algorithms, it is still unclear how this potential can best be realized. One promising approach is to make use of landscape features to enable a per-run trajectory-based switch. Here, the samples seen by the first algorithm are used to create a set of features which describe the landscape from the perspective of the algorithm. These features are then used to predict what algorithm to switch to. In this work, we extend this per-run trajectory-based approach to consider a wide variety of potential points at which to perform the switch. We show that using a sliding window to capture the local landscape features contains information which can be used to predict whether a switch at that point would be beneficial to future performance. By analyzing the resulting models, we identify what features are most important to these predictions. Finally, by evaluating the importance of features and comparing these values between multiple algorithms, we show clear differences in the way the second algorithm interacts with the local landscape features found before the switch.
翻译:动态算法选择旨在通过搜索过程中在多个优化算法之间进行切换,利用它们的互补性。尽管此类动态算法已被证明有潜力优于其组成算法,但如何最佳地实现这一潜力仍不明确。一种有前景的方法是利用景观特征来实现基于运行轨迹的逐次切换。在此方法中,首个算法观察到的样本被用于生成一组描述算法视角下景观的特征,随后这些特征被用于预测应切换至何种算法。在本研究中,我们扩展了这种基于运行轨迹的逐次方法,考虑了多种潜在的切换时间点。我们证明,使用滑动窗口捕获局部景观特征所包含的信息,可用于预测在该点进行切换是否有利于未来性能。通过分析所得模型,我们识别出对这些预测最重要的特征。最后,通过评估特征重要性并比较多个算法之间的这些数值,我们展示了第二种算法与切换前局部景观特征之间显著的交互差异。