Fuzja danych wojskowych to proces obliczeniowy łączenia danych wywiadowczych z wielu heterogenicznych źródeł w spójną, konsekwentną i dokładną reprezentację środowiska operacyjnego. Gdy działa poprawnie, dowódca widzi jeden ślad oznaczony „czołg T-80, pewność 87%, ostatnia aktualizacja 14 sekund temu". Gdy nie — trzy sprzeczne ślady, każdy z innego sensora, każdy z inną pozycją — bez możliwości ustalenia, który jest prawidłowy.

Poprawna fuzja to jedno z najbardziej technicznie wymagających problemów w oprogramowaniu obronnym. Dane wejściowe są zaszumione, opóźnione i często sprzeczne. Wynik musi być wystarczająco wiarygodny, by podejmować na jego podstawie działania.

Model JDL: struktura poziomów fuzji

Model grupy informacji fuzji danych (DFIG) — powszechnie zwany modelem JDL od jego pochodzenia z Joint Directors of Laboratories — definiuje fuzję jako serię poziomów przetwarzania, z których każdy buduje się na poprzednim.

Poziom 0 — Asocjacja i estymacja danych sub-obiektów. Surowe sygnały sensorów są przetwarzane i czyszczone. Obrazy na poziomie pikseli są wstępnie przetwarzane; dane akustyczne są digitalizowane; sygnały RF są demodulowane. Wynikiem jest strumień obserwacji, nie skorelowanych jeszcze z żadnym obiektem.

Poziom 1 — Doprecyzowanie obiektów. Poszczególne obserwacje są łączone w celu uzyskania śladów. Wielokrotne powroty radarowe z tego samego obiektu fizycznego są asocjowane i fuzjowane w jeden ślad kinematyczny. Ten poziom obsługuje podstawowy problem fuzji śladów: przy pięciu wykryciach radarowych w ciągu 30 sekund należy oszacować pozycję, prędkość i kurs obiektu z powiązaną elipsą niepewności. Stosowane algorytmy to filtr Kalmana, śledzenie z wieloma hipotezami (MHT) i łączna probabilistyczna asocjacja danych (JPDA).

Poziom 2 — Doprecyzowanie sytuacji. Poszczególne ślady są umieszczane w kontekście. Ten poziom odpowiada na pytanie „co oznacza to ugrupowanie?" — rozpoznając, że trzy czołgi poruszające się w szyku klinowym z artylerią z tyłu stanowią próbę przełamania, a nie patrol. Fuzja poziomu 2 wymaga korelacji śladów z doktryną, bazami danych porządku bojowego i wzorcami historycznymi.

Poziom 3 — Doprecyzowanie zagrożeń. Bieżąca sytuacja jest projektowana naprzód: jeśli to ugrupowanie będzie kontynuować obecny kurs i prędkość, co zagrozi za 20 minut? Ten poziom produkuje oceny zagrożeń, nie tylko dane o śladach.

Źródła danych i ich wyzwania programowe

Strumienie SIGINT napływają jako ustrukturyzowane przechwycenia lub surowe przechwycenia RF. Niosą niepewność czasową (czas przechwycenia a czas transmisji mogą się różnić) i niejednoznaczność pozycyjną przy braku danych geolokalizacyjnych. Dane wejściowe SIGINT często wymagają normalizacji formatu z wyjść zastrzeżonych systemów zbierania przed wejściem do potoku fuzji.

Produkty IMINT są wynikiem eksploatacji obrazów — automatycznej (wykrycia wizją komputerową z kanałów UAV) lub ręcznej (adnotacje analityków obrazów). Wyzwaniem jest dokładność znaczników czasu: obraz pozyskany o 09:47 pokazujący pojazd w koordynatach X jest użyteczny tylko wtedy, gdy silnik fuzji wie, że został pozyskany o 09:47, a nie przetworzony i przekazany o 11:15.

Raporty HUMINT to ustrukturyzowane raporty wywiadowcze ze źródeł ludzkich. Zazwyczaj są niskoczęstotliwościowe, wysokiej pewności i niosą znaczną niepewność pozycyjną. Rzadko są bezpośrednio fuzjowalne z kinematycznymi danymi śladów, ale są niezbędne do budowania kontekstu porządku bojowego wymaganego przez fuzję poziomu 2.

