Project number IST-006413 Algorithms for Complex ... - CiteSeerX

6 downloads 0 Views 281KB Size Report
The diagonal d supports a triangle whose apex is at vertex t, ..... The diagonals (ci,j,ci,j+1), 1 ≤ j ≤ Ki −1 can be embedded as straight line segments, whereas.
Project number IST-006413

ACS Algorithms for Complex Shapes with Certified Numerics and Topology

Guarding curvilinear art galleries with edge or mobile guards

Menelaos I. Karavelas

ACS Technical Report No.: ACS-TR-241300-02 Part of deliverable: Site: Month:

WP-I/D3 NUA 24

Project co-funded by the European Commission within FP6 (2002–2006) under contract nr. IST-006413

Guarding curvilinear art galleries with edge or mobile guards Menelaos I. Karavelas†,‡ †

University of Crete, Department of Applied Mathematics, GR-714 09 Heraklion, Greece, [email protected]

Institute of Applied and Computational Mathematics, Foundation for Research and Technology - Hellas, P.O. Box 1385, GR-711 10 Heraklion, Greece Abstract

In this paper we consider the problem of guarding an art gallery modeled as a polygon, the edges of which are arcs of curves, with edge or mobile guards. Our focus is on piecewise convex polygons, i.e., polygons the edges of which are convex arcs pointing towards the exterior of the polygon. We transform the problem of guarding a piecewise convex polygon to the problem of 2-dominating a properly defined combinatorial triangulation graph with edges or diagonals, where 2-dominance requires that every triangle in the triangulation graph has at least two of its vertices in its 2-dominating set. In this paper we show that: (1) ⌊ n+1 3 ⌋ diagonal guards are always sufficient and sometimes necessary, and (2) ⌊ 2n+2 ⌋ edge guards are always sufficient and 5 ⌋ edge guards are sometimes necessary, in order to 2-dominate a combinatorial triangulation ⌊ 2n 5 2n+2 ⌋ mobile guards or ⌊ ⌋ edge guards graph. Using these results we then prove that: (1) ⌊ n+1 3 5 are always sufficient, (2) ⌊ n3 ⌋ mobile or edge guards are sometimes necessary, in order to guard a piecewise convex polygon.

1

Introduction

In recent years Computational Geometry has made a shift towards curved objects. Recent works have addressed both combinatorial properties and algorithmic aspects of such problems, as well as the necessary algebraic techniques required to tackle the predicates used in the algorithms involving these objects. The pertinent literature is quite extensive; the interested reader may consult the recent book by Boissonnat and Teillaud [BT07] for a collection of recent results for various classical Computational Geometry problems involving curved objects. Despite the apparent shift towards the curved world, there are very few works dealing with the well-known art gallery and illumination class of problems when the objects involved are curved [UZ89, CGL+ 89, CRCUZ94, CRCUZ95, CGRC+ 95]. The original art gallery problem was posted by Klee to Chv´atal: given a simple polygon P with n vertices, how many vertex guards are required in order to see the interior of P ? Chv´atal [Chv75] proved that ⌊ n3 ⌋ vertex guards are always sufficient and sometimes necessary, while Fisk [Fis78], a few years later, gave exactly the same result using a much simpler proof technique based on polygon triangulation and coloring the vertices of the triangulated polygon with three colors. In the context of curvilinear polygons, i.e., polygons the edges of which may be linear segments or arcs of curves, Karavelas and Tsigaridas [KT07] have shown that is always possible to guard piecewise convex polygons (i.e., polygons the edges of which are convex arcs pointing towards the exterior of 1

the polygon) with ⌊ 2n 3 ⌋ vertex guards, whereas there exists a class of such polygons that requires a 4n minimum of ⌊ 7 ⌋ − 1 vertex guards. In the same paper it is also shown that 2n − 4 point guards are always sufficient and sometimes necessary in order to guard piecewise concave polygons, i.e., polygons the edges of which are convex arcs pointing towards the interior of the polygon. Soon after the first results on guarding polygons with vertex or point guards, other types of guarding models where considered. Toussaint introduced in 1981 the notion of edge guards. A point p in the interior of the polygon is considered to be guarded if it is visible from at least one point of an edge in the guarding set. Edge guards where introduced as a guarding model in which guards where allowed to move along the edges of the polygon. Another variation, dating back to 1983, is due to O’Rourke: guards are allowed to move along any diagonal of the polygon. This type of guards is called mobile guards. Toussaint conjectured that, except for a few polygons, ⌊ n4 ⌋ edge guards are always sufficient. There are only two known counterexamples to this conjecture due to Paige and Shermer (cf. [She92]), requiring ⌊ n+1 4 ⌋ edge guards. The first step towards Toussaint’s conjecture was made by O’Rourke [O’R83, O’R87] who proved that ⌊ n4 ⌋ mobile guards are always sufficient and occasionally necessary in order to guard any polygon with n vertices. The technique by O’Rourke amounts to reducing the problem of guarding a simple polygon to that of dominating a triangulation graph of the polygon. A triangulation graph is a maximal outerplanar graph, i.e., a Hamiltonian planar graph consisting of n vertices and 2n − 3 edges, all internal faces of which are triangles. Dominance in this context means that at least one of the vertices of each triangle in the triangulation graph is an endpoint of a mobile guard. Shermer [She92] settled the problem of guarding triangulation graphs with edge guards by showing that ⌊ 3n 10 ⌋ edge guards are always sufficient and sometimes necessary, except for n = 3, 6 or 13, in which case one extra edge guard may be necessary. When considering orthogonal polygons, i.e., polygons the edges of which are axesaligned, the afore mentioned upper and lower bounds drop. Aggarwal [Agg84] showed that ⌊ 3n+4 16 ⌋ mobile guards are sufficient and sometimes necessary in order to guard orthogonal polygons with n vertices, a bound that was later on matched for edge guards by Bjorling-Sachs [BS98]. Finally, Gy¨ori, Hoffmann, Kriegel and Shermer [GHKS96] showed that when an orthogonal polygon with n ⌋ mobile guards are sufficient and sometimes necessary in order vertices contains h holes, ⌊ 3n+4h+4 16 to guard it. In this paper we consider the problem of guarding piecewise convex polygons with edge or n mobile guards. We prove that ⌊ n+1 3 ⌋ mobile guards are always sufficient, and ⌊ 3 ⌋ mobile guards are occasionally necessary, where the term mobile means either edges of the polygon or closed straight-line diagonals contained inside the polygon. If edge guards are to be used, it is always n possible to guard piecewise convex polygons with ⌊ 2n+2 5 ⌋ edge guards, whereas ⌊ 3 ⌋ edge guards are sometimes necessary. Our proof technique is similar to the technique by O’Rourke [O’R87]. We first reduce the problem of guarding our piecewise convex polygon P to the problem of properly dominating an appropriately defined combinatorial triangulation graph TP . The triangulation graph TP is essentially a constrained triangulation graph: based on the geometry of P , we require that certain diagonals of TP are present. As far as proper dominance is concerned, we introduce the notion of 2-dominance: a set of edges/diagonals of TP is a 2-dominating set of TP if every triangle in TP has at least two of its vertices incident to an edge/diagonal in the 2-dominating set. For the edge guarding problem, the edge 2-dominating set computed for TP is also an edge guarding set for P . Unlike edge guards, the diagonal 2-dominating set we computed for TP needs to be mapped to a set of mobile guards of P , since the 2-dominating set for TP may contain diagonals that are not embeddable as straight-line diagonals of P . The rest of the paper is structured as follows. In Section 2 we prove upper and lower bounds on the number of edge/diagonal guards required in order to 2-dominate a triangulation graph. In 2

