campaign (tipo de cenário)
Tipo de cenário do motor v0.40.0, família Campanhas. Consultivo: saída de análise de uma ferramenta de pesquisa e engenharia, não um equipamento de navegação homologado e não um serviço de segurança da vida humana. Todo rótulo aqui é do motor ou da matriz de verificação; um tipo de cenário é MODELLED a menos que a matriz diga outra coisa (como um rótulo é obtido: a seção Evidence do README).
O que faz#
Campanha: tipos de cenário existentes compostos em uma só execução, com cada número lido de uma execução real do tipo de cenário nomeado. Quatro seções, em qualquer combinação. PHASES: uma missão encadeada em uma linha do tempo compartilhada -- cada fase executa um ou mais cenários (por exemplo jamming, depois spoofing, depois um relógio em holdover com um sistema de navegação inercial deslizando ao lado, depois um alarme de integridade, depois a recuperação), as suas saídas são lidas em canais nomeados (erro de tempo do relógio contra a sua guarda, relação portadora/densidade de ruído contra o piso de rastreamento, nível de proteção contra o limite de alerta, erro de posição, satélites rastreados, sinalizadores de alarme) por uma predefinição por tipo de cenário ou por caminhos de resultado explícitos, e reamostradas em uma grade comum por retentor de ordem zero, com fronteiras de fase e eventos; o estado é repassado por carry (um canal continua a partir do valor final da fase anterior), handoff (um número da fase anterior gravado no cenário desta fase) e end_at (uma fase termina em um instante que uma execução calculou, como o instante de detecção de um monitor de spoofing). SWEEP: uma grade sobre uma a três chaves de cenário com pontos de qualquer tipo de cenário (um segmento de número inteiro indexa um array de tabelas, como em system.2.sisre_m), com métricas lidas por caminho de resultado e, com execuções acima de uma, um conjunto de Monte Carlo com semente em cada nó. MONTE_CARLO: a realização k executa em base_seed + k; cada métrica informa média, desvio padrão, percentis 5º/50º/95º pelo posto mais próximo e um intervalo de confiança de 95% por bootstrap com semente fixa sobre a média. COMPOSE: vários cenários sob valores compartilhados (a potência e a posição de um jammer gravadas em um receptor marítimo e em um rodoviário), com um resumo combinado de melhor/pior caso. O resultado traz um hash de campanha, um resumo sobre o resultado de cada membro e uma entrada de unidades para cada número emitido; as exportações de interoperabilidade gravam cada cenário membro que tem geometria como seu próprio conjunto de arquivos. As identidades de composição são testadas: uma campanha de uma fase reproduz a execução isolada bit a bit, um conjunto de semente fixa é estável byte a byte e, em um relógio com ruído de frequência branco, a média do conjunto cai dentro do intervalo informado, com a dispersão coincidindo com sqrt(q_wf * tau). MODELLED: o carry aditivo e o retentor de ordem zero são escolhas de modelagem, e cada fase traz o rótulo do tipo de cenário que a executou.
Uma execução de scenarios/campaign-sweep-jammer-power.toml resume-se assim: campaign 46aa07cb58fb | Varredura de potência do jammer: disponibilidade e J/S contra a potência de transmissão | sweep de jamming: 13 nós sobre [jammer_power] | 13 execuções de membros (MODELLED)
Entradas#
A partir do esquema (kshana kinds --json):
- Campos obrigatórios: nenhum
- Campos opcionais:
title,seed,timeline,phases,sweep,monte_carlo,compose
O exemplo scenarios/campaign-sweep-jammer-power.toml define, entre outros:
| Campo | Valor | Unidade |
|---|---|---|
kind |
campaign | texto |
seed |
20260928 | 1 |
sweep.axes[0].key |
jammer.power_dbw | texto |
sweep.axes[0].name |
jammer_power | texto |
sweep.axes[0].start |
-50 | não indicado |
sweep.axes[0].steps |
13 | não indicado |
sweep.axes[0].stop |
10 | não indicado |
sweep.axes[0].unit |
dBW | texto |
sweep.metrics[0].name |
disponibilidade | texto |
sweep.metrics[0].path |
fom.availability_under_jamming | texto |
sweep.metrics[1].name |
mean_js | texto |
sweep.metrics[1].path |
fom.mean_js_db | texto |
Execute#
kshana scenarios/campaign-sweep-jammer-power.toml
22 cenários incluídos usam este tipo de cenário; os demais estão em scenarios/.
O que ele fornece#
Os resultados escalares dessa execução, com as unidades que o motor declara:
| Resultado | Valor | Unidade |
|---|---|---|
evidence.id_rule |
o id estável da linha da matriz (o ID | texto |
evidence.matrix |
docs/VERIFICATION-MATRIX.md | texto |
evidence.tier |
PARTNER | texto |
reproducibility.campaign_hash |
46aa07cb58fbfbd3784c2e1ef8d6070508ad5f5c | texto |
reproducibility.run_digest |
a082a9466bcd5c8788a2a46373a47e418db1393c | texto |
reproducibility.runs_total |
13 | contagem |
seed |
20260928 | 1 |
sweep.axes.jammer_power.key |
jammer.power_dbw | texto |
sweep.axes.jammer_power.scale |
lin | texto |
sweep.axes.jammer_power.unit |
dBW | texto |
Rótulo do resultado (o do motor): composição MODELLED de tipos de cenário existentes. Todo número é lido de uma execução real do tipo de cenário nomeado; o encadeamento (carry aditivo de um canal através de uma fronteira de fase, retentor de ordem zero sobre a grade da linha do tempo, uma fase encerrada em um instante calculado) é uma escolha de modelagem, e cada fase traz o rótu
Evidências#
MODELLED: as linhas da matriz de verificação que nomeiam este tipo de cenário.
- MODELLED iq::campaign::detect e o executor de campanha: uma tabela opcional [monitors] executa os monitores de IQ em cada célula na passagem única do executor. Testes: iq_campaign.rs.
- MODELLED iq::campaign::detect (windows, roc) e iq::campaign::report::rocs: cada célula de uma campanha com monitores guarda, por tipo de alarme e canal, o máximo da própria estatística de teste do monitor sobre cada janela de evento declarada (positivo) e sobre t
- MODELLED iq::labfit (campaign, cn0, iqfit, iqreport) e
[input] campaignemkshana iq labfit, Pythonkshana.iq_labfite a ferramenta labfit do MCP (apenas pastas de campanha dentro do seu diretório de trabalho): lê uma pasta de saída dekshana iq campaignpelo seu Testes: iq_labfit_followup.rs. - MODELLED As fases do tipo de cenário
campaign: cada fase executa um ou mais cenários de tipos de cenário existentes por meio de run_toml, lê as suas saídas em canais nomeados (erro de tempo do relógio e guarda, relação portadora/densidade de ruído efetiva média e piso de rastreamento, v Testes: campaign_composition_reference.rs. - e mais 4 na matriz.
As linhas que a própria execução exercitou, com a referência independente que a matriz dá a cada uma (as fontes públicas são nomeadas ali):
- MODELLED Orçamento de enlace de J/S geométrico, C/N₀ antijamming, perda de sincronismo por satélite. Referência independente (InternalConsistency): Equação do orçamento de enlace de C/N₀ antijamming conferida contra uma nova derivação independente em numpy (compartilha a mesma forma fechada → InternalConsistency) mais uma caracterização real da degradação de C/N₀ do JammerTest-2024. 0,30 rodada 2, bloqueado (permanece MODELLED): a queda de C/N0 medida no JammerTest 2024 contra uma previsão do orçamento de enlace (pré-registrada 6a66994b, dentro de 3 dB) não foi executada porque a posição e o apontamento da antena F8.1 em
- MODELLED Portões determinísticos, com hash de cenário, de SBOM e de golden entre plataformas. Referência independente (ExternalDataset): aderência à norma do SBOM ao JSON Schema oficial do CycloneDX 1,5 (+ identificadores SPDX válidos) — um padrão externo publicado, zero erros de validação em todo o grafo de dependências; a parte de determinismo das FoMs / reprodutibilidade byte a byte continua sendo uma verificação de autoconsistência fixada, de modo que a linha permanece MODELLED
- PARTNER Não fornecido — o Kshana modela o desempenho de sinal, não o hardware de carga útil/antena. Referência independente (NoneKind): nenhuma: uma disciplina de propriedade do parceiro, sem módulo e sem teste por projeto
- MODELLED A varredura do tipo de cenário
campaign(uma a três chaves com pontos de qualquer tipo de cenário, sobre os valores de eixo da varredura genérica, opcionalmente um conjunto em cada nó) e a seção monte_carlo. Referência independente (InternalConsistency): A forma fechada do passeio aleatório de fase sob ruído de frequência branco, variância q_wf tau (NIST Technical Note 1337), para a maquinaria estatística, e a igualdade byte a byte com as execuções isoladas para a semeadura. Ela verifica a aritmética do conjunto sobre o próprio modelo de relógio do motor, não um conjunto de dados externo
Limitações#
O que o próprio relatório da execução diz que não é modelado ou não é validado:
- Composição MODELLED de tipos de cenário existentes. Todo número é lido de uma execução real do tipo de cenário nomeado; o encadeamento (carry aditivo de um canal através de uma fronteira de fase, retentor de ordem zero sobre a grade da linha do tempo, uma fase encerrada em um instante calculado) é uma escolha de modelagem, e cada fase traz o rótulo do tipo de cenário que a produziu. (resultado
label) - MODELLED: o carry aditivo e o retentor de ordem zero são escolhas de modelagem, e cada fase traz o rótulo do tipo de cenário que a executou. (catálogo de tipos de cenário (
kshana kinds --json)) - MODELLED: como o é o tipo de cenário
jamming. (comentário do arquivo de cenário, linha 14) - A resiliência a jamming em ambientes sem GNSS é MODELLED, não validada: verificada contra a sua própria identidade analítica / de forma fechada — detecta erros de transcrição e de coeficientes, mas não é uma referência independente externa. (matriz de verificação (docs/MODELLED-RATIONALE.md))
- Reprodutibilidade e garantia de software é MODELLED, não validada: uma subafirmação é verificada externamente, mas a capacidade inteira compõe peças modeladas, de modo que a capacidade permanece modelada. (matriz de verificação (docs/MODELLED-RATIONALE.md))
- As varreduras de parâmetros e os conjuntos de Monte Carlo com semente sobre qualquer tipo de cenário são MODELLED, não validados: verificados contra a sua própria identidade analítica / de forma fechada — detecta erros de transcrição e de coeficientes, mas não é uma referência independente externa. (matriz de verificação (docs/MODELLED-RATIONALE.md))
Veja também#
- Página da família: Campanhas
- Todos os tipos de cenário: KINDS.md
- Página do tópico: LEO-PNT.md
- Página do tópico: RESILIENCE-CROSSWALK.md