Skip to main content

Covering Polygons with Rectangles

  • Conference paper
  • First Online:
Theory and Applications of Models of Computation (TAMC 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10185))

Abstract

A well-known and well-investigated family of hard optimization problems deals with nesting, i.e., the non-overlapping placing of polygons to be cut from a rectangle or the plane whilst minimizing the waste. Here we consider the in some sense inverse problem of a subsequent step in production technology: given a set of polygons in the plane and an axis-aligned rectangle (modeling a gripping device), we seek the minimum number of copies of the rectangle such that every polygon is completely covered by at least one copy of the rectangle. As motions of the given rectangle for obtaining the copies we investigate the cases of translation in x-direction, of arbitrary translation and of arbitrary translation combined with rotation. We give a generic algorithm for all three cases which leads to a polynomial-time algorithm for the first case. The other two cases are NP-hard so we introduce a rather straightforward algorithm for the second case and two different approaches to the third one. Finally, we give experimental results and compare them to the theoretical analysis done before.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Brönnimann, H., Goodrich, M.T.: Almost optimal set covers in finite vc-dimension. Discrete Comput. Geom. 14(4), 463–479 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  2. Chazelle, B.: The polygon containment problem. Adv. Comput. Res. 1, 1–33 (1983)

    Google Scholar 

  3. Clarkson, K.L., Varadarajan, K.R.: Improved approximation algorithms for geometric set cover. Discrete Comput. Geom. 37(1), 43–58 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  4. Culberson, J.C., Reckhow, R.A.: Covering polygons is hard. In: 29th Annual Symposium on Foundations of Computer Science, pp. 601–611. IEEE Computer Society (1988)

    Google Scholar 

  5. de Berg, M., Cabello, S., Har-Peled, S.: Covering many or few points with unit disks. Theory Comput. Syst. 45(3), 446–469 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  6. de Berg, M., Cheong, O., van Kreveld, M., Overmars, M.: Computational Geometry, 3rd edn. Springer, Heidelberg (2008)

    Book  MATH  Google Scholar 

  7. Dickerson, M., Scharstein, D.: Optimal placement of convex polygons to maximize point containment. Comput. Geom. 11(1), 1–16 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  8. Dowsland, K.A., Dowsland, W.B.: Solution approaches to irregular nesting problems. Eur. J. Oper. Res. 84(3), 506–521 (1995)

    Article  MATH  Google Scholar 

  9. Fowler, R.J., Paterson, M., Tanimoto, S.L.: Optimal packing and covering in the plane are np-complete. Inf. Process. Lett. 12(3), 133–137 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  10. Gibbons, A., Rytter, W.: Efficient Parallel Algorithms. Cambridge University Press, Cambridge (1988)

    MATH  Google Scholar 

  11. Glück, R.: Covering polygons with rectangles. In: Proceedings of the EuroCG 2016 (2016)

    Google Scholar 

  12. Hegedüs, A.: Algorithms for covering polygons by rectangles. Comput.-Aided Des. 14(5), 257–260 (1982)

    Article  Google Scholar 

  13. Heinrich-Litan, L., Lübbecke, M.E.: Rectangle covers revisited computationally. ACM J. Exp. Algorithmics 11 (2006)

    Google Scholar 

  14. Hochbaum, D.S., Maass, W.: Approximation schemes for covering and packing problems in image processing and VLSI. J. ACM 32(1), 130–136 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  15. Kumar, V.S.A., Ramesh, H.: Covering rectilinear polygons with axis-parallel rectangles. In: Vitter, J.S., Larmore, L.L., Leighton, F.T. (eds.) Proceedings of the Thirty-First Annual ACM Symposium on Theory of Computing, pp. 445–454. ACM (1999)

    Google Scholar 

  16. Preparata, F.P., Shamos, M.I.: Computational Geometry - An Introduction. Texts and Monographs in Computer Science. Springer, New York (1985)

    Book  MATH  Google Scholar 

  17. Reif, J.H.: Synthesis of Parallel Algorithms. Morgan Kaufmann Publishers Inc., San Mateo (1993)

    Google Scholar 

  18. Shamos, M.I.: Computational Geometry. PhD thesis, Yale University (1978)

    Google Scholar 

