879 lines
128 KiB
JSON
879 lines
128 KiB
JSON
{
|
|
"version": "1.0.0",
|
|
"exportedAt": "2026-10-08T00:00:00.000Z",
|
|
"id": "WEL03",
|
|
"title": "가상 수질검사 데이터 위험 신호 대시보드",
|
|
"category": "장병 복지·지원",
|
|
"level": 2,
|
|
"durationDays": 5,
|
|
"requiredHours": 27.5,
|
|
"status": "COMPLETED",
|
|
"isRecommended": false,
|
|
"summary": "",
|
|
"objectives": "<p>전장에서는 급수차, 정수 장비, 우물, 하천 취수원 등 급수원의 수질 이상을 빨리 알아채지 못하면 장병의 건강과 부대 활동에 바로 영향을 주지만, 센서 값은 잡음과 고장이 많아 오경보로 불필요하게 급수를 끊는 일도 생긴다. 러시아-우크라이나 전쟁 사례에서 학습 초점으로 삼은 전장 위생·건강 위험 관리를 반영해, 본 프로젝트는 가상 수질검사 데이터를 분석해 위험 신호를 데이터로 판단하는 과제를 다룬다. 교육용 가상 급수원 8곳의 pH, 탁도, 잔류염소, 중금속, 대장균 측정 자료를 코드로 만들어 스키마 정의, 센서 결측·이상치 정제, 기준치 Baseline 판정, 복합 오염 징후 분류 모델, 신뢰도 지수와 오경보 감축, 상황판 대시보드, 급수 중단 HITL 결재선, 대량 오염 부하 시험, AAR 임계치 재조정, 통합 패키지까지 단계별로 구현한다. 최종 목표는 수질 위험 신호를 근거와 함께 빠르게 제시하되, 실제 음용 판정과 급수 중단은 공식 기준과 의무(예방의학) 담당 확인, 지휘관 결심에 따르도록 지원하는 도구를 완성하는 것이다.</p>",
|
|
"deliverables": [
|
|
"data/schema/wel03_input_schema.json (필수)",
|
|
"docs/wel03_data_spec.md (필수)",
|
|
"src/preprocess/wel03_preprocessor.py (필수)",
|
|
"전처리 전후 데이터셋 (필수)",
|
|
"src/models/wel03_baseline_model.py (필수)",
|
|
"기본 추론 결과 보고서 (필수)"
|
|
],
|
|
"constraints": "<h4>부대 보안 및 개인정보 보호</h4><ul><li><p>실제 부대 편성, 위치, 작전 일정, 군번·성명 등 민감 군사보안 및 개인식별정보는 절대 외부 AI에 입력하지 않는다.</p></li><li><p>모든 실습에는 제공된 교육용 가상 데이터셋 및 시뮬레이션 표본만을 활용한다.</p></li></ul><h4>AI 결과와 인간 최종 판단의 구분 (HITL 원칙)</h4><ul><li><p>AI 모델이 제안한 분석값이나 탐지 결과는 참고 지표이며, 최종 승인·보류·교전·배치 명령은 사람이 확정한다.</p></li><li><p>모든 급수원·측정값·오염 사건·시각은 코드 안에서 만든 교육용 가상 자료이며 실제 부대, 위치, 급수 시설, 검사 결과는 사용하지 않는다. 코드의 기준치는 교육용 가정값이며 실제 음용 적합 판정은 공식 수질 기준과 의무(예방의학)·환경 담당 확인에 따른다. 부대 자료의 외부 AI 서비스 입력과 부대 내 촬영은 금지한다. 위험 신호와 신뢰도 등급은 판단 보조 정보이며 급수 중단·재개와 재검사 지시는 지휘관이 결정한다. 센서 교란 시나리오는 방어(탐지) 측 평가에만 사용하고 교란을 만드는 기법은 다루지 않는다. 미션별 정답 코드는 각각 한 파일로 독립 실행된다.</p></li></ul>",
|
|
"evalSummary": "<h4>공통 PASS/FAIL 판정 원칙</h4><ul><li><p><strong>수행 증거:</strong> 요구된 데이터 전처리, 모델 구현, 검증 지표 산출, HITL 워크플로우 증거가 명확한가?</p></li><li><p><strong>판단 근거:</strong> 오경보/미탐 방지, 신뢰도 등급화, 파라미터 튜닝의 군사적·논리적 근거가 타당한가?</p></li><li><p><strong>앞뒤 연결성:</strong> 앞 미션의 스키마·전처리가 뒤 미션의 예측·대시보드·AAR 재보정에 정상 연계되는가?</p></li><li><p><strong>안전성:</strong> 보안 규정 준수, 극단 과부하 상황에서의 Fail-safe 복원력이 확보되었는가?</p></li></ul><h4>프로젝트 완료 조건</h4><p>10개 미션 전체에서 요구되는 필수([필수]) 평가 기준을 모두 PASS해야 프로젝트 최종 PASS로 판정한다.</p>",
|
|
"prerequisites": "기본 프로그래밍 지식 및 장병 복지·지원 데이터 분석 기초",
|
|
"refFiles": [],
|
|
"refText": "",
|
|
"projectSkills": [
|
|
{
|
|
"skillId": "competency_군특화문제해결_장병 복지·지원_문제분석",
|
|
"level": 2,
|
|
"category": "군특화문제해결",
|
|
"subCategory": "장병 복지·지원 문제분석"
|
|
},
|
|
{
|
|
"skillId": "competency_군특화문제해결_장병 복지·지원_대안도출",
|
|
"level": 1,
|
|
"category": "군특화문제해결",
|
|
"subCategory": "장병 복지·지원 대안도출"
|
|
},
|
|
{
|
|
"skillId": "competency_데이터분석검증_결과검증",
|
|
"level": 2,
|
|
"category": "데이터분석검증",
|
|
"subCategory": "AI 결과 검증"
|
|
},
|
|
{
|
|
"skillId": "competency_AI활용역량_도구활용",
|
|
"level": 1,
|
|
"category": "AI활용역량",
|
|
"subCategory": "AI 도구 및 모델 활용"
|
|
},
|
|
{
|
|
"skillId": "competency_전술의사결정_인간검토",
|
|
"level": 2,
|
|
"category": "전술의사결정",
|
|
"subCategory": "HITL 인간 검토 및 책임분계"
|
|
}
|
|
],
|
|
"prerequisiteVods": [],
|
|
"missions": [
|
|
{
|
|
"id": "WEL03_M01",
|
|
"sequence": 1,
|
|
"title": "야전 급수원 가상 수질검사 항목(pH, 탁도, 잔류염소, 중금속, 대장균) 데이터셋 정의",
|
|
"durationHours": 1.5,
|
|
"overview": "<p>야전 급수원 가상 수질검사 항목(pH, 탁도, 잔류염소, 중금속, 대장균)과 센서·전술 환경 정보의 스키마와 데이터 명세를 정의한다.</p>",
|
|
"objectives": "<p>측정 레코드를 급수원 정보, 수질 5항목, 센서 상태, 전술 파라미터(기상, 위치 오차, 통신 지연) 네 묶음 15개 필드로 정의하고 자료형·단위·허용 범위·형식 규칙을 둔다. 가상 센서 자료에서 샘플 20건을 뽑아 JSON으로 변환·검증하고, 형식·허용값·범위·자료형·필수 누락 오류 5종을 일부러 넣어 모두 검출되는지 확인한다. 검증 결과를 바탕으로 데이터 명세 요약표를 만든다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>야전 급수원 가상 수질검사 항목(pH, 탁도, 잔류염소, 중금속) 데이터셋을 정의한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>야전 급수원 가상 수질검사 항목(pH, 탁도, 잔류염소, 중금속, 대장균)과 센서·전술 환경 정보의 스키마와 데이터 명세를 정의한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>측정 레코드를 급수원 정보, 수질 5항목, 센서 상태, 전술 파라미터(기상, 위치 오차, 통신 지연) 네 묶음 15개 필드로 정의하고 자료형·단위·허용 범위·형식 규칙을 둔다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>data/schema/wel03_input_schema.json 및 docs/wel03_data_spec.md</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m01_dataset.json",
|
|
"/uploads/WEL03/wel03_m01_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m01_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m01_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"data/schema/wel03_input_schema.json (필수)",
|
|
"docs/wel03_data_spec.md (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[야전 급수원 가상 수질검사 항목(pH, 탁도, 잔류염소, 중금속, 대장균) 데이터셋 정의] 요구된 핵심 성능 기준(스키마 필드 정의 완성도 100%, 샘플 데이터 검증 오류 0건)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>스키마 필드 정의 완성도 100%, 샘플 데이터 검증 오류 0건 기준을 충족하고 입력 데이터 유효성 검증 스크립트 통과 및 명세서 문서화 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>누락된 전술 파라미터(기상, 위치오차, 통신지연 등) 보완을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 장병 복지·지원 실무 및 러시아-우크라이나 전쟁 전장 환경과의 군사적 부합성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>장병 복지·지원 실무 및 러시아-우크라이나 전쟁 전장 환경과의 군사적 부합성이 논리적으로 검증되었으며 JSON Schema 검증 도구 및 샘플 데이터 파싱 단위 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 장병 복지·지원 실무 및 러시아-우크라이나 전쟁 전장 환경과의 군사적 부합성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 스키마 필드 정의 완성도 100%, 샘플 데이터 검증 오류 0건</p></li><li><p>진행 기준: 입력 데이터 유효성 검증 스크립트 통과 및 명세서 문서화 완료</p></li><li><p>검증 방법: JSON Schema 검증 도구 및 샘플 데이터 파싱 단위 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M1 코드를 실행해 스키마 필드 15개와 샘플 20건 검증 결과를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M1 코드를 실행해 스키마 필드 15개와 샘플 20건 검증 결과를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M1 코드를 실행해 스키마 필드 15개와 샘플 20건 검증 결과를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M1 코드를 실행해 스키마 필드 15개와 샘플 20건 검증 결과를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M1 코드를 실행해 스키마 필드 15개와 샘플 20건 검증 결과를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다.</p><h4>해야 할 일</h4><ol><li><p>오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>오류 주입 5종이 각각 어떤 규칙에 걸렸는지 표로 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "데이터 명세 요약표에서 단위와 허용 범위를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>데이터 명세 요약표에서 단위와 허용 범위를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>데이터 명세 요약표에서 단위와 허용 범위를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>데이터 명세 요약표에서 단위와 허용 범위를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>데이터 명세 요약표에서 단위와 허용 범위를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(스키마 완성도 15/15(100%), 정상 샘플 20건 오류 0건 주입 오류 5종 모두 검출)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>quality 묶음에 '수온(temp_c, 0~60)' 필드를 추가하고 범위 밖 값을 넣어 검출되는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M02",
|
|
"sequence": 2,
|
|
"title": "수질 센서 결측치 대체 및 시계열 센서 이상치 정제 전처리 모듈 구현",
|
|
"durationHours": 2.0,
|
|
"overview": "<p>수질 센서의 결측치를 보정하고 시계열 이상치를 정제하는 전처리 모듈을 구현해 속도와 정확도를 확인한다.</p>",
|
|
"objectives": "<p>급수원별 시계열에서 물리 범위 밖 값, 같은 값이 반복되는 고정값(stuck), 튀었다가 바로 돌아오는 단발 스파이크를 표시·제거하고 짧은 결측은 선형 보간, 긴 결측은 표시한다. 정상 변동(하수 유입 같은 지속 상승)은 지우지 않아야 하므로 주간·야간·악천후별 판정 배수와 항목별 최소 변화폭을 둔다. 처리 속도, 오류율, 일부러 지운 값의 복원 오차를 측정하고 단위 테스트 5종과 동적 임계값 효과를 확인한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>수질 센서 결측치 대체 및 시계열 이상치 정제 전처리 모듈을 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>수질 센서의 결측치를 보정하고 시계열 이상치를 정제하는 전처리 모듈을 구현해 속도와 정확도를 확인한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>급수원별 시계열에서 물리 범위 밖 값, 같은 값이 반복되는 고정값(stuck), 튀었다가 바로 돌아오는 단발 스파이크를 표시·제거하고 짧은 결측은 선형 보간, 긴 결측은 표시 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/preprocess/wel03_preprocessor.py 및 전처리 전후 데이터셋</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m02_dataset.json",
|
|
"/uploads/WEL03/wel03_m02_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m02_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m02_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/preprocess/wel03_preprocessor.py (필수)",
|
|
"전처리 전후 데이터셋 (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[수질 센서 결측치 대체 및 시계열 센서 이상치 정제 전처리 모듈 구현] 요구된 핵심 성능 기준(데이터 정제 처리 속도 1,000건/초 이상, 전처리 오류율 0%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>데이터 정제 처리 속도 1,000건/초 이상, 전처리 오류율 0% 기준을 충족하고 정제 파이프라인 자동화 및 단위 테스트 케이스 5종 통과을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>전술 상황별(주간/야간/악천후) 맞춤형 노이즈 제거 임계값 동적 조정을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 전술 환경 특유의 노이즈(스푸핑, 반사파, 센서 단절 등) 제거 타당성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>전술 환경 특유의 노이즈(스푸핑, 반사파, 센서 단절 등) 제거 타당성이 논리적으로 검증되었으며 pytest 기반 전처리 정합성 테스트 및 결측치 보정율 확인를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 전술 환경 특유의 노이즈(스푸핑, 반사파, 센서 단절 등) 제거 타당성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 데이터 정제 처리 속도 1,000건/초 이상, 전처리 오류율 0%</p></li><li><p>진행 기준: 정제 파이프라인 자동화 및 단위 테스트 케이스 5종 통과</p></li><li><p>검증 방법: pytest 기반 전처리 정합성 테스트 및 결측치 보정율 확인</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M2 코드를 실행해 처리 속도, 오류율, 남은 결측 수를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M2 코드를 실행해 처리 속도, 오류율, 남은 결측 수를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M2 코드를 실행해 처리 속도, 오류율, 남은 결측 수를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M2 코드를 실행해 처리 속도, 오류율, 남은 결측 수를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M2 코드를 실행해 처리 속도, 오류율, 남은 결측 수를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "고장 유형별 처리 내역표에서 stuck·spike·dropout이 어떻게 표시되는지 본다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>고장 유형별 처리 내역표에서 stuck·spike·dropout이 어떻게 표시되는지 본다.</p><h4>해야 할 일</h4><ol><li><p>고장 유형별 처리 내역표에서 stuck·spike·dropout이 어떻게 표시되는지 본다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>고장 유형별 처리 내역표에서 stuck·spike·dropout이 어떻게 표시되는지 본다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>고장 유형별 처리 내역표에서 stuck·spike·dropout이 어떻게 표시되는지 본다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "단위 테스트 5종과 동적 임계값 효과(오제거 건수)를 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>단위 테스트 5종과 동적 임계값 효과(오제거 건수)를 정리한다.</p><h4>해야 할 일</h4><ol><li><p>단위 테스트 5종과 동적 임계값 효과(오제거 건수)를 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>단위 테스트 5종과 동적 임계값 효과(오제거 건수)를 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>단위 테스트 5종과 동적 임계값 효과(오제거 건수)를 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(처리 속도 약 2만 건/초(목표 1,000건/초 이상), 오류율 0%, 결측 125건에서 0건 보간 MAE 0.042 대 평균 대체 0.122, 단위 테스트 5/5)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>SPIKE_K의 주간 배수를 6.0에서 3.0으로 낮춰 정상 변동 오제거가 어떻게 늘어나는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M03",
|
|
"sequence": 3,
|
|
"title": "음용 적합/부적합 판정 1차 기준치 필터링 Baseline 알고리즘 구현",
|
|
"durationHours": 2.5,
|
|
"overview": "<p>음용 적합·부적합 판정의 1차 기준치 필터링 Baseline 알고리즘을 구현하고 정확도를 측정한다.</p>",
|
|
"objectives": "<p>전처리한 자료에 pH, 탁도, 잔류염소, 중금속, 대장균의 주의·위험 가정 기준을 적용해 안전·주의·위험 3등급을 판정한다. 전처리 없이(결측을 0으로 둔 경우)와 전처리 후 정확도를 비교하고 혼동행렬에서 놓친 위험과 오경보의 원인(오염 사건 유형, 센서 고장 유형)을 분석한다. 위험 판정마다 초과한 항목을 근거로 보이고, 즉시 판정과 2시간 연속 확인 방식을 비교해 놓침과 오경보의 균형을 논의한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>음용 적합/부적합 판정 1차 기준치 필터링 Baseline 알고리즘을 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>음용 적합·부적합 판정의 1차 기준치 필터링 Baseline 알고리즘을 구현하고 정확도를 측정한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>전처리한 자료에 pH, 탁도, 잔류염소, 중금속, 대장균의 주의·위험 가정 기준을 적용해 안전·주의·위험 3등급 판정하고 정확도를 측정하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/models/wel03_baseline_model.py 및 기본 추론 결과 보고서</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m03_dataset.json",
|
|
"/uploads/WEL03/wel03_m03_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m03_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m03_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/models/wel03_baseline_model.py (필수)",
|
|
"기본 추론 결과 보고서 (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[음용 적합/부적합 판정 1차 기준치 필터링 Baseline 알고리즘 구현] 요구된 핵심 성능 기준(기본 데이터셋 대상 탐지/처리 정확도 75% 이상 달성)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>기본 데이터셋 대상 탐지/처리 정확도 75% 이상 달성 기준을 충족하고 단위 기능 동작 확인 및 기본 시나리오 실행 로그 생성을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>판단 지연시간 최적화 및 휴리스틱 가중치 1차 튜닝을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 알고리즘의 논리적 흐름 및 군사적 판단 기준의 투명성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>알고리즘의 논리적 흐름 및 군사적 판단 기준의 투명성이 논리적으로 검증되었으며 기준 벤치마크 데이터셋 대상 추론 결과 오차율 비교를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 알고리즘의 논리적 흐름 및 군사적 판단 기준의 투명성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 기본 데이터셋 대상 탐지/처리 정확도 75% 이상 달성</p></li><li><p>진행 기준: 단위 기능 동작 확인 및 기본 시나리오 실행 로그 생성</p></li><li><p>검증 방법: 기준 벤치마크 데이터셋 대상 추론 결과 오차율 비교</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M3 코드를 실행해 전처리 유무에 따른 정확도와 혼동행렬을 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M3 코드를 실행해 전처리 유무에 따른 정확도와 혼동행렬을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M3 코드를 실행해 전처리 유무에 따른 정확도와 혼동행렬을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M3 코드를 실행해 전처리 유무에 따른 정확도와 혼동행렬을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M3 코드를 실행해 전처리 유무에 따른 정확도와 혼동행렬을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "놓친 위험과 오경보의 원인(사건 유형, 센서 고장)을 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>놓친 위험과 오경보의 원인(사건 유형, 센서 고장)을 정리한다.</p><h4>해야 할 일</h4><ol><li><p>놓친 위험과 오경보의 원인(사건 유형, 센서 고장)을 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>놓친 위험과 오경보의 원인(사건 유형, 센서 고장)을 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>놓친 위험과 오경보의 원인(사건 유형, 센서 고장)을 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "즉시 판정과 2시간 연속 확인의 차이를 비교한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>즉시 판정과 2시간 연속 확인의 차이를 비교한다.</p><h4>해야 할 일</h4><ol><li><p>즉시 판정과 2시간 연속 확인의 차이를 비교한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>즉시 판정과 2시간 연속 확인의 차이를 비교한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>즉시 판정과 2시간 연속 확인의 차이를 비교한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 97.9%(전처리 없음 96.8%, 목표 75% 이상), 위험 재현율 88.6% 오경보 17건, 놓친 위험 중 중금속 완만 증가 22시간)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>LIMITS의 탁도 위험 기준을 2.0에서 1.5NTU로 낮춰 재현율과 오경보가 어떻게 달라지는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M04",
|
|
"sequence": 4,
|
|
"title": "복합 오염원 유입 징후 및 급수 안전도 위험 등급 분류 머신러닝 모델 고도화",
|
|
"durationHours": 3.0,
|
|
"overview": "<p>복합 오염원 유입 징후와 급수 안전도 위험 등급을 분류하는 머신러닝 모델을 고도화하고 방어 로직을 검증한다.</p>",
|
|
"objectives": "<p>변화량, 24시간 기준선 대비 편차, 6시간 변동성, 대장균 누적, 센서 처리 표시 등 29개 특징으로 랜덤 포레스트를 학습하고 Baseline과 비교한다. 하수 유입, 중금속 급증, 소독 실패, 화학 오염, 서서히 증가하는 중금속, 복합 오염 등 오염 시나리오 7종과 센서 드리프트·단발 스파이크·통신 단절 같은 센서 교란 3종으로 재현율, 탐지 지연, 위험 오경보를 점검한다. 처리 지연을 측정하고 모델이 놓치거나 오경보하는 유형을 정리한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>복합 오염원 유입 징후 및 급수 위험 등급 분류 머신러닝 모델을 고도화한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>복합 오염원 유입 징후와 급수 안전도 위험 등급을 분류하는 머신러닝 모델을 고도화하고 방어 로직을 검증한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>변화량, 24시간 기준선 대비 편차, 6시간 변동성, 대장균 누적, 센서 처리 표시 등 29개 특징으로 랜덤 포레스트를 학습하고 Baseline과 비교 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/models/wel03_advanced_detector.py 및 예외 탐지 테스트 결과</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m04_dataset.json",
|
|
"/uploads/WEL03/wel03_m04_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m04_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m04_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/models/wel03_advanced_detector.py (필수)",
|
|
"예외 탐지 테스트 결과 (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[복합 오염원 유입 징후 및 급수 안전도 위험 등급 분류 머신러닝 모델 고도화] 요구된 핵심 성능 기준(복합 위협 탐지 재현율(Recall) 85% 이상, 처리 지연 200ms 이하)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>복합 위협 탐지 재현율(Recall) 85% 이상, 처리 지연 200ms 이하 기준을 충족하고 복합 위협 시나리오 10종에 대한 탐지 테스트 통과을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>오경보(False Alarm) 유발 패턴 식별 및 특징 공간(Feature Space) 재설계을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 기만/교란 공격에 대한 방어 로직의 현실성 및 신뢰성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>기만/교란 공격에 대한 방어 로직의 현실성 및 신뢰성이 논리적으로 검증되었으며 합성 위협 데이터셋 주입 시 이상치 탐지 정확도 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 기만/교란 공격에 대한 방어 로직의 현실성 및 신뢰성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 복합 위협 탐지 재현율(Recall) 85% 이상, 처리 지연 200ms 이하</p></li><li><p>진행 기준: 복합 위협 시나리오 10종에 대한 탐지 테스트 통과</p></li><li><p>검증 방법: 합성 위협 데이터셋 주입 시 이상치 탐지 정확도 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M4 코드를 실행해 Baseline과 랜덤 포레스트 성능을 비교한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M4 코드를 실행해 Baseline과 랜덤 포레스트 성능을 비교한다.</p><h4>해야 할 일</h4><ol><li><p>M4 코드를 실행해 Baseline과 랜덤 포레스트 성능을 비교한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M4 코드를 실행해 Baseline과 랜덤 포레스트 성능을 비교한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M4 코드를 실행해 Baseline과 랜덤 포레스트 성능을 비교한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "복합 위협 시나리오 10종의 PASS/FAIL 표를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>복합 위협 시나리오 10종의 PASS/FAIL 표를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>복합 위협 시나리오 10종의 PASS/FAIL 표를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>복합 위협 시나리오 10종의 PASS/FAIL 표를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>복합 위협 시나리오 10종의 PASS/FAIL 표를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "FAIL인 시나리오의 원인과 다음 미션(신뢰도 지수)의 보완 방향을 적는다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>FAIL인 시나리오의 원인과 다음 미션(신뢰도 지수)의 보완 방향을 적는다.</p><h4>해야 할 일</h4><ol><li><p>FAIL인 시나리오의 원인과 다음 미션(신뢰도 지수)의 보완 방향을 적는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>FAIL인 시나리오의 원인과 다음 미션(신뢰도 지수)의 보완 방향을 적는다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>FAIL인 시나리오의 원인과 다음 미션(신뢰도 지수)의 보완 방향을 적는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(랜덤 포레스트 정확도 99.3%, 위험 재현율 97.2%(목표 85% 이상), 1건 지연 약 19ms(목표 200ms 이하) 시나리오 9/10 통과(센서 드리프트 교란은 FAIL))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>RandomForestClassifier의 max_depth를 10에서 4로 줄여 재현율과 오경보가 어떻게 달라지는지 비교한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M05",
|
|
"sequence": 5,
|
|
"title": "센서 오류에 의한 단수 오경보 방지 및 수질 안전 신뢰도 지수 산출 모듈 개발",
|
|
"durationHours": 3.0,
|
|
"overview": "<p>센서 오류로 인한 급수 중단 오경보를 줄이는 수질 안전 신뢰도 지수와 High·Med·Low 등급 모듈을 개발한다.</p>",
|
|
"objectives": "<p>위험 경보마다 항목별 편차의 일치도, 경보 지속 시간, 센서 이상 표시, 드리프트 의심 여부를 점수화해 0~100점 신뢰도를 만들고 High·Med·Low로 나눈다. High만 급수 중단 검토 요청, Med는 재채수·현장 키트 검사, Low는 센서 점검·재측정으로 조치를 나눠 신뢰도 적용 전후의 오경보율을 비교한다. 임계값 민감도를 표로 보고, 센서 잡음을 바꿔 5회 재현했을 때 등급이 얼마나 일관된지 측정한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>센서 오류에 의한 단수 오경보 방지 신뢰도 지수 산출 모듈을 개발한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>센서 오류로 인한 급수 중단 오경보를 줄이는 수질 안전 신뢰도 지수와 High·Med·Low 등급 모듈을 개발한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>위험 경보마다 항목별 편차의 일치도, 경보 지속 시간, 센서 이상 표시, 드리프트 의심 여부를 점수화해 0~100점 신뢰도를 만들고 High·Med·Low로 나눈다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/verification/wel03_confidence_engine.py</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m05_dataset.json",
|
|
"/uploads/WEL03/wel03_m05_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m05_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m05_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/verification/wel03_confidence_engine.py (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[센서 오류에 의한 단수 오경보 방지 및 수질 안전 신뢰도 지수 산출 모듈 개발] 요구된 핵심 성능 기준(오경보율(FAR) 40% 이상 감축, 신뢰도 스코어 산출 일관성 90% 이상)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>오경보율(FAR) 40% 이상 감축, 신뢰도 스코어 산출 일관성 90% 이상 기준을 충족하고 오경보 필터링 전후 비교 지표 산출 및 통합 테스트 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>신뢰도 가중치 매트릭스 재조정 및 불확실성 지표 시각화 지원을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 신뢰도 등급(High/Med/Low) 부여 기준의 군사적 타당성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>신뢰도 등급(High/Med/Low) 부여 기준의 군사적 타당성이 논리적으로 검증되었으며 ROC-AUC 곡선 분석 및 임계값 민감도 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 신뢰도 등급(High/Med/Low) 부여 기준의 군사적 타당성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 오경보율(FAR) 40% 이상 감축, 신뢰도 스코어 산출 일관성 90% 이상</p></li><li><p>진행 기준: 오경보 필터링 전후 비교 지표 산출 및 통합 테스트 완료</p></li><li><p>검증 방법: ROC-AUC 곡선 분석 및 임계값 민감도 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M5 코드를 실행해 신뢰도 등급별 경보 수와 조치 표를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M5 코드를 실행해 신뢰도 등급별 경보 수와 조치 표를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M5 코드를 실행해 신뢰도 등급별 경보 수와 조치 표를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M5 코드를 실행해 신뢰도 등급별 경보 수와 조치 표를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M5 코드를 실행해 신뢰도 등급별 경보 수와 조치 표를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "신뢰도 적용 전후 오경보율을 비교한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>신뢰도 적용 전후 오경보율을 비교한다.</p><h4>해야 할 일</h4><ol><li><p>신뢰도 적용 전후 오경보율을 비교한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>신뢰도 적용 전후 오경보율을 비교한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>신뢰도 적용 전후 오경보율을 비교한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "임계값 민감도 표와 잡음 재현 5회 일치율을 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>임계값 민감도 표와 잡음 재현 5회 일치율을 정리한다.</p><h4>해야 할 일</h4><ol><li><p>임계값 민감도 표와 잡음 재현 5회 일치율을 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>임계값 민감도 표와 잡음 재현 5회 일치율을 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>임계값 민감도 표와 잡음 재현 5회 일치율을 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(오경보율 8.4%에서 0.7%(91% 감축, 목표 40% 이상), 잡음 재현 일치율 93.6%(목표 90% 이상) High 137·Med 112·Low 13건, AUC 0.821)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>High 기준을 60점에서 80점으로 올려 상신 경보 수와 실제 위험 상신 비율이 어떻게 변하는지 확인하고 놓침 위험을 논의한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M06",
|
|
"sequence": 6,
|
|
"title": "야전 급수차 및 정수 시설별 수질 상태 실시간 시각화 대시보드 구현",
|
|
"durationHours": 2.5,
|
|
"overview": "<p>야전 급수차와 정수 시설별 수질 상태를 실시간처럼 갱신해 보여 주는 상황판 대시보드를 구현한다.</p>",
|
|
"objectives": "<p>가상 급수원 8곳의 측정 스트림을 1시간 단위로 갱신하며 급수원 상태 지도, 항목별 기준 대비 비율 히트맵, 경보 급수원 추이, 상태 현황판, 긴급 경보 목록 5종 컴포넌트를 그린다. 갱신 1회당 처리 시간과 급수원 상세 조회 응답 시간을 측정하고, 야간 모드와 경보 강조로 인지 부하를 줄이는 방법을 확인한다. 위험 표시는 가정 기준치 기반 판단 보조임을 화면에 명시한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>야전 급수 시설별 수질 상태 실시간 시각화 대시보드를 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>야전 급수차와 정수 시설별 수질 상태를 실시간처럼 갱신해 보여 주는 상황판 대시보드를 구현한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>가상 급수원 8곳의 측정 스트림을 1시간 단위로 갱신하며 급수원 상태 지도, 항목별 기준 대비 비율 히트맵, 경보 급수원 추이, 상태 현황판, 긴급 경보 목록 5종 컴포넌트를 그린다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/ui/wel03_dashboard.py (또는 웹 UI 컴포넌트)</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m06_dataset.json",
|
|
"/uploads/WEL03/wel03_m06_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m06_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m06_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/ui/wel03_dashboard.py (또는 웹 UI 컴포넌트) (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[야전 급수차 및 정수 시설별 수질 상태 실시간 시각화 대시보드 구현] 요구된 핵심 성능 기준(화면 갱신 주기 1초 이내, UI 응답성 100ms 이내)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>화면 갱신 주기 1초 이내, UI 응답성 100ms 이내 기준을 충족하고 주요 지표 시각화 컴포넌트 4종 이상 렌더링 및 실시간 데이터 연동을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>야간 작전 모드(Dark mode) 및 긴급 경보 하이라이트 UI 개선을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 전술 작전 상황판으로서의 직관성 및 인지 부하 감소도 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>전술 작전 상황판으로서의 직관성 및 인지 부하 감소도이 논리적으로 검증되었으며 사용자 인터랙션 테스트 및 모의 데이터 스트림 렌더링 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 전술 작전 상황판으로서의 직관성 및 인지 부하 감소도</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 화면 갱신 주기 1초 이내, UI 응답성 100ms 이내</p></li><li><p>진행 기준: 주요 지표 시각화 컴포넌트 4종 이상 렌더링 및 실시간 데이터 연동</p></li><li><p>검증 방법: 사용자 인터랙션 테스트 및 모의 데이터 스트림 렌더링 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M6 코드를 실행해 갱신 시간과 급수원 상태판을 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M6 코드를 실행해 갱신 시간과 급수원 상태판을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M6 코드를 실행해 갱신 시간과 급수원 상태판을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M6 코드를 실행해 갱신 시간과 급수원 상태판을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M6 코드를 실행해 갱신 시간과 급수원 상태판을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "긴급 경보로 강조되는 급수원과 근거(초과 항목)를 읽는다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>긴급 경보로 강조되는 급수원과 근거(초과 항목)를 읽는다.</p><h4>해야 할 일</h4><ol><li><p>긴급 경보로 강조되는 급수원과 근거(초과 항목)를 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>긴급 경보로 강조되는 급수원과 근거(초과 항목)를 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>긴급 경보로 강조되는 급수원과 근거(초과 항목)를 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "그래프 5종에서 경보 급수원을 한눈에 찾는 방법을 설명한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>그래프 5종에서 경보 급수원을 한눈에 찾는 방법을 설명한다.</p><h4>해야 할 일</h4><ol><li><p>그래프 5종에서 경보 급수원을 한눈에 찾는 방법을 설명한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>그래프 5종에서 경보 급수원을 한눈에 찾는 방법을 설명한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>그래프 5종에서 경보 급수원을 한눈에 찾는 방법을 설명한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(갱신 1회 평균 약 120ms(목표 1초 이내), 상세 조회 평균 약 5ms(목표 100ms 이내) 긴급 경보 강조 3곳(W04, W07, W08), 컴포넌트 5종)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>야간 모드 색상을 바꾸거나 경보 강조 기준을 '주의 포함'으로 넓혀 인지 부하가 어떻게 달라지는지 비교한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M07",
|
|
"sequence": 7,
|
|
"title": "수질 위험 경보 발생 시 급수관 긴급 채수 검사 및 급수 중단 HITL 결재선 설계",
|
|
"durationHours": 3.0,
|
|
"overview": "<p>수질 위험 경보 발생 시 긴급 채수 검사와 급수 중단을 사람이 결정하는 HITL 결재선을 설계한다.</p>",
|
|
"objectives": "<p>경보 사건을 검토 큐에 우선순위로 등록하고 측정병 채수, 예방의학 담당 검토, 지휘관 결심의 순서로 급수 중단 또는 유지를 결정하는 상태 기계를 구현한다. 시스템이 자동으로 급수를 중단하지 못하게 권한을 분리하고 각 단계에 사유·근거를 필수로 한다. 측정병의 직접 중단, 시스템 자동 확정, 검토 없이 승인, 미등록 사용자, 사유 없는 반려 등 우회·위반 시도 6종 차단과 해시 체인 감사 로그의 변조 탐지를 확인한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>수질 위험 경보 발생 시 급수 중단 및 재검사 HITL 결재선을 설계한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>수질 위험 경보 발생 시 긴급 채수 검사와 급수 중단을 사람이 결정하는 HITL 결재선을 설계한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>경보 사건을 검토 큐에 우선순위로 등록하고 측정병 채수, 예방의학 담당 검토, 지휘관 결심의 순서로 급수 중단 또는 유지를 결정하는 상태 기계 구현하고 동작을 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/hitl/wel03_approval_workflow.py 및 docs/wel03_hitl_guide.md</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m07_dataset.json",
|
|
"/uploads/WEL03/wel03_m07_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m07_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m07_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/hitl/wel03_approval_workflow.py (필수)",
|
|
"docs/wel03_hitl_guide.md (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[수질 위험 경보 발생 시 급수관 긴급 채수 검사 및 급수 중단 HITL 결재선 설계] 요구된 핵심 성능 기준(인간 검토 큐(Queue) 대기시간 및 승인/반려 처리 로깅 성공률 100%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>인간 검토 큐(Queue) 대기시간 및 승인/반려 처리 로깅 성공률 100% 기준을 충족하고 승인/반려 인터페이스 동작 및 감사 로그(Audit Log) 생성 검증을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>검토 우선순위 큐잉 알고리즘 개선 및 지휘관 피드백 입력 폼 추가을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 지휘 책임 분계선 명확화 및 성급한 자동 단정 방지 체계 부합성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>지휘 책임 분계선 명확화 및 성급한 자동 단정 방지 체계 부합성이 논리적으로 검증되었으며 모의 조작자 승인/반려 시뮬레이션 및 데이터 무결성 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 지휘 책임 분계선 명확화 및 성급한 자동 단정 방지 체계 부합성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 인간 검토 큐(Queue) 대기시간 및 승인/반려 처리 로깅 성공률 100%</p></li><li><p>진행 기준: 승인/반려 인터페이스 동작 및 감사 로그(Audit Log) 생성 검증</p></li><li><p>검증 방법: 모의 조작자 승인/반려 시뮬레이션 및 데이터 무결성 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M7 코드를 실행해 검토 큐와 결재 결과(급수 중단·유지)를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M7 코드를 실행해 검토 큐와 결재 결과(급수 중단·유지)를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M7 코드를 실행해 검토 큐와 결재 결과(급수 중단·유지)를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M7 코드를 실행해 검토 큐와 결재 결과(급수 중단·유지)를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M7 코드를 실행해 검토 큐와 결재 결과(급수 중단·유지)를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "우회·위반 시도 6종이 차단되는 이유를 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>우회·위반 시도 6종이 차단되는 이유를 정리한다.</p><h4>해야 할 일</h4><ol><li><p>우회·위반 시도 6종이 차단되는 이유를 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>우회·위반 시도 6종이 차단되는 이유를 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>우회·위반 시도 6종이 차단되는 이유를 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "감사 로그 해시 체인과 임의 수정 탐지를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>감사 로그 해시 체인과 임의 수정 탐지를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>감사 로그 해시 체인과 임의 수정 탐지를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>감사 로그 해시 체인과 임의 수정 탐지를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>감사 로그 해시 체인과 임의 수정 탐지를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(경보 10건 큐 등록, 자동 급수 중단 0건, 급수 중단 9·유지 1 우회 시도 차단 6/6, 로깅 성공률 100%(49건), 변조 탐지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>큐 우선순위 점수에서 '대장균' 가중치를 높여 상위 5건이 어떻게 바뀌는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M08",
|
|
"sequence": 8,
|
|
"title": "오염물질 대량 유입 가상 시나리오 부하 테스트 및 경보 반응 시간 검증",
|
|
"durationHours": 3.5,
|
|
"overview": "<p>오염물질이 대량 유입되는 가상 시나리오에서 파이프라인 부하 시험을 하고 경보 반응 시간과 Fail-safe 동작을 검증한다.</p>",
|
|
"objectives": "<p>급수원을 8곳에서 48곳으로 늘려 트래픽을 500% 키우고 30곳에 오염이 동시에 유입되는 상황에서 수집·정제·판정 주기의 처리 시간, 시스템 중단, 데이터 유실, 메모리 증가, 경보 탐지와 반응 시간을 평시와 비교한다. 손상 레코드는 버리지 않고 격리 보관하며, 처리 시간 예산을 넘으면 정제·특징 계산을 줄이는 기능 축소(lite) 모드로 전환하되 경보 판정은 유지한다. 기능 축소를 적용하지 않았을 때와 병목 구간도 비교한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>오염물질 대량 유입 가상 시나리오 부하 테스트를 수행한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>오염물질이 대량 유입되는 가상 시나리오에서 파이프라인 부하 시험을 하고 경보 반응 시간과 Fail-safe 동작을 검증한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>급수원을 8곳에서 48곳으로 늘려 트래픽을 500% 키우고 30곳에 오염이 동시에 유입되는 상황에서 수집·정제·판정 주기의 처리 시간, 시스템 중단, 데이터 유실, 메모리 증가, 경보 탐지와 반응 시간을 평시와 비교 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>tests/wel03_stress_test.py 및 스트레스 테스트 분석 보고서</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m08_dataset.json",
|
|
"/uploads/WEL03/wel03_m08_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m08_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m08_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"tests/wel03_stress_test.py (필수)",
|
|
"스트레스 테스트 분석 보고서 (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[오염물질 대량 유입 가상 시나리오 부하 테스트 및 경보 반응 시간 검증] 요구된 핵심 성능 기준(동시 트래픽 500% 증가 시 시스템 다운 0건, 데이터 유실률 0%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>동시 트래픽 500% 증가 시 시스템 다운 0건, 데이터 유실률 0% 기준을 충족하고 대량 시뮬레이션 부하 주입 테스트 통과 및 병목 구간 프로파일링 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>병목 함수 최적화, 비동기 큐 처리 적용 및 자원 할당 개선을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 극단 상황에서의 안전 실패(Fail-safe) 및 기능 축소 작동 적절성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>극단 상황에서의 안전 실패(Fail-safe) 및 기능 축소 작동 적절성이 논리적으로 검증되었으며 부하 테스트 도구를 통한 처리량(Throughput) 및 메모리 누수 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 극단 상황에서의 안전 실패(Fail-safe) 및 기능 축소 작동 적절성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 동시 트래픽 500% 증가 시 시스템 다운 0건, 데이터 유실률 0%</p></li><li><p>진행 기준: 대량 시뮬레이션 부하 주입 테스트 통과 및 병목 구간 프로파일링 완료</p></li><li><p>검증 방법: 부하 테스트 도구를 통한 처리량(Throughput) 및 메모리 누수 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M8 코드를 실행해 평시와 부하 500% 비교표를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M8 코드를 실행해 평시와 부하 500% 비교표를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M8 코드를 실행해 평시와 부하 500% 비교표를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M8 코드를 실행해 평시와 부하 500% 비교표를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M8 코드를 실행해 평시와 부하 500% 비교표를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "유실률·중단·메모리·경보 반응 시간을 읽는다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>유실률·중단·메모리·경보 반응 시간을 읽는다.</p><h4>해야 할 일</h4><ol><li><p>유실률·중단·메모리·경보 반응 시간을 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>유실률·중단·메모리·경보 반응 시간을 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>유실률·중단·메모리·경보 반응 시간을 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "기능 축소 적용 전후 주기 처리 시간과 병목을 정리한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기능 축소 적용 전후 주기 처리 시간과 병목을 정리한다.</p><h4>해야 할 일</h4><ol><li><p>기능 축소 적용 전후 주기 처리 시간과 병목을 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>기능 축소 적용 전후 주기 처리 시간과 병목을 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>기능 축소 적용 전후 주기 처리 시간과 병목을 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(시스템 중단 0건, 데이터 유실률 0%, 메모리 말기/초기 1.00, 경보 30/30 탐지 기능 축소 시 주기 평균 약 91ms 대 미적용 약 659ms(예산 300ms))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>급수원 수를 48곳에서 96곳으로 늘려 기능 축소 전환 시점과 반응 시간이 어떻게 달라지는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M09",
|
|
"sequence": 9,
|
|
"title": "AAR 기반 수질 이상 오판 사례 분석 및 수질 위험 판단 임계치 재조정",
|
|
"durationHours": 3.0,
|
|
"overview": "<p>AAR로 수질 이상 오판 사례를 분석하고 판단 임계치를 재조정해 효과를 별도 검증 세트로 확인한다.</p>",
|
|
"objectives": "<p>튜닝용 가상 자료에서 Baseline 오판을 오경보(센서 드리프트, 단발 대장균), 경계 혼동, 놓침(화학, 중금속 완만 증가) 등 원인별로 분류한다. 대장균 3시간 누적 기준과 중금속 기준선 편차 기준을 재조정하고 YAML 설정으로 정리한다. 튜닝·검증·벤치마크 세트에서 정확도와 위험 재현율, 새로 틀린 건을 회귀 테스트로 비교하고 재발한 오류와 남은 원인을 기록한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>AAR 기반 수질 이상 오판 사례 분석 및 판단 임계치를 재조정한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>AAR로 수질 이상 오판 사례를 분석하고 판단 임계치를 재조정해 효과를 별도 검증 세트로 확인한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>튜닝용 가상 자료에서 Baseline 오판을 오경보(센서 드리프트, 단발 대장균), 경계 혼동, 놓침(화학, 중금속 완만 증가) 등 원인별로 분류 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>docs/wel03_aar_report.md 및 configs/wel03_tuned_params.yaml</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m09_dataset.json",
|
|
"/uploads/WEL03/wel03_m09_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m09_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m09_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"docs/wel03_aar_report.md (필수)",
|
|
"configs/wel03_tuned_params.yaml (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[AAR 기반 수질 이상 오판 사례 분석 및 수질 위험 판단 임계치 재조정] 요구된 핵심 성능 기준(AAR 피드백 적용 후 종합 정확도 10%p 이상 향상, 재발 오류 0건)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>AAR 피드백 적용 후 종합 정확도 10%p 이상 향상, 재발 오류 0건 기준을 충족하고 AAR 보고서 작성 및 파라미터 튜닝 전후 회귀 테스트 통과을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>지속적 학습(Continual Learning) 파이프라인 연계 방안 수립을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 오류 원인 규명의 객관성 및 개선 조치의 논리적 타당성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>오류 원인 규명의 객관성 및 개선 조치의 논리적 타당성이 논리적으로 검증되었으며 회귀 테스트(Regression Test) 스위트 전체 자동 실행 및 비교를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 오류 원인 규명의 객관성 및 개선 조치의 논리적 타당성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: AAR 피드백 적용 후 종합 정확도 10%p 이상 향상, 재발 오류 0건</p></li><li><p>진행 기준: AAR 보고서 작성 및 파라미터 튜닝 전후 회귀 테스트 통과</p></li><li><p>검증 방법: 회귀 테스트(Regression Test) 스위트 전체 자동 실행 및 비교</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M9 코드를 실행해 오판 원인 분류표와 재조정 파라미터(YAML)를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M9 코드를 실행해 오판 원인 분류표와 재조정 파라미터(YAML)를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M9 코드를 실행해 오판 원인 분류표와 재조정 파라미터(YAML)를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M9 코드를 실행해 오판 원인 분류표와 재조정 파라미터(YAML)를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M9 코드를 실행해 오판 원인 분류표와 재조정 파라미터(YAML)를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "튜닝·검증·벤치마크 세트의 정확도 변화와 새로 틀린 건수를 비교한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>튜닝·검증·벤치마크 세트의 정확도 변화와 새로 틀린 건수를 비교한다.</p><h4>해야 할 일</h4><ol><li><p>튜닝·검증·벤치마크 세트의 정확도 변화와 새로 틀린 건수를 비교한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>튜닝·검증·벤치마크 세트의 정확도 변화와 새로 틀린 건수를 비교한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>튜닝·검증·벤치마크 세트의 정확도 변화와 새로 틀린 건수를 비교한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "목표 미달 사유를 설명하고 남은 원인에 대한 운영 조치를 적는다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>목표 미달 사유를 설명하고 남은 원인에 대한 운영 조치를 적는다.</p><h4>해야 할 일</h4><ol><li><p>목표 미달 사유를 설명하고 남은 원인에 대한 운영 조치를 적는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>목표 미달 사유를 설명하고 남은 원인에 대한 운영 조치를 적는다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>목표 미달 사유를 설명하고 남은 원인에 대한 운영 조치를 적는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(검증 세트 정확도 향상 0.1%p(목표 10%p 미달), 재발 오류 1건(목표 0건 미달) 오판 110건에서 102건, 남은 원인은 센서 고장·경계 혼동)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>ecoli_3h_min을 2에서 3으로 바꿔 놓침과 오경보가 어떻게 달라지는지 확인한다. 목표 미달이 임계치 문제가 아닌 이유를 설명한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "WEL03_M10",
|
|
"sequence": 10,
|
|
"title": "가상 수질검사 데이터 위험 신호 대시보드 시스템 통합 패키지 완성",
|
|
"durationHours": 3.5,
|
|
"overview": "<p>가상 수질검사 데이터 위험 신호 대시보드를 하나의 통합 패키지로 완성한다.</p>",
|
|
"objectives": "<p>입력 검증, 전처리, 재조정 기준치 판정, 랜덤 포레스트 위험 분류, 신뢰도 등급, 사람 검토 큐 등록, 상황판 요약을 한 파일의 파이프라인으로 묶는다. 서로 다른 가상 시나리오 5종으로 End-to-End 실행 성공률을 확인하고, 자체 점검 8항목과 함수 호출 추적 기반 커버리지를 측정한다. 운영 문서(README) 7개 장을 점검하고 지휘관 브리핑 요약을 출력하며, 실제 판정은 공식 기준과 담당 확인에 따른다는 점을 명시한다.</p>",
|
|
"scenario": "<h4>미션 배경 및 당위성</h4><p>가상 수질검사 데이터 위험 신호 대시보드 시스템 통합 패키지를 완성한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>가상 수질검사 데이터 위험 신호 대시보드를 하나의 통합 패키지로 완성한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>입력 검증, 전처리, 재조정 기준치 판정, 랜덤 포레스트 위험 분류, 신뢰도 등급, 사람 검토 큐 등록, 상황판 요약을 한 파일의 파이프라인으로 묶는다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/main_wel03.py, README.md, docs/wel03_final_report.pdf(md)</code> 형태의 결과물을 완성한다.</p>",
|
|
"attachments": [],
|
|
"materials": [
|
|
"/uploads/WEL03/wel03_m10_dataset.json",
|
|
"/uploads/WEL03/wel03_m10_sample.md"
|
|
],
|
|
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m10_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/WEL03/wel03_m10_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
|
|
"techStack": [
|
|
"장병 복지·지원",
|
|
"코딩형",
|
|
"데이터 전처리",
|
|
"알고리즘 구현",
|
|
"HITL 검증"
|
|
],
|
|
"deliverables": [
|
|
"src/main_wel03.py, README.md, docs/wel03_final_report.pdf(md) (필수)"
|
|
],
|
|
"evaluationKeys": [
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[가상 수질검사 데이터 위험 신호 대시보드 시스템 통합 패키지 완성] 요구된 핵심 성능 기준(End-to-End 통합 파이프라인 실행 성공률 100%, 테스트 커버리지 85% 이상)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>End-to-End 통합 파이프라인 실행 성공률 100%, 테스트 커버리지 85% 이상 기준을 충족하고 원클릭 실행 스크립트 동작 확인 및 최종 발표 산출물 작성 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>타 부대/인접 체계와의 연동 인터페이스(API) 확장 로드맵 제시을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
|
|
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 군 실무 즉시 도입 가능성, 운용 신뢰도 및 전략적 기대효과 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>군 실무 즉시 도입 가능성, 운용 신뢰도 및 전략적 기대효과이 논리적으로 검증되었으며 최종 검증 위원회(평가관) 모의 시연 및 전체 기능 통합 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
|
|
],
|
|
"evaluationTypes": [
|
|
"REQUIRED",
|
|
"REQUIRED"
|
|
],
|
|
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 군 실무 즉시 도입 가능성, 운용 신뢰도 및 전략적 기대효과</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: End-to-End 통합 파이프라인 실행 성공률 100%, 테스트 커버리지 85% 이상</p></li><li><p>진행 기준: 원클릭 실행 스크립트 동작 확인 및 최종 발표 산출물 작성 완료</p></li><li><p>검증 방법: 최종 검증 위원회(평가관) 모의 시연 및 전체 기능 통합 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
|
|
"aiGuidelines": {
|
|
"allow": [
|
|
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
|
|
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
|
|
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
|
|
],
|
|
"rules": [
|
|
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
|
|
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
|
|
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
|
|
],
|
|
"forbid": [
|
|
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
|
|
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
|
|
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
|
|
]
|
|
},
|
|
"guideSteps": [
|
|
{
|
|
"step": 1,
|
|
"problem": "M10 코드를 실행해 End-to-End 5종 결과를 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>M10 코드를 실행해 End-to-End 5종 결과를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M10 코드를 실행해 End-to-End 5종 결과를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M10 코드를 실행해 End-to-End 5종 결과를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>M10 코드를 실행해 End-to-End 5종 결과를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 2,
|
|
"problem": "자체 점검 8항목과 함수 커버리지, README 7개 장을 확인한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>자체 점검 8항목과 함수 커버리지, README 7개 장을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>자체 점검 8항목과 함수 커버리지, README 7개 장을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>자체 점검 8항목과 함수 커버리지, README 7개 장을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>자체 점검 8항목과 함수 커버리지, README 7개 장을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 3,
|
|
"problem": "브리핑 요약의 수치가 실행 결과와 맞는지 대조한다.",
|
|
"activity": "<h4>이 단계의 역할</h4><p>브리핑 요약의 수치가 실행 결과와 맞는지 대조한다.</p><h4>해야 할 일</h4><ol><li><p>브리핑 요약의 수치가 실행 결과와 맞는지 대조한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>브리핑 요약의 수치가 실행 결과와 맞는지 대조한다. 실행 결과 및 검증 로그</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>브리핑 요약의 수치가 실행 결과와 맞는지 대조한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
|
|
"attachments": []
|
|
},
|
|
{
|
|
"step": 4,
|
|
"problem": "도전 과제 및 파라미터 튜닝 최적화",
|
|
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>CONFIG의 conf_high를 바꿔 검토 큐에 올라가는 급수원 수가 어떻게 달라지는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
|
|
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
|
|
"attachments": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |