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

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

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

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

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

纪录对比

正方形边长 · 越小越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[213.40672623995, 213.40672624005]Zhizhong Zeng, Xinguo Yu, Kun He, Zhanghua Fu2015-09-24Packomania ↗
本站纪录213.406726242邱仲普纪录详情 ↓

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

严格定义

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

当前展示:本站纪录

213.406726242y0
0x213.406726242
已验证构造side = 213.406726242

帮助理解

角位分配与小圆填隙

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

已知证明与开放前沿

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

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

纪录详情

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

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

P13, n=33: exact-grid refinement of the public packing. Start from the certificate below, whose square side is 213.406726262. Circle i has fixed radius i. Scale lengths by Q=10^9. Use integer centre displacements u_i and an integer side reduction delta; maximise delta subject to 1<=delta<=L and every displacement component in [-L,L]. Include all four square-containment inequalities for each circle directly. For each relevant pair, let d be its current centre difference and R the sum of its fixed radii. Impose 2*d dot (u_i-u_j) >= R^2-|d|^2. Divide this row by 2R and add a 0.00001 grid-unit numerical margin. The omitted squared displacement is nonnegative. Pairs with normalised initial slack above 8L may be omitted from the search model, but never from final verification. Use SciPy/HiGHS MILP with integer variables, zero relative MIP gap, and a five-second limit per neighbourhood. Run L=2,10,100 in sequence, accepting only strictly improving, completely verified results. The final side is 213.406726242, a reduction of 20 grid units. Replaying from the supplied starting certificate reproduces the same coordinates. Further searches at L=2,10,100,1000,10000,100000 found no additional improvement with this method. Two independent integer implementations verify all 132 square-containment inequalities and all 528 circle pairs, with radii exactly 1 through 33 and no feasibility tolerance. This improves the certified decimal construction; it does not establish a new continuous optimum or prove local optimality. Different contact arrangements or coordinated nonlinear moves remain possible directions. Starting certificate, with centres in radius order: {"centers":[["4.000095677","33.500587889"],["94.535995791","174.079636340"],["209.914862315","3.496310962"],["209.373255869","41.739208833"],["26.871534751","83.546385858"],["207.306154064","161.572205954"],["89.645226193","7.027467791"],["8.016539354","149.011611086"],["105.765836852","175.156199451"],["10.038923447","84.501022797"],["64.441196724","104.134087411"],["119.855551939","122.536890390"],["149.736745045","200.263511763"],["199.406726261","57.099857556"],["155.074922007","15.000000001"],["118.298984333","197.406726261"],["17.000000002","17.000000002"],["51.095469526","78.246045030"],["19.174980232","56.850187080"],["82.521896689","193.406726260"],["192.406726260","91.392713958"],["191.406726260","22.000000002"],["151.461738663","107.501965681"],["189.299414846","136.658034789"],["116.352637760","25.029192542"],["187.406726260","187.406726260"],["157.238994374","57.312991369"],["28.000000003","118.027941515"],["140.693295524","158.374754408"],["61.727340386","31.438317863"],["81.724958874","142.412953203"],["32.000000003","181.096650882"],["102.008252966","81.227400926"]],"side":"213.406726262"}

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

答案怎么写

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

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

当前第一名的答案

{
  "centers": [
    [
      "4.000095565",
      "33.500587777"
    ],
    [
      "94.535995679",
      "174.079636228"
    ],
    [
      "209.914862203",
      "3.496310850"
    ],
    [
      "209.373255757",
      "41.739208721"
    ],
    [
      "26.871534639",
      "83.546385746"
    ],
    [
      "207.306153952",
      "161.572205842"
    ],
    [
      "89.645226081",
      "7.027467679"
    ],
    [
      "8.016539242",
      "149.011610974"
    ],
    [
      "105.765836740",
      "175.156199339"
    ],
    [
      "10.038923335",
      "84.501022685"
    ],
    [
      "64.441196717",
      "104.134087398"
    ],
    [
      "119.855551941",
      "122.536890407"
    ],
    [
      "149.736744933",
      "200.263511651"
    ],
    [
      "199.406726242",
      "57.099857551"
    ],
    [
      "155.074921993",
      "15.000000000"
    ],
    [
      "118.298984321",
      "197.406726242"
    ],
    [
      "17.000000000",
      "17.000000000"
    ],
    [
      "51.095469520",
      "78.246045019"
    ],
    [
      "19.174980120",
      "56.850186968"
    ],
    [
      "82.521896681",
      "193.406726241"
    ],
    [
      "192.406726242",
      "91.392713952"
    ],
    [
      "191.406726242",
      "22.000000001"
    ],
    [
      "151.461738647",
      "107.501965668"
    ],
    [
      "189.299414734",
      "136.658034677"
    ],
    [
      "116.352637749",
      "25.029192537"
    ],
    [
      "187.406726242",
      "187.406726242"
    ],
    [
      "157.238994262",
      "57.312991257"
    ],
    [
      "28.000000000",
      "118.027941501"
    ],
    [
      "140.693295508",
      "158.374754392"
    ],
    [
      "61.727340380",
      "31.438317857"
    ],
    [
      "81.724958865",
      "142.412953188"
    ],
    [
      "32.000000000",
      "181.096650864"
    ],
    [
      "102.008252955",
      "81.227400915"
    ]
  ],
  "side": "213.406726242"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 33
}

当前第一名的答案

{
  "centers": [
    [
      "4.000095565",
      "33.500587777"
    ],
    [
      "94.535995679",
      "174.079636228"
    ],
    [
      "209.914862203",
      "3.496310850"
    ],
    [
      "209.373255757",
      "41.739208721"
    ],
    [
      "26.871534639",
      "83.546385746"
    ],
    [
      "207.306153952",
      "161.572205842"
    ],
    [
      "89.645226081",
      "7.027467679"
    ],
    [
      "8.016539242",
      "149.011610974"
    ],
    [
      "105.765836740",
      "175.156199339"
    ],
    [
      "10.038923335",
      "84.501022685"
    ],
    [
      "64.441196717",
      "104.134087398"
    ],
    [
      "119.855551941",
      "122.536890407"
    ],
    [
      "149.736744933",
      "200.263511651"
    ],
    [
      "199.406726242",
      "57.099857551"
    ],
    [
      "155.074921993",
      "15.000000000"
    ],
    [
      "118.298984321",
      "197.406726242"
    ],
    [
      "17.000000000",
      "17.000000000"
    ],
    [
      "51.095469520",
      "78.246045019"
    ],
    [
      "19.174980120",
      "56.850186968"
    ],
    [
      "82.521896681",
      "193.406726241"
    ],
    [
      "192.406726242",
      "91.392713952"
    ],
    [
      "191.406726242",
      "22.000000001"
    ],
    [
      "151.461738647",
      "107.501965668"
    ],
    [
      "189.299414734",
      "136.658034677"
    ],
    [
      "116.352637749",
      "25.029192537"
    ],
    [
      "187.406726242",
      "187.406726242"
    ],
    [
      "157.238994262",
      "57.312991257"
    ],
    [
      "28.000000000",
      "118.027941501"
    ],
    [
      "140.693295508",
      "158.374754392"
    ],
    [
      "61.727340380",
      "31.438317857"
    ],
    [
      "81.724958865",
      "142.412953188"
    ],
    [
      "32.000000000",
      "181.096650864"
    ],
    [
      "102.008252955",
      "81.227400915"
    ]
  ],
  "side": "213.406726242"
}

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

DISCUSSION

讨论区

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

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