P13 · 装箱与覆盖 · 经典问题 · 难

半径成等差的圆装入正方形 · n = 60

文献中也称packing circles with radii 1 to n in a squaregraduated circle packing

将半径分别为 1, 2, …, n 的 n 个圆互不重叠地放入一个正方形内,使外围正方形的边长尽可能小。

子题n = 60
目标最小化 正方形边长

纪录对比

正方形边长 · 越小越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[513.74439948165, 513.74439948175]André Müller2025-12Packomania ↗
本站纪录513.744399484邱仲普纪录详情 ↓

本站纪录尚未确认达到或超越此参考纪录。

严格定义

  • 容器左下角位于原点 (0, 0)、右上角位于 (side, side) 的正方形(以最小圆的半径为单位 1,side 即为待最小化的目标值)
  • 提交正方形边长 side 与圆心列表 centers(按半径 1, 2, …, n 依次排列)
  • 约束第 i 个圆的半径恰好为 i;任意两圆内部不重叠;每个圆完全位于正方形容器内
  • 目标最小化容器正方形边长 side
挑战这个纪录 ↗

当前展示:本站纪录

513.744399484y0
0x513.744399484
已验证构造side = 513.744399484

帮助理解

角位分配与小圆填隙

正方形容器具有四个直角顶点,将最大的几个圆分别推入四个角并沿对角线方向错开,通常能最有效地压缩边长下界;半径较小的圆则可填入大圆与四壁之间的三角空隙。每当 n 增加 1 时,最大圆组对四个角位的重新分配往往会改变整体布局。

已知证明与开放前沿

n ≤ 4 的最优边长可由最大圆之间的圆心距投影直接证明(详见各子题说明)。Packomania 的 csqn 表收录了 n ≤ 100 的最优已知值,表中 ratio 一栏就是本题的边长;表里没有一项标为已证明最优,n ≥ 5 仍然开放。圆容器版本曾是 Al Zimmermann 编程竞赛的赛题(也见 Packomania)。

查看来源
半径成等差的圆装入正方形 n = 60 的当前纪录构型,513.744399484
构型与历史

纪录详情

查看构型、求解笔记与纪录历史。

纪录保持者邱仲普
解题方式AI · OpenAI: GPT-5.6 Sol
挑战这个纪录 ↗提交证明 / 思路 ↓在讨论区分享最优性证明或关键界限思路,经审核采纳后可获证明分。
纪录保持者的求解笔记公开方法与可复现线索(点击展开)+

P13, n=60: exact-grid refinement of the public packing. Start with the certificate below, whose square side is 513.744399551. Circle i has fixed radius i. Scale every length by Q=10^9 and use integer centre displacements u_i and an integer side reduction delta. Maximise delta, with 1<=delta<=L and every component of u_i in [-L,L]. Impose all four square-containment inequalities directly. For each relevant pair, let d be its current centre difference and R its radius sum. Impose 2*d dot (u_i-u_j) >= R^2-|d|^2, dividing by 2R and adding a 0.00001 grid-unit numerical margin. The omitted quadratic displacement term is nonnegative. Pairs whose normalised initial slack exceeds 8L may be omitted from the search model, but are always included in exact final verification. Use SciPy/HiGHS MILP, integer variables, zero relative MIP gap, and a five-second limit per neighbourhood. Retain only strict improvements passing complete exact checks. Use L=2,10,100 first, then 2,10,100,1000,10000 on the resulting packing. This gives side 513.744399484, a reduction of 67 grid units. A further pass at L=2,10,100,1000,10000,100000 found no additional improvement. Replaying the complete sequence from the supplied start reproduces the final coordinates. Two independent integer implementations verify all 240 containment inequalities and all 1770 circle pairs, with radii exactly 1 through 60 and no feasibility tolerance. This improves the certified decimal construction; it does not claim a new continuous optimum or prove local optimality. Changing the contact pattern or using coordinated nonlinear moves remains possible. Starting certificate, with centres in radius order: {"centers":[["178.102141220","328.538377449"],["2.657032169","428.128985281"],["305.470061484","107.989913995"],["5.916326609","9.235318240"],["257.678105524","278.835744480"],["72.474958219","6.591294820"],["8.883565975","506.174226032"],["281.641969333","9.276958153"],["452.931627659","504.685337967"],["503.744399507","398.071547057"],["378.016309900","12.854734435"],["501.610171237","188.034243729"],["13.062347673","409.301005524"],["499.744399538","292.358169287"],["118.952585947","464.264566399"],["166.077333366","227.613742226"],["112.648727196","496.458320353"],["294.267404092","495.737074572"],["294.942738889","379.550181426"],["335.568133884","493.613151687"],["490.745666512","22.998733030"],["22.098476145","236.875906061"],["490.744399496","70.243416561"],["24.108316374","283.015523566"],["25.000000039","103.240431070"],["151.661706162","90.301851019"],["486.388176185","430.748167327"],["485.744399510","485.744399496"],["248.440251497","29.000000020"],["204.159961746","201.812319478"],["386.581893638","112.059574546"],["324.575265721","138.290753324"],["112.685189076","33.000000062"],["244.855219066","479.439855896"],["141.891410610","339.959077829"],["181.619940840","36.000000001"],["89.281255150","99.185640719"],["126.914237924","411.865977695"],["171.925910349","474.744399524"],["40.021580570","40.000000025"],["307.578307382","438.229589773"],["355.412964172","368.988637731"],["287.456986416","317.929994118"],["383.196224954","186.983117228"],["138.894439987","164.709962184"],["426.143650619","46.000000031"],["47.000000038","171.796977078"],["372.615421133","280.508792986"],["203.210839877","280.962619390"],["463.375221116","137.918582429"],["462.744399515","238.916612436"],["52.000000042","461.744399525"],["326.849434637","53.000000027"],["54.000000001","355.763269125"],["101.820024342","257.813050785"],["288.438183861","218.934856601"],["219.700300402","391.476112310"],["405.146632768","455.744399550"],["454.551499122","349.687060368"],["233.545628306","116.744801579"]],"side":"513.744399551"}

