슬라이드 1

Download Report

Transcript 슬라이드 1

Sogang University ICC Lab
Computer Simulation
시뮬레이션이란 무엇인가?
 시뮬레이션의 정의
 현실 세계의 실 시스템(real system)들의 효율적인 운영을 도모
하기 위하여 실 시스템의 동작을 이해하고 분석, 예측하는 과학
적 방법
 실 시스템의 모델을 구성하고(Modeling Process), 이들을 시뮬
레이터(컴퓨터)를 통해 실험하는데(Simulation Process)관련되
는 제반 활동을 의미[Zeigler]
 대상 시스템을 S/W 로 표현된 인공시스템(Artificial System)으
로 구현한 후 이를 컴퓨터실험에 의해 분석함으로써 목표 결과를
유출해 내는 과정
2
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 실 세계의 실 시스템에 대한 모델을 설계하여, 이러한 모델을 가
지고 그 시스템의 운영을 위한 여러 가지 운영 전략 등을 평가하
거나 시스템의 동작을 이해할 목적으로 실험을 수행하는 과정
[Shannon]
 Simulation Modeling 과정을 포함시켜 모델링과 시뮬레이션을
하나로 통합 개념
3
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 현실의 실시스템을 타당한 모델로 표현하고 이를 다시 컴퓨터 프로
그램으로 적절히 코딩 하여 컴퓨터를 통해 올바른 모델 데이터를 생
성해 내는 것에 관련되는 일련의 과정
 stochastic model 을 묘사 후 sampling experiments 하는 프로그램화된 모
형.
 실제 상황을 모형화하고 실험결과에 따라 의사결정을 하는 기법
모형: 대상이나 시스템을 단순하게 표현(추상화),
모형의 기능은 여러 대안들을 실행. 결과값을 바탕으로 예측,
비교.
4
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 시뮬레이션의 목적
 목적을 위한 현실 모델 구축
 예측 가능한 행위나 실험치를 만듬
 타당성(validation) 검증
 공학적인 개념의 구현
 시뮬레이션을 통한 비용 절약
5
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 시뮬레이션의 필요성
 실 세계 시스템의 복잡성으로 인하여 수학적 분석의
어려움이 있을 때
 시뮬레이션 이용(과학적 수단)
 현실 세계의 제약성으로 인하여 실제 실험이 불가능
하거나 소요비용이 클 때
 시뮬레이션 이용 (즉, 실험 가능하더라도 위험 부담이 있을
때)
6
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 시뮬레이션의 장단점
 장점
 분석적인 방법으로 해결하기 어려운 문제에 대해서도 적용가능
 다양한 설계 방법의 비교가능
 목적달성을 위한 (준)최적의 방법 탐색
 시스템 자체의 조정기능 향상
 실현 불가능한 경우(시간, 비용)의 결과 예측
 동적인 시스템 분석을 위한 효과적 접근 방법
 실 시스템의 시뮬레이션 모델 대치를 통한 의사 결정 근거 제시
7
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 단점
 시뮬레이션 모형 개발 시 비용과 시간의 낭비
 대규모 자료 수집
 많은 횟수의 실험 요구
 모형의 타당성 검사 요구
 실제 시스템의 특성에 따라 시뮬레이션 사용 여부를 결정
8
Sogang University ICC Lab.
시
뮬
레
이
션
방
법
론
9
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
 시뮬레이션 패키지 (SIMULATION PACKAGE)
 대개 제한된 모델링 및 시뮬레이션 영역에서의 강력한 지원을
제공하기 위하여 개발된 S/W
 시뮬레이션 실행 / 제어기능 및 데이터 분석 / 표시 기능 제공
 모델, 프로그램, 데이터에 대한 저장 / 검색 기능 제공 (최근)
 시뮬레이션에 관계된 활동들에 대한 강력한 지원 및 시뮬레이
션 활동들 간의 인터페이스를 지원하려는 추세
 기계와 사람 사이에 상호작용을 강화하는 추세
10
Sogang University ICC Lab.
시뮬레이션이란 무엇인가?
11
Sogang University ICC Lab.
시뮬레이션과 모델링
 통합된 시뮬레이션 : (시뮬레이션 + 모델링) 과정
 모델링과 시뮬레이션의 기본 구조(Zeigler 이론)
12
Sogang University ICC Lab.
시뮬레이션과 모델링
 구성요소
 실 시스템 : 데이터의 출처 ( 실 세계의 일부분) 자연
