데이터 분석 준전문가/제4과목

제6장 시뮬레이션 및 최적화

표독's 2016. 2. 19. 13:55

제6장 시뮬레이션 및 최적화


학습목표

시뮬레이션 과정에 대한 이해

최적화 과정에 대한 이해

시뮬레이션 모델에 대한 이해

시뮬레이션 적용 방법에 대한 이해

최적화 단계에 대한 이해


제1절 빅데이터와 시뮬레이션


데이터 마이닝 :

대용량 데이터베이스에서 숨어 있는 예측 가능한 정보를 자동으로 추출하는 데이터 분석 방법


정의하는 세 가지 핵심 용어

자동화(Automated), 숨겨진(Hidden), 예측가능(Predictive)이다.


제2절 시뮬레이션


1. 시뮬레이션이란?

실제 상황을 수학적으로 모델화하고, 그 모델을 컴퓨터에 프로그램으로 저장한 후에 일어날 수 있는 가능한 모든 상황을 입력함으로써 각각의 경우에 어떤 결과가 도출되는지 예측하는 것이다.


시뮬레이터 : 사용자들이 모델에 대한 프로그램을 편리하게 사용하고 그 결과를 시각적으로 볼 수 있도록 만든 컴퓨터 기능을 말한다.


초기 비용이 많이 들지만, 일단 프로그램화 하면 결과적으로 비용을 절약 할 수 있다. 


특히 짧은 시간에 미래를 예측해 보는 데 효과적이다.


가. 시뮬레이션의 정의

일반적으로 주어진 조건 하에서의 실제상황 속에서 모의실험을 통해 정보를 얻는 술리적 실험기법


1) 시뮬레이션 모델은 일반적으로 다음과 같은 세 가지로 구분된다.

■정적 시뮬레이션 모델과 동적 시뮤레이션 모델

   정적 시뮬레이션 모델 : 어떤 정해진 시간 안에서 시스템이나 시간이 필요 없는 시스템

                                 ex) 몬테카를로 시뮬레이션

   동적 시뮬레이션 모델 : 시간에 따른 현상 파악하기 위한 모델

                                 ex) 주택경기의 흐름


■ 결정론적 모델

    모델이 랜덤변수와 같은 확률 변수를 포함하고 있지 않을 경우.

     ex) 비행물체의 구조에 미치는 공기의 영향


 ■ 연속형 모델과 이산형 모델

     연속형 모델 : 상태변수가 연속형일 때

                       ex) 비행기가 공중을 날아가고 있을 때 속도나 위치

     이산형 모델 : 상태변수가 시간으로 분리된 점에서 순간적으로 할 때

                       ex) 고객의 수


나. 시뮬레이터의 장점

 1) 복잡한 현실문제는 추리적인 방법으로 해결책을 구하지 못 할 수 있다. 이 경우 시뮬레이션만이 유일한 해결책이다.

 2) 시뮬레이션 모형이 만들어지면 여러 가지 대안을 쉽게 비교할 수 있다.

 3) 시뮬레이션 모형을 현실문제와 근접하게 만들 수 있다. 따라서 이해와 사용이 편리하며, 문제 해결방법에 대해 의사결정자와 대화가 용이하다.

 4) 많은 시간이 지난 후에 결과를 알 수 있는 문제를 시뮬레이션으로 단시간에 결과 예측이 가능하다. (시간 단ㄴ축효과), 반대로 시간을 확장시켜 시뮬레이션 할 수도 있다.(시간확장 효과)


다. 시뮬레이션의 단점

1) 시뮬레이션 모형의 개발에 많은 경험과 노력이 필요하다.

2) 확률적 시스템을 시뮬레이션 할 때 관찰한 입력 자료를 사용해 시뮬레이션해 얻는 결과는 하나의 표본 값에 해당한다. 따라서 여러 개의 표본값을 구해 통계처리를 해야 하는 단점이 있고 시간도 많이 소요된다.


라. 시뮬레이션 과정


■1단계 : 문제 정의와 모델의 필요조건 규명


문제를 명확하게 구체화해 정확하게 정의하는 것이다. 


■2단계 : 기대와 손실에 관한 평가

시뮬레이션 수행에 따른 손익에 관한 타당성 평가를 해야 한다.


■3단계 : 시뮬레이션 모델 개발의 방법 결정

모델의 개발에는 플로차트(flow chart)와 같이 모델 과정의 각 단계를 적절한 기호로 표시하는 방법이 많이 쓰인다.

이 단계에서 특히 중요한 점은 모델 개발에 필요한 데이터 수집이다.


모델 개발에서의 기능별 상향식 개발방식과 총괄적 하향식 개발방식

기능별 상향식 개발방식 : 기능별로 분석 정립된 소규모 단위의 모델들을 전체 논리적 흐름에 맞춰 연결

총괄정 하향식 개발방식 : 소규모의 하위모델들을 분리해 각각 분석함으로써 복잡한 총체적인 모델을 일괄적으로 분석하는 것보다 훨씬 용이하다.


  **플로차트 방식 : 시뮬레이션의 논리적 과정을 도표로 단순화하고 시작적으로 표현할 수 있는 장점이

                         있다.


■4단계 : 모델의 프로그램화

시뮬레이션은 컴퓨터에서 수행하므로 개발한 시뮬레이션 모델을 컴퓨터 프로그램으로 전환해야 한다. 이때 시뮬레이션 전문 프로그램 언어를 사용하는 것이 바람직하다.


■5단계 : 모델의 적합성 평가

실험적 실행결과와 실제 자료 간에 차이가 심하면 모델 개발 전과정에 대한 재검토가 필요하다.


■6단계 : 시뮬레이션 모델 실행

시뮬레이션 모델 프로그램 작성과 적합성 조사가 끝난 후에 수행 된다.


시뮬레이션 실행의 두 가지 구분

모델이 확정적일 때, 매개변수가 이미 상수로 주어져 있으므로 각각의 가상적인 상태와 조건에 대한 질문 마다 단 한차례의 실행으로 가능하다.

모델이 확률적일 때, 다양한 매개 변수가 파생되기 때문에 필요한 결과가 도출될 때까지 여러 번 실행해야 한다.


■7단계 : 시뮬레이션 실행결과 분석

실행된 시뮬레이션의 타당성 여부는 그 결과의 분석이 얼마나 현실적으로 활용될 수 있느냐에 따라 결정된다. 


현실적 활용성이 높을 수록 조정의 필요성이 감소할 뿐만 아니라 상대적으로 위험률도 낮아진다.

시뮬레이션은 현실적 타당성과 활용성이 높은 결과 도출을 위해 상황에 적합하고 유연성 있게 수행되는 것이 바람직하다. 


실제 물리적인 변화 없이 여러 실험을 해 미래를 예측할 수 있고, 다양한 난수를 적용해가면서 실험할 수 있다. 






'데이터 분석 준전문가 > 제4과목' 카테고리의 다른 글

제5장 비정형 데이터 마이닝  (0) 2016.02.19
제4장 정형 데이터 마이닝  (0) 2016.02.18
제3장 데이터 마트  (0) 2016.02.18
제2장 통계분석  (0) 2016.02.17
제1장 데이터 분석 개요  (0) 2016.02.16