装备管理建模与仿真
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 典型的装备管理建模方法

装备管理是支撑武器装备发展的重要环节。通过建模仿真方法来研究战争系统已成为现代战争研究的一个重要趋势,有专家断言,利用建模仿真方法完成虚拟实践,已经成为人们继理论推导、科学实验后的第三种认识世界的途径。装备仿真已成为装备管理的一种行之有效的手段,它在解决装备效能评估和装备作战适用性问题上具有突出优势。

装备管理建模的传统方法基本上有两大类:机理分析建模和实验统计建模。近些年,建模方法又有了新的进展,常见方法有:直接相似法、系统辨别法、回归统计法、概率统计法、量纲分析法、网络图论法、图解法、模糊集论法、蒙特卡罗法、层次分析法、“隔舱”系统法、定性推理法、“灰色”系统法、多分面法、分析-统计法及计算机辅助建模法等。在数学建模中,如何较合理地选择建模方法,至今没有一个固定形式,常常根据系统状况、建模目标、建模要求及实际背景来确定。

建立军事系统模型是开发军事仿真系统的关键,由于仿真对象不同,各类系统的具体建模方法也不同。一方面,建模仿真方法种类非常多,涉及的内容、范围非常广泛,没有哪一种分类方法可以完全将其概括和描述,在实际的建模过程中,往往是对这些方法的综合运用;另一方面,仿真系统的模型构建也有一些规律可循。一般情况下,建模仿真可以按以下步骤进行:

1.提出问题

主要由主管部门和模型使用部门确定所要建立的模型的描述范围、目的和用途。

2.确定模型计算的效率指标

由主管部门、用户和军事运筹人员共同商定以确定模型计算的效率指标。一般,以消灭敌人多少或坚持作战时间长短或己方减少损失多少来做指标。

3.拟制作战想定

这是建立模型的总体规划和定量化的工作,主要由军事研究人员来做,将各级部队的作战行动规则恰如其分地简化和量化。

4.提供武器和战场环境条件基础数据

武器基础数据包括:各种武器的编制人数,最小操作人数,最大、最小射程,战斗射速,不同状态的射击公算偏差,对不同目标命中条件下的摧毁概率,攻防条件下的暴露面积及其被对方各种武器命中条件下的摧毁概率,各种炮弹、航弹对其杀伤半径,各种武器所配备的观测器材,战场环境条件数据,气候条件,炮火压制等。其中武器和战场环境条件基础数据是十分庞大的,数据的准确性关系到模拟结果的可靠性,要做艰苦细致的工作。

5.建立数学模型

根据作战规划和战场环境条件对战斗行动的影响,首先进行合理的简化,然后抓住主要作战行动因素,采用适当的数学方法,如蒙特卡罗法、解析法和指数法等,涉及的数学理论有规划论、概率论、博弈论、搜索论、排队论等。

下面举例说明。

20世纪90年代初,美国陆军首先出台了“作战实验计划”,建立了6个专门的作战实验室,率先运用建模与仿真方法对复杂的战争系统进行深入研究,确立了“提出理论—战争实验—实兵演练”的军队发展途径。美军采用建模与仿真方法,根据战争实验结果采取一系列作战行动,均取得了空前的成功。海湾战争中,“沙漠军刀”行动与战前美军战争实验制订的“100小时方案”惊人地吻合。伊拉克战争中,美国陆军、空军的作战行动,与战争实验预演的一致性分别高达95%、99%。当前,各国军队关于战争系统建模与仿真的研究,主要侧重于解决系统病态问题和观测数据的可接受性不高的问题,主要方法有:

(1)参数优化方法。基于对战争系统辨识和参数估计理论,实现对战争系统仿真目标函数的最优化。

(2)定性仿真方法。建立战争系统概念性模型框架,从一个定性的约束集和一个初始状态出发,通过定性处理,预测战争系统的未来行为。

(3)模糊仿真方法。在建立战争系统仿真模型框架的基础上,通过运用模糊数学理论对观测数据进行处理。

(4)系统动力学方法。基于对战争系统和物理系统中的动力学性质及反馈控制过程的认识,通过军事专家对战争系统发展动力的研究,建立战争系统的动力学模型,观测战争系统在外部作用下的变化情况,从而预测战争系统的发展。

