-1

我遇到了一个花了我很多时间但我还没有解决的问题,问题是用 Python 编写的应用程序的 Petri 网的建模看起来如何?如果有任何代码和Petri网表示(建模)的例子,请告诉我,谢谢大家。

我知道 Petri 网由箭头、状态(位置)和转换(事件)组成

4

2 回答 2

1

您不能只是将任何随机程序(无论是什么语言)翻译成 Petri 网模型。模型是抽象的,因此您必须决定程序的哪些状态足够重要以成为模型的一部分。然后你必须弄清楚如何在地方用标记来表示这些状态。然后你必须弄清楚如何用转换来描述状态变化。

这听起来对你来说太模糊了吗?那是因为你的问题太宽泛了。您的 Python 应用程序可以是文本编辑器、HTTP 服务器、粒子模拟器、国际象棋游戏。在不知道您要建模的内容的情况下,我们无法帮助您创建模型。

于 2019-11-20T21:48:43.220 回答
1

即使您已经用编程语言对应用程序逻辑进行了编码,也可以将应用程序的逻辑建模为 Petri 网。还可以基于应用逻辑的 Petri Net 模型创建计算机程序(例如 JavaScript)。

将应用程序建模为 Petri 网的一种方法是将程序的变量视为位置标记、输入权重或输出权重;和计算作为输入、输出和转换的逻辑注释。

Roland Weber 提出了一个非常好的问题“你的程序的哪些状态足够重要,可以成为模型的一部分?” 如果您认为每个变量和每个计算都很重要,那么您最终可能会得到一个对于本练习来说太大的模型。因此,考虑对于这个练习来说足够小的应用程序的一部分。

欧几里得算法的 Petri 网模型”使用动态和交互式图表解释了最大公约数函数的变量与 Petri 网的元素之间的关系,并讨论了与 Petri 网模型相关的各种注释。

于 2020-02-09T03:24:22.927 回答