Машинный перевод, не проверенный носителем языка. Эталоном служит английская версия.

Начало работыПравить на GitHubИсточник: docs/tutorials/03-quantum-vs-classical.md

Учебное пособие 3 — Квантовая и классическая устойчивость ГНСС (итоговое)

Kinds: spoof + hybrid · Сценарии: scenarios/spoof-attack.toml, scenarios/hybrid-pnt.toml (учебные копии: scenarios/security.toml, scenarios/hybrid.toml) · Сложность: средняя · ~35 мин

Итоговое пособие. Вы запустите сценарий детектора спуфинга и полный комплексированный набор PNT (позиционирование, навигация и время) и научитесь читать безопасность, целостность и счисление пути вместе — в этом весь тезис: квантовые инерциальные датчики и оптическое время дают устойчивость, которую отказ GNSS (глобальной навигационной спутниковой системы) иначе отнял бы.

Часть A — Безопасность: обнаружение подмены времени#

Злоумышленник вводит медленно нарастающее ложное время ГНСС (0,1 нс/с, начиная с t = 60 с). Приёмник сверяет заявленное время с прогнозом собственных часов на выбеге и отмечает спуфинг, когда расхождение превышает границу обнаружения. Детектор — двусторонний энергетический тест χ²₁ / Неймана–Пирсона при вероятности ложной тревоги P_fa = 0,01; показатель качества безопасности — 1 − P_md (единица минус вероятность пропуска обнаружения) при величине спуфинга, заданной спецификацией (20 нс).

cargo run -- scenarios/spoof-attack.toml

Summary:

scenario 2b6bd22c3b80 | spoof LinearRamp { rate_ns_per_s: 0.1 } vs 20.000 ns spec (P_fa 0.010) | quantum security 1.000 (P_md 0.000, MC 0.000) detected 70s | classical security 0.558 (P_md 0.442, MC 0.444) detected 430s
  • Квантовый: security 1.000, обнаружено на 70 с. Порог обнаружения оптических часов составляет долю наносекунды, поэтому спуфинг отмечается почти сразу — значительно ниже спецификации 20 нс.
  • Классический: security 0.558, обнаружено на 430 с. Собственный шум выбега чип-масштабных атомных часов (CSAC) за окно сопоставим с 20 нс, поэтому они часто не отличают спуфинг от собственного дрейфа — пропуск происходит в 44 % случаев.

Не циклический оракул: аналитическая и Монте-Карло P_md#

Вероятность пропуска обнаружения детектора вычисляется двумя независимыми способами, которые должны совпасть: замкнутым выражением хвоста χ²₁ (результат Неймана–Пирсона) и оценкой Монте-Карло (MC). Для CSAC аналитическая P_md равна 0.442, а P_md по MC — 0.444; они согласуются до 0,002, что значительно меньше ошибки выборки ~few × 1/√N. Для оптических часов обе равны 0,000. Совпадение двух отдельных вычислений одной и той же вероятности — это нециклическая перекрёстная проверка (Kay, Fundamentals of Statistical Signal Processing: Detection Theory; стандартное обнаружение по Нейману–Пирсону / χ²). tests/tutorials.rs::tutorial3_spoof_analytic_matches_montecarlo проверяет |analytic_pmd − mc_pmd| < 0.05 для обоих часов и quantum security_fom > 0.9.

Часть B — Гибридный PNT: полный комплексированный набор#

Теперь итоговый сценарий комплексирует оптические часы + холодноатомный инерциальный измерительный блок (IMU) (квантовый набор) против CSAC + навигационного IMU (классический набор) при одном и том же отказе ГНСС на 6600 с (1,83 ч), при спецификации времени 20 нс и спецификации положения 100 м. Оба набора заново привязывают свои часы каждые 60 с по одной и той же оптической межспутниковой линии передачи времени, смоделированной с дрожанием 1 пс на каждую повторную синхронизацию ([resync] в сценарии; src/hybrid.rs строит одну линию optical-isl для любого из наборов).

cargo run -- scenarios/hybrid-pnt.toml

Summary:

scenario f33d734ecc51 | quantum PNT-holdover 6600s (t 6600s/p 6600s) integrity 0.998 security n/a (no attack) | classical PNT-holdover 350s (t 6600s/p 350s) integrity 1.000 security n/a (no attack)

Прочтите разбивку (t …/p …) — holdover по времени и holdover по положению:

  • Квантовый: PNT-holdover 6600 с — удерживает и время (t 6600 с), и положение (p 6600 с) на протяжении всего отказа.
  • Классический: PNT-holdover 350 с — время удерживается все 6600 с (t 6600 с), потому что повторная синхронизация по оптической передаче времени удерживает в синхронизме даже классические часы. Набор ограничен по положению на p 350 с: слабое звено — навигационный IMU. В этом и состоит тезис комплексирования — отказ классического набора локализуется в его инерциальном датчике.

