HOME

TheInfoList



OR:

In
geometry Geometry (; ) is, with arithmetic, one of the oldest branches of mathematics. It is concerned with properties of space such as the distance, shape, size, and relative position of figures. A mathematician who works in the field of geometry is ...
, a covering of a
polygon In geometry, a polygon () is a plane figure that is described by a finite number of straight line segments connected to form a closed ''polygonal chain'' (or ''polygonal circuit''). The bounded plane region, the bounding circuit, or the two to ...
is a set of primitive units (e.g. squares) whose
union Union commonly refers to: * Trade union, an organization of workers * Union (set theory), in mathematics, a fundamental operation on sets Union may also refer to: Arts and entertainment Music * Union (band), an American rock group ** ''Un ...
equals the polygon. A polygon covering problem is a problem of finding a covering with a smallest number of units for a given polygon. This is an important class of problems in computational geometry. There are many different polygon covering problems, depending on the type of polygon being covered. An example polygon covering problem is: given a
rectilinear polygon A rectilinear polygon is a polygon all of whose sides meet at right angles. Thus the interior angle at each vertex is either 90° or 270°. Rectilinear polygons are a special case of isothetic polygons. In many cases another definition is ...
, find a smallest set of squares whose union equals the polygon. In some scenarios, it is not required to cover the entire polygon but only its edges (this is called ''polygon edge covering'') or its vertices (this is called ''polygon vertex covering''). In a covering problem, the units in the covering are allowed to overlap, as long as their union is exactly equal to the target polygon. This is in contrast to a
packing problem Packing problems are a class of optimization problems in mathematics that involve attempting to pack objects together into containers. The goal is to either pack a single container as densely as possible or pack all objects using as few conta ...
, in which the units must be disjoint and their union may be smaller than the target polygon, and to a polygon partition problem, in which the units must be disjoint ''and'' their union must be equal to the target polygon. A polygon covering problem is a special case of the
set cover problem The set cover problem is a classical question in combinatorics, computer science, operations research, and complexity theory. It is one of Karp's 21 NP-complete problems shown to be NP-complete in 1972. Given a set of elements (called the un ...
. In general, the problem of finding a smallest set covering is NP-complete, but for special classes of polygons, a smallest polygon time. A ''covering'' of a polygon is a collection of maximal units, possibly overlapping, whose union equals . A ''minimal covering'' is a covering that does not contain any other covering (i.e. it is a local minimum). A ''minimum covering'' is a covering with a smallest number of units (i.e. a global minimum). Every minimum covering is minimal, but not vice versa.


Covering a rectilinear polygon with squares

