We propose an exact algorithm for the Graph Burning Problem ($\texttt{GBP}$), an NP-hard optimization problem that models the spread of influence on social networks. Given a graph $G$ with vertex set $V$, the objective is to find a sequence of $k$ vertices in $V$, namely, $v_1, v_2, \dots, v_k$, such that $k$ is minimum and $\bigcup_{i = 1}^{k} \{u\! \in\! V\! : d(u, v_i) \leq k - i\} = V$, where $d(u,v)$ denotes the distance between $u$ and $v$. We formulate the problem as a set covering integer programming model and design a row generation algorithm for the $\texttt{GBP}$. Our method exploits the fact that a very small number of covering constraints is often sufficient for solving the integer model, allowing the corresponding rows to be generated on demand. To date, the most efficient exact algorithm for the $\texttt{GBP}$, denoted here by $\texttt{GDCA}$, is able to obtain optimal solutions for graphs with up to 14,000 vertices within two hours of execution. In comparison, our algorithm finds provably optimal solutions approximately 236 times faster, on average, than $\texttt{GDCA}$. For larger graphs, memory space becomes a limiting factor for $\texttt{GDCA}$. Our algorithm, however, solves real-world instances with almost 200,000 vertices in less than 35 seconds, increasing the size of graphs for which optimal solutions are known by a factor of 14.
翻译:我们提出了图燃烧问题(Graph Burning Problem,$\texttt{GBP}$)的精确算法。该问题是NP难优化问题,用于建模社交网络中的影响传播。给定顶点集为$V$的图$G$,目标是在$V$中找到一个包含$k$个顶点的序列,即$v_1, v_2, \dots, v_k$,使得$k$最小且满足$\bigcup_{i = 1}^{k} \{u\! \in\! V\! : d(u, v_i) \leq k - i\} = V$,其中$d(u,v)$表示$u$与$v$之间的距离。我们将该问题建模为集合覆盖整数规划模型,并为$\texttt{GBP}$设计了一种行生成算法。该方法利用了以下事实:通常只需极少数覆盖约束即可求解整数模型,从而能够按需生成相应行。迄今为止,$\texttt{GBP}$最有效的精确算法(此处记为$\texttt{GDCA}$)可在两小时内为包含多达14,000个顶点的图找到最优解。相比之下,我们的算法平均比$\texttt{GDCA}$快约236倍地找到可证明的最优解。对于更大规模的图,内存空间成为$\texttt{GDCA}$的限制因素。然而,我们的算法能在不到35秒内解决包含近200,000个顶点的真实世界实例,将已知最优解的图规模提升了14倍。