当前课程知识点:Petri网:模型、理论与应用 >  第四章 网论 >  4-10 实例与方法——电梯控制 >  第四部分

返回《Petri网:模型、理论与应用》慕课在线视频课程列表

第四部分在线视频

第四部分

下一节:Video

返回《Petri网:模型、理论与应用》慕课在线视频列表

第四部分课程教案、知识点、字幕

另外一个办法就是刚才我说的

用有色网系统来这个表达电梯系统

这个有色网系统呢

我这里定义的跟大家在文献当中

看到的有色网系统可能不太一样

大家在我文献里面看到的

有色网系统呢是用变量的

我这儿呢不用变量

因为它跟变量没关系

那个引进的叫变量

其实它不是变量

因为我记得我在课上说过

程序变量是要起到

在不同的语句之间传递信息的作用

本质上来讲那个不是变量

虽然它有一个变量的形式出现

我们这个定义

不借用变量这个东西

这个是一个有色网

一个变迁两个这个s元素

这个变迁t跟它相关的

有一种东西叫做发生色

就是颜色

occurence colour

这个发生色呢是一个集合

就是它可以按照不同的颜色来发生

比方说我们那个教堂婚礼

从休息变成就绪状态那个变迁

它就可以以神父的那种颜色发生

也可以以新人的颜色发生

所以它的发生色呢就是两种

神父色或新人色

这就是这个发生色

另外发生色呢

它可以按照不同的颜色来并发

比方说神父跟两个新人都在休息

那么这个时候

就可以一个一个的变成就绪

也可以两个

比方说两个新人同时

也就是这个变迁呢

是两个发生权同时发生

变迁发生的时候呢

有可能是以一种颜色发生

也可能是以两种颜色发生

也可能是由几种颜色的一个多重集发生

就是某种颜色多个

其它的颜色一个等等

那个呢就叫做并发

所以C(t)是t的发生色的集合

C(t)底下加个m呢

就是这种集合的多重集

另外每一个库所

它都有一个库所就是token色

它里面能够装什么颜色的token

然后呢弧

弧上面是什么呢

弧上面是一个映射

现在这个变迁

按照什么颜色发生

我这个映射呢

就根据你这个颜色

找到它需要消耗的或可以产生的

那个token的颜色以及个数

所以这就是这个映射

f或f′呢是映射

是从发生色这个多重集

到token色的多重集的一个映射

我这里没办法细讲啊

就是你要是有兴趣的话

可以去看看书

那么有色网系统的定义呢

就是一个变迁跟库所

它的两种颜色

颜色的多重集

以及颜色之间的映射

就是我们这个需要的基本概念

那么为什么我这里要专门讲这个

讲这个有色网系统呢

而且讲的比C_net多呢

尽管它不是一个还不直接就能变成程序

因为在有色网里面

我引进了四种可以大大的减少

这个有色网的结构复杂度的

四种新的弧

有了这四种弧以后

我们这个电梯系统呢

就可以表达的比较简单

第一种弧叫做约束弧

大家都已经学过约束弧

就是从这个库所到变迁有一条弧

这个弧的箭头呢是一个小圆圈

它呢指到这个t元素

就像我们这看到的这个a

就是一个库所跟这个变迁连

但是呢那个一个小圈做箭头

这是个约束弧

在PT系统里面

这种约束弧的意思是什么呢

就是在s这个里面没有token

没有token t才能发生

有token t就不能发生

这是我们过去说的约束弧

有色网系统呢

这个约束弧呢就扩展了

它不是说有没有token的意思

而是按照这个映射f

看看你这个t要是按照这种颜色

或者这种颜色的组合来并发的话

按照f我们可以算出来

它到底需要这个s里面

有哪种颜色的token有多少个

那么这个约束弧呢就告诉你

按照这样的映射

所需要的那些颜色的token

是不是没有

如果没有 它就能发生

如果有 它就不能发生

这个a呀是这个t的发生颜色

然后f(a)就是按照a的颜色发生以后

需要的这个token数

这个约束弧呢就要求

在m(s)里面没有所需要的这些

就是f(a)所计算出来的那些token

以及颜色和数量等于空集

所以这是第一种约束弧

看第二种约束弧这个小圆圈呢

跑到另一边去了

跑到库所这边去了

这个时候这个约束弧

约束的是什么意思呢

刚才那个约束弧是说要求它没有

我们这个呢是要求它一定要有

说如果你s里面

有我s算出来的那些

正好就是那么多

这种颜色的这个token你有

而且数量也是跟f(s)要求的一样

你有那我这个t呢就能够发生

但是我们讲的这是约束弧

我只要看看你有没有就行了

第一种呢是说没有

我能发生

第二种呢是有我能发生

但是这个不改变

你有就有 还是有

你没有 就是第一种约束弧

看看你没有

没有你就没有

有 你就有

我不改变你

当然我只是要看看

这是我这个变迁发生的条件

所以呢这个呢就叫做约束弧

这个底下这个图呢

就是约束弧的语义

就相当于一个自环

要求它有但是不改变它

就像那个催化剂一样

必须要有 但是我不改变你

第二个呢就是柔性弧

柔性弧呢就是

这个可变性有点柔性

就是可以有点灵活性

这也有两种

一种呢是这个圈儿在这边

注意啊

约束弧是一头有圈一头没箭头

这个柔性弧呢

是一头是圈一头是箭头

它是什么意思呢

我们看这个图

这就解释了它的意思了

第一种柔性弧就是

你这个变迁想发生了

你有 你正好没有可以

你有也行

这就是柔性

这个柔性弧到底什么意思

就是这张图

柔性弧的原像

就是左边这是柔性弧的原像

这个右边呢

就是我们现在用柔性弧来表示

原像的这个复杂的结构

我们用右边这个图来表示

上面这个图呢就表示

你s元素里边有f所要求的那个

颜色的token也好是没有也好

这个t都能够发生

这个下面呢就是说

你有也罢没有也罢

我都给你加上就是这个意思

你原来没有我就给你加上

你原来有还是那个

我不给你新加

就是柔性弧柔就柔到这个地方了

有也好没有也好

我都能发生

你有也好没有也好

我都让你有

你原来有的我不动

你原来没有我给你加上

所以这就叫柔性弧

那么下面呢就是组合弧

组合弧呢我们看上层下面也是

上面的这个呢是输入的组合弧

下面呢是输出的组合弧

就是就像我们的电梯一样

它有好多个s元素要

是这个ustop的这个前集

所以我把它合在一起

这个我这儿只画了两个

但是实际上它可以不只两个

可以三个四个五个六个都可以

如果这个f1 f2是相同的

我们就把它写在一块

不写在分别的那个箭头上面

而是写在统一的那个箭头上面

然后上面的呢就是要求

这两个里面只要有一个

有这个f所要求的资源就行了

底下那个呢是输出按照f输出

到底输多少呢这就是我们的定义

这个输入弧

就是这个输入的组合弧要求

你可以正好有那么多也可以没有

但是至少要有一个有

至少要有一个有

刚才我不说

f1可以是两个可是是三个

可以是四个吗 那库所

其中每一个都是要么就有

要么正好那么多 要么没有

那么但是至少要有一个有

那么这个发生以后呢

就是把有的那个就是去掉它

注意这个减号就是Ms-f i

这是多重级的减法

就是不管你原来有没有

你原来没有减f S等于不减

你原来有的我就给你去掉

这就是输入的组合弧是那样的

然后输出的组合弧呢

就是你有也罢没有也罢

但是至少要有一个没有

就是输出的地方啊

那些s元素我都要接受输入

这个变迁都要向电脑输出

那么至少你要有一个没有

这样我输出才有意义对不对

所以呢它的发生条件就是

可以有 可以没有

但是至少要有一个没有

另外发生以后

大家就都有了

你原来没有的我给你补上

你原来有的我不管了

我就不改变你

这就是这个组合弧

组合在一起至少有一个有

至少有一个无这就是那个

组合弧的原像

这个就是刚才我这个意思

那输入的组合弧呢至少有一个有

输出的呢至少有一个无

这样有一个有我去掉才有意义

至少有一个无我加上才有意义

所以我不要求它都有也不要求它都无

至少一个这就是组合弧

还有一种呢是因果弧

因果弧呢是这样的表示

它这是什么意思呢

就是输出受到输入的影响

就是输入呢可以有也可以没有

你看第一行就是要么等于空

要么等于f i

如果是有或者没有的话

那么这个输入的地方

就是m’里面这个第一个

属于输入的库所里面怎么改变呢

我不管你有没有我把它去掉

去掉这个减号是多重集的减

原来它没有等于不减

原来它有就把它去掉

那么输出的地方

就是s2里面的怎么变呢

如果你原来输入里面没有

那么我输出里面也没有不改变

如果你输入里面原来有

那么我输出里面呢就要加上是因果

就是因为你里面输入的地方有

所以我输出的地方也要输入一点

你要是输入地方没有

那我输出的地方不改变

这就是因果弧

有因才有果没有因就没有果了

这个呢就是这两种

我就不去细说了

它们的原像就是这样的

第一个原像就是可有可无

第一个约束弧表示无

第二个不是约束弧表示有

那么如果你要是无呢

它的输出就不改变

你要是有呢

它的输出就按照f2来输出

那么第二种约束弧呢

就是说你没有

输入也没有输出也没有

那就这个大家都不改变

你输入没有但是输出有

那么就是按照你还是输出也不改变

你原来就有了

第二种就是你输入有

那么我输出呢就要给你加上

所以这就是这个图形的表示

所以总之一句话这种弧是表示什么

输出受到输入的影响

输入要是有我那边就改

如果输入没有我就不改

好 我们要用这四种弧呢目的是什么

来表达来描述这个电梯控制系统

我们知道电梯控制器呢

有一次我刚才讲的那个ustop

它就是5个变迁太麻烦了

另外我还刚才讲了

如果我们引进了那些细节

比方说电梯那个按钮的反复的按呢

那个反复的让你走不了啊

等等这些问题的解决

我们需要引进这个S元素新的s元素

那些s元素的引入会使得这个

变迁呢变得一下子增加很多

所以我们用有向网

用这些带有灵活性的弧来描述呢

那变迁就变少的多了

那么我这给出的呢

是这个电梯系统的颜色集

我不能给全了

给全太细你也听得没兴趣了

给你一个大概的意思

那么有兴趣呢你自己去看

比方说这个楼层的颜色

楼层的颜色当然就是12345

一直到M对吧

就是以这个楼层数作为它的颜色

那么上升一层

这个变迁能够以什么样的颜色发生呢

当然是1到M减1

因为你到了顶层M层以后

你就不可能再上升了对不对

所以上升一层的发生色是1到M-1

也就是说D里面呢剪掉这个m

这个D D底下一横表示我少了一个顶层的

只是下面这些层数

下降一层 那你到了一层

不可能再下降一层了对不对

所以它的发生色呢就是二层到M层

所以在D这个楼层色里面呢去掉一层

这个上升

当然就是刚才我们讲的

就是这个上升的颜色D底下一杠

那么下降呢就是D上面一杠

这个只考虑上面那些层数一层不需要了

那么改变方向呢

从上升方向改成下降方向

一层不需要改成下降方向吧

因为一层你不可能下降

所以一层不需要改

二层以上才需要改成下降方向

那么下降改成上升呢

那当然m层就不需要改了对不对

m层如果下降方向

它就永远是下降方向

不会再改成上升的方向

因为m层不可能再上升等等

这就是下面我列出来的

那些所有的ustop等等

这些变迁它的颜色的集合

那么库所的这个token颜色呢

U_at它当然电梯可以在任何一层

所以U_at D_at是它的颜色它的token

是可以1到m就是这个D

那么open呢也是任何一层它都可以开门

那么电梯里面的楼层button呢

是一层到m层都可以

因为这个在电梯里面

你可以按任何一层的button

那么上升呢

当然只有1层到M-1层

M层没有M层大家都知道

在顶层是不会有上升的button的

那么一样1层也没有下降的button

这个呢就是来找活的那个变迁

因为这个稍微复杂一点

我用这个做例子呢

可以跟大家解释一下

这里面有一个Pr1 Pr2

这个u_readfd就是Fd啊

就是读这个下降的

因为这个比较复杂

上升的时候

我来读下降的这个button

大家知道这个读的时候

是需要两个楼层的

我这个电梯在几层在i层

我读的那个下降的button

是在哪一层

就是第二层就是g

所以这个u_readfd呢

它的发生色呢就是一个

混合色不是单色是两个颜色

一个是i就是几层读

一个就是g读几层

所以是双色

这个Pr1呢就是第一个颜色

就是在哪一层读

Pr2呢就是读的button在哪一层

那么我们看这个U_at是Pr1

那你一定要在这一层

所以这个U_at呢它的权是Pr1

那就是说你这个U_at里面

一定有i这一层的button

你才能够读在i一层读

那么然后这个因为你

现在是读的Fd

所以一定L没有

就没有电梯里面的button被按了

也没有楼层的上升button按了

所以那个L表示的

就是没有那个button

这个电梯里面的button按了

这个ab?Pr1是什么意思呢

ab就是buff

在Pr1就是i层以上都没有

电梯里面的button被按了

然后这个Pr2

给它放一个token在里面

我们说了读的话要ustop

作为它的最后一个要求

就是你到了这里一定要停

后来我们又说这ustop呢

可以跟这个L呢合并