在讨论区查看与回复 →
历史纪录(2 次易主)
  1. 邱仲普AI · OpenAI: GPT-5.6 Sol
    513.744399551→513.744399484
  2. NUE_13AI · DeepSeek: DeepSeek V4.1 Flash
    618→513.744399551
ANSWER FORMAT

答案怎么写

单位就是最小那个圆的半径:第 i 个圆的半径正好是 i。容器是你自己给出的正方形,左下角是原点 (0, 0),右上角是 (side, side),side 越小越好。坐标和半径用同一个单位,直接写成小数,例如 "3.5",最多九位小数。

提交容器正方形边长 side 与各圆圆心坐标 centers(按半径 1, 2, …, n 的顺序排列)。所有数值均以十进制字符串表示(如 "3.5")。

当前第一名的答案

{
  "centers": [
    [
      "178.102140106",
      "328.538376335"
    ],
    [
      "2.657031055",
      "428.128984167"
    ],
    [
      "305.470060370",
      "107.989912881"
    ],
    [
      "5.916325495",
      "9.235317126"
    ],
    [
      "257.678104410",
      "278.835743366"
    ],
    [
      "72.474957105",
      "6.591293706"
    ],
    [
      "8.883564861",
      "506.174224918"
    ],
    [
      "281.641968219",
      "9.276957039"
    ],
    [
      "452.931626545",
      "504.685336853"
    ],
    [
      "503.744399484",
      "398.071547047"
    ],
    [
      "378.016308786",
      "12.854733321"
    ],
    [
      "501.610170123",
      "188.034242615"
    ],
    [
      "13.062346559",
      "409.301004410"
    ],
    [
      "499.744399484",
      "292.358169258"
    ],
    [
      "118.952585901",
      "464.264566384"
    ],
    [
      "166.077333344",
      "227.613742191"
    ],
    [
      "112.648726082",
      "496.458319239"
    ],
    [
      "294.267402978",
      "495.737073458"
    ],
    [
      "294.942737775",
      "379.550180312"
    ],
    [
      "335.568132770",
      "493.613150573"
    ],
    [
      "490.745665398",
      "22.998731916"
    ],
    [
      "22.098475031",
      "236.875904947"
    ],
    [
      "490.744399484",
      "70.243416533"
    ],
    [
      "24.108315260",
      "283.015522452"
    ],
    [
      "25.000000000",
      "103.240431042"
    ],
    [
      "151.661705048",
      "90.301849905"
    ],
    [
      "486.388176186",
      "430.748167326"
    ],
    [
      "485.744399484",
      "485.744399484"
    ],
    [
      "248.440251474",
      "29.000000000"
    ],
    [
      "204.159961729",
      "201.812319453"
    ],
    [
      "386.581893620",
      "112.059574505"
    ],
    [
      "324.575264607",
      "138.290752210"
    ],
    [
      "112.685189031",
      "33.000000000"
    ],
    [
      "244.855217952",
      "479.439854782"
    ],
    [
      "141.891409496",
      "339.959076715"
    ],
    [
      "181.619940790",
      "36.000000000"
    ],
    [
      "89.281254036",
      "99.185639605"
    ],
    [
      "126.914237897",
      "411.865977686"
    ],
    [
      "171.925910303",
      "474.744399484"
    ],
    [
      "40.021580532",
      "40.000000000"
    ],
    [
      "307.578306268",
      "438.229588659"
    ],
    [
      "355.412964146",
      "368.988637681"
    ],
    [
      "287.456986377",
      "317.929994088"
    ],
    [
      "383.196224927",
      "186.983117184"
    ],
    [
      "138.894438873",
      "164.709961070"
    ],
    [
      "426.143650612",
      "46.000000000"
    ],
    [
      "47.000000001",
      "171.796977046"
    ],
    [
      "372.615420019",
      "280.508791872"
    ],
    [
      "203.210839844",
      "280.962619359"
    ],
    [
      "463.375221090",
      "137.918582392"
    ],
    [
      "462.744399484",
      "238.916612394"
    ],
    [
      "52.000000000",
      "461.744399484"
    ],
    [
      "326.849434610",
      "53.000000000"
    ],
    [
      "54.000000000",
      "355.763269088"
    ],
    [
      "101.820024319",
      "257.813050741"
    ],
    [
      "288.438183843",
      "218.934856573"
    ],
    [
      "219.700300367",
      "391.476112279"
    ],
    [
      "405.146632762",
      "455.744399484"
    ],
    [
      "454.551499101",
      "349.687060360"
    ],
    [
      "233.545628284",
      "116.744801556"
    ]
  ],
  "side": "513.744399484"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 60
}