Section 3 we show how to guard piecewise convex polygons with edge/mobile guards. Finally in Section 4 we conclude with a discussion of our results and open problems.

2

2-dominance of combinatorial triangulation graphs

In this section we prove tight bounds on the size of edge and diagonal 2-dominating sets for combinatorial triangulation graphs. The results of this section extend similar results by O’Rourke [O’R87, Chapter 3]. Before proceeding with our results, let us state some definitions. Given a polygon P , its triangulation graph TP is a maximal outerplanar graph all internal faces of which are triangles. A triangulation graph is associated with a straight-line embedding. If we want to distinguish its combinatorial structure from its embedding we refer to a combinatorial triangulation graph. The (combinatorial) triangulation graph of a linear polygon, i.e., a polygon the edges of which are linear segments, is the planar graph we get when the polygon has been triangulated. A dominating set D of a combinatorial triangulation graph TP is a set of vertices, edges or diagonals of TP such that every triangle in TP has at least one of its vertices in D, i.e., at least one of its vertices is a vertex in D or the endpoint of an edge or a diagonal in D. An edge dominating set of TP is a dominating set of TP consisting of edges of P only. A diagonal dominating set of TP is a dominating set of TP consisting of diagonals of TP only (note that this also includes edges of P ). A 2-dominating set D of TP is a dominating set of TP that has the property that every triangle in TP has at least two of its vertices in D. In a similar manner, an edge/diagonal 2-dominating set of TP is a 2-dominating set of TP consisting only of edges/diagonals of TP . Let TP be a triangulation graph of a polygon P , and let u and v be two nodes of TP connected via an edge e. The contraction of e is a transformation that removes the nodes u and v and replaces them with a new node x, that is adjacent to every node that u and v was adjacent. The reason that edge contractions are of interest in our context is due to the following lemma by O’Rourke: Lemma 1 (Lemma 3.1, [O’R87]) Let TP be a triangulation graph of a polygon P , and TP′ the graph resulting from an edge contraction of TP . Then TP′ is a triangulation graph of some polygon P ′. The contraction transformation can be used to prove the following lemma, which is the analogue of Lemma 3.2 in [O’R87] in the context of 2-dominance. Lemma 2 Suppose that f (n) combinatorial diagonal (resp., edge) guards are always sufficient to 2-dominate an n-node triangulation graph. If TP is an arbitrary triangulation graph of a polygon P , v any vertex of P and e any of the two incident edges of v, then TP can be 2-dominated with f (n − 1) diagonal (resp., edge) guards, plus a vertex guard at v. Moreover, e, if specified, does not belong to the 2-dominating set of TP . Proof. Let u be the chosen vertex at which the guard is to be placed. If the edge e is specified, let v be the node adjacent to u across e; otherwise, let e be any of two the edges of P incident to u, and v the node adjacent to u across e. Let te be the triangle of TP adjacent to e and let w be the third vertex of te , besides u and v. Edge contract TP across e, producing the triangulation graph TP′ of n − 1 nodes. Since TP′ is a triangulation graph of a polygon (cf. Lemma 1), it can be 2-dominated by f (n − 1) diagonal (resp., edge) guards. Let x be the node of TP′ that replaced u and v, and let D ′ be the 2-dominating set of TP′ consisting of f (n − 1) diagonal (resp., edge) guards. Suppose that no guard is placed at x, that 3