所以我读完了以后在L

第二个L界里面

放上一个button这就是停

到了这个L界以后一定要停下来

然后这个Fu

这是楼层的上升button

这个ab Pr1就是abuff Pr1

就是i层以上一直到m

这是个约束弧

都没有Fu的button被按下了

然后Fd Fd呢它的权是Pr2

就是说第二个颜色的token

在这个Fd里面一定要有

然后我还有一个Fd’也是Pr2

我在这个读了这个button以后

我要留下一个记号就是Fd’

这个Pr2就是这个

然后这里有个要说的就是个ud

ud呢是我们新引进的一个库所

这个里面记录的就是什么呢

就是你在上升的过程当中

不过哪一些Fd

就下降了button

要求楼层button

那么如果你读过了

我在读第二个的时候

因为我读的第一个

一定比你读的第二个要低

所以我这里只要记下来

最早读的那个

比较楼层低的就行了

楼层高的因为我调转方向以后

我会为第一个读的Fd服务

我一定会从第二个那里通过

所以呢就不需要第二层了

比如说我读了一个Fd8

就是说我在上升过程的

第三层的时候读了个Fd8

那我就承诺了我要到第八层

下降的方向开门服务

然后我又多了一个

比方说Fd13

那么我只要记住

我已经读了Fd8了

我就用不着记Fd13了

因为我一定要到第八层来下降方向

那我肯定要从13那里过

一定就顺带就服务了

所以这个ud呢就是记录

最小的那个我读了个Fd的button

这它是一个因果弧

我读过就是这个

bm就是表示button是1

因为1层没有这个Fd

我们的1层没有下降的button对不对

所以这个如果是1的话

那我就知道我还没有读过Fd

所以呢这个Pr2呢就要记下来

如果不是这个1

那就表示我已经读过Fd了

所以就不需要记了

所以这是一个因果弧

你如果是1没有读过

我就把现在

我读的那个楼层记下来

如果你不是1那我就不用记了

因为已经记的那个肯定比我小

我一定顺带就把

现在的这个服务掉了

所以这个呢

就是最复杂的那个readfd

它的这个有色网的变迁

咱么看这里面就只有几个

干干净净的几个这个库所元素

引进了那个因果弧以后

我们就可以清清楚楚的表达出来

我们提供这个

就是留下的那个Fd’

它起什么作用等等

这个呢就是比较复杂的

一个readfd

那么这张图呢就是readL和readFu

那么这个呢就比它简单

所以我就不去细说了好吧

你有了这个以后

这个就很清楚就可以

这个很容易的就能够理解了

这张图呢是u_stop和u_close

你看这个u_stop

刚才我说有五个变迁对吧

现在我们就一个变迁了

它有一个组合弧就行了

这个组合弧就是什么

你L你Fu你Fu’

只要里面有一个

我们刚才讲了吗有

只要有一个有

它就可以发生了

然后这个发生以后呢

它们就全都没有了

然后这就是u_stop

那个u_close不需要什么条件

当然这个电梯控制室要开门

要有一定时间的对吧

我开门留多长时间然后我就关门

这个是有个定时的

这个不需要我们控制

这是硬件自己就保证了

所以这是u_stop

我们看五个变迁呢

就有一个就够了

我们用这个组合弧

就把它给表达出来了

这个up呢也是

这个id呢就是

就是这个颜色

up从一层的M-1层都可以上升

那么这个id呢就是说

就是你在的这一层的颜色

所以条件就是我在

某一层U_at这个有一个id

就是我就在这一层

那么然后呢

这个也没有上升的要求

也没有上升顺带的要求

也没有上升层的要求

U_req是上升的要求

这个Fu id没有

Fd’没有L没有

这就表示没有停在这一层的需求

然后U_req呢这个nu是什么意思啊

nu是next up

就是我要上升一层

next up就是i+1

如果我U_at是在i层的话

那么这个next up就是i+1

所以up的要求就是

没有L没有Fu没有Fu’

然后呢我就有这个上升一层的需求

我就上升

然后呢这个next up呢

这个底下这个U_at

这个库所里面

得到的就是i+ 1

i+1的token

那个颜色的一个token

这是next up

我在i层 我现在上升了

变成i+1了

这个呢就是改变方向

改变方向里面呢

有几个我再解释就是ab

刚才我说了就是a buff

a buff Pr1就是在i层以上

这个nuPr1就是Pr1上面一层

next up就是Pr1的上面的一层

这个Pr1上面一杠呢跟Pr1有点不同

你看要改变的话如果它是

这个看它是不是

在第一层改变方向

