仿真系统和方法技术方案

技术编号:18580381 阅读:19 留言:0更新日期:2018-08-01 14:45
提出用于进行、提供、管理、执行和/或运行空间优化式仿真的方法、系统、计算机可读介质及装置。在一个或多个实施例中,空间优化式仿真可包括:执行仿真的多个工作器模块;被在所述多个工作器模块当中仿真的多个实体;多个桥接器模块,其促进工作器与监管层之间的通信,监管层包括多个组块模块、至少一个接收方模块以及至少一个oracle模块。所述空间优化式仿真可以被配置为:提供分布式、持久性、容错性和空间优化式仿真环境。在一些实施例中,可以使用在用于在工作器之间移送仿真实体的候选者当中所确定的移送评分和/或拉伸能来执行负载平衡和容错。在一些实施例中,多个桥接器模块可以显露应用编程接口(API)用于与所述多个工作器模块通信。

Simulation system and method

Methods, systems, computer-readable media and devices for performing, providing, managing, executing and/or operating space optimization simulation are proposed. In one or more embodiments, spatial optimization simulation may include: multiple actuator modules that perform simulation; multiple entities that are emulate among the plurality of working apparatus modules; a plurality of bridge modules, which facilitate communication between the working apparatus and the supervision layer, and the supervision layer including a plurality of block modules, at least one recipient. Modules and at least one Oracle module. The spatial optimization simulation can be configured to provide a distributed, persistent, fault-tolerant and spatial optimization simulation environment. In some embodiments, the load balance and fault tolerance can be performed using the transfer score and / or tensile energy identified among the candidates for moving the simulation entities between the working devices. In some embodiments, multiple bridge modules can expose application programming interfaces (APIs) for communicating with the multiple worker modules.

