Weighted A* (wA*) is a widely used algorithm for rapidly, but suboptimally, solving planning and search problems. The cost of the solution it produces is guaranteed to be at most W times the optimal solution cost, where W is the weight wA* uses in prioritizing open nodes. W is therefore a suboptimality bound for the solution produced by wA*. There is broad consensus that this bound is not very accurate, that the actual suboptimality of wA*'s solution is often much less than W times optimal. However, there is very little published evidence supporting that view, and no existing explanation of why W is a poor bound. This paper fills in these gaps in the literature. We begin with a large-scale experiment demonstrating that, across a wide variety of domains and heuristics for those domains, W is indeed very often far from the true suboptimality of wA*'s solution. We then analytically identify the potential sources of error. Finally, we present a practical method for correcting for two of these sources of error and experimentally show that the correction frequently eliminates much of the error.
翻译:加权A*(wA*)是快速求解规划与搜索问题时广泛使用的次优算法。该算法通过优先队列中节点的权重W进行调控,保证所得解代价不超过最优解的W倍,因此W是wA*解次优性的理论界标。学界普遍认为该界标不够精确,实际次优性往往远低于W倍最优值,但现有文献缺乏支持性实验证据,更无关于W界标失效机理的合理解释。本文填补上述研究空白:首先通过大规模实验证明,在不同领域及其对应启发函数下,W值普遍严重偏离wA*解的真实次优性;随后从理论上识别出可能的误差来源;最后提出实用修正方法以消除其中两类误差,并通过实验验证该方法可有效消除大部分误差。