【Petri网导论学习笔记】Petri网导论入门学习(二)

Petri 网导论学习笔记(二)

如需学习转载请注明原作者并附本帖链接!!!
如需学习转载请注明原作者并附本帖链接!!!
如需学习转载请注明原作者并附本帖链接!!!

原创码字不易,觉得不错请一键三连吧
(ノへ ̄、)

发现网上关于Petri网的学习资源较少,这里分享的是看Petri网导论这本书的笔记(感觉相对于那个视频来说书上写的还是更详细一点,当然视频学习到第三章的笔记也会传上来,后续会主要看这本书来学习Petri网),欢迎大家来一起交流和学习,使用的学习资料是:
Petri网导论 吴哲辉著(主要)
Petri网:模型、理论与应用-清华大学

Chap1 网与子网

1.1 网与子网

Petri 网是用于描述分布式系统的一种模型。它既能描述系统的结构,又能模拟系统的运行。描述系统结构的部分称为网(net)。从形式上看,一个网就是一个没有孤立结点有向二分图

有向二分图:边有方向且节点由两个集合组成,且两个集合内部没有边的图。
在这里插入图片描述

定义 1.1

定义 1.1 满足下列条件的三元组 N = ( S , T ; F ) N=(S,T;F) N=(S,T;F)称作一个网:

1 ) S ∪ T ≠ ∅ 2 ) S ∩ T = ∅ 3 ) F ⊆ ( S × T ) ∪ ( T × S ) 4 ) d o m ( F ) ∪ c o d ( F ) = S ∪ T \begin{aligned}&1 ) S\cup T\neq\emptyset\\&2 ) S\cap T=\emptyset\\&3 ) F\subseteq(S\times T)\cup(T\times S)\\&4 ) \mathrm{dom}(F)\cup\mathrm{cod}(F)=S\cup T\end{aligned} 1)ST=2)ST=3)F(S×T)(T×S)4)dom(F)cod(F)=ST

  • 三元组 N = ( S , T ; F ) N=(S,T;F) N=(S,T;F)称作一个网
  • S S S的元素称为 S S S-元,或者叫库所(Place) →一般用⭕表示
  • T T T的元素称为 T T T-元,或者叫变迁(Transition) →一般用□表示
  • F F F是网的流关系(Flow Relation) →一般用箭头“→”表示

小白也能听懂版:

1)库所和变迁的点集的并不为空→要有库所的点变迁的点

2)库所和变迁的点集的交是空集→库所是库所,变迁是变迁,一个点不能同时是库所或者变迁

3)流关系是(库所和变迁)或者(变迁到库所)的分别笛卡尔积的并集的子集→流关系是一个有序数对如 ( s , t ) (s,t) (s,t),表示从库所到变迁或者从变迁到库所的关系,是整个库所变迁之间排列组合的所有情况的子集(而且不能同类发生流关系,比如从库所到库所,变迁到变迁

4)表示流关系的定义域和值域的并集包含了所有库所和变迁的点→表明该网系统中没有孤立点,每个点都有流关系相连接

其中:

d o m ( F ) = { x ∈ S ∪ T ∣ ∃ y ∈ S ∪ T : ( x , y ) ∈ F } c o d ( F ) = { x ∈ S ∪ T ∣ ∃ y ∈ S ∪ T : ( y , x ) ∈ F } \mathrm{dom}(F)=\{ x\in S\cup T | \exists y\in S\cup T : (x,y)\in F \}\\\mathrm{cod}(F)=\{ x\in S\cup T | \exists y\in S\cup T : (y,x)\in F \} dom(F)={xSTyST:(x,y)F}cod(F)={xSTyST:(y,x)F}

小白也能听懂版:

dom( F F F)是流关系的定义域(domain) x x x是库所或者变迁点集中的一点,且存在一个 y y y点也是库所变迁点集中的一点,且 ( x , y ) (x,y) (x,y)这一有序数对是流关系中的元素,其中dom( F F F)表示其流关系的开始节点

同理:

cod( F F F)是流关系的值域或者是上域(co-domain) x x x是库所或者变迁点集中的一点,且存在一个 y y y点也是库所变迁点集中的一点,且 ( y , x ) (y,x) (y,x)这一有序数对是流关系中的元素,其中cod( F F F)表示其流关系的结束节点

定义 1.2

设  N = ( S , T ; F ) 为一个网。对于  x ∈ S ∪ T ,记 \text{设 }N=(S,T;F)\text{ 为一个网。对于 }x\in S\cup T\text{,记}  N=(S,T;F) 为一个网。对于 xST,

∙ x = { y ∣ y ∈ S ∪ T ∧ ( y , x ) ∈ F } x ∙ = { y ∣ y ∈ S ∪ T ∧ ( x , y ) ∈ F } ^\bullet x=\{ y | y\in S\cup T \wedge (y,x)\in F \}\\x^{\bullet}=\{ y | y\in S\cup T \wedge (x,y)\in F \} x={yyST(y,x)F}x={yyST(x,y)F}

称  ∙ x 为  x 的前集或输入集, x ∙ 为  x 后集或输出集。称  ∙ x ∪ x ∙ 为元素  x 的外延。 \text{称 }^\bullet x\text{ 为 }x\text{ 的前集或输入集,}x^\bullet\text{ 为 }x\text{ 后集或输出集。称 }^\bullet x\cup x^\bullet\text{ 为元素 }x\text{ 的外延。}  x  x 的前集或输入集,x  x 后集或输出集。称 xx 为元素 x 的外延。

小白也能听懂版:

∙ x ^\bullet x x x x x的前集或者输入集,其中的元素是属于库所变迁点集中的一个且属于流关系中的开始节点

x ∙ x^\bullet x x x x的后集或者输出集,其中的元素是属于库所变迁点集中的一个且属于流关系中的结束节点

∙ x ∪ x ∙ ^\bullet x\cup x^\bullet xx 可以流向 x x x结点和可以从 x x x流出的所有结点顾名思义就是 x x x的外延,向外的延申,包括向前或者向后的

显然,一个库所的外延是变迁集 T T T的一个子集,一个变迁的外延是库所集 S S S的一个子集。对 ∀ x ∈ S ∪ T \forall x\in S\cup T xST, x x x的外延 ∙ x ∪ x ∙ ^{\bullet}x\cup x^\bullet xx都不可能是空集(否则 x x x就是一个孤立结点)。

例 1.1

图1.1是一个网 N = ( S , T ; F ) N=(S,T;F) N=(S,T;F)的图形表示,其中

S = { s 1 , s 2 , s 3 , s 4 } T = { t 1 , t 2 , t 3 , t 4 } F = { ( s 1 , t 2 ) , ( s 2 , t 1 ) , ( s 2 , t 4 ) , ( s 3 , t 3 ) , ( s 3 , t 4 ) , ( s 4 , t 3 ) , ( t 1 , s 1 ) , ( t 2 , s 2 ) , ( t 2 , s 3 ) , ( t 3 , s 1 ) , ( t 4 , s 4 ) } \begin{aligned}&S=\{ s_{1},s_{2},s_{3},s_{4} \}\\&T=\{ t_{1},t_{2},t_{3},t_{4} \}\\&F=\{ (s_{1},t_{2}), (s_{2},t_{1}), (s_{2},t_{4}), (s_{3},t_{3}), (s_{3},t_{4}),\\&(s_{4},t_{3}), (t_{1},s_{1}), (t_{2},s_{2}), (t_{2},s_{3}), (t_{3},s_{1}), (t_{4},s_{4}) \}\end{aligned} S={s1,s2,s3,s4}T={t1,t2,t3,t4}F={(s1,t2),(s2,t1),(s2,t4),(s3,t3),(s3,t4),(s4,t3),(t1,s1),(t2,s2),(t2,s3),(t3,s1),(t4,s4)}

在这里插入图片描述

对于库所 s 1 s_1 s1,它的前集和后集分别为
∙ s 1 = { t 1 , t 3 } , s 1 ∙ = { t 2 } ^\bullet{s_{1}=\{\:t_{1},t_{3}\:\}, s_{1}^{\bullet}=\{t_{2}\}} s1={t1,t3},s1={t2}
而变迁 t 2 t_2 t2的前集和后集分别为
∙ t 2 = { s 1 } , t 2 ∙ = { s 2 , s 3 } ^\bullet t_2=\{s_1\},\quad t_2^\bullet=\{\:s_2,s_3\:\} t2={s1},t2={s2,s3}
易知,在一个网 N = ( S , T ; F ) N=(S,T;F) N=(S,T;F)中,对任意 t ∈ T t\in T tT和任意 s ∈ S s\in S sS,

