CN113420468A - 一种基于通用黑板的数据写入冲突处理方法和系统 - Google Patents
一种基于通用黑板的数据写入冲突处理方法和系统 Download PDFInfo
- Publication number
- CN113420468A CN113420468A CN202110972658.9A CN202110972658A CN113420468A CN 113420468 A CN113420468 A CN 113420468A CN 202110972658 A CN202110972658 A CN 202110972658A CN 113420468 A CN113420468 A CN 113420468A
- Authority
- CN
- China
- Prior art keywords
- parameter value
- descriptor
- autonomous
- interactive process
- autonomous interactive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 159
- 230000008569 process Effects 0.000 claims abstract description 136
- 238000004088 simulation Methods 0.000 claims abstract description 74
- 230000002452 interceptive effect Effects 0.000 claims abstract description 65
- 238000004364 calculation method Methods 0.000 claims abstract description 46
- 230000004048 modification Effects 0.000 claims abstract description 29
- 238000012986 modification Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000012216 screening Methods 0.000 claims abstract description 7
- 230000003993 interaction Effects 0.000 claims description 36
- 238000013507 mapping Methods 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims 1
- 238000012549 training Methods 0.000 abstract description 16
- 239000000446 fuel Substances 0.000 description 13
- 239000002828 fuel tank Substances 0.000 description 7
- 238000004880 explosion Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011158 quantitative evaluation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
- G06Q50/2057—Career enhancement or continuing education service
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B9/00—Simulators for teaching or training purposes
- G09B9/003—Simulators for teaching or training purposes for military purposes and tactics
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于通用黑板的数据写入冲突处理方法和系统,方法包括:对仿真实体的每个预设参数设置对应的描述子;为每个描述子分配唯一的自主交互进程;当任一自主交互进程判定自身的仿真计算结果包含与对应描述子不一致的第一参数值时,获取第一参数值对应的目标自主交互进程,并通过远程过程调用方法向目标自主交互进程发送修改指令,以命令目标自主交互进程对第一参数值进行处理。本发明通过唯一的自主交互进程接收并处理其他自主交互进程仿真计算过程中产生的与对应描述子相关的状态数据,并通过对多个状态数据的筛选原则进行预先配置,无需设置数据的竞争回滚方案即可避免数据写入冲突,保证了军事模拟训练系统的实时性要求。
Description
技术领域
本发明涉及军事模拟训练领域,尤其涉及一种基于通用黑板的数据写入冲突处理方法和系统。
背景技术
随着现代军事化要求,军事训练越来越强调对抗性,特别是针对高技术条件下军事作战的特点而发展起来的军事模拟训练,成为提高部队战斗力的重要手段。与传统训练手段相比,军事模拟训练不受实操训练设备使用情况的限制,并且在作战环境和操作使用上与实战十分相似,同时,利用模拟训练手段,还能够真实记录训练情况,做到训练水平的量化评估。一般情况下,军事模拟训练系统运行过程中会采用不同进程进行不同描述子的模拟运算,而通过不同进程的仿真计算有可能得到同一时钟周期或者不同时钟周期内相同描述子的多个状态值,此时就存在数据写入冲突的问题,影响整个军事模拟训练系统的仿真效果。
发明内容
本发明提供了一种基于通用黑板的数据写入冲突处理方法和系统,解决了以上所述的技术问题。
本发明解决上述技术问题的技术方案如下:一种基于通用黑板的数据写入冲突处理方法,包括以下步骤:
S1,对仿真实体的每个预设参数设置对应的描述子;
S2,为每个所述描述子分配唯一的自主交互进程;
S3,当任一自主交互进程判定自身的仿真计算结果包含与对应描述子不一致的第一参数值时,获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
本发明实施例的第二方面提供了一种基于通用黑板的数据写入冲突处理系统,包括设置模块、分配模块和至少一个自主交互进程,
所述设置模块用于对仿真实体的每个预设参数设置对应的描述子;
所述设置模块用于为每个所述描述子分配唯一的自主交互进程;
所述至少一个自主交互进程中每个自主交互进程用于判定自身的仿真计算结果是否包含与对应描述子不一致的第一参数值,若是则获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
本发明提供了一种基于通用黑板的数据写入冲突处理方法和系统,具有以下有益效果:
(1)本发明采用GBB通用黑板技术,将大量的复杂模型根据计算量的大小合理配置到不同的仿真进程,提高了仿真模型的计算效率;同时采用GBB通用黑板技术实现了本地黑板数据的快速读写以及网络数据的高速共享,从而保证了军事模拟训练系统的实时共享性和业务协同性。
(2)本发明为仿真实体的每个描述子分配唯一的自主交互进程 ,通过该自主交互进程接收并处理其他自主交互进程计算过程中产生的与该描述子相关的状态数据,并通过对多个状态数据的筛选原则进行配置,无需设置数据的竞争回滚方案即可避免数据写入冲突,保证了军事模拟训练系统的实时性要求。
(3)本发明绕过了CPU直接采用网线进行本地内存同步,同时进行仿真计算时合理选择通用黑板的共享内存数据或者本地数据,无需每次都拉取通用黑板的共享内存数据,从而进一步提高了仿真速度和仿真效率。
为使发明的上述目的、特征和优点能更明显易懂,下文特举本发明较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是实施例1提供的基于通用黑板的数据写入冲突处理方法的流程示意图;
图2是实施例1提供的基于通用黑板的数据写入冲突处理方法的时序图;
图3是实施例2提供的基于通用黑板的数据写入冲突处理系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
通用黑板GBB(GenericBlack-Board)是一个通用的本地共享仓库,在仿真应用时,它包含了整个仿真执行过程的应用数据,同时采用共享内存空间机制,使得所有自主交互进程(Agent)能够在任何时间访问并应用该数据。具体来说,GBB内存分配采用内存换性能的策略,在系统运行前按本地黑板所需最大的数据量提前分配内存空间,系统运行期间,黑板不再进行内存分配与释放。且GBB每块数据区采用“读、写”双缓存机制,通过双缓存的轮转解决多应用数据同步问题。
如图1、图2所示,本实施例的基于通用黑板的数据写入冲突处理方法包括以下步骤:
S1,对仿真实体的每个预设参数设置对应的描述子。
S2,为每个所述描述子分配唯一的自主交互进程。优选实施例可以同时生成所述自主交互进程和对应描述子的映射关系表,方便后续步骤进行查询。
具体来说,一个军事模拟训练系统中包括多个采用类,比如class建立的仿真实体,比如船、无人机、导弹等仿真实体,每个仿真实体均设有多个预设参数用来描述所述仿真实体的实时状态,比如船的位置信息和油量信息等。而每个预设参数采用一个描述子进行表示,且同一时间只有一个对应的自主交互进程可以对该描述子的状态值进行修改,从而修改该仿真实体的对应预设参数值。
与此同时,所述通用黑板具有包括至少一个仿真实体的实体信息表,且每个仿真实体均具有对应的描述符表,所述实体信息表中包含这些仿真实体的ID、创建时间和创建类型等,所述描述符表包括所述仿真实体对应的至少一个描述子的字段、状态值、最后更新时间以及唯一对应的自主交互进程ID。
这样,在分布式系统的每台PC机中均存在一块本地共享仓库(即GBB)和多个自主交互进程(agent),自主交互进程比如界面更新进程(即GUI)可以只读取GBB的共享内存,而比如位置计算进程需要读取黑板数据并计算移动位置后将计算结果写入共享内存。每个自主交互进程需要在各自的时钟周期内完成读取、计算和/或写入数据等步骤,如果每个自主交互进程的步调即时钟周期都保持一致,那么整体仿真数据的一致性、同时性就保持得比较好。
然后执行如图1所示的步骤S3,当任一自主交互进程判定自身的仿真计算结果包含与对应描述子不一致的第一参数值时,比如任一自主交互进程发现其仿真计算结果包括某一参数值,该参数值与从通用黑白GBB中拉取的原值类型不一致时,即可判定该参数值为第一参数值,获取所述第一参数值对应的目标自主交互进程,比如调用并查询所述映射关系表获取所述第一参数值对应的目标自主交互进程,然后通过远程过程调用方法,即RPC方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
举例来说,比如存在一个油耗计算进程计算每个仿真实体比如船、无人机的油箱油量,同时爆炸计算进程计算导弹是否会击中船舶以及击中时刻,如果计算结果为导弹将击中船舶,此时船舶的油箱油量也需要归零,因此,爆炸计算进程的仿真计算结果在某些情况下也会包含油箱油量数据。此时,爆炸计算进程会发现该油量数据不是自己对应描述子的第一参数值(因为自己的描述子对应第一参数值是击中时刻以及是否击中),因此不会直接写入该油箱油量数据,而是获取该油量数据对应的目标自主交互进程,即预先设定的用于计算油箱油量数据的油耗计算进程,然后将该油箱油量数据发送给油耗计算进程,再由该油耗计算进程作为目标自主交互进程进行处理。
上述实施例通过唯一的自主交互进程接收并处理其他自主交互进程仿真计算过程中产生的与对应描述子相关的状态数据,无需设置数据的竞争回滚方案即可避免数据写入冲突,保证了军事模拟训练系统的实时性要求。
优选实施例中,该基于通用黑板的数据写入冲突处理方法还需要用到与多个自主交互进程相连接的主控模块(即master)来对多个自主交互进程进行控制。具体方法包括以下步骤:
S401,所述目标自主交互进程接收所述修改指令,并判断所述修改指令的来源是否合理,若是,则执行步骤S402,若否,则放弃所述修改指令。一个具体实施例中,所述目标自主交互进程查询预先建立的数据写入索引表,并判断所述修改指令的发送对象是否为所述数据写入索引表的预设写入对象,若是,则判定所述修改指令的来源合法,否则,判定所述修改指令的来源不合法。
S402,所述目标自主交互进程获取对应描述子的预设写入配置文件,将所述预设写入配置文件、所述第一参数值以及自身仿真计算生成的第二参数值序列化生成第一补丁文件,并通过消息路由将所述第一补丁文件发送至主控模块。这个第一补丁文件实际上是对通用黑板内容的差异化补丁。举例来说,通用黑板的实体信息表包括一艘船,该船具有d1、d2、d3三个描述子,其中d1是油箱油量数据。此时油耗计算进程接收到时钟消息tick后,从通用黑板中拉取该油箱油量数据d1,并仿真计算形成第二参数值d1’,同时接收到爆炸计算进程发送的第一参数值d0,此时就会把第一参数值d0和第二参数值d1’整个序列化成一个字符串,并通过消息路由将这个字符串作为第一补丁文件发送给主控模块Master。
S403,所述主控模块接收所述第一补丁文件,根据所述预设写入配置文件对所述第一参数值和所述第二参数值进行筛选后,将筛选结果和同一时间周期内其他自主交互进程发送的第一补丁文件打包生成第二补丁文件,并将所述第二补丁文件写入所述通用黑板后,生成并发布对应的索引消息,所述索引消息包括所述第二补丁文件中状态值发生变化的目标描述子的字段,这样通过索引消息即可告知这些自主交互进程哪些描述子发生了变化,即哪些描述子的状态值被更新了。可选实施例中,所述预设写入配置文件包括:
当所述第一参数值和所述第二参数值对应的时钟周期不同时,从所述第一参数值和所述第二参数值中选择对应描述子的最新参数值;
当所述第一参数值和所述第二参数值对应的时钟周期相同时,从所述第一参数值和所述第二参数值中进行随机选择或者根据发送对象的优先级进行选择。
这样主控模块就可以主动对获取到的同一描述子的多个数据进行筛选,并将筛选结果和其他自主交互进程,比如位置计算进程发送的包括位置数据的第一补丁文件进行打包,生成第二补丁文件,然后对通用黑板数据进行一次性的批量修改,从而提高仿真效率。当数据修改成功后再通过索引消息通知其他自主交互进程这艘船的位置发生变化了、油箱油量发生了变化等等,这时第一周期就全部结束了。这里的索引消息中只包括第二补丁文件中状态值发生变化的目标描述子的字段,没有实际的描述子的数据,比如经纬度值,因此数据量非常小,比如1亿个仿真实体的索引消息才几k,最多几M,从而保持较快的同步速度。
然后S404,至少一个自主交互进程接收主控模块发布的索引消息和下一时钟消息,并根据索引消息判断通用黑板中待拉取的目标数据是否发生变化,若是,则从通用黑板中拉取最新的目标数据进行仿真计算,若否,则直接读取本地的目标数据进行仿真计算。具体来说,通过索引消息,每个自主交互进程均知道哪些描述子的状态值发生了改变以及被谁修改了。这时,当某一自主交互进程判断所需要使用的状态值发生改变时,即本地数据已经落后了,就从通用黑板中拉取最新数据并复写到本地对应数据;而判断状态值没有发生改变时,即本地数据没有落后,就直接读取本地数据进行计算。因为通用黑板的读取速度是微秒级,而本地数据通过CPU指令的读取速度是纳秒级,这样就无需经常读取通用黑板,直接读取本地值就可以了,从而提高整体的速度读取速度和仿真速度。
一个优选实施例中,所述主控模块判断任一第一补丁文件中同一描述子是否存在至少两个参数值,若是,则生成报警指令,以提醒用户存在至少两个自主交互进程对同一描述子的状态进行仿真计算。
以上实施例基于通用黑板的数据写入冲突处理方法,采用GBB通用黑板技术实现了本地黑板数据的快速读写以及网络数据的高速共享,同时采用消息路由进行本地内存同步,且在仿真计算时合理选择通用黑板数据或者本地数据,进一步提高了仿真速度和仿真效率。
需要说明的是,在上述各个实施例中,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。
作为本发明实施例的另一方面,本发明实施例还提供一种基于通用黑板的数据写入冲突处理系统,如图3所示,包括设置模块100、分配模块200和至少一个自主交互进程300,
所述设置模块100用于对仿真实体的每个预设参数设置对应的描述子;
所述设置模块200用于为每个所述描述子分配唯一的自主交互进程;
所述至少一个自主交互进程中每个自主交互进程300用于判定自身的仿真计算结果是否包含与对应描述子不一致的第一参数值,若是则获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
可选的,所述系统还包括与所述自主交互进程300连接的主控模块400,
所述目标自主交互进程用于接收所述修改指令,判断所述修改指令的来源是否合理,并在来源合理时获取对应描述子的预设写入配置文件,将所述预设写入配置文件、所述第一参数值以及自身仿真计算生成的第二参数值序列化生成第一补丁文件,并通过消息路由将所述第一补丁文件发送至主控模块,以及在来源不合理时则放弃所述修改指令对应的第一参数值;
所述主控模块400用于接收所述第一补丁文件,根据所述预设写入配置文件对所述第一参数值和所述第二参数值进行筛选后,并将筛选结果和同一时间周期内其他自主交互进程发送的第一补丁文件打包生成第二补丁文件,且将所述第二补丁文件写入所述通用黑板后,生成并发布对应的索引消息;所述索引消息包括所述第二补丁文件中状态值发生变化的目标描述子的字段。
可选实施例中,所述主控模块400还用于判断任一第一补丁文件中同一描述子是否存在至少两个参数值,若是,则生成报警指令,以提醒用户存在至少两个自主交互进程对同一描述子的状态进行仿真计算。
可选实施例中,所述自主交互进程300还用于接收主控模块400发布的索引消息和下一时钟消息,并根据索引消息判断通用黑板中待拉取的目标数据是否发生变化,若是,则从通用黑板中拉取最新的目标数据进行仿真计算,若否,则直接读取本地的目标数据进行仿真计算。
本发明中,主控模块以BBMaster、BBMasterPrivate、IMasterService为基类,MasterServiceProxy、MasterMasterService、ReplayMasterService、SimulationMasterService、SlaverMasterService为主控主要服务端交互子类。主控模块对外处理与自主交互进程的数据交换接口主要通过GBBAccessor类提供,GBBAccessor与自主交互进程为1:1关系,通过BBClient管理GBBAccessor。BBClient与GBBAccessor为1:n关系,BBClient可以直接访问黑板数据,这样自主交互进程都是通过BBClient来访问黑板数据,通过观察者模式来进行仿真、快照、回放等模式的多节点分布式数据同步。
需要说明的是,上述基于通用黑板的数据写入冲突处理系统可执行本发明实施例所提供的基于通用黑板的数据写入冲突处理方法,具备执行方法相应的功能模块和有益效果。未在基于通用黑板的数据写入冲突处理系统实施例中详尽描述的技术细节,可参见本发明实施例所提供的基于通用黑板的数据写入冲突处理方法。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于通用黑板的数据写入冲突处理方法,其特征在于,包括以下步骤:
S1,对仿真实体的每个预设参数设置对应的描述子;
S2,为每个所述描述子分配唯一的自主交互进程;
S3,当任一自主交互进程判定自身的仿真计算结果包含与对应描述子不一致的第一参数值时,获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
2.根据权利要求1所述基于通用黑板的数据写入冲突处理方法,其特征在于,步骤S2为每个所述描述子分配唯一的自主交互进程时,生成所述自主交互进程和对应描述子的映射关系表;
当任一自主交互进程判定自身的仿真计算结果包含与对应描述子不一致的第一参数值时,调用并查询所述映射关系表获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令。
3.根据权利要求1或2所述基于通用黑板的数据写入冲突处理方法,其特征在于,所述通用黑板具有包括至少一个仿真实体的实体信息表,且每个仿真实体均具有对应的描述符表,所述描述符表包括所述仿真实体对应的至少一个描述子的字段和状态值。
4.根据权利要求3所述基于通用黑板的数据写入冲突处理方法,其特征在于,所述方法还包括:
S401,所述目标自主交互进程接收所述修改指令,并判断所述修改指令的来源是否合理,若是,则执行步骤S402,若否,则放弃所述修改指令;
S402,所述目标自主交互进程获取对应描述子的预设写入配置文件,将所述预设写入配置文件、所述第一参数值以及自身仿真计算生成的第二参数值序列化生成第一补丁文件,并通过消息路由将所述第一补丁文件发送至主控模块;
S403,所述主控模块接收所述第一补丁文件,根据所述预设写入配置文件对所述第一参数值和所述第二参数值进行筛选后,将筛选结果和同一时间周期内其他自主交互进程发送的第一补丁文件打包生成第二补丁文件,并将所述第二补丁文件写入所述通用黑板后,生成并发布对应的索引消息;
所述索引消息包括所述第二补丁文件中状态值发生变化的目标描述子的字段。
5.根据权利要求4所述基于通用黑板的数据写入冲突处理方法,其特征在于,所述目标自主交互进程接收修改指令,并判断修改指令的来源是否合理具体为:
所述目标自主交互进程查询预先建立的数据写入索引表,并判断所述修改指令的发送对象是否为所述数据写入索引表的预设写入对象,若是,则判定所述修改指令的来源合法,否则,判定所述修改指令的来源不合法。
6.根据权利要求4所述基于通用黑板的数据写入冲突处理方法,其特征在于,所述预设写入配置文件包括:
当所述第一参数值和所述第二参数值对应的时钟周期不同时,从所述第一参数值和所述第二参数值中选择对应描述子的最新参数值;
当所述第一参数值和所述第二参数值对应的时钟周期相同时,从所述第一参数值和所述第二参数值中进行随机选择或者根据发送对象的优先级进行选择。
7.根据权利要求4所述基于通用黑板的数据写入冲突处理方法,其特征在于,所述方法还包括:
所述主控模块判断任一第一补丁文件中同一描述子是否存在至少两个参数值,若是,则生成报警指令,以提醒用户存在至少两个自主交互进程对同一描述子的状态进行仿真计算。
8.一种基于通用黑板的数据写入冲突处理系统,其特征在于,包括设置模块、分配模块和至少一个自主交互进程,
所述设置模块用于对仿真实体的每个预设参数设置对应的描述子;
所述设置模块用于为每个所述描述子分配唯一的自主交互进程;
所述至少一个自主交互进程中每个自主交互进程用于判定自身的仿真计算结果是否包含与对应描述子不一致的第一参数值,若是则获取所述第一参数值对应的目标自主交互进程,并通过远程过程调用方法向所述目标自主交互进程发送修改指令,以命令所述目标自主交互进程对所述第一参数值进行处理。
9.根据权利要求8所述基于通用黑板的数据写入冲突处理系统,其特征在于,还包括与所述自主交互进程连接的主控模块,
所述目标自主交互进程用于接收所述修改指令,判断所述修改指令的来源是否合理,并在来源合理时获取对应描述子的预设写入配置文件,将所述预设写入配置文件、所述第一参数值以及自身仿真计算生成的第二参数值序列化生成第一补丁文件,并通过消息路由将所述第一补丁文件发送至主控模块,以及在来源不合理时则放弃所述修改指令对应的第一参数值;
所述主控模块用于接收所述第一补丁文件,根据所述预设写入配置文件对所述第一参数值和所述第二参数值进行筛选后,并将筛选结果和同一时间周期内其他自主交互进程发送的第一补丁文件打包生成第二补丁文件,且将所述第二补丁文件写入所述通用黑板后,生成并发布对应的索引消息;
所述索引消息包括所述第二补丁文件中状态值发生变化的目标描述子的字段。
10.根据权利要求9所述基于通用黑板的数据写入冲突处理系统,其特征在于,所述主控模块还用于判断任一第一补丁文件中同一描述子是否存在至少两个参数值,若是,则生成报警指令,以提醒用户存在至少两个自主交互进程对同一描述子的状态进行仿真计算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110972658.9A CN113420468B (zh) | 2021-08-24 | 2021-08-24 | 一种基于通用黑板的数据写入冲突处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110972658.9A CN113420468B (zh) | 2021-08-24 | 2021-08-24 | 一种基于通用黑板的数据写入冲突处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113420468A true CN113420468A (zh) | 2021-09-21 |
CN113420468B CN113420468B (zh) | 2021-11-19 |
Family
ID=77719210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110972658.9A Active CN113420468B (zh) | 2021-08-24 | 2021-08-24 | 一种基于通用黑板的数据写入冲突处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113420468B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370606B1 (en) * | 1998-11-05 | 2002-04-09 | Compaq Computer Corporation | System and method for simulating hardware interrupts in a multiprocessor computer system |
CN101141315A (zh) * | 2007-10-11 | 2008-03-12 | 上海交通大学 | 网络资源调度仿真系统 |
US20100174840A1 (en) * | 2009-01-02 | 2010-07-08 | International Business Machines Corporation | Prioritization for conflict arbitration in transactional memory management |
CN105068858A (zh) * | 2015-07-29 | 2015-11-18 | 北京世冠金洋科技发展有限公司 | 一种多源异构系统仿真方法和装置 |
CN110598783A (zh) * | 2019-09-10 | 2019-12-20 | 中国科学技术大学 | 基于分布式移动机器人系统的视觉一致性方法 |
CN113128076A (zh) * | 2021-05-18 | 2021-07-16 | 北京邮电大学 | 基于双向加权图模型的电力调度自动化系统故障溯源方法 |
-
2021
- 2021-08-24 CN CN202110972658.9A patent/CN113420468B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370606B1 (en) * | 1998-11-05 | 2002-04-09 | Compaq Computer Corporation | System and method for simulating hardware interrupts in a multiprocessor computer system |
CN101141315A (zh) * | 2007-10-11 | 2008-03-12 | 上海交通大学 | 网络资源调度仿真系统 |
US20100174840A1 (en) * | 2009-01-02 | 2010-07-08 | International Business Machines Corporation | Prioritization for conflict arbitration in transactional memory management |
CN105068858A (zh) * | 2015-07-29 | 2015-11-18 | 北京世冠金洋科技发展有限公司 | 一种多源异构系统仿真方法和装置 |
CN110598783A (zh) * | 2019-09-10 | 2019-12-20 | 中国科学技术大学 | 基于分布式移动机器人系统的视觉一致性方法 |
CN113128076A (zh) * | 2021-05-18 | 2021-07-16 | 北京邮电大学 | 基于双向加权图模型的电力调度自动化系统故障溯源方法 |
Non-Patent Citations (2)
Title |
---|
卫翔 等: "通用黑板技术在大型分布式仿真系统中的应用", 《数据库技术》 * |
陈勇 等: "基于通用黑板的多Agent作战仿真系统建模", 《系统访真技术及其应用》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113420468B (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3690648B1 (en) | Resource scheduling method, scheduling server, cloud computing system and storage medium | |
CN107526546B (zh) | 一种Spark分布式计算数据处理方法及系统 | |
CN112346859B (zh) | 资源调度方法及装置、电子设备和存储介质 | |
CN113419881B (zh) | 一种基于通用黑板的本地共享内存运行方法和系统 | |
TWI696952B (zh) | 資源處理方法及裝置 | |
CN111475469A (zh) | Kubernetes用户态应用中基于虚拟文件系统的小文件存储优化系统 | |
CN112000287B (zh) | 一种io请求处理装置、方法、设备及可读存储介质 | |
US20240061712A1 (en) | Method, apparatus, and system for creating training task on ai training platform, and medium | |
CN111124277A (zh) | 一种深度学习数据集缓存方法、系统、终端及存储介质 | |
CN107918620A (zh) | 一种数据库的写入方法及装置、电子设备 | |
CN106168885A (zh) | 一种基于lvm的逻辑卷动态扩容的方法及系统 | |
CN111737168A (zh) | 一种缓存系统、缓存处理方法、装置、设备及介质 | |
CN110674052B (zh) | 内存管理方法、服务器及可读存储介质 | |
CN114089926A (zh) | 分布式存储空间的管理方法、计算设备及存储介质 | |
CN111159140A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111399753B (zh) | 写入图片的方法和装置 | |
CN117632447A (zh) | Gpu资源使用方法、gpu虚拟化方法以及作业调度装置、集群 | |
CN110119308B (zh) | 管理大规模容器应用的系统 | |
CN110569112B (zh) | 日志数据写入方法及对象存储守护装置 | |
CN113420468B (zh) | 一种基于通用黑板的数据写入冲突处理方法和系统 | |
CN115576716A (zh) | 一种基于多进程的内存管理方法 | |
CN114741853A (zh) | 基于通用黑板系统的仿真运行平台和方法 | |
CN109992415A (zh) | 一种容器调度方法及调度系统 | |
CN110032474A (zh) | 一种快照占用容量的确定方法、系统及相关组件 | |
CN115129460A (zh) | 获取算子硬件时间的方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |