P87 · Packing and covering · Classic

Equal discs covering a disc · n = 19

Cover the largest possible disc with n unit-radius discs. Maximise the covered disc radius.

Instancen = 19
ObjectiveMaximize covered disc radius

Record comparison

covered disc radius · Higher is better
RecordValue / intervalAuthor / holderSource
Proven optimum√13VonEquinoxDiskCoveringSolve ↗
Site recordNo player record yet——

The continuous optimum is proved, so competition submissions are closed. Historical records and contribution points are retained. Because finite-decimal coordinates cannot attain this value exactly, the current certificate is not claimed optimal on the nine-decimal grid.

Formal definition

  • ContainerThe editor and certificate normalise the target disc to the closed unit disc centred at (1,1), while public scores are reported in the literature's unit-covering-disc scale.
  • SubmissionSubmit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4.
  • ConstraintsThe n distinct centres lie inside the target disc. Covering discs may overlap and protrude, and their union must cover every point of the target disc.
  • PrecisionInput decimals are parsed as exact rationals, with zero floating-point tolerance in feasibility checks.
  • ObjectiveCovered disc radius R = 1/r, where larger is better.
Inspect in editor ↗

Layout shown: starter layout

VERIFIED CONSTRUCTIONVERIFIED CONSTRUCTION

Getting a feel for it

Literature targets and coordinate certificates

Literature targets are converted at their published precision, while nine-decimal coordinate certificates are stored and displayed alongside the source values.

Source
The current arrangement for Equal discs covering a disc n = 19
LAYOUT & HISTORY

Starter layout

Inspect the layout, solver notes and record history.

Proven optimumSubmit a proof / idea ↓Share a proof or bound argument in the discussion board. Accepted contributions earn proof points.
ANSWER FORMAT

How to write your answer

the closed unit disc centred at (1,1)

Submit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4.

Starter answer

{
  "placements": [
    {
      "turn": "0.000000000",
      "x": "1.000000007",
      "y": "1.000000977"
    },
    {
      "turn": "0.000000000",
      "x": "1.480381993",
      "y": "1.001521979"
    },
    {
      "turn": "0.000000000",
      "x": "0.761127101",
      "y": "0.583216343"
    },
    {
      "turn": "0.000000000",
      "x": "0.519618075",
      "y": "0.998477980"
    },
    {
      "turn": "0.000000000",
      "x": "0.758490560",
      "y": "1.415261870"
    },
    {
      "turn": "0.000000000",
      "x": "1.238873196",
      "y": "1.416784597"
    },
    {
      "turn": "0.000000000",
      "x": "1.241508518",
      "y": "0.584738878"
    },
    {
      "turn": "0.000000000",
      "x": "0.280744910",
      "y": "0.581693745"
    },
    {
      "turn": "0.000000000",
      "x": "1.721891179",
      "y": "0.586260013"
    },
    {
      "turn": "0.000000000",
      "x": "0.278108625",
      "y": "1.413740407"
    },
    {
      "turn": "0.000000000",
      "x": "1.719254923",
      "y": "1.418306045"
    },
    {
      "turn": "0.000000000",
      "x": "1.002636335",
      "y": "0.167954006"
    },
    {
      "turn": "0.000000000",
      "x": "0.997364029",
      "y": "1.832045784"
    },
    {
      "turn": "0.000000000",
      "x": "0.039236715",
      "y": "0.996955994"
    },
    {
      "turn": "0.000000000",
      "x": "1.960764056",
      "y": "1.003044063"
    },
    {
      "turn": "0.000000000",
      "x": "1.483017744",
      "y": "0.169476912"
    },
    {
      "turn": "0.000000000",
      "x": "0.516982394",
      "y": "1.830523965"
    },
    {
      "turn": "0.000000000",
      "x": "0.522254871",
      "y": "0.166432648"
    },
    {
      "turn": "0.000000000",
      "x": "1.477746202",
      "y": "1.833568663"
    }
  ],
  "radius": "0.277350099"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer+

Instance parameters

{
  "n": 19,
  "sides": 5
}

Starter answer

{
  "placements": [
    {
      "turn": "0.000000000",
      "x": "1.000000007",
      "y": "1.000000977"
    },
    {
      "turn": "0.000000000",
      "x": "1.480381993",
      "y": "1.001521979"
    },
    {
      "turn": "0.000000000",
      "x": "0.761127101",
      "y": "0.583216343"
    },
    {
      "turn": "0.000000000",
      "x": "0.519618075",
      "y": "0.998477980"
    },
    {
      "turn": "0.000000000",
      "x": "0.758490560",
      "y": "1.415261870"
    },
    {
      "turn": "0.000000000",
      "x": "1.238873196",
      "y": "1.416784597"
    },
    {
      "turn": "0.000000000",
      "x": "1.241508518",
      "y": "0.584738878"
    },
    {
      "turn": "0.000000000",
      "x": "0.280744910",
      "y": "0.581693745"
    },
    {
      "turn": "0.000000000",
      "x": "1.721891179",
      "y": "0.586260013"
    },
    {
      "turn": "0.000000000",
      "x": "0.278108625",
      "y": "1.413740407"
    },
    {
      "turn": "0.000000000",
      "x": "1.719254923",
      "y": "1.418306045"
    },
    {
      "turn": "0.000000000",
      "x": "1.002636335",
      "y": "0.167954006"
    },
    {
      "turn": "0.000000000",
      "x": "0.997364029",
      "y": "1.832045784"
    },
    {
      "turn": "0.000000000",
      "x": "0.039236715",
      "y": "0.996955994"
    },
    {
      "turn": "0.000000000",
      "x": "1.960764056",
      "y": "1.003044063"
    },
    {
      "turn": "0.000000000",
      "x": "1.483017744",
      "y": "0.169476912"
    },
    {
      "turn": "0.000000000",
      "x": "0.516982394",
      "y": "1.830523965"
    },
    {
      "turn": "0.000000000",
      "x": "0.522254871",
      "y": "0.166432648"
    },
    {
      "turn": "0.000000000",
      "x": "1.477746202",
      "y": "1.833568663"
    }
  ],
  "radius": "0.277350099"
}

Submit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4. · Verifier v1.0.0

DISCUSSION

Discussion

Discuss strategies, share construction methods, or ask questions. Any signed-in user can post under their public byline and unique #UID. New posts appear after moderation.

No threads yet. Start the first discussion.