一直想把之前看有关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. Docker部署Jekyll

    1. 起因 前两天终于下单买了个域名,10年的使用期限.既然有了域名,那自己的博客就可以搞起来了. 现在博客的记录用的是Jekyll+Github Pages,所以决定之后自己的博客网站也采用Jeky ...

  2. 从嘉手札<2023-11-13>

    1. 很多时候 成功并不等同于成长 成功是很多因素复合形成的一种结果 而并不等同于一个人阅历的丰富.认知的提高 2. 我一直认为 世界不属于投机者 也不属于堕落者 信念感在这个大数据泛滥.碎片化汹涌的 ...

  3. CF452F Permutation 与 P2757 [国家集训队] 等差子序列 题解

    两道基本一样的题: 题目链接: P2757 [国家集训队] 等差子序列 Permutation 链接:CF 或者 洛谷 等差子序列那题其实就是长度不小于 \(3\) 的等差数列是否存在,我们考虑等于 ...

  4. 《ASP.ENT Core 与 RESTful API 开发实战》-- (第5章)-- 读书笔记(中)

    第 5 章 使用 Entity Framework Core 5.3 重构仓储类 创建一个通用仓储接口 namespace Library.API.Services { public interfac ...

  5. 永久解决 WSL vm.max_map_count 65530 is too low 的问题

    问题 在使用基于 WSL 的 Docker 的时候,启动 ES 总是会出现 vm.max_map_count 65530 is too low 问题,导致容器无法启动,网上答案基本就两种,例如 sta ...

  6. 服务端渲染SSR的理解

    服务端渲染SSR的理解 SSR服务端渲染Server Side Render就是当进行请求时,页面上的内容是通过服务端渲染生成的,浏览器直接显示服务端返回的HTML即可. 客户端渲染CSR 通常在构建 ...

  7. ElementUI导入Excel文件

    功能介绍 最近用ElementUI做管理系统需要把excel数据导入到系统内,我想这是一个很常见的功能点,把它分享出来,希望对大家有所帮助:) 实现效果 实现步骤 1.定义导入组件 <el-up ...

  8. c++STL用法总结

    一.vector的用法 vector<int> vet; 1.排序:sort(vet.begin(), vet.end()), 时间复杂度O(nlogn) 2.查找:if(find(vet ...

  9. Redis客户端汇总

    编程客户端 已经支持了许多编程语言,详见:https://redis.io/docs/clients/ 图形客户端 1.Another Redis Desktop Manager 支持哨兵, 集群, ...

  10. lock锁,Semaphore信号量,Event事件,进程队列Queue,生产者消费者模型,JoinableQueue---day31

    1.lock锁 # ### 锁 lock from multiprocessing import Process,Lock import json,time # (1) lock的基本语法 " ...