P82 · Packing and covering · Classic · Hard

Equal circles in regular polygons · m = 8 · n = 28

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 = 8 · n = 28
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 = 8 · n = 28, 0.160404294
Current leader

0.160404294

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.708782104",
      "y": "0.294246760"
    },
    {
      "turn": "0",
      "x": "0.413757593",
      "y": "0.420257429"
    },
    {
      "turn": "0",
      "x": "1.007249625",
      "y": "0.176623251"
    },
    {
      "turn": "0",
      "x": "0.366388779",
      "y": "0.737549639"
    },
    {
      "turn": "0",
      "x": "0.959880812",
      "y": "0.493915461"
    },
    {
      "turn": "0",
      "x": "0.664856300",
      "y": "0.619926130"
    },
    {
      "turn": "0",
      "x": "1.258348333",
      "y": "0.376291952"
    },
    {
      "turn": "0",
      "x": "1.577089024",
      "y": "0.412658458"
    },
    {
      "turn": "0",
      "x": "0.175524115",
      "y": "0.995403922"
    },
    {
      "turn": "0",
      "x": "0.494264807",
      "y": "1.031770428"
    },
    {
      "turn": "0",
      "x": "1.087756839",
      "y": "0.788136249"
    },
    {
      "turn": "0",
      "x": "0.792732328",
      "y": "0.914146919"
    },
    {
      "turn": "0",
      "x": "1.386224360",
      "y": "0.670512740"
    },
    {
      "turn": "0",
      "x": "1.704965051",
      "y": "0.706879247"
    },
    {
      "turn": "0",
      "x": "0.295034949",
      "y": "1.293120753"
    },
    {
      "turn": "0",
      "x": "0.613775640",
      "y": "1.329487260"
    },
    {
      "turn": "0",
      "x": "1.207267672",
      "y": "1.085853081"
    },
    {
      "turn": "0",
      "x": "0.912243161",
      "y": "1.211863751"
    },
    {
      "turn": "0",
      "x": "1.505735193",
      "y": "0.968229572"
    },
    {
      "turn": "0",
      "x": "1.824475885",
      "y": "1.004596078"
    },
    {
      "turn": "0",
      "x": "0.422910976",
      "y": "1.587341542"
    },
    {
      "turn": "0",
      "x": "0.741651667",
      "y": "1.623708048"
    },
    {
      "turn": "0",
      "x": "1.335143700",
      "y": "1.380073870"
    },
    {
      "turn": "0",
      "x": "1.040119188",
      "y": "1.506084539"
    },
    {
      "turn": "0",
      "x": "1.633611221",
      "y": "1.262450361"
    },
    {
      "turn": "0",
      "x": "0.992750375",
      "y": "1.823376749"
    },
    {
      "turn": "0",
      "x": "1.586242407",
      "y": "1.579742571"
    },
    {
      "turn": "0",
      "x": "1.291217896",
      "y": "1.705753240"
    }
  ],
  "radius": "0.160404294"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

{
  "n": 28,
  "sides": 8
}

The current leader's answer

{
  "placements": [
    {
      "turn": "0",
      "x": "0.708782104",
      "y": "0.294246760"
    },
    {
      "turn": "0",
      "x": "0.413757593",
      "y": "0.420257429"
    },
    {
      "turn": "0",
      "x": "1.007249625",
      "y": "0.176623251"
    },
    {
      "turn": "0",
      "x": "0.366388779",
      "y": "0.737549639"
    },
    {
      "turn": "0",
      "x": "0.959880812",
      "y": "0.493915461"
    },
    {
      "turn": "0",
      "x": "0.664856300",
      "y": "0.619926130"
    },
    {
      "turn": "0",
      "x": "1.258348333",
      "y": "0.376291952"
    },
    {
      "turn": "0",
      "x": "1.577089024",
      "y": "0.412658458"
    },
    {
      "turn": "0",
      "x": "0.175524115",
      "y": "0.995403922"
    },
    {
      "turn": "0",
      "x": "0.494264807",
      "y": "1.031770428"
    },
    {
      "turn": "0",
      "x": "1.087756839",
      "y": "0.788136249"
    },
    {
      "turn": "0",
      "x": "0.792732328",
      "y": "0.914146919"
    },
    {
      "turn": "0",
      "x": "1.386224360",
      "y": "0.670512740"
    },
    {
      "turn": "0",
      "x": "1.704965051",
      "y": "0.706879247"
    },
    {
      "turn": "0",
      "x": "0.295034949",
      "y": "1.293120753"
    },
    {
      "turn": "0",
      "x": "0.613775640",
      "y": "1.329487260"
    },
    {
      "turn": "0",
      "x": "1.207267672",
      "y": "1.085853081"
    },
    {
      "turn": "0",
      "x": "0.912243161",
      "y": "1.211863751"
    },
    {
      "turn": "0",
      "x": "1.505735193",
      "y": "0.968229572"
    },
    {
      "turn": "0",
      "x": "1.824475885",
      "y": "1.004596078"
    },
    {
      "turn": "0",
      "x": "0.422910976",
      "y": "1.587341542"
    },
    {
      "turn": "0",
      "x": "0.741651667",
      "y": "1.623708048"
    },
    {
      "turn": "0",
      "x": "1.335143700",
      "y": "1.380073870"
    },
    {
      "turn": "0",
      "x": "1.040119188",
      "y": "1.506084539"
    },
    {
      "turn": "0",
      "x": "1.633611221",
      "y": "1.262450361"
    },
    {
      "turn": "0",
      "x": "0.992750375",
      "y": "1.823376749"
    },
    {
      "turn": "0",
      "x": "1.586242407",
      "y": "1.579742571"
    },
    {
      "turn": "0",
      "x": "1.291217896",
      "y": "1.705753240"
    }
  ],
  "radius": "0.160404294"
}

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?