(5)探索性分析方法。从影响系统行为的输入数据不确定性、结构不确定性等因素的特点出发,研究这些不确定性因素在军事模型中的表现形式。

建立能较全面、集中、精确地反映系统的状态、本质特征和变化规律的数学模型是系统建模的关键。在实际问题中,要求直接用数学公式描述的事物是有限的,在许多情况下,模型与实际现象完全吻合也是不大可能的。系统分析下的数学模型只是系统结构和机理的一个抽象,只有在系统满足一些原则的前提下,所描述的模型才趋于实际。建模一般遵循下述原则:

(1)系统建模应当遵循可分离原则。系统中的实体在不同程度上都是相互关联的,但是在系统分析中,绝大部分的联系是可以忽略的,系统的分离依赖于对系统的充分认识、对系统环境的界定、系统因素的提炼以及约束条件与外部条件的设定。

(2)系统建模应当遵循假设的合理性原则。在实际问题中,数学建模的过程是对系统进行抽象,并且有一些合理的假设。假设的合理性直接关系到系统模型的真实性,无论是物理系统、经济系统还是其他自然科学系统,它们的模型都是在一定的假设下建立的。

(3)系统建模应当遵循因果性原则。按照集合论的观点,因果性原则要求系统的输入量和输出量满足函数映射关系,它是数学模型的必要条件。

(4)系统建模应当遵循输入量和输出量的可测量性、可选择性原则,对动态模型还应当保证适应性原则。

2.2.1 蒙特卡罗法

蒙特卡罗(Monte Carlo)法亦称为随机仿真(random simulation)方法,有时也称为随机抽样(random sampling)技术或统计试验(statistical testing)方法,是20世纪40年代中期由于科学技术的发展和电子计算机的发明而提出的一种以概率统计理论为指导的非常重要的数值计算方法。蒙特卡罗法是一种与一般数值计算方法有本质区别的计算方法,属于试验数学的一个分支,起源于早期的用几率近似概率的数学思想,它利用随机数进行统计试验,以求得的统计特征值(如均值、概率等)作为待解问题的数值解。这一方法源于美国在第二次世界大战中研制原子弹的“曼哈顿计划”,该计划的主持人之一数学家冯·诺依曼把他和乌拉姆所从事的与研制原子弹有关的秘密工作—对裂变物质的中子随机扩散进行直接模拟,以摩纳哥国的世界闻名赌城蒙特卡罗作为秘密代号来称呼。用赌城名比喻随机仿真,风趣又贴切,很快得到广泛接受,此后,人们便把这种计算机随机仿真方法称为蒙特卡罗法,该方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”,而在19世纪人们用投针试验的方法来确定圆周率π。随着现代计算机技术的飞速发展,用计算机仿真随机过程,实现多次仿真实验并统计计算结果,进而可获得所求问题的近似结果。蒙特卡罗法已经在原子弹工程的科学研究中发挥了极其重要的作用,并正在日益广泛地应用于物理、工程、经济、金融等各个方面。

蒙特卡罗法的基本思想是:为了求解数学、物理、工程技术以及生产管理等方面的问题,首先建立一个概率模型或随机过程,使它的参数等于问题的解;然后通过对模型或过程的观察或抽样实验来计算所求随机参数的统计特征,最后给出所求解的近似值,解的精确度可用估计值的标准误差来表示。蒙特卡罗法以概率统计理论为其主要理论基础,以随机抽样(随机变量的抽样)为其主要手段。这些问题可分为两类:第一类是确定性的数学问题,如计算多重积分、解线性代数方程组等;第二类是随机性问题,如原子核物理问题、运筹学中的库存问题、随机服务系统中的排队问题、动物的生态竞争和传染病的蔓延问题等。

考虑平面L的一个边长为1的正方形及其内部的一个形状不规则的图形,如何求出这个图形的面积呢?蒙特卡罗法是这样一种随机化的方法:向该正方形随机地投掷N个点,如果M个点落于图形内,则该图形的面积近似为M/N。可用民意测验来做比喻,民意测验的人不是征询每一个登记选民的意见,而是通过对选民进行小规模的抽样调查来确定可能的优胜者,其基本思想是一样的。

