军事概念模型元素关系研究
2014-06-15丁晓剑邢利菊
丁晓剑,邢利菊
(信息系统工程重点实验室,南京 210007)
军事概念模型元素关系研究
丁晓剑,邢利菊
(信息系统工程重点实验室,南京 210007)
概念模型元素及其关系是军事建模过程中的一个重要环节。目前军事概念模型的研究对模型元素关系的描述不够细化。从军事系统的概念内涵、作用与分类出发,分别探讨了模型元素之间的基本关系和高级关系,利用OCL语言描述了高级关系的约束。最后用真实指控系统对模型元素关系进行了验证分析。
概念模型,元素关系,对象约束语言
引言
仿真概念模型是开发者对于要仿真内容的信息描述,是仿真建模中十分重要的环节。军事概念模型是军事仿真系统的主要知识来源,是军事人员和仿真开发人员沟通的纽带,是军事仿真系统开发的重要前提。描述军事概念模型的重点是模型元素和其关系的描述,统一规范和描述一致的军事概念模型元素和元素之间的关系,能够让系统开发人员清晰准确地把握军事概念的内涵和外延[1],开发出更适合用户需求的军事仿真模型。
很多研究人员对概念模型的建模过程进行了研究,文献[2-5]给出了概念模型开发的4个步骤:①收集权威信息;②分解任务空间;③描述仿真元素;④确定仿真元素之间的关系。文献[2]给出了概念模型需要描述的内容:仿真背景、任务空间和仿真空间,并简要地描述了任务空间的组成:实体、动作、活动、作业和交互;文献[3-5]描述了仿真的内容,如实体、行动、任务、过程和交互等。
上述文献对军事概念模型的开发过程和开发方法作了详细研究,但对仿真元素和其关系的描述比较粗略,没有详细地展开。笔者所在的课题组一直从事军事概念模型的研究,对军事概念模型的元素及其特性已作详细的研究,将军事概念模型的5个核心元素扩展为14个元素,并分析了它们的特性,包括属性、特征等要素[6]。本文将进一步研究概念模型元素之间的关系,以便更好地为仿真开发人员服务。
1 概念模型元素回顾
在研究概念模型元素关系之前,首先将课题组研究的元素简要介绍一下。文献[6]将概念模型描述内容分为任务、实体、目标、状态和行为5个核心要素,如图1所示。
图1 概念模型元素
在图1中,使用者、角色和对象都是特殊的实体要素,所以将这3种元素作为扩展单独列出。同样,使命和输入/输出要素由任务要素扩展得到,状态转移和事件要素由状态要素扩展得到,手段要素由目标要素扩展得到,算法要素由行为要素扩展得到。模型元素主要有实体、使用者、角色、对象、状态、状态转移、事件、使命、任务、目标、手段、输入/输出、算法。
2 模型元素关系
在军事概念模型开发过程中,有许多现有的技术可以用来表示开发的概念模型,如“工作流图,活动循环图,petri网,UML”等,像UML方法已经成功用于CMMS、FEDEP和SEDEP等项目。UML提供了很多概念开发表图(如用例,顺序,构建,合作,类,状态图)表示一个模型的不同方面。由于UML是一种通用建模语言,它定义的标准和表示法在描述一些特定领域时会显不足。对关系的含糊体现在对聚合以及一般的整体局部关系的实际语义说得很少。事实上,语义的不清晰在UML中是普遍的。这就使得不同的建模者在使用UML建模工具建模特定关系时结果往往不同,妨碍了语义的表达。UML的标准扩展机制profile在扩展UML时受到很多的限制,由profile定义的新语言结构的类型机制以及定义这些结构之间关系的能力非常有限,既不能修改UML的元模型也不可去掉UML元模型中的约束。
本节将UML建模语言中的关系扩展为基本关系和高级关系,并给出相应的约束和其描述方法,以适应于军事领域模型元素的描述。
2.1 基本关系
参考UML建模语言中的关系描述,军事概念模型元素的基本关系分为:继承关系,部分/整体关系,线性关系和拥有关系。
继承关系是一个元素继承另外一个元素的功能,并可以增加自己新的属性。拥有普通属性的元素是祖先,有新增属性的元素是后代。后代继承了祖先的所有属性和行为。继承是元素与元素之间的最常见的关系。
部分/整体关系用来表示元素的组成。整体元素由若干部分元素组成,整体元素的功能是由其部分元素完成的。在关系线两端加上量词描述表明部分/整体关系:0..1:0或1个元素;n..m:n到m各元素;0..*或*:没有或任意元素;1或n:精确到1个或n个元素;1..*:任意个元素。
例如,当部分边的量词为“1”时,表示整体元素只能有一个部分元素。如果是“0..*”,表示整体元素可以拥有0或任意个部分元素。当整体边的量词为“1”时,表示部分元素只能被一个整体元素拥有。当整体边的量词为“1..*”时,表示部分元素可以被多个整体元素拥有。
线性关系用来定义军事命令中的上级与下级关系。关系的“上级”端用箭头指向,另外一端指向下级。一个实体不能是自身的上级。
拥有关系用来定义使用者和角色之间的关系。一个使用者可以拥有多个角色,一个角色也可以被多个使用者拥有。
2.2 高级关系
军事概念模型元素的基本关系能够描述元素之间通用的关系,对于元素与元素之间特有含义的表达,需要定义一些高级关系,如图2所示。
图2 高级关系
图2为模型元素的高级关系图,定义了元素之间的8种关系。下面描述这8种关键的语义,属性及其约束。
负责关系代表的是角色和任务或使命之间的关系。与任务或使命有这种关系连接的角色要负责该任务或使命的执行。负责关系有一个约束条件,每个约束条件可用对象约束语言OCL(Object Constraint Language)描述。OCL是一种制定约束和查询的文本语言,功能强大,除了可用于编写导航表达式、布尔表达式和其他查询语句以外,还可以用于构建约束、监护条件、动作、前置条件与后置条件。负责关系中利用OCL描述的约束如下:
(1)负责关系中,角色是源端,任务或使命是目标端。
context ResponsibleFor self.source.isTypeOf(Role)AND(self.target.isTypeOf(Task)OR self.target.isTypeOf(Mission))
实现关系代表的是角色和任务或使命之间的关系。与任务或使命有这种关系连接的角色要实现该任务或使命的执行。实现关系有一个约束条件,每个约束条件可用OCL语言描述如下:
(1)实现关系中,角色是源端,任务或使命是目标端。
context Realizes self.source.isTypeOf(Role)AND(self.target.isTypeOf(Task)OR self.target.isTypeOf(Mission))
扩展关系指定了扩展使命(源)定义的行为如何、何时插入被扩展使命(目标)定义的行为中。这种关系指定了一项使命(目标)的行为可被另一项使命(通常是补充性的)的行为扩展。扩展在被扩展使命定义的一个或多个具体的扩展点进行。
被扩展使命的定义、意义皆与扩展使命无关。另一方面,一般扩展使命定义的行为自身无需有意义。相同的扩展使命可扩展不止一项使命。此外,扩展使命自身也可以被扩展。
扩展关系有两个约束条件,每个约束条件可用OCL语言描述如下:
(1)扩展关系中,一项使命为源端,另一项使命为目标端。
contextExtendsself.source.isTypeOf(Mission)AND(self.target.isTypeOf(Mission))
(2)扩展关系中,不能有相同的使命既是源端又是目标端。
context Extends Mission1=self.source AND Mission2=self.target implies not(Mission1=Mission2)
包含关系定义了一项使命容纳另一项使命定义的行为。包含是两项使命之间的一种定向关系,指被包含使命(目标)的行为被插入到包含使命(源)的行为中。包含使命可能仅取决于被包含使命的结果(值),这个结果(值)是通过执行被包含使命而获得。被包含使命并非选择性,而是包含使命正确执行所必需的。
两项使命之间的包含关系意味着包含使命定义的行为被包含在基本使命的行为中。包含关系意图用在当两个或两个以上使命的行为有共同部分的时候。共同部分将被提取到一个单独的使命中,供所有含有这部分共同体的基本使命执行包含。被包含使命的执行与子程序调用类似。被包含使命的所有行为都在被包含使命中的单一位置执行,之后再继续进行包含使命。包含关系有两个约束条件,每个约束条件可用OCL语言描述如下:
(1)包含关系中,一项使命为源端,一项使命为目标端
context Includes self.source.isTypeOf(Mission)AND(self.target.isTypeOf(Mission))
(2)包含使命中,不能有相同使命既是源端又是目标端
context Includes Mission1=self.source AND Mission2=self.target implies not(Mission1=Mission2)
完成关系定义的是使命或任务与目标之间的关系。使命或任务可能有许多目标,当完成所有目标时,该使命或任务将被视为成功。完成关系有两个约束条件,每个约束条件可用OCL语言描述如下:
(1)完成关系中,使命或任务是源端,目标为目标端。
context Achieves(self.source.isTypeOf(Task)OR self.source.isTypeOf(Mission)) AND (self.target. isTypeOf(Objective))
输入关系用来表示执行任务所需的工作产品。一项任务可能要求输入许多个工作产品。输入是一种工作产品为源端、任务为目标端的定向关系。完成关系有一个约束条件,可用OCL语言描述如下:
输入关系中,工作产品为源端,任务为目标端。
context InputTo self.source.isTypeOf(WorkProduct)AND(self.target.isTypeOf(Task))
生产关系用来代表任务执行后或期间的工作产品。任务输出可能会有许多个工作产品。生产是一种任务为源、工作产品为对象的定向关系。生产关系有一个约束条件,可用OCL语言描述如下:
生产关系中,任务为源端、工作产品为目标端。
context Produces self.source.isTypeOf(Task)AND(self.target.isTypeOf(WorkProduct))
量化关系用来代表目标和度量标准之间的关系。目标的执行情况通过评估目标相连的度量标准来决定,由量化关系表示。量化关系有一个约束条件,可用OCL语言描述如下:
量化关系中,目标为源端,度量标准为目标端。
context QuantifiedBy self.source.isTypeOf(Objective)AND(self.target.isTypeOf(Measure))
下页图3为军事系统的领域特征元模型,该元模型展示了元模型元素之间的继承关系,关系和规则。
使命和任务之间是一种多对多关系。一项任务必须至少属于一项使命,一项使命必须至少包括一项任务。任务之间存在组成关系,每个个体扮演任务节点(task Node)的角色。一项任务可能包括许多子任务,也可能是许多项任务的一部分。一项任务可能生产一份工作产品,零份或多份工作产品可能会输入进一项任务中。
图3 C4ISR指控系统建模实例
使命和任务都可能有一个或多个目标,通过完成关系起来。目标和度量标准之间是一种多对多关系。每个目标可用一条或多条度量标准来量化。一条度量标准必须与至少一个目标相关。一项使命可通过包含关系或扩展关系与其他使命关系。
一个角色实现或负责一项或多项使命。一个角色实现或负责一项或多项任务。角色和使用者之间的这种多对多关系意味着一个角色可能属于许多个使用者,一个使用者也可能拥有许多个角色。一个使用者可以地位高于许多其他使用者,也可以是许多其他使用者的下属。
使用者从实体继承而来。一个实体可能拥有许多属性、能力、零个或一个状态机(State Machine)。状态机用来表示实体的行为,状态是一个对象在生命过程中的一种情况或状况,期间它满足某些情况、执行某些活动、或等待某些事件。状态被包含在状态机中,状态机描述了一个对象随时间发展对事件的响应历史。
一个实体可能通过关系(Association)、聚集(Aggregation)或泛化(Generalization)等关系与另一个实体相关。
3 建模实例
文献[6]研究了概念模型元素及其特性,本文前述内容研究了元素的关系及其约束,本节将用军事电子信息系统的实例对概念模型元素和元素之间的关系作出阐述。
以C4ISR指控系统为例,如图3所示,指挥员是“使用者”,是负责执行使命的实体。然后识别3个使命:监视、侦查和通信,指挥员和这3个实体之间都为负责关系。监视使命有一个目标:实施监视,由实体“监视的性能”表示。实体监视和监视的性能之间有完成关系,后者用4个度量标准衡量。度量模型元素包括定义度量单元和在目标模型元素中定义目标完成的标准。度量标准包括覆盖边界的长度,覆盖的时间,探测/识别/认可率,覆盖的密度和花费。这些标准可以用“千米(km)”,“分钟(min)”,“认可的威胁数目”/“探测的威胁数目”,“覆盖边界的面积”和“金钱花费多少”作为度量单元。使命的表现可以检查这些度量标准来识别。当所有成功阈值都满足时,认为该使命成功完成。如果“覆盖边界长度超过12 km”,“时间消耗小于20 min”,“探测/识别/认可率超过60%”,“覆盖密度超过80%”和“金钱消耗小于10 000”同时满足,认为监视目标是成功的。
4 结 论
作为军事系统仿真建模开发过程的核心与基础,模型元素和元素之间关系的研究对于正确开发概念模型有着重要的作用和意义。本文在课题组工作的基础上,对概念模型元素的关系作了深入研究,建立了基本关系组和高级关系组,并对高级关系的约束利用OCL作了形式化的描述。在将来的工作中,课题组利用研究成果在军事系统上进行验证分析,分析其不足之处以作进一步改进。
[1]潘庆华.基于MDA的军事仿真建模研究[M].南京:解放军理工大学,2009.
[2]王 勇,马 萍,杨 明,等.仿真概念模型的开发过程研究[J].系统仿真学报,2006,18(s2):17-23.
[3]黄俊领,谭东风,张向波.军事仿真概念模型开发研究[J].计算机仿真,2005,22(2):15-18.
[4]张向波,黄俊领.军事仿真概念模型及其开发过程研究[J].情报指挥控制系统与仿真技术,2004,26(2):29-32.
[5]胡 军,陈 新.军事仿真概念模型的开发方法研究[J].实验科学与技术,2006(5):14-17.
[6]丁晓剑,孙丰鑫.C4ISR系统概念模型元素研究[J].微电子学与计算机,2014(5):18-22.
Relationship Research of Military Conceptual Model Elements
DING Xiao-jian,XING Li-ju
(Science and Technology on Information Systems Engineering Laboratory,Nanjing 210007,China)
The elements of conceptual model and its relationships are essential part of the process of military system modeling,and less detailed description of model elements'relationships is available for conceptual model so far.This paper researchers the military system's connotation of conception,function and classification,and discussesthe basic relationships and advanced relationships respectively.OCL language is used to describe the constraints of advanced relationships.Finally real Command and Control system is conducted to verify the relationships of model elements.
conceptual model,elements relationship,OCL
TP391.9
A
1002-0640(2014)11-0004-04
2013-09-05
2013-11-07
丁晓剑(1982- ),男,江苏沭阳人,博士。研究方向:概念模型,系统仿真技术。