Interferensobservatoriet: metodenotat
Versjon kshana-observatory/adsb/v1, bygd på kshana-interference-map/adsb/v2. Kun veiledende: dette er en beskrivelse av hvordan publiserte posisjonsrapporter så ut på tidligere dager, ikke en måling av noen mottaker, en prognose, en bekreftelse av interferens eller en tilskrivning av årsaken til den.
Hva observatoriet publiserer#
Ett produkt per UTC-dag og region, fra ett åpent arkiv over flyposisjoner. Hver celle i et fast rutenett på 0.5 grader bredde og lengde er i én av tre tilstander:
| Tilstand | Betydning |
|---|---|
degraded |
En høy andel av flyene som ble samplet i cellen, rapporterte lav navigasjonsnøyaktighet den dagen, tydelig over bakgrunnen for den dagen. |
not_degraded |
Nok fly ble samplet, og andelen oppfylte ikke regelen. |
not_observed |
Dataene tillot ikke en vurdering. Dette er ikke «klar». Hver slik publisert celle har en dataårsak: insufficient_sample, no_day_background eller day_wide_effect. En celle uten noen oppføring i det hele tatt ble sett av færre enn 5 distinkte fly og holdes tilbake. |
Ingenting annet publiseres: ingen årsak, ingen aktør, ingen post per fly. Årsakene beskriver om dagens data var nok, aldri hvorfor nøyaktigheten var lav.
Tre filer per dag (kshana interference-map daily):
observatory-adsb-<dataset>-<day>.geojson: cellene, medschemakshana-observatory-day/1, metoden og dens forhåndsregistrerte parametere, lisensen og kildeangivelsen, utgivelsesregelen og en merknad.observatory-adsb-<dataset>-<day>.png: de samme cellene som et bilde (degradert, ikke degradert, ikke observert skravert; tomme celler ble ikke observert). Tekstbiter i filen gjentar merknaden og lisensen.observatory-adsb-<dataset>-<day>.incidents.json:schemakshana-incident-report/1. Degraderte celler som berører hverandre (diagonaler inkludert) danner én hendelse med en avgrensningsboks og cellene sine.causeer den faste tekstennot attributed. Filen er en inndata til en syklus med rapportering, bekreftelse og varsling (luftfartens rapporteringssyklus som ender i en NOTAM); den er ikke en bekreftelse og ikke en NOTAM.
og en .manifest.json med antall byte og SHA-256 for de tre filene, metode-id-en, inndatatellerne (rader lest og utelatt) og datasettblokken, slik at et produkt kan kontrolleres og gjengis.
Utgivelsesregler (håndhevet av kommandoen)#
- Minst 24 t forsinkelse. Et døgns produkt utgis tidligst ved slutten av den UTC-dagen pluss
--delay-hours(24 eller mer; en mindre verdi avvises). Kommandoen avviser en dag som ennå ikke kan publiseres, og oppgir det tidligste tidspunktet. Det finnes ingen bryter for å forkorte den. - Grove celler.
--cell-degunder 0,5 avvises. - Undertrykking. En celle som er sett av færre enn 5 distinkte fly, publiseres ikke; et antall under 5 er
null(null inkludert), som i grunnmetoden. - Ingen årsaksangivelse. Vokabularet av tilstander og begrunnelser har ingen årsak; en test hevder det.
- Kilder. Bare adsb.lol (ODbL 1,0), eller et brukerdatasett med egen lisens. Data fra OpenSky Network avvises (lisensen deres tillater ikke kommersiell bruk eller videredistribusjon av avledede kart). ADS-B og AIS kombineres aldri.
- Produktets lisens. En ADS-B-fil per celle laget fra adsb.lol er en Derived Database og bærer ODbL 1,0 og adsb.lol-kildeangivelsen i filen. Kshanas kode forblir AGPL-3.0.
Observabelen og grunnmetoden#
Et ADS-B-fly melder hvor nøyaktig det selv mener GNSS-posisjonen sin er: NACp (Navigation Accuracy Category for Position, en horisontal grense på 95 % fra 10 NM ned til under 3 m) og NIC (Navigation Integrity Category, en inneslutningsradius). Grunnmetoden (kshana-interference-map/adsb/v2, docs/INTERFERENCE-MAP.md) teller, per celle og dag, andelen av distinkte fly hvis rapporter i cellen for det meste hadde lav nøyaktighet, med disse vernene: bare høyde over 5 000 ft; et fly telles bare hvis det rapporterte god nøyaktighet andre steder samme dag (en utstyrsgrunnlinje); celleandelen må overstige dagens medianandel med en margin; en dag der medianen selv er høy markeres som forstyrret, og ingen celle erklæres degradert. Parametrene ble fastsatt ut fra definisjonene av feltene og fra personvernregelen før noen data ble undersøkt, og er skrevet inn i hver utdatafil. Observatoriet legger til tilstandsvokabularet med tre tilstander, utgivelsesreglene og filene ovenfor, og endrer ingen parameter.
Regionale kjøringer. Med --bbox leses bare rapporter innenfor boksen. Utstyrsgrunnlinjen og dagens bakgrunn beregnes da bare fra rapportene i boksen, og filen sier det (method.scope). Et regionalt produkt er derfor et produkt av den regionens data, ikke et utsnitt av et globalt.
Forholdet til metoden med NACp mot almanakk-HDOP#
Pleninger, Topkova og Steiner, «GNSS interference detection: Methodology utilising ADS-B NACp indicator and GPS almanac data», The Aeronautical Journal 129 (1331), 206 til 223 (2025), doi 10.1017/aer.2024.67, sammenligner posisjonsfeilen som følger av et flys NACp med HDOP (horisontal presisjonsfortynning) for GPS-konstellasjonen fra almanakkdata, og markerer et fly som påvirket når de to er uenige; artikkelen evaluerer metoden på bevisste GPS-jamming-eksperimenter.
Hva vi brukte. Bare det publiserte sammendraget og den bibliografiske posten. Fulltekten var ikke tilgjengelig for oss (bak betalingsmur), så vi kjenner verken kartleggingen fra NACp til et feilestimat, HDOP-beregningen eller terskelverdiene, og vi påstår ikke å gjengi dem.
Hva observatoriet gjør i stedet. Spørsmålet almanakksammenligningen besvarer er «kunne konstellasjonsgeometrien alene forklare denne lave nøyaktigheten?». Grunnmetoden besvarer et beslektet spørsmål uten almanakk: en lav andel må skille seg ut mot samme dags bakgrunn i regionen og mot flyets egne gode rapporter andre steder. Det er en annen og svakere erstatning: den kan ikke si at en time med rolig geometri var degradert der dagens bakgrunn også er lav. En almanakk-HDOP-skårer er ikke implementert. Det er et åpent punkt, som skal bygges fra artikkelens fulltekst og den offentlige GPS-almanakken og forhåndsregistreres før den kjøres; inntil da siteres den, den påstås ikke.
Å gjengi et produkt#
scripts/fetch_adsblol_day.sh 2026-09-15 /path/to/cache # fetch and extract one day, hashes recorded
kshana interference-map daily /path/to/cache/extracted/2026-09-15 \
--dataset adsb-lol --day 2026-09-15 --bbox 53.5,9.0,66.0,31.0 --out products/
Rørledningen er deterministisk i alt den publiserer (saltet for identifikatorer per kjøring endrer bare interne hasher som aldri skrives ut). Manifestets SHA-256-verdier gjør at en ny kjøring kan sammenlignes byte for byte.
Sensitivitetsstudie#
kshana interference-map sensitivity <input> --dataset adsb-lol --day <day> --out report.json spiller av én dags rapporter på nytt under endringer av én forhåndsregistrert parameter om gangen (to verdier hver, pluss et rutenett på 1,0 grad) og rapporterer, per variant, antallet degraderte, ikke degraderte og ikke observerte celler, Jaccard-indeksen for det degraderte settet mot det registrerte, cellene som skiftet tilstand, og det degraderte arealet. Den endrer ingenting ved den registrerte regelen: en variant er ikke et validert alternativ, og en stor endring under en parameter sier hvor mye avgjørelsen avhenger av den parameteren, ikke hvilken verdi som er riktig. Resultatene for etterkatalogen står i docs/observatory/RESULTS.md.
Begrensninger#
- Dekning. adsb.lol følger frivillige mottakere; åpent hav og tynt dekket luftrom er glisne, og
not_observeder vanlig der. Et kart viser dekningen til kilden sin. - Hva lav nøyaktighet betyr. NACp og NIC faller av andre grunner enn interferens: satellitt- eller forsterkningsbortfall, romvær, mottaker- eller transponderfeil og geometri. Ingen tilstand innebærer en årsak.
- Fly som blir i en påvirket region hele dagen har ingen grunnlinje utenfor den og telles ikke, så metoden undervurderer en vedvarende regional effekt. Sensitivitetsstudien viser effekten av grunnlinjevernet.
- Dagsgrenser er UTC; en hendelse som krysser midnatt deles mellom to dager.
- Ingen referansesannhet. Observatoriet har ingen ekstern uavhengig referanse: hvert tall er MODELLED, og ingen rad i verifikasjonsmatrisen bygger på det.
- Emnets sensitivitet. Kart av denne typen er politiske. Observatoriet oppgir en metode, en forsinkelse og et vokabular, og ingenting mer; det navngir ikke stater eller aktører, og det publiserer ikke i sanntid.