is x is not an endpoint of a diagonal (resp., edge) in D′ . Then D = D′ ∪ {u} is a dominating set for TP , since the guard at u dominates te , whereas the remaining triangles of TP are dominated by diagonals (resp. edges) in D′ . Moreover, every triangle in TP , except the triangles adjacent to u or v, has two of its vertices in D′ , and thus in D. Since x is not in D′ , all the vertices of TP′ adjacent to x have to be in D ′ . Hence, all triangles adjacent to u or v, except te have two of their vertices in D′ and thus in D. Finally, te has also two vertices in D, namely u and w. Thus, D is a 2-dominating set for TP . Suppose now that a guard is used at x in D′ . If xw is an edge or diagonal guard in D ′ , assign xw to vw. Every other edge or diagonal guard g in D ′ incident to x, if any, becomes an edge or diagonal guard in D, incident to either u or v, depending on whether g is incident to u or v in TP . As in the previous case, every triangle in TP is dominated and has at least two of its vertices in D. More precisely, every triangle in TP′ not containing x has two of its vertices in D′ and thus in D. Every triangle t′ in TP′ containing x is now a triangle in TP containing either u or v or both (this is the case for te ). Therefore every triangle in TP , except te , that contains u or v has one vertex in D ′ plus either u or v. Clearly, te has both u and v in D. We conclude by noticing that e itself is not in D.  Let us now state and prove the following lemma, which is similar in nature to Lemma 3.6 in [O’R87]. Lemma 3 Let P be a polygon with n ≥ 6 vertices, and TP a triangulation graph of P . There exists a diagonal d in TP that partitions TP into two pieces, one of which contains k = 3 or 4 arcs corresponding to edges of P . Proof. Choose d to be a diagonal of TP that separates off a minimum number of polygon edges that is at least 3. Let k ≥ 3 be this minimum number, and label the vertices of P with the labels 0, 1, . . . , n − 1, such that d is (0, k). The diagonal d supports a triangle whose apex is at vertex t, 0 ≤ t ≤ k. Since k is minimal t ≤ 2 and k − t ≤ 2. Thus k ≤ 4, i.e., k = 3 or k = 4.  We now come to the first main result of this section. Theorem 4 Every combinatorial triangulation graph TP of a polygon P with n ≥ 3 vertices can be 2-dominated by ⌊ n+1 3 ⌋ combinatorial diagonal guards. This bound is tight in the worst case. Proof. Let us first consider the cases 3 ≤ n ≤ 5. If n = 3, any of the three edges of the unique triangle in TP is a 2-dominating set of TP . If n = 4, choose the unique diagonal d of TP . Clearly, both triangles in TP are 2-dominated by {d}. Finally, if n = 5, the set D consisting of the two diagonals of the pentagon is a 2-dominating set for TP . Let us now assume that n ≥ 6 and that the theorem holds for all n′ < n. By Lemma 3, there exists a diagonal d that partitions TP into two triangulation graphs T1 and T2 , where T1 contains k boundary edges of TP with 3 ≤ k ≤ 4. Let vi , 0 ≤ i ≤ k, be the k + 1 vertices of T1 , as we encounter them while traversing P in the counterclockwise sense, and let v0 vk be the common edge of T1 and T2 . Let us consider each value of k separately. Let k = 3. Without loss of generality let v0 v2 be the diagonal of the quadrilateral T1 . T2 contains n − 2 vertices. By Lemma 2 and our induction hypothesis, we can 2-dominate T2 with f (n − 3) diagonal guards and v0 . Clearly, TP can be 2-dominated by the f (n − 3) diagonal guards of T2 plus the diagonal v0 v2 . The size of this 2-dominating set f (n − 3) + 1 = ⌊ n+1 3 ⌋. 4

v

Figure 1: Three triangulation graphs T1 , T2 and T3 with n = 3m, n = 3m + 1 and n = 3m + 2 vertices, respectively (the central part of the graph is triangulated arbitrarily). T1 , T2 and T3 require at least ⌊ n+1 3 ⌋ diagonal guards in order to be guarded. Let k = 4. In this case T2 contains n − 3 vertices. Let t be the triangle in T1 supported by d, and let v be the third vertex of t besides v0 and v4 . The presence of diagonals d03 or d14 would violate the minimality of k, which implies that v is actually v2 . By our induction hypothesis, we can 2-dominate T2 with f (n−3) = ⌊ n+1 3 ⌋−1 diagonal guards. Let D2 be the diagonal 2-dominating set of T2 . Notice that at least one of v0 and v4 has to be in D2 . Let us assume, without loss of generality, that v0 is in D2 . Then the set D = D2 ∪ {v2 v4 } is a 2-dominating set for TP and its size is f (n − 3) + 1 = ⌊ n+1 3 ⌋. Let us now turn our attention to establishing the lower bound. Consider the triangulation graphs T1 , T2 and T3 shown in Fig. 1 (left, middle and right, respectively); the central part of these triangulation graphs is triangulated arbitrarily. T1 , T2 and T3 consist of n = 3m, n = 3m + 1 and n = 3m + 2 vertices, respectively, and require one diagonal guard per quadrilateral shown in light gray. Moreover, T1 and T2 require one more diagonal guard for the quadrilateral and pentagon, respectively, shown in dark gray, i.e., T1 and T2 require ⌊ n+1 3 ⌋ diagonal guards in order to be 2-dominated. Let G3 be the 2-dominating set of T3 . The dark gray hexagon in T3 can be 2-dominated with only one diagonal provided that the vertex v is an endpoint of a diagonal in the adjacent quadrilateral. But then one of the light gray quadrilaterals will have to have two diagonals  in G3 . We thus conclude that T3 requires ⌊ n+1 3 ⌋ diagonals in order to be 2-dominated. Let us now turn our attention to edge 2-dominating sets. Before proceeding with our main results, let us state two lemmas. The first one is Lemma 3.6 in [O’R87], whereas the second concerns the proof of Theorem 7 for 3 ≤ n ≤ 9. Lemma 5 (Lemma 3.6, [O’R87]) Let P be a polygon of n ≥ 10 vertices, and TP a triangulation graph of P . There exists a diagonal d in TP that partitions TP into two pieces, one of which contains k = 5, 6, 7 or 8 arcs corresponding to edges of P . Lemma 6 Every triangulation graph TP with 3 ≤ n ≤ 9 vertices, corresponding to a polygon P , can be 2-dominated by ⌊ 2n+2 5 ⌋ edge guards. Proof. Let D be the sought for edge 2-dominating set. Let vi , 1 ≤ i ≤ n be the vertices of TP , and let ei be the edge vi vi+1 . Consider the seven values for n separately: 5

Figure 2: Proof of Lemma 6 for n = 6, 8. The edge 2-dominating set is shown with thick solid lines. The transparent vertices are endpoints of edges in the guarding set, whereas the solid vertices do not belong to the guarding set. Left-most: the case n = 6. The edge 2-dominating set consists of the two edges incident to vertices to the ear (shown in gray) that do not belong to this ear. Right three: the case n = 8. The edge 2-dominating set for each of the three possible relative positions of the two ears of the octagon (shown in gray).