Strumienie sensorów walki elektronicznej dostarczają danych o emisjach elektronicznych — zestawy parametrów radarów, częstotliwości komunikacji, sygnatury kształtów fal. W korelacji z danymi śladów umożliwiają identyfikację platform: ślad poruszający się z prędkością 60 km/h odpowiadający sygnaturze emisji radaru BMP-2 staje się identyfikacją BMP-2 z wysoką pewnością.

Strumienie wideo UAV generują ciągły strumień danych pozycyjnych i wizualnych. Wyzwaniem programowym jest ekstrakcja ustrukturyzowanych śladów z wideo — co wymaga wnioskowania wizji komputerowej w czasie rzeczywistym — oraz korelacja tych śladów z istniejącymi danymi, uwzględniając fakt, że ten sam pojazd obserwowany przez UAV i wykryty przez radar może wygenerować dwa osobne ślady w silniku fuzji.

Wyzwania normalizacji: ukryta złożoność

Zanim uruchomi się jakikolwiek algorytm fuzji, wszystkie dane przychodzące muszą być znormalizowane. To nieefektowna praca pochłaniająca nieproporcjonalną część czasu rozwoju w rzeczywistych systemach fuzji.

Normalizacja układu współrzędnych: sensory raportują pozycje w WGS84, MGRS, siatce lokalnej lub układach współrzędnych zależnych od wysokości. Wszystkie muszą zostać przekształcone do reprezentacji kanonicznej, zanim możliwa będzie korelacja. Błąd 10 metrów wprowadzony przez transformację współrzędnych jest operacyjnie istotny.

Normalizacja znaczników czasu: różne sensory używają czasu GPS, UTC, czasu lokalnego lub numerów sekwencji. Silnik fuzji potrzebuje autorytatywnych znaczników czasu w jednym układzie odniesienia. Znacznik czasu synchronizowany z GPS jest standardem, ale nie wszystkie starsze sensory go obsługują.

Obsługa klasyfikacji i zastrzeżeń: dane fuzji przekraczają granice klasyfikacji. Ślad zbudowany z SIGINT o jednym poziomie klasyfikacji i danych radarowych na niższym poziomie ma klasyfikację złożoną. Silnik fuzji musi prawidłowo propagować klasyfikację i egzekwować zasadę need-to-know w czasie zapytania, nie w czasie przyjęcia.

Korelacja i dekonfliktacja

Podstawowym problemem technicznym fuzji poziomu 1 jest decyzja, czy dwie obserwacje z dwóch różnych sensorów reprezentują ten sam obiekt fizyczny. To problem asocjacji danych. Standardowym podejściem jest funkcja bramkowania (eliminacja kandydatów poza maksymalnym progiem odległości), a następnie probabilistyczny kwalifikator (np. metoda najbliższego sąsiada lub MHT) przypisujący prawdopodobieństwo korespondencji.

Dekonfliktacja — rozwiązanie przypadku, gdy dwa istniejące ślady są faktycznie tym samym obiektem — jest trudniejsza. Wymaga wykrywania trwałych duplikatów śladów, łączenia ich historii i godzenia konfliktów atrybutów. Zła dekonfliktacja prowadzi do „widmo" śladów: obiektów pojawiających się na COP, które nie istnieją, lub obiektów, które istnieją, ale pojawiają się dwukrotnie.

Kluczowe spostrzeżenie: W większości operacyjnych systemów fuzji największym źródłem błędów nie jest sam algorytm fuzji — lecz niedokładność znaczników czasu i błędy normalizacji współrzędnych wprowadzone na warstwie przyjęcia danych. Napraw instalację wodno-kanalizacyjną zanim zaczniesz dostrajać algorytmy.

Jak fuzja zasila COP

Silnik fuzji produkuje autorytatywne repozytorium śladów, które renderuje wspólny obraz operacyjny (COP). Warstwa COP odpytuje repozytorium śladów przez API, subskrybuje zdarzenia aktualizacji przez WebSocket i renderuje zmiany przyrostowo. Jakość COP jest całkowicie zależna od jakości warstwy fuzji pod nią.

Dobrze zaprojektowany potok fuzja-COP publikuje zdarzenia aktualizacji śladów (nowy ślad, ślad zaktualizowany, ślad usunięty) jako strumień. COP subskrybuje i stosuje delty — nie pełne migawki stanu — aby utrzymać responsywny wyświetlacz nawet gdy baza danych śladów zawiera dziesiątki tysięcy obiektów. Opóźnienie od obserwacji sensora do wyświetlenia na COP powinno być mierzalne w pojedynczych sekundach dla systemów taktycznych.