A
rectilinear polygon A rectilinear polygon is a polygon all of whose sides meet at right angles. Thus the interior angle at each vertex is either 90° or 270°. Rectilinear polygons are a special case of isothetic polygons. In many cases another definition is ...
can always be covered with a finite number of vertices of the polygon. The algorithm uses a local optimization approach: it builds the covering by iteratively selecting maximal squares that are essential to the cover (i.e., contain uncovered points not covered by other maximal squares) and then deleting from the polygon the points that become unnecessary (i.e., unneeded to support future squares). Here is a simplified pseudo-code of the algorithm: * While the polygon ''P'' is not empty: ** Select a continuator square ''s'' in ''P''. ** If the
balcony A balcony (from it, balcone, "scaffold") is a platform projecting from the wall of a building, supported by columns or console brackets, and enclosed with a balustrade, usually above the ground floor. Types The traditional Maltese balcony ...
of ''s'' is not yet covered, then add ''s'' to the covering. ** Remove the balcony of ''s'' from ''P''. ** If what remains of ''s'' is a one-knob continuator, then remove from ''P'' a certain rectangle adjacent to the knob, taking care to leave a sufficient security distance for future squares. For polygons which may contain holes, finding a minimum such covering is NP-hard. This sharp difference between hole-free and general polygons can be intuitively explained based on the following analogy between maximal squares in a rectilinear polygon and nodes in an undirected graph: * Some maximal squares have a continuous intersection with the boundary of the polygon; when they are removed, the remaining polygon remains connected. Such squares are called "continuators" and are analogous to leaf nodes – nodes with a single edge – that can be removed without disconnecting the graph. * Other maximal squares are "separators": when they are removed, the polygon splits into two disconnected polygons. They are analogous to nodes with two or more edges that, when removed, leave a disconnected remainder. In a hole-free rectilinear polygon, all maximal squares are either continuators or separators; thus, such a polygon is analogous to a
tree graph In graph theory, a tree is an undirected graph in which any two vertices are connected by ''exactly one'' path, or equivalently a connected acyclic undirected graph. A forest is an undirected graph in which any two vertices are connected by '' ...
. A general polygon is analogous to a general graph. Just like the
vertex cover In graph theory, a vertex cover (sometimes node cover) of a graph is a set of vertices that includes at least one endpoint of every edge of the graph. In computer science, the problem of finding a minimum vertex cover is a classical optimiza ...
problem is polynomial for tree graphs but NP-hard for general graphs, the square covering problem is linear for hole-free polygons but NP-hard for general polygons. It is possible to use the linear algorithm to get a 2-approximation; i.e., a covering with at most squares, where ''opt'' is the number of squares in a minimum covering: * For each hole, find a square ''s'' connecting the hole to the external boundary. * Cut ''s'' from the polygon, then glue back two overlapping copies of ''s'' (see figure). The resulting polygon is not planar, but it still 2-dimensional, and now it has no holes. * Now use the original algorithm to find a minimum covering. The number of squares in the resulting covering is at most , where ''holes'' is the number of holes. It is possible to prove that . Hence the number of squares in the covering is at most .


Covering a rectilinear polygon with rectangles

For general rectilinear polygons, the problem of finding a minimum rectangle covering is NP-hard, even when the target polygon is hole-free. Several partial solutions have been suggested to this problem:


Covering a rectilinear polygon with orthogonally convex polygons

For a
rectilinear polygon A rectilinear polygon is a polygon all of whose sides meet at right angles. Thus the interior angle at each vertex is either 90° or 270°. Rectilinear polygons are a special case of isothetic polygons. In many cases another definition is ...
which is half-orthogonally convex (i.e. only in the ''x'' direction), a minimum covering by orthogonally convex polygons can be found in time O(''n''^2), where ''n'' is the number of vertices of the polygon. The same is true for a covering by rectilinear star polygons. The number of orthogonally-convex components in a minimum covering can, in some cases, be found without finding the covering itself, in time O(''n'').


Covering a rectilinear polygon with star polygons

A rectilinear star polygon is a polygon ''P'' containing a point ''p'', such that for every point ''q'' in ''P'', there is an orthogonally convex polygon containing ''p'' and ''q''. The problem of covering a polygon with star polygons is a variant of the
art gallery problem The art gallery problem or museum problem is a well-studied visibility problem in computational geometry. It originates from the following real-world problem: In the geometric version of the problem, the layout of the art gallery is represented ...
. The visibility graph for the problem of minimally covering hole-free
rectilinear polygon A rectilinear polygon is a polygon all of whose sides meet at right angles. Thus the interior angle at each vertex is either 90° or 270°. Rectilinear polygons are a special case of isothetic polygons. In many cases another definition is ...
s with star polygons is a
perfect graph In graph theory, a perfect graph is a graph in which the chromatic number of every induced subgraph equals the order of the largest clique of that subgraph (clique number). Equivalently stated in symbolic terms an arbitrary graph G=(V,E) is perfe ...
. This perfectness property implies a polynomial algorithm for finding a minimum covering of any rectilinear polygon with rectilinear star polygons.


Covering a polygon without acute angles with squares or rectangles

The most general class of polygons for which coverings by squares or rectangles can be found is the class of polygons without acute interior angles. This is because an acute angle cannot be covered by a finite number of rectangles. This problem is NP-hard, but several approximation algorithms exist.


Covering a polygon with rectangles of a finite family

In some cases, a polygon has to be covered not with arbitrary rectangles but with rectangles from a finite family.


Covering a polygon with triangles