科学计算中的问题要复杂得多。比如金融衍生产品(期权、期货等)的定价及交易风险估算,问题的维数(变量的个数)可能高达数百甚至数千。对这类问题,难度随维数的增加呈指数增长,这就是所谓的“维数的灾难”(course dimensionality),传统的数值方法难以对付(使用速度最快的计算机)。蒙特卡罗法能很好地用来对付维数的灾难,因为该方法的计算复杂性不再依赖于维数。以前那些本来是无法计算的问题现在也能够计算了,为提高方法的效率,科学家们提出了许多所谓的“方差缩减”技巧。

蒙特卡罗法的基本原理是:利用各种不同分布随机变量的抽样序列仿真实际系统的概率模型,给出问题数值解的渐近统计估计值,其要点如下:

(1)对问题建立简单而又便于实现的概率统计模型,使要求的解恰好是所建模型的概率分布或数学期望。

(2)根据概率统计模型的特点和实际计算的需要,改进模型,以便减小模拟结果的方差,降低费用,提高效率。

(3)建立随机变量的抽样方法,其中包括产生伪随机数及各种分布随机变量抽样序列的方法。

(4)给出问题解的统计估计值及其方差或标准差。

对应蒙特卡罗法的要点,实施蒙特卡罗法有三个主要步骤:

(1)构造或描述概率过程。对于本来就具有随机性质的问题,如粒子输运问题,主要是正确描述和模拟这个概率过程;对于本来不是随机性质的确定性问题,比如计算定积分,就必须事先构造一个人为的概率过程,它的某些参量正好是所要求问题的解,即要将不具有随机性质的问题转化为具有随机性质的问题。

(2)从已知概率分布抽样构造概率模型后,由于各种概率模型都可以看作由各种各样的概率分布构成的,因此产生已知概率分布的随机变量(或随机向量),就成为实现蒙特卡罗法模拟实验的基本手段,这也是将蒙特卡罗法称为随机抽样的原因。

为了方便,通常把区间[0,1]上均匀分布随机变量的抽样值称为随机数,其他分布随机变量的抽样值都是借助随机数来实现的。可以说,随机数是随机抽样的基本工具。在计算机上用数学方法产生随机数是目前广泛使用的方法,其特点是占用内存少、产生速度快、便于重复产生、不受计算条件的限制。但是,随机数是根据确定的递推公式求得的,存在着周期现象,不满足真正随机数的要求,所以常把用数学方法产生的随机数称为伪随机数。在实际问题中,变量的概率分布形式是千差万别的。当产生了随机数(伪随机数)后,可借助随机数产生各种随机变量的抽样。对于离散型分布,假设随机事件Ai,出现的概率为Pi(i=1,2,…,n)。为了抽样,首先构成累积概率

(2.1)

产生随机数r,如果条件

(2.2)

满足,则认为Ai发生。而对于连续型分布的一般抽样方法,是通过函数方程

(2.3)

解出img的。上述抽样方法为直接抽样方法,有些方程如果不能直接解出,可以通过其他方法获得随机变量的抽样值。因此只要产生了随机数,便可根据适当的数学方法实现对任意已知分布的随机变量的抽样。

工程中利用蒙特卡罗法模拟结构的失效概率基本上采用下述方法。工程结构的失效概率可以表示为

(2.4)

其结构的可靠指标为

(2.5)

以上两式中,img是具有n维随机变量的向量;img是基本随机变量的联合概率密度函数;G(X)是一组结构的极限状态函数,当G(X) < 0时,就意味着结构已破坏,反之结构是安全的;Df是与G(X)相对应的失效区域;img为标准正态分布的累积概率函数。于是,用蒙特卡罗法表示的失效概率可写为

(2.6)

式中,N为抽样模拟总数;当img时,img,反之img;冠标“^”表示抽样值。

(3)建立各种估计量。一般来说,构造了概率模型并从中抽样后,即实现模拟实验后,就要确定一个随机变量,作为所要求的问题的解,我们称它为无偏估计。建立各种估计量,相当于对模拟实验的结果进行考查和登记,从中得到问题的解。

蒙特卡罗法是一种具有独特风格的数值计算方法。与其他数值计算方法相比,蒙特卡罗法有以下几个优点:

(1)收敛速度与问题维数无关,换句话说,要达到同一精度,用蒙特卡罗法选取的点数与维数无关,计算时间仅与维数成比例。但其他数值计算方法,比如在计算多重积分时,达到同样的误差,点数与维数的幂次成比例,即计算量要随维数的幂次方而增加。这一特性决定了蒙特卡罗法对多维问题的适用性。

(2)受问题的条件限制的影响小。

(3)程序结构简单,在计算机上实现蒙特卡罗计算时,程序结构清晰简单,便于编制和调试。

(4)对于仿真解粒子输运等物理问题时,该方法具有其他数值计算方法不能替代的作用。

(5)只要抽样次数足够多,该方法计算所得的结构可靠度的精度满足要求。

(6)数值模拟的误差也容易确定,从而确定模拟的次数和精度。

由于结构的失效概率较小,蒙特卡罗法的模拟次数较大,因此占据大量的计算时间,这是该方法在结构可靠度分析中面临的主要问题。随着计算机的发展和数值模拟方法的改进,这个问题将会得到更好的改善。蒙特卡罗法的缺点是收敛速度慢,误差大。这一情况在解粒子输运问题中仍然存在,除此之外,对于大系统,蒙特卡罗法通常不适用,但其他数值方法往往很适用,能算出较好的结果。因此,已有人将数值计算方法与蒙特卡罗法联合起来使用,以克服这种局限性,取得了一定的效果。

2.2.2 兰彻斯特方程和作战毁伤理论

人类对于战争和作战,最早停留在把其当作一种计谋和权术的层次来研究,并称之为战争艺术。在20世纪初期,蔡斯、费斯克、奥西普夫、兰彻斯特四位学者提出了公式化的作战理论,虽然他们研究战斗的毁伤过程的出发点不尽相同,但是得出的作战毁伤理论却是惊人的相似,这就是21世纪活跃在战争模拟和仿真决策领域的兰彻斯特方程和作战毁伤理论。

兰彻斯特是著名的英国汽车工程师、流体力学家和运筹学家。他是第一个对战斗过程中对抗双方的力量关系进行系统的数学分析的科学家。他分析了:在什么环境下一支数量居于劣势的军队能击败一支数量居于优势的军队;能否给予兵力或火力集中的效应一个数学测度(如果能的话,是否可以建立包含这一测度的数学方程式以描述和预测战斗过程的发展趋势)。他用简明的兰彻斯特方程回答了这些问题,但其意义还不止于此。后来从事运筹学和作战模拟研究的科学家,由兰彻斯特方程引出了更多的结论。到了20世纪50年代末,这一理论又应用到经济贸易领域。

兰彻斯特于1914年9月至12月在英国Engineering杂志上发表了一系列有关飞机和空战的论文。在这些论文的基础上,兰彻斯特的名著《战争中的飞机,第四种武装的出现》于1916年在伦敦出版。该书第五、六、八章的内容与后来的运筹学有关。可以说,运筹学的发展从一开始就与兰彻斯特的名字联系在一起。特别重要的是,兰彻斯特把半经验半理论的描述方法引入当时尚无严格理论可循的作战模拟研究。这本书成为激励运筹学和作战模拟发展的基本源泉之一。为纪念兰彻斯特对运筹学的贡献,美国运筹学会在约翰·霍普金斯大学建立了以兰彻斯特命名的奖金,每年颁发一次,给最优秀的运筹学论文的作者。