Download references

Acknowledgments

The author is grateful to Torben Hagerup, Christian Rähtz, Lev Sorokin and the anonymous reviewers for valuable remarks.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roland Glück .

Editor information

Editors and Affiliations

A Deferred Proofs

A Deferred Proofs

1.1 A.1 Proof of Lemma 1

Proof

Let p be an arbitrary point of \(\mathbf {P}\) with minimum x-coordinate. Then there is a rectangle \(R_j\in \mathbf {C}\) containing p. Translating this rectangle in positive x-direction till p lies on its left side we obtain a rectangle \(R_j'\) with the required properties.

1.2 A.2 Proof of Lemma 2

Proof

Let \(p_1\) be a point of \(\mathbf {P}\) with minimum x-coordinate and \(P_1\) a polygon of \(\mathbf {P}\) which has \(p_1\) as a vertex. Then there is a rectangle \(R_j\in \mathbf {C}\) containing \(P_1\). Now we translate \(R_j\) in positive x-direction till \(p_1\) lies on the left side of the translated rectangle \(\hat{R}_j\). Clearly, we have \(\mathsf{cov}(\hat{R}_j,\mathbf {P})\supseteq \mathsf{cov}(R_j,\mathbf {P})\). Subsequently, we translate \(\hat{R}_j\) in negative y-direction till a point \(p_2\) with the following properties lies on the upper side of the translated rectangle \(R_j'\):

  1. 1.

    All polygons of \(\mathbf {P}\) in \(\hat{R}_j\) with \(p_2\) as a vertex are contained in \(R_j'\), and

  2. 2.

    \(p_2\) is a point with maximum y-coordinate fulfilling the above requirements.

Then we have \(\mathsf{cov}(R_j',\mathbf {P})\supseteq \mathsf{cov}(\hat{R}_j,\mathbf {P})\supseteq \mathsf{cov}(R_j,\mathbf {P})\), so \(\mathbf {C}\backslash \{R_j\}\cup \{R_j'\}\) is indeed an optimal translational cover of \(\mathbf {P}\). Moreover, \(p_1\), \(p_2\) and \(P_1\) meet their requirements by construction, and for \(P_2\) we can chose an arbitrary polygon that has \(p_2\) as a vertex and is contained in \(R_j'\).

In Fig. 1, \(R_j\) corresponds to the dotted rectangle, \(\hat{R}_j\) to the dashed one, and the final rectangle \(R_j'\) is drawn with a full line.

1.3 A.3 Proof of Lemma 3

Proof

Let \(R_j\in \mathbf {C}\) be a rectangle containing \(P_{pi}\). We apply to \(R_j\) similar translations as in Lemma 2 but do not translate in x- and y-direction but in directions parallel to adjacent sides of \(R_j\). Doing so, we end up with a rectangle \(\hat{R}_j\) and two (not necessarily distinct!) points \(p_1\) and \(p_2\) with the following properties:

  1. 1.

    \(\hat{R}_j\) contains \(P_{pi}\),

  2. 2.

    \(p_1\) and \(p_2\) lie on adjacent sides of \(\hat{R}_j\),

  3. 3.

    \(\mathsf{cov}(\hat{R}_j,\mathbf {P})\supseteq \mathsf{cov}(R_j,\mathbf {P})\), and

  4. 4.

    there are polygons \(P_1,P_2\in \mathbf {P}\) such that for \(i\in \{1,2\}\), \(p_i\) is a vertex of \(P_i\) and \(P_i\) is contained in \(\hat{R}_j\).

Now we perform a general motion of \(\hat{R}_j\) combined of a clockwise rotation and suitable translation which keeps \(p_1\) and \(p_2\) on their respective sides. There are two cases:

  1. 1.

    \(p_1\) and \(p_2\) coincide. Then the described general motion is a simple rotation of \(\hat{R}_j\) around \(p_1\). This rotation is continued until a point \(p_3\) lies on a side of the resulting rectangle \(R_j'\) such that the following properties hold:

    1. (a)

      \(R_j'\) contains \(P_{pi}\),

    2. (b)

      there are polygons \(P_1,P_3\in \mathbf {P}\) such that for \(i\in \{1,3\}\) \(p_i\) is a vertex of \(P_i\) and \(P_i\) is contained in \(R_j'\), and

    3. (c)

      \(\mathsf{cov}(R_j',\mathbf {P})\supseteq \mathsf{cov}(\hat{R}_j,\mathbf {P})\).

  2. 2.

    \(p_1\) and \(p_2\) are distinct. Here we continue the general motion till one of the following two cases concerning the resulting rectangle \(R_j'\) occurs:

    1. (a)

      \(p_1\) or \(p_2\) coincide with a vertex \(p_3\) of \(R_j'\), or

    2. (b)

      there is a point \(p_3\) on a side of \(R_j'\) such that

      1. i

        \(R_j'\) contains \(P_{pi}\),

      2. ii

        there are polygons \(P_1,P_2,P_3\in \mathbf {P}\) such that for \(i\in \{1,2,3\}\) \(p_i\) is a vertex of \(P_i\) and \(P_i\) is contained in \(R_j'\), and

      3. iii

        \(\mathsf{cov}(R_j',\mathbf {P})\supseteq \mathsf{cov}(\hat{R}_j,\mathbf {P})\).

Now, after possibly necessary renamings, \(p_1\), \(p_2\) and \(p_3\) together with \(R_j'\) meet the requirements of the lemma.

An example situation of the proof above is shown in the left part of Fig. 2: the dotted rectangle corresponds to \(R_j\), the dashed one to \(\hat{R}_j\) and the fully lined to \(R_j'\). Moreover, \(P_1\) is the left triangle while \(P_2\) and \(P_3\) coincide here in the right triangle. \(p_1\) equals the point of the left triangle lying on the rectangle and \(p_2\) and \(p_3\) are the points of the right triangle lying on the rectangle. An extreme situation where \(p_1\) and \(p_2\) coincide with two opposite vertices of \(R_j\) is illustrated by the right part of the same figure (note that two opposite vertices of a rectangle lie on adjacent sides).

1.4 A.4 Upper Bound of the Branching Degree for the General Case

Let the candidate rectangles for the general case be computed as described in Subsect. 7.1, and let us replace \(n_{pi}\) by n for better readability. According to Sperner’s theorem, there are at most \({\left( {\begin{array}{c}n\\ \lfloor (n/2\rfloor \end{array}}\right) }\) inclusion-maximal coverable sets containing \(P_{pi}\). Ignoring the asymptotically irrelevant Gaussian brackets and expanding the binomial coefficient yields \(\frac{n!}{(n/2)!^2}\) which amounts in the asymptotically view to \(\frac{\sqrt{2\pi n}\,\left( \frac{n}{e}\right) ^{n}}{\left( \sqrt{2\pi n/2}\,\left( \frac{n/2}{e}\right) ^{n/2}\right) ^2}\) by Stirling’s formula. Elementary calculus leads now to the result from Subsect. 7.1.

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Glück, R. (2017). Covering Polygons with Rectangles. In: Gopal, T., Jäger , G., Steila, S. (eds) Theory and Applications of Models of Computation. TAMC 2017. Lecture Notes in Computer Science(), vol 10185. Springer, Cham. https://doi.org/10.1007/978-3-319-55911-7_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-55911-7_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-55910-0

  • Online ISBN: 978-3-319-55911-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics