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

首先要介绍的的一个非常有名的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

JFern、PIPE

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网模拟软件工具简介

    本文转载自liusj2003,如给您带来不便之处,请联系博主. 首先要介绍的的一个非常有名的Petri 网网站--Petri Nets World: http://www.informatik.uni ...

  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. jsp&servlet初体验——用户登录功能实现

    数据库准备-创建db_login数据库  t_user表 1.创建web工程 2.创建用户model   user.java package com.gxy.model; public class U ...

  2. iOS多线程编程--NSOperation(转)

    这篇文章写得非常不错,基础用法都涉及到了,我把文章提到的例子都写到了demo里面, 原文地址: iOS多线程--彻底学会多线程之『NSOperation』 demo下载:https://github. ...

  3. R语言do.call 函数用法详解

    虽然R语言有类型很丰富的数据结构,但是很多时候数据结构比较复杂,那么基本就会用到list这种结构的数据类型.但是list对象很难以文本的形式导出,因此需要一个函数能快速将复杂的list结构扁平化成da ...

  4. 【Java集合系列】---总体框架

    个的组合,这些数据项可能共享某些特征,需要以某种操作方式一起进行操作,一般来说,这些数据项的类型都是相同的,或者基类相同(若使用的语言支持继承),列表或数组通常不认为是集合,因为其大小固定,但是事实上 ...

  5. 自定义支持多行显示的RadioGroup

    自定义支持多行显示的RadioGroup 原生的RadioGroup继承自LinearLayout,即只能支持一横排或者一竖排的排列显示RadioButton 现在改写RadioGroup,使它支持多 ...

  6. Android简易实战教程--第四十话《Spinner》

    对于Spinner控件的介绍和使用方法,可以先看之前写过的一篇博客:Spinner控件详解 本篇就基于这个知识点完成一个简单的小案例: 根据介绍,先写一个布局: <?xml version=&q ...

  7. RxJava(三) flatMap操作符用法详解

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/51532776 本文出自:[余志强的博客] flatMap操作符的作用 ...

  8. Swift基础之Demo包含刷新,加载,网络请求,MVC

    Swift中有一个Alamofire第三方是进行网络请求的,它是AFNetworking的作者写的Swift形式,今天先介绍一下,利用pod导入AFNetworking,SVProgressHUD,M ...

  9. Linux--FTP和MAIL服务器

     1) FTP协议 FTP(FileTransfer Protocol,文件传输协议)用于管理计算机之间的文件传送.FTP 是Internet 上使用非常广泛的一种通讯协议,它是由支持Intern ...

  10. linux配置java环境变量 转过几个,这个最详细和靠谱

    一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录,之后会在当前目录下生成一个jdk1.6.0_14目录二. 需要配置的环境变量 1. PATH环境 ...