兰彻斯特研究分析了历史上的战争,发现原始时代的防御方法与近代战争的防御方法有重要差别。在冷兵器时代,战斗的主要形式是士兵与士兵面对面的格斗,他们用剑和盾挡开对方剑和战斧的攻击,防御行动是直接的。一般情况下,一个士兵会发现自己是在与对方的一个士兵对阵。如果每个士兵的战斗力相等,其他条件也相等,那么在平均的意义下作为组成整个战斗的许多格斗,将按一种方式进行。即使一个部落首领在特定的战场环境中用比敌人数量多两倍的士兵来对付敌人,但从给定时刻,双方实际挥动手中武器进行战斗的实际士兵数量是大体相当的,双方被杀伤的士兵数量也大体相当。这就是说,一方的指挥员不可能通过任何形式的战略计划或战术机动,把多于对方数量的更多的兵力投入实际战斗中。在一次对战中,问一支1000人的蓝军能否对付得了一支1000人的红军?或者问蓝军能否集中全部兵力先对付红军中的500人,在歼灭他们之后再转过来对付红军的另一半?这样的问题是没有多大意义的。因为,如果红军坚守阵地至最后,那么,在第一场格斗战中,歼灭了头一半红军的蓝军也将损失一半兵力,在第二场格斗战中,双方以同等兵力开始战斗,即500人对抗500人。

在近代战争中,所有这些都改变了。这时是用步枪火力抵抗步枪火力的攻击,用大炮防御大炮。防御行动不是直接的,而本质上是集体合作的,一方通过以合作方式首先杀伤敌人来阻止敌人对己方的攻击,因此,在使用远射程火器的近代战争中,集中优势兵力会带来直接的好处。

兰彻斯特抓住了这种差别,提出了著名的集中原则:在其他因素相同的情况下,兵力较强的一方将引起对方较大的毁伤。因此,在近代战争条件下,战略的一个最大问题是“集中”,即将交战一方的所有手段集中于一个单独的目的或目标上。“集中”并非仅仅是战略原则,也在战术行动中起着重要作用。兰彻斯特用数学方法分析了近代战争中集中原则的重要性,并找出了在对抗过程中可以支配的一些因素。需要指出的是,在上面的分析中,兰彻斯特是以极端的形式来对原始战争方式与近代战争方式进行比较的。实际上,在原始条件下集中兵力也还是会有些效果的,但不是研究毁伤的主要因素。例如,胜利者的任何数量优势,无疑在交战开始就能施加极大的心理影响;另外,弓、箭及石弓也具有火器的一些特性,因为它们也能集中一定数量攻击少数方。

兰彻斯特方程:

(2.7)

式中,x, y分别表示红蓝两军参加战斗单位的数量;img分别表示红蓝两军单个战斗单位的平均战斗力公式。式(2.7)指出:当双方战斗单位数量的平方与单个战斗单位平均战斗力乘积相等时,两支部队的总体战斗力相等。也就是说,一支部队的战斗实力可以定义为与战斗单位数量平方和单个战斗单位平均战斗力成正比的一个量。兰彻斯特方程主要表现的是战斗实力与战斗单位数量平方之间的关系。

兰彻斯特方程被提出后,为了确定其战场适用性,许多学者对其进行了实际运用,最为著名的就是恩格尔用兰彻斯特方程对第二次世界大战期间美军硫黄岛战役中的战场补给速度进行了数学分析:

(2.8)

式中,Wl(t)代表美军在硫黄岛战役中的战场补给速度。恩格尔将通过数学计算获得的数据与战场实际数据进行了对比,发现通过数学计算获得的数据与战场实际数据基本相同,这进一步丰富了兰彻斯特方程的内容,使得兰彻斯特方程更加具有可操作性和可运用性。

随着现代战争模拟技术、毁伤决策理论的发展,兰彻斯特方程已经广泛地运用于战争研究、毁伤评估和决策、战争分析,成为现代战争决策和作战决策科学理论与发展模拟建模的基本理论工具之一。随着基础数学、信息技术的发展,兰彻斯特方程也呈现出其特有的发展趋势。

传统的兰彻斯特方程只是立足于对战场上单个作战单位战场毁伤的决策分析,而在现代战争中,特别是在信息化战争中,战场的高度联合、单一的作战单位和作战军种独立控制和把握战争进程的时代已经消逝,信息化的战场必将把战场上所有的积极因素结合起来,从而减小不利影响。通过兰彻斯特方程可以把战场上的所有作战单位的战场毁伤情况纳入一个比较规范的数学模型之中,通过准确地计算,把战场上的所有作战单位的战场损伤情况进行数学的量化,为战场毁伤决策提供更加可靠的模拟和决策。

