TECH-MUSINGS

Thoughts On Algorithms, Geometry etc...

Wednesday, December 30, 2020

Breaking Pieces from Polygons

Basic Question: Given a unit area 2D region R and a number n, to cut n pieces of a specified type from R so that the maximum fraction of R comes off.

A simple minded greedy algorithm would be to cut the biggest possible piece of the desired type from what is left of R n times.

Case 1: If the pieces ought to be triangles, greedy fails.

Example.



Consider the octagon shown above to be R - it has area 34 units - and let the pieces to be cut be squares and let n = 17.

To the right is shown is the greedy cut. The biggest square that can be cut from the octagon in first step is 5X5 (yellow). Once it is taken off, one is condemned to cut only 0.5X0.5 squares. Cutting 16 of them uses only 4 more units of area from the octagon, thus leaving out an area of 5 units as waste.

To the left is a better cut that begins with a 4X4 square in the middle (yellow)and then 16 1X1 squares can be cut as shown and that wastes only the 4 red triangular pieces with total area only 2 units - this is clearly better than greedy.

Case 2: If the pieces ought to be triangles, again greedy fails.

Example.




Figure above shows a pentagon got by slightly pulling out one of the sides of a square. The biggest triangle that can be cut off from this pentagon is the one bounded by the red lines. If n =2, starting with this biggest triangle broken off obviously gives an inferior result than the  partition achieved by the two black dashed lines.

Case 3: What if n circles are to be cut? I do not yet have a ready counter example for greedy in this case!

Update (Jan4th 2021): 3 actually has quite a neat answer - a counter example. See here: 
https://mathoverflow.net/questions/380035/on-cutting-disks-from-planar-regions

Thanks to J J Green!

0 Comments:

Post a Comment

<< Home