n = 3. Trivial: let D consist of any of the three edges of TP . Clearly, |D| = 1 = ⌊ 2n+2 5 ⌋. n = 4. Let D = {e1 , e3 }. Every triangle in TP has all its three vertices in D. Hence D is a 2-dominating set of 2 = ⌊ 2n+2 5 ⌋ edge guards. n = 5. Let D = {e1 , e3 }. Any one of the three triangles in TP has at least two of its vertices in D (only one vertex of TP does not belong to D), thus D 2-dominates TP . The size of D is 2 = ⌊ 2n+2 5 ⌋. n = 6. Let t be an ear of TP , and let e′ and e′′ be the edges of P incident to t that do not belong to t (see Fig. 2). The set D = {e′ , e′′ } is an edge 2-dominating set for TP of size |D| = 2 = ⌊ 2n+2 5 ⌋, since the triangulation graph TP \ {t} has all but one of its vertices in D, whereas t has two of its vertices in D. n = 7. Let D = {e1 , e3 , e5 }, i.e., |D| = 3 = ⌊ 2n+2 5 ⌋. All vertices of TP , except v7 are in D. Moreover, any of the five triangles in TP has at least two of its vertices in D, since the only vertex of TP not in D is v7 . Hence D 2-dominates TP . n = 8. Let t1 and t2 be two ears of TP and consider their relative positions as shown in Fig. 2. In each case define the set D as shown in Fig. 2 (thick solid edges of the octagon). The triangulation graph TP \ {t1 , t2 } has at least five of its six vertices in D, and thus it is 2dominated by D. Clearly, both t1 and t2 are 2-dominated by D in each of the three cases. Hence, D is a 2-dominating set for D, and |D| = 3 = ⌊ 2n+2 5 ⌋. n = 9. Let D = {e1 , e3 , e5 , e7 }, i.e., |D| = 4 = ⌊ 2n+2 5 ⌋. All vertices of TP , except v9 , are in D. Moreover, any one of the seven triangles in TP has at least two of its vertices in D, since the only vertex of TP not in D is v9 . Therefore, D 2-dominates TP .  The following theorem describes our main result. Theorem 7 Every combinatorial triangulation graph TP of a polygon P with n ≥ 3 vertices can be 2n 2-dominated by ⌊ 2n+2 5 ⌋ combinatorial edge guards. Moreover, ⌊ 5 ⌋ combinatorial edge guards are sometimes necessary in order to 2-dominate TP . 6

Proof. In Lemma 6, we have shown the result for 3 ≤ n ≤ 9. By Lemma 5, there is a diagonal d that partitions TP into two triangulation graphs T1 and T2 , where T1 contains k boundary edges of TP , 5 ≤ k ≤ 8. Let v0 , . . . , vk be the k + 1 vertices of T1 , as we encounter them while traversing P in the counterclockwise sense, and let v0 vk be the common edge of T1 and T2 . For each value of k we are going to define an edge 2-dominating set D for TP . In what follows dij denotes the diagonal vi vj , whereas ei denotes the edge vi vi+1 . Consider each of the four values of k separately: v3

v2

v4

v3

v1

v2

v4

v2

v3

v1

v4

v3

v1

v2

v4

v3

v1

v2

v4

v1

v5

v0

v5

v0

v5

v0

v5

v0

v5

v0

v3

v2

v3

v2

v3

v2

v3

v2

v3

v2

v4

v1

v4

v1

v4

v1

v4

v1

v5

v0

v5

v0

v5

v0

v5

v0

v3

v2

v3

v2

v3

v2

v3

v2

v4

v1

v5

v0

v4

v1

v5

v0

v4

v1

v5

v0

v4

v4

v1

v5

v0

v1

v5

v0

Figure 3: Proof of Theorem 7. The case k = 5. The edge 2-dominating sets (thick solid edges) for the hexagons v0 v1 v2 v3 v4 v5 . From left to right: first two columns: δ0 > δ5 ; next two columns: δ0 < δ5 ; last column: δ0 = δ5 .

k = 5. |T2 | = n − 4, and by Lemma 2 there exists a 2-dominating set D0 (resp., D5 ) for T2 , consisting of f (n − 5) edge guards plus v0 (resp., v5 ), such that d 6∈ D0 (resp., d 6∈ D5 ). Let δi be the degree of vi in T1 , 0 ≤ i ≤ 5. Define the set D as follows (see also Fig. 3). If δ0 > δ5 , set D = D0 ∪ {e0 , e3 }. If δ0 < δ5 , set D = D5 ∪ {e1 , e4 }. In the case δ0 = δ5 we either have δ2 = 5 or δ3 = 5; if δ2 = 5, set D = D5 ∪ {e1 , e4 }, otherwise set D = D0 ∪ {e0 , e3 }. Clearly, |D| = f (n − 5) + 2 = ⌊ 2n+2 5 ⌋. k = 6. The presence of diagonals d05 or d16 would violate the minimality of k. Let t be the triangle supported by d in T1 . The apex v of this triangle should be v2 , v3 or v4 . The cases v ≡ v2 and v ≡ v4 are symmetric, so we only consider the cases v ≡ v2 and v ≡ v3 . Apply Lemma 2 on the triangulation graph T ′ = T2 ∪ {t}, with v as the chosen vertex, and vv6 as the edge to be excluded from the dominating set of T ′ . T ′ has n − 4 vertices, thus it has a 2-dominating set D ′ consisting of f (n − 5) edge guards and v. Consider the following cases (see also Fig. 4). First, if v0 v ∈ D ′ , set D = (D ′ \ {v0 v}) ∪ {e0 , e2 , e4 }. If v0 v 6∈ D ′ and v6 ∈ D ′ , set D = D ′ ∪ {e1 , e3 }. Finally, if v0 v 6∈ D′ and v6 6∈ D′ , set D = D′ ∪ {e2 , e4 } (notice that in this case v0 has to belong to D ′ ). In any of the above cases, D is an edge 2-dominating set of TP of size f (n − 5) + 2 = ⌊ 2n+2 5 ⌋. 7

v3

v3 v2

v4

v2

v4

v1

v5

v3 v2

v4

v1

v5

t v6

v3 v2

v2

v2

v2

v4

v1

v5

t

v1

v5

t

v6

v0

t

v6

v0

v0

v3

v4

v1

v5

t v6

v6

v0

v3

v4

v1

v5

t

v6

v0

v3

v4

v1

v5

t

v6

v0

v2

v4

v1

v5

t

v6

v0

v2

v4

v1

v5

t

v3

v3

v6

v0

v0

Figure 4: Proof of Theorem 7. The case k = 6. The possible triangulations for the heptagons v0 v1 v2 v3 v4 v5 v6 . Top row: the apex of t is v2 . Bottom row: the apex of t is v3 .

T2 v0 v1

v2

T2

d t

v8

v4

T ′′

T′

v3

v0 v7

v5

v6

v1

v2

T′ v3

T2

d t

v8

v4

T ′′

v0 v1

v7

v5

v2

v6

T2

d t

v8

v4

T ′′

T′

v3

v7

v5

d t

v0

v6

v1

v2

T′

t′ v3

v8 v7 T ′′

v4 v5

v6

Figure 5: Proof of Theorem 7. The case k = 8. Left three: δ4′ > 2. Right-most: δ4′ = δ4′′ = 2.

k = 7. The presence of diagonals d06 , d05 , d17 or d27 would violate the minimality of k. Let t be the triangle supported by d in T1 . The apex v of this triangle is either v3 or v4 . The two cases are symmetric, so we can assume without loss of generality that the apex of t is v3 . Consider the triangulation graph T ′ = T ∪ {t}. It has n − 5 vertices and, by our induction hypothesis, it ′ can be 2-dominated with f (n − 5) = ⌊ 2n+2 5 ⌋ − 2 edge guards. Let D be the 2-dominating set ′ ′ ′ of T . Consider the following cases. If d03 , d37 ∈ D , set D = (D \ {d03 , d37 }) ∪ {e0 , e2 , e3 , e6 }. If d03 ∈ D ′ whereas d37 6∈ D ′ , set D = (D ′ \ {d03 }) ∪ {e0 , e3 , e6 }. In the symmetric case, i.e., d03 6∈ D ′ , but d37 ∈ D′ , set D = (D′ \ {d37 }) ∪ {e0 , e3 , e6 }. Finally, if d03 , d37 6∈ D ′ , set D = D ′ ∪ {e2 , e4 }. Notice that in this latter case v3 cannot be in D′ , since either d03 or d37 would have to be in D′ . This, moreover, implies that both v0 and v7 have to be in D′ (i.e., ′ incident to an edge in D of the above cases D is an edge 2-dominating set for TP of  ). In any 2n+2 size |D| = ⌊ 5 ⌋ − 2 + 2 = ⌊ 2n+2 5 ⌋. k = 8. The presence of diagonals d07 , d06 , d05 , d18 , d28 or d38 would violate the minimality of k. Thus, the apex of the triangle t in T1 that is supported by d is v4 . Let T ′ (resp., T ′′ ) be the triangulation graphs of the polygon v0 v1 v2 v3 v4 (resp., v4 v5 v6 v7 v8 ). Let δ4′ (resp., δ4′′ ) be the degree of v4 in T ′ (resp., T ′′ ). We distinguish between the following cases (see also Fig. 5). If δ4′ > 2, apply Lemma 2 to T2 , with v8 as the chosen vertex and d as the 8

Figure 6: Five triangulation graphs T1 , T2 , T3 , T4 and T5 with n = 5m, n = 5m + 1, n = 5m + 2, n = 5m + 3 and n = 5m + 4 vertices, respectively (the central part of the graph is triangulated arbitrarily). All five triangulation graphs require at least ⌊ 2n 5 ⌋ edge guards in order to be guarded.

edge to be excluded from the dominating set of T2 . T2 has n − 7 vertices, thus it has a 2-dominating set D2 consisting of f (n − 8) edge guards and v8 . The set D = D2 ∪ {e1 , e4 , e7 } 2n+2 is an edge 2-dominating set of TP of size |D| = f (n − 8) + 3 = ⌊ 2n+1 5 ⌋ ≤ ⌊ 5 ⌋. The case ′′ ′ ′′ δ4 > 2, can be treated similarly. If δ4 = δ4 = 2, T1 contains the diagonals d03 and d58 . Let T3 = T2 ∪ {t, t′ }, where t′ is the triangle v0 v3 v4 . T3 has n − 5 vertices and, by our inductive hypothesis, can be guarded with f (n−5) = ⌊ 2n+2 5 ⌋−2 edge guards. Let D3 be its 2-dominating set. Consider the four cases: (1) d03 , d48 ∈ D3 ; set D = (D3 \ {d03 , d48 }) ∪ {e0 , e3 , e5 , e7 }. (2) d03 ∈ D3 , d48 6∈ D3 ; if v4 ∈ D3 , we must also have that e3 ∈ D3 , in which case set D = (D3 \ {d03 }) ∪ {e0 , e5 , e7 }; otherwise, i.e., if v4 6∈ D3 , we must have that v8 ∈ D3 , in which case set D = (D3 \ {d03 }) ∪ {e0 , e3 , e6 }. (3) d03 6∈ D3 , d48 ∈ D3 ; if v0 ∈ D3 , set D = (D3 \ {d48 }) ∪ {e2 , e4 , e7 }; otherwise, both v3 and v4 have to be in D3 , which implies that e3 ∈ D3 ; in this case, set D = (D3 \ {d48 }) ∪ {e0 , e5 , e7 }. (4) d03 , d48 6∈ D3 ; in this case v4 has to be in D3 , and since d48 6∈ D3 , we conclude that e3 ∈ D3 ; if v8 ∈ D3 , set D = D3 ∪ {e0 , e5 }; otherwise, i.e., if v8 6∈ D3 , v0 has to be in D3 , in which case set D = (D3 \ {e3 }) ∪ {e2 , e4 , e6 }. In each of the above four cases, D is an edge 2-dominating set D of TP of size ⌊ 2n+2 5 ⌋. We are now going to establish the lower bound. Consider the triangulation graphs T1 , T2 , T3 , T4 and T5 shown in Fig. 6 (top left, top middle, top right, bottom left and bottom right, respectively); the central part of these graphs is triangulated arbitrarily. T1 , T2 , T3 , T4 and T5 consist of n = 5m, n = 5m + 1, n = 5m + 2, n = 5m + 3 and n = 5m + 4 vertices, respectively, and require two edge 9

