How to Guard a Graph?

Fedor V. Fomin, Petr A. Golovach, Alexander Hall, Matús Mihalák, Elias Vicari, Peter Widmayer

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

We initiate the study of the algorithmic foundations of games in which a set of cops has to guard a region in a graph (or digraph) against a robber. The robber and the cops are placed on vertices of the graph; they take turns in moving to adjacent vertices (or staying). The goal of the robber is to enter the guarded region at a vertex with no cop on it. The problem is to find the minimum number of cops needed to prevent the robber from entering the guarded region. The problem is highly non-trivial even if the robber’s or the cops’ regions are restricted to very simple graphs. The computational complexity of the problem depends heavily on the chosen restriction. In particular, if the robber’s region is only a path, then the problem can be solved in polynomial time. When the robber moves in a tree (or even in a star), then the decision version of the problem is np-complete. Furthermore, if the robber is moving in a directed acyclic graph, the problem becomes pspace-complete.
Original languageEnglish
Pages (from-to)839-856
Number of pages18
JournalAlgorithmica
Volume61
Issue number4
DOIs
Publication statusPublished - 2011

Cite this

Fomin, F. V., Golovach, P. A., Hall, A., Mihalák, M., Vicari, E., & Widmayer, P. (2011). How to Guard a Graph? Algorithmica, 61(4), 839-856. https://doi.org/10.1007/s00453-009-9382-4