적 혹은 인공적
 모델 : 데이터를 생성하는 일련의 명령어 집합 (실 시
스템에 대한 인공 시스템)
 시뮬레이터 : 모델의 명령을 실행 할 수 있는 장치
(컴퓨터)
13
Sogang University ICC Lab.
시뮬레이션과 모델링
 상호관계
 모델링 : 실 시스템(real system)의 모델 구성
 시뮬레이션 : 시뮬레이터가 모델에 의해 의도되는 명
령들을 정확히 수행하고 있는가 하는 검증
(Verification)의 문제를 다룸
14
Sogang University ICC Lab.
시뮬레이션과 모델링
 실 시스템, 모델, 컴퓨터 처리간의 관계
15
Sogang University ICC Lab.
시뮬레이션과 모델링
 모델링 과정(Modeling Process)
16
Sogang University ICC Lab.
시뮬레이션과 모델링
 Verification : 의도한 모형이 프로그램으로 제대로 표현
되었는지 확인하는 과정
 debugging, 예측된 값과 비교 (편차관찰).
 모형의 구성요소, 시스템의 구조, 모수 등이 프로그램에
정확하게 반영여부 프로그램 error 의 확인
 Validation : 모형의 타당성 분석. -- Calibration
 시뮬레이션 모형과 현실 시스템의 비교
 주관적 방법 -- 현실 시스템을 잘 이해하는 전문가들의 의견 종합
 객관적 방법 -- 동일한 입력자료로 현실 시스템과 시뮬레이션 모형을 운영
한 결과를 비교 -- 통계적 방법
17
Sogang University ICC Lab.
시뮬레이션과 모델링
 타당성 확인의 3 단계

개괄적 타당성(Face validity)확인

모형에 사용되는 가정(Assumption)의 확인 통계적 입력자료의 검정

입력-출력의 변환과정 확인
관찰된 자료를 통계적으로 검정
튜링 검정법(Turing test) -- 비 통계적
현실 시스템의 결과와 시뮬레이션 모형 수행 결과를 임의로 섞어 그
시스템 전문가에 구별 요청
18
Sogang University ICC Lab.
시뮬레이션과 모델링
 모델 서술(Model Description)
 실 시스템의 행위를 정확히 반영할 수 있도록 타당하게 표현 (모델)
 시뮬레이션 프로그램 코딩
 시뮬레이션 수행
 비정형적 서술(Informal Description)

모델에 대한 직관과 이해를 도움

타인과 의사소통하기에 효과적인 방법

구성 :
모델의 구성요소 (Component),
구성 요소 별 서술 변수(Descriptive Variable),
구성요소들간의 상호작용(Component Interaction),
모델서술의 가정 (Assumptions)
19
Sogang University ICC Lab.
시뮬레이션과 모델링
 모델의 분류
 모델이란?
 실 시스템에서 관심 있는 어떤 행위와 비교되는 행위를 생성하는 실 세
계 현상의 압축된
표현
 모델의 분류

시간 기반 -- 이산 시간 모델
-- 연속 시간 모델

상태 기반 -- 연속 상태 모델
-- 이산 상태 모델
-- 혼합 상태 모델
20
Sogang University ICC Lab.
시뮬레이션과 모델링

확률 변수 유무
-- 결정적 모델
-- 확률적 모델

출력 범위
-- differential equation
-- discrete event model

환경 영향
-- autonomous model
-- non autonomous model

상호 작용 규칙
-- time varying model
-- time invariant model

전 단계의 영향
-- 기억 모델
-- 비 기억 모델
21
Sogang University ICC Lab.
시뮬레이션과 모델링
 시뮬레이션의 종류
 몬테카를로 시뮬레이션
확률변수를 생성하여 모델을 구성 -> 독립적이고 동일한 분포 (특정순서 아님
– 시간이 중요하지 않음)를 가지는 관찰자료 -> 반복
 다이나믹 시뮬레이션
시간의 흐름에 따라 시스템의 행위를 관찰하는 것
시간의 흐름에 따라 시스템의 특성이 변화하는 상태를 논리적 순서로 플로우
차트 작성. (미래의 상태를 시스템 구성요인들간의 상호작용으로 구현한 모
형에서 표본추출)

continuous (미분방정식) : - 강의 수량조절 금융기관의 현금흐름 etc..

discrete : 이산적인 시간시점에서만 변화 가능 – 생산재고, 대기행렬, etc...
로 모델링가능..
22
Sogang University ICC Lab.
시뮬레이션과 모델링
 Discrete event simulation :
