CN116719329A - 路径规划方法、系统、设备及存储介质 - Google Patents
路径规划方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116719329A CN116719329A CN202311007105.5A CN202311007105A CN116719329A CN 116719329 A CN116719329 A CN 116719329A CN 202311007105 A CN202311007105 A CN 202311007105A CN 116719329 A CN116719329 A CN 116719329A
- Authority
- CN
- China
- Prior art keywords
- task
- sub
- logistics
- node
- topology
- 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
- 238000000034 method Methods 0.000 title claims abstract description 77
- 230000008569 process Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 17
- 238000012546 transfer Methods 0.000 description 15
- 239000010410 layer Substances 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 9
- 239000004033 plastic Substances 0.000 description 8
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 229910052751 metal Inorganic materials 0.000 description 4
- 239000002184 metal Substances 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- KWKZCGMJGHHOKJ-ZKWNWVNESA-N Methyl Arachidonyl Fluorophosphonate Chemical compound CCCCC\C=C/C\C=C/C\C=C/C\C=C/CCCCP(F)(=O)OC KWKZCGMJGHHOKJ-ZKWNWVNESA-N 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000000825 pharmaceutical preparation Substances 0.000 description 1
- 229940127557 pharmaceutical product Drugs 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 229910001220 stainless steel Inorganic materials 0.000 description 1
- 239000010935 stainless steel Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
Abstract
本说明书一个或多个实施例提供一种路径规划方法、系统、设备及存储介质。所述方法包括:获取在物流场所中待执行的物流搬运任务;获取与物流场所对应的基础拓扑图,以及与物流搬运任务对应的任务拓扑图;任务拓扑中的节点对应由基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑;确定搬运起点和搬运终点是否属于任务拓扑图中的同一个节点;若否,根据搬运起点在任务拓扑图中所属的第一节点和搬运终点在任务拓扑图中所属的第二节点,在任务拓扑图中进行路径规划,得到与物流搬运任务对应的任务路径;以及,分别在任务路径包含的各个节点对应的子拓扑中进行路径规划,得到与任务路径包含的各个节点对应的子路径。实现提高路径规划效率。
Description
技术领域
本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种路径规划方法、系统、电子设备及计算机可读存储介质。
背景技术
搬运设备越来越多地出现在仓储、工厂线边物流、码头装卸等场景,用于实现自动化搬运,提高搬运效率,减少人工劳动。其中,路径规划是实现搬运设备能够在场地中实现自动化搬运的重要步骤之一。
相关技术中的路径规划方法是:建立与实际场地对应的环境地图,然后在环境地图的基础上应用相应算法寻找一条行走路径。但是,在实际的应用场景中,搬运设备可能需要在非常广阔的场地中运动,直接调用路径规划算法在与实际场地对应的环境地图进行路径规划会因为场地过大提高了计算复杂度,导致计算效率低。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种路径规划方法、系统、电子设备及计算机可读存储介质。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种路径规划方法,包括:
获取在物流场所中待执行的物流搬运任务,所述物流搬运任务包括搬运起点和搬运终点;
获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图;其中,所述基础拓扑图中的节点,表示搬运设备在所述物流场所中的可达位置;所述基础拓扑图中的任意两个节点之间的边,表示搬运设备在所述任意两个节点表示的可达位置之间的可通行路径;所述任务拓扑图基于所述基础拓扑图创建,所述任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑;
确定所述搬运起点和所述搬运终点是否属于所述任务拓扑图中的同一个节点;
若否,根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,得到与所述物流搬运任务对应的任务路径;以及,
确定所述任务路径中包含的各个节点在所述基础拓扑中对应的子拓扑,分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径,以使搬运设备按照所述任务路径包含的各个节点对应的子路径,执行所述物流搬运任务。
根据本说明书一个或多个实施例的第二方面,提出了一种资源调度系统,该资源调度系统包括:
与资源点集群中的任一目标资源点对应的目标资源点端调度器,用于执行第一方面所述方法的步骤;
与所述资源点集群对应的中心调度器,用于执行第一方面所述方法的步骤。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器执行所述可执行指令时,用于实现第一方面所述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开实施例中,针对于在物流场所中待执行的物流搬运任务,可以获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图。其中,基础拓扑图基于搬运机器人在物流场所中的可达位置以及可达位置之间的可通行路径创建,而任务拓扑图基于基础拓扑图创建,任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑;换句话说,任务拓扑图是对基础拓扑图进行抽象而成的更为精简的地图。
在确定物流搬运任务的搬运起点和搬运终点不属于任务拓扑图中的同一个节点的情况下,可以先根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,得到与所述物流搬运任务对应的任务路径;进而分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径。实现将针对于物流搬运任务的规划过程拆分成在任务拓扑图中的路径规划以及在任务路径包含的各个节点对应的子拓扑中的路径规划,由于任务拓扑图和各个节点对应的子拓扑图与基础拓扑图相比,节点和边更少,因此可以大大降低路径规划过程中的计算复杂度,从而提高计算效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
图1是一示例性实施例提供的一种路径规划系统的机构结构示意图。
图2是一示例性实施例提供的一种路径规划方法的流程示意图。
图3是一示例性实施例提供的一种基础拓扑图和任务拓扑图的示意图。
图4是一示例性实施例提供的一种单层仓库的不同仓储区域的示意图。
图5是一示例性实施例提供的另一种路径规划方法的流程示意图。
图6是一示例性实施例提供的点冲突和交换冲突的示意图。
图7是一示例性实施例提供的多条子路径的规划的示意图。
图8是一示例性实施例提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
搬运设备等越来越多地出现在仓储、工厂线边物流、码头装卸等场景,用于实现自动化搬运,提高搬运效率,减少人工劳动。
针对于相关技术中因实际场地过大,直接使用路径规划算法在与实际场地对应的环境地图中进行路径规划会导致计算复杂度较高且计算效率低的问题,本说明书实施例提供了一种路径规划方法,针对于在物流场所中待执行的物流搬运任务,可以获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图。其中,基础拓扑图基于搬运机器人在物流场所中的可达位置以及可达位置之间的可通行路径创建,而任务拓扑图基于基础拓扑图创建,任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑;换句话说,任务拓扑图是对基础拓扑图进行抽象而成的更为精简的地图。
在确定物流搬运任务的搬运起点和搬运终点不属于任务拓扑图中的同一个节点的情况下,可以先根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,得到与所述物流搬运任务对应的任务路径;进而分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径。本实施例实现将针对于物流搬运任务的规划过程拆分成在任务拓扑图中的路径规划以及在任务路径包含的各个节点对应的子拓扑中的路径规划,由于任务拓扑图和各个节点对应的子拓扑图与基础拓扑图相比,节点和边更少,因此可以大大降低路径规划过程中的计算复杂度,从而提高计算效率。
在一示例性的应用场景中,请参阅图1,图1示出了一种路径规划系统的结构示意图。路径规划系统包括服务器10和若干搬运设备20。服务器10分别与各个搬运设备20通信连接。
服务器10可以是后台服务器、服务器集群或者云服务器。搬运设备20至少包括储物机构和动力机构,储物机构用于放置货物,搬运设备可以通过动力机构进行前进、后退或者转向等运动。
搬运设备包括但不限于AGV(Automated Guided Vehicle,自动导引车)、叉车、传送带、提升机以及托盘穿梭车等。
(1)AGV是指装备有自动导引装置,能够沿规定的导引路径行驶,具有安全保护以及各种移载功能的运输车。具有自动移载装置的AGV在控制系统的指挥下能够自动地完成货物的取、放以及水平运行的全过程。其中,路径规划是实现搬运设备能够在场地中实现自动化搬运的重要步骤之一。
(2)叉车是最常见的搬运设备之一,用于搬运和堆垛货物,通常具有两个可伸缩的叉臂,可以插入货物底部,然后提起和搬运货物。
(3)传送带是一种用于水平或倾斜传送货物的设备,通过电动滚筒或驱动带,它们可以将货物从一个位置传送到另一个位置,适用于大量货物连续传送的情况。
(4)提升机是一种垂直升降设备,用于将货物从低处提升到高处或从高处降下。它们通常使用钢丝绳、链条或液压系统来提供升降力,并适用于重型货物搬运。
(5)托盘穿梭车用于高效地存储和检索货物或托盘,它通过在货架上移动,将货物从一个位置搬移到另一个位置,以满足仓库的存储和取货需求。
示例性的,搬运设备可以在物流场所中通行以执行物流搬运任务。举个例子,物流搬运任务为容器搬运任务;所述搬运设备为搭载了物流容器的搬运机器人。容器搬运任务是指使用物流容器来搬运货物的任务。在这个任务中,货物通常被装载到特定的物流容器(如托盘、纸箱、塑料容器等),然后使用适当的设备或工具将容器从搬运起点搬运到搬运终点。物流容器是用于运输、储存和保护商品的容器;它们在供应链和物流管理中起着重要的作用,可以提高货物装载效率、减少损耗和损坏,并简化物流操作。
物流容器包括但不限于托盘、纸箱、塑料容器、金属容器以及气囊包装等。其中,(1)托盘是最常见的物流容器之一,通常由木材、塑料或金属制成。货物可以放置在托盘上,以便于使用叉车或其他设备进行搬运和堆放。托盘还可以保护货物,减少损坏和损失。(2)纸箱(Carton):纸箱是广泛用于包装和运输商品的容器。它们可以根据货物的大小和形状进行定制,并提供物理保护,防止货物在运输过程中受到破损或污染。(3)塑料容器(Plastic Container):塑料容器由可回收的塑料材料制成,具有耐用性和轻便性。它们通常用于储存和运输食品、药品和其他易碎或易受污染的物品。(4)金属容器(MetalContainer):金属容器通常由铁、铝或不锈钢制成,具有高强度和耐用性。它们常用于运输和储存重型或大型货物,如机械零件和汽车零部件。(5)气囊包装(Air Bag Packaging):气囊包装是一种利用气囊填充空间以保护货物的容器。它们通常由可膨胀的塑料制成,在运输过程中提供缓冲和防震功能,以减少货物的损坏风险。
示例性的,考虑物流场所中的不同场地存在差异,若干搬运设备可以包含多种类型的搬运设备,比如在平地中通行的托盘穿梭车,又比如在不同仓储层的物流通道中通行的提升机。
示例性的,针对于在物流场所中待执行的物流搬运任务,服务器可以执行本说明书实施例提供的路径规划算法,以获取所述物流搬运任务对应的任务路径和任务路径包含的各个节点对应的子路径,进而根据路径规划的结果生成控制指令并下发给搬运设备,由搬运设备在物流场所中执行物流搬运任务。
接下来对本说明书提供的路径规划方法进行示例性说明:请参阅图2所示的路径规划方法的流程示意图,所述方法可以由图1中的服务器来执行,所述方法包括:
在S101中,获取在物流场所中待执行的物流搬运任务,所述物流搬运任务包括搬运起点和搬运终点。
在S102中,获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图;其中,所述基础拓扑图中的节点,表示搬运设备在所述物流场所中的可达位置;所述基础拓扑图中的任意两个节点之间的边,表示搬运设备在所述任意两个节点表示的可达位置之间的可通行路径;所述任务拓扑图基于所述基础拓扑图创建,所述任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑。
在S103中,确定所述搬运起点和所述搬运终点是否属于所述任务拓扑图中的同一个节点。
在S104中,若否,根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,得到与所述物流搬运任务对应的任务路径;以及,确定所述任务路径中包含的各个节点在所述基础拓扑中对应的子拓扑,分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径,以使搬运设备按照所述任务路径包含的各个节点对应的子路径,执行所述物流搬运任务。
本实施例实现将针对于物流搬运任务的规划过程拆分成在任务拓扑图中的路径规划以及在任务路径包含的各个节点对应的所述子拓扑中的路径规划,由于任务拓扑图和各个节点对应的子拓扑图与基础拓扑图相比,则节点和边更少,因此可以大大降低路径规划过程中的计算复杂度,从而提高计算效率。
对于S101,物流搬运任务可以是由仓储系统下发给服务器的,仓储系统可以包含仓储管理系统和仓库控制系统,可以为物流中心运作提供全局性调度优化及实时决策。可以利用物流中心现有系统和资源,减少物流业务运作中断时间,提高自动化设备利用率及劳动生产率,从而降低物流中心客户订单响应时间,提高物流中心整体吞吐量,通过建立业务敏捷性来满足全渠道供应链的需求。
对于S102,服务器在获取物流搬运任务之后,可以获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图,以便基于任务拓扑图和基础拓扑图进行路径规划。
这里对基础拓扑图进行示例性说明:
所述基础拓扑图中的节点,表示搬运设备在所述物流场所中的可达位置;所述基础拓扑图中的任意两个节点之间的边,表示搬运设备在所述任意两个节点表示的可达位置之间的可通行路径。
所述基础拓扑图中的节点可以根据实际需要进行具体设置。在一个例子中,可以在平面中铺设视觉标记诸如二维码或者其他可识别条码,搬运设备可以基于识别到的视觉标记在物流场所中行进;则每一个视觉标记所在位置可以设置为基础拓扑图中的一个节点。在另一个例子中,搬运机器人可以基于SLAM(Simultaneous Localization andMapping,同时定位与地图构建)技术行进,通过使用传感器(如摄像头、激光雷达、惯性测量单元等)获取环境信息,并同时实时定位设备自身在环境中的位置,同时构建或更新环境的地图;则可以在构建的地图中选择一些位置点作为基础拓扑图中的节点,这个位置点包括但不限于货物交接点、搬运设备作业点、转向点等。当然,对于按照其他方式导航的搬运设备,也可以根据实际需要在该搬运设备的可达空间中随机选取一些可达位置或者按照预设规则选取一些可达位置作为基础拓扑地图中的节点,本实施例对此不做任何限制。
可以理解的是,基础拓扑地图中的节点包含:搬运设备在所述物流场所中的可达位置的位置信息;基础拓扑地图中任意两个节点之间的边包含:所述任意两个节点表示的可达位置之间的可通行路径的位置信息和距离信息。
举个例子,请参阅图3,图3示出了一个托盘四穿立体仓库对应的基础拓扑图,托盘四穿立库由3个仓储层以及2个物流通道,通过分别在3个仓储层以及2个物流通道中选取搬运机器人的可达位置,以及可达位置之间的可通行路径,可以得到如图3所示的基础拓扑图。
在物流场所面积较大且结构较复杂(比如由多个仓储层)的情况下,在物流场所中可能有多种类型的搬运设备(比如托盘穿梭车、提升机、叉车、传送带、自动导引车等)在不同的物理空间中通行,或者同一种类型的搬运设备也有可能是在不同的物理空间中通行的(比如同一类型的两个搬运设备在物流场所的不同仓储层中通行),因此,所述基础拓扑图中的点表示同一类型的不同搬运机器人的可达位置、以及不同类型的搬运机器人的可达位置中的至少一种。所述基础拓扑图中的任意两个节点之间的边,表示同一个搬运设备在所述任意两个节点表示的可达位置之间的可通行路径。可以理解的是,基础拓扑地图中的节点还包含能够到达该可达位置的搬运设备的类型信息。
延用上例,图3示出了托盘四穿立体仓库对应的基础拓扑图,假设能够在仓储层中通行的搬运设备为托盘穿梭车,能够在物流通道中通行的搬运设备为提升机。在仓储三层中的托盘穿梭车的可达位置在基础拓扑图中的节点包含{b1、b2、b3、a1、e1},在仓储二层中的托盘穿梭车的可达位置在基础拓扑图中的节点包含{c1、c2、c3、a2、e2},在仓储一层中的托盘穿梭车的可达位置在基础拓扑图中的节点包含{d1、d2、d3、a3、e3},在物流通道1中的提升机的可达位置在基础拓扑图中的节点包含{a1、a2、a3},在物流通道2中的提升机的可达位置在基础拓扑图中的节点包含{e1、e2、e3}。其中,当所述基础拓扑图中的同一个节点表示至少两种不同类型的搬运设备的可达位置时,可以理解为该节点表示货物交接点,如a1、a2、a3、e1、e2、e3为货物交接点,托盘穿梭车和提升机之间在该货物交接点处可以进行货物交接,以实现货物在不同仓储层中的运输。
这里对任务拓扑图进行示例性说明:
任务拓扑图可以基于基础拓扑图创建。任务拓扑图可以是服务器在接收到物流搬运任务之前,根据在物流场所中执行的物流搬运任务的特性提前创建的;或者,任务拓扑图也可以是服务器在接收到物流搬运任务之后,根据物流搬运任务的特性实时创建的。本实施例对此不做任何限制。任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑。
在一些实施例中,在创建任务拓扑图时,服务器可以确定所述物流场所包含的各个物理空间在所述基础拓扑图上对应的子拓扑;其中,所述子拓扑由位于所述物理空间内的多个可达位置在所述基础拓扑上对应的多个节点,以及所述多个可达位置之间的可通行路径在所述基础拓扑上对应的边构成;然后将所述各个物理空间在所述基础拓扑图上对应的子拓扑分别作为任务拓扑图上的节点,以创建所述任务拓扑图。本实施例通过对基础拓扑图进行划分可以得到节点和边更少的任务拓扑图,从而降低后续路径规划的计算复杂度,并且按照物理空间对基础拓扑图进行划分,使得创建的任务拓扑图与物流场所的实际物理结果存在一定对应关系,保证后续路径规划的准确性。
所述任务拓扑图中任意两个节点之间的边与所述任意两个节点对应的子拓扑之间的边一一对应,或者说,两者数量相等。举个例子,比如任务拓扑图中的任意两个节点对应的子拓扑之间有3条边,表示有3条可通行路径,则任务拓扑图中的任意两个节点之间也有3条边,分别对应这3条可通行路径。
沿用上例,请参阅图3,图3示出了托盘四穿立体仓库对应的基础拓扑图,按照托盘四穿立体仓库对应的5个物理空间(3个仓储层以及2个物流通道)可以确定出5个子拓扑,各个子拓扑与托盘四穿立体仓库的各个物理空间一一对应,然后将5个子拓扑分别作为任务拓扑图上的节点,从而创建任务拓扑图,该任务拓扑图中的节点包括{A、B、C、D、E}。其中,可以看出任务拓扑图中的节点A对应的子拓扑和节点B对应的子拓扑中,存在两条可通行路径,也即边ab1和ab2,则任务拓扑图中的节点A和节点B之间的边包含:与边ab1对应的边AB1、和与边ab2对应的边AB1;任务拓扑图中的其他任意两个节点对应的两个子拓扑之间存在一条可通行路径,则在任务拓扑图相应地创建一条边。
示例性的,物流场所中的物理空间可以包括以下示出的一个或者多个的组合:(1)与所述物流场所中的不同的仓储层对应的物理空间,如请参阅图3中的托盘四穿立体仓库;(2)与所述物流场所中的同一仓储层中的不同的仓储区域对应的物理空间,如请参阅图4中的单层仓库的俯视图,各个仓储区域可以作为一个物理空间;(3)所述物流场所采用的搬运设备在所述物流场所中的可达空间,如请参阅图3中的托盘四穿立体仓库;(4)基于业务需求在所述物流场所中规划出的物理空间。
可以理解的是,本说明书实施例的路径规划方法适用于以下任意一种场景:(1)场景1:同一个搬运设备可以在不同的物理空间中移动;(2)场景2:不同类型的搬运设备在不同的物理空间中移动;(3)场景3:同一类型的不同搬运设备在不同的物理空间中移动;(4)场景4:同一类型的不同搬运设备可以在相同的物理空间中移动。
在一些实施例中,对于S103,物理搬运任务包含搬运起点和搬运终点。示例性的,搬运起点和搬运终点为所述基础拓扑图中的两个不同的节点;或者搬运起点也可以是所述基础拓扑图的其中一条边表示的可通行路径中的某个路径点,同理,搬运终点也可以是所述基础拓扑图的另一条边表示的可通行路径中的某个路径点。
在获取物流搬运任务之后,服务器需要确定所述搬运起点和所述搬运终点是否属于所述任务拓扑图中的同一个节点。示例性的,服务器可以判断所述搬运起点在基础拓扑图中所属的子拓扑和所述搬运终点在基础拓扑图中所属的子拓扑是不是同一个,从而确定所述搬运起点和所述搬运终点是否属于所述任务拓扑图中的同一个节点。
如果所述搬运起点和所述搬运终点属于所述任务拓扑图中的不同节点,表示该物流搬运任务跨越了物流场所中的不同物理空间,则需要执行S104的步骤,先在任务拓扑图中进行路径规划得到任务路径,再分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划得到子路径。
如果所述搬运起点和所述搬运终点属于所述任务拓扑图中的同一个节点,表示该物流搬运任务仅需在物流场景中的其中一个物理空间中执行,则需要执行如图5所示的S105的步骤,仅需在所述搬运起点和所述搬运终点在所述任务拓扑图中所属的同一个节点对应的子拓扑中进行路径规划。
这里对所述搬运起点和所述搬运终点属于所述任务拓扑图中的不同节点的情况进行示例性说明:
对于S104,服务器首先在所述任务拓扑图中进行路径规划。示例性的,假设搬运起点在所述任务拓扑图中所属的节点为第一节点,搬运终点在任务拓扑图中所属的节点为第二节点,所述服务器可以以从所述第一节点到所述第二节点之间的距离最短、以及从所述第一节点到所述第二节点之间的路径承载的物流搬运任务的数量最少中的至少一者为规划目标,在所述任务拓扑图规划出从所述第一节点到所述第二节点的任务路径。本实施例针对于物流搬运任务需要跨越物流场所中的不同物理空间的场景,首先在节点和边比基础拓扑图更少的任务拓扑图中进行路径规划,有利于降低计算复杂度,提高计算效率。
可以根据实际情况采用不同的路径规划算法来进行上述的规划过程,路径规划算法包括但不限于迪杰斯特拉算法(Dijkstra's Algorithm)、A* 算法(A-Star Algorithm)、克鲁斯卡尔算法(Kruskal's Algorithm)、RRT 算法(Rapidly-exploring Random Tree)以及D* 算法(D-Star Algorithm)等等。
以A* 算法举例,A* 算法的基本思想是维护两个列表:开放列表和关闭列表。开放列表存储待探索的节点,关闭列表存储已经探索过的节点。算法的步骤如下:
步骤1:初始化。将第一节点加入开放列表(Open List);将第一节点的代价设置为0,将启发式函数的值作为该节点的估计值。创建一个空的关闭列表(Close List)。
步骤2:迭代搜索。从开放列表中选择代价最小的节点作为当前节点,并将其从开放列表中移除,加入关闭列表。判断当前节点是否为第二节点,如果是则搜索结束,得到最优路径。
步骤3:对于当前节点的相邻节点(相邻节点也即与当前节点连接的节点)。如果相邻节点已经在关闭列表中,则跳过该节点。如果相邻节点不在开放列表中,将其添加到开放列表,并计算相邻节点的代价和估计值。如果相邻节点已经在开放列表中,比较当前路径是否更短。如果是,则更新相邻节点的代价和估计值。其中,如果当前节点到相邻节点的边的距离越长,则代价越高,反之亦然;和/或,如果当前节点到相邻节点的边表示的可通行路径承载的物流搬运任务的数量越多,则代价越高,反之亦然。
重复步骤 2 和步骤 3,直到找到第二节点或开放列表为空(表示无法到达第二节点)。若开放列表为空而没有找到第二节点,则表示无解。否则,根据关闭列表中的节点,回溯得到最优路径。
在一些实施例中,上述内容提及所述任务拓扑图中任意两个节点之间的边与所述任意两个节点对应的子拓扑之间的边一一对应。从第一节点到第二节点的任务路径包含所述任务拓扑图中的节点和边;则在进行接下来的子路径规划之前,服务器可以根据物流搬运任务的搬运起点和搬运终点、以及所述任务路径包含的边在所述基础拓扑图中的对应边连接的两个节点,确定所述任务路径包含的各个节点对应的子路径的搬运起点和搬运终点。
延用上例,假设在图3中确定的任务路径为B→A→D,节点B经过边AB1到达节点A,节点A经过边AD1到达节点D;任务拓扑图中的边AB1对应基础拓扑图中的边ab1,其连接的两个节点分别为a1和b1;任务拓扑图中的边AD1对应基础拓扑图中的边ad1,其连接的两个节点分别为a3和d1;物流搬运任务的搬运起点为基础拓扑图中的节点b2,搬运终点为基础拓扑图中的d3,所述任务路径中包含的各个节点在所述基础拓扑中对应的子拓扑有3个,则需要分别规划3条子路径,按照上述的信息,首先可以确定出在节点B对应的子路径的搬运起点为节点b2以及搬运终点为节点b1,节点A对应的子路径的搬运起点为节点a1以及搬运终点为节点a3,节点D对应的子路径的搬运起点为节点d1以及搬运终点为节点d3。
在一些实施例中,所述物流搬运任务包含与所述任务路径包含的节点一一对应的子任务。延用上例,所述任务路径为B→A→D,有3个节点,则对应的物理搬运任务包含有与3个节点分别一一对应的3个子任务。
在一些可能的实现方式中,所述物流搬运任务包含的子任务是在上述的任务路径规划之前划分好的,即是说,服务器接收到的物流搬运任务中已包含被拆分好的子任务。示例性的,物流搬运任务中的子任务可以是按照物流场所中的不同物理空间拆分的。
在另一些可能的实现方式中,所述物流搬运任务包含的子任务也可以是在规划出任务路径之后,服务器根据所述任务路径包含的节点对物流搬运任务进行拆分得到的。
在一些应用场景中,某些物流场所可能仅采用一种类型的搬运设备执行物流搬运任务,且该种类型的搬运设备有多个,则服务器可以在获取到物流搬运任务之后,根据所述物流搬运任务的任务信息和多个搬运设备的参数信息,从所述多个搬运设备中确定用于执行该物流搬运任务的目标搬运设备。换句话说,物流搬运任务包含的子任务均由同一个目标搬运设备来执行,该目标搬运设备可以在不同物理空间中移动。
其中,物流搬运任务的任务信息包括但不限于搬运起点、物流搬运任务的优先级以及搬运终点等;任一搬运设备的参数信息包括但不限于搬运设备当前的位置、搬运设备当前执行的物流搬运任务的优先级、以及搬运设备是否空闲等。其中,物流搬运任务的优先级表征该物流搬运任务的紧急程度,越紧急则优先级越高,需要被搬运设备优先执行。
示例性的,可以根据物流搬运任务的搬运起点、多个搬运设备当前的位置、以及搬运设备是否空闲,从多个搬运设备中确定距搬运起点最近且空闲的目标搬运设备;或者,在没有空闲机器人的情况下,可以进一步选择满足以下条件的目标搬运设备:距搬运起点最近且当前执行的物流搬运任务的优先级低于待执行的物流搬运任务的优先级。
在另一些场景中,某些物流场所支持采用多种类型的搬运设备执行物流搬运任务,多种类型的搬运设备包括但不限于托盘穿梭车、提升机、叉车、传送带、自动导引车等;其中,同一类型的搬运设备可以有一个或者多于一个。在得到与所述物流搬运任务对应的任务路径之后,针对于物流搬运任务中与所述任务路径包含的节点一一对应的子任务,服务器需要针对于所述物流搬运任务包含的各个子任务进行目标搬运设备的选择。服务器可以根据所述物流搬运任务包含的各个子任务的任务信息,和所述多种类型的搬运设备的参数信息,从所述多种类型的搬运设备中确定用于执行各个子任务的目标搬运设备。其中,子任务的任务信息包括但不限于搬运类型、子任务的搬运起点、以及搬运优先级;搬运设备的参数信息包括以下至少一种:搬运设备支持的搬运类型、搬运设备的位置、搬运设备当前执行的子任务的搬运优先级、以及搬运设备是否空闲。本实施例实现准确选择用于执行各个子任务的目标搬运设备,从而保证物流搬运任务的准确执行。
举个例子,服务器可以根据所述物流搬运任务包含的各个子任务的任务信息,和所述多种类型的搬运设备的参数信息,以总代价最小为匹配目标,从所述多种类型的搬运设备中确定用于执行各个子任务的目标搬运设备。总代价最小包括以下任意一种:(1)搬运设备支持的搬运类型与子任务的搬运类型匹配、搬运设备的位置离子任务的搬运起点最近、且搬运设备是空闲的;(2)搬运设备支持的搬运类型与子任务的搬运类型匹配、搬运设备的位置离子任务的搬运起点最近、且搬运设备当前执行的子任务的搬运优先级低于待执行的子任务的搬运优先级。
示例性的,所述物流场所包含的各个物理空间中,支持采用多种类型的搬运设备执行物流搬运任务;所述物流搬运任务包含与所述任务路径包含的节点一一对应的子任务,不同的子任务可能需要由不同类型的搬运设备或者同一类型的不同搬运设备来执行。因此,针对于物流搬运任务中与所述任务路径包含的节点一一对应的每一个子任务,服务器可以根据所述物流搬运任务包含的各个子任务的任务信息,和与所述各个子任务对应的物理空间支持采用的所述多种类型的搬运设备的参数信息,从所述多种类型的搬运设备中确定用于在与各个子任务对应的物理空间中执行各个子任务的目标搬运设备。即是说,服务器需要针对于每一个子任务选择对应的目标搬运设备。
可以根据实际情况采用不同的匹配算法来进行子任务与搬运设备之间的匹配过程,匹配算法包括但不限于匈牙利算法或者最小代价最大流算法等。
延用上例,假设在图3中确定的任务路径为B→A→D,节点B对应的子任务需要由处于仓储三层中的托盘穿梭车来执行,节点A对应的子任务需要由处于物流通道1中的提升机来执行,节点D对应的子任务需要由处于仓储一层中的托盘穿梭车来执行。
在一些实施例中,在确定了用于在与各个子任务对应的物理空间中执行各个子任务的目标搬运设备之后,考虑到在不同物理空间中执行子任务的目标搬运设备不是同一个,则服务器可以根据物理搬运任务指示的货物在各个子任务的目标搬运设备中的流转方式,建立相邻子任务的目标搬运设备在时间和空间上的衔接关系。其中,衔接关系指示了货物在相邻子任务的目标搬运设备之间流转时,需要协调的交接地点和交接时间。
延用上例,假设在图3中确定的任务路径为B→A→D,节点A对应的子任务由提升机来执行,节点D对应的子任务由托盘穿梭车来执行,基础拓扑图中的节点a3为提升机和托盘穿梭车的货物交接点,则服务器可以设置托盘穿梭车需要等待提升机的到达,或者托盘穿梭车与提升机需要在某个时间范围内均到达节点a3,以便进行货物交接。
这里对子任务的规划过程进行示例性说明:
在得到与所述物流搬运任务对应的任务路径,并且确定了目标搬运设备之后,服务器确定所述任务路径中包含的各个节点在所述基础拓扑中对应的子拓扑,然后分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径。本实施例中实现在节点和边比基础拓扑图更少的子拓扑中进行路径规划,有利于降低计算复杂度,提高计算效率。
上述提到,任务拓扑图中的一个节点对应物理场所中的一个物理空间,同一个物理空间在同一时间内可能有多个子任务在该物理空间中并行执行。因此,对于所述任务路径包含的各个节点,服务器首先需要确定该节点是否对应多个子任务,所述多个子任务分别对应不同的物流搬运任务,也就是说,在同一时间内可能有与多个物流搬运任务分别对应的多个子任务在同一个子拓扑中并行执行。
如果所述任务路径中的任一目标节点对应一个子任务,则服务器可以以从子任务的搬运起点到搬运终点的子路径最短、和/或搬运设备在子路径行进的耗时最短为规划目标,在所述目标节点对应的子拓扑中规划出从子任务的搬运起点到搬运终点的子路径。
如果所述任务路径中的任一目标节点对应所述多个子任务,则服务器需要进行多智能体路径规划(Multi-Agent Path Finding,MAFP)。MAFP涉及多个智能体从起始位置到目标位置且无冲突的最优路径集合的规划问题。可以采用不同的多智能体路径规划算法来进行多个子任务对应的多个子路径的规划过程,多智能体路径规划算法包括但不限于基于冲突的算法、优先级规划算法、协调搜索算法以及混合算法等。
示例性的,服务器可以根据所述多个子任务分别对应的搬运起点和搬运终点,在所述目标节点对应的子拓扑中为所述多个子任务分别规划出满足约束条件的多条子路径;其中,请参阅图6,所述约束条件包括所述多条子路径不存在点冲突和/或交换冲突,所述点冲突指示同一时刻有至少两个搬运设备到达子拓扑中的同一个节点,所述交换冲突指示同一时刻有至少两个搬运设备在子拓扑中交换位置。
请参阅图7,图7中的圆形表示搬运设备,矩形表示装载货物的货柜,菱形表示货物的出货区。多条子路径的规划过程可以被定义为一个四元组<G,k,S,T>,其中,G表示如图7所示的子拓扑,k表示搬运设备的数量,如图7中的{a1,…ai,aj…ak},S是多个子任务的搬运起点位置集合,如{s1,…si,sj…sk},T 是多个子任务的搬运终点的集合,如图7中的{g1,…gi,gj…gk},用于执行子任务的目标搬运设备ai从子任务的搬运起点ai到搬运终点gi的行动序列构成一条子路径pi,,多条子路径的规划过程即是求解k子任务对应的k子路径的集合,也即{p1,…pi,pj…pk},多条子路径各不冲突。一旦子路径产生冲突则需要重规划路径,直到找到满足上述约束条件的无冲突的最优路径集。如图7示出了在一个子拓扑中针对于4个子任务规划出4条无冲突的子路径。
示例性的,如果所述任务路径中的任一目标节点对应所述多个子任务,在多条子路径的规划过程中,服务器可以在所述目标节点对应的子拓扑中,以总代价最小为规划目标,在所述目标节点对应的子拓扑中为所述多个子任务分别规划出满足约束条件的多条子路径。其中,所述总代价最小包括以下示出的任一:(1)所述多条子路径的总距离最短;(2)多条子路径中的最长路径的距离,是迭代运算出的所述最长路径的距离对应的所有可行解中的最小值;(也即让多条子路径中的最长路径的距离尽可能短);(3)所述多条子路径中的指定子路径的距离最短或者短于预设距离;(4)用于执行所述多个子任务的多个目标搬运设备在所述多条子路径中行进的总耗时最短;(5)用于执行指定子任务的目标搬运设备在对应的子路径中行进的耗时最短或者短于预设时长。
对于“(2)多条子路径中的最长路径的距离,是迭代运算出的所述最长路径的距离对应的所有可行解中的最小值”;可以理解的是,每一轮迭代过程中的最长路径对应的子任务并不是同一个,有可能在第N轮迭代过程中子任务a的路径最长,而在第N+1轮迭代过程中子任务b的路径最长。其中,N为大于0的整数。
其中,所述预设距离、所述预设时长、指定子路径和指定子任务可依据实际应用场景进行具体设置,本实施例对此不做任何限制。举个例子,比如指定子路径可以是子任务的搬运起点和搬运终点之间的直线距离大于预设阈值对应的子路径;又比如指定子路径可以是子任务的搬运起点和搬运终点之间的直线距离最短对应的子路径。指定子任务可以是优先级最高的子任务,或者可以是子任务的搬运起点和搬运终点之间的直线距离最短的子任务。
示例性的,在所述多条子路径规划过程中,考虑到所述子拓扑中存在节点或者边在某一时间范围内出现拥塞,则可以设置所述子拓扑中出现拥塞的节点或边在该时间范围的代价与拥塞程度成正相关关系,拥塞程度越大,则代价越高,从而使得服务器在路径规划过程中可以避免或者减少选择出现拥塞的节点或者边,从而有利于提高后续搬运设备在执行子任务时的搬运效率。
示例性的,如果所述任务路径中的任一目标节点对应所述多个子任务,所述多个子任务中可能存在第一数量子任务可能是还没有规划过子路径的,以及第二数量的子任务可能是之前已经规划好子路径且正在按照子路径执行的。在一种可能的实现方式中,针对于所述目标节点对应的所述多个子任务可以全部重新规划子路径,而对于上述的第二数量的子任务的搬运起点可以是执行该子任务的目标搬运设备的当前位置。在另一种可能的实现方式中,上述的第二数量的子任务无需重新规划子路径,仅需对上述的第一数量子任务进行路径规划即可,但上述的第一数量子任务对应的子路径需要与上述的第二数量的子任务对应的子路径满足约束条件,所述约束条件包括多条子路径不存在点冲突和/或交换冲突。
在一些实施例中,考虑到在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划的过程相互独立,则服务器可以并行地在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径;本实施例中,与所述任务路径包含的各个节点对应的子路径的并行规划过程有利于提高计算效率。
在一些实施例中,在得到与所述任务路径包含的各个节点对应的子路径之后,服务器可以生成控制指令,并分段下发给搬运设备,以使搬运设备按照所述任务路径包含的各个节点对应的子路径,执行所述物流搬运任。示例性的,所述控制指令包括对应于各个子路径的子控制指令,服务器可以将各个子控制指令按顺序依次下发给用于执行各个子任务的目标搬运设备,以使目标搬运设备执行子任务。
延用上例,假设在图3中确定的任务路径为B→A→D。在节点B对应的子拓扑中,规划出来的子路径1是从节点b2→节点b1。在节点A对应的子拓扑中,规划出来的子路径2是从节点a1→节点a2→节点a3。在节点D对应的子拓扑中,规划出来的子路径2是从节点d1→节点d2→节点d3。
服务器可以将子路径1对应的子控制指令下发到仓储三层中的目标托盘穿梭车1号、将子路径2对应的子控制指令下发给物流通道1中的目标提升机,以及将子路径3对应的子控制指令下发到仓储一层中的目标托盘穿梭车2号。目标托盘穿梭车1号将托盘搬运到节点b1,然后在节点b1处等待目标提升机到达a1点。目标提升机到达后,目标托盘穿梭车1号可以将托盘放到提升机内部,也即a1点,然后目标托盘穿梭车离开。目标提升机搬运托盘从a1到达a3。与此同时,目标托盘穿梭车2号到达d1,并将托盘从提升机内部也即a3中搬运出来,并离开到达终点d3。
在另一个例子中,假设一个物流搬运任务由一个搬运设备在图4所示的平面仓库中的不同仓储区域中移动,从仓储区域1经过仓储区域3移动到仓储区域5,每个仓储区域作为任务拓扑图中的一个节点,则规划出的任务路径包含3个节点,进而在3个节点对应的子拓扑中分别进行路径规划,得到3条子路径,由于3条子路径均由同一个搬运设备执行,则服务器可以按顺序将3条子路对应的子控制指令依次下发给搬运设备,由搬运设备从搬运起点经过不同的仓储区域将容器搬运到搬运终点。
这里对所述搬运起点和所述搬运终点属于所述任务拓扑图中的同一个节点的情况进行示例性说明:
请参阅图5,图5示出了另一种路径规划方法的流程示意图。对于图5中的S105,在物流搬运任务的所述搬运起点和所述搬运终点属于所述任务拓扑图中的同一个节点,服务器可以确定所述搬运起点和所述搬运终点在所述任务拓扑图中所属的同一个节点对应的子拓扑,然后在该子拓扑中进行路径规划,得到与所述物流搬运任务对应的任务路径,以使搬运设备按照所述任务路径执行所述物流搬运任务。可以理解的是,该种情况下的任务路径类比于上述情况(也即搬运起点和搬运终点属于任务拓扑图中的不同节点)中的子路径,在该种情况下的任务路径的规划过程与上述情况的子路径的规划过程类似,此处不在赘述。
在得到任务路径之后,服务器可以根据所述任务路径生成控制指令,并下发给用于执行该物流搬运任务的搬运设备,以使搬运设备按照所述任务路径执行所述物流搬运任务。
以上实施方式中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
在一些实施例中,本说明书实施例还提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令以实现上述中任一项所述的方法。
图8是一示例性实施例提供的一种设备的示意结构图。请参考图8,在硬件层面,该设备包括处理器802、内部总线804、网络接口806、内存808以及非易失性存储器810,当然还可能包括其他业务所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器802从非易失性存储器810中读取对应的计算机程序到内存808中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在一些实施例中,本说明书实施例还提供了一种资源调度系统,该资源调度系统包括:与资源点集群中的任一目标资源点对应的目标资源点端调度器,用于执行上述任意一项所述方法的步骤;与所述资源点集群对应的中心调度器,用于执行上述任意一项所述方法的步骤。
在一些实施例中,本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述任一项所述方法的步骤。
需要说明的是,本说明书所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (13)
1.一种路径规划方法,其特征在于,包括:
获取在物流场所中待执行的物流搬运任务,所述物流搬运任务包括搬运起点和搬运终点;
获取与所述物流场所对应的基础拓扑图,以及与所述物流搬运任务对应的任务拓扑图;其中,所述基础拓扑图中的节点,表示搬运设备在所述物流场所中的可达位置;所述基础拓扑图中的任意两个节点之间的边,表示搬运设备在所述任意两个节点表示的可达位置之间的可通行路径;所述任务拓扑图基于所述基础拓扑图创建,所述任务拓扑中的节点对应由所述基础拓扑图中的多个节点以及该多个节点之间的边构成的子拓扑;
确定所述搬运起点和所述搬运终点是否属于所述任务拓扑图中的同一个节点;
若否,根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,得到与所述物流搬运任务对应的任务路径;以及,
确定所述任务路径中包含的各个节点在所述基础拓扑中对应的子拓扑,分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径,以使搬运设备按照所述任务路径包含的各个节点对应的子路径,执行所述物流搬运任务。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果所述搬运起点和所述搬运终点属于所述任务拓扑图中的同一个节点,在所述搬运起点和所述搬运终点在所述任务拓扑图中所属的同一个节点对应的子拓扑中进行路径规划,得到与所述物流搬运任务对应的任务路径,以使搬运设备按照所述任务路径执行所述物流搬运任务。
3.根据权利要求2所述的方法,其特征在于,基于所述基础拓扑图创建所述任务拓扑图,包括:
确定所述物流场所包含的各个物理空间,在所述基础拓扑图上对应的子拓扑;其中,所述子拓扑由位于所述物理空间内的多个可达位置在所述基础拓扑上对应的多个节点,以及所述多个可达位置之间的可通行路径在所述基础拓扑上对应的边构成;
将所述各个物理空间在所述基础拓扑图上对应的子拓扑分别作为任务拓扑图上的节点,以创建所述任务拓扑图。
4.根据权利要求3所述的方法,其特征在于,所述物理空间包括以下示出的一个或者多个的组合:
与所述物流场所中的不同的仓储层对应的物理空间;
与所述物流场所中的同一仓储层中的不同的仓储区域对应的物理空间;
所述物流场所采用的搬运设备在所述物流场所中的可达空间。
5.根据权利要求1所述的方法,其特征在于,所述根据所述搬运起点在所述任务拓扑图中所属的第一节点和所述搬运终点在所述任务拓扑图中所属的第二节点,在所述任务拓扑图中进行路径规划,包括:
以从所述第一节点到所述第二节点之间的距离最短、和/或从所述第一节点到所述第二节点之间的路径承载的物流搬运任务的数量最少为规划目标,在所述任务拓扑图规划出从所述第一节点到所述第二节点的任务路径。
6.根据权利要求3所述的方法,其特征在于,所述物流搬运任务包含与所述任务路径包含的节点一一对应的子任务;所述物流场所支持采用多种类型的搬运设备执行物流搬运任务;
所述方法还包括:
根据所述物流搬运任务包含的各个子任务的任务信息,和所述多种类型的搬运设备的参数信息,从所述多种类型的搬运设备中确定用于执行各个子任务的目标搬运设备。
7.根据权利要求6所述的方法,其特征在于,所述物流场所包含的各个物理空间中,支持采用多种类型的搬运设备执行物流搬运任务;
根据所述物流搬运任务包含的各个子任务的任务信息,和所述多种类型的搬运设备的参数信息,从所述多种类型的搬运设备中确定用于执行各个子任务的目标搬运设备,包括:
根据所述物流搬运任务包含的各个子任务的任务信息,和与所述各个子任务对应的物理空间支持采用的所述多种类型的搬运设备的参数信息,从所述多种类型的搬运设备中确定用于在与各个子任务对应的物理空间中执行各个子任务的目标搬运设备。
8.根据权利要求3或5所述的方法,其特征在于,所述分别在所述任务路径包含的各个节点对应的所述子拓扑中进行路径规划,得到与所述任务路径包含的各个节点对应的子路径,包括:
确定所述任务路径包含的各个节点是否对应多个子任务;所述多个子任务分别对应不同的物流搬运任务;
如果任一目标节点对应所述多个子任务,根据所述多个子任务分别对应的搬运起点和搬运终点,在所述目标节点对应的子拓扑中为所述多个子任务分别规划出满足约束条件的多条子路径;
其中,所述约束条件包括所述多条子路径不存在点冲突和/或交换冲突,所述点冲突指示同一时刻有至少两个搬运设备到达子拓扑中的同一个节点,所述交换冲突指示同一时刻有至少两个搬运设备在子拓扑中交换位置。
9.根据权利要求8所述的方法,其特征在于,在所述目标节点对应的子拓扑中为所述多个子任务分别规划出满足约束条件的多条子路径,包括:
在所述目标节点对应的子拓扑中,以总代价最小为规划目标,在所述目标节点对应的子拓扑中为所述多个子任务分别规划出满足约束条件的多条子路径;
其中,所述总代价最小包括以下示出的任一:
所述多条子路径的总距离最短;
多条子路径中的最长路径的距离,是迭代运算出的所述最长路径的距离对应的所有可行解中的最小值;
用于执行所述多个子任务的多个目标搬运设备在所述多条子路径中行进的总耗时最短。
10.根据权利要求1所述的方法,其特征在于,所述物流搬运任务为容器搬运任务;所述搬运设备为搭载了物流容器的搬运机器人。
11.一种资源调度系统,其特征在于,该资源调度系统包括:
与资源点集群中的任一目标资源点对应的目标资源点端调度器,用于执行权利要求1至10任意一项所述方法的步骤;
与所述资源点集群对应的中心调度器,用于执行权利要求1至10任意一项所述方法的步骤。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1至10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1至10中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311007105.5A CN116719329B (zh) | 2023-08-10 | 2023-08-10 | 路径规划方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311007105.5A CN116719329B (zh) | 2023-08-10 | 2023-08-10 | 路径规划方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116719329A true CN116719329A (zh) | 2023-09-08 |
CN116719329B CN116719329B (zh) | 2023-11-14 |
Family
ID=87873841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311007105.5A Active CN116719329B (zh) | 2023-08-10 | 2023-08-10 | 路径规划方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116719329B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117035602A (zh) * | 2023-10-10 | 2023-11-10 | 成都思越智能装备股份有限公司 | 一种跨搬运系统的物料搬送路径寻优方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110703725A (zh) * | 2019-09-23 | 2020-01-17 | 北京控制工程研究所 | 一种适用于航天姿态轨道控制系统的路径优化方法 |
CN110736478A (zh) * | 2018-07-20 | 2020-01-31 | 华北电力大学 | 一种无人机辅助移动云感知的路径规划与任务分配方案 |
CN111750862A (zh) * | 2020-06-11 | 2020-10-09 | 深圳优地科技有限公司 | 基于多区域的机器人路径规划方法、机器人及终端设备 |
WO2021259192A1 (zh) * | 2020-06-22 | 2021-12-30 | 京东科技信息技术有限公司 | 路径规划方法、装置、机器人及存储介质 |
CN113867334A (zh) * | 2021-09-07 | 2021-12-31 | 华侨大学 | 一种移动机械无人驾驶的路径规划方法和系统 |
CN114047760A (zh) * | 2021-11-10 | 2022-02-15 | 北京百度网讯科技有限公司 | 路径规划方法、装置、电子设备及自动驾驶车辆 |
CN114608599A (zh) * | 2022-03-23 | 2022-06-10 | 京东鲲鹏(江苏)科技有限公司 | 导航路径生成方法、装置、电子设备及存储介质 |
CN114964258A (zh) * | 2022-05-18 | 2022-08-30 | 浙江华睿科技股份有限公司 | 一种路径规划方法、装置、电子设备及存储介质 |
-
2023
- 2023-08-10 CN CN202311007105.5A patent/CN116719329B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110736478A (zh) * | 2018-07-20 | 2020-01-31 | 华北电力大学 | 一种无人机辅助移动云感知的路径规划与任务分配方案 |
CN110703725A (zh) * | 2019-09-23 | 2020-01-17 | 北京控制工程研究所 | 一种适用于航天姿态轨道控制系统的路径优化方法 |
CN111750862A (zh) * | 2020-06-11 | 2020-10-09 | 深圳优地科技有限公司 | 基于多区域的机器人路径规划方法、机器人及终端设备 |
WO2021259192A1 (zh) * | 2020-06-22 | 2021-12-30 | 京东科技信息技术有限公司 | 路径规划方法、装置、机器人及存储介质 |
CN113867334A (zh) * | 2021-09-07 | 2021-12-31 | 华侨大学 | 一种移动机械无人驾驶的路径规划方法和系统 |
CN114047760A (zh) * | 2021-11-10 | 2022-02-15 | 北京百度网讯科技有限公司 | 路径规划方法、装置、电子设备及自动驾驶车辆 |
CN114608599A (zh) * | 2022-03-23 | 2022-06-10 | 京东鲲鹏(江苏)科技有限公司 | 导航路径生成方法、装置、电子设备及存储介质 |
CN114964258A (zh) * | 2022-05-18 | 2022-08-30 | 浙江华睿科技股份有限公司 | 一种路径规划方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
王俭;赵鹤鸣;肖金球;: "基于区域优化分割的机器人全覆盖路径规划", 计算机工程与应用, no. 22 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117035602A (zh) * | 2023-10-10 | 2023-11-10 | 成都思越智能装备股份有限公司 | 一种跨搬运系统的物料搬送路径寻优方法及装置 |
CN117035602B (zh) * | 2023-10-10 | 2023-12-15 | 成都思越智能装备股份有限公司 | 一种跨搬运系统的物料搬送路径寻优方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116719329B (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111328404B (zh) | 仓库和供应链协调器 | |
AU2021209188B2 (en) | Methods, systems and apparatus for controlling movement of transporting devices | |
JP7019935B2 (ja) | シェルフアレイ用の入出庫制御方法及び搬送システム | |
JP6757490B2 (ja) | 倉庫における品目のパレットの自律的入れ替え | |
KR102204950B1 (ko) | 맞춤화가능한 목표에 기초한 창고 레이아웃의 최적화 | |
CN110182527B (zh) | 用于货架阵列的出入库控制方法和搬运系统 | |
Vis et al. | Sequencing two cooperating automated stacking cranes in a container terminal | |
CN110182529B (zh) | 用于货架阵列的出入库控制方法和搬运系统 | |
CN110182528B (zh) | 用于货架阵列的出入库控制方法和搬运系统 | |
CN116719329B (zh) | 路径规划方法、系统、设备及存储介质 | |
Ferrara et al. | Fleet sizing of laser guided vehicles and pallet shuttles in automated warehouses | |
JP6911826B2 (ja) | 倉庫設備の制御システム及び制御方法 | |
CN114399247A (zh) | 任务分配方法、电子设备、存储介质及计算机程序产品 | |
CN114897413A (zh) | 仓储调度的方法、装置、电子设备及介质 | |
CN113816049B (zh) | 货箱调度方法、装置和系统 | |
CN112308473A (zh) | 一种移动装置的控制方法和装置 | |
Dabic-Miletic | Benefits and challenges of implementing autonomous technology for sustainable material handling in industrial processes | |
CN114111781A (zh) | 路径规划系统、方法及装置 | |
JP2004292077A (ja) | 運搬作業の計画立案方法 |
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 |