Определение координат робота по расстояниям до маяков, измеренным с одинаковым отклонением
Постановка задачи
Имеем в плоскости 3 маяка с известными координатами (x1,y1), (x2,y2), (x3,y3) и замеренные расстояния до них (z1,z2,z3) известные с точностью до неизвестного одинакового отклонения (z). Требуется определить наиболее вероятные координаты робота (x,y) и соответственно одинаковое отклонение (z), зависящее от смещения часов робота относительно часов маяков.
Источник задачи - система локализации на базе (ультра)звуковых маяков, которые могут быть рассинхронизированы по часам с автономным роботом.
Решение численным методом Ньютона
Решенее предложил mandigit
Запишем уравнение для расстояния ri от i-го маяка до робота:
zi=sqrt((xi-x)^2+(yi-y)^2)+z
Продифференцировав это равенство получим:
dzi = ((xi-x)dx+(yi-y)dy)/sqrt((xi-x)^2+(yi-y)^2)+dz = ((xi-x)dx+(yi-y)dy)/(zi-z)+dz, умножив на (zi-z), получим:
(zi-z)dzi = (xi-x)dx + (yi-y)dy + (zi-z)dz
Тут будет продолжение решения :)
Решение аналитическим методом
Решенее предложил boez
Тут будет решение :)