混合律是兰彻斯特方程的重要发展之一,主要考虑的是在现代战争中作战单位数量为y的蓝军,与作战单位数量为x的红军。由于战场对于蓝军单向透明,红军在战场上无法获得蓝军作战单位的准确位置,因此只能对蓝军作战地域实施面火力打击;相反,蓝军却掌握了大量的战场信息,可以对红军的作战单位实施精确的战场定位,因此也就可以在战场上对红军目标实施精确的点火力打击。在这种战场情况下,红军如果在给定的时间内对作战单位记分,平均起来,一定数量的面火力打击是有效的,而蓝军作战单位的每一次战场射击都是有效的。例如,在伊拉克战争中,美军对于伊拉克军队而言就是蓝军,而伊拉克军队就是处于被动地位的红军。交战中任何一方的作战单位的损失速率与对方作战单位的数量成正比,即

(2.9)

红蓝两军战斗实力相等的条件为img,即img。也就是说,由于装备了先进的武器系统,蓝军作战单位数量的平方与单个作战单位平均战斗力的乘积的一半和武器装备落后的红方作战单位数量与单个作战单位平均战斗力乘积相等时,两支部队的总体作战实力相当。也就是说,军事技术较弱的一方必须投入大量的作战单位,才有可能在战争中与军事技术较强的作战对手的力量均衡。

此外,彼德森教授在20世纪60年代提出了另一种形式的兰彻斯特方程,即

(2.10)

(2.11)

这就是兰彻斯特对数定律,它是建立在假设战斗中任何一方的损耗仅与本身数量有关的基础上的,交战双方在作战过程的作战数量比例始终保持不变。

兰彻斯特方程是现代作战毁伤决策的一个重要的数学模型,它的诞生和发展为现代战争毁伤决策提供了可靠的数学依据。即使是在信息化战争中,兰彻斯特方程仍然可以对战争中的各种战场毁伤因素进行综合的评估和决策,为联合作战部队作战效能的充分发挥提供了可靠的决策依据,为探索更为有效的作战模型奠定了基础,并对实际作战毁伤决策提供了很好的数学定量分析的手段。

2.2.3 面向对象方法

面向对象(Object-Oriented)方法是一整套关于如何看待软件与现实世界的关系,以什么观点来研究问题并进行求解,以及如何进行系统构造的软件方法学。

面向对象方法起源于软件工程领域,是一种自底向上的归纳和自顶向下的分解相结合的方法,是一种利用真实世界的概念来组织模型的全新的思考方式。由于其符合人们的认知方式,因而在表现系统中的实体和用户需求等方面具有很大的优势。面向对象由于具有对问题空间自然分割、以更接近人类思维的方式建立问题域模型、从问题域向解域的自然过渡、支持部件重用、开放性良好等优点,决定了它必将成为仿真系统建模、分析、设计的最有前途的方法。

2.2.3.1 面向对象分析

面向对象分析(Object Oriented Analysis,OOA)的主要任务是分析问题论域,找出问题解决方案,发现对象,分析对象的内部构成和外部关系,建立软件系统的对象模型。

面向对象分析的基本过程如下:

1.问题论域分析

分析应用领域的业务范围、业务规则和业务处理过程,确定系统的责任、范围和边界,确定系统的需求。

2.发现和定义对象及其类

识别对象和类,确定它们的内部特征:属性与服务操作。这是一个从现实世界到概念模型的抽象过程。

3.识别对象的外部联系

在发现和定义对象与类的过程中,需要同时识别对象与对象、类与类之间的各种外部联系,包括结构性的静态联系和行为性的动态联系,包括一般与特殊、整体与部分、实例连接、消息连接等联系。

4.建立系统的静态结构模型

分析系统的静态结构,建立系统的静态结构模型,并且把它们用图形和文字说明表达出来。

5.建立系统的动态行为模型

分析系统的行为,建立系统的动态行为模型,并且把它们用图形和文字说明表达出来。

正是因为面向对象技术的诸多优点,自20世纪80年代,相继出现了多种面向对象分析及设计方法。为了统一众多的建模方法,对象管理组织OMG提出了统一建模语言。

2.2.3.2 统一建模语言

