Python으로 배우는 이산 사건 시뮬레이션
Diogo Costa (PhD, MSc)
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
참고: '이벤트'와 '프로세스'는 혼용됩니다.
이벤트(또는 프로세스) 비결정론이란?
비결정론적 프로세스가 중요한 이유는?
자연 현상
인간 주도 또는 인간 유발 프로세스
비결정론적 프로세스
통계
random 패키지 활용
예시: random.randint(start, end)
import random
# Non-deterministic processes
process_1 = [5, 15]
while time < simulation_time:
# Update simulation time: process_1
time += random.randint(
process_1[0],
process_1[1])
비결정론적 프로세스를 처리하는 별도의 메서드 없음
이벤트 지속 시간 변동성은 비SimPy 모델과 동일하게 계산
적절한 통계 값을 .timeout()에 전달
DNT_CURLY_TAG_3
import random
# Non-deterministic processes
process_1 = [5, 15]
while True:
# Update simulation time: process_1
yield env.timeout(random.randint(
process_1[0],
process_1[1]))
Python으로 배우는 이산 사건 시뮬레이션