用途:SimPy 是基于标准 Python 的进程式离散事件仿真框架,用于建模实体(顾客、车辆、数据包等)随时间相互交互并竞争共享资源(服务器、机器、带宽等)的系统。
主要能力:用 Python 生成器函数定义进程;管理共享资源(Resource、PriorityResource、PreemptiveResource、Container、Store、FilterStore、PriorityStore);事件驱动调度与同步(timeout、request、自定义事件、AllOf/AnyOf);支持与墙钟时间同步的实时仿真(simpy.rt.RealtimeEnvironment);提供监控与数据收集手段。
使用方式:创建 simpy.Environment(),用 env.process() 启动生成器进程,用 yield env.timeout() 等待时间、with resource.request() as req 申请资源,最后 env.run(until=...) 运行。示例:import simpy; env = simpy.Environment(); server = simpy.Resource(env, capacity=1)。
适用场景:离散事件系统建模、资源争用、队列分析、流程优化、网络仿真、容量规划、系统验证;制造、医疗、电信、交通、服务运营、计算机系统等。
限制:不适合固定时间步长的连续仿真(可考虑 SciPy ODE 求解器)、无资源共享的独立进程、纯数学优化(可考虑 SciPy optimize)。常见陷阱包括忘记 yield、事件只能触发一次、资源泄漏、阻塞调用、时间单位不一致与死锁。
资料中提及的脚本与参考文档(如 scripts/resource_monitor.py、references/resources.md 等)属于该技能包内容,具体安装与获取方式暂未提供。