CN115630937B - 物流网络仿真的时间同步方法、装置和存储介质 - Google Patents
物流网络仿真的时间同步方法、装置和存储介质 Download PDFInfo
- Publication number
- CN115630937B CN115630937B CN202211645158.5A CN202211645158A CN115630937B CN 115630937 B CN115630937 B CN 115630937B CN 202211645158 A CN202211645158 A CN 202211645158A CN 115630937 B CN115630937 B CN 115630937B
- Authority
- CN
- China
- Prior art keywords
- time
- simulation
- logistics
- sets
- nodes
- 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.)
- Active
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 220
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 51
- 238000002360 preparation method Methods 0.000 claims description 59
- 238000004891 communication Methods 0.000 claims description 32
- 238000009826 distribution Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000011144 upstream manufacturing Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 abstract description 23
- 238000004422 calculation algorithm Methods 0.000 abstract description 10
- 230000001360 synchronised effect Effects 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001364 causal effect Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000011151 fibre-reinforced plastic Substances 0.000 description 1
- 230000010006 flight Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001141 propulsive effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种物流网络仿真的时间同步方法、装置和存储介质,涉及物流技术和智慧物流领域。物流网络仿真的时间同步方法包括:根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合;对于每个集合:对时间戳小于集合的目标推进时间的仿真事件进行处理,其中,目标推进时间根据集合的仿真时间和时间推进增量确定;在所有时间戳小于集合的目标推进时间的仿真事件完成处理后,将集合的仿真时间推进到目标推进时间。本发明能够将原本位于仿真算法逻辑中心位置的全局时间管理器改造为各集合内部的局部同步约束计算,实现调用结构上的去中心化,提升了计算效率与资源利用率。
Description
技术领域
本发明涉及物流技术领域,特别涉及一种物流网络仿真的时间同步方法、装置、系统和存储介质。
背景技术
大型物流系统具有复杂的干支网络结构。物流订单需经仓库、分拣、站点等多个环节中转。然而分拣班次、线路以及路由网络的调节和修改通常仅针对特定环节、或特定的目标(例如成本、时效)进行,很难对该变更引发的整体效应做出恰当的量化评估。
物流网络的仿真可以补足这一短板,通过模拟货物在分拣间流转直至抵达末端站点的过程,包括在分拣和转运场地内的操作、线路发车和运输等,并仿真输出业务调整对整体网络运行情况的影响,能够为物流网络的规划和计划提供决策和支持。
物流分拣网络的仿真通常采用离散仿真事件的方式进行。通过对时序仿真事件的生成与处理,描述物流节点的分拣行为;通过物流节点间的货运发车-到车仿真事件,描述节点间的转运过程。所有仿真中产生的仿真事件均通过仿真事件队列排序分发。在获取仿真事件-处理仿真事件-生成新仿真事件的循环中不断向前推进仿真时间,体现分拣网络的动态性、复杂性。
发明内容
发明人经过分析后发现,为保证仿真结果的正确性,物流节点模型在进行仿真事件收发处理时,必须确保仿真事件因果约束正确,即物流节点模型处理仿真事件的时间戳必须服从单调递增的规律。仿真算法在驱动物流节点模型仿真事件交互的同时,应当按时间戳的顺序依次触发模型的仿真事件处理逻辑。当仿真串行执行时,算法只需将系统中所有时间戳仿真事件放在同一优先级队列中、并按时间戳排序,即可得到满足因果约束的输出。但在大规模分拣网络场景下,串行仿真存在计算速度慢、仿真进程存储和网络等资源容易出现瓶颈等问题,导致大规模分拣网络仿真运行困难。
本发明实施例所要解决的一个技术问题是:如何提高物流网络仿真的效率、提升资源利用率。
根据本发明一些实施例的第一个方面,提供一种物流网络仿真的时间同步方法,包括:根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合;对于每个集合:对时间戳小于集合的目标推进时间的仿真事件进行处理,其中,目标推进时间根据集合的仿真时间和时间推进增量确定;在所有时间戳小于集合的目标推进时间的仿真事件完成处理后,将集合的仿真时间推进到目标推进时间。
在一些实施例中,时间同步方法还包括:对于每个集合,在集合存在一个或多个关联集合的情况下,确定一个或多个关联集合向集合发送的新仿真事件,其中,关联集合为包括以集合中的物流节点为终点的线路的起点的集合;根据一个或多个关联集合的仿真时间的最小值与时间推进增量,确定集合的目标推进时间。
在一些实施例中,对时间戳小于集合的目标推进时间的仿真事件进行处理包括:在通过处理仿真事件生成新的、涉及其他集合的仿真事件的情况下,将新仿真事件推送到涉及的关联集合,其中,关联集合为包括以集合中的物流节点为终点的线路的起点的集合;在通过处理仿真事件生成新的、不涉及其他集合的仿真事件的情况下,将新仿真事件添加到集合的待处理的仿真事件。
在一些实施例中,每个集合具有对应的计算单元,并且将新的仿真事件推送到涉及的集合包括:集合的计算单元通过消息队列,向新仿真事件涉及的关联集合的计算单元发送新仿真事件主题的消息;集合的计算单元记录通信统计信息,其中,通信统计信息包括涉及的关联集合的标识、以及新仿真事件在涉及的关联集合的消息队列中的偏移量。
在一些实施例中,时间同步方法还包括:在将集合的仿真时间推进到目标推进时间之后,向其他集合发送推进完成主题消息,其中,推进完成主题消息包括集合的标识、仿真时间和通信统计信息。
在一些实施例中,时间同步方法还包括:集合的计算单元从消息队列中读取关联集合的计算单元发送的新仿真事件的主题消息、以及推进完成主题消息,其中,推进完成主题消息包括集合的标识、仿真时间和通信统计信息,通信统计信息包括关联集合的标识、以及关联集合发送的新仿真事件在集合的消息队列中的偏移量;集合的计算单元记录发送新仿真事件的主题消息的关联集合的标识、以及新仿真事件的主题消息在消息队列中的偏移量。
在一些实施例中,时间同步方法还包括:在集合的计算单元所消费的消息队列中的新仿真事件的主题消息的最大偏移量大于关联集合的计算单元发送的通信统计信息中的偏移量,并且集合的仿真时间小于推进完成主题消息中的最小仿真时间与时间推进增量之和的情况下,将集合的目标推进时间确定为推进完成主题消息中的最小仿真时间与时间推进增量之和。
在一些实施例中,根据预设的时间推进增量和相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合包括:对物流网络中的物流节点进行预分组以生成多个预备集合,其中,对于属于同一个预备集合的两个同类型的物流节点,在两个物流节点在物流网络中相邻的情况下,两个物流节点之间的最小运输时间小于时间推进增量;根据多个预备集合,生成多个集合。
在一些实施例中,对物流网络中的物流节点进行预分组以生成多个预备集合包括:创建新的集合;将未分组的物流节点添加到创建的集合中,作为锚点节点;根据物流网络中物流节点间的连接关系,以锚点节点为起点,对未分组的物流节点进行遍历,其中,在遍历到的物流节点与相邻的上游物流节点间的最小运输时间小于时间推进增量的情况下,将遍历到的物流节点添加到创建的集合中。
在一些实施例中,物流节点的类型包括分拣类型和配送站点类型,并且在遍历到的物流节点和相邻的上游物流节点包括分拣类型和配送站点类型的情况下,将遍历到的物流节点添加到创建的集合中。
在一些实施例中,在多个预备集合的数量小于预设的集合数量的情况下,降低时间推进增量。
在一些实施例中,根据多个预备集合,生成多个集合包括:在预备集合的数量大于预设值的情况下,确定不同的预备集合之间的关联性;根据关联性进行预备集合的合并,直到预备集合和合并的集合的总数量等于预设值。
在一些实施例中,确定不同的预备集合之间的关联性包括:确定锚点预备集合;确定与锚点预备集合中的物流节点存在线路连接关系、但不属于锚点预备集合的物流节点确定为锚点集合的关联节点;对于每个预备集合,根据关联节点的数量与关联节点与预备集合的并集中的节点数量,确定锚点预备集合与预备集合之间的关联性。
在一些实施例中,选取一个预备集合作为锚点预备集合包括:将属于分拣类型的物流节点最少的预备集合确定为锚点预备集合。
在一些实施例中,根据关联性进行预备集合的合并包括:将锚点预备集合与具有最强关联性的预备集合进行合并,其中,在具有最强关联性的预备集合有多个的情况下,选择包括的分拣类型的物流节点最少的预备集合进行合并。
在一些实施例中,时间同步方法还包括:对于每个集合,确定以集合中的物流节点为终点的线路的起点,并将包括起点的集合确定为集合的关联集合。
根据本发明一些实施例的第二个方面,提供一种物流网络仿真的时间同步装置,包括:分组模块,被配置为根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合;事件处理模块,被配置为对于每个集合:对时间戳小于集合的目标推进时间的仿真事件进行处理,其中,目标推进时间根据集合的仿真时间和时间推进增量确定;仿真时间推进模块,被配置为在所有时间戳小于集合的目标推进时间的仿真事件完成处理后,将集合的仿真时间推进到目标推进时间。
根据本发明一些实施例的第三个方面,提供一种物流网络仿真的时间同步装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述任意一种物流网络仿真的时间同步方法。
根据本发明一些实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现前述任意一种物流网络仿真的时间同步方法。
上述发明中的一些实施例具有如下优点或有益效果。由于在对物流节点进行分组时,已经尽量将具有依赖关系的节点划分到同一个集合,因此各个集合在进行时间推进时,不需要考虑全局的时间推进情况,而仅需要考虑集合内部的事件处理情况、或者少数与该集合存在关联的集合的相关事件处理情况。从而,本发明能够将原本位于仿真算法逻辑中心位置的全局时间管理器改造为各集合内部的局部同步约束计算,实现调用结构上的去中心化,提升了计算效率与资源利用率。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本发明一些实施例的物流网络的时间同步方法的流程示意图。
图2示出了根据本发明一些实施例的物流节点分组方法的流程示意图。
图3示出了根据本发明一些实施例的预备集合的合并方法的流程示意图。
图4示出了根据本发明一些实施例的集合间通信方法的流程示意图。
图5示出了根据本发明一些实施例的目标推进时间确定方法的流程示意图。
图6示出了根据本发明一些实施例的物流网络仿真的时间同步装置的结构示意图。
图7示出了根据本发明一些实施例的电子设备的结构示意图。
图8示出了根据本发明另一些实施例的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为满足计算效率及资源访问需求,大规模物流分拣网络仿真需以分布式并行方式运行。物流分拣网络的并行分布仿真中,通常依据负载均衡等要求将物流节点模型划分到多个计算单元,在单元间建立时间管理器及网络通信机制,监管每个单元的仿真事件处理进度,以实现计算单元的同步、并行执行。仿真运行时,计算单元通过仿真事件队列协同本单元内的物流节点模型。当处理新的时间戳仿真事件时,需将准备处理的仿真事件时间戳范围等信息发送至时间管理器申请时间推进,获取仿真事件处理的最大时间戳许可范围后,依序处理队列中时间戳符合许可范围的消息。
在并行分布仿真中,保证逻辑因果性的时间同步算法是仿真并行化的核心要素。在相关技术中,通用的时间同步算法包括传统离散时间仿真方式、保守时间同步方式、乐观时间同步方式三类算法。
传统离散仿真事件仿真方式要求计算节点按本地仿真事件队列的下次仿真事件时间发起申请,时间管理器允许模型推进至全局最小申请时间。目前,传统的离散仿真事件同步方法在物流仿真中的应用最广泛。此类方法需在每次仿真事件处理时发起时间同步,时间同步频繁,时间管理器计算负载大,一定程度影响了分布并行计算的效果。
在保守的时间同步方式下,如计算节点可承诺在完成仿真事件处理后的承诺时间内不对其他计算单元施加影响,则在申请时间推进时,可将当前时间与承诺时间的和同步给知时间管理器,由时间管理器综合所有计算单元的当前时间与承诺时间的和的取值,取全局最小值,得到实际的、可推进的仿真时间。保守时间同步方法的效果依赖承诺时间的选取。相关技术尚无有效的承诺时间选取方法,因此算法的应用效果较差。
乐观时间同步方式允许不同计算节点自由处理自身仿真事件队列,但当接收到其他计算节点发送的过去时间戳消息时,要回退计算单元的仿真计算结果,并撤回此间对其他计算单元影响。这种方式要求缓存模型状态以支持回退,并且在回退过程中产生了大量的仿真事件撤回,对大规模分拣网络的仿真造成了更大资源压力。
工程实现上,目前的分布式物流分拣网络仿真中,通常将时间同步逻辑实现在中心化的时间管理器中,依据具体通信协议开发软件接口,或直接选用RTI(RuntimeInfrastructure,运行支撑框架)等分布式仿真框架的时间同步与通信功能。以上两种实现方式均可支持分布式场景下的仿真运行。
然而,在相关技术的物流分拣网络的分布式并行仿真中,计算单元为完成时间推进,需频繁向时间管理器进行申请,加剧了分布式运行的通信代价与时间管理器的资源消耗,影响分布式应用场景下的计算效率。
在时间同步逻辑的实现上,每个计算单元的时间推进均需得到所有其他计算单元的认可。时间管理器作为分布式网络拓扑中的逻辑中心节点,与各计算单元都有频繁交互,严重制约了分布式仿真计算的并行加速效果及计算规模的扩展。
本发明要解决的一个技术问题是,如何提高物流仿真的执行效率、节约计算资源。
图1示出了根据本发明一些实施例的物流网络的时间同步方法的流程示意图。如图1所示,该实施例的物流网络的时间同步方法包括步骤S102~S106。
在步骤S102中,根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合。
在一些实施例中,物流网络包括多个类型的节点,例如包括分拣节点、配送站点两类。分拣节点模型模拟到车-卸货-分拣-装车-发车的过程。配送节点模拟分拣网络中货物的到货行为。
发明人通过分析发现,如果能获取合适的承诺时间,保守时间同步思路对减少同步次数会有较大效果。本发明从最大化保守时间同步收益的角度出发,给出在给定承诺时间、即预设了时间推进增量时,反向计算符合要求的物流节点的分组方式。从而,能够在模型分组间形成确定的消息延时特征,建立保守时间同步策略所需的承诺,达到减少计算节点同步次数的效果。
在一些实施例中,对于物流网络中相邻的两个节点,如果二者之间的最小运输时间小于时间推进增量,则将其初步划分到同一个分组。在划分时,可以按照一定的顺序进行遍历。后文将进一步描述物流节点的分组方式。
对于每个集合,执行步骤S104~S106。
在步骤S104中,对时间戳小于该集合的目标推进时间的仿真事件进行处理,其中,目标推进时间根据该集合的仿真时间和时间推进增量确定。目标推进时间是每次仿真推进时,可处理而不会破坏因果性约束的最大时间值。
在一些实施例中,对于每个集合,在该集合存在一个或多个关联集合的情况下,确定一个或多个关联集合向该集合发送的新仿真事件,其中,关联集合为包括以该合中的物流节点为终点的线路的起点的集合;根据一个或多个关联集合的仿真时间的最小值与时间推进增量,确定该集合的目标推进时间。从而,可以根据所依赖的集合中的最小推进时间确定自身的推进策略。
物流节点可以具有相应的节点模型,节点模型的行为表现为若干事件处理函数,每类事件处理函数通过确定时间戳事件类型触发,事件处理函数的调用引发物流节点模型的状态更新,并根据节点模型的逻辑,产生时间戳大于或等于触发事件时间戳的新事件。
在一些实施例中,每个集合具有事件队列,包括该集合的一个或多个待处理的仿真事件对应的消息。在处理过程中,根据事件类型匹配执行该事件的物流节点模型的事件处理函数。待处理的仿真事件被顺序注入到仿真模型中执行,并从事件队列中弹出该消息。
在一些实施例中,部分仿真事件被处理后会生成新的事件,新的事件可能是同一集合对应的事件,也可能是涉及其他集合的事件。例如,货物发车-到达事件中,如果运输的起点和终点属于两个集合,则生成的仿真事件是涉及其他集合的新事件。在通过处理仿真事件生成新的、涉及其他集合的仿真事件的情况下,将新仿真事件推送到涉及的关联集合,其中,关联集合为包括以该集合中的物流节点为终点的线路的起点的集合;在通过处理仿真事件生成新的、不涉及其他集合的仿真事件的情况下,将新仿真事件添加到当前集合的待处理的仿真事件,例如,继续添加到当前集合的事件队列中。
在步骤S106中,在该集合的、所有时间戳小于该集合的目标推进时间的仿真事件完成处理后,将该集合的仿真时间推进到目标推进时间。
由于在对物流节点进行分组时,已经尽量将具有依赖关系的节点划分到同一个集合,因此各个集合在进行时间推进时,不需要考虑全局的时间推进情况,而仅需要考虑集合内部的事件处理情况、或者少数与该集合存在关联的集合的相关事件处理情况。从而,本发明能够将原本位于仿真算法逻辑中心位置的全局时间管理器改造为各集合内部的局部同步约束计算,实现调用结构上的去中心化,提升了计算效率与资源利用率。
下面参考图2描述物流节点分组方法的实施例。
图2示出了根据本发明一些实施例的物流节点分组方法的流程示意图。如图2所示,该实施例的分组方法包括步骤S202~S204。
在步骤S202中,对物流网络中的物流节点进行预分组以生成多个预备集合,其中,对于属于同一个预备集合的两个同类型的物流节点,在两个物流节点在物流网络中相邻的情况下,两个物流节点之间的最小运输时间小于时间推进增量。
下面示例性地描述一种预备集合的生成方法。首先,创建新的集合;其次,将未分组的物流节点添加到创建的集合中,作为锚点节点;然后,根据物流网络中物流节点间的连接关系,以锚点节点为起点,对未分组的物流节点进行遍历。该遍历例如为深度优先遍历。
在一些实施例中,在遍历到的物流节点与相邻的上游物流节点间的最小运输时间小于时间推进增量的情况下,将遍历到的物流节点添加到创建的集合中。从而,尽量使得距离相近、运输时间短的物流节点划分到同一个集合。
在一些实施例中,物流节点的类型包括分拣类型和配送站点类型,并且在遍历到的物流节点和相邻的上游物流节点包括分拣类型和配送站点类型的情况下,将遍历到的物流节点添加到创建的集合中。由于站点节点的模型计算量较小,且模型交互简单,因此可以直接将站点节点和与其相连的分拣节点放在一个分组中,不再考核其运输线路的时间属性。
例如,记分组后生成的集合组成了更高层级的集合SG。从物流网络的物流节点集合SN中获取分拣节点NDC。若SN中不含分拣节点,则结束。否则创建NDC对应的分组集合GDC。按是否存在线路连接关系,以NDC为起点,对分拣网络中的物流节点进行深度优先遍历。记遍历到的节点为Nnext,遍历过程中Nnext紧邻上游节点为N0。若N0与Nnext间线路最小运输时间小于Tlookahead,或线路为分拣-站点间线路,则将Nnext加入GDC。否则终止从Nnext向下游的遍历。完成遍历后,从SN中移除GDC中节点,并将GDC加入SG中。反复执行上述过程,直至SN为空。
此外,可以根据预分组的结果,对时间推进增量进行调整。在一些实施例中,在多个预备集合的数量小于预设的集合数量的情况下,重新确定时间推进增量。当预备集合数量较少,说明时间推进增量设置的过大,使得太多物流节点被划分到同一组。此时,可以降低时间推进增量的值。反之,如果预备集合的数量过多,例如超过预设的上限,也可以增大时间推进增量的值。
在步骤S204中,根据多个预备集合,生成多个集合。
上述实施例以时间推进增量为阈值,依据物流节点间的最短线路运输关系对物流节点进行初步的分组,使得每个集合中的物流节点尽可能少地依赖其他集合中的物流节点,形成了局部、而非全局的节点约束关系。
在预备集合的分组结果中,由于不同集合的物流节点模型间运输时间大于时间推进增量(设为Tlookahead),可以使得某个集合完成时刻T的事件处理时,对其他集合的影响会出现在至少T+Tlookahead以后,满足保守时间管理算法关于未来承诺的要求。集合在完成T时刻消息处理后,向本集合的时间管理逻辑发出不会影响其他计算单元在[T,T+Tlookahead)时间段的事件的承诺来申请时间推进。由于集合只可能收到部分与其存在发车-到车等关系约束的、其他集合的物流节点的影响,所以其时间推进也仅受此类物流节点所在集合的影响,计算节点的时间推进即可依据这类关联集合的T+Tlookahead承诺的最小值,推进本集合的事件处理,而不必担心违反因果性约束。
在一些实施例中,可以直接将各个预备集合作为多个集合,即,将预分组的结果作为最终的划分结果。
在一些实施例中,还可以将关联性高于预设程度的预备集合进行合并。下面参考图3描述本发明根据关联度进行预备集合的合并的实施例。
图3示出了根据本发明一些实施例的预备集合的合并方法的流程示意图。如图3所示,该实施例的预备集合的合并方法包括步骤S302~S304。
在步骤S302中,在预备集合的数量大于预设值的情况下,确定不同的预备集合之间的关联性。
一种示例性的确定预备集合间关联性的方法如下。首先,确定锚点预备集合,例如可以将属于分拣类型的物流节点最少的预备集合确定为锚点预备集合;然后,确定与锚点预备集合中的物流节点存在线路连接关系、但不属于锚点预备集合的物流节点确定为锚点集合的关联节点;对于每个预备集合,根据关联节点的数量与关联节点与预备集合的并集中的节点数量,确定锚点预备集合与预备集合之间的关联性。
在步骤S304中,根据关联性进行预备集合的合并,直到预备集合和合并的集合的总数量等于预设值。
例如,对SG中的元素G,记与G内物流节点通过运输线路关联的、非G内物流节点的集合为Grel(G)。对于SG中的元素G1、G2,定义Drel(G1,G2)为Grel(G1)中所有元素在Grel(G2)∪G2中的百分比。选取锚点预备集合,例如,选择SG中含分拣中心最少的成员Gmin作为锚点预备集合,并遍历SG中所有非Gmin对象G’,记使得Drel(Gmin,G’)最大的G’为G0。随后将Gmin 中元素添加至G0,从SG中删除Gmin。重复上述过程,直至SG中元素的数量与计算节点数相同,得到计算节点数量对应的物流节点分组SG。
在一些实施例中,将锚点预备集合与具有最强关联性的预备集合进行合并,其中,在具有最强关联性的预备集合有多个的情况下,选择包括的分拣类型的物流节点最少的预备集合进行合并。例如,如果多个Drel(Gmin,G’)相同,则选择包括分拣节点最少的G’合并,以提升合并后SG中元素对应的计算负载均衡程度。
从而,被合并的预备集合具有较强的关联性,相应地,与其他未被合并的集合的关联性相对较弱,因此能够在使得集合数量合理的前提下,尽量降低不同集合间的依赖程度。
在确定物流节点的分组结果后,可以创建各集合之间的依赖关系。在一些实施例中,对于每个集合,确定以该集合中的物流节点为终点的线路的起点,并将包括该起点的集合确定为该集合的关联集合。例如,对SG中所有集合G,在运输线路集合SL中,寻找以G中物流节点为终点的线路对象L,将由L的起点组成的集合记为NL(G)。计算SG中含NL(G)元素的非G元素组成的集合Sdependent(G),作为G的关联集合。在推进G对应的仿真时间的过程中,可以依据Sdependent(G)的处理情况确定G对应的目标推进时间。
在一些实施例中,在确定对物流节点的划分结果后,可以为每个集合分配一个计算单元,并将集合中的物流节点模的型分配给该计算单元。通过各个集合与计算单元的对应关系,完成物流节点模型的计算单元分配关系的初始化。在所有计算单元初始化后,形成计算单元与集合中元素的一一对应关系。对所有计算单元,依据与其相关的关联集合,创建关联集合的推进统计表,在推进统计表中初始化关联集合对应的计算单元列表。
下面参考图4和图5描述存在依赖关系的集合间的通信和时间推进的实施例,其中,集合间的通信具体为集合对应的计算单元间的通信,设计算单元C1对应集合G1、计算单元C2对应集合G2,G2是G1的关联集合。计算单元例如为可以独立运行的应用进程或装置。
图4示出了根据本发明一些实施例的集合间通信方法的流程示意图。如图4所示,该实施例的通信方法包括步骤S402~S410。
在步骤S402中,C1通过处理仿真事件,生成新的、涉及C2的仿真事件。
在步骤S404中,C1通过消息队列,向C2发送新仿真事件主题的消息。
在一些实施例中,新仿真时间为货运发车-到达事件,货运发车-到达事件主题例如包括发货和到货的物流节点ID、到货计算单元的标识、发货和到货的时间戳信息、货运业务数据包等。
消息队列能够提供不同计算单元间的主题事件通信能力,并且,在消息发送完成后,被发送的主题事件在消息队列中的消息偏移量信息能够被反馈个发送数据的计算单元,并能向消费消息数据的计算单元反馈当前消费消息在消息队列中的偏移量信息。在一些实施例中,消息队列使用Apache Kafka实现。
通过消息队列传输事件,能够实现无中心的时间管理逻辑,提高了数据传输的可靠性。
在步骤S406中,C1记录通信统计信息,其中,通信统计信息包括涉及的关联集合的标识、以及新的仿真事件在C2的消息队列中的偏移量。
在步骤S408中,C1在所有时间戳小于G1的目标推进时间的仿真事件完成处理后,将G1的仿真时间推进到目标推进时间。
在步骤S410中,C1向其他集合的计算单元(包括C2)发送推进完成主题消息,其中,推进完成主题消息包括集合的标识(也可以使用集合对应的计算单元的标识体现)、仿真时间和通信统计信息。
从而,其他集合能够了解与当前集合相关的新事件、以及当前集合的时间推进程度,能够更准确地进行时间推进控制。
图5示出了根据本发明一些实施例的目标推进时间确定方法的流程示意图。如图5所示,该实施例的确定方法包括步骤S502~S506。
在步骤S502中,C2从消息队列中读取关联集合的计算单元发送的新仿真事件的主题消息以及推进完成主题消息。
计算单元通过网络通信线程轮询消息队列的接收线程,可获得两类主题消息。对于新事件、例如收到的车辆到达消息,记录发出消息的对象及对应的消息偏移量。随后将消息注入到本计算节点事件队列中,等同于本地消息处理。
在步骤S504中,C2记录发送新仿真事件的主题消息的关联集合的标识(例如G1,或者采用相应计算单元的标识C1来表征相应集合)、以及新仿真事件的主题消息在消息队列中的偏移量。
在步骤S506中,在C2所消费的消息队列中的新仿真事件的主题消息的最大偏移量大于C1发送的通信统计信息中的偏移量,并且G2的仿真时间小于推进完成主题消息中的最小仿真时间与时间推进增量之和的情况下,C2将G2的目标推进时间确定为推进完成主题消息中的最小仿真时间与时间推进增量之和。
从而,可以避免由于网络延迟等情况造成事件的漏处理,提高了系统的可靠性。并且,基于所依赖的其他集合的最小时间推进程度确定本集合的时间推进程度,能够准确地进行事件同步。
仿真运行时,如某个集合对应的当前仿真时间大于等于仿真终止时间,则该集合对应的仿真结束,并通过时间推进完成主题上报给消息队列。若某个集合所依赖的一个关联集合已结束仿真,则在确定该集合的目标推进时间时,不考虑已仿真结束的集合的影响。
下面参考图6描述本发明物流网络仿真的时间同步装置的实施例。
图6示出了根据本发明一些实施例的物流网络仿真的时间同步装置的结构示意图。如图6所示,该实施例的时间同步装置60包括:分组模块610,被配置为根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合;事件处理模块620,被配置为对于每个集合:对时间戳小于集合的目标推进时间的仿真事件进行处理,其中,目标推进时间根据集合的仿真时间和时间推进增量确定;仿真时间推进模块630,被配置为对于每个集合:在所有时间戳小于集合的目标推进时间的仿真事件完成处理后,将集合的仿真时间推进到目标推进时间。
在一些实施例中,时间同步装置60还包括:目标推进时间确定模块640,被配置为对于每个集合,在集合存在一个或多个关联集合的情况下,确定一个或多个关联集合向集合发送的新仿真事件,其中,关联集合为包括以集合中的物流节点为终点的线路的起点的集合;根据一个或多个关联集合的仿真时间的最小值与时间推进增量,确定集合的目标推进时间。
在一些实施例中,事件处理模块620进一步被配置为在通过处理仿真事件生成新的、涉及其他集合的仿真事件的情况下,将新仿真事件推送到涉及的关联集合,其中,关联集合为包括以集合中的物流节点为终点的线路的起点的集合;在通过处理仿真事件生成新的、不涉及其他集合的仿真事件的情况下,将新仿真事件添加到集合的待处理的仿真事件。
在一些实施例中,每个集合具有对应的计算单元,并且事件处理模块620进一步被配置为触发集合的计算单元通过消息队列,向新仿真事件涉及的关联集合的计算单元发送新仿真事件主题的消息;触发集合的计算单元记录通信统计信息,其中,通信统计信息包括涉及的关联集合的标识、以及新仿真事件在涉及的关联集合的消息队列中的偏移量。
在一些实施例中,事件处理模块620进一步被配置为在将集合的仿真时间推进到目标推进时间之后,向其他集合发送推进完成主题消息,其中,推进完成主题消息包括集合的标识、仿真时间和通信统计信息。
在一些实施例中,事件处理模块620进一步被配置为触发集合的计算单元从消息队列中读取关联集合的计算单元发送的新仿真事件的主题消息、以及推进完成主题消息,其中,推进完成主题消息包括集合的标识、仿真时间和通信统计信息,通信统计信息包括关联集合的标识、以及关联集合发送的新仿真事件在集合的消息队列中的偏移量;触发集合的计算单元记录发送新仿真事件的主题消息的关联集合的标识、以及新仿真事件的主题消息在消息队列中的偏移量。
在一些实施例中,目标推进时间确定模块640进一步被配置为在集合的计算单元所消费的消息队列中的新仿真事件的主题消息的最大偏移量大于关联集合的计算单元发送的通信统计信息中的偏移量,并且集合的仿真时间小于推进完成主题消息中的最小仿真时间与时间推进增量之和的情况下,将集合的目标推进时间确定为推进完成主题消息中的最小仿真时间与时间推进增量之和。
在一些实施例中,分组模块610进一步被配置为对物流网络中的物流节点进行预分组以生成多个预备集合,其中,对于属于同一个预备集合的两个同类型的物流节点,在两个物流节点在物流网络中相邻的情况下,两个物流节点之间的最小运输时间小于时间推进增量;根据多个预备集合,生成多个集合。
在一些实施例中,分组模块610进一步被配置为创建新的集合;将未分组的物流节点添加到创建的集合中,作为锚点节点;根据物流网络中物流节点间的连接关系,以锚点节点为起点,对未分组的物流节点进行遍历,其中,在遍历到的物流节点与相邻的上游物流节点间的最小运输时间小于时间推进增量的情况下,将遍历到的物流节点添加到创建的集合中。
在一些实施例中,物流节点的类型包括分拣类型和配送站点类型,并且在遍历到的物流节点和相邻的上游物流节点包括分拣类型和配送站点类型的情况下,将遍历到的物流节点添加到创建的集合中。
在一些实施例中,分组模块610进一步被配置为在多个预备集合的数量小于预设的集合数量的情况下,降低时间推进增量。
在一些实施例中,分组模块610进一步被配置为在预备集合的数量大于预设值的情况下,确定不同的预备集合之间的关联性;根据关联性进行预备集合的合并,直到预备集合和合并的集合的总数量等于预设值。
在一些实施例中,分组模块610进一步被配置为确定锚点预备集合;确定与锚点预备集合中的物流节点存在线路连接关系、但不属于锚点预备集合的物流节点确定为锚点集合的关联节点;对于每个预备集合,根据关联节点的数量与关联节点与预备集合的并集中的节点数量,确定锚点预备集合与预备集合之间的关联性。
在一些实施例中,分组模块610进一步被配置为将属于分拣类型的物流节点最少的预备集合确定为锚点预备集合。
在一些实施例中,分组模块610进一步被配置为将锚点预备集合与具有最强关联性的预备集合进行合并,其中,在具有最强关联性的预备集合有多个的情况下,选择包括的分拣类型的物流节点最少的预备集合进行合并。
图7示出了根据本发明一些实施例的电子设备的结构示意图。如图7所示,该实施例的电子设备70包括:存储器710以及耦接至该存储器710的处理器720,处理器720被配置为基于存储在存储器710中的指令,执行前述任意一个实施例中的物流网络仿真的时间同步方法。
其中,存储器710例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
图8示出了根据本发明另一些实施例的电子设备的结构示意图。如图8所示,该实施例的电子设备80包括:存储器810以及处理器820,还可以包括输入输出接口830、网络接口840、存储接口850等。这些接口830,840,850以及存储器810和处理器820之间例如可以通过总线860连接。其中,输入输出接口830为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口840为各种联网设备提供连接接口。存储接口850为SD卡、U盘等外置存储设备提供连接接口。
本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种物流网络仿真的时间同步方法。
本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种物流网络仿真的时间同步方法,包括:
根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对所述物流网络中的物流节点进行分组以生成多个集合;
对于每个集合:
在所述集合存在一个或多个关联集合的情况下,确定所述一个或多个关联集合向所述集合发送的新仿真事件,其中,所述关联集合为包括以所述集合中的物流节点为终点的线路的起点的集合;
根据所述一个或多个关联集合的仿真时间的最小值与所述时间推进增量,确定所述集合的目标推进时间;
对时间戳小于所述集合的目标推进时间的仿真事件进行处理,包括:在通过处理仿真事件生成新的、涉及其他集合的仿真事件的情况下,将所述新仿真事件推送到涉及的关联集合;在通过处理仿真事件生成新的、不涉及其他集合的仿真事件的情况下,将所述新仿真事件添加到所述集合的待处理的仿真事件;
在所有时间戳小于所述集合的目标推进时间的仿真事件完成处理后,将所述集合的仿真时间推进到所述目标推进时间。
2.根据权利要求1所述的时间同步方法,其中,每个集合具有对应的计算单元,并且所述将所述新的仿真事件推送到涉及的集合包括:
所述集合的计算单元通过消息队列,向所述新仿真事件涉及的关联集合的计算单元发送新仿真事件主题的消息;
所述集合的计算单元记录通信统计信息,其中,所述通信统计信息包括所述涉及的关联集合的标识、以及所述新仿真事件在所述涉及的关联集合的消息队列中的偏移量。
3.根据权利要求2所述的时间同步方法,还包括:
在将所述集合的仿真时间推进到所述目标推进时间之后,向其他集合发送推进完成主题消息,其中,所述推进完成主题消息包括所述集合的标识、仿真时间和所述通信统计信息。
4.根据权利要求1所述的时间同步方法,还包括:
所述集合的计算单元从消息队列中读取关联集合的计算单元发送的新仿真事件的主题消息、以及推进完成主题消息,其中,所述推进完成主题消息包括所述集合的标识、仿真时间和通信统计信息,所述通信统计信息包括所述关联集合的标识、以及所述关联集合发送的新仿真事件在所述集合的消息队列中的偏移量;
所述集合的计算单元记录发送所述新仿真事件的主题消息的关联集合的标识、以及所述新仿真事件的主题消息在所述消息队列中的偏移量。
5.根据权利要求4所述的时间同步方法,还包括:
在所述集合的计算单元所消费的消息队列中的新仿真事件的主题消息的最大偏移量大于所述关联集合的计算单元发送的通信统计信息中的偏移量,并且所述集合的仿真时间小于所述推进完成主题消息中的最小仿真时间与所述时间推进增量之和的情况下,将所述集合的目标推进时间确定为所述推进完成主题消息中的最小仿真时间与所述时间推进增量之和。
6.根据权利要求1所述的时间同步方法,其中,所述根据预设的时间推进增量和相邻物流节点间的最小运输时间,对物流网络中的物流节点进行分组以生成多个集合包括:
对所述物流网络中的物流节点进行预分组以生成多个预备集合,其中,对于属于同一个预备集合的两个同类型的物流节点,在所述两个物流节点在物流网络中相邻的情况下,所述两个物流节点之间的最小运输时间小于所述时间推进增量;
根据所述多个预备集合,生成所述多个集合。
7.根据权利要求6所述的时间同步方法,其中,所述对所述物流网络中的物流节点进行预分组以生成多个预备集合包括:
创建新的集合;
将未分组的物流节点添加到所述创建的集合中,作为锚点节点;
根据所述物流网络中物流节点间的连接关系,以所述锚点节点为起点,对未分组的物流节点进行遍历,其中,在遍历到的物流节点与相邻的上游物流节点间的最小运输时间小于所述时间推进增量的情况下,将所述遍历到的物流节点添加到所述创建的集合中。
8.根据权利要求7所述的时间同步方法,其中,所述物流节点的类型包括分拣类型和配送站点类型,并且在遍历到的物流节点和相邻的上游物流节点包括分拣类型和配送站点类型的情况下,将所述遍历到的物流节点添加到所述创建的集合中。
9.根据权利要求6~8中任一项所述的时间同步方法,其中,在所述多个预备集合的数量小于预设的集合数量的情况下,降低所述时间推进增量。
10.根据权利要求6所述的时间同步方法,其中,所述根据所述多个预备集合,生成所述多个集合包括:
在所述预备集合的数量大于预设值的情况下,确定不同的预备集合之间的关联性;
根据所述关联性进行预备集合的合并,直到预备集合和合并的集合的总数量等于所述预设值。
11.根据权利要求10所述的时间同步方法,其中,所述确定不同的预备集合之间的关联性包括:
确定锚点预备集合;
确定与所述锚点预备集合中的物流节点存在线路连接关系、但不属于所述锚点预备集合的物流节点确定为所述锚点预备集合的关联节点;
对于每个预备集合,根据所述关联节点的数量与所述关联节点与所述预备集合的并集中的节点数量,确定所述锚点预备集合与所述预备集合之间的关联性。
12.根据权利要求11所述的时间同步方法,其中,选取一个预备集合作为锚点预备集合包括:
将属于分拣类型的物流节点最少的预备集合确定为锚点预备集合。
13.根据权利要求11所述的时间同步方法,其中,所述根据所述关联性进行预备集合的合并包括:
将所述锚点预备集合与具有最强关联性的预备集合进行合并,其中,在具有最强关联性的预备集合有多个的情况下,选择包括的分拣类型的物流节点最少的预备集合进行合并。
14.一种物流网络仿真的时间同步装置,包括:
分组模块,被配置为根据预设的时间推进增量和物流网络中的相邻物流节点间的最小运输时间,对所述物流网络中的物流节点进行分组以生成多个集合;
目标推进时间确定模块,被配置为对于每个集合,在集合存在一个或多个关联集合的情况下,确定一个或多个关联集合向集合发送的新仿真事件,其中,关联集合为包括以集合中的物流节点为终点的线路的起点的集合;根据一个或多个关联集合的仿真时间的最小值与时间推进增量,确定集合的目标推进时间
事件处理模块,被配置为对于每个集合:对时间戳小于所述集合的目标推进时间的仿真事件进行处理,包括:在通过处理仿真事件生成新的、涉及其他集合的仿真事件的情况下,将所述新仿真事件推送到涉及的关联集合;在通过处理仿真事件生成新的、不涉及其他集合的仿真事件的情况下,将所述新仿真事件添加到所述集合的待处理的仿真事件;以及
仿真时间推进模块,被配置为在所有时间戳小于所述集合的目标推进时间的仿真事件完成处理后,将所述集合的仿真时间推进到所述目标推进时间。
15. 一种物流网络仿真的时间同步装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1~13中任一项所述的物流网络仿真的时间同步方法。
16.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1~13中任一项所述的物流网络仿真的时间同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211645158.5A CN115630937B (zh) | 2022-12-21 | 2022-12-21 | 物流网络仿真的时间同步方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211645158.5A CN115630937B (zh) | 2022-12-21 | 2022-12-21 | 物流网络仿真的时间同步方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115630937A CN115630937A (zh) | 2023-01-20 |
CN115630937B true CN115630937B (zh) | 2023-05-30 |
Family
ID=84910131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211645158.5A Active CN115630937B (zh) | 2022-12-21 | 2022-12-21 | 物流网络仿真的时间同步方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115630937B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115827170B (zh) * | 2023-02-16 | 2023-07-14 | 之江实验室 | 基于离散事件的计算机体系结构的并行仿真方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103268251B (zh) * | 2013-05-02 | 2016-12-28 | 中国人民解放军国防科学技术大学 | 一种基于时戳截流的并行离散事件仿真时间同步方法 |
CN106605225A (zh) * | 2014-08-27 | 2017-04-26 | 日本电气株式会社 | 仿真设备、仿真方法和存储器介质 |
CN105930580B (zh) * | 2016-04-19 | 2021-06-22 | 国家电网公司 | 一种用于电力系统和信息通信系统联合仿真的时间同步与数据交换的装置及其方法 |
CN108345970A (zh) * | 2017-01-23 | 2018-07-31 | 北京京东尚科信息技术有限公司 | 物流仓储仿真方法、平台和系统 |
CN111641470B (zh) * | 2020-05-08 | 2022-08-02 | 哈尔滨工程大学 | 一种分布式仿真的时间一致性同步方法 |
-
2022
- 2022-12-21 CN CN202211645158.5A patent/CN115630937B/zh active Active
Non-Patent Citations (1)
Title |
---|
王永等.城市配送中心多目标选址模型与车辆调度仿真研究.物流科技.2020,(第06期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115630937A (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114756383A (zh) | 一种分布式计算方法、系统、设备及存储介质 | |
CN110348571A (zh) | 一种神经网络模型训练方法、装置、芯片和系统 | |
CN104714852A (zh) | 一种适用于分布式机器学习的参数同步优化方法及其系统 | |
CN115630937B (zh) | 物流网络仿真的时间同步方法、装置和存储介质 | |
CN108009642A (zh) | 分布式机器学习方法和系统 | |
Komma et al. | An approach for agent modeling in manufacturing on JADE™ reactive architecture | |
Sorkhoh et al. | Optimizing information freshness for MEC-enabled cooperative autonomous driving | |
CN110290166B (zh) | 跨集群数据交互方法、系统、装置及可读存储介质 | |
CN111612155B (zh) | 一种分布式机器学习系统及适用于其的通信调度方法 | |
CN112506658B (zh) | 一种服务链中动态资源分配和任务调度方法 | |
CN111597035B (zh) | 基于多线程的仿真引擎时间推进方法及系统 | |
CN101957760A (zh) | 一种过程执行时间的测定方法 | |
CN114095358B (zh) | 一种面向动态网络的虚拟网络功能部署方法及设备 | |
CN114490371A (zh) | 基于人工智能的数据测试方法、装置、测试设备及介质 | |
CN112418475A (zh) | 物流路径规划方法、装置、电子设备及存储介质 | |
CN115689405B (zh) | 数据处理方法、装置及系统、计算机可存储介质 | |
CN104360962A (zh) | 匹配于高性能计算机结构的多级嵌套数据传输方法与系统 | |
CN111652552B (zh) | 一种用于物流订单运输规划方法、系统及装置 | |
Jung et al. | Synchronization of a “Plug-and-Simulate”-capable Co-Simulation of Internet-of-Things-Components | |
CN110276152A (zh) | 一种并行离散时间仿真的带时间余度非严格时间管理方法 | |
CN113821313B (zh) | 一种任务调度方法、装置及电子设备 | |
Jiang et al. | Performance modelling of complex dynamic production systems using temporised object-oriented Petri nets with changeable structure (TOPNs-CS) | |
CN107025099B (zh) | 一种基于双队列模型的异步图计算实现方法及系统 | |
CN118101493B (zh) | 智算中心网络架构的仿真寻优方法、装置、设备及介质 | |
Komma et al. | AGENT-BASED SIMULATION OF A SHOP FLOOR CONTROLLER USING HYBRID COMMUNICATION PROTOCOLS. |
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 |