一直想把之前看有关CPN的文献资料做一个综合性的整理,所以最近花了些时间,把乌克兰敖德萨国家电信科学院交通运输部学院的讲义做一个翻译。本课程的翻译不具授权(如有侵权请及时联系,做删除处理)

本课程的标题是 《使用CPN Tools模拟电信系统》用于学生课堂信息系统数学建模,用于教授硕士课程

本课程介绍了仿真系统CPN Tools的功能,该系统是丹麦奥胡斯大学开发的软件,并使用在信息系统数据建模课程中用于电信系统和网络的建模,本课程中我们选择的案例是交换式以太网模型的示例。本课程的翻译中的的案例部分我不再重复试验。最后会上传部分自己试验的代码,仅供大家参考使用。

本课程内容结构(因为分章节戳连接比较繁琐,所以后续的所有直接放在对应标题下面)

结构

1CPN tools实现层次网络

CPN Tools是使用Petri网语言的特殊仿真系统用于模型的表示。 该系统是在美国奥尔胡斯大学开发的丹麦,并通过网络为非商业组织免费分发网站http://www.daimi.au.dk/CPNTools/。 服务水平允许分类CPN Tools作为企业系统。 它被用于许多现实生活中的项目特别是在电信领域。 最近诺基亚公司正在申请CPN工具,用于模型驱动的新一代手机开发。

CPN Tools 提出了一种强大的层次Petri网结构的模型描述,根据标准分类,此类网络结构命名为层次定时网络,事实证明他们等同于图形结构的算法系统,因此抽闲对象指定任意的层次网络。

简单的颜色Petri网使用不同的token值。token值的类型通过自然数表示一种颜色集,比方1:red  2:blue, 3-green等,颜色Petri更加的复杂,因为此类结构中的token被描述成一个抽象的数据类型在编程语言中。术语“colored”任然保存之前的意思,但是完全不同“colors”体现的意思。

时间戳的Petri网使用时间的概念模型来表达执行中的实时对象,尽管在经典的petri网中,变迁点火之后立即发生,但是在定时网络中存在确定的持续时间或者确定的延迟。这样可以分析具有时间属性的复杂模型。在这样的网络结构中,一个元素可以由另一个网络表示,在CPN tools 中,可以使用替代变迁。所以存在嵌套的结构,这其中对层次结构的数量没有严格的限制。

1.1Petri网图和CPN ML语言

1.2 例子(1)

例子(2)

例子(3)

2、CPN Tools最基本的功能和目的

最近博客上很多网友一直在重复问我一个 在建模中遇到的token 值无法设置的问题,大家可以在我的博客中找找,之前写过这个。今天在这里补充一下。

比方下面的一个简单的逻辑的CPN 图,  我们看到在send变迁中我们定义了一个复合类型的toke值     Client_Session_id和  id=1. 复合类型的token值 要放在括号里面 ,设定这个token只发送一次。所以前面的   ·点之前是 1。 这里注意这个符号 ,我下面特意找了键盘图标了出来。

申明颜色集是哟个的关键字是   colset  ,定义变量使用的关键字是 var ;比方上面简单的逻辑关系的CPN图中 。我们定义了  NO 颜色 是 INT类型(也就是类似数据类型 整型), DATA 颜色集是STRING类型(也就是类似数据类型为字符串类型),  而我们定义变量主要是用在狐上用来表示传输的数据类型,上面途中 p这个变量表示传输的数据 为DATA,   n 表示传输的数据了行为NO ,复合颜色的定义分成很多,这里后面我再有时间更新。

2.1 CPN Tools工具的目的

2.2 CPN Tools最基本的功能

3、CPN Tools的界面组织结构

3.1 主窗口区域

3.2 工具工作区

3.3 上下文菜单

3.4 模型结构

3.5 帮助系统组织

3.6 CPN Tools工具反馈

4、CPN Tools工具箱

4.1 网络工具

4.2 创建工具

4.3 模拟工具

4.4其他工具概述

5、基本的CPN ML语言

5.1 简单颜色集

5.2 复合颜色集

5.3 变量的声明和常量

5.4 函数

5.5 随机数

5.6 多集

5.7 时间戳

6、模型语言描述

6.1 库所描述

6.3 弧描述

6.4 变迁描述

7、CPN Tools定时网络的特点

8、处理网络碎片

9、融合库所

10、层次网络结构

10.1 基本的替代变迁

10.2 从下到上的建模

10.3从上到下的建模

11、分析一个CPN-net 网络的实验数据

11.1 调试模型的问题

11.2状态空间分析

11.3 模拟网络模型行为

11.4 碎片测量

12、CPN Tools的附加功能

12.1 联合颜色集

12.1 列表颜色集

附录: 基于交换式局域网有色Petri网模型网络响应评估模型

代码部分我上传到了Git上,仅供参考