统一建模语言(Unified Modeling Language,UML)是由世界著名的面向对象技术专家Grady Booch、Jim Rumbaugh和Ivar Jacobson提出的,在著名的Booch方法、OMT(Object Modeling Technology)方法、OOSE(Object-oriented Software Engineering)方法的基础上,吸取了面向对象技术领域中其他流派的优点而推出的一种建模语言。

UML运用面向对象概念来构造系统模型,建立起从概念模型直至可实现模型之间明显的对应关系。与众多面向对象的程序设计语言(例如C++、java)相比,UML不是一种程序设计语言,而是一种建模语言;同时,UML也不是一种对建模过程和方法的描述语言,但是它能够提供可视化的视图来支持建模过程和方法,是一种通用的支持建模过程和方法的工具。UML作为一种标准的图形建模语言,其目标是运用面向对象的概念,通过多种视图来建立系统的可视化模型,建立起从概念模型到物理模型的对应关系。由于客观世界是一个复杂系统,需要从不同的角度来真正理解系统,因此UML定义了5类模型图,如表2.1所示。

表2.1 UML模型图分类

这些图为系统的分析、开发提供了多种图形表示。它们的有机结合有可能构造一个全面的系统。从应用的角度看,当采用面向对象技术设计系统时,首先要描述需求,其次根据需求建立系统的静态模型,以构造系统的结构,最后描述系统的行为。

2.2.3.3 空军C4ISR仿真系统的面向对象分析

1.用例分析

一个用例代表一个主题(系统或系统的一部分)的行为,主题执行该动作序列(其中包括变体),为参与者提供一个结果值。简单地说,用例用于描述系统的功能,也就是从外部执行者的角度观察,系统应该支持哪些功能,帮助分析人员理解系统的行动,它是对系统功能的宏观描述。一个完整的系统中通常包含若干个用例,每个用例具体说明应该完成的功能。

用例图是把应满足用户需求的基本功能聚合起来表示的工具,它从用户角度描述系统的功能、显示用例以及用例所包括的实体,指出各功能的执行者。在UML中,用例图由一组被系统边界包围的用例、系统边界外的执行者、执行者和用例间的通信关系组成。

本书设计的空军C4ISR仿真系统用例图如图2.1所示。空军C4ISR仿真系统外部执行者为指挥员和各相关部队,系统主要由指挥控制、情报侦察、预警探测、通信、电子对抗五个用例组成。图2.1清楚地显示出执行者的职能和责任以及各个功能的详细信息。

图2.1 空军C4ISR仿真系统用例图

2.系统静态结构分析视图

在对系统用例进行需求分析以后,可以得出系统的概念模型。虽然用例也是一个重要的需求分析结果,但是用例不是真正地面向对象的,而概念模型却是面向对象的,它展示的是问题域中有意义的概念,它是真实世界中各个事物的代表,能够映射到真实世界业务概念。

UML中用静态结构图来表达概念模型,主要是类图及其包图(包图不是必需的)。所谓类是指一些具有相同属性和行为的对象。对象是人们对现实世界中的各种事物或概念的一种高度抽象。任何事物都可以看作具有某些属性和动态行为的对象,而所有具有相同属性和行为的对象的集合构成类。类图用于定义系统中的类,包括描述类与类之间的各种关系(如关联、泛化、依赖等)以及类的内部结构,即类的属性和操作。所有这些关系以及类的属性和行为,都可以用类图清晰地描述。

对于空军C4ISR仿真系统,主要抽象出C4ISR设备类、信息类。它们之间是关联的关系,关联表示类的实例之间存在的某种关系,通常用一个无向线段表示。例如,C4ISR设备类的实例既发布信息又接收信息,所以C4ISR设备类的实例和信息类的实例之间是一种发布、接收关系。

C4ISR设备类的子类包括网络设备类、终端设备类、无线设备类、导航设备类和侦察探测设备类,它们与C4ISR设备类之间是泛化的关系(继承关系)。泛化关系定义了类的一般元素(父元素)与特殊元素(子元素)之间的分类关系,用带空心箭头的线段表示。网络设备类表示的是和网络相关的部件类型,比如网关、路由器、网络集线器、交换机等。终端设备类描述用户运行应用的计算机系统。无线设备类是使用无线频率作为通信手段的设备。导航设备类表示提供导航或全球定位系统数据的设备。侦察探测设备类包括用来收集情报的所有遥感、传感器材,如雷达、声呐、光学摄影仪等。