Finding the smallest set of triangles covering a given polygon is NP-hard. It is also hard to approximate - every polynomial-time algorithm might find a covering with size (1 + 1/19151) times the minimal covering. If the polygon is in
general position In algebraic geometry and computational geometry, general position is a notion of genericity for a set of points, or other geometric objects. It means the ''general case'' situation, as opposed to some more special or coincidental cases that are ...
(i.e. no two edges are collinear), then every triangle can cover at most 3 polygon edges. Hence every polygon triangulation is a 3-approximation. If the covering is restricted to triangles whose vertices are vertices of the polygon (i.e. Steiner points are not allowed), then the problem is NP-complete. If Steiner points are not allowed ''and'' the polygon is in
general position In algebraic geometry and computational geometry, general position is a notion of genericity for a set of points, or other geometric objects. It means the ''general case'' situation, as opposed to some more special or coincidental cases that are ...
(i.e. no two edges are collinear), then every minimal covering without Steiner points is also a minimal partitioning of the polygon to triangles (i.e., the triangles in the minimal covering to not overlap). Hence, the minimum covering problem is identical to the polygon triangulation problem, which can be solved in time O(''n''log ''n''). Note that if we drop the general position assumption, there are polygons in which the triangles in the optimal covering overlap. Think of the Star of David for example. The problem of covering only the boundary of a polygon with triangles is NP-complete, but there is an efficient 2-approximation.


Covering a polygon with convex polygons

Covering a polygon (which may contain holes) with convex polygons is NP-hard. There is an O(log ''n'') approximation algorithm. Covering a polygon with convex polygons is NP-hard even when the target polygon is hole-free.. It is also
APX-hard In computational complexity theory, the class APX (an abbreviation of "approximable") is the set of NP optimization problems that allow polynomial-time approximation algorithms with approximation ratio bounded by a constant (or constant-factor ap ...
. The problem is NP-complete when the covering must not introduce new vertices (i.e. Steiner points are not allowed).


Covering a polygon with star polygons

Covering a simple polygon with star polygons is \exists\mathbb-complete, as is the version where a point in the kernel of each star must be contained in an edge of the polygon.


Covering a set of points with identical squares

Given a set ''S'' of points in the plane, and a set of identical squares, the goal is to find the smallest number of squares that can cover all points in ''S''. Suppose that, for each point ''p'' in ''S'', we put a square centered at ''p''. Let ''G''S be the
intersection graph In graph theory, an intersection graph is a graph that represents the pattern of intersections of a family of sets. Any graph can be represented as an intersection graph, but some important special classes of graphs can be defined by the types o ...
of these squares. Note that two points in ''S'' can be covered by a single square, if and only if the two squares centered at them overlap. Therefore, a square-covering of the points in ''S'' is equivalent to a
clique cover In graph theory, a clique cover or partition into cliques of a given undirected graph is a partition of the vertices into cliques, subsets of vertices within which every two vertices are adjacent. A minimum clique cover is a clique cover that us ...
of ''G''S. Finding a smallest square-covering of ''S'' is NP-hard; the proof is by reduction from
3SAT In logic and computer science, the Boolean satisfiability problem (sometimes called propositional satisfiability problem and abbreviated SATISFIABILITY, SAT or B-SAT) is the problem of determining if there exists an interpretation that satisfies ...
.


Other combinations

Covering a polygon (which may contain holes) with spirals is NP-hard. Covering a polygon with pseudotriangles has also been studied. Additional information can be found in.


See also

*
Covering problems In combinatorics and computer science, covering problems are computational problems that ask whether a certain combinatorial structure 'covers' another, or how large the structure has to be to do that. Covering problems are Optimization (mathematic ...
*
Art gallery problem The art gallery problem or museum problem is a well-studied visibility problem in computational geometry. It originates from the following real-world problem: In the geometric version of the problem, the layout of the art gallery is represented ...
*
Tessellation A tessellation or tiling is the covering of a surface, often a plane, using one or more geometric shapes, called ''tiles'', with no overlaps and no gaps. In mathematics, tessellation can be generalized to higher dimensions and a variety o ...


References

{{reflist Computational geometry Polygons Covering problems