25.12.2014 Views

Y - Systems Modeling Simulation Lab. KAIST

Y - Systems Modeling Simulation Lab. KAIST

Y - Systems Modeling Simulation Lab. KAIST

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

M&S 목적(대 분류) : 기능 vs 성능 모델링<br />

1 of 17<br />

M&S<br />

목적 설정<br />

시스템 기능 검증<br />

What to do<br />

시스템 성능/효과도<br />

측정<br />

검증 범위 설정<br />

측정 지수 정의<br />

검증 범위를 반영하는<br />

모델 개발<br />

How<br />

to<br />

do<br />

측정 지수를 반영하는<br />

모델 개발<br />

모의 실험 및 검증<br />

모의 실험 및 결과 분석<br />

국방 M&S<br />

관점<br />

훈련<br />

전투실험, 획득<br />

분석<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


동작/기능 검증 모델 vs 성능 측정 모델<br />

동작/기능 검증 모델<br />

성능(지연시간) 측정 모델<br />

2 of 17<br />

탐지 모델<br />

S(.)<br />

탐지알고리즘<br />

탐지 모델<br />

T1<br />

S(.) 소요시간<br />

C2 모델<br />

C2(.)<br />

C2 알고리즘<br />

C2 모델<br />

T2<br />

C2(.) 소요시간<br />

모델 내부에<br />

탐지알고리즘 및<br />

C2 알고리즘<br />

구현 및 실행<br />

타격체계<br />

타격체계<br />

동작 검증 시간 측정<br />

탐지 + C2 가<br />

탐지 + C2 에<br />

제되로 동작 되는지<br />

소요되는 시간<br />

X (타겟트)<br />

실제 시스템<br />

(탐지 + C2)<br />

Y (무기활당)<br />

동작 + 시간<br />

모델 내부에<br />

탐지 및 C2<br />

알고리즘<br />

구현 없이<br />

탐지 및 C2 에 소요<br />

되는 시간만<br />

반영<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


M&S 공학 전 주기 및 적용 기술<br />

3 of 17<br />

M&S 전체 공학 전 과정 주기 관련 학술 분야 적용 이론/기술 참여 전문가<br />

시뮬레이션<br />

목적 설정<br />

모델 요구 사항<br />

분석 및 명세<br />

요구 공학<br />

● 요구사항 분석법<br />

● 요구사항 명세기법<br />

● 모의논리 명세기법<br />

도메인 엔지니어<br />

+<br />

M&S 엔지니어<br />

목적에 부합된<br />

테이터 수집<br />

모델 설계<br />

모델링 이론<br />

● 수학적(연속, 이산변수) 모델링 공식<br />

● 알고리즘적 모델링 기법<br />

M&S 엔지니어<br />

N<br />

시뮬레이터 구현<br />

검증 <br />

Y<br />

시뮬레이터<br />

구현<br />

● 순차/분산/병렬 시뮬레이션 알고리즘<br />

● 프로그램 설계 및 구현<br />

● 소프트웨어 공학 프로세서<br />

● 분산 시스템 성능 최적화<br />

● 프로토콜 변환 및 구현<br />

M&S 엔지니어<br />

+<br />

플랫폼 엔지니어<br />

N<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

결과 분석<br />

가설 검증<br />

성능 공학<br />

● 통계적 가설 검증<br />

● 민감도 해석<br />

● 파라미터 추정<br />

● 섭동 해석<br />

● 통계적 성능 비교<br />

도메인 엔니지어<br />

+<br />

M&S 엔지니어<br />

+<br />

OR 엔지니어<br />

공인기관 인증<br />

* Ref: JD-24 (2007)<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


M&S 3 요소<br />

모의 대상 시스템<br />

시뮬레이터<br />

4 of 17<br />

( 상륙 작전) (상륙전 시뮬레이터)<br />

모델 설계<br />

모 델<br />

모델 구현<br />

교전<br />

피해<br />

평가<br />

탐지<br />

M<br />

기동<br />

W<br />

( 상륙전 모 델 )<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


M&S 3 요소들 사이의 관계<br />

5 of 17<br />

모의 대상<br />

시스템<br />

Validation + Verification<br />

(V&V)<br />

시뮬레이터<br />

문제 1: 확인 (Validation)<br />

문제 2: 검증(Verification)<br />

모 델<br />

실제 시스템 동작과<br />

모델 명세서가 일치하는가<br />

모델 명세서와<br />

구현 결과가 일치하는가<br />

X<br />

실제<br />

시스템<br />

시뮬레이터<br />

Y R.S<br />

Y M<br />

S<br />

<br />

모델 명세서<br />

프로그래밍<br />

모델 수행<br />

프로그램<br />

일치<br />

수행결과<br />

목적에 맞는 데이터에 대해서만 확인<br />

실제 데이터 수집(무기 시험 등) 비용 vs. 모델 신뢰도<br />

자동화된 검증 도구 필요<br />

시뮬레이터 개발 비용 vs. 검증 시간<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


목적지향적 M&S 예시: 내무반에서 사과 먹는 시스템<br />

6 of 17<br />

목적 1: 먹고 남은<br />

사과 수<br />

목적 2: 사과 먹는데<br />

걸린 시간<br />

목적 3: 장병 1 인당 1년에<br />

먹은 사과의 총 수<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


목적 1: 먹고 남은 사과 수 모델 1<br />

7 of 17<br />

모 델 변수<br />

시뮬레이션<br />

목적 설정<br />

사과 1 상자<br />

모 델 논 리<br />

먹고 남은 사과 수<br />

모델 요구 사항<br />

분석 및 명세<br />

모델 변수 = 병사 수 (v)<br />

목적에 부합된<br />

테이터 수집<br />

모델설계<br />

월 - 토요일: 25 명; 일요일: 15 명<br />

시뮬레이터 구현<br />

• 모델<br />

입력: x (들어오는 사과 수)<br />

출력 : y (먹고 남은 사과 수)<br />

변 수: v (내무반에 있는 병사 수)<br />

(모의) 논리 : x = 2 * v + y<br />

N<br />

N<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

(들어오는 수 = 먹는 수 + 먹고 남은 수)<br />

결과 분석<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


시뮬레이터 1 구현<br />

8 of 17<br />

사과 1 상자: x<br />

병사 수: v<br />

모 델 논 리<br />

x = 2*v + y<br />

y: 먹고 남은 사과 수<br />

시뮬레이션<br />

목적 설정<br />

모델 요구 사항<br />

분석 및 명세<br />

시뮬레이션 알고리즘<br />

y = x - 2*v<br />

목적에 부합된<br />

테이터 수집<br />

모델 설계<br />

• 시뮬레이션(모델 실행) 알고리즘<br />

한 개의 모델에 여러 개의 실행 알고리즘 존재<br />

A1: 알고리즘 1 (이항 법칙) y = x – 2*v<br />

A2: 알고리즘 2 (등식의 덧셈법칙) x – 2* v = 2*v + y – 2*v<br />

x – 2*v = y<br />

N<br />

N<br />

시뮬레이터 구현<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

• 시뮬레이터 구현 : A1 알고리즘 채택<br />

구현: C/C++ 프로그램 언어를 사용 하여 함수로 구현<br />

int AppleLeft(int x, int v) {return (x – 2*v)}<br />

결과 분석<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


시뮬레이터 1 검증(Verification)<br />

9 of 17<br />

병사 수: v<br />

시뮬레이션<br />

목적 설정<br />

사과 수: x<br />

y = x – 2*v<br />

y: 남은 사과 수<br />

모델 요구 사항<br />

분석 및 명세<br />

검증표<br />

사과 수<br />

x<br />

병사 수<br />

v<br />

남은 사과수<br />

y<br />

(계산기)<br />

남은 사과 수<br />

y<br />

(시뮬레이터)<br />

검증 통과<br />

(Ok)<br />

여부<br />

60 15 30 30 OK<br />

70 15 40 40 OK<br />

80 15 50 50 OK<br />

60 25 10 10 OK<br />

목적에 부합된<br />

테이터 수집<br />

N<br />

N<br />

시뮬레이터 구현<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

모델 설계<br />

70 25 20 20 OK<br />

결과 분석<br />

80 25 30 30 OK<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


모델 1 실증(Validation)<br />

10 of 17<br />

