← Dynamics Lab

DYNAMICS LAB / ENGINE 01

Drone Dynamics
Engine.

Probabilistic Motion & Multi-Agent Behaviour Modeling

Quanto bene un modello riesce a descrivere il movimento di un drone? Il motore confronta diversi modelli matematici sugli stessi voli civili registrati, misura gli errori delle stime e verifica se l’incertezza dichiarata rispecchia le osservazioni. Un simulatore separato studia gruppi di elementi virtuali, ciascuno con le proprie regole di movimento.

Quanto è buona una stima del movimento?

  • Confronta modelli diversi sugli stessi voli registrati.
  • Misura la distanza tra le stime e le posizioni osservate.
  • Verifica se gli intervalli di incertezza sono realistici.

In praticaPuoi vedere quale modello stima meglio le posizioni osservate nei voli di test e quanto spesso la realtà rientra nell’intervallo previsto.

Drone militare RQ‑11 Raven ad ala fissa in volo, visto dal basso contro il cielo blu.
RQ‑11 Raven, drone militare ad ala fissa. Foto d’archivio. Lo studio analizza voli civili. U.S. Army · Public domain (U.S.) · ridimensionata per il web.
Esplora la visualizzazione del progetto
IDF_DS / Lap030_gps / RECORDED GNSSLOCAL ENU / m · CC BY 4.0 · DISPLAY STRIDE

Quali voli studiamo

Drone Dynamics confronta modelli di movimento per droni civili su voli registrati. Gli esperimenti coprono due ambienti distinti.

All’aperto · ala fissa

Un solo velivolo e un circuito ripetuto. Il benchmark confronta posizioni orizzontali GNSS. La quota sul terreno non è stata verificata.

Velocità mediana al suolo
40 km/h · 11,2 m/s
Intervallo centrale dell’80% dei campioni GPS
25–60 km/h · 7,1–16,7 m/s
DME-001 · 30 voli

Al chiuso · quadricottero

Lo studio valuta le misure di distanza a banda ultralarga (UWB). Il sistema di motion capture registra anche la coordinata verticale.

Posizione verticale nel riferimento del laboratorio
0,12–1,72 m

Intervallo misurato rispetto all’origine locale. L’altezza sopra il pavimento richiede un riferimento al pavimento.

DME-002 · 3 voli

Le simulazioni di gruppo usano unità astratte. I valori di quota e velocità qui sopra riguardano solo i voli registrati.

Perché alcuni radar faticano a rilevare i piccoli droni

Un radar primario può rilevare un drone. La capacità dipende dal sensore, dalla copertura e da quanto l’eco si distingue dallo sfondo.

Eco debole
Un piccolo velivolo può riflettere poca energia verso il radar. L’intensità dell’eco dipende anche dalla forma e dall’angolo di osservazione.
Volo vicino al terreno
Edifici e rilievi possono interrompere la linea di vista. I riflessi del terreno e delle strutture possono confondersi con l’eco del drone.
Poco movimento lungo la linea di vista
Alcuni radar usano la variazione di distanza per separare gli oggetti in movimento dallo sfondo. Se varia poco, distinguerli può essere più difficile.

Esistono radar progettati per questi bersagli. Il radar secondario richiede la risposta di un transponder compatibile. Drone Dynamics usa GNSS, UWB e motion capture. La rilevabilità radar è un problema distinto da quello misurato negli studi.

FontiIDF_DS · ZenodoMILUV · DECARFAA · RadarFAA · UAS DetectionIET Radar, Sonar & Navigation

Problema, contributo e mercato

Problema affrontato
Per scegliere un metodo di stima del moto serve capire come si comporta con tracce rumorose, sensori imperfetti e condizioni diverse.
Contributo rispetto allo stato dell’arte
I filtri e i modelli cinematici sono metodi noti. Drone Dynamics li confronta con lo stesso protocollo su voli storici e separa il controllo delle misure UWB dagli esperimenti sintetici multiagente.
Uso commerciale possibile
Produttori di droni civili, integratori e laboratori di robotica possono provarlo per analizzare telemetria registrata, confrontare stimatori e preparare test al banco.
Contesto di mercato
Ecosistemi come PX4 offrono strumenti di simulazione. Il possibile spazio commerciale è un servizio di benchmark offline e qualificazione preliminare dei dati per la robotica civile.

Valore lordo potenziale per cliente, all’anno

4320 € – 12.960 €

24 sessioni di benchmark/anno × 2–6 ore risparmiate per attività × 90 €/ora.

Scenario illustrativo da verificare in un pilota, al lordo dei costi di adozione.