【技术实现步骤摘要】
【国外来华专利技术】仿真系统和方法相关申请的交叉引用该申请要求2016年11月28日提交的题为“SimulationSystemsandMethods”的美国申请No.15/361,874的优先权。该申请要求2016年11月28日提交的题为“LoadBalancingSystemsandMethods”的美国申请No.15/361,889的优先权。该申请要求2016年11月28日提交的题为“CommunicationsInterfaceforSimulationSystemsandMethods”的美国申请No.15/361,921的优先权。前述申请中的每一个以及该申请要求2016年8月24日提交的题为“SimulationSystemsandMethods”的美国临时申请No.62/378,715的优先权。
本文所描述的方面总体上涉及计算机、连网、硬件以及软件。更具体地说,本文所描述的一些方面涉及用于控制分布式且持久性的、空间优化式基于计算机的仿真的连网系统架构(包括其上网络节点的负载平衡)以及一种促进基于计算机的仿真的实例化、开发、监管以及管理的通信接口。
技术介绍
传统仿真系统不能扩展为支持非常大量的对象以对这些对象进行实时仿真。这些系统已经典型地依赖于在单个物理或虚拟计算机系统上运行的仿真引擎的单个实例,以仿真整个仿真世界。在没有解决方案在大规模系统上提供用于正确性、图形保真性以及实时交互性所有这三者的能力的情况下,这些仿真系统的消费者已经必须在这三者之间进行选取。如果消费者期望仿真复杂真实世界问题(这可能需要比单个仿真引擎所可以提供的更多的计算能力),则该情况的重要性和复杂度进一步增加。例如,仿真城市可能需要仿真大量车辆、行人、骑车人、交通模式、交通灯、地铁系统、运输车辆、飞机以及影响并且有助于城市生活的众多其它实体。在一种已知的方法中,计算资源已经被静态地分配给仿真世界的部分。该方法的缺点可能是这样的:随着所仿真的对象、作用者等随着仿真进展而移动遍及仿真世界,所仿真的对象可能聚集在仿真世界的非常小的区域上。如果足够的对象移动到该非常小的区域,则计算资源可能过载(导致更慢的处理),仿真可能意外地终止,和/或仿真数据可能丢失。该方法的另一缺点可能是:关于区域的仿真的状态信息可能集中于单个计算资源上,并且可能并非遍及多个资源而得以共享或扩展,使得容错性或从意外终止的恢复是困难并且耗时的。此外,该方法不能使得自身容易地支持仿真对象穿过区域边界的状态迁移,因此,仿真通常将状态迁移限制给仅玩家。在本文中解决了这些和其它问题。
技术实现思路
以下提出在此所描述的各个方面的简化概述。该概述并非宽泛的综述,并且并非旨在标识权利要求的关键性或决定性要素或界定其范围。以下概述仅以简化的方式提出一些构思作为对以下所提供的更详细说明书的引言。为了克服上述现有技术中的限制,并且为了克服在阅读并且理解该说明书时将是显然的其它限制,在此所描述的各方面针对一种分布式持久性空间优化式仿真开发环境。在此所描述的其它方面可以允许将现有非分布式仿真程序整合到大规模分布式仿真中。在此所描述又一些其它方面可以用于自动地在空间上平衡并且分布仿真工作负载。一个或多个应用编程接口(API)可以用于在实施模块与仿真模块之间进行通信。根据一个或多个方面,提供一种空间优化式仿真系统,具有:至少一个处理器,其控制系统的一些操作;以及存储器,其可以包括被仿真的多个实体。被仿真的实体中的每一个可以例如包括一个或多个部件,并且所述部件中的每一个可以包括一个或多个性质。所述空间优化式仿真系统可以包括:多个工作器模块;以及与所述多个工作器模块对应的多个桥接器模块。所述工作器模块可以被配置为:执行所述空间优化式仿真。具体地说,所述多个工作器模块中的每个工作器模块可以各自对被仿真的所述多个实体的子集进行实例化。所述工作器模块可以进一步被配置为:更新正由特定工作器模块仿真的所述实体的部分的一个或多个性质。在一些实例中,所述多个桥接器模块可以被配置用于:与所述多个工作器模块进行通信。在其它实例中,所述空间优化式仿真系统可以包括多个组块模块。所述组块模块可以被配置为:监控分配给特定组块模块的实体的群组。具体地说,分配给所述组块模块的实体的群组可以位于分配给特定组块模块的组块区域内。所述空间优化式仿真系统可以包括:至少一个接收方模块,其被配置为:从多个客户机工作器模块接收对连接到所述空间优化式仿真系统的请求。具体地说,所述接收方模块可以被配置为:响应于接收到所述请求而分配所述多个桥接器模块中的对应桥接器模块,以用于与每个客户机工作器模块进行通信。在一些实例中,所述空间优化式仿真系统可以包括:至少一个oracle模块,被配置用于:响应于从组块模块以及从桥接器模块接收到的请求而分配工作器模块和桥接器模块。例如,通过将实体分配给不同组块模块,可以改变分配给组块模块的组块区域。可选地,所述空间优化式仿真系统可以包括:数据存储模块,被配置用于:创建并且维护包括所述多个实体中的每个实体的当前状态的快照。具体地说,每个实体的当前状态可以包括用于该实体所包括的所述一个或多个部件所包括的所述一个或多个性质中的每个性质的当前值。所述多个组块模块可以进一步被配置为:使用所述数据存储模块所维护的关于实体的状态信息来恢复所述实体。可选地,所述多个组块模块可以进一步被配置为:将实体从一个组块模块迁移到另一组块模块。具体地说,将实体从一个组块模块迁移到另一组块模块可以包括:通过所述实体的状态信息进行转发;使得宿组块模块从所述实体接收状态改变通知;以及使源组块模块停止从所述实体接收状态改变通知。可以响应于所述源组块模块基于负载平衡算法而进行的确定来执行所述实体的迁移。有利地,可以响应于正迁移的所述实体基于其当前空间位置进行的确定或所述实体的当前空间位置的确定而执行所述实体的迁移。可选地,所述接收方模块可以进一步被配置为:在分配所述至少一个桥接器模块以用于与所述客户机设备通信之前,对桥接器模块进行实例化。所述接收方模块可以进一步被配置为:发布用于与所述接收方模块进行通信的预定网络地址。可选地,所述oracle模块可以进一步被配置为:维护第一数据库,其包括指示所述多个工作器模块中的每个工作器模块的状态的数据;并且维护第二数据库,其包括指示所述多个桥接器模块中的每个桥接器模块的状态的数据。所述oracle模块可以进一步被配置为:响应于来自所述组块模块的对工作器模块的请求而将工作器模块分配给组块模块。可选地,连接到所述空间优化式仿真系统的所述客户机设备可以位于多个不同地理位置。可选地,所述桥接器模块可以被配置为:通过每个桥接器模块所显露的应用编程接口(API)与所述工作器模块进行通信。根据一个或多个方面,提供一种用于平衡负载的方法,其可以包括:确定多个候选计算模块,以用于接收待移送的处理。所述方法可以还包括:确定每个候选计算模块的负载密度中心;确定第一计算模块的负载密度中心与每个候选计算模块的负载密度中心之间的距离;以及确定每个候选计算模块的移送评分。所述方法可以还包括:基于对所述候选计算模块中的每一个的所述移送评分的比较而从所述多个候选计算模块选择计算模块。所述方法可以还包括:将所述处理移送到所选择的计算模块。在一些本文档来自技高网
...

