本文主要对近期所翻阅的一些论文及资料进行的概要性整理,后续会有更多的关于HLA的研究细节发布,基于博客园的知识共享平台,以期共同进步!

一、引言

仿真的历史由来已久,在系统研制过程中,基于建模及仿真技术能够有效的降低系统研制周期、提高研发效率以及提高系统的可靠性和稳定性。随着系统规模和复杂度的不断提高,如何提高仿真效率是重要的研究课题之一。分布式仿真能够充分利用分布式并行计算的特点,大幅度提高仿真效率。

不同企业、组织,或统一组织内的不同部门由于专业领域的不同,一般是基于自身专业领域开发不同的仿真应用。而这些仿真应用一般处于天然隔离之下。如何提高仿真应用间的重用和互操作是一个值得研究的领域,而标准化正是解决这类问题的典型方式。因此,建立一个通用的建模仿真技术框架以及相应的标准、规范是一个有效途径。

由此诞生的美国国防部的MSMP计划正是这样一个计划。MSMP制定了一系列目标,其中之一就是“为建模和仿真提供共同的技术框架”。由此,美国国防部在发布了针对建模仿真领域的通用技术框架。该框架有CMMS、HLA和一系列数据标准组成。HLA正是在这样的背景下,作为建模仿真的通用技术框架的一部分而出现在大众视野中。

二、HLA基本思想

HLA,英文 High Level Architecture,即高层体系结构,是一个通用的建模仿真的技术框架,其主要关注仿真应用间的互操作性和重用性。

HLA的组成类似于面向对象的思想,即客观世界是由对象以及对象间的交互组成。HLA的总体体系结构如下图所示,HLA将 实现某种特定仿真目的的仿真系统 抽象为联邦,将仿真系统中存在交互关系的仿真应用抽象为 联邦成员(Federate),将系统仿真过程中的实体通过对象进行组织。一个联邦包含多个联邦成员,一个联邦成员包含多个对象。仿真执行的过程正是基于联邦成员间的交互过程。

HLA的逻辑拓扑如下图所示:HLA将仿真过程中的所需的交互信息通过统一的、规范的格式进行表述。仿真过程的执行,正是基于一致的信息表述,联邦成员间的相互交互而完成。联邦成员间的交互不是两两独立进行,而是通过公共的基础服务支持框架RTI(Run Time Infrastructure)实现。仿真系统被抽象为联邦成员的组合和交互。RTI是HLA的核心部分之一,它为仿真执行提供底层的基础服务支撑。类似于局域网内的“HUB”,仿真过程中所有的信息交互必须通过RTI完成。

基于Hub式的架构风格,将仿真应用的实现与基础支撑服务分隔开,仿真人员只关注于特定垂直领域的仿真实现,而不必关系复杂的底层通信服务。同样,基于一致的信息表述和服务接口,使得联邦成员的表述以及成员间的信息交互变得行为更加一致。

三、HLA组成

基于美国国防部建模与仿真办公室DMSO发布的HLA官方文档,HLA主要包括规则、对象模型模板以及接口规范三个部分,如下图所示。

3.1 规则

规则是HLA中联邦设计所需要遵循的基本准则,HLA中包含 10 个规则,分别对联邦和联邦成员设计过程中的遵循准则进行了描述

1. 联邦中有一个联邦对象模型

2. 联邦中,FOM中的所有对象实例属于各个联邦成员,而不应该在RTI中。

3. 联邦执行是,联邦成员间的FOM规定的数据交互必须通过RTI进行。

4. 联邦成员通过HLA提供的标准接口与RTI进行交互。

5. 联邦执行过程中的任一给定时间,一个对象的属性只能为一个成员所拥有。

6. 联邦成员应该有一个符合OMT规范的成员对象模型,即SOM

7. 成员能够对其SOM的属性进行更新/反射,也能对SOM的交互进行发送/接收

8. 成员应该能按照SOM的规定,在联邦执行过程中进行所有权的转移与接收。

9. 成员能按照SOM的规定,改变更新对象属性的条件。

10.成员应该能管理局部时间,从而保证它能协调的与其他成员交换数据。

3.2 对象模型模板OMT

对象模型模板,即 “Object Model Template”,简称OMT是对联邦中的信息进行统一描述的统一格式描述。不论是联邦的FOM还是联邦成员的SOM都要遵循OMT的格式要求对对象信息进行描述。OMT通过对信息描述格式的统一,更加有力的支撑了的成员间的互操作性和重用原则。

3.3 接口规范

接口规范定义了系统仿真过程中需要实现的服务接口的标准形式,为RTI以及联邦成员的RTI模块实现提供指导。HLA文档中的接口规范定义涉及了 6 种类型的服务接口定义,如下图所示:

1. 联邦管理服务:主要包括创建联邦执行以及执行过程中对联邦的动态控制相关的服务。如创建联邦执行、加入联邦执行、请求暂停、请求恢复运行等。

2. 声明管理服务:主要用于成员向RTI生命它提供的信息与能发出的交互,以及希望从其他联邦成员接收的信息和交互。

3. 对象管理服务:主要包括对象的动态管理、成员间对象互操作

4. 所有权管理服务:主要用于管理对象的所有权在成员间的接收和转移。

5. 时间管理服务:主要用于仿真过程中的时间管理。

6. 数据分发管理服务:主要包括针对联邦成员间进行数据分发的路径空间进行管理的服务接口

总结

HLA是建模仿真领域的通用技术框架,借鉴面向对象思想,其将仿真系统抽象为联邦、联邦成员、对象。仿真的执行过程抽象为联邦成员间基于RTI的交互过程。