병사 수: v<br />

일요일<br />

사과 60 개<br />

시뮬레이터<br />

y = x – 2*v = 60 – 2 * 15<br />

y = 30<br />

시뮬레이션<br />

목적 설정<br />

모델 요구 사항<br />

분석 및 명세<br />

v(일요일) = 15 명<br />

<br />

<br />

목적에 부합된<br />

테이터 수집<br />

모델 설계<br />

실제 내무반 남은 사과 수 = 26<br />

시뮬레이터 구현<br />

• 시뮬레이터와 실제 내무반 의 사과수가 일치하지 않는 이유<br />

일요일 병사 수는 확정 변수 값이 아니고 확률변수 값이다.<br />

실제 내무반에서 일년 동안 일요일 병사 수를 측정해 보니<br />

(평균값 = 15 , 분산 = 3 2 ) 인 정규 분포 함수 였다.<br />

• 실증: 병사 수를 확률 변수로 입력하여 여러 번 (수백 회 정도)<br />

시뮬레이션 하여 나온 결과를 통계 처리한 후 비교 한다<br />

N<br />

N<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

결과 분석<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


목적 2: 사과 먹는데 걸리는 시간 모델2<br />

11 of 17<br />

모 델 변수 T<br />

시뮬레이션<br />

목적 설정<br />

사과 먹기<br />

시작 시간<br />

모 델 논 리<br />

사과 먹기<br />

종료 시간<br />

모델 요구 사항<br />

분석 및 명세<br />

T: 1.5 – 2.5 사이의 균등 분포 함수<br />

(평균값 = 2)<br />

목적에 부합된<br />

테이터 수집<br />

모델 설계<br />

입력: x (시작 시간)<br />

시뮬레이터 구현<br />

• 모델<br />

출력 : y (종료 시간)<br />

변 수: T (사과 1 개 먹는데 걸리는 시간)<br />

(모의) 논리 : 사과 먹는 프로세스를 나타낸 그래프 모델<br />

N<br />

N<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

T<br />

T<br />

결과 분석<br />

사과 먹기<br />

1 개 먹기<br />

완료<br />

2 개먹기<br />

완료<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


모델2 의 실증(Validation)<br />

12 of 17<br />

일요일 11:00<br />

사과 먹기시작<br />

모 델 변수<br />

사과<br />

먹기<br />

T<br />

1 개<br />

먹기<br />

완료<br />

T<br />

2 개<br />

먹기<br />

완료<br />

종료 시간<br />

= 11 시 4 분<br />

시뮬레이션<br />

목적 설정<br />

모델 요구 사항<br />

분석 및 명세<br />

모델 변수: T = [1.5 , 2.5]<br />

<br />

<br />

목적에 부합된<br />

테이터 수집<br />

모델 설계<br />

시뮬레이터 구현<br />

실제 내무반<br />

종료 시간<br />

= 11 시 5 분<br />

N<br />

검증 <br />

Y<br />

N<br />

실증<br />

Y<br />

• 시뮬레이션 (20 회 실시한 평균 값) 과 실제 값이 불 일치<br />

운용 및 데이터 수집<br />

조사 1: T = [1.5, 2.5] 가 정확한 지를 통계적 자료로 확인<br />

정확 함<br />

조사 2: 사과 먹는 프로세스가 3 단계 인지를 확인<br />

신 세대 병사는 먹기 전에 준비 단계와 1 개 먹고 쉬는 단계가 있었음<br />

결과 분석<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


모델2 조정(Calibration)<br />

13 of 17<br />

사과 먹기<br />

시작 시간<br />

모 델 변수<br />

모 델 논 리<br />

사과 먹기<br />

종료 시간<br />

시뮬레이션<br />

목적 설정<br />

모델 요구 사항<br />

분석 및 명세<br />

모델 변수 (확률변수) : T1, T2, T3<br />

입력: x (시작 시간)<br />

목적에 부합된<br />

테이터 수집<br />

모델설계<br />

출력 : y (종료 시간)<br />

시뮬레이터 구현<br />

• 모델<br />

변 수: T1(준비 시간) ; T2(1 개 먹는 시간) ; T3 (쉬는 시간)<br />

