P82 · Packing and covering · Classic · Hard

Equal circles in regular polygons · m = 6 · n = 31

Pack n equal circles into the true regular m-gon with centre (1,1), circumradius 1 and first vertex (2,1), maximising their radius.

Instancem = 6 · n = 31
ObjectiveMaximize circle radius

Formal definition

  • ContainerThe editor and certificate normalize to the true regular m-gon with centre (1,1), circumradius 1 and first vertex (2,1). This is a coordinate convention only; scores use the literature's unit-piece scale. Boundary contact is allowed.
  • SubmissionSubmit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4.
  • ConstraintsExactly n congruent shapes lie wholly in the container with pairwise disjoint interiors. Polygon rotations are independent, not limited to quarter turns.
  • PrecisionInput decimals are exact rationals; regular-polygon vertices are algebraic, not rounded templates. Feasibility has no floating-point tolerance. A finite-decimal certificate is not a continuous optimality proof.
  • ObjectiveCircle radius r, larger is better; the container circumradius is 1.
Open the full editor
VERIFIED CONSTRUCTIONVERIFIED CONSTRUCTION

Getting a feel for it

Source and certificate

External targets are converted with their printed precision; decimal coordinate certificates are separate. Reconstruction loss never lowers the literature target, and a source construction is not automatically an optimality proof.

Source
The record-holding arrangement for Equal circles in regular polygons m = 6 · n = 31, 0.144498617
Current leader

0.144498617

circle radius

Answer sourceEckard Specht
Solution methodPublished reference construction
Challenge this record Submit a proof / idea Share a proof or idea in the discussion. Accepted contributions can earn proof points.
Record holder's solver noteNo solver note yet (expand)

The record holder has not shared a solver note yet.

ANSWER FORMAT

How to write your answer

the true regular m-gon with centre (1,1), circumradius 1 and first vertex (2,1)

Submit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4.

The current leader's answer

{
  "placements": [
    {
      "turn": "0",
      "x": "0.642108169",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "0.931105406",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "1.220102643",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "1.484255699",
      "y": "0.395701905"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "0.499442102"
    },
    {
      "turn": "0",
      "x": "0.786606787",
      "y": "0.528752164"
    },
    {
      "turn": "0",
      "x": "1.075604024",
      "y": "0.528752164"
    },
    {
      "turn": "0",
      "x": "1.339757081",
      "y": "0.645980854"
    },
    {
      "turn": "0",
      "x": "1.628754318",
      "y": "0.645980854"
    },
    {
      "turn": "0",
      "x": "0.311351251",
      "y": "0.749721051"
    },
    {
      "turn": "0",
      "x": "0.600348488",
      "y": "0.749721051"
    },
    {
      "turn": "0",
      "x": "0.931105406",
      "y": "0.779031113"
    },
    {
      "turn": "0",
      "x": "1.195258462",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "1.484255699",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "1.773252937",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "0.166852633",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "0.744847107",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "1.150232234",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "1.439229471",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "1.728226708",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "0.311351251",
      "y": "1.250278949"
    },
    {
      "turn": "0",
      "x": "0.600348488",
      "y": "1.250278949"
    },
    {
      "turn": "0",
      "x": "0.885455103",
      "y": "1.297540150"
    },
    {
      "turn": "0",
      "x": "1.583728090",
      "y": "1.432006862"
    },
    {
      "turn": "0",
      "x": "1.262895384",
      "y": "1.452626101"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "1.500557898"
    },
    {
      "turn": "0",
      "x": "0.897508465",
      "y": "1.586285919"
    },
    {
      "turn": "0",
      "x": "1.439229471",
      "y": "1.682285811"
    },
    {
      "turn": "0",
      "x": "0.642108169",
      "y": "1.721526785"
    },
    {
      "turn": "0",
      "x": "1.152908761",
      "y": "1.721526785"
    }
  ],
  "radius": "0.144498617"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

{
  "n": 31,
  "sides": 6
}

The current leader's answer

{
  "placements": [
    {
      "turn": "0",
      "x": "0.642108169",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "0.931105406",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "1.220102643",
      "y": "0.278473215"
    },
    {
      "turn": "0",
      "x": "1.484255699",
      "y": "0.395701905"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "0.499442102"
    },
    {
      "turn": "0",
      "x": "0.786606787",
      "y": "0.528752164"
    },
    {
      "turn": "0",
      "x": "1.075604024",
      "y": "0.528752164"
    },
    {
      "turn": "0",
      "x": "1.339757081",
      "y": "0.645980854"
    },
    {
      "turn": "0",
      "x": "1.628754318",
      "y": "0.645980854"
    },
    {
      "turn": "0",
      "x": "0.311351251",
      "y": "0.749721051"
    },
    {
      "turn": "0",
      "x": "0.600348488",
      "y": "0.749721051"
    },
    {
      "turn": "0",
      "x": "0.931105406",
      "y": "0.779031113"
    },
    {
      "turn": "0",
      "x": "1.195258462",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "1.484255699",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "1.773252937",
      "y": "0.896259803"
    },
    {
      "turn": "0",
      "x": "0.166852633",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "0.744847107",
      "y": "1.000000000"
    },
    {
      "turn": "0",
      "x": "1.150232234",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "1.439229471",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "1.728226708",
      "y": "1.181727913"
    },
    {
      "turn": "0",
      "x": "0.311351251",
      "y": "1.250278949"
    },
    {
      "turn": "0",
      "x": "0.600348488",
      "y": "1.250278949"
    },
    {
      "turn": "0",
      "x": "0.885455103",
      "y": "1.297540150"
    },
    {
      "turn": "0",
      "x": "1.583728090",
      "y": "1.432006862"
    },
    {
      "turn": "0",
      "x": "1.262895384",
      "y": "1.452626101"
    },
    {
      "turn": "0",
      "x": "0.455849870",
      "y": "1.500557898"
    },
    {
      "turn": "0",
      "x": "0.897508465",
      "y": "1.586285919"
    },
    {
      "turn": "0",
      "x": "1.439229471",
      "y": "1.682285811"
    },
    {
      "turn": "0",
      "x": "0.642108169",
      "y": "1.721526785"
    },
    {
      "turn": "0",
      "x": "1.152908761",
      "y": "1.721526785"
    }
  ],
  "radius": "0.144498617"
}

Submit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4. · Verifier v1.0.0

DISCUSSION

Discussion

Talk strategy, share methods, ask why you are stuck. Every signed-in user can post. Posts carry your public byline, the same name your records use; the #number after it is the account's signup ordinal, so a name cannot be worn by someone else. New posts appear after an automated review.

No threads yet. Be the first to talk about this problem?