HLA文档包含规则、接口规范和OMT三部分,接口规范对HLA基础服务进行了定义,OMT对HLA的对象及交互进行的表述格式进行了统一,规则对联邦及联邦成员的构建所遵循的规则进行的约束。

RTI是HLA的核心,其对HLA的接口规范进行标准实现,为建模仿真提供基础的服务支撑。

【HLA】初识HLA/RTI相关推荐

  1. HLA(high level architecture) 高层体系结构

    HLA(high level architecture) 高层体系结构 简介 HLA 是分布交互仿真的高层体系结构,它不考虑如何由对象构建成员,而是在假设已有成员的情况下考虑如何构建联邦.HLA 主要 ...

  2. HLA接口规范(六大服务)

    六大服务 联邦管理 主要内容 联邦管理是指对一个联邦执行的创建.动态控制.修改和删除等过程. 联邦执行是指在联邦(仿真系统)运行过程当中,RTI根据联邦成员的请求,用一个指定的FOM及相关的联邦细节数 ...

  3. HLA程序:HelloWorld.hla

    HLA程序:HelloWorld 教材:<汇编语言编程艺术> 1.下载hla,安装到d:\hla,并在环境变量中设置好路径. 2.在d盘创建一个文件夹myhla,用于存放hla源程序. 3 ...

  4. A transformer-based model to predict peptide– HLA class I binding and optimize mutated peptides for

    文章链接:https://www.nature.com/articles/s42256-022-00459-7.pdf DOI:10.1038/s42256-022-00459-7 期刊:Nature ...

  5. 文献阅读001:由I类HLA转录缺失导致的联合免疫治疗的获得性癌症耐药性

    背景 Merkel cell carcinoma:梅克尔细胞癌又名皮肤小梁状癌.原发性皮肤神经内分泌癌.皮肤原发性小细胞癌及皮肤APUD瘤. HLA:MHC基因产物在不同细胞表面表达,通常称之为MHC ...

  6. Polysolver预测HLA分型原理及测试

    1.什么是HLA: HLA(human leukocyte antigen ,人类白细胞抗原)是人类的主要组织相容性复合体(MHC)的表达产物,该系统是所知人体最复杂的多态系统.自1958年发现(Je ...

  7. R语言系统自带及附属包开元可用数据集汇总

    R语言系统自带及附属包开元可用数据集汇总 目录 R语言系统自带及附属包开元可用数据集汇总 #R自带数据集 #R的各种包自带数据集 #R自带数据集 向量 euro #欧元汇率,长度为11,每个元素都有命 ...

  8. 虚拟现实技术的发展和分类

    首先需要说明的是,虚拟现实技术很早就有,最早发源于美国军事领域,然后传到国内的军事领域,然后是房地产等行业,本人作为传统虚拟现实行业的参入者,对虚拟现实做一个简单梳理. 按照传统虚拟现实的发展,和最新 ...

  9. KY-RTI分布仿真技术:附录1 分组聊天(HLA数据分发管理的应用)

    本章从RTI开发者的角度简单地介绍HLA1.3标准中的数据分发管理(DDM,Data Distributed Management)并给出了一个具体的示例.前面介绍了基于各种程序设计语言开发的聊天程序 ...

  10. HLA(高级体系结构,High Level Architecture) 介绍

    HLA(高级体系结构,High Level Architecture),在美国国防建模与仿真办公室(DMSO)1995年10月制定的建模与仿真主计划(MSMP)中,提出了未来建模/仿真的共同技术框架. ...

最新文章

  1. 原生、无依赖的web弹层组件——HLayer.js
  2. IO流文件的相对路径及获取系统路径方法
  3. jbpm系列之五--使用decision节点判断分支情况
  4. 微信 获取wx.config 参数 基类
  5. 使用Python往Elasticsearch插入数据
  6. Abp vnext Web应用程序开发教程 4 —— 集成测试
  7. 求解无约束最优化问题的共轭梯度法matlab程序,Matlab实现FR共轭梯度法
  8. IM直播聊天--西瓜视频
  9. ASSIMP的数据结构
  10. 数据库系统原理与应用教程(031)—— MySQL 的数据完整性(四):定义外键(FOREIGN KEY)
  11. java 异步网络编程_java网络编程实战 - 基于BIO的伪异步、高并发、全双工、长链接持续消息IO的网络编程...
  12. BZOJ2748: [HAOI2012]音量调节
  13. 从一元函数极值问题理解遗传算法
  14. kali linux xfce桌面修改锁屏背景图片
  15. 8、Android Studio 使用MNN进行Swin_Transformer分类识别
  16. TPT Autotester|高效快捷的车辆在环ViL测试工具
  17. js中的escape方法有什么用?
  18. 安卓学习文档收集汇总
  19. 网络带宽---(上)
  20. MySQL语句进阶记录(四)

热门文章

  1. mysql磁盘空间碎片回收
  2. 欢迎来到Wagtail的文档
  3. python开发cms企业官网用python php_基于Django的Python CMS
  4. JS 案例 改变网页背景颜色
  5. 折腾笔记-做网线+二层傻瓜交换机部署
  6. android+cordova+windows打包vue一条龙服务
  7. Windows 10虚拟机Vmware 安装 黑苹果macos10.14
  8. 关于顶级域名、二级域名、子域名的问题
  9. android 设置iptv vlan tag的命令,关于VLAN TAG的命令行设置
  10. 电脑系统重装出现蓝屏解决方法