(모의) 논리 : 사과 먹는 프로세스를 나타낸 그래프 모델<br />

T1<br />

T2<br />

T3<br />

T2<br />

N<br />

N<br />

검증 <br />

Y<br />

실증<br />

Y<br />

운용 및 데이터 수집<br />

사과 먹기<br />

준비<br />

사과 먹기<br />

1 개 먹기<br />

완료<br />

쉬는 기간<br />

끝<br />

2 개 먹기<br />

완료<br />

결과 분석<br />

공인기관 인증<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


이행적 (Transitive) 모델 Validation(실증) 방법<br />

14 of 17<br />

실제 전쟁<br />

데이터 제공<br />

부대 훈련<br />

데이터 제공<br />

실증<br />

과학화 훈련장<br />

실증<br />

데이터 제공<br />

실증 절차: M&S 목적에 맞는 데이터에 대하여 시행<br />

실제 전쟁 부대 훈련<br />

부대 훈련 과학화 훈련장<br />

과학화 훈련장 워 게임 시뮬레이션<br />

실제 전쟁 워 게임 시뮬레이션<br />

실증<br />

이동<br />

피해<br />

평가<br />

탐지<br />

교전<br />

워 게임 시뮬레이션<br />

전쟁/훈련을 통한 데이터 수집 및 분석 모델 신뢰도 향상 군사 OR 의 기원<br />

우리군: 전쟁, 훈련, 과학화 훈련장, 워 게임을 통한 데이터 수집 방법 및 절차 제도화 필요<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


실험 틀(Experimental Frame) 개념<br />

15 of 17<br />

실험 장치<br />

실험대상 회로<br />

IC<br />

오실로스코프<br />

전압계<br />

신호발생기<br />

실험 대상 모델<br />

모델 1<br />

모델 2<br />

모델 3<br />

실험 틀 모델<br />

데이타<br />

발생기<br />

입력<br />

오류 식별기<br />

시뮬레이션 제어<br />

데이터<br />

수집기<br />

통계처리<br />

시뮬레이션 실험의 효율성<br />

(i) 한 개의 실험 틀에서 여러 개의<br />

다른 시나리오 수행<br />

(ii) 한 개의 시나리오에<br />

여러 가지 실험 틀 사용<br />

모델 수정 / 유지 보수의 효율성<br />

(i) 시스템 모델의 수정 / 유지 보수<br />

(ii) 실험 틀 모델의 수정 / 유지 보수<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


실험 틀 예: 전구급 국방 시스템<br />

16 of 17<br />

전구급 국방 시스템<br />

이벤트(게임 명령)<br />

기동<br />

탐지 교전<br />

모델링<br />

이벤트(생존자 보고)<br />

5만명 4만명<br />

시간<br />

전구급 분석 모델<br />

시간<br />

실험 틀 모델<br />

입력 발생기<br />

오류 식별기<br />

출력 수집기<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim


민수 M&S 와 국방 M&S 비교<br />

17 of 17<br />

민수 M&S<br />

국방 M&S<br />

대상 시스템 민수 시스템 국방 시스템<br />

시스템 예<br />

전기, 전자, 기계, 항공, 생산,<br />

경제, 경영 등<br />

(구성 요소 예: 사과, 배)<br />

무기 체계, 전투 체계, 전술학,<br />

인사, 군수 등<br />

(구성 요소 예: 군화, 소총)<br />

공통점<br />

● 수학적 모델링 틀 (모델링 공식) 은 동일 함<br />

■ 연속 시간 시스템 미분 방정식 (수식으로 표현)<br />

■ 이산사건 시스템 DEVS 방정식 (객체 형식으로 표현)<br />

차이점<br />

● 공학 시스템 (전기. 기계 등)<br />

개발에 주로 사용<br />

● 공학급 수준 모델 사용<br />

미분 방정식 모델<br />

● 도메인 지식 공학 교과서<br />

● 공학급, 교전급, 임무급, 전구급 등<br />

● 공학급 미분 방정식 모델<br />

● 교전급 이상 DEVS 방정식 모델<br />

● 도메인 지식 군사과학 교과서<br />

IE801 – Lecture 2<br />

© 2011 Tag Gon Kim

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!