Python 시뮬레이션: SimPy란 무엇이며, 전제 조건, 시뮬레이션 실행 방법
게시 됨: 2020-06-16현실 세계는 인프라 관점에서든 기술적 관점에서든 시스템의 다른 부분에서 작동합니다. Python 시뮬레이션 의 도움으로 이러한 시스템은 SimPy 프레임워크가 지원하는 모델을 통해 최적화되어야 합니다. 복잡한 시스템의 생성을 예측하고 단계별 알고리즘을 통해 해결하기 위해 실제 시스템에 더 가깝게 모델을 개발합니다.
대기업의 경우 시스템을 분석하여 시스템을 수정하고 견고하게 만드는 것이 중요합니다. 특히 의료 및 공항 관리와 같은 응급 서비스의 경우 개인의 활동을 항상 모니터링하고 어려운 상황에 대처할 준비가 되어 있어야 합니다. 이것은 Python 시뮬레이션 모델에서 통찰력을 도출해야만 가능합니다.
목차
심파이란?
SimPy는 승객, 환자, 차량 및 자산과 같은 24시간 리소스 관리를 처리하는 기업이 선호하는 객체 지향 및 방법 기반 오픈 소스 특별 이벤트 시뮬레이션 라이브러리입니다. 종종 이러한 시스템에는 계산대, 리셉션 및 고속도로와 같은 제한 사항 또는 팁 용량이 있습니다.
이러한 서비스 외에도 SimPy는 Python의 무작위 변수를 사용하여 일반 분석을 생성하는 데도 도움이 됩니다. 전적으로 Python으로 작성된 SimPy는 Java Virtual Machine 또는 .NET과 같은 여러 환경에서 실행할 수 있습니다.
다음은 SimPy의 시뮬레이션 스니펫의 예입니다.
환경 = simpy.Environment()
env.process(checkpoint_run(env, num_booths, check_time, Passenger_arrival))
환경 실행(까지=10)
코드를 실행하기 전에 환경과 매개변수를 설정하므로 다음과 같이 변수를 정의해야 합니다.
- env: 이벤트를 실행하고 분석하기 위해 시뮬레이션이 필요한 상황을 나타냅니다.
- num_booths: ID 확인이 설치된 총 부스 수입니다.
- check_time: 각 승객의 ID를 확인하는 기간입니다.
- Passenger_arrival: 대기열에서 대기하는 승객의 빈도입니다.
이러한 변수는 적절한 현실 기반 데이터를 수집하기 위해 필요할 때 변경될 수 있음을 기억하십시오.
시뮬레이션 초안 작성에 필요한 사항을 알았으므로 유사한 이벤트에 대한 코드를 작성하는 동안 도움이 될 수 있는 단계는 다음과 같습니다.
1단계: 환경을 정의합니다.
2단계: 관련 표준을 설정합니다.
단계 III: 시뮬레이션을 실행합니다.
지금은 이 단계만으로도 관련된 다른 프로세스를 자세히 살펴보기 전에 시작하기에 충분합니다.
더 읽어보기: Python 요청 모듈 가이드: Python에서 요청 라이브러리를 사용하는 방법?
SimPy를 시작하기 전의 전제 조건
SimPy를 시작하기 전에 Python 기초, 클래스 및 생성기에 대한 깊은 이해가 필요합니다. 생성기는 반복되는 객체를 반환하는 이산 Python 함수로 정의할 수 있으며, 이 객체는 함수의 시작 부분에 있는 로컬 변수뿐만 아니라 함수의 본문에 첨부됩니다. 이 반복자 덕분에 함수가 yield 문의 실행을 돕고 주어진 표현식의 결과를 생성합니다.
yield 문은 이벤트의 일정이나 프로세스를 설정하는 데 도움이 되는 도구입니다. 이벤트는 자가 트리거(예: 다음 차량이 떠날 때까지)이거나 채널과 같은 리소스를 요청하거나 해제할 수 있습니다. 이러한 명령문의 이름은 다음과 같습니다.
- yield 요청: 이 계정은 시스템이 리소스에 대한 대기 목록에 추가되고 즉시 사용하도록 명령하는 데 사용됩니다.
- yield hold: 이 문은 일반적으로 메서드의 다른 단계 실행에 관련된 시간을 강조 표시하는 데 사용됩니다.
- yield passivate: 이 문은 다른 함수가 이를 트리거할 때까지 프로세스를 대기 상태로 유지하는 데 사용됩니다.
- yield release: 이 명령문은 시스템에서 프로세스가 완료되면 업데이트된 상태로 유지하는 데 사용되며, 따라서 다음 단계를 기다리고 있습니다.
이제 시스템의 작업 프로세스에 대한 아이디어가 생겼으므로 초기 프레임워크를 SimPy로 설정하여 주문에 패키지를 설치해야 합니다. 이 핵심 패키지는 전체 시뮬레이션 모델을 만들고, 관리하고, 실행하는 데 도움이 됩니다. 내장된 일부 Python 모듈의 도움으로 관련된 평균 대기 시간을 컴파일하고 난수를 파악할 수 있습니다.