이산적 (시간상 구분 가능한 시점에서 시스템변수 변화)이고 다이나믹한
모델 : 시간이 중요한 독립변수, 상태변수는 종속적.
 Queuing theory, Markov chain
 큐잉 이론:
23
Sogang University ICC Lab.
시뮬레이션과 모델링
 마르코프체인: 다음의 상태가 현재의 상태에만 영향을 받는
다고 가정, 과거의 상태는 어찌되었든 미래=현재의 상태 X
변환행렬
n3  h3 n3  h3 n3  h3 n3  h3
n 2  h 2 n 2  h 2 n 2  h 2 n 2  h 2
n1  h1 n1  h1 n1  h1 n1  h1 n1  h1
0
1
2
3
4

C
24
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
 최근 동향
 응용 분야의 확대
 컴퓨터 기반 시스템의 전반에 걸친 활용 범의 확대
 시뮬레이션 S/W tools 의 포괄적이고 통합적인 발전
추세
 시뮬레이션 분산 처리에 관한 활발한 연구의 진행
 시뮬레이션과 인공지능 분야와의 상호 보안 추세
25
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
 시뮬레이션의 발전 단계
26
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
 1 세대

모든 시뮬레이션들이 FORTRAN 과 같은 범용 언어로 쓰여짐 (현재도
많이 이용)
 2 세대

시뮬레이션 연구 활발

처음으로 시뮬레이션 전용 언어 등장 (GPSS, SIMULA, GASP,
SIMSCRIPT, CSL)

War Game 에 컴퓨터 이용 시작

객체 지향 시뮬레이션 (Object-Oriented Simulation)의 시작
27
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
 3 세대

2 세대 시뮬레이션 언어의 New Version 등장 : GPSSⅡ.Ⅲ.360.Ⅴ,
SIMSCRIPTⅡ.Ⅱ-plus, SIMULA 67, Extended CSL(ECSL), GASP
Ⅱ
 4 세대

SLAM, Q-GERT 과 같은 새로운 언어 등장

3 세대 언어의 확장 :
GASPⅣ (동일 모델 내의 연속 및 이산 사건을 다룰 수 있음)
SIMSCRIPT Ⅱ.5(프로세스 개념과 연속 사건을 다룰 수 있음)
GPSS/H(초기 버전의 확장 및 사용자 Interaction 의 정도를 높임)
28
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향

분산 시뮬레이션 연구 시작 (분산 처리기 출현, 병행 알고리즘 개발 등)

정성 시뮬레이션 (Qualitative Simulation) 연구 시작
70 년대 후반 (4 세대 후반) :보다 용이한 모델 개발과 실행을 위한 연구로 관
심 이동

프로그래밍의 용이함을 돕는 Potential methods [Heidorn,
Mathewson]

모델링 과정에 대한 보다 형식론적 접근 [Zeigler, Kleine, Nance]
29
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
Oren and Zeigler : 현재의 언어의 취약점을 지적하고 다음과 같은 2 가지 개
념
에 기초한 새로운 언어 개발을 제안
 시뮬레이션 언어는 모델링, 실험 설계, 출력 분석 등 논리적으로 뚜렷한 구
분단계를 기능적으로 개별적인 활동으로 분리하여야 한다.
 시뮬레이션 환경은 DB 관리, graphics, 프로그램 검증을 위해 현 컴퓨터
능력을 이용할 수 있도록 조성되어야 한다.
30
Sogang University ICC Lab.
시뮬레이션 분야의 기술 동향
 5 세대

시뮬레이션 소프트웨어 개발에 있어 중요한 전이 기간

단순히 강력한 언어보다는 사용의 용이함과 통합된 시뮬레이션 환경을
제공하는 것을 강조
<참조> 통합된 시뮬레이션 환경 : 다음의 기능들을 위한 소프트웨어 tool
들의 집합

모델의 설계, 타당성 검사

모델의 구현 (코딩 및 검증)

입력 데이터의 준비

출력 데이터의 분석

시뮬레이션 수행
31
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 분산 시뮬레이션의 배경
 70 년대:
 분산처리기의 출현, 병행 알고리즘의 개발 , Micro Computer
의 성능 향상 등으로 시뮬레이션의 분산 처리 연구 가능
 분산 시뮬레이션이란?
 여러 개의 프로세서들로 구성된 네트워크 상에서 하나의 시뮬
레이션 모델을 분산시켜서 실행하고자 하는 것
 기존의 시뮬레이션 방법들이 하나의 프로세서 위에서 순차적으
