uppaal是由瑞典Uppsala大学的信息技术学院和丹麦Aalborg大学计算科学学院联合开发的一个集成工具环境,被用来对转换时间自动机网络模型的实时系统进行建模、仿真和验证。与其他模型检测工具相比,uppaal有很好的高效性和实用性。时间自动机是一个有时钟变量扩展的有限状态机,它使用时间变量评估为实数的密集时间模型,所有时钟同步进行。在uppaal中,一个系统被模拟成一个并行的几个这样的时间自动机网络。系统的状态由所有自动机的位置,时钟值和离散变量的值来定义。每个自动机可能会分别触发一个边或与另一个自动机同步,从而导致一个新的状态。
该博文的模型在uppaal4.0.14上实现,uppaal有三部分组成:编辑器、模拟器、验证器。这三部分的功能分别是:
- 编辑器对模型进行编辑,并进行系统声明和模型声明。编辑器分为两部分:访问不同模板和声明的树窗格以及绘图画布/文本编辑器。
- 模拟器对建立好的模型进行仿真,若所建立的模型符合语法要求,则模型会成功上传并仿真出结果;
- 验证器对模型应该满足的性质进行验证。
该模型有四列火车和一个门组成,在一个时间点只能有一辆火车通过门,下面是建模、仿真、模型性质验证的过程:
建立模型
- 首先建立火车(train)的模型,并分别进行