python的事件离散、基于过程的模拟。

simp的Python项目详细描述


简单

simpy是一个基于标准的基于过程的离散事件仿真框架。 蟒蛇。simpy中的进程由python函数和 例如,可以用于为客户、车辆或 代理人。simpy还提供了各种类型的共享资源来建模 容量有限的拥塞点(如服务器、签出计数器和 隧道)。

模拟可以"尽可能快"实时进行(挂钟 时间)或手动单步执行事件。

虽然理论上可以用simpy进行连续模拟,但是 没有任何功能可以帮助您实现这一点。而且,simpy实际上并不需要 具有固定步长且进程不与之交互的模拟 彼此或共享资源。

文档 包含a 教程 几个指南 讲解键 概念,大量的示例

simpy是根据麻省理工学院的许可证发行的。仿真模型开发人员 鼓励与simpy社区分享他们的simpy建模技术。 请在 简单邮件列表

有一个介绍性的演讲解释了simpy的概念,并提供了一些 示例: 观看视频 获取幻灯片

一个简单的例子

simpy的主要目标之一是易于使用。下面是一个简单的 simpy simulation:打印当前模拟时间的时钟过程 每一步:

>>>importsimpy>>>>>>defclock(env,name,tick):...whileTrue:...print(name,env.now)...yieldenv.timeout(tick)...>>>env=simpy.Environment()>>>env.process(clock(env,'fast',0.5))<Process(clock)objectat0x...>>>>env.process(clock(env,'slow',1))<Process(clock)objectat0x...>>>>env.run(until=2)fast0slow0fast0.5slow1fast1.0fast1.5

安装

simpy需要python 2.7、3.2、pypy2.0或更高版本。

您可以通过pip轻松安装simpy

$ pip install -U simpy

您也可以手动下载和安装Simpy:

$ cd where/you/put/simpy/
$ python setup.py install

要在您的安装上运行Simpy的测试套件,请执行:

$ py.test --pyargs simpy

入门

如果您以前从未使用过simpy,那么simpy教程是一个很好的开始。 给你点颜色。您还可以尝试随附的一些示例 SimPy .

文档和帮助

您可以找到一个教程 示例 主题指南 api 参考 ,以及有关中的simpy及其历史的一些信息 我们的在线文档。有关更多帮助,请联系 simpy邮件 列表 simpy用户非常有用。当然,你也可以挖出来 钍源代码

如果您发现任何错误,请将其发布到我们的 问题跟踪程序

享受Simpy中的模拟编程吧!

端口和可比库

simpy和类似于simpy的库的重新实现在 以下语言:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaFX 11可编辑组合框引发IndexOutOfBoundsException   java选择数组中的数组元素   java我从来没有找到创建2D ArrayList的正确方法   java JPA查找orderById的顶部数据,并按字符串过滤Id   使用java在ejabberd中进行xmpp外部身份验证   从ajax调用向java传递点运算符   java如何使用ReadWriteLock   使用Spring控制器和jQueryAjax的java重定向   java使JFrame中的JPanel可滚动   java如何用多个。jar库?   java EditText在RecyclerView中失去了对滚动的关注   java为什么我们必须扩展Servlet或GenericServlet或HttpServlet来创建Servlet应用程序?如果不扩展,我们可以开发Servlet应用程序吗?   使用递归java查找数组中的最大值   具有不同字段数的html表单的java域传输对象   java文本视图扩展;不支持操作异常   java如何使用iText的HTMLWorker类将多语言HTML字符串呈现为PDF