CPN Tools 系统建模分析工具(持续更新)的更多相关文章

  1. Analysis Tools(分析工具)

    分析工具 1.叠加分析 # Process: 交集取反 arcpy.SymDiff_analysis("", "", 输出要素类, "ALL" ...

  2. PowerTool x64驱动模块逆向分析(持续更新)

    比赛打完了,来继续搞了,因为那个主动防御正在写,所以想找找思路正好想到可以来逆向一下PT的驱动模块看看pt大大是怎么写的程序. PT x64版本的驱动模块是这个kEvP64.sys. 0x0 先来看看 ...

  3. android 开发中用到的工具-持续更新(码农必看)

    1. vim 单文件查看改动利器(一直使用支持各种编码各种文件,各种插件),欢迎下载笔者插件 git clone https://github.com/green130181/vim-conf.git ...

  4. Android运行异常情况分析(持续更新)

    1.java.lang.IllegalAccessException: access to class not allowed 原因:在写class 文件的时候没有把class设置成public 2. ...

  5. django项目实际工作中的配置以及一些有用的小工具(持续更新)

    常用pycharm快捷键:   https://www.cnblogs.com/luolizhi/p/5610123.html   Ctrl + F1  显示错误 Ctrl + Alt + Space ...

  6. android系统源码编译报错问题分析处理--持续更新

    一.build/make/core/base_rules.mk:232: error: packages/services/Car/service: LOCAL_BUILT_MODULE and LO ...

  7. 快来用这款BI分析工具,摆脱数据分析的困扰

    ​互联网.物联网时代,数据激增是正常现象,但这给公司信息部门和数据分析师带来了巨大的工作量.根据以前的分析方法,有必要详细而深入地完成分析报告,即使借助数据分析工具,也要花费大量的时间和人力,更不用说 ...

  8. Eclipse插件(导出UML图,打开文件资源管理器插件,静态代码分析工具PMD,在eclipse上安装插件)

    目录 能够导出UML图的Eclipse插件 打开文件资源管理器插件 Java静态代码分析工具PMD 如何在eclipse上安装插件 JProfiler性能分析工具 从更新站点安装EclEmma 能够导 ...

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

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

  10. 干货!IT小伙伴们实用的网站及工具大集合!持续更新!

    1.Git 还在担心自己辛辛苦苦写的代码被误删了吗?还在担心自己改错了代码不能挽回吗?还在苦恼于多人开发合作找不到一个好的工具吗?那么用Git就对 了,Git是一个开源的分布式版本控制系统,用以有效. ...

随机推荐

  1. 期盼已久全平台支持-开源IM项目OpenIM之uniapp更新

    国内uniapp使用广泛,OpenIM的uniapp sdk以及文档和demo (https://github.com/OpenIMSDK/Open-IM-Uniapp-Demo)都已更新,本文主要展 ...

  2. RocketMQ—引言

    RocketMQ-引言 MQ介绍 在学习RocketMQ之前,我们先来看以下MQ的意思. MQ是Message Queue的首字母缩写. Message:意思为消息,在我们生活中可以是一句话/一个短信 ...

  3. 微信小程序-behaviors

    什么是 behaviors behaviors 是用于组件间代码共享的特性,类似于一些编程语言中的 "mixins" 每个 behavior 可以包含一组属性,数据,生命周期函数和 ...

  4. Couldn't launch Python exit code 9009

    Couldn't launch Python exit code 9009 start stable-diffusion-webui,发现,python 环境没有,我本地其实是已经安装完毕的,后来发现 ...

  5. Linux提取日志中的IP地址并去重

    原日志文件:logger.log  内容: {"peer":"kts_001","type":"http"," ...

  6. C++小项目|2022期末大作业

    前言 那么这里博主先安利一下一些干货满满的专栏啦! 手撕数据结构https://blog.csdn.net/yu_cblog/category_11490888.html?spm=1001.2014. ...

  7. ResponseUtil jackson 转换问题;返回结果与 Bean 之间的转换,推荐使用convertValue

    /** * 若成功往往有data数据 * 示例: * UserBase userBase = new UserBase(); * userBase.setUserName("李昱鑫" ...

  8. Flink CDC实时同步PG数据库到Kafka

    一.安装规划 操作系统 服务器IP 主机名 硬件配置 CentOS7.6 192.168.80.131 hadoop01 内存:2GB,CPU:2核,硬盘:100GB CentOS7.6 192.16 ...

  9. Vdbench 参数详解

    Vdbench 参数详解 HD:主机定义 如果您希望展示当前主机,则设置 hd= localhost.如果希望指定一个远程主机,hd= label. system= IP 地址或网络名称. clien ...

  10. Transform LiveData

    查询资料的其中一个场景: 创建一个回调函数,当查询后台的时候,后台有结果了,回调对应的回调函数,并将结果保存到LiveData中. public class DataModel {     ...   ...