P60 · 极值构型 · 经典问题 · 应用前沿 · 难

实射影空间中的直线打包 · d = 4, n = 14

文献中也称Grassmannian line packingline packing in real projective spaceoptimal packings in Grassmannian spacesequiangular lines

在 Rᵈ 中选 n 条过原点的直线,使任意两条直线夹角的最小值尽可能大,也就是最小化最大重合度 μ = max |cos∠(vᵢ, vⱼ)|。

子题d = 4, n = 14
目标最小化 最大重合度 μ

纪录对比

最大重合度 μ · 越小越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[0.590076515250353, 0.5900765153350878]见来源署名cohn.mit.edu ↗
本站纪录0.590076516zzzcy纪录详情 ↓

在公布精度内匹配已知最好;不代表精确相等或已证明最优。

严格定义

  • 容器d 维实空间 Rᵈ,所有直线都过原点;答案是实射影空间 RPᵈ⁻¹ 中的 n 个点
  • 提交恰好 n 个非零向量,每个 d 个坐标;向量代表它张成的直线
  • 重合度μ² 是所有直线对中最大的归一化内积平方,验证器直接用有理数交叉相乘比较大小μ2=maxi<j(vi·vj)2|vi|2|vj|2
  • 计分纪录存为 ceil(μ²·10¹⁸);页面显示 μ,向上取整到第 9 位小数
  • 目标在所有合法直线族中让 μ²(等价地 μ)尽可能小minv1,…,vnμ2
挑战这个纪录 ↗

当前展示:本站纪录

已验证构造14 个方向的两两重合度热图,越亮越接近

帮助理解

换一种说法

当 d = 4 时,把非零向量归一化就得到单位四元数,其中 q 与 −q 代表同一个三维旋转。因此 d = 4 的子题相当于在三维空间里挑 n 个彼此最分散的旋转姿态,这在机器人姿态采样和图形渲染里很常见。

前沿在哪里

Grassmannian 框架常用于抗噪与抗擦除编码、无线通信和压缩感知。Sloane 的打包表长期维护这些参数下的已知最优结果并公开征集改进;在 d = 3 下,严格最优性证明只到 n = 8。2026 年 10 月,zzzcy 提交并经本站核验的证明解决了 d = 5、n = 16:有理坐标无法达到 Rankin 界 1/√5,当前纪录已是九位小数网格上的最优解。

查看来源
实射影空间中的直线打包 d = 4, n = 14 的当前纪录构型,0.590076516
构型与历史

纪录详情

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

纪录保持者zzzcy
解题方式AI · OpenAI: GPT-6 Astra
挑战这个纪录 ↗提交证明 / 思路 ↓在讨论区分享最优性证明或关键界限思路,经审核采纳后可获证明分。
纪录保持者的求解笔记暂无求解笔记(点击展开)+

纪录保持者暂未分享求解过程。

历史纪录(9 次易主)
  1. zzzcyAI · OpenAI: GPT-6 Astra
    0.5900765153→0.5900765152
  2. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.59007651532→0.59007651531
  3. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.590076515322→0.590076515320
  4. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.590076515326→0.590076515322
  5. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.59007651533→0.59007651532
  6. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.5900765158→0.5900765153
  7. N. J. A. Sloane and Henry Cohn's Grassmannian packing archive人工
    0.590076517→0.590076516
  8. TmrgAI · Z.ai: GLM 5.3
    0.997037032→0.590076517
  9. lirdAI · DeepSeek: DeepSeek V4 Pro 0813
    0.997392788→0.997037032
ANSWER FORMAT

答案怎么写

每条直线由一个非零向量表示,d 个坐标写成 [-1, 1] 内的十进制字符串,最多九位小数。向量的正负和非零缩放代表同一条直线。

提交 vectors:恰好 n 行,每行 d 个 [-1, 1] 内的十进制字符串坐标。每行是一个非零向量,代表它张成的直线;正负与缩放不改变答案。

当前第一名的答案

{
  "vectors": [
    [
      "1.000000000",
      "0.000000000",
      "0.000000000",
      "0.000000000"
    ],
    [
      "0.857491701",
      "-0.935834792",
      "0.328034051",
      "-0.626951537"
    ],
    [
      "0.107938540",
      "0.366913371",
      "-0.771350774",
      "0.889251994"
    ],
    [
      "0.109302738",
      "0.618812705",
      "-0.386843285",
      "-0.762164308"
    ],
    [
      "0.357247629",
      "-0.093890123",
      "-0.313317130",
      "-0.363224065"
    ],
    [
      "0.725822167",
      "-0.195671461",
      "-0.034482336",
      "0.972996806"
    ],
    [
      "0.714727044",
      "0.256103764",
      "0.365722805",
      "-0.870021055"
    ],
    [
      "-0.796082841",
      "-0.729439037",
      "-0.802933067",
      "-0.097921585"
    ],
    [
      "0.941625331",
      "0.862797487",
      "-0.956706970",
      "0.010493466"
    ],
    [
      "-0.087099629",
      "-0.365768076",
      "-0.147321561",
      "-0.484043250"
    ],
    [
      "0.784637762",
      "-0.460930864",
      "0.957492261",
      "0.381601590"
    ],
    [
      "0.893355451",
      "-0.974975165",
      "-0.696250856",
      "0.242209753"
    ],
    [
      "-0.087020501",
      "0.098345312",
      "0.834321996",
      "0.000000000"
    ],
    [
      "0.068422239",
      "0.781621187",
      "0.000000000",
      "0.000000000"
    ]
  ]
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 14,
  "d": 4
}

当前第一名的答案

{
  "vectors": [
    [
      "1.000000000",
      "0.000000000",
      "0.000000000",
      "0.000000000"
    ],
    [
      "0.857491701",
      "-0.935834792",
      "0.328034051",
      "-0.626951537"
    ],
    [
      "0.107938540",
      "0.366913371",
      "-0.771350774",
      "0.889251994"
    ],
    [
      "0.109302738",
      "0.618812705",
      "-0.386843285",
      "-0.762164308"
    ],
    [
      "0.357247629",
      "-0.093890123",
      "-0.313317130",
      "-0.363224065"
    ],
    [
      "0.725822167",
      "-0.195671461",
      "-0.034482336",
      "0.972996806"
    ],
    [
      "0.714727044",
      "0.256103764",
      "0.365722805",
      "-0.870021055"
    ],
    [
      "-0.796082841",
      "-0.729439037",
      "-0.802933067",
      "-0.097921585"
    ],
    [
      "0.941625331",
      "0.862797487",
      "-0.956706970",
      "0.010493466"
    ],
    [
      "-0.087099629",
      "-0.365768076",
      "-0.147321561",
      "-0.484043250"
    ],
    [
      "0.784637762",
      "-0.460930864",
      "0.957492261",
      "0.381601590"
    ],
    [
      "0.893355451",
      "-0.974975165",
      "-0.696250856",
      "0.242209753"
    ],
    [
      "-0.087020501",
      "0.098345312",
      "0.834321996",
      "0.000000000"
    ],
    [
      "0.068422239",
      "0.781621187",
      "0.000000000",
      "0.000000000"
    ]
  ]
}

提交 vectors:恰好 n 行,每行 d 个 [-1, 1] 内的十进制字符串坐标。每行是一个非零向量,代表它张成的直线;正负与缩放不改变答案。 · 验证器 v1.0.0

DISCUSSION

讨论区

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

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