이 기사에서는 Python의 이산 이벤트 시뮬레이션 애니메이션 예제를 공유합니다. 보다 구체적으로 Python에서 SimPy 및 DesViz를 사용하여 광산을 위한 트럭 운송 시뮬레이션 애니메이션입니다. 이 예제와 DesViz 모듈은 Paul Corry 교수 와 그의 팀이 개발했으며 이 게시물에서 그의 예제를 다시 공유하고 있습니다. DesViz SimPy 모델 개발자는 시뮬레이션 모델을 애니메이션으로 만들 수 있습니다 .
아래는 채굴 작업을 위한 SimPy 트럭 운송 시뮬레이션 모델 의 애니메이션입니다 .
예제는 문서화되어 있으며 Paul Corry의 GitHub 저장소( https://github.com/corryp/DesViz )에서 사용할 수 있습니다.
DesViz를 Python의 시뮬레이션 애니메이션에 어떻게 사용할 수 있나요?
DesViz 문서에서 직접 인용:
DesViz는 DES (이산 이벤트 시뮬레이션) 모델을 위한 비동기 애니메이션을 촉진하는 Python 클래스 및 함수 모음입니다 . 이는 기본 그래픽 기능을 제공하는 Pyglet 패키지 위에 구축되었습니다. DesViz를 사용하면 DES 모델이 나중에 DesViz에서 해석되는 csv 파일을 작성하여 시뮬레이션에서 배경 및 전경 개체를 나타내는 스프라이트를 구성하고 이동할 수 있습니다. csv 파일의 각 줄은 시뮬레이션 시간, 애니메이션 지침 및 해당 지침과 관련된 인수 집합을 제공합니다. 이러한 지침은 DES 컨텍스트 에서 유용한 방식으로 스프라이트 모양과 움직임을 지정하는 간단한 방법을 제공합니다 .Paul Corry의 DesViz 문서
SimPy 개발자는 DesViz를 사용하여 2단계 접근 방식으로 시뮬레이션 모델을 애니메이션화할 수 있습니다 . 먼저 DesViz 라이브러리를 사용하여 애니메이션 데이터를 생성하고 저장해야 합니다. 다음으로 애니메이션을 렌더링하는 데 애니메이션이 사용됩니다.
DesViz로 애니메이션을 만들 수 있는 몇 가지 예는 다음과 같습니다.
- 자동 객체 방향을 사용하여 픽셀 포인트에서 픽셀 포인트로 또는 사전 정의된 경로를 따라 이동
- 객체 방향 조정(예: 객체 회전 애니메이션)
- 애니메이션 목적을 위한 객체 간의 마스터-슬레이브 관계 정의(예: 트럭(마스터) 및 트레일러(슬레이브))
- 진행률 표시줄(정적이거나 다른 개체에 첨부됨(예: 관련 개체와 함께 이동))
- 라벨링, 주석, 배경 이미지
- 정의된 애니메이션 속도(프레임 간격, 즉 fps – 초당 프레임 수)
내부적으로 DesViz는 정의된 애니메이션 지침으로 데이터베이스(csv 파일)를 채웁니다. 이러한 지침은 시뮬레이션 애플리케이션 자체에 구현되어야 합니다. 기본 데이터베이스는 시뮬레이션 실행 중에 채워지고 애니메이션 자체를 렌더링하는 데 사용됩니다. 이를 위해 DesViz는 다양한 클래스, 메소드 및 함수를 제공합니다.
관련된 컨텐츠
Python의 이산 이벤트 시뮬레이션 및 관련 모델 구현에 대해 자세히 알아보려면 다음 블로그 게시물을 참조하세요.
- 링크: 이산 사건 시뮬레이션 소프트웨어 목록
- 링크 : SCM 분석가를 위한 시뮬레이션 방법
- 링크: 이산 사건 시뮬레이션 절차 모델
- 링크 : Job Shop SimPy Python 시뮬레이션
- 링크 : salabim(DES, Python)을 사용하여 통계 시각화
광산 업계 의 시뮬레이션과 그 사용 사례에 대해 더 자세히 알아보고 싶다면 다음 기사를 읽어보세요.
- 링크: 더 나은 계획을 위한 노천 광산 시뮬레이션
- 링크 : 광산 업계의 시뮬레이션 및 활용 사례
- 링크 : 광산업의 혼합 문제 해결
- 링크 : 철광석 혼합 문제 해결
- 링크 : 철강 생산 가치 사슬 분석
최적화 및 시뮬레이션을 전문으로하는 산업 엔지니어 (R, Python, SQL, VBA)
Leave a Reply