我是一名物流程序员,有人问我是否要确定GPS点是否“偏离路线”,即该路线由多个地理空间点(纬度,经度)组成。
确定点是否在路线附近的最佳算法是什么?我将使用C#和SQL Server,但是如果我知道要使用哪种算法,那么实际上这并不重要。
我考虑过
我没有数学学位,但是只要提供了正确的术语和搜索引擎,我可能就可以处理任何事情。
我每小时必须至少进行4000次计算,因此由于体积原因,使用映射解决方案可能 Not Acceptable 。
最佳答案
I will have to make at least 4000 calculations an hour so using a mapping solution is probably not acceptable due to volume.
实际上,这是一个完善的示例,其中映射解决方案将是有益的。不是传统的“查看 map 并确定距离”,而是“让数据库确定最接近GPS点的路线是什么”。
由于您说自己不反对使用其他数据库,因此可以考虑:
看一下PostGIS ST_Distance函数或MS SQL Server 2008 STDistance函数。这是一个很好的blog entry,它描述了SQL2005与SQL2008的优点。
您也可以考虑通过gis.stackexchange阅读(或询问更详细的映射)帖子。整个小组致力于空间分析。您可以引用一些很好的讨论
关于math - 地理空间路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8917973/