RiferimentiPX4 · SimulationKalman · Linear filteringDECAR · MILUV

MATHEMATICAL CORE

Modelli matematici disponibili.

Cosa fanno i singoli modelli

Apri un modello per vedere il problema, il contributo nel progetto e un possibile impiego professionale.

RW
Problema affrontato
Rappresentare uno spostamento imprevedibile.
Contributo rispetto allo stato dell’arte
Il random walk è il riferimento senza direzione persistente nel benchmark.
Uso commerciale possibile
Misurare quanto uno stimatore migliori rispetto a una base elementare.
CV
Problema affrontato
Estrapolare un tratto breve a velocità stabile.
Contributo rispetto allo stato dell’arte
La velocità costante è una baseline cinematica valutata con gli stessi orizzonti dei modelli più complessi.
Uso commerciale possibile
Stabilire un riferimento per rivedere la telemetria in tratti regolari.
CA
Problema affrontato
Estrapolare un tratto in cui la velocità cambia.
Contributo rispetto allo stato dell’arte
La baseline ad accelerazione costante rende misurabile il costo di assumere un’accelerazione persistente nello stesso test.
Uso commerciale possibile
Confrontare offline gli stimatori durante accelerazioni e frenate.
KF
Problema affrontato
Stimare lo stato a partire da misure rumorose.
Contributo rispetto allo stato dell’arte
Il filtro di Kalman lineare è un metodo consolidato. Qui è valutato con lo stesso protocollo dei modelli cinematici e stocastici.
Uso commerciale possibile
Usarlo come riferimento nel collaudo offline di stimatori per telemetria civile.
CRW
Problema affrontato
Riprodurre traiettorie irregolari con persistenza del moto.
Contributo rispetto allo stato dell’arte
Il random walk correlato rappresenta la dipendenza fra passi ed è confrontato direttamente con quello non correlato.
Uso commerciale possibile
Preparare test stocastici per il replay di tracce civili.
OU
Problema affrontato
Rappresentare fluttuazioni che tendono a rientrare verso un livello medio.
Contributo rispetto allo stato dell’arte
Il processo di Ornstein–Uhlenbeck porta una baseline a ritorno verso la media nel confronto sui voli.
Uso commerciale possibile
Esplorare offline la sensibilità a fluttuazioni con ritorno alla media.
Ensemble
Problema affrontato
Combinare previsioni con punti deboli diversi.
Contributo rispetto allo stato dell’arte
L’ensemble usa pesi stimati solo sul set di validazione, per confrontare la combinazione e i singoli modelli sui voli di test.
Uso commerciale possibile
Valutare in un pilota offline se combinare stimatori riduce l’errore utile al cliente.
HMM
Problema affrontato
Descrivere possibili regimi di movimento da osservazioni indirette.
Contributo rispetto allo stato dell’arte
Il modello di Markov nascosto è usato qui a scopo descrittivo, con stati latenti di una traccia storica.
Uso commerciale possibile
Raggruppare segmenti di telemetria da sottoporre a revisione tecnica.
EKF
Problema affrontato
Stimare lo stato quando dinamica o misure sono non lineari.
Contributo rispetto allo stato dell’arte
L’EKF è un metodo noto, presente nel registro del motore. La campagna pubblicata non riporta una misura di prestazione per questo modello.
Uso commerciale possibile
Preparare test offline per una futura prova di fusione sensoriale non lineare.
Particle Filter
Problema affrontato
Rappresentare più ipotesi plausibili sullo stato.
Contributo rispetto allo stato dell’arte
Il filtro a particelle è disponibile nel registro come metodo a campioni. La campagna pubblicata non lo valuta.
Uso commerciale possibile
Progettare test per sensori con ambiguità o più ipotesi di localizzazione.
Monte Carlo
Problema affrontato
Esplorare come la variabilità degli input si trasmette ai risultati.
Contributo rispetto allo stato dell’arte
Il motore usa repliche riproducibili per confrontare scenari sintetici. Monte Carlo è un metodo di campionamento consolidato.
Uso commerciale possibile
Ripetere stress test virtuali prima di progettare prove fisiche.
Calibrazione UWB
Problema affrontato
Stimare il residuo di una misura di distanza indoor.
Contributo rispetto allo stato dell’arte
DME-002 confronta la stessa misura prima e dopo una calibrazione esistente su voli MILUV, esplicitando riferimento e copertura.
Uso commerciale possibile
Impostare criteri di collaudo per sensori di distanza in un pilota indoor.
Consenso sulle velocità
Problema affrontato
Capire come una regola locale influenzi la coesione del gruppo.
Contributo rispetto allo stato dell’arte
Il consenso sulle velocità è una regola nota. DME-003 la confronta con scenari senza interazione o con osservazioni parziali in repliche sintetiche.
Uso commerciale possibile
Preparare scenari di simulazione per test da banco su robot civili coordinati.