t ∈ ∙ s t\in^{\bullet}s ts当且仅当 s ∈ t ∙ s\in t^{\bullet} st

t ∈ s ∙ t\in s^{\bullet} ts当且仅当 s ∈ ∙ t s\in ^{\bullet}t st

从图 1.1 可以看出,在网 N 1 N_1 N1中对任意 x ∈ S ∪ T x\in S\cup T xST都有 ∙ x ≠ ∅ ^\bullet x\neq\emptyset x= x ∙ ≠ ∅ x^\bullet\neq\emptyset x=

定义 1.3

N = ( S , T ; F ) N=(S,T;F) N=(S,T;F)是一个网。

  1. ∀ x ∈ S ∪ T \forall x\in S\cup T xST

    ∙ x ∩ x ∙ = ∅ ^{\bullet}x\cap x^{\bullet}=\emptyset xx=

    则称 N N N为一个纯网(pure net)

    库所变迁中任意一点,他的前集和后集没有相同点(没有环),定义为纯网

  2. ∀ x , y ∈ S ∪ T \forall x,y\in S\cup T x,yST,
    ( ∙ x = ∙ y ) ∧ ( x ∙ = y ∙ ) → x = y (^\bullet x=^\bullet y)\:\wedge\:(x^\bullet=y^\bullet)\to x=y (x=y)(x=y)x=y
    则称 N N N为一个简单网(simple net)

    库所变迁中的任意两点,他俩的前集和后集都相等可以推断他俩是相等的(为什么这个是定义???),称N为一个简单网。

    如果两个节点的前集和后集都相等,那么它们实际上是同一个节点。这个条件确保了网络结构中每个节点的前后关系是唯一的。

    在简单网中,这种唯一性保证了网的简洁性和清晰性。换句话说,简单网没有重复的节点关系,这使得分析和理解网络结构更为直接和明确。

    这种定义方式帮助区分不同的网络结构,使得简单网在分析和建模中具有独特的属性。

    (虽然感觉这个定义很奇怪?)

  3. ∀ s ∈ S \forall s\in S sS,

∣ ∙ s ∣ = ∣ s ∙ ∣ = 1 |^\bullet s|=|s^\bullet|=1 s=s=1

则称 N N N为一个 T − T- T图( T T T-graph)

通俗地说,在 T T T-图中,每个库所都只连接着一个输入变迁和一个输出变迁。换句话说,库所是线性连接的,没有分支或合并的情况。这种结构使得 T T T-图看起来像是一条线性的路径。

  1. ∀ t ∈ T \forall t\in T tT,
    ∣ ∙ t ∣ = ∣ t ∙ ∣ = 1 |^\bullet t|=|t^\bullet|=1 t=t=1
    则称 N N N为一个 S − S- S图( S − S- Sgraph)

    同理:通俗地说,在 S S S-图中,每个变迁都只连接着一个输入库所和一个输出库所。换句话说,变迁是线性连接的,没有分支或合并的情况。这种结构使得 S S S-图看起来像是一条线性的路径。

  2. ∀ t 1 , t 2 ∈ T , ( t 1 ≠ t 2 ) \forall t_1,t_2\in T,(t_1 \neq t_2) t1,t2T,(t1=t2)

    ∙ t 1 ∩ ∙ t 2 ≠ ∅ → ∣ ∙ t 1 ∣ = ∣ ∙ t 2 ∣ = 1 ^\bullet{t_1\cap}^\bullet{t_2\neq\emptyset\to|^\bullet t_1|=|^\bullet t_2|=1} t1t2=t1=t2=1
    则称 N N N为一个自由选择网(free-choice net)

    在自由选择网中,如果两个变迁共享一个输入库所,那么这些变迁不能有其他的输入库所。这样,选择哪个变迁发生(即“自由选择”)只取决于共享的那个库所的标识,而不会受到其他库所的影响。

  3. ∀ t 1 , t 2 ∈ T ( t 1 ≠ t 2 ) \forall t_1,t_{2}\in T(t_{1}\neq t_{2}) t1,t2T(t1=t2),
    ∙ t 1 ∩ ∙ t 2 ≠ ∅ → ∙ t 1 = ∙ t 2 ^\bullet t_1\cap^\bullet t_2\neq\emptyset\to^\bullet t_1=^\bullet t_2 t1t2=t1=t2
    则称 N N N为一个扩充的自由选择网(extended free-choice net)

    在扩充的自由选择网中,如果两个变迁共享一个输入库所,那么它们的所有输入库所必须完全一样。这意味着这些变迁之间的选择是完全由它们的共享输入库所决定的,保持了一种对称性和一致性。