로 처리하는 방식에 의존하는 데에서 기인하는 성능 향상의 한
계 극복
32
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 분산 구조를 갖는 실 시스템의 시뮬레이션 시에 모델의 구조
적 타당성 확보가 용이
 신속한 처리가 요구되는 실시간 시뮬레이션을 위해 필수적
 저렴한 가격의 Micro Computer 들을 연결한 네트워크 상에
서 시뮬레이션 모델을 분산 처리함으로써 비용 절감과 병렬
처리에 의한 시간절약의 효과
33
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 분산 시뮬레이션의 장점
 성능 향상
 병렬 성 & 비용 절감 ==> 시간 감소
 모델의 구조적 타당성(structural validation) 문제
해결
34
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 분산 시뮬레이션의 문제점
 분산 처리를 효율적으로 지원하는 분산 모델의 구성
 병렬 알고리즘의 개발
 각 프로세스들 간의 동기화나 상호 통신에 따른 부하
문제
35
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 교착 상태의 방지
 시뮬레이터의 구성에 따른 문제
 분산 처리를 위한 병렬 언어 (Parallel Language)의
개발
 병렬 언어를 토대로 하는 분산 시뮬레이션 언어의 개
발
36
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 정성 시뮬레이션 (qualitative simulation)
 1970 년대 인공지능 분야의 학자들에 의해 시작
 정성 모델 (Qualitative Model)의 개념에 포함됨
 인간 사고 모형 (mental Model)에 대한 인지 과학
(cognitive Science) 연구와 밀접한 관련
 서로 다른 방법론들이 대두
아직 분명한 조류가 형성되지 않고 있음
 원칙론적 방법론에 연구가 치중
복잡한 시스템들에 실용적으로 적용하기에는 미흡한 단계
37
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 정성 시뮬레이션의 특징
 시스템의 상태와 행동을 숫자대신 기호적(symbolic)으로 처리
 quantity 의 개념: 서로 간의 상대적 크기로만 표현될 뿐 정확한
값이 얼마인지는 필요로 하지 않음
 quantity space : 변수들이 상대적 크기에 의해 정성적으로 표
시되는 개념의 공간
38
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 변수들의 값이나 움직임 수치로 정의되지 않고, quantity space
에서 상대적으로 정의됨
 시간도 수치로 표시되지 않음
시간 : 여러 사건들이 일어나는 순서 (Qualitative Simulation)
 정성 시뮬레이션 모델은 보통 분해가능(decomposible)하다.
39
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 정성 시뮬레이션의 장점
 사람의 시스템 동작에 대한 예측 행위와 유사
 정성적 사고 (Qualitative Reasoning) :
 최소한의 정보를 가지고 유용한 결론에 대한 도달 가능
 오직 중요한 시스템의 형태만을 포착할 수 있다.
 Robustness :
 일반 시뮬레이션은 오직 모든 부품이 미리 정해진 대로 작동할 때만 이
를 시뮬레이션 가능

40
자동 고장 진단 등의 문제 활용에 유용
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 정성 시뮬레이션의 방법
 대상 시스템의 물리적 구조를 분석하여 각 부분의 모형을
만들고 그 행동 양식을 식으로 표현
 각 부위가 어떻게 연결되어 시스템을 형성하는가를 살펴
그 식들을 변수 등으로 연결하여 시스템의 행동 식을 구성
 시발점에서의 시스템의 상태를 정의하고 그 상태로부터
모형에 의해 얻어지는 모든 가능한 다음 상태를 도출
41
Sogang University ICC Lab.
시뮬레이션과 신기술 응용
 이 도출 과정 중에서나 또는 모든 도출이 완료된 후
에 모종의 여과 과정을 통해 스스로 모순되거나 다른
상태에 비해 시점이 뒤로 향하는 상태를 제거하여 진
실로 가능한 상태들의 집합을 작성
 그래도 만일 둘 이상의 상태가 남게 되면 다음의 시
스템 상태는 확실히 예측할 수 있게 되는데, 이런 모호
성은 바람직하지는 않으나 정성 시뮬레이션의 본래적
속성으로 생각되고 있다.
42
Sogang University ICC Lab.
시뮬레이션의 활용
 문제 해결 분야
 대기 행렬(queueing) 문제나 재고 문제
 네트워크 문제
 생산 문제
 기계 설비의 보수 및 교체를 위한 분석 문제
 금융 및 재정 문제
 불확실적 요소를 갖는 시장 예측 문제
 교통 체계 등의 운영 문제
43
Sogang University ICC Lab.