在单位正方形中生成均匀分布点的在线算法
Online algorithms to generate evenly distributed points in the unit square
我正在寻找在线算法来生成在单位正方形中合理均匀分布的点。
点数事先不知道。
对于每个n,生成的前n个点的分布必须合理均匀分布。
坐标为实数(浮点数)(0到1之间);所以,不在网格上。
点需要(必须)不是随机的;事实上,我想要一个确定性算法,具有可证明的属性(不是基于统计数据)。
在单位区间内生成这样的点可以利用黄金比例Phi:
- 以i数为点(i * Phi) mod 1.
如何在 2D 中做到这一点?
如果事先知道点数为N,则((Phi * i) mod 1, i/N) 效果很好。但是那个不在线
对于一些c,点数((Phi * i) mod 1, (c * i) mod 1) 可以,但不清楚哪个 c 最好。特别是点数比较多的时候,我试过的c都有明显的不足
马丁·罗伯茨(准随机的不合理有效性
序列,
2018) 建议 (1/φ2 的倍数,
1/φ22) 其中φ2 = cbrt((9 +
sqrt(69))/18) + cbrt((9 − sqrt(69))/18) 是 塑料
数.
我正在寻找在线算法来生成在单位正方形中合理均匀分布的点。
点数事先不知道。 对于每个n,生成的前n个点的分布必须合理均匀分布。
坐标为实数(浮点数)(0到1之间);所以,不在网格上。
点需要(必须)不是随机的;事实上,我想要一个确定性算法,具有可证明的属性(不是基于统计数据)。
在单位区间内生成这样的点可以利用黄金比例Phi:
- 以i数为点(i * Phi) mod 1.
如何在 2D 中做到这一点?
如果事先知道点数为N,则((Phi * i) mod 1, i/N) 效果很好。但是那个不在线
对于一些c,点数((Phi * i) mod 1, (c * i) mod 1) 可以,但不清楚哪个 c 最好。特别是点数比较多的时候,我试过的c都有明显的不足
马丁·罗伯茨(准随机的不合理有效性 序列, 2018) 建议 (1/φ2 的倍数, 1/φ22) 其中φ2 = cbrt((9 + sqrt(69))/18) + cbrt((9 − sqrt(69))/18) 是 塑料 数.