Take five points on a plane so that no three are collinear (the general position). Then there will be four points that make a convex quadrilateral. This is known as the Happy End Problem.
If you want to guarantee a pentagon in random points, you need at least nine points in the general position. Here are eight points (in the general position) without a pentagon:
In[]:=
p8={{18,18},{342,18},{18,342},{126,99},{261,126},{234,261},{342,342},{99,234}};Graphics[Point[p8]]
Out[]=
For a hexagon, 17 points are needed. Here are 16 points without a convex hexagon:
p16={{19.0,195.0},{254.0,21.0},{490.0,196.0},{401.0,475.0},{110.0,478.0},{250.91,273.5},{117.02,351.74},{405.12,378.42},{272.43,140.14},{91.92,243.27},{413.49,319.73},{228.64,214.02},{256.28,93.63},{116.17,283.71},{245.37,234.68},{407.52,336.4}};Graphics[Point[p16]]
Out[]=
In a related problem, how many points (in the general position) are needed to guarantee an empty convex n-gon exists, without any other points inside of it? For quadrilaterals, the answer is still 5.
For pentagons, in 1978 Harborth proved that nine points could fail to have an empty convex pentagon with the following figure, and further proved that ten points (in the general position) would always have an empty pentagon.
In[]:=
p9={{28,223},{112,178},{251,129},{159,108},{92,105},{535,91},{294,71},{112,34},{25,0}};Graphics[Point[p9]]
Out[]=
In 2002, Overmars found a set of 29 points in the general position such that any convex hexagon of points contained another point. Here’s a massaged list of the points:
In[]:=
pts={{1,1260},{1259,320},{37,0},{16,743},{754,697},{777,194},{22,531},{306,592},{396,613},{496,579},{552,502},{516,467},{371,487},{310,531},{366,552},{392,575},{446,565},{489,537},{492,502},{450,498},{374,525},{410,539},{426,526},{449,518},{458,526},{453,542},{434,552},{416,550},{436,535}};
For the massage, I used these two tricks on the given points to get a list of polygon shells. Might be a useful function.
MeshCoordinates[ConvexHullMesh[pts]];Flatten[(Drop[Last[FindShortestTour[pts[[#]]]],-1]+First[#]-1)&/@TakeList[Range[28],{3,4,7,7,7}]];
Here’s a picture of the 29 points:
In[]:=
Graphics[{White,{EdgeForm[RandomColor[]],Polygon[pts[[#]]]}&/@TakeList[Range[28],{3,4,7,7,7}],Black,Point[pts]}]
Out[]=
For 22 years, it’s been an open question whether the same could be done with 30 points. In the new paper by Heule and Scheucher, Happy Ending: An Empty Hexagon in Every Set of 30 Points, they resolve the question. The answer is No. A very nice paper.
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Happy ending problem: n-gons in generally positioned n points
by Ed Pegg
Wolfram Community, STAFF PICKS, March 4, 2024
https://community.wolfram.com/groups/-/m/t/3134763
by Ed Pegg
Wolfram Community, STAFF PICKS, March 4, 2024
https://community.wolfram.com/groups/-/m/t/3134763