FAST项目(基于智能体的系统基础技术)是一项为期三年的研究和开发工作,与位于纽约州罗马的空军研究实验室签订合同。该项目从一开始就由美国海军赞助,在项目的后期,美国空军也做出了额外的贡献。
该项目的主题是探索新的建模方法和基于模型的软件生产技术,以提高所开发软件的质量,同时缩短开发时间,提高设计的可重复使用性。在模型驱动的软件和系统开发,以及海军的任务工程有很大的相似性。传统上,这两个过程都是以自下而上的方式开发,而自上而下的方法则更有针对性和前景。这种自上而下的方法的最初步骤必须是一个概念模型,概述基于一组给定事实达到预期目标所需的所有(概念)决策。对于任务工程来说,这个决策建模器有助于确定所有需要做出的关键决策,以及相应的任务,以便规划和执行一个成功的任务。对于软件或系统工程师来说,决策建模器概述了设计中的系统的关键语义和相应结构。虽然存在对系统工程的建模支持,在某种程度上也存在对软件工程的建模支持,但没有任何工具支持将决策建模器作为系统或软件设计模型的一个完全集成部分来建立。因此,由于其根源在于系统建模语言(SysML),任务工程也缺乏决策建模能力。
我们通过为统一建模语言(UML)建模工具MagicDraw(又名Cameo)开发决策建模器能力,作为一个可加载的插件,与商业上可用的插件,如SysML、UAF等兼容,缩小了这一差距。决策建模器实现了决策模型和符号OMG标准所定义的决策需求图的增强型变体,但在其他方面偏离了OMG标准,以提供更复杂的决策表达建模、决策仿真能力,以及与SysML(v1.x)的无缝集成能力。为了在更大的仿真场景中进行协作,我们为MagicDraw开发了第二个插件(名为SimCom),允许决策建模器的仿真能力与外部仿真系统(如高级仿真、集成和建模框架(AFSIM))之间进行实时协作。SimCom插件实现了一个受 "高级架构"(HLA)仿真协议启发的轻量级协议。我们用决策建模器和AFSIM之间的协作场景展示了这种能力。
虽然决策建模器的工作使我们偏离了开发时间和空间(4D)、基于模式建模方法的最初计划,但我们的深入合作和对SysML v2的贡献,在很大程度上弥补了这一点,提交给OMG。SysML v2已经达到了与我们最初计划的相似的4D特征。在SysML v2环境下重建决策建模器将是一项有趣和有益的任务。除了参与SysML v2的工作,该项目还在其他几个OMG标准的开发中起到了主导作用。
许多建模方法包括隐含或嵌入的决策制定。这些建模案例有流程图、活动图、业务流程模型等等。决策建模作为一门专门的学科是比较新的。对象管理小组创建了决策建模和符号(DMN)规范,最初是为了使BPMN1业务流程模型中的决策更加明显,并支持更详细的决策过程。这段历史的缺点是,DMN现在与BPMN的关系非常紧密,尤其是在元模型层面。因此,DMN,不能直接与UML或SysML集成。为了使DMN风格的决策建模与UML和SysML模型协作,特别是使现有的UML建模工具能够进行DMN风格的决策建模,必须创建一个决策建模UML配置文件,与DMN元模型密切相关。
决策建模器的开发和目标部署平台是MagicDraw 19.0 SP4版本。MagicDraw(也被称为Cameo)是一个UML建模工具,由No Magic公司开发和销售。No Magic最近被Dassault Systèmes收购,Dassault Systèmes将继续进一步开发和销售这个工具,可能会用不同的名字。
MagicDraw是一个用Java实现的UML建模工具。它支持并使用一个插件架构来扩展其建模能力,涵盖其他基于UML的建模语言和方法,如SysML、UAF和其他。一个OpenAPI工具箱可以用来支持自定义插件的开发。
图 2 - MagicDraw(又名 Cameo)环境中的决策建模器
决策建模器和SimCom通信引擎是由FAST项目为MagicDraw开发的两个定制插件。SimCom插件没有任何先决条件,而决策建模器插件的功能需要SysML和Alf插件的存在。由于UAF是基于SysML的,决策建模器也可以用于基于UAF的企业模型。决策建模器和SimCom插件的安装程序都与MagicDraw资源管理器一致。
虽然在整个FAST项目中开发的技术是朝着符合相关标准的方向做出的最大努力,像OMG规范的元对象设施(MOF)、统一建模语言(UML)、系统工程建模语言(SysML)等;或者像世界网络联盟(W3C)开发的网络本体语言(OWL)、资源描述符框架(RDF)或其他,但我们自己也大力参与了新标准的开发,即在对象管理小组内。
虽然标准的制定是繁琐的工作,但它的回报是许多好处。某一主题的标准化要求它处于该主题发展的第一线。这项工作通常是在研究实验室或高级开发部门的隐蔽处进行的。然后,标准化要求开发人员开放并与世界各地同行讨论该主题,这在所有案例中都是有益的。
在FAST项目期间,我们参与了对象管理小组的几个标准化任务。所有这些任务都是在FAST项目之前的某个时间开始的,但这些任务的持续工作和讨论为FAST项目提供了重要的投入和科学效益。我们所参与的任务是: MOF到RDF的转换,元模型扩展设施,系统工程建模语言第二版,智能体和事件元模型,以及不确定性建模的精确语义学。另见本文件后面的标准化活动一章,以及项目技术报告(CDRL A010)中的相应章节。
决策模型由两类元素组成:主动和被动元素。
主动元素是决策元素,它在模型执行过程中影响模型结果的整体结果(最高目标值)。根据OMG DMN规范,这些主动元素被定义: Decision、DecisionService和BusinessKnowledgeModel。
被动元素不包含任何决策逻辑,因此不直接影响模型的结果。它们可能需要协助连续的活跃元素之间的信息流,或者注释决策模型。OMG DMN规范定义了以下两个被动元素: InputData和KnowledgeSource。
我们决策模型的所有元素,无论是主动还是被动,都有相同的基本结构:它们将接受一个到多个输入,称为 "输入事实",并产生一个单一的输出,称为 "结果事实"。所有的事实都可以是单值或复值,在这种情况下,它们是单值的结构。