Multilatération basée sur le temps

Aug 22 2020

Je ne suis pas tout à fait certain, mais je pense que ce forum est le plus approprié pour cette question.

Je connais l'emplacement de trois observateurs. Une source proche, dont l'emplacement est inconnu , émet un faisceau de rayonnement à une heure inconnue. Je connais l'heure à laquelle chaque observateur "a vu" le rayonnement, et je connais aussi la vitesse de propagation du faisceau (c'est-à-dire la vitesse de la lumière).

Existe-t-il un moyen de déterminer l'emplacement de la source? Ou, peut-être, pour déterminer quelques informations sur son emplacement (sa direction, etc.) ? J'ai fait des recherches sur les techniques de multilatération, mais je ne trouve rien qui résout ce problème particulier.

[ÉDITER]:

Cela semble être similaire à ce que je recherche: code de multilatération

À savoir, je veux coder un algorithme qui, étant donné les horodatages et les emplacements des observateurs, peut calculer l'emplacement de nombreuses sources. Cependant, les réponses à la question ci-dessus ne sont pas particulièrement utiles.

Réponses

1 FelixIP Aug 23 2020 at 09:28

Dans l'espace 2D, la solution semble d'une simplicité trompeuse, car vous n'avez qu'un seul paramètre à optimiser, c'est-à-dire T0, c'est-à-dire le temps de libération du rayonnement. Lorsque cela est connu, on peut calculer les distances, tamponner les points en conséquence et localiser avec précision le «point» où les 3 tampons se croisent. C'est une fonction assez simple pour le SIG dans le système de coordonnées projetées :

Notez que les stations sont étiquetées par des horodatages en secondes et j'ai utilisé une vitesse égale à 343 m/sec. Longueur des arêtes exprimée en mètres.

La partie délicate consiste à définir l'intervalle de recherche pour T0. J'ai défini l'intervalle supérieur très proche du minimum de temps (6) et défini l'intervalle inférieur comme 6 - (1036/343), c'est-à-dire utilisé le bord le plus long entre les stations exprimé en secondes. Voici les résultats du test exécuté dans cette plage :

Les valeurs de la colonne DISTANCE sont calculées comme le total minimum des distances aux deux voisins les plus proches pour chaque point d'intersection, c'est-à-dire la valeur à minimiser. La fonction SIG renvoie également le nombre de paires d'intersection - troisième colonne. Comme on peut le voir, la fonction a potentiellement plus de 1 minimum, ce qui la rend difficile à optimiser. Cependant, nous pouvons écarter en toute sécurité les cas où une seule paire d'intersections a été trouvée, car cela signifie que seuls 2 tampons sur 3 se croisent. Il rend la fonction unimodale. J'ai donc utilisé des valeurs colorées pour les limites de recherche et la tâche résolue de la recherche de la section dorée en 10 secondes. Le minimum avec une précision de position centimétrique a été trouvé à T0 = 5,2620 secondes.