시나리오 내용 반영

This commit is contained in:
KIM SU BO committed 2026-10-08 16:43:48 +09:00
1 parent d9287de729
commit 350bb92bf9
270 files changed
+198867

No files matched your search

@@ -0,0 +1,267 @@
**OPS04 실습가이드 - 샤헤드·미사일 포화경보 우선순위 대시보드 모의 구현**
구 분 **실습가이드 [교육용가상자료]**
**1. 실습 개요**
본 실습은 가상 방어지역과 추상 범주의 가상 비행체로 포화경보 우선순위 파이프라인을 미션 단위로 구현하는 과정이다. 미션마다 정답 코드(OPS04_정답코드.md)의 해당 코드를 웹 파이썬 실행기에 붙여 넣어 실행하고, 출력된 수치가 평가 기준을 충족하는지 확인한 뒤 파라미터를 바꿔 보는 도전 과제를 수행한다. 미션별 코드는 서로 독립적이어서 어느 미션부터 실행해도 동작한다. 모든 순위는 '권고'이며 지휘관 승인 절차를 거친다는 점을 실습 내내 유지한다.
| **과제** | OPS04 샤헤드·미사일 포화경보 우선순위 대시보드 모의 구현 |
| --- | --- |
| **난이도·유형** | 고급 / 코딩형 |
| --- | --- |
| **예상 소요시간** | 미션 10개, 총 27.5시간 |
| --- | --- |
| **준비물** | OPS04_정답코드.md, 웹 파이썬 실행기(numpy·pandas·scipy·scikit-learn·matplotlib 사용 가능), 결과 기록용 문서 |
| --- | --- |
**2. 진행 방법**
- 정답코드 md에서 해당 미션의 코드 블록 전체를 복사해 실행기에 붙여 넣고 실행한다(부분 복사 시 가상 상황 생성 함수가 빠져 오류가 난다).
- 실행 결과를 md의 '실행 결과 예시'와 비교한다. 난수 시드가 고정되어 있어 수치가 같아야 한다(처리시간 ms 값은 실행 환경마다 다르다).
- 도전 과제는 코드 상단의 파라미터(임계값, 가중치, 예산 등)를 바꿔 다시 실행하고 변화와 이유를 기록한다.
- 그래프 글자는 영문, 표·출력은 한글이다. 한글이 깨지면 실행기 글꼴 문제이며 결과에는 영향이 없다.
- 비행체 속도·고도·반사강도는 학습용 임의 값이다. 실제 무기 제원·사거리·부대 위치를 입력하거나 찾아 넣지 않는다. 실제 교전 여부는 교전수칙·지휘계통에 따른다.
**3. 미션 진행 요약**
| **미션** | **난이도·시간** | **핵심 확인 결과** |
| --- | --- | --- |
| **M1. 샤헤드 자폭드론 및 순항미사일 복합 비행 특성 분석 및 포화경보 데이터 규격 정의** | 초급
1.5시간 | 정상 샘플 오류 0건, 주입 오류 5/5 검출 |
| **M2. 다방향 동시 침투 항적 데이터 정제 및 센서별 경보 메시지 큐잉 전처리 구현** | 초급~중급
2시간 | 메시지 8,100건 -> 융합 보고 3,530건, 오류율 0.00% |
| **M3. 속도·고도·접근 방위각 기반 1차 공중위협 우선순위 산정 알고리즘 구현** | 중급
2.5시간 | 긴급 판정 정확도 90.0% (목표 75% 이상 달성) |
| **M4. 핵심 방어자산(지휘소·인프라) 거리 및 도달 예상 시간(TTI) 연계 다차원 위협 평가 고도화** | 중급
3시간 | 고도화 재현율 평균 98.9%, 처리 지연 수 ms (목표 200ms 이하) |
| **M5. 방공 유도무기 교전 우선순위 랭킹 및 복합 신뢰도 지수 산출 모듈 구현** | 중급~고급
3시간 | 오경보율 13.9% -> 0.0%, 감축률 100%, 등급 일관성 99.4% |
| **M6. 방공 지휘관 결심 지원을 위한 실시간 포화경보 우선순위 대시보드 구현** | 중급
2.5시간 | 갱신 처리 수십 ms 이내, 조회 응답 수 ms (목표 달성) |
| **M7. 자동 할당된 교전 순위 재조정 및 긴급 수동 전환을 위한 HITL 승인 절차 설계** | 고급
3시간 | 조치 시도 11건 로깅 성공률 100%, 자동 승인 0건 |
| **M8. 100기 이상 동시 포화 공격 가상 전장 모의 부하 테스트 및 처리 지연 검증** | 고급
3.5시간 | 100->600기(500% 증가) 다운 0건, 유실률 0.00% |
| **M9. AAR 기반 방공 요격 순위 판정 오류 분석 및 위협 가중치 매트릭스 재보정** | 고급
3시간 | 시험 상황 정확도 84.9% -> 95.3% (+10.5%p, 목표 달성) |
| **M10. 샤헤드·미사일 포화경보 우선순위 시스템 최종 통합 및 방공작전 브리핑 패키지 완성** | 최고급
3.5시간 | 자체 점검 7/7 통과, E2E 성공 5/5, 함수 커버리지 100% |
**미션 1. 샤헤드 자폭드론 및 순항미사일 복합 비행 특성 분석 및 포화경보 데이터 규격 정의**
| **난이도·시간** | 초급 · 1.5시간 |
| --- | --- |
| **진행 순서** | 1) M1 코드를 실행해 정상 샘플 20건의 검증 결과를 확인한다.
2) 오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다.
3) 데이터 명세 요약표에서 기상·위치오차·통신지연 필드가 포함되었는지 확인한다. |
| --- | --- |
| **확인할 결과** | 정상 샘플 오류 0건, 주입 오류 5/5 검출
스키마 15개 필드 정의 완성도 100%, 미정의 필드(warhead_kg)는 차단됨 |
| --- | --- |
| **도전 과제** | SCHEMA에 표적 수(group_size, 1~50) 필드를 추가하고 범위를 벗어난 값을 넣어 검출되는지 확인한다. |
| --- | --- |
| **제출물** | 스키마 정의 코드, 데이터 명세서(필드·규칙·허용값표) |
| --- | --- |
**미션 2. 다방향 동시 침투 항적 데이터 정제 및 센서별 경보 메시지 큐잉 전처리 구현**
| **난이도·시간** | 초급~중급 · 2시간 |
| --- | --- |
| **진행 순서** | 1) M2 코드를 실행해 전처리 전 메시지 유형별 건수를 확인한다.
2) 중복·반사파·스푸핑·센서 단절 처리 건수를 기록한다.
3) 처리 속도와 오류율이 목표를 넘는지 확인한다. |
| --- | --- |
| **확인할 결과** | 메시지 8,100건 -> 융합 보고 3,530건, 오류율 0.00%
중복 612, 반사파 103 제거, 스푸핑 항적 6개 격리, 정렬 위반 0건 |
| --- | --- |
| **도전 과제** | preprocess의 snr_min을 0.25에서 0.45로 올려 실행하고, 정상 메시지 오삭제가 생기는지와 그 이유를 설명한다. |
| --- | --- |
| **제출물** | 전처리 코드, 전처리 전후 건수 비교표 |
| --- | --- |
**미션 3. 속도·고도·접근 방위각 기반 1차 공중위협 우선순위 산정 알고리즘 구현**
| **난이도·시간** | 중급 · 2.5시간 |
| --- | --- |
| **진행 순서** | 1) M3 코드를 실행해 상위 10개 위협 순위표를 확인한다.
2) 유형별 판정 결과에서 오경보가 어느 유형에서 나오는지 찾는다.
3) 그래프에서 도달시간 600초 기준선과 실제 긴급 표적을 비교한다. |
| --- | --- |
| **확인할 결과** | 긴급 판정 정확도 90.0% (목표 75% 이상 달성)
오경보 8건, 대부분 기만체(decoy 7건)에서 발생 |
| --- | --- |
| **도전 과제** | TTI_URGENT를 600에서 300으로 바꿔 정확도와 오경보 변화를 기록하고, 임계값 선택의 장단점을 적는다. |
| --- | --- |
| **제출물** | Baseline 코드, 판단 기준 설명과 결과 보고서 |
| --- | --- |
**미션 4. 핵심 방어자산(지휘소·인프라) 거리 및 도달 예상 시간(TTI) 연계 다차원 위협 평가 고도화**
| **난이도·시간** | 중급 · 3시간 |
| --- | --- |
| **진행 순서** | 1) M4 코드를 실행해 Baseline과 고도화 모델의 재현율·정밀도를 비교한다.
2) 기만·스푸핑 오판 건수 변화를 확인한다.
3) 10초 경과 후 상위 5개의 도달시간과 점수가 다시 계산되는지 확인한다. |
| --- | --- |
| **확인할 결과** | 고도화 재현율 평균 98.9%, 처리 지연 수 ms (목표 200ms 이하)
기만·스푸핑 오판 0건, 스푸핑 의심 6/6건 격리 |
| --- | --- |
| **도전 과제** | advanced_rank의 jump_max를 2.0에서 1.1로 낮춰 정상 항적까지 스푸핑으로 잘못 격리되는지 확인한다. |
| --- | --- |
| **제출물** | 고도화 모델 코드, 모델 비교표 |
| --- | --- |
**미션 5. 방공 유도무기 교전 우선순위 랭킹 및 복합 신뢰도 지수 산출 모듈 구현**
| **난이도·시간** | 중급~고급 · 3시간 |
| --- | --- |
| **진행 순서** | 1) M5 코드를 실행해 오경보율 감축률과 등급 일관성을 확인한다.
2) 유형별 등급 교차표에서 기만체·스푸핑이 Low로 내려갔는지 본다.
3) 권고 대응 순위표와 자원 부족으로 상급 보고 권고된 건수를 확인한다. |
| --- | --- |
| **확인할 결과** | 오경보율 13.9% -> 0.0%, 감축률 100%, 등급 일관성 99.4%
경보 31건 모두 '승인 대기', 자원 부족 상급 보고 권고 13건 |
| --- | --- |
| **도전 과제** | GRADE의 High 기준을 0.70에서 0.85로 올려 등급 분포와 일관성이 어떻게 변하는지 기록한다. |
| --- | --- |
| **제출물** | 신뢰도 엔진 코드, 등급 기준표, 권고 대응 순위표 |
| --- | --- |
**미션 6. 방공 지휘관 결심 지원을 위한 실시간 포화경보 우선순위 대시보드 구현**
| **난이도·시간** | 중급 · 2.5시간 |
| --- | --- |
| **진행 순서** | 1) M6 코드를 실행해 갱신 처리시간과 조회 응답시간을 확인한다.
2) 대시보드 지도에서 P1(빨강) 표적과 지향 자산을 확인한다.
3) 도달시간 분포와 자원 현황 영역이 한눈에 읽히는지 동료와 평가한다. |
| --- | --- |
| **확인할 결과** | 갱신 처리 수십 ms 이내, 조회 응답 수 ms (목표 달성)
P1 13건, P2 20건, 스푸핑 의심 6건 표시 |
| --- | --- |
| **도전 과제** | P1 기준(180초)을 120초로 바꾸고, 지휘관이 먼저 볼 표적 수가 어떻게 달라지는지 기록한다. |
| --- | --- |
| **제출물** | 대시보드 코드, 화면 캡처와 인지 부하 평가 의견 |
| --- | --- |
**미션 7. 자동 할당된 교전 순위 재조정 및 긴급 수동 전환을 위한 HITL 승인 절차 설계**
| **난이도·시간** | 고급 · 3시간 |
| --- | --- |
| **진행 순서** | 1) M7 코드를 실행해 시나리오의 각 조치가 OK 또는 거부되는 이유를 확인한다.
2) 검토 대기열에서 상신된 보류 항목이 맨 위로 오는지 본다.
3) 감사 로그 위·변조 시험 결과를 확인한다. |
| --- | --- |
| **확인할 결과** | 조치 시도 11건 로깅 성공률 100%, 자동 승인 0건
거부 4건(권한·근거·Low 등급·중복), 위·변조 검출(4번 기록) |
| --- | --- |
| **도전 과제** | scenario에 운용자(OPR-09)가 MODE(수동 전환)를 시도하는 줄을 추가하고, 거부와 로그 기록이 되는지 확인한다. |
| --- | --- |
| **제출물** | 승인 워크플로우 코드, HITL 운용 지침(역할·권한·책임 분계선) |
| --- | --- |
**미션 8. 100기 이상 동시 포화 공격 가상 전장 모의 부하 테스트 및 처리 지연 검증**
| **난이도·시간** | 고급 · 3.5시간 |
| --- | --- |
| **진행 순서** | 1) M8 코드를 실행해 부하 단계별 처리시간·격리·중복·유실을 확인한다.
2) Fail-safe 시험에서 기능 축소 전환과 긴급 표적 누락 여부를 본다.
3) 그래프에서 처리시간이 예산선 아래인지 확인한다. |
| --- | --- |
| **확인할 결과** | 100->600기(500% 증가) 다운 0건, 유실률 0.00%
예산 0.1ms 강제 시 기능 축소 전환, 긴급 표적 197건 중 누락 0건 |
| --- | --- |
| **도전 과제** | inject의 손상 비율을 5%에서 30%로 올려 격리 건수와 유실률이 어떻게 되는지 확인한다. |
| --- | --- |
| **제출물** | 스트레스 테스트 코드, 병목·Fail-safe 분석 보고서 |
| --- | --- |
**미션 9. AAR 기반 방공 요격 순위 판정 오류 분석 및 위협 가중치 매트릭스 재보정**
| **난이도·시간** | 고급 · 3시간 |
| --- | --- |
| **진행 순서** | 1) M9 코드를 실행해 초기 가중치의 오류 원인별 건수를 확인한다.
2) 재보정 전후 시험 상황 정확도를 비교한다.
3) 재발 사례와 운용 대책 문구를 확인하고 YAML 출력을 정리한다. |
| --- | --- |
| **확인할 결과** | 시험 상황 정확도 84.9% -> 95.3% (+10.5%p, 목표 달성)
AAR 지적 오류 재발 1건(근거리 기만체) -> 미달, 운용자 확인 대책 기록 |
| --- | --- |
| **도전 과제** | 격자에 w_cls 1.5를 추가하거나 허용 폭(0.005)을 넓혀 재발 0건이 되는지, 그때 시험 정확도는 어떻게 되는지 기록한다. |
| --- | --- |
| **제출물** | AAR 보고서(원인 분류·조치), 조정 파라미터 YAML |
| --- | --- |
**미션 10. 샤헤드·미사일 포화경보 우선순위 시스템 최종 통합 및 방공작전 브리핑 패키지 완성**
| **난이도·시간** | 최고급 · 3.5시간 |
| --- | --- |
| **진행 순서** | 1) M10 코드를 실행해 5개 상황 통합 결과를 확인한다.
2) 자체 점검 7개 항목의 PASS/FAIL을 확인한다.
3) 브리핑 요약 5개 항목을 실행 결과 수치와 대조한다. |
| --- | --- |
| **확인할 결과** | 자체 점검 7/7 통과, E2E 성공 5/5, 함수 커버리지 100%
판정 정확도 94.5%, 긴급 재현율 100.0%, 권고 60건 승인 대기 |
| --- | --- |
| **도전 과제** | CONFIG의 w_spoof를 0.0으로 바꿔 실행하고 '스푸핑 의심 항적 경보 0건' 점검이 어떻게 되는지 확인한다. |
| --- | --- |
| **제출물** | 통합 코드, README, 최종 보고서와 브리핑 자료 |
| --- | --- |
**4. 최종 점검표**
| **점검 항목** | **확인** |
| --- | --- |
| 미션 1~10 코드가 모두 오류 없이 실행되었다 | ( ) |
| 각 미션의 확인할 결과를 기록했다 | ( ) |
| 도전 과제 결과와 이유를 기록했다 | ( ) |
| 브리핑 수치가 실행 결과와 일치한다 | ( ) |
| 실제 무기 제원·부대·위치 정보를 사용하지 않았다 | ( ) |
| 대응 순위는 권고이며 지휘관 승인·교전수칙·지휘계통에 따름을 명시했다 | ( ) |