guards per hexagon shown in light gray. Moreover, T1 , T2 and T3 require two more edge guards for the hexagon, heptagon and octagon, respectively, shown in dark gray, whereas T4 and T5 requires three more edge guards for the nonagon and decagon shown in dark gray. Hence, T1 , T2 , T3 , T4  and T5 require ⌊ 2n 5 ⌋ edge guards in order to be 2-dominated.

3

Guarding piecewise convex polygons

Let us now consider piecewise convex polygons. We start with a few definitions. Let v1 , . . . , vn be a sequence of points and a1 , . . . , an a set of curved arcs, such that ai has as endpoints the points vi and vi+1 . 1 . We will assume that the arcs ai and aj , i 6= j, do not intersect, except when j = i − 1 or j = i + 1, in which case they intersect only at the points vi and vi+1 , respectively. We define a curvilinear polygon P to be the region of the plane delimited by the arcs ai . The points vi are called the vertices of P . An arc ai is a convex arc if every line on the plane intersects ai at at most two points. A polygon is called a piecewise convex polygon, if every arc is a convex arc and for every point q in the interior of an arc ai of the polygon, the interior of the polygon is locally on the same side as the arc ai with respect to the line tangent to ai at q (see Fig. 7(top left)). Let ai be an edge of a piecewise convex polygon P with endpoints vi and vi+1 . We call the convex region ri delimited by ai and the line segment vi vi+1 a room. A room is called degenerate if the arc ai is a line segment. A line segment pq, where p, q ∈ ai is called a chord. The chord of a room ri is defined to be the line segment vi vi+1 connecting the endpoints of the corresponding arc ai . An empty room is a non-degenerate room that does not contain any vertex of P in the interior of ri or in the interior of the chord vi vi+1 . A non-empty room is a non-degenerate room that contains at least one vertex of P in the interior of ri or in the interior of the chord vi vi+1 . A piecewise convex polygon every room of which is empty is called a simple piecewise convex polygon. A simple piecewise convex polygon P is naturally associated with a linear polygon, namely the linear polygon defined by the vertices of P . We call this linear polygon the skeleton linear polygon LP of P or simply the skeleton polygon of P . Finally, given a simple piecewise convex polygon, we define its triangulation graph TP to be the triangulation graph of its skeleton polygon LP . We say that a point p inside the interior of a piecewise convex polygon P is visible from a point q if the linear segment pq lies in the closure of P . We say that P is guarded by a guarding set G if every point in P is visible from at least one point belonging to some guard in G. An edge guard/mobile guard is an edge/diagonal of P belonging to some edge guarding set G of P . An edge/mobile guarding set is a guarding set that consists of only edge/mobile guards. Let us now consider a piecewise convex polygon P with n ≥ 3 vertices. We are going to construct a combinatorial triangulation graph TP associated with P , and then use TP to compute a guarding set for P . TP has some constrained edges; the remaining edges can be computed by means of any polygon triangulation algorithm (consult also Fig. 7(top right and bottom two)). Consider a convex arc ai of P , with endpoints vi and vi+1 . Let ri be the room corresponding to ai . If ai is a non-empty room, let Xi be the set of vertices of P that lie in the interior of the chord vi vi+1 of ri , and let Ri be the set of vertices of P in the interior of ri or belong to Xi . If Ri 6= Xi , let Ci be the set of vertices in the convex hull of the vertex set (Ri \ Xi ) ∪ {vi , vi+1 }; if Ri = Xi , let Ci = Xi ∪ {vi , vi+1 }. Finally, let Ci∗ = Ci \ {vi , vi+1 }. If ri is an empty room, let Ci = {vi , vi+1 } and Ci∗ = ∅. Let TP be the sought for triangulation graph of P . The vertex set of TP is the set of vertices of P . The edges of TP are defined as follows: 1

Indices considered to be evaluated modulo n.

10

Figure 7: Top left: a piecewise convex polygon P . Top right: the triangulation graph TP of P . The boundary edges of TP are shown as thick solid lines. The crescent subpolygons of P are shown in light gray, whereas the star subpolygons of P are shown in dark gray. Bottom: two mobile guarding sets, shown as thick dashed or solid curves. Bottom left/right: the 2-dominating set GTP contains/does not contain a weak diagonal.

• If ai is a linear segment or ri is an empty room, the linear segment (vi , vi+1 ) is an edge in TP . • If ri is a non-empty room, the following edges or diagonals belong to TP : 1. (vi , vi+1 ), 2. (ci,j , ci,j+1 ), 1 ≤ j ≤ Ki − 1, where Ki is the cardinality of Ci , ci,1 = vi , ci,Ki = vi+1 , whereas the remaining ci ’s are the vertices of P in Ci∗ as we encounter them when walking inside ri and on the convex hull of the point set Ci from vi to vi+1 , and 3. (vi , ci,j ), 3 ≤ j ≤ Ki − 1, provided that Ki ≥ 4. We call these edges weak diagonals. The diagonals (ci,j , ci,j+1 ), 1 ≤ j ≤ Ki −1 can be embedded as straight line segments, whereas the diagonals (vi , ci,j ), 3 ≤ j ≤ Ki − 1, can only be embedded as curved segments. Finally, the edge (vi , vi+1 ) is embedded as a curved segment, namely, the arc ai . The edges (vi , vi+1 ), along with the edges (ci,j , ci,j+1 ), 1 ≤ j ≤ Ki − 1, partition P into subpolygons of two types: (1) subpolygons that lie entirely inside a non-empty room, called crescents, and (2) subpolygons delimited by edges of the polygon P , as well as edges of the type (ci,1 , ci,2 ) and (ci,Ki −1 , ci,Ki ), called stars. Note that if P is a simple piecewise convex polygon, it does not give rise to any crescents. Furthermore, its edges form a single star, namely the skeleton polygon LP of P . In general a piecewise convex polygon may only have crescents, or only stars, or both. The crescents are (combinatorially) triangulated by means of the edges (vi , ci,j ), 3 ≤ j ≤ Ki − 1. To finish the definition of the triangulation graph TP , we simply need to triangulate all stars inside P . These diagonals can clearly be embedded as linear segments. 11