C4ISR仿真系统中的各项活动都离不开信息,信息的流动贯穿于系统的全过程,并确定系统的作用,因而专门设计了一个信息类。信息类的操作有获取、处理、传输、利用;属性有类型、大小、格式、来源、标号。信息类的子类包括情报、指挥信息、数据库交互信息和系统管理信息四类,情报包括雷达情报、侦察情报、电子对抗情报、航行情报、气象情报以及综合情报、综合态势等。指挥信息包括指挥命令、协同信息、作战文电等。空军C4ISR仿真系统主要类图如图2.2所示。

3.系统动态结构分析视图

系统动态结构分析视图一般包括顺序图、协作图、活动图和状态图,其中,顺序图与协作图、状态图与活动图在语义上是等价的。顺序图注重消息的时间次序,协作图注重收发消息的对象的组织结构,状态图注重由事件驱动的系统变化状态,活动图注重活动到活动的控制流,是状态图的一个特例。下面主要以顺序图和状态图为例来说明空军C4ISR仿真系统动态特性的描述方法。

顺序图的重要特点在于它非常直观地展示了对象之间传递消息的时间顺序,反映了对象之间的一次特定的交互过程,即在系统执行过程中某个特定时刻所发生的事情。下面以空军C4ISR系统防空作战行动仿真为例,用顺序图描述它们之间的动态控制关系。其过程如下:首先,主窗口启动仿真控制开始仿真,同时初始化显示控制席位、仿真控制子程序,启动仿真钟,推进时间计数器,开始计时服务。其次,仿真控制开始更新目标状态,并指示雷达搜索目标。当指控系统截获到目标时,开始跟踪目标、进行威胁评估、目标分配,进而下达命令给武器系统。武器系统收到命令后开始截获目标、锁定目标并发射导弹,收到自卫命令时拦截目标、毁伤目标。另外,目标在仿真控制下机动地做出攻击行动,显示控制实时显示目标航迹信息、导弹轨迹信息。最后,武器系统上报毁伤报告给指控系统,一个仿真控制过程结束,如图2.3所示。图中顶部的矩形框描述了参与该行动的对象和角色。对于每个对象,其下都有一条竖虚线代表该对象的生命周期,初始化对象时生命线开始,删除对象时生命线结束,由上至下表示整个过程中各事件发生的先后关系。对象之间的箭头表示了对象间的通信,有箭头的一方为被调用对象,另一方为调用对象。

图2.3 防空作战行动仿真控制过程

下面用顺序图对雷达情报处理功能进行详细介绍。雷达情报处理指挥员与指挥引导实例交互,对战斗机进行指挥引导。指挥引导向信息分发实例订阅信息,信息分发实例根据用户订阅规则分发信息。指挥引导实例分别向上级和下级指挥所请求调阅引导画面,上级和下级指挥所根据情况向指挥引导返回引导画面,整个过程如图2.4所示。

图2.4 雷达情报处理功能顺序图

状态图描述所有可能的状态及事件发生时状态的转移条件。在图2.5中,圆角矩形表示状态,箭头表示状态的转移。对于空军C4ISR仿真系统防空作战行动中的雷达,图2.5用UML的状态图描述了其在作战过程中的可能状态变化。默认状态是“待机”;当雷达系统收到监视新目标的命令后,就转移到“调转”状态,调转雷达天线以大致对准目标所在位置;完成调转后,雷达就进入“工作”状态。这时,雷达首先进入“搜索”状态,若无目标回波,则进入“空闲”状态;当有目标回波脉冲信号到达时,就进行目标航迹数据处理。如果目标在雷达跟踪门内,则雷达由“搜索”状态转换为“跟踪”状态;若目标不在雷达跟踪门内,则雷达由“跟踪”状态回到“搜索”状态;若雷达完全丢失目标,则回到“待机”状态。若雷达在“待机”或“工作”状态被毁伤,则雷达回到“关机”状态。若雷达在“工作”状态下出现故障,则进入“检修”状态,修复后,重新回到“待机”状态。

图2.5 UML的状态图