Zeitbasierte Multilateration
Ich bin mir nicht ganz sicher, aber ich denke, dieses Forum ist für diese Frage am besten geeignet.
Ich kenne den Standort von drei Beobachtern. Eine nahe Quelle, deren Standort unbekannt ist, sendet zu einem unbekannten Zeitpunkt einen Strahlungsstrahl aus. Ich kenne die Zeit, zu der jeder Beobachter die Strahlung "gesehen" hat, und ich kenne auch die Ausbreitungsgeschwindigkeit des Strahls (nämlich die Lichtgeschwindigkeit).
Gibt es eine Möglichkeit, den Ort der Quelle zu bestimmen? Oder vielleicht, um einige Informationen über seinen Standort (seine Richtung usw.) zu ermitteln? Ich habe einige Nachforschungen zu Multilaterationstechniken angestellt, kann jedoch nichts finden, das dieses spezielle Problem löst.
[BEARBEITEN]:
Dies scheint dem zu ähneln, wonach ich suche: Multilateration Code
Ich möchte nämlich einen Algorithmus codieren, der anhand der Zeitstempel und Standorte der Beobachter den Standort vieler Quellen berechnen kann. Die Antworten auf die obige Frage sind jedoch nicht besonders nützlich.
Antworten
Im 2D-Weltraum scheint die Lösung täuschend einfach zu sein, weil Sie nur einen Parameter optimieren müssen, nämlich T0, dh die Zeit der Strahlungsfreisetzung. Wenn dies bekannt ist, kann man Entfernungen berechnen, Punkte entsprechend puffern und den "Punkt" genau lokalisieren, an dem sich alle 3 Puffer schneiden. Dies ist eine ziemlich einfache Funktion für GIS im projizierten Koordinatensystem:
Beachten Sie, dass Stationen mit Zeitstempeln in Sekunden gekennzeichnet sind und ich eine Geschwindigkeit von 343 m/s verwendet habe. Kantenlänge in Metern ausgedrückt.
Der knifflige Teil besteht darin, das Suchintervall für T0 zu definieren. Ich habe das obere Intervall sehr nahe an das Zeitminimum (6) gesetzt und das untere als 6 - (1036/343) definiert, dh die längste Flanke zwischen den Stationen in Sekunden verwendet. Dies sind die Ergebnisse des Testlaufs in diesem Bereich:
Die Werte in der Spalte DISTANCE werden als minimale Summe der Entfernungen zu zwei nächsten Nachbarn für jeden Schnittpunkt berechnet, dh zu minimierender Wert. Die GIS-Funktion gibt auch die Anzahl der Kreuzungspaare zurück – dritte Spalte. Wie man sieht, hat die Funktion möglicherweise mehr als 1 Minimum, was die Optimierung erschwert. Wir können jedoch Fälle verwerfen, in denen nur ein Schnittpunktpaar gefunden wurde, da dies bedeutet, dass sich nur 2 von 3 Puffern schneiden. Es macht die Funktion unimodal. Also habe ich farbige Werte für Suchgrenzen verwendet und die Suche nach dem goldenen Schnitt in 10 Sekunden gelöst. Das Minimum mit zentimetergenauer Positionsgenauigkeit wurde bei T0 = 5,2620 Sekunden gefunden.