In direct analogy to the types of subpolygons we can have inside P , we have two possible types of triangles in TP : (1) triangles inside stars, called star triangles (these are triangles that are embedded with straight-line segments), and (2) triangles inside a crescent, called crescent triangles. Crescent triangles have at least one edge that is a weak diagonal, except when the number of vertices of P in the interior of the corresponding room is exactly one. A crescent triangle that has at least one weak diagonal among its edges is called a weak triangle. Let GTP be a diagonal 2-dominating set of TP . By Theorem 4, |GTP | ≤ ⌊ n+1 3 ⌋. Based on GTP we define a set G of diagonals of P as follows: (1) add to G every non-weak diagonal of GTP , and (2) for every weak diagonal in GTP , add to G the edge of P delimiting the crescent that contains the weak edge. Clearly, |G| ≤ |GTP | ≤ ⌊ n+1 3 ⌋. The following lemma claims that the set G defined above is a mobile guarding set of P . Lemma 8 Let P be a piecewise convex polygon with n ≥ 3 vertices, TP its constrained triangulation graph, and GTP a combinatorial diagonal 2-dominating set of TP . Then the set G of mobile guards defined by mapping every non-weak edge of GTP to itself, and every weak edge e of GTP to the corresponding convex arc of P delimiting the crescent that contains e, is a mobile guarding set for P. Proof. Let q be a point in the interior of P . q is either inside an empty room of P or inside some triangle of TP . First, consider the case that q lies in the interior of an empty room ri of P . The chord vi vi+1 of ri supports a triangle t of TP , and let v be the third vertex of t. If either vi or vi+1 is in G, then q is guarded by either vi or vi+1 , respectively. Otherwise, at least one of vi , vi+1 , say vi , is an endpoint of a weak diagonal d in GTP . Let rℓ be the room containing d. Since d ∈ GTP , we have that aℓ ∈ G, which implies that vi cannot be an endpoint of aℓ . In other words, vi ∈ Cℓ∗ , i.e., vi ≡ cℓ,j for some j. But then ri lies inside the cone with apex cℓ,j , delimited by the rays cℓ,j cℓ,j−1 and cℓ,j cℓ,j+1 , and containing the vertices vℓ and vℓ+1 . In this case, q is visible from the intersection of the line qvi with aℓ , i.e., q is guarded by aℓ . Suppose now that q lies inside a triangle t of TP . Let u1 , u2 and u3 be the three vertices of t. Consider first the case that t is a star triangle or a non-weak crescent triangle (the latter can happen if q is inside a room ri with |Ci∗ | = 1). q is visible by at least two of the three vertices of t, say u1 and u2 . At least one of u1 and u2 is in GTP , say u1 . If u1 is in G then q is guarded by u1 . Otherwise, u1 is an endpoint of a weak diagonal d in GTP . Let rℓ be the room containing d. Since d ∈ GTP , we have that aℓ ∈ G, which implies that u1 cannot be an endpoint of aℓ . In other words, u1 ∈ Cℓ∗ , i.e., u1 ≡ cℓ,j for some j. But then q lies inside the cone with apex cℓ,j , delimited by the rays cℓ,j cℓ,j−1 and cℓ,j cℓ,j+1 , and containing the vertices vℓ and vℓ+1 . Since, q is visible from the intersection of the line qu1 with aℓ , we conclude that q is guarded by aℓ . The last scenario to be considered is the one in which q lies inside a weak crescent triangle. In this case q lies inside a non-empty room ri , in which case q is visible by at least two consecutive vertices ci,j and ci,j+1 of Ci . ci,j and ci,j+1 are vertices of some weak crescent triangle t inside ri , and at least one of the two belongs to GTP , say ci,j . If ci,j is also in G, then q is guarded by ci,j . Otherwise, ci,j is an endpoint of a weak diagonal d in GTP . If d is a weak diagonal inside ri , then ai ∈ G, which implies that ai guards q. Otherwise, d lies inside some room rℓ , ℓ 6= i. Since d ∈ GTP , we have that aℓ ∈ G, which implies that ci,j cannot be an endpoint of aℓ . In other words, ci,j ∈ Cℓ∗ , i.e., ci,j ≡ cℓ,m for some m. But then q lies inside the cone with apex cℓ,m , delimited by the rays cℓ,m cℓ,m−1 and cℓ,m cℓ,m+1 , and containing the vertices vℓ and vℓ+1 . Since, q is visible from the intersection of the line qcℓ,m with aℓ , we conclude that q is guarded by aℓ .  12

An immediate consequence of Lemma 8 is the following theorem. The case n = 2 can be trivially established. Theorem 9 Let P be a piecewise convex polygon with n ≥ 2 vertices. Then ⌊ n+1 3 ⌋ mobile guards are always sufficient in order to guard P . Moreover, since the size of TP is n, we can guard TP with ⌊ 2n+2 5 ⌋ combinatorial edge guards. This yields the following theorem. Theorem 10 Let P be a piecewise convex polygon with n ≥ 2 vertices. Then ⌊ 2n+2 5 ⌋ edge guards are always sufficient in order to guard P . Proof. If n = 2, define G so as to contain any of the two edges of P . G is clearly an edge guarding set for P . In the remainder of the proof we assume that n ≥ 3. Let G be an edge 2-dominating set for the combinatorial triangulation graph TP of P . By Theorem 7, |G| ≤ ⌊ 2n+2 5 ⌋. It suffices to show that G is a guarding set for P . Let q be a point in the interior of P . We are going to show that it is visible from at least one edge in G. q is either inside an empty room of P or inside some triangle of TP . Assume first that q is not contained in some empty room of P . Let t be the triangle that contains q (if q is contained in more than one triangle, choose any one of them arbitrarily). If t is a weak triangle, then q is contained inside the crescent corresponding to some non-empty room ri of P . q is visible by at least two consecutive vertices ci,j and ci,j+1 in Ci . Every triangle in G has at least two of its vertices in its 2-dominating set, which implies that two among the three vertices vi , ci,j and ci,j+1 have to be in G. But then at least one of ci,j and ci,j+1 is in G, and consequently guards q. Suppose now that the triangle t that contains q is a crescent triangle, but not a weak triangle, i.e., q is contained inside the crescent of some room ri , with |Ci∗ | = 1. In this case q is visible by ci,1 and by at least one of vi and vi+1 . Since at least two of vi , vi+1 and ci,1 belong to G, q is guarded by at least one of vi , vi+1 and ci,1 . Let us assume now that q is inside a star triangle t of TP . Then q is visible by all three vertices of t and since at least two of them are in G, we conclude that q is guarded by some edge in G. Finally, consider the case that q lies in the interior of an empty room ri of P . The chord vi vi+1 of ri supports a triangle t of TP . Since q is visible by both vi and vi+1 , and at least two of the vertices of t belong to G, we conclude that q is guarded by at least one of vi and vi+1 .  We end this section by presenting a simple piecewise convex polygon that requires ⌊ n3 ⌋ edge or mobile guards in order to be guarded. Consider the simple piecewise convex polygon P of Fig. 8. Each spike consists of three edges, two of which are linear and one of which is a convex arc. In order for points in the room of the convex arc to be guarded, either one of the three edges of the spike, or a diagonal, at least one endpoint of which is an endpoint of the convex arc, has to be in any guarding set of P . Notice that the chosen edge or diagonal cannot guard any other room of P . Since P consists of k spikes, yielding n = 3k vertices, we need at least k edge or mobile guards to guard P . We, thus, conclude that P requires at least ⌊ n3 ⌋ edge or mobile guards in order to be guarded.

