本文转载自liusj2003,如给您带来不便之处,请联系博主。

首先要介绍的的一个非常有名的Petri 网网站--Petri Nets World:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/

我这里介绍的软件大部分在该网站中的Tools and Software中的Petri Nets Tool Database里可以找到相关的链接。

Petri网的相关模拟仿真软件现在已经相当成熟了,在国外已经有很多投入商用的案例。但目前每年的国际性Petri网学术会议上都有一个专题就是:Petri Nets Tools的开发。也就是说Petri网界对于新的模拟软件的开发是十分重视。

这里不是要跟大家说如何开发软件,而是想跟大家分享如何下载和使用适合我们自己的Petri网学习工具软件。

下面介绍我比较熟悉的几款软件,大家不妨自己下载安装使用(注意,其中有些是要钱的,不管打不打折,对于我们来说肯定不会下):

Visual Object Net ++

Tool homepage: http://www.systemtechnik.tu-ilmenau.de/~drath/visual_E.htm

 

Visual Object Net ++可以说是一款入门级的模拟软件了。我用得最多。具有非常直观的操作和非常强大的功能。

支持时间以及混杂网,但是我们用得最多的还是使用它来队最普通的P/T网建模。

这款软件虽然很好用,但感觉就是太普通、太普通了。

Tina

Tool homepage: http://www.laas.fr/tina

Tina是一款对时间Petri网支持得比较好的软件,也是我用得较多的一款软件。 它的运行程序是解压后/bin目录下的nd.exe文件(NetDraw),适用于Windows和Linux操作系统,也就是说他的移植性很好。

Tina的操作也比较特别,很多操作需要借助键盘按键来完成,如:

Ctrl + g用来切换软件背景网格线的有无;鼠标中键用来添加库所;Ctrl +鼠标中键用来添加变迁;用鼠标中键在库所与变迁间拖拽可以添加弧。

他有专门的模拟模块,点击菜单的tools-stepper simulator可以切换到运行模拟器中,如图。其中Rand表示随机运行,完了之后可回复到初始状态进行单步运行分析等。

            

CPNTools

Tool homepage: http://www.daimi.au.dk/CPNTools/

 

CPN Tools是颜色Petri网领域鼎鼎大名的建模软件,操作界面如同所示:

其操作也独具特色--添加库所、变迁以及弧的方法是使用鼠标右键点击不放,在出现的圆形弹出菜单内用左键选择相应的项目。

下图大家一看就明白,乃是经典的哲学家进餐问题的CPN模型。

更多的操作细则请参看在线帮助文档:

http://wiki.daimi.au.dk/cpntools-help/cpntools-help.wiki

JFernPIPE

Tool homepage: http://sourceforge.net/projects/jfern

 

之所以放在一起讲是因为JFern和PIPE都是基于JAVA平台的Petri网模拟软件。所以不管是在Windows下还是Linux下都必需有JDK/JRE作为运行环境方可使用。

JFern支持面向对象Petri网,目前支持OOPN的软件比较少,所以很有价值。

PIPE 是Platform Independent Petri Net Editor的缩写,没有给下载地址因为Petri Nets World上没有。而我是从西北大学一位研究生处得到的,当我问起他们一般使用什么Petri网模拟软件时,他只说了PIPE,可见他还是很有影响力的。

下载到JRE,并设置好PATH后运行PIPE软件包中的pipe.bat(Windows下,Linux下的启动程序是pipe.sh)文件就可以打开操作界面了(见图) 。

可见其见面也很直观易懂,且采用分页结构。

另外我想提出的一点说明是:在PIPE所建模型的库所属性框里可是有“Capacity”一栏的哦!这是我看到的第一个设置了库所容量的成熟软件。

说了这么多,最后想说一点:Petri网模拟软件其实还有很多很多,只要是不要钱的大家都可以拿来下着玩玩,弄不好就被你发现点什么玄机了,呵呵。如果觉得这些软件的操作你不熟悉,拿着不知道怎么用,最有效也是最直接的办法是:看帮助文档或者说用户手册!

