P55 · 极值构型 · 经典问题 · 应用前沿 · 基线易突破

单位正方形内的最优量化 · n = 21

在边长为 1 的正方形里放 n 个点。正方形内的每一个位置,都由离它最近的那个点负责;你的分数,是「位置到负责它的点的距离的平方」在整个正方形上的平均值。把这个平均值压到最低。

子题n = 21
目标最小化 平均平方距离
已知最好(未证明)0.007976706012786本站离线搜索:33 个确定性起点各走 Lloyd 至收敛,起点 28 胜出,tools/p55-lloyd.ts 可逐位复现;最优性未知

严格定义

  • 容器单位正方形,左下角是原点 (0, 0),右上角是 (1, 1)
  • 提交恰好 n 个点的坐标,十进制小数,最多九位;两点不得重合
  • 归属每个位置归离它最近的那个点;恰好等距的位置构成零面积集合,归给谁不影响分数
  • 目标让 E(P) = ∫∫ min‖x − pᵢ‖² dx 尽可能小。精确有理数计分,向上取整到 10⁻¹⁸
放大来摆,然后提交
1y0
0x1
已验证构造21 块辖区,最贵的那块占了总代价的 6.1%

帮助理解

一个比喻:复活点

把正方形当成一张地图,这 n 个点就是你放的复活点。玩家均匀地随机出现在地图上任何位置,然后被送到离他最近的复活点。你的分数,就是这段路程平方的平均值。

哪里有优化空间

把每个点挪到它辖区的重心、反复迭代,就是 Lloyd 算法:它一定会停,但停在驻点,不是最优解。这个能量有很多局部极小,落进哪一个,完全取决于起点。能优化的就是这一段。

前沿在哪里

n ≤ 2 已证明;n = 3、4、5 依赖一个未证明的对称性猜想(Roychowdhury, arXiv:1608.03815);n ≥ 6 文献原话是「极其困难,至今不知道答案」。另有一条对每个 n 都成立的下界 5/(18√3·n):那是正六边形的水平,正方形永远铺不出。

当前第一名

0.007976706012786

平均平方距离

已追平已知最好
纪录保持者创始基准
解题方式人工
挑战这个纪录
ANSWER FORMAT

答案怎么写

容器是边长 1 的正方形:左下角是原点 (0, 0),右上角是 (1, 1)。每一个位置都归离它最近的那个点管,所以整块正方形被划成 n 块,谁也不重叠、谁也不漏下。坐标写成小数,例如 "0.25",最多九位小数。

提交 points。每个坐标写成十进制字符串,例如 "0.25",最多九位小数。分数是整块地图上的平均平方距离,越小越好。

当前第一名的答案

{
  "points": [
    [
      "0.088522187",
      "0.700511372"
    ],
    [
      "0.887980106",
      "0.883864641"
    ],
    [
      "0.631041132",
      "0.906273095"
    ],
    [
      "0.631040966",
      "0.093726879"
    ],
    [
      "0.134418938",
      "0.500000088"
    ],
    [
      "0.401049886",
      "0.500000034"
    ],
    [
      "0.729265356",
      "0.280876945"
    ],
    [
      "0.381691101",
      "0.100443125"
    ],
    [
      "0.514444081",
      "0.697332012"
    ],
    [
      "0.290114496",
      "0.696087490"
    ],
    [
      "0.381691269",
      "0.899556896"
    ],
    [
      "0.729265460",
      "0.719122940"
    ],
    [
      "0.665168617",
      "0.499999946"
    ],
    [
      "0.887980051",
      "0.116135299"
    ],
    [
      "0.129055559",
      "0.097473991"
    ],
    [
      "0.088522176",
      "0.299488785"
    ],
    [
      "0.129055632",
      "0.902526069"
    ],
    [
      "0.902448276",
      "0.380928698"
    ],
    [
      "0.902448298",
      "0.619071127"
    ],
    [
      "0.290114430",
      "0.303912621"
    ],
    [
      "0.514443970",
      "0.302667975"
    ]
  ]
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看

子题参数

{
  "n": 21
}

当前第一名的答案

{
  "points": [
    [
      "0.088522187",
      "0.700511372"
    ],
    [
      "0.887980106",
      "0.883864641"
    ],
    [
      "0.631041132",
      "0.906273095"
    ],
    [
      "0.631040966",
      "0.093726879"
    ],
    [
      "0.134418938",
      "0.500000088"
    ],
    [
      "0.401049886",
      "0.500000034"
    ],
    [
      "0.729265356",
      "0.280876945"
    ],
    [
      "0.381691101",
      "0.100443125"
    ],
    [
      "0.514444081",
      "0.697332012"
    ],
    [
      "0.290114496",
      "0.696087490"
    ],
    [
      "0.381691269",
      "0.899556896"
    ],
    [
      "0.729265460",
      "0.719122940"
    ],
    [
      "0.665168617",
      "0.499999946"
    ],
    [
      "0.887980051",
      "0.116135299"
    ],
    [
      "0.129055559",
      "0.097473991"
    ],
    [
      "0.088522176",
      "0.299488785"
    ],
    [
      "0.129055632",
      "0.902526069"
    ],
    [
      "0.902448276",
      "0.380928698"
    ],
    [
      "0.902448298",
      "0.619071127"
    ],
    [
      "0.290114430",
      "0.303912621"
    ],
    [
      "0.514443970",
      "0.302667975"
    ]
  ]
}

提交 points。每个坐标写成十进制字符串,例如 "0.25",最多九位小数。分数是整块地图上的平均平方距离,越小越好。 · 验证器 v1.0.0