【技术保护点】
1.一种空间优化式仿真系统,包括:至少一个计算机处理器,其控制所述系统的一些操作;以及存储器,其存储计算机可读指令,所述计算机可读指令当由所述至少一个计算机处理器执行时将所述系统配置为运行空间优化式仿真,所述空间优化式仿真包括:被仿真的多个实体,其中,所述多个实体中的每个实体包括一个或多个部件,并且,其中所述一个或多个部件中的每一个包括一个或多个性质;多个工作器模块,其执行空间优化式仿真并且各自被配置用于:对所述多个实体的子集进行实例化,并且更新由该工作器实例化的所述多个实体的子集中的每个实体的所述一个或多个部件当中的至少一个部件的所述一个或多个性质;多个桥接器模块,其与所述多个工作器模块对应,被配置用于:与所述多个工作器模块通信;多个组块模块,其中,所述多个组块模块中的每个组块模块被配置用于监控分配给该组块模块的实体的子集,其中,分配给该组块模块的实体的所述子集位于分配给该组块模块的组块区域内;至少一个接收方模块,其被配置用于:从多个客户机工作器模块接收对连接到所述空间优化式仿真系统的至少一个请求,并且响应于接收到所述请求而分配所述多个桥接器模块中的对应桥接器模块以用于与每个客户机工作器模块通信;以及至少一个oracle模块,其被配置用于:响应于从组块模块和从桥接器模块接收到的请求而分配工作器模块和桥接器模块。...