《转》常用Petri网模拟软件工具简介的更多相关文章

  1. 常用Petri网模拟软件工具简介

    常用Petri网模拟软件工具简介 首先要介绍的的一个非常有名的Petri 网网站--Petri Nets World:       http://www.informatik.uni-hamburg. ...

  2. petri网学习心得

    本文转载自duxw,如给您带来不便之处,请联系博主. 1.Petri网书籍:<petri网导论>,吴哲辉 非常适合初学者.概念清晰,容易理解. 2.工作流书籍:<Workflow M ...

  3. APP网络测试要点和弱网模拟

    当前APP网络环境比较复杂,网络制式有2G.3G.4G网络,还有越来越多的公共Wi-Fi.不同的网络环境和网络制式的差异,都会对用户使用app造成一定影响.另外,当前app使用场景多变,如进地铁.上公 ...

  4. 用于并发系统建模和验证的着色Petri网及其工具软件的CPN Tools(笔记整理)

    1.着色Petri网(CPNS)是一种建模和验证系统的语言,在这些熊中并发性,交互性和同步性扮演着主要的角色,着色Petri网是一种功能编程语言Standard ML结合起来的离散时间建模语言,Pet ...

  5. 基于Petri网的工作流分析和移植

    基于Petri网的工作流分析和移植 一.前言 在实际应用场景,包括PEC的订单流程从下订单到订单派送一直到订单完成都是按照一系列预先规定好的工作流策略进行的. 通常情况下如果是采用面向过程的编程方法, ...

  6. Petri网

    Petri网是一种适合于系统描述和分析的数学模型,主要描述异步和并发关系.(或者Petri网是对离散并行系统的数学表示,适用于描述异步的,并发的计算机系统模型.) Petri网模型自然,直观,简单易懂 ...

  7. petri网初步

    历史:Petri网的概念是德国的Carl Adam Petri早在1962年提出来的.他在他的论文里提出了一个新的信息流模型,这个模型基于系统各部分的异步并发的操作,并把各部分之间的关系用网状的图来描 ...

  8. Petri网的工具

    需要寻找 Petri 网的工具的朋友可以在 http://www.informatik.uni-hamburg.de/TGI/PetriNets/tools/complete_db.html 里面找一 ...

  9. Knockout.Js官网学习(简介)

    前言 最近一段时间在网上经常看到关于Knockout.js文章,于是自己就到官网看了下,不过是英文的,自己果断搞不来,借用google翻译了一下.然后刚刚发现在建立asp.net mvc4.0的应用程 ...

随机推荐

  1. 传智168期JavaEE就业班 day03-js

    * 课程回顾: * CSS * CSS的简介 * 层叠样式表. * CSS与HTML的结合(4种) * HTML的标签提供了属性 style="CSS的代码" * HTML提供了标 ...

  2. 在CentOS上安装SQLServer

    Install SQL Server on Red Hat Enterprise Linux 参考上面这篇文章即可,需要注意的是内容大于3.25G,然后设置Sa密码的时候需要至少一个大写字母.一个小写 ...

  3. std::ios::sync_with_stdio(false);

    这句语句是用来取消cin的同步,什么叫同步呢?就是iostream的缓冲跟stdio的同步.如果你已经在头文件上用了using namespace std;那么就可以去掉前面的std::了.取消后就c ...

  4. 【BZOJ-2879】美食节 最小费用最大流 + 动态建图

    2879: [Noi2012]美食节 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1366  Solved: 737[Submit][Status] ...

  5. jstl是自动就有的吗,不是的Unknown tag (c:if).

    这个错误的原因就是没有导包 http://www.runoob.com/jsp/jsp-jstl.html 这个网站有方法

  6. CoreOS Architecture Learning

    目录 . CoreOS简介 . CoreOS部署.安装.使用 . CoreOS命令使用 1. CoreOS简介 0x1: CoreOS和Docker的关系 我们先来看一张Docker的架构图

  7. footable动态载入数据

    footable_redraw事件 $('#scan').on('click',function(){ var html = '<tr><td>mayidudu</td& ...

  8. js中数组以及for循环的使用

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...

  9. Ognl基本使用

    ---恢复内容开始--- Ognl默认是从“根”中取数据的 下面Demo中用的是 Ognl.getValue(String expression, Map context, Object root) ...

  10. 使用 array_multisort 对多维数组排序

    array_multisort() 函数对多个数组或多维数组进行排序. 用法详看:http://www.w3school.com.cn/php/func_array_multisort.asp 例子: ...