用途:SimPy 是进程式离散事件仿真框架,基于标准 Python。适合对事件在不确定时间间隔发生的系统建模,如资源竞争、排队分析、流程优化、网络仿真、容量规划与系统上线前验证;不适合固定时间步长的连续仿真、无资源共享的独立进程或纯数学优化。
主要能力:使用 Python 生成器函数定义进程;管理共享资源(Resource、PriorityResource、PreemptiveResource、Container、Store、FilterStore、PriorityStore);事件驱动调度与同步(timeout、request、自定义事件,使用 & 等待全部、| 等待任一);支持与真实时钟同步的实时仿真(simpy.rt.RealtimeEnvironment);提供监控与数据收集,可将结果导出 CSV。
使用方式:创建 env = simpy.Environment(),用 env.process(...) 启动进程,调用 env.run(until=...) 或 env.run() 运行。资源请求推荐使用上下文管理器:with resource.request() as req: yield req。典型模式包括顾客—服务器队列、生产者—消费者、并行任务汇总。
限制与注意:进程函数必须 yield 事件才能暂停;事件只能被触发一次;避免在进程中调用阻塞操作;时间单位需保持一致;注意资源泄漏与死锁,确保至少一个进程能推进;为结果可复现可设置随机种子。参考资料涵盖资源、事件、进程交互、监控与实时仿真,并提供基础仿真模板与资源监控脚本。具体价格与平台支持信息暂未提供。