Ipotesi di mercato e valore del motore

Dieci metodi implementati e controlli numerici. Sei modelli di moto confrontati sullo stesso test set; gli stimatori non lineari sono verificati con casi di controllo, senza attribuire loro prestazioni sui voli non misurate.

  1. 01Random Walk
  2. 02Correlated Random Walk
  3. 03Constant Velocity
  4. 04Constant Acceleration
  5. 05Ornstein–Uhlenbeck
  6. 06Kalman Filter
  7. 07Extended Kalman Filter
  8. 08Particle Filter
  9. 09Hidden Markov Model
  10. 10Monte Carlo
Istruzioni e documentazione ↗Vai agli esiti dei modelli

SIMULATION LAB / PRECOMPUTED REPLAY

Cinquanta agenti. Un esperimento riproducibile.

Replay interattivo di stati già calcolati dal motore. Scegli scenario, agente e istante: il sito visualizza il risultato della simulazione, mentre l’elaborazione scientifica rimane locale.

…
DATI SIMULATIStato simulatoOsservazione rumorosa

Unità spaziali astratte. Interazioni locali e rumore configurati; nessuna validazione aerodinamica o geografia reale. Zoom con rotella, trascina per spostare.

DATI SPERIMENTALI REALI / IDF_DS

DME-001 — Probabilistic Flight Modeling Benchmark

Primi 30 file GPS ordinati del dataset IDF_DS: 12 sviluppo, 9 validazione, 9 test. Gli stessi 439 istanti di origine e gli orizzonti osservati a 1, 3 e 5 secondi per tutti i modelli. Riferimento GNSS registrato, con errore totale sconosciuto.

ModelloADE medio (m)FDE a 5 s (m)RMSE (m)Copertura nominale 95%IC bootstrap ADE (m)
RW34,79657,40541,42696,1%33,395–36,455
CV12,74420,82722,18690,65%11,97–13,573
CA18,12935,42229,65288,38%17,097–19,134
KF9,12217,24215,83290,44%8,589–9,716
CRW9,27117,2415,4490,97%8,724–9,903
OU180,27237,54208,81598,02%170,895–190,878
ENSEMBLE9,617,415,11692,63%9,085–10,193

Metriche con uguale peso per volo; bootstrap su 9 file, non su campioni temporali indipendenti. Stessa piattaforma e circuito, giorni di registrazione non disponibili. I risultati descrivono questo campione.

Nel campione di test, il filtro di Kalman riduce l’errore rispetto alla velocità costante. Accelerazione costante ed ensemble non migliorano automaticamente il risultato. Anche gli esiti negativi e la copertura insufficiente degli intervalli restano visibili.

DME-001

Conclusioni dell’esperimento

Sui nove voli di test, Kalman ha ottenuto il minore errore medio di posizione, 9,12 m, di poco davanti a CRW con 9,27 m. L’ensemble ha avuto il miglior RMSE, 15,12 m, mentre il suo errore medio era 9,60 m. La scelta del modello dipende quindi dalla misura che si vuole ridurre.

Limiti della prova. I voli condividono piattaforma e circuito. La posizione GNSS è un riferimento rumoroso e il confronto non dimostra che l’ordine resti lo stesso su altri voli.

Esito per modello
RW
Riferimento casuale: errore medio 34,80 m, più alto del modello a velocità costante.
CV
Velocità costante: errore medio 12,74 m, utile come confronto semplice.
CA
Accelerazione costante: 18,13 m di errore medio, peggio di CV in questa prova.
KF
Kalman: errore medio più basso, 9,12 m.
CRW
Passeggiata correlata: 9,27 m di errore medio, vicino a Kalman.
OU
Ornstein–Uhlenbeck: errore medio più alto, 180,27 m. L’alta copertura non compensava la scarsa precisione.
Ensemble
Combinazione di modelli: RMSE più basso, 15,12 m.
HMM
Raggruppa schemi di movimento in stati descrittivi. Gli stati non hanno etichette di intenzione verificate.
EKF
Filtro di Kalman esteso: disponibile nel core, senza un esito misurato in DME-001.
Particle Filter
Disponibile nel core, senza un esito misurato in DME-001.
Monte Carlo
In DME-003, 100 repliche sintetiche di Random Walk hanno prodotto una distribuzione degli esiti finali.

