컴퓨터 시뮬레이션 모델의 검증 및 검증

Verification and validation of computer simulation models

컴퓨터 시뮬레이션 모델의 검증과 검증은 정확하고 신뢰할 수 있는 모델을 생산한다는 궁극적인 목표를 가지고 시뮬레이션 모델을 개발하는 동안 수행된다.[1][2] "시뮬레이션 모델은 문제를 해결하고 의사 결정을 돕기 위해 점점 더 많이 사용되고 있다. 이러한 모델의 개발자와 사용자, 이러한 모델의 결과로부터 얻은 정보를 사용하는 의사결정자, 그리고 그러한 모델에 기초한 결정의 영향을 받는 개인들은 모델과 그 결과가 "정확한"[3] 것인지에 대해 모두 충분히 우려하고 있다. 이 문제는 시뮬레이션 모델의 검증과 검증을 통해 해결된다.

시뮬레이션 모델은 실제 시스템의 대략적인 모조품이며 결코 실제 시스템을 정확히 모방하지 않는다. 그 때문에 모델은 모델의 의도된 목적이나 용도에 필요한 정도까지 검증되고 검증되어야 한다.[3]

시뮬레이션 모델의 검증과 검증은 기능 규격이 문서화되고 초기 모델 개발이 완료된 후에 시작한다.[4] 검증과 검증은 모델 개발 전반에 걸쳐 이루어지는 반복적인 과정이다.[1][4]

검증

컴퓨터 시뮬레이션의 맥락에서 모델의 검증은 개념적 모델에 관해서 그것이 정확하게 구현되었는지 확인하는 과정이다(그것은 주어진 적용목적에 적합하다고 간주되는 사양과 가정과 일치한다).[1][4] 검증하는 동안 모델을 테스트하여 모델 구현에서 오류를 찾아 수정한다.[4] 다양한 프로세스와 기법을 사용하여 모델 개념에 관한 사양과 가정을 일치시킬 수 있다. 모델 검증의 목적은 모델의 구현이 올바른지 확인하는 것이다.

모델을 검증하는 데 활용할 수 있는 기법이 많다. 여기에는 전문가에 의해 모델을 점검받는 것, 논리적으로 가능한 각각의 동작을 포함하는 논리 흐름도 만들기, 입력 매개 변수의 다양한 설정 하에서 모델 출력의 타당성 검사, 대화형 디버거 사용 등이 포함된다.[1] 소프트웨어 검증에 사용되는 많은 소프트웨어 엔지니어링 기법이 시뮬레이션 모델 검증에 적용 가능하다.[1]

확인

검증은 모델의 실제 시스템 표현 정확성을 점검한다. 모델 검증은 "적용성 영역 내의 컴퓨터화된 모델이 의도된 모델의 적용과 일치하는 만족스러운 범위의 정확도를 가지고 있다는 것을 입증한다"[3]를 의미하도록 정의된다. 모델은 특정 목적 또는 목적의 집합과 그 목적에 대해 결정된 타당성을 위해 구축되어야 한다.[3]

컴퓨터 모델을 검증하는 데 사용할 수 있는 많은 접근법이 있다. 접근방식은 주관적 검토부터 객관적 통계적 시험까지 다양하다. 일반적으로 사용되는 한 가지 접근방식은 모델 제작자가 일련의 시험을 통해 모델의 유효성을 결정하도록 하는 것이다.[3]

Naylor와 핑거[1967]는 널리 지켜진 모델 검증에 대한 3단계 접근방식을 공식화했다.[1]

1단계. 얼굴 유효성이 높은 모델을 구축한다.

2단계. 모델 가정을 검증한다.

3단계. 모델 입출력 변환을 실제 시스템의 해당 입출력 변환과 비교하십시오.[5]

면 유효성

타당성이 있는 모델은 현실세계 시스템에 정통한 사람들에게 현실세계 시스템을 합리적으로 모방하는 것으로 보인다.[4] 얼굴 유효성은 시스템에 정통한 사용자와 사람들이 합리성을 위해 모델 출력을 검사하고 그 과정에서 결함을 확인함으로써 시험된다.[1] 사용자가 검증에 참여하는 것의 추가적인 장점은 모델에 대한 모델의 신뢰도와 모델에 대한 사용자의 신뢰도가 높아진다는 것이다.[1][4] 모델 입력에 대한 민감도는 얼굴 유효성을 판단하는 데도 사용될 수 있다.[1] 예를 들어, 패스트푸드점 드라이브 스루 시뮬레이션이 고객 도착률이 시간당 20명, 시간당 40명으로 두 번 실행되면 평균 대기 시간 또는 최대 대기 고객 수와 같은 모델 출력이 도착율에 따라 증가할 것으로 예상된다.

모형 가정 유효성 확인

모형에 대한 가정은 일반적으로 시스템 작동 방식에 대한 구조적 가정과 데이터 가정이라는 두 가지 범주로 분류된다. 또한 우리는 현실을 단순화하기 위해 사용하는 단순화 가정을 고려할 수 있다.[6]

구조 가정

시스템이 어떻게 작동하고 어떻게 물리적으로 배열되는지에 대한 가정은 구조적인 가정이다. 예를 들어, 패스트푸드에 있는 서버의 수는 차선을 통과하고 둘 이상의 서버가 있을 경우 어떻게 활용되는가? 고객이 단일 서버를 방문하여 거래를 완료하거나 한 서버가 주문을 받아 결제를 처리하고 다른 서버가 주문을 작성 및 처리하는 경우 서버는 병렬로 작동하는지 여부. 모형의 많은 구조적 문제들은 좋지 않거나 잘못된 가정으로부터 온다.[4] 가능한 경우 실제 시스템의 작동을 면밀히 관찰하여 작동 방식을 이해해야 한다.[4] 시스템 구조와 운용도 실제 시스템 사용자와 검증해야 한다.[1]

데이터 가정

개념 모델을 구축하고 모델을 검증하기 위해 충분한 양의 적절한 데이터가 있어야 한다. 적절한 데이터의 부족이 종종 모델의 검증에 실패하는 원인이다.[3] 데이터는 신뢰할 수 있는 출처에서 나온 것임을 검증해야 한다. 일반적인 오류는 데이터에 대한 부적절한 통계 분포를 가정하는 것이다.[1] 가정된 통계적 모델은 적합도 시험 및 기타 기법을 사용하여 시험해야 한다.[1][3] 적합도 검정의 예로는 Kolmogorov-Smirnov 검정카이-제곱 검정이 있다. 데이터의 특이치는 반드시 확인해야 한다.[3]

단순화 가정

우리가 알고 있는 그러한 가정들이 사실이 아니라 우리가 해결하고자 하는 문제를 단순화하기 위해 필요한 것인가?[6] 이 가정은 모델이 우리가 해결하고자 하는 문제에 대한 해답이 될 수 있을 만큼 충분히 정확하다는 것을 보장하도록 제한되어야 한다.

입력 출력 변환 검증 중

이 모델은 이러한 테스트를 위한 입력-출력 변환으로 간주된다. 검증 시험은 고려 중인 시스템의 출력을 동일한 입력 조건 집합에 대한 모델 출력과 비교하는 것으로 구성된다. 이 테스트를 수행하려면 시스템을 관찰하는 동안 기록된 데이터를 사용할 수 있어야 한다.[3] 주된 관심사가 되는 모델 출력을 성능 척도로 사용해야 한다.[1] 예를 들어, 고려 중인 시스템이 모델에 대한 입력이 고객 도착 시간이고 성능의 출력 측정치가 평균 고객 시간인 패스트푸드 드라이브인 경우 드라이브 통과에서 고객에 대한 실제 도착 시간 및 소비 시간이 기록될 것이다. 모델은 실제 도착 시간으로 실행되며 모델 평균 시간은 하나 이상의 테스트를 사용하여 라인에서 소비되는 실제 평균 시간과 비교된다.

가설 검정

t-검정을 사용한 통계적 가설 검정은 모델을 유효한 것으로 받아들이거나 유효하지 않은 것으로 기각하는 기준으로 사용할 수 있다.

시험할 가설은

H0 성능 모델 측정 = 성능의 시스템 측정

H1 성능 모델 측정 ≠ 성능 시스템 측정값

시험은 주어진 표본 크기와 유의 수준 또는 α에 대해 수행된다. 시험을 수행하기 위해 모형의 통계적으로 독립된 런 n개를 수행하고 관심 변수에 대한 평균값 또는 기대값 E(Y)를 산출한다. 그런 다음 검정 통계량 t0 주어진 α, n, E(Y) 및 시스템 μ에0 대한 관측값을 계산한다.

=( E( ) - )/( / n) u_{0}}}}/{(S α 및 n-1에 대한 임계 값
/ , - 을 계산한다.

만약

Reject H0, 모델의 조정이 필요하다.

I형 오류 또는 "모델 구축자 위험"이라는 유효한 모델을 거부하고, 2형 오류, β 또는 "모델 사용자의 위험"[3]이라는 잘못된 모델을 수용하는 가설 시험을 사용하여 발생할 수 있는 두 가지 유형의 오류가 있다. 유의 수준 또는 α는 타입 I 오류 확률과 동일하다.[3] α가 작으면 귀무 가설을 거부하는 것이 강한 결론이다.[1] 예를 들어 α = 0.05이고 귀무 가설이 기각되면 유효한 모형을 기각할 확률은 0.05에 불과하다. 타입 II 오류의 확률을 줄이는 것은 매우 중요하다.[1][3] 유효하지 않은 모델을 정확하게 검출할 확률은 1 - β이다. 유형 II 오류의 확률은 표본 크기와 표본 값과 관측 값 사이의 실제 차이에 따라 달라진다. 표본 크기를 늘리면 유형 II 오류의 위험이 감소한다.

모델 정확도(범위

모델 정확도의 양을 범위로 지정하는 통계적 기법이 최근 개발됐다. 이 기법은 모델의 관심 변수와 시스템의 관심 변수의 차이가 지정된 정확도 범위 내에 있는 경우 모델을 수용하기 위해 가설 검정을 사용한다.[7] 시스템 데이터와 모델 데이터 모두 대략적으로 독립적이고 동일분산(NIID)되어야 한다. t-검정 통계량은 이 기법에 사용된다. 모델의 평균이 μ이고m 시스템의 평균이 μ이면s 모델과 시스템의 차이는 D = μm - μ이다s. 시험할 가설은 D가 허용 가능한 정확도 범위 내에 있는지 여부다. Let L = 정확도 하한, 정확도 U = 상한. 그러면

H0 L ≤ D ≤ U

H1 D < L 또는 D > U

시험 대상이다.

작동 특성(OC) 곡선은 귀무 가설이 참일 때 받아들여질 확률이다. OC 곡선은 유형 I과 II 오류의 확률을 특징으로 한다. 모델 작성자의 위험과 모델 사용자의 위험 곡선은 조직위원회 곡선에서 개발할 수 있다. 모델 작성자의 위험과 모델 사용자의 위험 사이의 고정된 표본 크기 트레이드오프와 곡선을 비교하는 것은 위험 곡선에서 쉽게 볼 수 있다.[7] 모델 작성자의 위험, 모델 사용자의 위험, 정확도 범위에 대한 상한과 하한을 모두 지정하면 필요한 샘플 크기를 계산할 수 있다.[7]

신뢰구간

신뢰 구간은 모형이 관심 변수에 대해 시스템에 "충분히 가까운"[1]지를 평가하는 데 사용할 수 있다. 알려진 모델 값인 μ와 시스템 값인 μ0 사이의 차이는 모델이 관심 변수와 관련하여 유효할 정도로 작은 값보다 작은지 여부를 점검한다. 이 값은 ε 기호로 표시된다. 시험을 수행하기 위해 모델의 숫자, n, 통계적으로 독립된 런을 수행하고 관심 Y의 시뮬레이션 출력 변수에 대한 평균 또는 기대값 E(Y) 또는 μ를 표준 편차 S로 산출한다. 신뢰수준을 100(1-α)으로 선택한다. [a,b] 간격은 다음과 같이 구성된다.

,

어디에

주어진 유의 수준과 n-1 자유도에 대한 t-값의 임계 값이다.

a-μ0 > ε, b-μ0 > ε이면 두 경우 모두 허용치보다 차이가 크기 때문에 모델을 교정할 필요가 있다.
a-μ0 < ε, b-μ0 < ε>이면 두 경우 모두 오차가 충분히 가까운 것처럼 모형이 허용된다.
a-μ0 < ε과 b-μ0 > ε 또는 그 반대인 경우, 그 간격을 줄이기 위해 모델의 추가 런이 필요하다.

그래픽 비교

통계적 가정을 충족할 수 없거나 시스템에 대한 데이터가 충분하지 않은 경우 모델 출력과 시스템 출력의 그래픽 비교를 사용하여 주관적인 결정을 내릴 수 있지만 다른 객관적 시험이 바람직하다.[3]

ASME 표준

컴퓨터 모델링 및 시뮬레이션의 검증과 검증을 포함하는 문서와 표준은 미국기계학회(ASME) 검증 및 검증(V&V) 위원회에서 개발한다. ASME V&V 10은 검증, 검증, 불확도 정량화 과정을 통해 계산용 고체역학 모델의 평가 및 신뢰도를 높이는 지침을 제공한다.[8] ASME V&V 10.1은 ASME V&V 10에 설명된 개념을 설명하는 자세한 예를 제공한다.[9] ASME V&V 20은 유체 역학 및 열 전달에 적용되는 계산 시뮬레이션의 검증에 대한 자세한 방법론을 제공한다.[10] ASME V&V 40은 컴퓨터 모델링에 대한 모델 신뢰도 요건 확립을 위한 프레임워크를 제공하며 의료기기 산업 특유의 예를 제시한다. [11]

참고 항목

참조

  1. ^ a b c d e f g h i j k l m n o p 뱅크스, 제리, 칼슨, 존 S; 넬슨, 배리 L.; 니콜, 데이비드 M. 이산 이벤트 시스템 시뮬레이션 5판, 상부 새들강, Pearson Education, Inc. 2010 ISBN0136062121
  2. ^ Schlesinger, S.; et al. (1979). "Terminology for model credibility". Simulation. 32 (3): 103–104. doi:10.1177/003754977903200304.
  3. ^ a b c d e f g h i j k l m 사런트, 로버트 G. "시뮬레이션 모델의 검증검증" 2011년 동계 시뮬레이션 컨퍼런스의 진행.
  4. ^ a b c d e f g h Carson, John, "모델 검증검증" 2002년 동계 시뮬레이션 컨퍼런스 진행
  5. ^ NAYLOR, T. H. 및 J. M. 핑거 [1967], "컴퓨터 시뮬레이션 모델의 검증", 관리 과학, 2, pp. B92– B101 (Banks, Jerry; Carson, John S.; Nelson, Barry L.; Nicol, David M에서 인용) 이산 이벤트 시스템 시뮬레이션 5판, 상부 새들강, 피어슨 교육, Inc. 2010 페이지 396. ISBN 0136062121
  6. ^ a b 1. 폰세카, P. 시뮬레이션 가설. SIMUL 2011; 2011; 페이지 114–119에서. https://www.researchgate.net/publication/262187532_Simulation_hypotheses_A_proposed_taxonomy_for_the_hypotheses_used_in_a_simulation_model
  7. ^ a b c 사건트, R. G. 2010. "시뮬레이션 및 확률적 모델의 검증을 위한 새로운 통계 절차" 기술 보고서 SYR-EECS-2010-06, 시러큐스 대학교 전기공학 및 컴퓨터 과학부, 뉴욕 시러큐스 대학교
  8. ^ "V&V 10 2006 컴퓨터 고형역학 검증검증 가이드" 기준. ASME. 2018년 9월 2일 회수.
  9. ^ "V&V 10.1 2012 계산 고형역학에서의 검증과 검증의 개념에 대한 삽화" 기준. ASME. 2018년 9월 2일 회수.
  10. ^ "V&V 20 2009년 전산유체역학 열전달 검증검증 표준" 기준. ASME. 2018년 9월 2일 회수.
  11. ^ "V&V 40 산업의 날" 검증검증 심포지엄. ASME. 2018년 9월 2일 회수.