Formula matematica del Punto di avvicinamento (CPA) più vicino nel radar della nave

2

Recentemente ho cercato la formula matematica per trovare il punto di avvicinamento più vicino (CPA) tra una nave e un'altra nave. Devo applicare la formula nel mio programma di navigazione radar e non riesco a trovare il modo corretto di calcolarla.

Qualcuno sa quale sia la formula corretta (o lo pseudo-codice) invece di tracciarla manualmente?

    
posta Syamilsynz 08.04.2013 - 04:28
fonte

2 risposte

2

Scusa eventuali errori matematici che potrebbero apparire sotto, ma l'approccio di base è valido.

Puoi rappresentare le coordinate della tua nave usando le equazioni parametriche.

Pxy(t) = (x(t),y(t))

Significa che la posizione x della nave è rappresentata come una funzione del tempo e indipendentemente dal fatto che la posizione y è rappresentata come una funzione del tempo.

Ad esempio,

Xa(t) = t; Ya(t) = 2t + 5 rappresenterebbe una linea retta con coordinate (0, 5) at = 0.

Xb(t) = t - 4; Yb(t) = t + 10 rappresenterebbe una linea retta con coordinate (-4, 10) at = 0.

Quindi inserisci entrambe le equazioni parametriche della nave nella formula della distanza per calcolare la distanza l'una dall'altra al tempo = t.

D = sqrt((Xa(t) - Xb(t))2 + ((Ya(t) - Yb(t))2)

Utilizzando gli esempi sopra

D = sqrt((t - (t -4))2 + ((2t + 5) - (t + 10))2)

D = sqrt(16 + t2 -10t + 25) = sqrt(t2 - 10t + 41)

Quindi risolvi l'equazione per il suo minimo (t = 5)

Inserisci il valore per t nella formula della distanza e hai la distanza minima e il tempo tra le 2 navi.

La cosa interessante di questo metodo è che le tue navi non devono viaggiare in linea retta (come nell'esempio sopra), purché le loro posizioni possano essere rappresentate da una funzione. Naturalmente, più il percorso è complesso, più è difficile risolvere il minimo.

Inoltre, questo approccio si traduce in qualsiasi numero di dimensioni in cui vuoi lavorare, non solo in 2-D.

Inoltre, mostra uno dei molti usi di quella classe di calcolo che tutti pensano sia inutile per l'informatica.

Se limiti i movimenti delle navi a linee rette, questo dovrebbe essere relativamente semplice da implementare e funzionerà abbastanza rapidamente. Non penso che esista un modo più rapido e accurato per farlo.

Un'altra cosa buona con questo metodo è che è deterministico in quanto tempo ci vorrà per eseguire. Gli altri suggerimenti per incrementare il tempo e vedere cosa ottieni potrebbero richiedere un numero molto elevato di incrementi per ottenere una risposta. Non saprai quanto tempo ci vorrà prima di eseguirlo per ogni situazione.

    
risposta data 09.04.2013 - 22:29
fonte
1

Se entrambe le navi si stanno muovendo probabilmente calcolerei solo entrambe le loro posizioni (basate sulla direzione corrente e velocità) per ogni minuto nei successivi N minuti - e quindi la distanza euclidea tra i due punti ad ogni intervallo di tempo

Se una nave è ferma puoi fare una distanza più vicina da linea a punto

    
risposta data 08.04.2013 - 05:28
fonte

Leggi altre domande sui tag