DATI SPERIMENTALI REALI / MILUV / SOURCE SUBSTITUTION

DME-002 — Le misure e il loro riferimento.

AERPAW non era acquisibile tramite i collegamenti pubblici disponibili. Con la sostituzione autorizzata usiamo MILUV: tre voli indoor, distanze UWB e riferimento derivato da motion capture. Le cifre sono errori di distanza, non errori di posizione 3D.

34.019UWB range observations
3Selected recorded flights
0,308 mCalibrated range RMSE
84,01%Empirical95% range coverage

Calibrazione e riferimento provengono dalla stessa pubblicazione; non dimostrano una graduatoria indipendente dei sensori. La copertura empirica è inferiore al 95% nominale e l’incertezza sistematica totale non è disponibile.

DME-002

Conclusioni dell’esperimento

Su tre voli MILUV, con 34.019 misure di distanza, la calibrazione pubblicata ha ridotto l’errore assoluto medio UWB da 22,4 a 17,7 cm. L’intervallo nominale al 95% copriva però solo l’84,0% delle osservazioni, quindi l’incertezza dichiarata era troppo stretta in questo campione.

Limiti della prova. Si tratta di distanze, non di posizione tridimensionale. Il confronto è descrittivo: non è accertato che i tre voli siano indipendenti dai dati usati per calibrare il sensore.

DATI SIMULATI / MULTI-AGENT CORE

DME-003 — Multi-Agent Stochastic Dynamics

Cinque scenari astratti, 1/5/10/20/50 agenti e 20 seed per configurazione. 500 simulazioni principali, 15 prove di sensibilità e ripetizione esatta con seed fissato. Interazioni di consenso locale delle velocità, osservazioni parziali e agenti eterogenei.

AgentsRunsMedian/run (ms)Median/step (ms)
110011,5080,058
510012,0840,06
1010012,3560,062
2010013,0260,065
5010015,3830,077

Mini M1 / NumPy / 200 steps per main run / includes state recording. These are measured synthetic benchmark timings on this machine.

DME-003

Conclusioni dell’esperimento

Nelle 500 simulazioni, il consenso locale tra 50 agenti ha ridotto la dispersione media delle velocità da 4,86 nello scenario con rumore (B) a 0,29 nello scenario C. Rendere mancanti le osservazioni nello scenario D ha abbassato la copertura al 69,8% lasciando invariata la traiettoria sottostante nel confronto con B.

Limiti della prova. Sono risultati in unità astratte, prodotti dalle regole del simulatore. Descrivono l’effetto delle ipotesi provate e non il comportamento di droni reali.

LOCAL WORKSPACE / REAL COMPUTATION

Un laboratorio locale. Dati persistenti.

Sette aree: overview, modelli, simulazione, confronto, voli, risultati e ipotesi IA. Calcolo di nuovi scenari, replay, stime Kalman esplorative, regioni d’incertezza, zoom e selezione agente. Job, avanzamento e report rimangono disponibili dopo una ricarica.

Schermata autentica del laboratorio locale; dati e stati calcolati dal motore.
Schermata autentica del laboratorio locale; dati e stati calcolati dal motore.

ARCHITECTURE / REUSE

Infrastruttura comune. Modelli indipendenti.

Il Mathematical Core e il simulatore non dipendono dai droni. Acquisizione, job persistenti, cache verificata e report riutilizzano lo Shared Research Core, senza modificare algoritmi, API o interfacce dei cinque Research Engines.

Architecture ↗

VALIDATION / UNCERTAINTY / OFFLINE RESEARCH

Risultati con un ambito di validazione.

Traiettorie osservate, stime e simulazioni restano distinte. Il modello non deduce intenzioni e non comanda droni. L’IA locale opzionale propone soltanto interpretazioni referenziate, separate dalle metriche calcolate.

Uncertainty & validation ↗

OPEN SOURCE / APACHE 2.0

Codice aperto. Metodo ripetibile.

Sorgenti originali Apache 2.0, parametri, seed, manifest e report. I dati scientifici IDF_DS e MILUV conservano la licenza CC BY 4.0 e le attribuzioni. Le analisi e l’IA opzionale funzionano localmente.

Sorgente qualificato su macOS Apple Silicon / Python 3.12. Windows e Linux non qualificati; nessun modello IA da scaricare per eseguire gli esperimenti.

python3.12 dynamics/setup.py
.venv-dynamics/bin/python -m dynamics.cli serve