Геопространственная маршрутизация

Я программист по логистике, и меня попросили выяснить, является ли точка GPS "вне маршрута", когда маршрут состоит из ряда геопространственных точек (широта, долгота).

Каков наилучший алгоритм для определения того, находится ли точка рядом с маршрутом? Я буду использовать C# и SQL Server, но на самом деле это не имеет большого значения, если я знаю, какой алгоритм использовать.

Я рассматривал

  1. Нахождение двух ближайших точек и определение того, превышает ли площадь треугольника определенный предел.
  2. Использование векторов для всех пар точек, а затем проверка, не являются ли какие-либо из них "похожими" на вектор, определяемый точкой GPS и точкой, которую я определяю как "следующую" на маршруте.

У меня нет математического образования, но я, вероятно, могу справиться с чем угодно, если у меня есть правильные термины и поисковая система.

Мне придется делать не менее 4000 расчетов в час, поэтому использование картографического решения, вероятно, неприемлемо из-за объема.

10
задан Doug Heeren 20 January 2012 в 22:05
поделиться