integrity 0.998 для квантового набора — реальное значение, а не ошибка. Это самосогласованность фильтра при шумной повторной синхронизации, а не авиационный показатель целостности (горизонтальный или вертикальный уровень защиты, HPL/VPL). Не придавайте слову «целостность» здесь лишнего значения; см. docs/INTEGRITY.md.

Не циклический оракул: holdover по положению 350 с#

Значение 350 с — это физика счисления пути, а не подогнанное число. Постоянное смещение акселерометра b приводит к росту ошибки положения как ½·b·T². Пересечение спецификации 100 м:

Navigation-grade (classical), b = 1.57e-3 m/s^2:
  T = sqrt(2 * 100 / 1.57e-3) = 357 s

Cold-atom (quantum), b = 5.88e-7 m/s^2 (Templier et al. 2022, arXiv:2209.13209):
  T = sqrt(2 * 100 / 5.88e-7) = 18,443 s >> 6600 s outage -> holds the full outage

Движок сообщает 350 с — последнюю точку сетки с шагом 10 с перед пересечением, на 2 % меньше значения 357 с, учитывающего только смещение: акселерометры сценария также содержат шум случайного блуждания скорости (q_va), который добавляется к дрейфу смещения, поэтому смоделированная ошибка достигает 100 м чуть раньше.

Авторитетный закон: Groves, Principles of GNSS, Inertial, and Multisensor Integrated Navigation (2-е изд.), рост ошибки счисления пути. Эти два значения ½bT² объясняют разбивку движка 350 с / 6600 с: проверка по замкнутой физической формуле, внешняя по отношению к фильтру.

Слабое инерциальное звено видно прямо в сценарии счисления пути (scenarios/inertial.toml, вид inertial): quantum holdover 6600s p95 41.39m | classical holdover 350s p95 30629.9m: навигационный датчик расходится до десятков километров.

Как читать три показателя вместе#

Значение Что это означает здесь Чего это не означает
Безопасность аналитическая граница обнаружимости спуфинга (1 − P_md) для заданной атаки; сводка hybrid выводит n/a (no attack), потому что этот сценарий её не задаёт не многоспутниковый детектор RAIM (автономный контроль целостности приёмником)
Целостность самосогласованность фильтра (отсчёты внутри границы k-σ) не авиационная целостность HPL/VPL/RAIM
PNT-holdover время в пределах спецификации после потери ГНСС, с разбивкой на время и положение не 2-D-точность CEP (круговая вероятная ошибка) или 2DRMS (удвоенный среднеквадратичный радиус)

Настоящая автономная целостность приёмника — реальные HPL/VPL с пределами тревоги и диаграммой Стэнфорда — находится в пакете integrity (scenarios/integrity.toml); это упражнение для чтения уровня Tier-3.

Что фиксируют тесты#

  • tutorial3_spoof_analytic_matches_montecarlo — аналитическая и MC P_md согласуются до < 0,05 для обоих часов; quantum security_fom > 0.9.
  • Гибридная сводка (6600 с / 350 с) и инерциальная разбивка зафиксированы через их учебные сценарии (scenarios/hybrid.toml, scenarios/inertial.toml) тестом teaching_scenarios_match_their_recorded_expected_summary, который сравнивает сводку каждого движка со строкой # expected:, записанной в файле. Оракул ½bT² выше — физическая проверка этих чисел.

Подводные камни и единицы#

  • Показатель качества времени (FoM) выражен в наносекундах; показатель качества положения — в метрах и одномерный (1-DOF) (одна степень свободы: одна ось, не CEP/2DRMS).
  • integrity 0.998 — это самосогласованность, а не авиационная целостность.
  • Время классического набора сохраняется только благодаря повторной синхронизации по оптической передаче времени; читайте разбивку (t …/p …), а не только итоговый PNT-holdover.

Что дальше#

  • Запустите случай честного отказа: scenarios/lunanet-araim.toml (вид lunar-integrity) сообщает о проходе ARAIM (усовершенствованный RAIM) на южном полюсе, где уровни защиты превышают предел тревоги (HPL 263–452 м > 50 м, доступно 0 из 24 эпох), поэтому система признаётся недоступной: это особенность, а не ошибка.
  • Перенесите рассказ на низкую околоземную орбиту (LEO): scenarios/leo-resilience-gnss-jammed-leo-carries.toml (вид campaign) объединяет в цепочку фазу подавления ГНСС, слой позиционирования LEO, который ведёт пользователя через неё, и проверку целостности на одной временной шкале. Другие сценарии устойчивости и вертикальных применений см. в разделе новых возможностей.
  • Отстоять результат: выполните упражнение Tier-3 — полосы Монте-Карло, воспроизводимость и чтение уровня защиты.