从 A 到 Z 的建模/废物管理系统建模
看来,核电站将在可预见的未来与我们同在。此外,重要的不是发电,而是管理产生的废物。
废物管理并非核电领域的独有现象。当前,为了应对气候变化和全球变暖,迫切需要一场绿色革命,而这场革命的关键取决于如何回收或焚烧塑料等石油产品。许多国家都存在着猖獗的非法倾倒现象。
在本节中,我们将从核工业中借鉴的一个废物管理方面进行研究,并展示它如何被重新用于一般的废物管理。这种发展本身说明了 (软件) 过程改进中的一个普遍原则。真实的系统不断发展和迁移。它们很少从头开始。任何软件开发计划都应该遵循与系统相同的过程改进以实现匹配。
跟踪就像搜索。它依赖于地址。现在我们知道,地址可能是放置 cookie 或 RFID 标记的问题。
我们将通过查看一些已经发表的作品来开始我们的模型。也就是说,我们不会假装有任何原创性或创造性。我们的起点将是“跟踪管理器研究”(TMS)[1],该研究是在“计算机跟踪系统在核电技术安全案例中的应用研究”[2]中进行的。
本质上,有两种类型的事物:容器和放入容器中的东西。不同类型的容器很容易辨认出来。在 TMS[3] 中,有 5 种容器
我们已经从之前关于 Alloy 的工作中知道,我们可以为 Container 引入一个抽象签名,并将 5 种容器类型作为扩展引入
abstract sig Container {}
sig Crate, Package, Liner, Puck, Drum extends Container {}
放入某些类型容器中的那些东西可以称为材料。在我们对 TMS 的第一次研究中,我们将只关注 4 种材料类型[6]
- 玻璃
- 塑料
- 金属
- 液体
就像上面的 Container 一样,我们为 Material 引入了一个抽象签名,然后四种材料类型就成为扩展
abstract sig Material {}
sig Glass, Plastic, Metal, Liquor extends Material {}
最后,对于本介绍,要注意的是,废物管理系统中的处理阶段可以类似地分类
abstract sig Phase {}
sig Unpacking, Sorting, Assaying, Compacting, Exporting extends Phase {}
除了使用“Phase”这个词,人们可能更喜欢“Process”。以下是建模的阶段列表
- 开箱 (箱)
- 分类 (内容)
- 化验 (材料)
- 压实 (材料)
- 出口 (物品)
这是对以下文献中描述的跟踪系统的重新建模
- John Fitzgerald 和 Cliff Jones,1998 年,第 1-28 页
- John. S. Fitzgerald,1999 年,第 69-94 页
- John Fitzgerald 和 Peter Gorm Larsen,第 137-201 页?
一个详细的系统形式模型距离实现只有一步之遥。这一步包括对形式数学表达式的推演。这种推演是硬件和软件的混合。其中大部分将是现成的。其中一些将必须是手工制作的。但是,在我们进入这个详细阶段之前,我们需要一个抽象的鸟瞰图。这种概述将抓住所有事物的本质,并且将是容易理解的。以下是 Alloy 支持的这种高层概述。
跟踪管理系统 (TMS) 监控着材料容器在工业厂 (IP)(如废物管理设施 (WMF))中经过各个处理阶段时的位置。
每个容器只容纳一种类型的材料,并且一次最多只能处于一个处理阶段。每个处理阶段都有一个最大容器容量,并且只能接受某些类型的材料。
在任何时间点,TMS 的系统状态必须记录
- WMS 中每个容器的材料类型内容目录。简而言之,这只需通过 cntCatalog 来表示
- 每个处理阶段的容器集合。
- 每个处理阶段的阶段属性
- 最大容器容量 (maxCapacity) 和
- 可接受的材料类型 (mtrType)。
在任何时间点,TMS 的系统状态都必须满足以下系统状态约束
- 每个容器最多只能容纳一种类型的材料。每个容器在给定时间最多只能处于一个处理阶段。每个处理阶段最多只能有一个最大容量值。
- 所有处理阶段都记录了阶段属性:最大容量和可接受的材料类型。
- 工业厂中的每个处理阶段的最大容量至少为 1。
- 任何给定处理阶段中的容器都记录了材料内容。
- 活动处理阶段记录了阶段属性:最大容量和可接受的材料类型。
- IP 中的每种材料类型都有一个可能的处理阶段。
- IP 中的每个阶段都在容量范围内运行。
- 在任何阶段,该阶段中的所有容器都包含预期类型的材料。
TMS 有一些操作可以修改系统状态
- initOp:指定 TMS 初始状态的属性。
- insertOp:将一个新的容器(其内容是给定材料类型)添加到工业厂容器目录中。(以前是引入操作)
- remOp:从给定的处理阶段中移除一个容器
- delOp:从容器内容目录和跟踪系统中删除一个容器。
- permitOp:决定是否允许将容器移入给定阶段。
- moveOp:将容器移入跟踪系统中的给定阶段处理。
模块 TrackingManagementSystem -- 简称 TMS
打开 util/relation 作为 rel -- 二元关系模块。
打开 util/natural 作为 nat -- 自然数模块。
打开 util/boolean 作为 bool -- 布尔模块
标识 Container, Material, Phase {} -- 容器、材料类型和处理阶段。
标识 SystemState {
cntCatalog: Container -> Material, -- 容器目录。
trkSystem: Container -> Phase, -- 跟踪系统。
maxCapacity: Phase -> Natural, -- 阶段最大容量记录。
mtrType: Phase -> Material -- 阶段材料类型记录。
}
我们从之前对 Alloy 的工作中知道,这些信息足以让我们可视化元模型的结构。
[1]
断言 FieldTypeCns(s: SystemState) {
functional[sysState.cntCatalog, dom[sysState.cntCatalog]]
functional[sysState.trkSystem, dom[sysState.trkSystem]]
functional[sysState.maxCapacity, dom[sysState.maxCapacity]]
dom[sysState.maxCapacity] = dom[sysState.mtrType]
所有 phase: dom[sysState.maxCapacity] | sysState.maxCapacity[phase] != Zero
}
[2]
断言 TrackerContainerCns(sysState: SystemState) {
dom[sysState.trkSystem] 在 dom[sysState.cntCatalog]
}
[3]
断言 TrackerPhaseCns(sysState: SystemState) {
ran[sysState.trkSystem] in dom[sysState.maxCapacity]
ran[sysState.trkSystem] in dom[sysState.mtrType]
}
让我们从容器开始?想象一下你在一个建筑物里,里面有用于
- 处理空水瓶的容器,
- 使用过的喷墨墨盒,
- 使用过的电池,以及
- 废纸。
这些容器每周都会由垃圾公司NoWasteNoWant收集,并运送到城市里的废物管理设施。
当我们谈论“空水瓶”时,我们想到的是塑料或玻璃材料。现在,我们将只限制自己使用两种类型
- 玻璃瓶
- 塑料瓶
为了第一个废物管理模型。我们将假设只有两种类型的容器
- 湿容器 — 用于所有液体物质,即塑料瓶或玻璃瓶。
- 干容器 — 用于其他所有东西
- ↑ TMS 是我们的首字母缩略词。它代表Tracking Manager Study。在计算机科学中广泛使用首字母缩略词。这个习惯可能是由于编程变量的概念。验证这个假设会很好。我们将在自己的废物管理系统模型中使用这个首字母缩略词。但在这种情况下,TMS 代表Tracking Management System。首字母缩略词可以灵活,即使模棱两可。
- ↑ Fitzgerald&Jones 1998,第 28 页。
- ↑ Fitzgerald&Jones 1998,第 3 页
- ↑ 斯坦福大学 SLAC 的通用冰球的例子可能可以说明冰球是什么,它可能是什么样子,以及它如何使用。
- ↑ 报告 WSRC-MS-98-00571 对核废物管理问题进行了非常好的概述,包括关于使用冰球的非常有用的文本。
- ↑ Fitzgerald&Jones 1998,第 3 页。
- Bicarregui,Juan Carlos(编辑),(1988)。VDM 中的证明:案例研究。伦敦:施普林格出版社。 ISBN 978-3540761860.
{{cite book}}
:|first=
has generic name (help); Cite has empty unknown parameter:|coauthors=
(help)CS1 maint: extra punctuation (link) - Fitzgerald,John(1998)。“跟踪系统”。在 Bicarregui,Juan Carlos(编辑)中。VDM 中的证明:案例研究。伦敦:伦敦:施普林格出版社。第 1-29 页。
{{cite book}}
: Cite has empty unknown parameter:|coeditors=
(help); Unknown parameter|coauthors=
ignored (|author=
suggested) (help)
- 法国核能 最后访问 {2008-08-14}
- 通用冰球 最后访问 {2008-08-14}
- 报告 WSRC-MS-98-00571 拟议中的新的 DOE 远程设施概述 - 为下一个世纪设计 最后访问 {2008-08-15}
- 世界知识产权组织 (WIPO):(WO/2006/005905) 废物处理和最小化方法 最后访问 {2008-08-14}