4

Conclusion

In this paper we have dealt with the problem of guarding piecewise convex polygons with edge or mobile guards. If mobile guards are used we have shown that ⌊ n+1 3 ⌋ guards are always sufficient 13

Figure 8: The lower bound construction: the polygon shown contains n = 3k vertices, and requires k = ⌊ n3 ⌋ edge or mobile guards in order to be guarded.

and ⌊ n3 ⌋ guards are sometimes necessary, whereas if edge guards are used the number of guards that suffice in order to guard the polygon increases to ⌊ 2n+2 5 ⌋. Our proof technique first transforms the problem of guarding the curvilinear polygon to the problem of 2-dominating an appropriately defined combinatorial triangulation graph. Once a 2-dominating set has been found for the combinatorial triangulation graph, we either prove that this is also a guarding set for the curvilinear polygon (this is the case for edge guards) or we map the 2-dominating set to a mobile guarding set for the curvilinear polygon. In the case of edge guards, the piecewise convex polygon is actually guarded by the endpoints of the edges in the guarding set. In the case of mobile guards interior points of the edges may are also be needed in order to guard the interior of the polygon. The latter observation should be contrasted against the corresponding results for the class of linear polygons, where, for both edge and mobile guards, the polygon is essentially guarded by the endpoints of these guards (cf. [O’R87]). Another very important remark, due to Theorem 7, is that the proof technique of this paper cannot possibly yield better results for the edge guarding problem. If we are to close the gap between the upper and lower bounds, a much more geometric technique will have to used. Although we have restricted our attention to the class of piecewise convex polygons, it would be interesting to attain similar results for piecewise concave polygons (i.e., curvilinear polygons the edges of which are convex arcs pointing towards the interior of the polygon), for locally convex/concave polygons (i.e., curvilinear polygons that are locally convex/concave except possibly at the vertices), or for curvilinear polygons with holes.

References [Agg84]

Alok Aggarwal. The art gallery problem: Its variations, applications, and algorithmic aspects. PhD thesis, Dept. of Comput. Sci., Johns Hopkins University, Baltimore, MD, 1984.

14

[BS98]

I. Bjiorling-Sachs. Edge guards in rectilinear polygons. Computational Geometry: Theory and Applications, 11(2):111–123, 1998.

[BT07]

Jean-Daniel Boissonnat and Monique Teillaud, editors. Effective Computational Geometry for Curves and Surfaces. Mathematics and Visualization. Springer, 2007.

[CGL+ 89]

C. Coullard, B. Gamble, W. Lenhart, W. Pulleyblank, and G. Toussaint. On illuminating a set of disks. Manuscript, 1989.

[CGRC+ 95] J. Czyzowicz, B. Gaujal, E. Rivera-Campo, J. Urrutia, and J. Zaks. Illuminating higher-dimensionall convex sets. Geometriae Dedicata, 56:115–120, 1995. [Chv75]

V. Chv´atal. A combinatorial theorem in plane geometry. J. Combin. Theory Ser. B, 18:39–41, 1975.

[CRCUZ94] J. Czyzowicz, E. Rivera-Campo, J. Urrutia, and J. Zaks. Protecting convex sets. Graphs and Combinatorics, 19:311–312, 1994. [CRCUZ95] J. Czyzowicz, E. Rivera-Campo, J. Urrutia, and J. Zaks. Illuminating and guarding segments in the plane. Discrete Math., 137:147–153, 1995. [Fis78]

S. Fisk. A short proof of Chv´atal’s watchman theorem. J. Combin. Theory Ser. B, 24:374, 1978.

[GHKS96]

E. Gy¨ori, F. Hoffmann, K. Kriegel, and T. Shermer. Generalized guarding and partitioning for rectilinear polygons. Comput. Geom. Theory Appl., 6:21–44, 1996.

[KT07]

M. I. Karavelas and E. P. Tsigaridas. Guarding curvilinear art galleries with vertex or point guards. Research Report 6132, INRIA, Feb 2007.

[O’R83]

J. O’Rourke. Galleries need fewer mobile guards: a variation on Chv´atal’s theorem. Geom. Dedicata, 14:273–283, 1983.

[O’R87]

J. O’Rourke. Art Gallery Theorems and Algorithms. The International Series of Monographs on Computer Science. Oxford University Press, New York, NY, 1987.

[She92]

T. C. Shermer. Recent results in art galleries. Proc. IEEE, 80(9):1384–1399, September 1992.

[UZ89]

J. Urrutia and J. Zaks. Illuminating convex sets. Technical Report TR-89-31, Dept. Comput. Sci., Univ. Ottawa, Ottawa, ON, 1989.

15