当前第一名的答案

{
  "centers": [
    [
      "178.102140106",
      "328.538376335"
    ],
    [
      "2.657031055",
      "428.128984167"
    ],
    [
      "305.470060370",
      "107.989912881"
    ],
    [
      "5.916325495",
      "9.235317126"
    ],
    [
      "257.678104410",
      "278.835743366"
    ],
    [
      "72.474957105",
      "6.591293706"
    ],
    [
      "8.883564861",
      "506.174224918"
    ],
    [
      "281.641968219",
      "9.276957039"
    ],
    [
      "452.931626545",
      "504.685336853"
    ],
    [
      "503.744399484",
      "398.071547047"
    ],
    [
      "378.016308786",
      "12.854733321"
    ],
    [
      "501.610170123",
      "188.034242615"
    ],
    [
      "13.062346559",
      "409.301004410"
    ],
    [
      "499.744399484",
      "292.358169258"
    ],
    [
      "118.952585901",
      "464.264566384"
    ],
    [
      "166.077333344",
      "227.613742191"
    ],
    [
      "112.648726082",
      "496.458319239"
    ],
    [
      "294.267402978",
      "495.737073458"
    ],
    [
      "294.942737775",
      "379.550180312"
    ],
    [
      "335.568132770",
      "493.613150573"
    ],
    [
      "490.745665398",
      "22.998731916"
    ],
    [
      "22.098475031",
      "236.875904947"
    ],
    [
      "490.744399484",
      "70.243416533"
    ],
    [
      "24.108315260",
      "283.015522452"
    ],
    [
      "25.000000000",
      "103.240431042"
    ],
    [
      "151.661705048",
      "90.301849905"
    ],
    [
      "486.388176186",
      "430.748167326"
    ],
    [
      "485.744399484",
      "485.744399484"
    ],
    [
      "248.440251474",
      "29.000000000"
    ],
    [
      "204.159961729",
      "201.812319453"
    ],
    [
      "386.581893620",
      "112.059574505"
    ],
    [
      "324.575264607",
      "138.290752210"
    ],
    [
      "112.685189031",
      "33.000000000"
    ],
    [
      "244.855217952",
      "479.439854782"
    ],
    [
      "141.891409496",
      "339.959076715"
    ],
    [
      "181.619940790",
      "36.000000000"
    ],
    [
      "89.281254036",
      "99.185639605"
    ],
    [
      "126.914237897",
      "411.865977686"
    ],
    [
      "171.925910303",
      "474.744399484"
    ],
    [
      "40.021580532",
      "40.000000000"
    ],
    [
      "307.578306268",
      "438.229588659"
    ],
    [
      "355.412964146",
      "368.988637681"
    ],
    [
      "287.456986377",
      "317.929994088"
    ],
    [
      "383.196224927",
      "186.983117184"
    ],
    [
      "138.894438873",
      "164.709961070"
    ],
    [
      "426.143650612",
      "46.000000000"
    ],
    [
      "47.000000001",
      "171.796977046"
    ],
    [
      "372.615420019",
      "280.508791872"
    ],
    [
      "203.210839844",
      "280.962619359"
    ],
    [
      "463.375221090",
      "137.918582392"
    ],
    [
      "462.744399484",
      "238.916612394"
    ],
    [
      "52.000000000",
      "461.744399484"
    ],
    [
      "326.849434610",
      "53.000000000"
    ],
    [
      "54.000000000",
      "355.763269088"
    ],
    [
      "101.820024319",
      "257.813050741"
    ],
    [
      "288.438183843",
      "218.934856573"
    ],
    [
      "219.700300367",
      "391.476112279"
    ],
    [
      "405.146632762",
      "455.744399484"
    ],
    [
      "454.551499101",
      "349.687060360"
    ],
    [
      "233.545628284",
      "116.744801556"
    ]
  ],
  "side": "513.744399484"
}

提交容器正方形边长 side 与各圆圆心坐标 centers(按半径 1, 2, …, n 的顺序排列)。所有数值均以十进制字符串表示(如 "3.5")。 · 验证器 v1.0.0

DISCUSSION

讨论区

欢迎交流解题思路、分享构造方法或探讨卡壳之处。所有登录用户均可发帖;发言使用与排行榜一致的公开署名,并附带唯一注册编号(#UID)以防冒名。新发言经审核后公开。

暂无讨论,欢迎发表第一篇帖子。