난수 생성기에는 다음과 같은 기능이 있습니다.
- 랜덤 모듈을 정의합니다.
- 발전기를 나타냅니다.
- 확률 변수 도출: 10에서 40 사이의 난수와 유사: g. 무작위의()
확인: 인도의 Python 개발자 급여
세계 최고의 대학에서 데이터 과학 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.
Python 시뮬레이션 실행
코딩이 끝나면 몇 가지 간단한 클래스와 함수를 사용하여 프로그램을 실행할 수 있습니다. 고객의 평균 대기 시간을 이해해야 하는 극장용 시뮬레이션 시스템을 상상해 보십시오.
SimPy를 더 잘 사용하려면 매개변수, 생성기, 함수 및 클래스를 사용하여 Python에서 시뮬레이션을 브레인스토밍하고 생성하기만 하면 됩니다. 각 시뮬레이션의 환경은 사례마다 다르기 때문에 관련된 프로세스를 간략하게 수정하면 다음과 같습니다.
- 모든 시뮬레이션에 적합한 알고리즘 설정
- Python으로 시나리오 구성하기
- 관련된 모든 리소스 및 방법으로 기능 할당 및 정의
- 실행 가능한 결과 생성을 위한 시뮬레이션 매개변수 최적화
더 읽어보기: 초보자를 위한 42가지 흥미로운 Python 프로젝트 아이디어 및 주제
결론
Python, 데이터 과학에 대해 자세히 알아보려면 작업 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크숍, 업계 전문가와의 멘토링, 업계 멘토와의 1:1 학습, 400시간 이상의 학습 및 최고의 기업과의 취업 지원.
SimPy는 시뮬레이션에서 얼마나 유용합니까?
SimPy는 프로세스 기반 이산 이벤트인 Python 시뮬레이션 프레임워크입니다. 프로세스는 Python 생성기 함수에 의해 SimPy 프레임워크에서 정의됩니다. 에이전트, 차량 또는 고객과 같은 활성 구성 요소를 모델링하는 데 사용됩니다.
SimPy는 자산, 차량 및 환자와 같은 24시간 리소스 관리를 선호하는 모든 조직 및 기업에 유용합니다. 이러한 시스템에는 고속도로, 리셉션 및 계산대와 같은 제한 사항 또는 팁 용량이 있는 것으로 종종 나타납니다. 시뮬레이션은 벽시계 시간을 기준으로 최대 속도로 수행하거나 이벤트의 단계를 수동으로 수행하여 수행할 수 있습니다.
이러한 서비스 외에도 SimPy는 조직이 Python에서 무작위 변수를 사용하여 일반 분석을 생성하는 데 도움이 됩니다. SimPy는 완전히 Python으로 작성되었으며 .NET 및 Java Virtual Machine과 같은 다양한 환경에서 실행할 수 있습니다.
Python에서 시뮬레이션된 데이터를 만드는 방법은 무엇입니까?
Python 자체를 사용하여 모든 모델에 대해 시뮬레이션된 데이터 세트를 생성하기 위해 여러 모델을 연습하거나 테스트하기 위한 데이터 세트가 여러 번 필요합니다. 이것은 Python에서 회귀를 위한 시뮬레이션된 데이터를 생성하는 데 도움이 됩니다.
회귀를 위해 Python에서 시뮬레이션된 데이터를 생성하는 단계별 절차는 다음과 같습니다.
1. 라이브러리 가져오기 - 이 단계에서는 회귀를 위해 데이터세트와 라이브러리를 가져옵니다.
2. 모의 데이터 생성 - 회귀에 필요한 매개변수를 전달하여 회귀 데이터셋을 생성할 수 있습니다. 출력은 데이터 세트 계수, 출력 및 기능으로 얻어집니다.
3. 데이터 세트 인쇄 - 마지막 단계에서 데이터 세트는 계수, 출력 및 기능과 같은 다양한 구성 요소에서 인쇄됩니다.
Python 개발자는 평균적으로 얼마를 벌까요?
Python 개발자의 경우 평균 급여가 Rs입니다. 연간 500,000. 급여는 지리적 위치, 회사 수준, 경험 등과 같은 여러 다른 요인에 따라 크게 달라집니다. 연봉 5000만원을 예상할 수 있다. 200,000 ~ Rs. Python 개발자 역할의 경우 연간 800,000입니다.