Witness Set in Monotone Polygons: Exact and Approximate
Udvas Das, Binayak Dutta, Satyabrata Jana, Debabrata Pal, Sasanka Roy
TL;DR
The paper addresses the Witness Set problem in polygons, distinguishing DisWS (with a given polygon and point set) from WS (where the goal is a maximum witness set in a polygon). It develops a discretization framework for monotone polygons and proves polynomial-time solvability of DisWS in general polygons via outerstring graph MIS, plus a refined polynomial-time algorithm and a PTAS for WS in monotone polygons using reflex-vertex-based constructions and line arrangements. The core technique introduces Territory and tRegion, partitions witnesses into internal and boundary classes, and constructs finite surrogate sets $\mathcal{R}_{mid}$ and $\mathcal{Z}_{mid}$ that preserve optimal solutions, enabling exact solutions in $r^{\mathcal{O}(k)} \cdot n^{\mathcal{O}(1)}$ time and a PTAS with $r^{\mathcal{O}(1/\varepsilon)} n^2$ time, where $r$ is the number of reflex vertices, $k$ the optimum witness size, and $n$ the number of vertices. These results show discretization as a viable route to exact and approximate solutions for WS-related problems and have implications for related polygon guarding problems, informing both theory and practical heuristics.
Abstract
Given a simple polygon $\mathscr{P}$, two points $x$ and $y$ within $\mathscr{P}$ are {\em visible} to each other if the line segment between $x$ and $y$ is contained in $\mathscr{P}$. The {\em visibility region} of a point $x$ includes all points in $\mathscr{P}$ that are visible from $x$. A point set $Q$ within a polygon $\mathscr{P}$ is said to be a \emph{witness set} for $\mathscr{P}$ if each point in $\mathscr{P}$ is visible from at most one point from $Q$. The problem of finding the largest size witness set in a given polygon was introduced by Amit et al. [Int. J. Comput. Geom. Appl. 2010]. Recently, Daescu et al. [Comput. Geom. 2019] gave a linear-time algorithm for this problem on monotone mountains. In this study, we contribute to this field by obtaining the largest witness set within both continuous and discrete models. In the {\sc Witness Set (WS)} problem, the input is a polygon $\mathscr{P}$, and the goal is to find a maximum-sized witness set in $\mathscr{P}$. In the {\sc Discrete Witness Set (DisWS)} problem, one is given a finite set of points $S$ alongside $\mathscr{P}$, and the task is to find a witness set $Q \subseteq S$ that maximizes $|Q|$. We investigate {\sc DisWS} in simple polygons, but consider {\sc WS} specifically for monotone polygons. Our main contribution is as follows: (1) a polynomial time algorithm for {\sc DisWS} for general polygons and (2) the discretization of the {\sc WS} problem for monotone polygons. Specifically, given a monotone polygon with $r$ reflex vertices, and a positive integer $k$ we generate a point set $Q$ with size $r^{O(k)} \cdot n$ such that $Q$ contains an witness set of size $k$ (if exists). This leads to an exact algorithm for {\sc WS} problem in monotone polygons running in time $r^{O(k)} \cdot n^{O(1)}$. We also provide a PTAS for this with running time $r^{O(1/ε)} n^2$.
