e6数据库在计算机生成兵力系统中的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实时数据库在计算机生成兵力系统中的应用
王亚男 韩亮
北京航空航天大学先进仿真技术航空科技重点实验室
摘要 CGF 系统中所处理的数据大多是与时间相关的,这使得系统既要维护大量的共享数据,又要强调数据应用活动的时间性。
因此在CGF 系统中,需要有一个RTDBS 在仿真运行时实时地存储仿真实体运行过程中的变量的数据。
本文讨论了实时数据和实时数据库的基本特征,提出了在CGF 系统中应用RTDBS 的体系结构和逻辑结构,最后介绍了在CGF 系统中应用RTDBS 的实例。
关键词 计算机生成兵力 实时数据库
1. 计算机生成兵力
1.1. 概述
计算机生成兵力(CGF, Computer Generated Forces )是由计算机生成、控制其行为并具备一定自治性和智能的虚拟实体,它能在虚拟战场环境中与其它计算机生成兵力或真实实体交互。
CGF 应用的目的在于增加虚拟战场环境中仿真实体的数量,为参加演习训练的仿真实体提供足够的作战对手或友军支援,提高虚拟战场环境中的作战规模,使得参加训练的人员可以沉浸于其中。
目前,CGF 技术主要应用于训练演习、战术开发、武器系统研制、试验及评估等领域,可以节省大量的人力、物力、资金和时间,受到众多国内外政府部门,军事机构和科研单位的广泛重视。
1.2. CGF 系统中的数据实时性
CGF 系统中最基本的时间是物理时间,即自然时间。
对应于真实世界的物理时间,仿真中的虚拟世界有一个仿真系统所表现出来的仿真时间T ,它与物理时间t 的关系如下:
()T t t k T 0∆+−×=
式中k 是比例因子,0t 是仿真开始或重新运行时的物理时间,T ∆是偏差。
当T ∆等于零时,若k=1则为实时仿真;若k >1则称为欠实时仿真,反之则为超实时仿真。
仿真时间是整个CGF 系统运行的背景时间,也是整个系统运行的关键,因此,对CGF 系统中的大部分数据而言,数据的产生时间和有效时间与数据的值同样重要,这种数据称为实时数据。
一个实时数据通常定义成一个三元组,tp ,evi ,v :d 。
其中d 为实时数据的标识符,
分量v d 为d 的当前状态或当前值;
tp d 为d 的观测时标,即d 的采样时间或生成时间; evi d 为d 的外部(或绝对)有效期,即从tp d 算起v d 具有外部(或绝对)有效性的时间长短。
2. 实时数据库系统
实时数据库系统(RTDBS,Real-Time Database System)就是其事务和数据都可以具有定时特性或显示定时特性的数据库,系统的正确性不仅依赖于逻辑结果,而且依赖于逻辑结果产生的时间。
实时数据库可以看作是传统的数据库系统与实时系统相结合的产物。
在实时数据库系统中,数据和事务除了有着与传统数据库类似之处外,还有着与传统数据库不同的特点,主要体现在数据和事务的时间约束上。
实时数据库系统中的数据要同时具有内部一致性和外部一致性。
内部一致性就是指传统意义下的数据库内部的一致性;外部一致性则要求数据库中数据的状态与物理世界当时的状态一致,即要求:
()evi tp c d d t ≤−
其中c t 是当前时间。
外部一致性与时间限制紧密相关,当实时数据的外部一致性和内部一致性发生冲突时,应先牺牲内部一致性来保证外部一致性,然后再来恢复内部一致性。
此外,当一组实时数据被使用时,还需要由相互一致性来保证这一组数据是在公共的有效时间范围内彼此接近的产生的。
实时数据库系统事务最根本的特点是定时性,定时可以是按绝对时间、相对时间或周期时间。
例如:“11点时将环境温度设为25℃”、“空气湿度增加x 时能见度下降1”、“每隔六秒钟更新一次CGF 系统中的大气数据”等。
事务的定时性包括了两方面的含义:一是定时限制,即事务的执行具有显示的时限,如期限、截止时间等;二是定时正确性,即事务能按合适的时间要求正确执行。
3. 实时数据库系统在CGF 系统中的应用
实时数据库系统在CGF 系统的仿真运行过程中是非常重要的。
一方面,仿真过程中会产生大量的实时性数据需要用实时数据库系统进行管理,例如,表示地形地貌的数据被系统某一仿真节点程序所修改,这些数据就需要作为实时性的数据存入实时数据库系统中,这样才能保证其他节点程序可以实时地读取到当前地形地貌的准确数据;另一方面,通过实时数据库存储这些实时数据,可以较容易地重复运行仿真的过程,通过对这些实时数据进行深入地分析,可以得到更为有价值的研究成果。
CGF 系统中的实时数据库应具有以下功能:
1.仿真系统各节点能够实时的将数据传送到实时数据库中,并在数据库的记录中记下相关的时戳。
2.仿真系统各节点能够实时的从实时数据库中读取数据及其相关的时戳。
3.实时数据库能够通过“识时协议”确保数据的实时性满足计算机生成兵力系统的要求。
4.实时数据库能够通过其调度和并发控制等机制确保在多用户情况下数据的正确写入和正确读出。
5.实时数据库能够同分布数据库进行数据交换。
3.1.实时数据库系统的体系结构
由于CGF系统具有分布性的特点,故实时数据库系统采用客户/服务器的结构,各个仿真应用节点通过RTI接口模块与服务器进行通信,提交数据查询请求,服务器处理请求后通过RTI返回处理的结果给客户端。
图1:实时数据库体系结构
实时数据库中的数据是以一定的数据结构形式存储在内存里的,将这种数据称为活动数据,实时数据库通过这些活动数据为CGF提供实时数据管理服务。
由于内存是有限的,所以需要有一个数据存储模块使得暂时不用的数据以数据文件的形式保存到磁盘上,这些数据文件可以在仿真运行开始前或结束后与传统的分布式数据库进行交互。
实时数据库系统的管理模块主要包括:数据存取管理模块、事务管理模块、并发控制模块、调度管理模块等,此外,还需要提供与各仿真节点程序之间的接口模块。
实时数据库系统的体系结构如图1所示。
3.2.实时数据库的逻辑结构
数据存取管理模块提供数据的查询功能并负责将数据保存在内存中;事务管理模块负责将一组操作组织成事务并且提交事务;并发控制负责监视读写数据时发生的冲突,并且通过并发控制协议来解决冲突;调度管理负责根据调度算法来调度不同任务的执行,以满足时间约束条件。
实时数据库系统的逻辑框图如图2所示,客户通过调用实时数据库系统提供的客户端API接口,将请求发送给实时数据库系统的服务器,服务器维护一个请求队列(Request List)来接收客户发来的请求,然后由事务管理模块为队列中的每个请求建立一个事务,由调度管理模块来对这些事务进行调度管理,使时间要求高的事务得到优先处理,数据输入/输出完成对数据的写入和读出的管理,由内存管理模块最终将数据写入或读出内存,在事务的处理过程中由并发控制模块来解决数据访问时发生的冲突,数据存储模块)负责将数据存在磁盘的数据文件中。
图2:实时数据库的逻辑结构
4.在CGF系统中应用实时数据库的实例
在北京航空航天大学先进仿真技术航空科技重点实验室开发的计算机生成兵力系统中,采用实时数据库系统来存储表示大气环境的数据,其他仿真节点可以根据需要访问数据库并获得实时数据。
实时数据库的应用为CGF系统中的实体模型尤其是飞行器模型提供了关于其运行环境的描述,提高了模型的仿真精度,也使得整个CGF系统的真实度和逼真度得以增强。
参考文献
1.赵新俊. 分布虚拟环境中数据/模型的分析和管理的研究. 北京航空航天大学博士学位论文,
2003.10
2.刘云生著. 现代数据库技术. 北京:国防工业出版社,2001.3
3.庞国锋,王晋军. 虚拟战场环境中大气环境的研究与应用. 飞行力学,2003.3
实时数据库在计算机生成兵力系统中的应用
作者:王亚男, 韩亮
作者单位:北京航空航天大学先进仿真技术航空科技重点实验室本文链接:/Conference_5616550.aspx。