它不可能在第一层改变从这个

上升方向改变成下降方向

所以呢如果要是不在一层的话

不等于一的话

这个Pr2就表示不等于1的话

那么它就等于Pr2

这个就是改变方向

到现在为止呢

这是用有色网用C_net

来表达这个电梯控制系统

那么都可以

有色网可以大大地减少

变迁的个数

但是符号比较复杂一大堆的符号

但是写成程序的话应该是没问题

不要人来理解

那么C_net呢直接写出来

它就是一个程序了

用有色网这个颜色来控制

那么就会避免那个

反复的按那个那种情况

电梯控制呢我到这儿就讲完了

我们应用呢

讲了一个哲学家问题

我们看由于petri网的理论的指导

局部确定

这个还有消减冲突

基本现象冲突的发现消减冲突

你知道讨论公平性

讨论效率的高低

那么我们完成了一个

可以说是一个小小的课题的研究

而不像这个一般把这个

哲学家就餐问题

当成一个死锁问题

简简单单的说我把死锁解决了

其实避免死锁那个解

并不见得是个好的解

而失去了能够理解很多

性质的这个机会

而这个电梯控制呢

我们从全局控制到局部确定

然后找到了

通过petri网的变迁这个特点

一个一个变迁它有局部的外延

我们从局部入手

然后找到了每个局部的

局部的完全描述

也就是说变迁和它的外延

然后呢通过外延把变迁连在一起

变成一个完整的系统

而且用C_net写出来

它本身就是一个程序

所以我们就完成了程序的设计

不仅仅是一个petri网了

Petri网:模型、理论与应用课程列表:

第一章 概述

-概述

--Video

第二章 有向网

-有向网

--Video

第三章 Petri网

-3-1 Petri网定义

--Video

-3-2 Petri网层次系统

--Video

-3-3 基本网(EN)系统

--第一部分

--第二部分

--第三部分

--第四部分

-第三章 Petri网--3-3 基本网系统课后思考题

-3-4 条件-事件(C-E)系统

--Video

-第三章 Petri网--3-4 条件-事件系统课后习题

-3-5 库所-变迁(P-T)系统

--Video

--Video

--Video

--Video

--Video

-3-5 库所-变迁(P-T)系统课后习题--作业

-3-6 网系统层次

--Video

-3-7 高级网系统

--Video

-3-8 化简网系统

--Video

-3-9 非线性网系统

--Video

-3-10 小结

--Video

第四章 网论

-4-1 前言

--Video

-4-2 网拓扑

--Video

-4-3 并发论

--Video

-4-4 网逻辑

--Video

-4-5 信息流网

--Video

--Video

-4-6 同步论

--Video

--Video

-4-7 同步论-合同实例

--Video

-4-8 同步论-婚礼教堂实例

--Video

-4-9 同步论 同步器

--Video

-第四章 网论--思考题1

-4-10 实例与方法——电梯控制

--第一部分

--第二部分

--第三部分

--第四部分

-4-11 建模方法论

--Video

-4-12 汉诺塔问题

--第一部分

--第二部分

-第四章 网论--思考题2

第五章 业务流程管理

-5-1 工作流管理联盟

--Video

-5-2 工作流网(WF_net)

--Video

-5-3 Artifacts

--Video

-5-4 BPMN2.0

--Video

-5-5 学界

--Video

-5-6 业务流程管理(BPM)

--Video

-5-7 BPM建模

--A of ARM

--R of ARM:物理对象相关性

--R of ARM:同步器回顾

--R+M of ARM:业务逻辑

--M of ARM:化简规则

--R+M of ARM:案例语义

--R+M of ARM:管理逻辑

--M of ARM:BPMA

-5-8 流程举例

--第一部分

--第二部分

-5-9 流程之外

--Video

-Petri网小结

--Video

--Video

第六章 过程挖掘

-6.1 过程挖掘基础

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

-6.2 过程挖掘工具

--Video

--Video

-6.3 过程挖掘算法介绍

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

-6.4 未来研究方向

--Video

第七章 科研思考

-7.1 科研三要素

--Video

-7.2 Program today

--Video

-7.3 Program yesterday

--Video

-7.4 Theory of Programming

--Video

-7.5 A of ARM

--Video

-7.6 R of ARM

--Video

-7.7 M of ARM

--Video

-7.8 OESPA

--Video

-第七章 科研思考--习题

第八章 总结

-8.1 树个靶子

--Video

-8.2 八卦与自然

--Video

-8.3 结束语和感谢

--Video

-第八章 总结--习题

第四部分笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。