啊孤独摇滚

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/421691.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2-91基于matlab的LQR倒立摆控制仿真

基于matlab的LQR倒立摆控制仿真。对于xAxBu 和yCxdu标准方程,文件qiuk中用LQR函数求解控制数组K,将K值带入fangzhen文件中(文件中已代入),得到倒立摆稳定曲线。程序已调通,可直接运行。 下载源程序请点链接…

HCIP--<OSPF2>

目录 一,OSPF的不规则区域 1)远离骨干区域的非骨干区域 2)不连续骨干区域(和上面一样) 二,OSPF数据库表 三。优化OSPF的LSA(缺少LSA的更新量) [1]手工汇总:减少骨干区域的LSA [2]特殊区域&…

opencv之傅里叶变换

文章目录 前言理论基础Numpy实现傅里叶变换实现傅里叶变换实现逆傅里叶变换 高通滤波示例OpenCV实现傅里叶变换实现傅里叶变换实现逆傅里叶变换 低通滤波示例 前言 图像处理一般分为空间域处理和频率域处理。 空间域处理是直接对图像内的像素进行处理。空间域处理主要划分为灰…

react 安装使用 antd+国际化+定制化主题+样式兼容

安装antd 现在从 yarn 或 npm 或 pnpm 安装并引入 antd。 yarn add antd修改 src/App.js&#xff0c;引入 antd 的按钮组件。 import React from react; import { Button } from antd;const App: React.FC () > (<div className"App"><Button type&q…

1.C_数据结构_基本知识

相关名词 数据是什么&#xff1a; 数据即信息的载体&#xff0c;是能够输入到计算机中并且能够计算机识别、存储、处理的符号总称。这里的数据不一定是一个int型&#xff0c;也可能是一个语音、一个字符串或者其他的一些打包的内容。 数据元素是什么&#xff1a; 数据元素(…

Unity Hub自动安装指定版本Unity的Android开发环境

Unity开发Android环境要求SDK、DNK、JDK、Gradle版本都要对才能发布APK&#xff0c;自己去配置很容易出错。Unity Hub可以自动安装指定版本Unity的Android开发环境。 1.安装国内用的UnityHub&#xff08;我这里用的3.3.2-c6&#xff09; 2.找到对应的Unity版本 3.点击【从Unit…

基于EPS32C3电脑远程开机模块设计

基于EPS32C3电脑远程开机模块设计 前言 缘起&#xff0c;手头资料太多了&#xff0c;所以想组一台NAS放在家里存储数据。在咸鱼淘了一套J3160主板加机箱&#xff0c;加上几块硬盘组建NAS。 对于NAS&#xff0c;我的需求是不用的时候关机(节省功耗)&#xff0c;要用的时候开机…

”CSS 网格“二维布局系统(补充)——WEB开发系列32

CSS 网格布局是一种二维布局系统&#xff0c;用于网页设计。通过使用网格&#xff0c;你可以将内容以行和列的形式进行排列。此外&#xff0c;网格布局还能够简便地实现一些复杂的布局结构。 一、什么是网格布局&#xff1f; CSS网格布局是一种二维布局系统&#xff0c;它允许…

降维打击 华为赢麻了

文&#xff5c;琥珀食酒社 作者 | 积溪 真是赢麻了 华为估计都懵了 这辈子还能打这么富裕的仗&#xff1f; 其实在苹果和华为的发布会召开之前 我就知道华为肯定会赢 但我没想到 苹果会这么拉胯 华为这是妥妥的降维打击啊 就说这苹果iPhone 16吧 屏幕是变大了、颜色…

