最近点格问题类型的提问

3

我似乎找不到解决这个问题的方法。让我们将Z^2设置为R^2中的整数格子。给定一个有理射线(即斜率为有理数的向量),是否有一种快速方法来计算此向量最接近的格点,以正交距离表示?这种方法能否推广到R^n中的超平面?

1个回答

2
您的问题似乎没有很好地定义。您如何定义到一个向量的距离? 如果您正在询问从晶格到方向为有理向量的线的最近距离(如您的概括所示),那么由于有理性,答案为零:您的方向是D =(n1 / d1,n2 / d2)。然后,点(d2 * n1,d1 * n2)在该直线上。
对于最小的非零距离:
我们可以假设d1 = d2 = d:D =(n1 / d,n2 / d)(您可以通过设置例如d = d1 * d2来获得)。现在,从单位网格晶格到线的可能距离为(Z * n1 + Z * n2)/ d =(Z * gcd(n1,n2))/ d,其中Z是整数集。 (这是Bézout定理的结果)。因此,最小的非零距离是gcd(n1,n2)/ d,其中gcd(。,。)给出两个整数的最大公约数。

距离是欧几里得距离。在这种情况下,我想要最小化法线方向上的距离。当然,我是在谈论线外的点! - lemiller
我可能说错了,但如果直线上有一点,无论你取多远的距离,在那一点处距离都是零,不管是欧几里得距离(对于一条线来说,这与正常方向的距离相同),还是L1距离,或者其他任何距离。也许我没有理解你的问题。 - Samuel Hornus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接