Optimizing generalized kernels of polygons
Alejandra Martinez-Moraian, David Orden, Leonidas Palios, Carlos Seara, Paweł Żyliński
TL;DR
The paper addresses computing and maintaining the kernel of a polygon under rotation of a predefined orientation set, introducing the notion of $\mathcal{O}$-convexity ($\mathcal{O}$-staircases) and the $\mathcal{O}$-Kernel$$(P)$$ as the region from which all points are reachable via monotone $\mathcal{O}$-staircases. It presents algorithms to compute, for $\mathcal{O}=\{0^\circ\}$ and $\{0^\circ,90^\circ\}$, the angle intervals $\theta\in[-\frac{\pi}{2},\frac{\pi}{2})$ where the rotated kernel is non-empty and to optimize the kernel’s area or perimeter, with runtimes ranging from $O(n)$ to $O(n^2\alpha(n))$ depending on polygon class. The work generalizes to $k$ orientations and provides specialized, faster results for simple orthogonal polygons, where the kernel structure is constrained by staircases and dents, allowing linear-time existence and optimization, as well as an $O(kn)$ bound for $k$ orientations. These methods rely on a combination of angular intervals, dualization/envelope techniques, and event-based partitioning of the rotation parameter, along with geometric constructions like the floating rectangle for the two-orientation case. The contributions advance the understanding of visibility under rotating directional constraints and enable efficient optimization of kernel area/perimeter in both general and orthogonal polygons, with potential applications in robot navigation and guarding problems under rotating constraints.
Abstract
Let $\mathcal{O}$ be a set of $k$ orientations in the plane, and let $P$ be a simple polygon in the plane. Given two points $p,q$ inside $P$, we say that $p$ $\mathcal{O}$-\emph{sees} $q$ if there is an $\mathcal{O}$-\emph{staircase} contained in $P$ that connects $p$ and~$q$. The \emph{$\mathcal{O}$-Kernel} of the polygon $P$, denoted by $\mathcal{O}$-$\rm kernel(P)$, is the subset of points of $P$ which $\mathcal{O}$-see all the other points in $P$. This work initiates the study of the computation and maintenance of $\mathcal{O}$-$\rm kernel(P)$ as we rotate the set $\mathcal{O}$ by an angle $θ$, denoted by $\mathcal{O}$-$\rm kernel_θ(P)$. In particular, we consider the case when the set $\mathcal{O}$ is formed by either one or two orthogonal orientations, $\mathcal{O}=\{0^\circ\}$ or $\mathcal{O}=\{0^\circ,90^\circ\}$. For these cases and $P$ being a simple polygon, we design efficient algorithms for computing the $\mathcal{O}$-$\rm kernel_θ(P)$ while $θ$ varies in $[-\fracπ{2},\fracπ{2})$, obtaining: (i)~the intervals of angle~$θ$ where $\mathcal{O}$-$\rm kernel_θ(P)$ is not empty, (ii)~a value of angle~$θ$ where $\mathcal{O}$-$\rm kernel_θ(P)$ optimizes area or perimeter. Further, we show how the algorithms can be improved when $P$ is a simple orthogonal polygon. In addition, our results are extended to the case of a set $\mathcal{O}=\{α_1,\dots,α_k\}$.