动手学深度学习(pytorch土堆)-03常见的Transforms

Compose transforms.Compose 是 PyTorch 中的一个函数&#xff0c;用于将多个图像变换操作组合在一起&#xff0c;形成一个变换流水线。这样可以将一系列的图像处理操作整合为一个步骤&#xff0c;便于对图像进行批量预处理或增强。 基本用法 transforms.Compose 接受一个列表…

TCP通信实现

目录 前言 一、实现TCP通信 二、通信原理 &#xff08;网路传输的封包与拆包&#xff09; 三、通信过程中的头 1.MAC帧 2. IP头 3.TCP头 4.UDP头 总结 前言 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接…

鸿蒙轻内核A核源码分析系列六 MMU协处理器(2)

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 轻内核A核源码分析系列一 数据结构-双向循环链表 轻内核A核源码分析系列二 数据结构-位图操作 轻内核A核源码分析系列三 物理内存&#xff08;1&#xff0…

使用QT界面运行roslaunch,roslaunch,roscore等

QT通过界面运行rosrun,roslaunch,roscore等 QT 运行roslaunch加入ui界面修改cmakelist运行 使用qt界面运行rosrun&#xff0c;roscore,roslaunch等方法一方法二方法三 QT 运行roslaunch 首先需要使用QT安装好ROS插件&#xff0c;并且配置好环境&#xff0c;这个在之前的文章已…

Java架构师实战篇Redis亿级数据统计方案

目录 1 Redis亿个keys数据统计方案2 Redis聚合统计(SUNIONSTORE)3 Redis排序统计(LRANGE)4 值状态统计(bitmap)4.1 位图简介4.2 应用场景4.3 常用的命令4 基数统计(SADD)5 总结想学习架构师构建流程请跳转:Java架构师系统架构设计 1 Redis亿个keys数据统计方案 在 Web 和移动…

CTFHub技能树-信息泄露-HG泄漏

目录 漏洞产生原因 解题过程 当开发人员使用 Mercurial 进行版本控制&#xff0c;对站点自动部署。如果配置不当,可能会将.hg 文件夹直接部署到线上环境。这就引起了 hg 泄露漏洞。 漏洞产生原因 Mercurial(hg)是一种分布式版本控制系统&#xff0c;它与Git类似也可以用于管…

[Linux Kernel Block Layer第一篇] block layer架构设计

目录 1. single queue架构 2. multi-queue架构&#xff08;blk-mq) 3. 问题 随着SSD快速存储设备的发展&#xff0c;内核社区越发发现&#xff0c;存储的性能瓶颈从硬件存储设备转移到了内核block layer&#xff0c;主要因为当时的内核block layer是single hw queue的架构&…

VLAN原理与配置

一、基本原理 1、VLAN数据帧格式 IEEE 802.1Q标准对Ethernet帧格式进行了修改&#xff0c;在源MAC地址字段和协议类型字段之间加入4字节的802.1Q Tag。VLAN帧最小帧长为64字节。 Type字段含义&#xff1a;长度为2字节&#xff0c;表示帧类型。取值为0x8100时表示802.1Q Tag帧…

Python 调用手机摄像头

Python 调用手机摄像头 在手机上安装软件 这里以安卓手机作为演示&#xff0c;ISO也是差不多的 软件下载地址 注意&#xff1a;要想在电脑上查看手机摄像头拍摄的内容的在一个局域网里面(没有 WIFI 可以使用 热点 ) 安装完打开IP摄像头服务器 点击分享查看IP 查看局域网的I…

日志相关知识

1.作用 a.为了代替System.out.println()&#xff0c;可以定义格式&#xff0c;重定向文件等。 b.可以存档&#xff0c;便于追踪问题。 c.可以按级别分类&#xff0c;便于打开或关闭某些级别。 d.可以根据配置文件调整日志&#xff0c;无需修改代码。 …

【CanMV K230 AI视觉】 人体检测

【CanMV K230 AI视觉】 人体检测 人体检测 动态测试效果可以去下面网站自己看。 B站视频链接&#xff1a;已做成合集 抖音链接&#xff1a;已做成合集 人体检测 人体检测是判断摄像头画面中有无出现人体&#xff0c;常用于人体数量检测&#xff0c;人流量监控以及安防监控等。…