시뮬레이션검증및타당성확인 (Simulation Verification and Validation)
쉽게 풀면
검증(verification)은 "설계도대로 제대로 지었는가"를 확인하는 것이고, 타당성확인(validation)은 "이 건물이 애초에 우리가 원하던 목적에 맞는가"를 확인하는 것에 비유할 수 있습니다. 시뮬레이션에서 검증은 컴퓨터 프로그램이 모델 설계와 논리적으로 일치하게 만들어졌는지, 즉 코드에 버그가 없는지를 확인하는 과정입니다. 타당성확인은 그렇게 만들어진 모델이 실제 시스템의 행동을 충분히 정확하게 재현하는지를 실제 데이터와 비교하며 확인하는 과정입니다. 두 단계 모두 통과해야 시뮬레이션 결과를 믿고 의사결정에 사용할 수 있습니다.
왜 중요한가
시뮬레이션은 실제 시스템을 대신하는 모형이기 때문에, 그 결과를 근거로 한 정책 결정이나 설계 변경은 모델의 신뢰성에 전적으로 의존합니다. 검증과 타당성확인 절차 없이 얻은 결과는 겉보기엔 그럴듯해도 실제와 괴리가 있을 수 있어, 학술 논문과 산업 현장 모두에서 필수적인 절차로 요구됩니다.
논문에서는 이렇게 쓰입니다
검증과 타당성확인을 각각 별도의 절차로 수행한 예입니다.
정성적 방법과 정량적 통계 검정을 함께 사용해 타당성을 확인한 예입니다.
조금 더 깊게 보면
검증 기법으로는 코드 디버깅, 추적(trace) 분석, 극단적 조건 검사 등이 있으며, 타당성확인 기법으로는 전문가에 의한 대면 타당성 평가, 실제 데이터와의 통계적 비교, 민감도 분석 등이 흔히 사용됩니다. 두 절차는 모델 개발의 특정 시점에 한 번만 수행하는 것이 아니라 개발 과정 전반에 걸쳐 반복적으로 이루어지는 것이 바람직합니다.
주의할 점
검증되었다고 해서 반드시 타당한 것은 아니며, 두 개념은 서로 다른 질문에 답하는 별개의 절차이므로 혼동해서는 안 됩니다.