English

Solving Stackelberg Vertex Cover on trees using split and join

Data Structures and Algorithms 2026-07-17 v1 Computer Science and Game Theory

Abstract

The Stackelberg Vertex Cover problem is a bilevel optimization problem with two players on a graph G=(FP,E)G = (F \cup P, E) where each vertex from FF has a weight and the first player selects a price for each vertex in PP. Afterwards, the second player finds a minimum vertex cover XX and the first player receives the set price for each vertex from XPX \cap P. The goal is to maximize the revenue of the first player. This problem was recently shown to be NP-complete for bipartite graphs while being solvable in linear time on paths. We present three new algorithms for solving Stackelberg Vertex Cover on certain kinds of trees: (1) a pseudo-polynomial algorithm working on general trees when all weights are integer, i.e., it is FPT with the maximum weight as a parameter; (2) a strongly polynomial algorithm for trees having the property that the least common ancestor of any two vertices from PP is again in PP (this case includes paths); and (3) an FPT-algorithm for trees, where the parameter is the maximum number PP-vertices viv_i that an FF-vertex uu can reach while using no other PP-vertices. These algorithms are based on a lemma that allows us to split instances at a vertex uu into multiple sub-instances, which follows from LP duality and integrality of the vertex cover LP on bipartite graphs. The lemma requires that the minimum vertex covers of the sub-instances agree on uu (either all include uu or all don't). For this we introduce the concept of commitments. Finally, we show that the Stackelberg Vertex Cover problem with commitments is weakly NP-complete.

Cite

@article{arxiv.2607.16078,
  title  = {Solving Stackelberg Vertex Cover on trees using split and join},
  author = {Dominik Scheder and Johannes Tantow},
  journal= {arXiv preprint arXiv:2607.16078},
  year   = {2026}
}