Maskinoversettelse, ikke gjennomgått av en morsmålsbruker. Engelsk er referansen.

Sider for scenariotyperRediger på GitHubKilde: docs/kinds/by-kind/campaign.md

campaign (scenariotype)

Scenariotype i motoren v0.40.0, familie Kampanjer. Veiledende: analyseutdata fra et forsknings- og ingeniørverktøy, ikke typegodkjent navigasjonsutstyr og ikke en sikkerhetskritisk tjeneste for menneskeliv. Hver etikett her er motorens eller verifikasjonsmatrisens; en type er MODELLED med mindre matrisen sier noe annet (hvordan en etikett fortjenes: Evidens-avsnittet i README).

Hva den gjør#

Kampanje: eksisterende scenariotyper satt sammen til én kjøring, der hvert tall er lest fra en reell kjøring av den navngitte typen. Fire deler, i en hvilken som helst kombinasjon. PHASES: et lenket oppdrag på én felles tidslinje -- hver fase kjører ett eller flere scenarioer (for eksempel jamming, deretter spoofing, deretter en klokke i holdover med et treghetsnavigasjonssystem som glir ved siden av, deretter en integritetsalarm, deretter gjenoppretting), utdataene leses inn i navngitte kanaler (klokkens tidsfeil mot sin vaktgrense, bærebølge-til-støytetthetsforhold mot sporingsgulvet, beskyttelsesnivå mot varslingsgrensen, posisjonsfeil, satellitter som spores, alarmflagg) ved en forhåndsinnstilling per type eller ved eksplisitte resultatstier, og resamples på et felles rutenett med null-ordens holdning, med fasegrenser og hendelser; tilstand føres videre ved carry (en kanal fortsetter fra forrige fases sluttverdi), handoff (et tall fra forrige fase skrives inn i denne fasens scenario) og end_at (en fase slutter på et tidspunkt en kjøring beregnet, for eksempel en spoofing-monitors deteksjonstid). SWEEP: et rutenett over én til tre punktnotasjonsnøkler i scenarioet for en hvilken som helst type (et heltallssegment indekserer en liste av tabeller, som i system.2.sisre_m), med metrikker lest ved resultatsti og, med flere enn én kjøring, et seedet Monte Carlo-ensemble i hver node. MONTE_CARLO: realisering k kjøres ved base_seed + k; hver metrikk rapporterer gjennomsnitt, standardavvik, nærmeste-rang 5.-/50.-/95.-persentiler og et bootstrap-konfidensintervall på 95% med fast seed for gjennomsnittet. COMPOSE: flere scenarioer under felles verdier (én jammers effekt og posisjon skrevet inn i en maritim mottaker og en veimottaker), med en samlet beste/verste oppsummering. Resultatet inneholder en kampanje-hash, en digest over alle medlemsresultater og en enhetsoppføring for hvert utsendt tall; interoperabilitetseksportene skriver hvert medlemsscenario som har geometri som et eget filsett. Sammensetningsidentiteter er testet: en kampanje med én fase gjengir den frittstående kjøringen bit for bit, et ensemble med fast seed er byte-stabilt, og på en klokke med hvit frekvensstøy faller ensemblets gjennomsnitt inne i det rapporterte intervallet med en spredning som stemmer med sqrt(q_wf * tau). MODELLED: den additive carry-en og null-ordens holdning er modelleringsvalg, og hver fase har etiketten til typen som kjørte den.

Én kjøring av scenarios/campaign-sweep-jammer-power.toml oppsummeres som: campaign 46aa07cb58fb | Jammer power sweep: availability and J/S against transmit power | sweep of jamming: 13 nodes over [jammer_power] | 13 member runs (MODELLED)

Inndata#

Fra skjemaet (kshana kinds --json):

  • Påkrevde felt: ingen
  • Valgfrie felt: title, seed, timeline, phases, sweep, monte_carlo, compose

Eksempelet scenarios/campaign-sweep-jammer-power.toml setter blant annet:

Felt Verdi Enhet
kind campaign tekst
seed 20260928 1
sweep.axes[0].key jammer.power_dbw tekst
sweep.axes[0].name jammer_power tekst
sweep.axes[0].start -50 ikke oppgitt
sweep.axes[0].steps 13 ikke oppgitt
sweep.axes[0].stop 10 ikke oppgitt
sweep.axes[0].unit dBW tekst
sweep.metrics[0].name tilgjengelighet tekst
sweep.metrics[0].path fom.availability_under_jamming tekst
sweep.metrics[1].name mean_js tekst
sweep.metrics[1].path fom.mean_js_db tekst

Kjør den#

kshana scenarios/campaign-sweep-jammer-power.toml

22 medfølgende scenarioer bruker denne typen; de andre står i scenarios/.

Hva den gir#

Skalarresultatene fra den kjøringen, med enhetene motoren oppgir:

Resultat Verdi Enhet
evidence.id_rule den stabile id-en til matriseraden (ID tekst
evidence.matrix docs/VERIFICATION-MATRIX.md tekst
evidence.tier PARTNER tekst
reproducibility.campaign_hash 46aa07cb58fbfbd3784c2e1ef8d6070508ad5f5c tekst
reproducibility.run_digest a082a9466bcd5c8788a2a46373a47e418db1393c tekst
reproducibility.runs_total 13 antall
seed 20260928 1
sweep.axes.jammer_power.key jammer.power_dbw tekst
sweep.axes.jammer_power.scale lin tekst
sweep.axes.jammer_power.unit dBW tekst

Resultatetikett (motorens): MODELLED composition of existing scenario kinds. Every number is read from a real run of the named kind; the chaining (additive carry of a channel across a phase boundary, zero-order hold onto the timeline grid, a phase ended at a computed time) is a modelling choice, and each phase carries the labe

Diagrammet motoren skriver for scenarios/campaign-sweep-jammer-power.toml, typen campaign

Evidens#

MODELLED: radene i verifikasjonsmatrisen som navngir denne typen.

  • MODELLED iq::campaign::detect og kampanjekjøreren: en valgfri [monitors]-tabell kjører IQ-monitorene på hver celle i kjørerens enkeltpass. Tester: iq_campaign.rs.
  • MODELLED iq::campaign::detect (windows, roc) og iq::campaign::report::rocs: hver celle i en kampanje med monitorer beholder, per alarmtype og kanal, maksimum av monitorens egen teststatistikk over hvert oppgitte hendelsesvindu (positiv) og over t
  • MODELLED iq::labfit (campaign, cn0, iqfit, iqreport) og [input] campaign på kshana iq labfit, Python kshana.iq_labfit og MCP-verktøyet labfit (kampanjemapper kun innenfor arbeidsmappen): leser en kshana iq campaign-utdatamappe etter dens Tester: iq_labfit_followup.rs.
  • MODELLED Fasene til typen campaign: hver fase kjører ett eller flere scenarioer av eksisterende typer gjennom run_toml, leser utdataene inn i navngitte kanaler (klokkens tidsfeil og vaktgrense, gjennomsnittlig effektivt bærebølge-til-støytetthetsforhold og sporingsgulv, v Tester: campaign_composition_reference.rs.
  • og 4 til i matrisen.

Radene kjøringen selv brukte, med den uavhengige referansen matrisen gir hver (de offentlige kildene er navngitt der):

  • MODELLED Geometrisk J/S-linkbudsjett, anti-jam C/N₀, tap av lås per satellitt. Uavhengig referanse (InternalConsistency): Likningen for anti-jam C/N₀-linkbudsjett kryssjekket mot en uavhengig numpy-utledning (deler samme lukkede form → InternalConsistency) pluss en karakterisering av C/N₀-degradering i virkelige JammerTest-2024-data. 0,30 runde 2, blokkert (forblir MODELLED): den målte C/N0-nedgangen i JammerTest 2024 mot en linkbudsjettprediksjon (forhåndsregistrert 6a66994b, innen 3 dB) ble ikke kjørt fordi F8.1-antenneposisjonen og -pekingen at
  • MODELLED Deterministisk, scenariohashet, SBOM + gates med gylne verdier på tvers av plattformer. Uavhengig referanse (ExternalDataset): SBOM-overensstemmelse med det offisielle CycloneDX 1,5 JSON Schema (+ gyldige SPDX-identifikatorer), en ekstern publisert standard, null valideringsfeil over hele avhengighetsgrafen; delen om FoM-determinisme / byte-reproduserbarhet er fortsatt en festet selvkonsistenssjekk, så raden forblir MODELLED
  • PARTNER Ikke levert — Kshana modellerer signalytelse, ikke nyttelast- eller antennemaskinvare. Uavhengig referanse (NoneKind): ingen: en disiplin som eies av partneren, uten modul og uten test etter utforming
  • MODELLED Sweep-delen til typen campaign (én til tre punktnotasjonsnøkler av en hvilken som helst type, på det generiske sveipets akseverdier, eventuelt et ensemble i hver node) og monte_carlo-sek. Uavhengig referanse (InternalConsistency): Den lukkede formen for fasens randomvandring under hvit frekvensstøy, varians q_wf tau (NIST Technical Note 1337), for statistikkmaskineriet, og byte-likhet med de frittstående kjøringene for seedingen. Den kontrollerer ensemble-aritmetikken på motorens egen klokkemodell, ikke et eksternt datasett

Begrensninger#

Hva kjøringens egen rapport sier ikke er modellert eller ikke er validert:

  • MODELLED sammensetning av eksisterende scenariotyper. Hvert tall er lest fra en reell kjøring av den navngitte typen; lenkingen (additiv carry av en kanal over en fasegrense, null-ordens holdning på tidslinjens rutenett, en fase avsluttet på et beregnet tidspunkt) er et modelleringsvalg, og hver fase har etiketten til typen som frembrakte den. (resultat label)
  • MODELLED: den additive carry-en og null-ordens holdning er modelleringsvalg, og hver fase har etiketten til typen som kjørte den. (typekatalog (kshana kinds --json))
  • MODELLED: slik typen jamming er. (kommentar i scenariofilen, linje 14)
  • Robusthet mot jamming uten GNSS er MODELLED, ikke validert: kontrollert mot sin egen lukkede/analytiske identitet – fanger opp transkripsjons- og koeffisientfeil, men er ikke en uavhengig ekstern referanse. (verifikasjonsmatrise (docs/MODELLED-RATIONALE.md))
  • Reproduserbarhet og programvarekvalitetssikring er MODELLED, ikke validert: en delpåstand er kontrollert eksternt, men hele funksjonen setter sammen modellerte deler, så funksjonen forblir modellert. (verifikasjonsmatrise (docs/MODELLED-RATIONALE.md))
  • Parametersveip og seedede Monte Carlo-ensembler over en hvilken som helst scenariotype er MODELLED, ikke validert: kontrollert mot sin egen lukkede/analytiske identitet – fanger opp transkripsjons- og koeffisientfeil, men er ikke en uavhengig ekstern referanse. (verifikasjonsmatrise (docs/MODELLED-RATIONALE.md))

Se også#