【技术特征摘要】
【国外来华专利技术】2016.08.24 US 62/378,715;2016.11.28 US 15/361,874;1.一种空间优化式仿真系统,包括:至少一个计算机处理器,其控制所述系统的一些操作;以及存储器,其存储计算机可读指令,所述计算机可读指令当由所述至少一个计算机处理器执行时将所述系统配置为运行空间优化式仿真,所述空间优化式仿真包括:被仿真的多个实体,其中,所述多个实体中的每个实体包括一个或多个部件,并且,其中所述一个或多个部件中的每一个包括一个或多个性质;多个工作器模块,其执行空间优化式仿真并且各自被配置用于:对所述多个实体的子集进行实例化,并且更新由该工作器实例化的所述多个实体的子集中的每个实体的所述一个或多个部件当中的至少一个部件的所述一个或多个性质;多个桥接器模块,其与所述多个工作器模块对应,被配置用于:与所述多个工作器模块通信;多个组块模块,其中,所述多个组块模块中的每个组块模块被配置用于监控分配给该组块模块的实体的子集,其中,分配给该组块模块的实体的所述子集位于分配给该组块模块的组块区域内;至少一个接收方模块,其被配置用于:从多个客户机工作器模块接收对连接到所述空间优化式仿真系统的至少一个请求,并且响应于接收到所述请求而分配所述多个桥接器模块中的对应桥接器模块以用于与每个客户机工作器模块通信;以及至少一个oracle模块,其被配置用于:响应于从组块模块和从桥接器模块接收到的请求而分配工作器模块和桥接器模块。2.根据权利要求1所述的空间优化式仿真系统,还包括:数据存储模块,其被配置用于:创建并且维护包括所述多个实体中的每个实体的当前状态的快照,其中,每个实体的所述当前状态包括针对该实体所包括的所述一个或多个部件所包括的所述一个或多个性质中的每个性质的当前值。3.根据权利要求2所述的空间优化式仿真系统,其中,所述多个组块模块进一步被配置用于:使用所述数据存储模块所维护的关于实体的状态信息来恢复所述实体。4.根据权利要求1所述的空间优化式仿真系统,其中,所述多个组块模块被配置用于:将所述多个实体中的实体从第一组块模块迁移到第二组块模块。5.根据权利要求4所述的空间优化式仿真系统,其中,将所述多个实体中的实体从所述第一组块模块迁移到所述第二组块模块包括:所述第一组块模块向所述第二组块模块转发所述实体的状态信息;所述第一组块模块使得所述第二组块模块从所述实体接收状态改变通知;以及所述第一组块模块停止从所述实体接收状态改变通知。6.根据权利要求4所述的空间优化式仿真系统,其中,将所述多个实体中的实体从所述第一组块模块迁移到所述第二组块模块响应于所述第一组块模块基于负载平衡算法而进行的确定。7.根据权利要求4所述的空间优化式仿真系统,其中,将所述多个实体中的实体从所述第一组块模块迁移到所述第二组块模块响应于所述实体基于对所述实体的当前空间位置的确定而进行的确定。8.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述至少一个接收方模块进一步被配置为:在分配所述多个桥接器模块中的所述至少一个桥接器模块以用于与所述客户机设备通信之前对桥接器模块进行实例化。9.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述至少一个oracle模块进一步被配置用于:维护包括指示所述多个工作器模块中的每个工作器模块的状态的数据的第一数据库,并且维护包括指示所述多个桥接器模块中的每个桥接器模块的状态的数据的第二数据库。10.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述至少一个接收方模块进一步被配置为:发布用于与所述接收方模块通信的预定网络地址。11.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述至少一个oracle模块进一步被配置用于:响应于来自组块模块的对工作器模块的请求,将来自所述多个工作器模块的工作器模块分配给所述组块模块。12.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述至少一个oracle模块进一步被配置用于:对新的工作器模块进行实例化,并且响应于来自组块模块的对工作器模块的请求而将所述新的工作器模块分配给所述组块模块。13.根据任一在先权利要求所述的空间优化式仿真系统,其中,连接到所述空间优化式仿真系统的所述多个客户机设备位于多个不同地理位置。14.根据任一在先权利要求所述的空间优化式仿真系统,其中,所述多个桥接器模块被配置用于:通过每个桥接器模块所显露的应用编程接口(API)与所述多个工作器模块通信。15.一种用于监管空间优化式基于计算机的仿真的方法,包括:通过在每个工作器模块上对多个实体中的不同子集进行实例化来仿真多个工作器模块上的所述多个实体,其中,所述多个实体中的每个实体包括一个或多个部件,其中,所述一个或多个部件中的每一个包括一个或多个性质;由每个工作器模块基于源自一个或多个其它工作器模块的仿真数据而更新该工作器所实例化的每个实体的至少一个部件的所述一个或多个性质;维护与所述多个工作器模块对应并且各自被配置用于与所述工作器模块之一通信的多个桥接器模块,以促进每个工作器模块与组块监管层之间的数据传送,其中,所述组块监管层包括多个组块模块,其中,每个组块模块被配置用于:监控分配给该组块模块的实体,并且,其中分配给该组块模块的所述实体位于分配给该组块模块的空间区域中的所述仿真内;由接收方模块从一个或多个客户机工作器模块接收对连接到所述空间优化式仿真系统的请求;由所述接收方模块响应于接收到所述请求而分配对应的桥接器模块,以用于与每个客户机工作器模块进行通信;以及由oracle模块响应于从组块模块以及从桥接器模块接收到的请求而分配工作器模块以及桥接器模块。16.根据权利要求15所述的方法,还包括:使用基于拉伸能的评分而对分配给工作器模块的实体进行负载平衡。17.根据权利要求15或权利要求16所述的方法,还包括:使用每个桥接器模块所显露的应用编程接口(API)与所述多个工作器模块通信。18.一种或多种计算机可读介质,其存储计算机可执行指令,所述计算机可执行指令当被执行时使得系统通过如下来执行空间优化式仿真:通过在每个工作器模块上对多个实体中的不同子集进行实例化来仿真多个工作器模块上的所述多个实体,其中,所述多个实体中的每个实体包括一个或多个部件,其中,所述一个或多个部件中的每一个包括一个或多个性质;由每个工作器模块基于源自一个或多个其它工作器模块的仿真数据而更新该工作器所实例化的每个实体的至少一个部件的所述一个或多个性质;维护与所述多个工作器模块对应并且各自被配置用于与所述工作器模块之一通信的多个桥接器模块,以促进每个工作器模块与组块监管层之间的数据传送,其中,所述组块监管层包括多个组块模块,其中,每个组块模块被配置用于:监控分配给该组块模块的实体,并且,其中分配给该组块模块的所述实体位于分配给该组块模块的空间区域中的所述仿真内;由接收方模块从一个或多个客户机工作器模块接收对连接到所述空间优化式仿真系统的请求;由所述接收方模块响应于接收到所述请求而分配对应的桥接器模块,以用于与每个客户机工作器模块通信;以及由oracle模块响应于从组块模块以及从桥接器模块接收到的请求而分配工作器模块以及桥接器模块。19.根据权利要求18所述的计算机可读介质,其中,所述指令进一步使得所述系统执行:使用基于拉伸能的评分而对分配给工作器模块的实体进行负载平衡。20.根据权利要求18或权利要求19所述的计算机可读介质,其中,所述指令进一步使得所述系统执行:使用每个桥接器模块所显露的应用编程接口(API)与所述多个工作器模块进行通信。21.一种用于对空间优化式仿真进行负载平衡的方法,包括:由第一计算模块确定用于从所述第一计算模块接收待移送的处理的多个候选计算模块;对于每个候选计算模块:确定该候选计算模块的负载密度中心;确定所述第一计算模块的负载密度中心与该候选计算模块的负载密度中心之间的距离;以及确定该候选计算模块的移送评分;基于对所述多个候选计算模块的移送评分的比较而确定选自所述多个候选计算模块的第二计算模块;以及将所述处理从所述第一计算模块移送到所述第二计算模块。22.根据权利要求21所述的方法,其中,确定所述多个候选计算模块包括:选择对所述待移送的处理所发送的通知进行订阅的多个其它计算模块。23.根据权利要求21或权利要求22所述的方法,其中,所述确定所述一个或多个候选计算模块包括:对于每个候选计算模块确定指示该候选计算模块上的瞬时处理负载的负载度量;以及基于确定所述负载度量而排除至少一个候选计算模块。24.根据权利要求21至23中任一项所述的方法,其中,所述确定所述第一计算模块的所述负载密度中心包括:基于分配给所述第一计算模块的多个处理的空间位置和处理负载而确定所述第一计算模块的空间质心。25.根据权利要求21至24中任一项所述的方法,其中,所述确定每个候选计算模块的所述移送评分包括:基于所述第一计算模块的负载密度中心与所述候选计算模块的负载密度中心之间的距离以及预定弹簧因子而确定所述候选计算模块的拉伸能。26.根据权利要求25所述的方法,其中,所述预定弹簧因子的值基于时间因子而改变。27.根据权利要求25所述的方法,其中,所述预定弹簧因子的值基于所述第一计算模块的负载密度中心与所述候选计算模块的负载密度中心之间的所述距离而改变。28.根据权利要求25所...

【专利技术属性】
技术研发人员:罗伯特·詹姆斯·弗雷德里克·怀特海德唐汉英马修·约翰·瑞福里·路易斯彼得·理查德·利普卡
申请(专利权)人:奇异世界有限公司
类型:发明
国别省市:英国,GB

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1