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

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

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

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

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

纪录对比

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

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

严格定义

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

当前展示:本站纪录

204.089004542y0
0x204.089004542
已验证构造side = 204.089004542

帮助理解

角位分配与小圆填隙

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

已知证明与开放前沿

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

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

纪录详情

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

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

P13, n=32: exact-grid refinement of the public packing. Start from the certificate below, whose square side is 204.089004557. 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 204.089004542, a reduction of 15 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 128 square-containment inequalities and all 496 circle pairs, with radii exactly 1 through 32 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":[["36.311314341","39.657136571"],["95.503656165","3.943577761"],["3.013114251","37.034545686"],["41.155098303","4.019641323"],["199.028561121","199.028561119"],["110.174237785","26.035531303"],["85.103174763","197.054632241"],["31.962554696","107.381306640"],["138.147879056","195.089004556"],["107.923235076","10.000000000"],["66.895050757","72.615844356"],["12.000000001","106.158028180"],["114.823252986","45.257585581"],["190.071230436","60.780902978"],["189.015349597","127.709573502"],["70.722814388","143.732932703"],["97.228972527","122.817241182"],["18.000000003","186.089004555"],["184.970417696","93.713749924"],["136.207506327","20.000000001"],["21.000000004","21.000000001"],["61.939826023","106.213743379"],["58.693979906","181.089004554"],["180.089004556","24.000000002"],["101.902128672","81.053934008"],["149.953630017","63.898110255"],["27.411109779","142.084106951"],["28.000000004","69.497422617"],["143.022102857","118.459579551"],["110.060397814","168.031780054"],["72.709601350","31.000000003"],["172.089004556","172.089004553"]],"side":"204.089004557"}

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

答案怎么写

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

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

当前第一名的答案

{
  "centers": [
    [
      "36.311314229",
      "39.657136459"
    ],
    [
      "95.503656053",
      "3.943577649"
    ],
    [
      "3.013114139",
      "37.034545574"
    ],
    [
      "41.155098191",
      "4.019641211"
    ],
    [
      "199.028561009",
      "199.028561007"
    ],
    [
      "110.174237673",
      "26.035531191"
    ],
    [
      "85.103174651",
      "197.054632129"
    ],
    [
      "31.962554692",
      "107.381306631"
    ],
    [
      "138.147879045",
      "195.089004542"
    ],
    [
      "107.923235067",
      "10.000000000"
    ],
    [
      "66.895050645",
      "72.615844244"
    ],
    [
      "12.000000000",
      "106.158028172"
    ],
    [
      "114.823252874",
      "45.257585469"
    ],
    [
      "190.071230324",
      "60.780902866"
    ],
    [
      "189.015349485",
      "127.709573390"
    ],
    [
      "70.722814276",
      "143.732932591"
    ],
    [
      "97.228972517",
      "122.817241173"
    ],
    [
      "18.000000000",
      "186.089004542"
    ],
    [
      "184.970417584",
      "93.713749812"
    ],
    [
      "136.207506315",
      "20.000000000"
    ],
    [
      "21.000000000",
      "21.000000000"
    ],
    [
      "61.939826016",
      "106.213743370"
    ],
    [
      "58.693979900",
      "181.089004541"
    ],
    [
      "180.089004542",
      "24.000000000"
    ],
    [
      "101.902128560",
      "81.053933896"
    ],
    [
      "149.953630005",
      "63.898110250"
    ],
    [
      "27.411109775",
      "142.084106939"
    ],
    [
      "28.000000000",
      "69.497422612"
    ],
    [
      "143.022102844",
      "118.459579542"
    ],
    [
      "110.060397805",
      "168.031780042"
    ],
    [
      "72.709601343",
      "31.000000000"
    ],
    [
      "172.089004542",
      "172.089004541"
    ]
  ],
  "side": "204.089004542"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 32
}

当前第一名的答案

{
  "centers": [
    [
      "36.311314229",
      "39.657136459"
    ],
    [
      "95.503656053",
      "3.943577649"
    ],
    [
      "3.013114139",
      "37.034545574"
    ],
    [
      "41.155098191",
      "4.019641211"
    ],
    [
      "199.028561009",
      "199.028561007"
    ],
    [
      "110.174237673",
      "26.035531191"
    ],
    [
      "85.103174651",
      "197.054632129"
    ],
    [
      "31.962554692",
      "107.381306631"
    ],
    [
      "138.147879045",
      "195.089004542"
    ],
    [
      "107.923235067",
      "10.000000000"
    ],
    [
      "66.895050645",
      "72.615844244"
    ],
    [
      "12.000000000",
      "106.158028172"
    ],
    [
      "114.823252874",
      "45.257585469"
    ],
    [
      "190.071230324",
      "60.780902866"
    ],
    [
      "189.015349485",
      "127.709573390"
    ],
    [
      "70.722814276",
      "143.732932591"
    ],
    [
      "97.228972517",
      "122.817241173"
    ],
    [
      "18.000000000",
      "186.089004542"
    ],
    [
      "184.970417584",
      "93.713749812"
    ],
    [
      "136.207506315",
      "20.000000000"
    ],
    [
      "21.000000000",
      "21.000000000"
    ],
    [
      "61.939826016",
      "106.213743370"
    ],
    [
      "58.693979900",
      "181.089004541"
    ],
    [
      "180.089004542",
      "24.000000000"
    ],
    [
      "101.902128560",
      "81.053933896"
    ],
    [
      "149.953630005",
      "63.898110250"
    ],
    [
      "27.411109775",
      "142.084106939"
    ],
    [
      "28.000000000",
      "69.497422612"
    ],
    [
      "143.022102844",
      "118.459579542"
    ],
    [
      "110.060397805",
      "168.031780042"
    ],
    [
      "72.709601343",
      "31.000000000"
    ],
    [
      "172.089004542",
      "172.089004541"
    ]
  ],
  "side": "204.089004542"
}

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

DISCUSSION

讨论区

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

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