对应教程:https://simpy.readthedocs.io/en/latest/simpy_intro/basic_concepts.html

博主是第一次使用仿真,下面是一些学习心得与知识点汇总:Simpy的模拟过程,大家可以想像一个时间轴(就是历史书上经常出现的大事件表或时间线),每一个事件的发生终止都可以被描述在这个时间轴上。因此通过python的逻辑,我们要通过写一些逻辑,自动生成这个时间线,这就是编写Simpy时的感觉。

下面的案例知识点:

  1. yield env.timeout(10):表示这个过程消耗10个时间单位
  2. 启动仿真程序:
     env = simpy.Environment()env.run(until=100)  # 仿真持续运行100s
    

仿真案例

import simpy# 汽车实例
def car(env):while True:print('停车 %d 即将等待5s' % env.now)parking_duration = 5yield env.timeout(parking_duration)  # 停车消耗 5sprint('启动车 %d 即将消耗1s' % env.now)yield env.timeout(1)  # 启动车需要消耗 1sprint('车辆开始动 %d 即将消耗10s' % env.now)trip_duration = 10yield env.timeout(trip_duration)  # 汽车开动 10sif __name__ == '__main__':# 仿真启动env = simpy.Environment()env.process(car(env))  # 这句话告诉仿真程序初始化carenv.run(until=100)  # 设定仿真结束条件, 运行100s

打印结果:

停车 0 即将等待5s
启动车 5 即将消耗1s
车辆开始动 6 即将消耗10s
停车 16 即将等待5s
启动车 21 即将消耗1s
车辆开始动 22 即将消耗10s
停车 32 即将等待5s
启动车 37 即将消耗1s
车辆开始动 38 即将消耗10s
停车 48 即将等待5s
启动车 53 即将消耗1s
车辆开始动 54 即将消耗10s
停车 64 即将等待5s
启动车 69 即将消耗1s
车辆开始动 70 即将消耗10s
停车 80 即将等待5s
启动车 85 即将消耗1s
车辆开始动 86 即将消耗10s
停车 96 即将等待5s

Simpy学习:基本运行与终止(一)相关推荐

  1. 构建深度学习框架运行平台

    构建深度学习框架运行平台 将为TensorFlow.PyTorch和TorchScript之外的元素构建一个简单的深度学习框架运行平台模型.将展示如何从Python和C++运行推理. 打包和推断接口还 ...

  2. 【Node学习】—运行node服务demo

    [Node学习]-运行node服务demo 创建node文件 名字不能是node.js 复制官网的案例 启动node服务:node 文件名字.js 浏览器来访问这个服务 官网版 改写版

  3. 【comsol学习1】-电化学模块学习与运行错误之橙子电池

    电化学模块学习与运行错误之橙子电池 橘子电池 1.模拟内容 1.1橙子电池电极反应 2.模拟步骤 2.1创建新模型 2.2绘制几何 2.3载入参数 2.4定义及创建电流分布模型 2.5模型计算与研究结 ...

  4. Delphi进行CAD二次开发教学(1)——基础学习:运行、新建、打开图形文件

    http://hi.baidu.com/piaoliuxia/blog/item/d61e03faed3bd18c9f514670.html 查看文章   [原创]Delphi进行CAD二次开发教学( ...

  5. 【comsol学习2】-电化学模块学习与运行错误之循环伏安法

    电化学模块学习与运行错误之循环伏安法 一维下的宏观电极上的循环伏安法 模型定义 模型建立过程 新建模型 模型定义 物理场定义(即电分析定义) 模型求解与结果 这里参考的官网案例文件仍是上一篇文章中的 ...

  6. *.rtss程序的运行、终止方式及使用方法

    运用RTSSRun 命令加载RTss程序时,要注意退出,否则当运行的线程超过设定值时(在 RTX Properties -> System tab->processes中设置默认为10), ...

  7. Node.js 学习 ——nodemon 运行报错解决

    Node.js 学习 --nodemon 运行报错解决 报错记录 nodemon : 无法加载文件 C:\Users\Administrator.DESKTOP-0RUBNO7\AppDat on.p ...

  8. 【多线程编程学习笔记6】终止线程执行,千万别踩这个坑!

    申明:本学习笔记是在该教程的基础上结合自己的学习情况进行的总结,不是原创,想要看原版的请看C语言中文网的多线程编程(C语言+Linux),该网站有很多好的编程学习教程,尤其是关于C语言的. 在< ...

  9. PowerShell 学习笔记——运行命令

    谈到"Shell",很容易与脚本.编程语言等联系起来,这也是很多ITPro不去钻研PowerShell的原因.很多ITPro们认为用好PowerShell就要涉及到复杂的函数.变量 ...

最新文章

  1. android 蓝牙 不休眠_全新便携蓝牙键盘 雷柏XK100带来高效办公新体验
  2. Android开发之Navigationdrawer导航抽屉功能的实现(源代码分享)
  3. 史上最大AI芯片诞生:462平方厘米、40万核心、1.2万亿晶体管,创下4项世界纪录...
  4. 织梦多个栏目arclist调用副栏目不显示的解决办法
  5. 自定义控件-侧边菜单SlidingMenu(滑动菜单)
  6. 关于REST API设计的一些小经验
  7. 热血沙城-3.2移植-古月-cocos2dx源码
  8. MySQL中通配类型各自作用_在Access数据库中。在查找操作中,通配符*、?与#各有什么作用?...
  9. WindowsXP下搭建GIT服务器
  10. Centos7安装vlc
  11. cad文字递增快捷键_Auto CAD2014数字递增复制快捷键是什么呢?
  12. ICLR 2022 语言模型驱动的语义分割算法:Language-Driven Semantic Segmentation
  13. 形容等待时间长的句子_形容等待了很久的句子
  14. keystone创建服务实体HTTP500,An unexpected error prevented the server from fulfilling your request. HTTP500
  15. 解决ubuntu无法解析域名、无网络连接问题
  16. Sqoop导入导出基本操作
  17. 纯js封装一个多功能弹出框
  18. oracle 给表授权grant
  19. 修改win7锁屏壁纸,突破壁纸大小256Kb限制
  20. 计算给定字符串中最长回文子串的长度(或查找最长回文子串)

热门文章

  1. 8 一点就消失_消失的莉莉安(25)
  2. JDBC是什么?和JDBC程序的基本编写
  3. 在unity向量空间内绘制几何(2):计算球体的表面坐标
  4. Unreal Engine 4切换默认Camera实现
  5. 基于物理渲染的基础理论
  6. STL之partial_sum
  7. FFM原理及公式推导
  8. Unity3D-RayMarch-几何图元1-添加基本着色模型
  9. CentOS6下docker的安装和使用
  10. 走上这条路,也许是缘份