https://youtu.be/iAj3XalgWG4
simpy_기초 1.pptx
소개
- process 기반 discrete-event 시뮬레이션 프레임워크
- SimPy는 프로세스, 이벤트 및 리소스를 정의하고 관리할 수 있는 시뮬레이션 환경을 제공
- SimPy의 사용으로 여러 프로세스 간에 공유할 수 있는 시스템, 서버 또는 시설과 같은 리소스를 모델링
- SimPy는 대기 라인이나 버퍼를 모델링하고 관리할 수 있는 Queue 클래스를 제공
- SimPy에는 시뮬레이션 중에 생성된 데이터를 수집하고 분석하기 위한 통계 기능과 도구가 포함
생성자와 timeout
- 생성자(Generator)
- yield키워드에 의해 생성
- 저장된 값을 반환하는 return과 달리 즉석에서 값을 생성
- 하나의 값을 출력하는 상황보다 여러 값을 즉각적으로 생성하는 상황에 사용
- timeout
- SimPy의 시뮬레이션에서 이벤트 생성을 예약하는 함수
- yield문과 같이 사용되며, 주기적으로 생성되는 이벤트는 while문을 사용
- yield문 아래 작성된 코드는 함수의 역할을 하며 이벤트를 구성함
Environment
- Environment
- SimPy 시뮬레이션의 환경을 만들어 주는 명령어
- 일종의 구조체
- timeout을 통한 시간관리
- process를 통한 이벤트 정의
- etc
- simpy를 사용하여 시간을 tick에 맞춰 출력
- tick: 시뮬레이션 상의 시간 0.1, 0.5, 1의 주기를 가짐
- clock 함수에서 timeout을 활용하여 특정 시점에 이벤트를 예약
- yield 아래의 이벤트 실행과 동시 결과를 반환