In this paper, we study algorithms for special cases of energy games, a class of turn-based games on graphs that show up in the quantitative analysis of reactive systems. In an energy game, the vertices of a weighted directed graph belong either to Alice or to Bob. A token is moved to a next vertex by the player controlling its current location, and its energy is changed by the weight of the edge. Given a fixed starting vertex and initial energy, Alice wins the game if the energy of the token remains nonnegative at every moment. If the energy goes below zero at some point, then Bob wins. The problem of determining the winner in an energy game lies in $\mathsf{NP} \cap \mathsf{coNP}$. It is a long standing open problem whether a polynomial time algorithm for this problem exists. We devise new algorithms for three special cases of the problem. The first two results focus on the single-player version, where either Alice or Bob controls the whole game graph. We develop an $\tilde{O}(n^\omega W^\omega)$ time algorithm for a game graph controlled by Alice, by providing a reduction to the All-Pairs Nonnegative Prefix Paths problem (APNP), where $W$ is the maximum weight and $\omega$ is the best exponent for matrix multiplication. Thus we study the APNP problem separately, for which we develop an $\tilde{O}(n^\omega W^\omega)$ time algorithm. For both problems, we improve over the state of the art of $\tilde O(mn)$ for small $W$. For the APNP problem, we also provide a conditional lower bound, which states that there is no $O(n^{3-\epsilon})$ time algorithm for any $\epsilon > 0$, unless the APSP Hypothesis fails. For a game graph controlled by Bob, we obtain a near-linear time algorithm. Regarding our third result, we present a variant of the value iteration algorithm, and we prove that it gives an $O(mn)$ time algorithm for game graphs without negative cycles.
翻译:本文研究能量博弈(一种在反应式系统量化分析中出现的图博弈,玩家交替移动棋子)在特殊情形下的算法。在能量博弈中,带权有向图的顶点分属Alice或Bob控制。玩家将棋子从当前顶点移动到相邻顶点,同时棋子能量根据边权增减。给定固定起始顶点和初始能量,若棋子能量始终非负则Alice获胜;一旦能量降至负数则Bob获胜。确定能量博弈获胜方的问题属于$\mathsf{NP} \cap \mathsf{coNP}$,是否存在多项式时间算法是长期未决的开放问题。我们为此问题的三个特殊情形设计了新算法。前两个结果聚焦于单人博弈版本(即整个博弈图由Alice或Bob单方控制)。针对Alice控制的博弈图,我们通过归约到所有点对非负前缀路径问题(APNP),提出$\tilde{O}(n^\omega W^\omega)$时间的算法,其中$W$为最大权值,$\omega$为矩阵乘法最优指数。随后我们专门研究了APNP问题,为其开发了$\tilde{O}(n^\omega W^\omega)$时间的算法。对两类问题,当$W$较小时我们均改进了当前最优的$\tilde O(mn)$复杂度。针对APNP问题我们还给出了条件下界结果:除非APSP假设不成立,否则不存在$O(n^{3-\epsilon})$时间算法(对任意$\epsilon > 0$)。对于Bob控制的博弈图,我们得到近乎线性时间的算法。第三个结果提出价值迭代算法的变体,并证明该算法可在$O(mn)$时间内处理无负环的博弈图。