物品处理协调系统和重新定位运输容器的方法与流程

文档序号:20707807发布日期:2020-05-12 16:42阅读:147来源:国知局
物品处理协调系统和重新定位运输容器的方法与流程

本申请要求申请日为2017年10月4日、申请号为1716201.7的英国专利的优先权,该专利的全部内容借引用并入于此。

本发明涉及一种物品处理协调系统,类型为例如协调可重新定位运输容器横穿穿过一个集群的运输容器。本发明还涉及一种重新定位运输容器的方法,类型为例如协调可重新定位运输容器横穿穿过一个集群的运输容器。



背景技术:

一些商业和工业活动要求可以实现大量不同产品的存储和取回的系统。一种在多条产品线上存储和取回货品的系统已知类型涉及将存储箱或集装箱彼此堆垛放置,并使这些堆垛成行排列。装载处理设备从上方获取存储箱,并将其从堆垛移出,无需在各行之间设置过道,使得在给定空间中能够存储更多集装箱。数十年来,成行堆垛的集装箱的处理方法已经众所周知。一些该类系统中,例如,如第2701065号美国专利(bertel)中所述,集装箱的独立堆垛成行排列,来减少与存储这些集装箱相关联的存储量,但如有所需,仍提供获取特定集装箱的手段。可通过提供相对复杂的提升机构来获访问给定集装箱,提升机构可用于堆垛给定集装箱和从堆垛中移出给定集装箱。然而,这种系统的成本在许多情况下不切实际,且其商业化主要用于大型海运集装箱的存储和处理。利用集装箱的独立堆垛和提供一种来取回和存储特定集装箱的机制的理念已经得到进一步发展,例如第0767113号欧洲专利(cimcorp)所述。该文件公开了一种移除复数个堆垛式集装箱的机构,该机构使用矩形管形式的机器人装载处理器,机器人装载处理器下降至集装箱堆垛周围,被配置为能够在堆垛中任何高度抓取集装箱。以这种方式,一次能够从一个堆垛抬升复数个集装箱。可移动管能用于将几个集装箱从一个堆垛顶部移动至另一个堆垛顶部,或者,将集装箱从堆垛移动至外部的位置以及从外部的位置移动到堆垛。单个堆垛中所有集装箱都包含相同的产品时,此类系统特别有用。这类堆垛被称为单产品堆垛。第0767113号欧洲专利描述的系统中,管的高度需要至少与集装箱的最大堆垛一样高,以便单次操作就可提取集装箱的最高堆垛。相应地,当在诸如仓库的封闭空间中使用时,堆垛的最大高度受限于需要将容纳装载处理器的管置于堆垛之上。

第1037828号欧洲专利(autostore)描述了一种系统,该系统内,集装箱堆垛排列在框架结构内。机器人装载处理设备可以被控制地在堆垛最上层表面上的轨道系统上围绕堆垛移动。机器人装载处理设备的其他形式在例如第317366号挪威专利中有进一步描述。

第2520104号英国专利公开(奥卡多创新有限公司)公开了一种装载处理设备,其中每个机器人装载处理器仅覆盖一个网格空间,由此使得装载处理器的密度能更高,从而使给定尺寸的系统的工作量能更高。但装载处理设备可采用任意适用形式。

然而,上述每一已知机器人拣选系统都有一条或多条下述缺点。所有示例中,都需要外围框架结构,该外围框架结构在其最上面部分包括网格,以支撑在存储箱堆垛之上的框架结构上横穿的机器人装载处理器。机器人装载处理器还需要向下在存储箱堆垛中“挖掘”,目的是取回所选择的存储箱,这表示取回存储箱时要有时间和精力花销。于是,上述系统需要机器人装载处理器,这表示系统要有额外支出。

另外,协调该类系统时,机器人装载处理器从起始位置到终点位置的积极进展一般需要机器人装载处理器进行数项不必要、无益和或昂贵的步骤。此外,存储箱卡在存储箱堆垛中时,很难找回卡在存储箱下面的存储箱。类似地,机器人装载处理器出现故障时,无法获取机器人装载处理器下方的存储箱,直到机器人装载处理器恢复并从其在该存储箱的堆垛上方的位置移开。

《协同寻路》(cooperativepathfinding)(西尔弗,d.,2005,《协同寻路》,杨,r.m.,和莱尔德,j.e.(编辑),aiide,117–122,aaai出版社)公开了解决所谓的多智能体路径规划问题的算法,其中在被给予关于其他智能体路线的全部信息之后,智能体需要找到去往不同终点的非冲突路线。该算法适用于实时策略游戏和其他实时环境。该文章提出的算法假设网格代表空间,使用所谓的曼哈顿距离作为计算成本函数的基础。然而,该技术不可扩展,且未考虑速度、加速度和/或运动学,但其确实允许智能体协作。

“移动机器人的最优路线重新规划:大规模并行增量a*算法”(陶等人,机器人和自动化国际大会ieee会议公报,1997,2727-2732页)描述了一种大规模并行增量a*算法,其中基于方块的统一网格来为地形建模,将每一网格方块绘制在网的节点内。从一个方块穿越到相邻方块被建模为有向弧。每一弧具有与其关联的成本。通过首先计算网中每一节点的目标的最优成本,节点网的算法计算了去往目标节点的所有最优路径或路线。接着,将去往目标的所有路径表示为一份详尽的策略,该策略将网中的每一节点映射到一组边缘中,当从节点获取边缘时,该边缘就在最佳路径上。然而,大规模并行a*算法仅考虑到单个移动机器人,没有仔细考虑移动机器人之间的协作。另外,大规模并行a*算法没有考虑速度、加速度或方向改变的不利后果。而且,该文章公开的大规模并行a*算法在运动学建模方面效率不高。



技术实现要素:

根据本发明的第一个方面,本发明提供一种物品处理协调系统,其包括:复数个运输容器,被设置为运输容器的三维集群,复数个运输容器分别可寻址,集群具有自重构物理拓扑;复数个运输容器中的可重新定位运输容器能够可响应指令以在集群内重新定位;处理资源,用于支持运动控制系统;其中运动控制系统用于确定从集群内的可重新定位运输容器的起始位置到集群内的终点位置的路径;运动控制系统使用所确定的路径在集群内执行可重新定位运输容器移动。

运动控制系统可用于处理数个上述复数个运输容器,并分别向其提供指令,以按照所确定的路径来影响可重新定位运输容器在集群内的移动。

数个上述复数个运输容器可包括可重新定位运输容器。

可重新定位运输容器可被设置为在集群内横向移动。

运动控制系统可用于计算起始位置和终点位置之间的路径,以满足预设度量。

度量可能是成本函数。

每个上述复数个运输容器均可独立寻址。复数个运输容器可用于分别地接收运动控制指令。

可在集群内驱动可重新定位运输容器。

路径的确定可包括运动控制系统确定集群的内部物理子拓扑,以支持可重新定位运输容器的移动。

运动控制系统可用于识别一组复数个运输容器,以提供集群的内部物理子拓扑。

运动控制系统可用于确定该组复数个运输容器的移动序列,以提供内部物理子拓扑。

运动控制系统可用于指示该组复数个运输容器,来执行移动序列。

可重新定位运输容器可被设置为相对于集群内的数个复数个运输容器移动。

数个运输容器可被设置为与可重新定位运输容器协作,以促进可重新定位运输容器在集群内的控制性移动。

复数个运输容器可能为复数个运输设备。

复数个运输容器可能为复数个集装箱。

可重新定位运输容器可包括通信设备,用于支持可重新定位运输容器的可寻址性。

复数个运输容器可包括各自的复数个通信设备,用于支持复数个运输容器各自的可寻址性。

系统还包括:复数个运输容器中的另一个可重新定位运输容器,可响应另一条指令以在集群内重新定位;其中运动控制系统可用于确定从集群内的另一个可重新定位运输容器的另一个起始位置到集群内的另一个终点位置的另一条路径;且运动控制系统可使用所确定的另一条路径在集群内执行另一个可重新定位运输容器移动。

系统还包括:拣选站,放置在集群附近,可操作地与集群通信。

系统还包括:倾倒站,放置在集群附近,可操作地与集群通信。

系统还包括:提包装载和/或提包卸载站,放置在集群附近,可操作地与集群通信,以将提包插入可重新定位运输容器和/或将提包从可重新定位运输容器移出。

复数个运输容器可能包括大小不同的运输容器。

运动控制系统可用于将集群在理论上细分为运输容器的区域。

运动控制系统可用于确定起始位置和终点位置是否同在同一个区域内。

运动控制系统可用于选择数个包括起始位置的区域的相邻区域,还用于计算与可重新定位运输容器移动至每一相邻区域分别关联的成本。

每一相邻区域可包括复数个边界位置,区域包括起始位置;运动控制系统可用于确定与经由每个各自的复数个边界位置进入每个相邻区域的可重新定位运输容器分别关联的成本。

运动控制系统可用于响应成本评估而将复数个边界位置之一选择为路径点,并确定从起始位置到路径点的初始路径。

运动控制系统可用于使用所确定的到路径点的初始路径,响应确定了相邻集群准备好接收可重新定位运输容器,以执行可重新定位运输容器在集群内的移动。

运动控制系统可被设为就集群的至少部分和对应于具有预设深度的状态树,确定复数个状态序列。

运动控制系统可用于分析复数个状态序列,并计算复数个状态序列的每一状态序列的成本。

运动控制系统可用于分别分析每一状态序列的成本,并选择由成本函数定义的可接受的便捷的状态序列。

运动控制系统可应用启发式算法来计算成本。

运动控制系统可运用强化学习技术来确定可接受的便捷的状态序列。

运动控制系统可运用监督学习技术来计算成本。

根据本发明的第二个方面,本发明提供一种仓库,其包括上文就本发明第一方面所阐述的物品处理协调系统。

根据本发明的第三个方面,本发明提供一种交通工具,其包括上文就本发明第一方面所阐述的物品处理协调系统。

根据本发明的第四个方面,本发明提供一种零重力或低重力环境,其包括上文就本发明第一方面所阐述的物品处理协调系统。

根据本发明的第五个方面,本发明提供一种在复数个运输容器内重新定位运输容器的方法,复数个运输容器被设置为运输容器三维集群,复数个运输容器分别可寻址,集群具有自重构的物理拓扑,方法包括:运动控制系统确定从集群内的可重新定位运输容器的起始位置到集群内的终点位置的路径;运动控制系统使用所确定的路径在集群内执行可重新定位运输容器移动。

根据本发明的第六个方面,本发明提供一种计算机程序要素,其包括计算机程序代码工具,来使计算机执行上文就本发明第五方面所阐述的方法。

根据本发明的第七个方面,本发明提供一种地面上的运输系统,其包括:位于起始位置的物品处理协调系统和位于终点位置的接收系统,物品处理协调系统包括:复数个运输容器,被设置为运输容器的三维集群,复数个运输容器分别可寻址,集群具有自重构物理拓扑;复数个运输容器中的可重新定位运输容器可响应指令以在集群内重新定位;处理资源,用于支持运动控制系统;通道网络,用于运输可重新定位运输容器,通道网络具有位于起始位置的第一端口,以提供进入物品处理协调系统的机会,通道网络还具有位于终点位置的第二端口,以提供进入接收系统的机会;其中运动控制系统经由第一端口将可重新定位运输容器传送至通道网络。

通道网络可包括将可重新定位运输容器传送至终点位置的移动系统。

可重新定位运输容器可被放置在集群内的内部起始位置;运动控制系统可用于确定从内部起始位置到第一端口附近的内部终点位置的路径;运动控制系统可用于使用所确定的路径在集群内执行可重新定位运输容器移动。

集群可能在地面上。接收系统可能在地面上。

集群可被设置为经由第一端口从通道网络接收可重新定位运输容器。

接收系统可被设置为将可重新定位运输容器引入通道网络中。

根据本发明的第八个方面,本发明提供了一种配置物品处理协调系统的方法,包括:复数个逻辑上可重新定位要素,被设置为模拟复数个逻辑运输容器的三维集群,三维集群的密度由复数个逻辑运输容器中的数个空位置确定,集群具有可重构的拓扑;运动控制系统包括路线规划智能体,方法包括:路线规划智能体确定复数个逻辑上可重新定位要素中的一个逻辑上可重新定位要素的重新定位路径,以将逻辑上可重新定位要素从集群内的起始位置重新定位到集群内的终点位置;以及按照强化学习技术训练路线规划智能体。

训练路线规划智能体可包括:选择集群的所需数个逻辑运输容器;以及选择集群的所需密度。

方法还可包括:执行包括输入集群结构和输入密度的训练模拟。

训练模拟的集群的密度可设为最大密度。最大密度下,空位置的数目可能为零。

方法还可包括:随机选择数个要从集群移出的逻辑运输容器,以实现集群的输入密度。

训练还可包括:随机选择输入集群结构中的数个逻辑运输容器,以将数个随机终点分别分配至所选择的数个逻辑运输容器。

智能体可生成复数个逻辑上可重新定位要素中的数个逻辑上可重新定位要素的重新定位序列,以尝试将随机选择的数个逻辑运输容器重新定位到分别分配的数个随机终点。

方法可包括使用生成的重新定位序列、通过强化学习,来训练智能体。

方法还可包括:智能体生成包括该重新定位序列的复数个重新定位序列。

方法可包括使用生成的复数个重新定位序列、通过强化学习,来训练智能体。

方法还可包括:提供卷积神经网络,并将强化学习技术应用至卷积神经网络。

生成重新定位序列还可包括:选择数个逻辑上可重新定位要素中的一个逻辑上可重新定位要素,并确定所选择的逻辑上可重新定位要素的行动。

生成重新定位序列还可包括:确定数个逻辑上可重新定位要素的多项行动。

数个逻辑上可重新定位要素可能是集群的数个可重新定位的空位置。

训练路线规划智能体还可包括:选择集群的初始结构,初始结构包括复数个逻辑运输容器中逻辑运输容器的预设初始数目,预设初始数目小于逻辑运输容器的期望数目,初始结构还包括集群的初始密度;输入集群结构可包括逻辑运输容器的预设初始数目,且输入密度可能是集群的初始密度。

方法还可包括:修改输入集群结构和输入密度,对修改的输入集群结构和输入密度进行训练模拟。

方法还可包括:重复修改输入集群结构和输入密度,直至输入集群结构包括逻辑运输容器的期望数目和集群的期望密度。

根据本发明的第九个方面,本发明提供一种物品处理协调系统,其包括:复数个运输容器,被设置为运输容器的三维集群,复数个运输容器分别可寻址,集群具有自重构物理拓扑;复数个运输容器中的可重新定位运输容器可响应指令以在集群内重新定位;处理资源,用于支持前文就本发明第八个方面所阐述的运动控制系统;其中运动控制系统的智能体用于确定从集群内的可重新定位运输容器的起始位置到集群内的终点位置的路径;运动控制系统使用所确定的路径在集群内执行可重新定位运输容器移动。

根据本发明的第十个方面,本发明提供一种物品处理协调系统,其包括:复数个运输容器,被设置为运输容器的三维集群,复数个运输容器分别可寻址,集群具有自重构物理拓扑;复数个运输容器中的可重新定位运输容器可响应指令以在集群内重新定位;处理资源,用于支持运动控制系统;其中运动控制系统用于在使用中提供集群中运输容器的环流,环流包括流动路径;运动控制系统用于确定从集群内的可重新定位运输容器的起始位置到集群内的终点位置的路径,所确定的路径包括运输容器的环流的流动路径的至少部分;运动控制系统使用所确定的路径在集群内执行可重新定位运输容器移动。

发明效果

因此可能提供一种可扩展的系统和方法以支持包括大量运输容器的集群。避免了对在框架结构上的网格上横穿的机器人装载处理器的需要,也避免了与之关联的时间损失和支出。事实上,该系统的速度和效率高于现有系统。另外,该系统和方法减轻了运输容器被卡住情况下的获取麻烦。另外,也避免了装载处理设备之间的碰撞,系统和方法支持出错误的运输容器从集群中逐出。物品处理系统的配置方法还提供训练运动控制系统的可扩展方法。强化学习技术与简化数据结构和在集群内重新定位运输容器的问题的简化代表方式结合使用,使得运动控制系统能够传输从涉及相对少量运输容器的简单路线规划问题到涉及大量运输容器的复杂路线规划问题中获取的训练。另外,运用的卷积神经网络中的卷积层中的参数数量独立于输入张量的大小。此外,通过将卷积不变性用于移动,能将正在解决的重新定位问题的小转变构建入智能体内,借此使就集群的第一部分训练的卷积能够应用于集群的第二部分,而无需集群的第二部分具有与集群的第一部分相同的结构和终点元组。

附图说明

下文将参照附图陈述本发明至少一个实施方式,仅作示例。

图1为第一状态下的物品处理协调系统的集群示意图,构成本发明一个实施方式;

图2为一个物品处理协调系统的示意图,构成本发明一个实施方式;

图3为图2中物品处理系统支持的功能模块的示意图,构成本发明另一个实施方式;

图4为图3中容器控制系统的详细示意图,构成本发明又一个实施方式;

图5为第二状态下的图1中集群的示意图;

图6为流程图,图示了在图1中集群内重新定位可重新定位运输容器的方法的第一部分,构成本发明再一个实施方式;

图7为流程图,图示了重新定位可重新定位运输容器的方法的第二部分;

图8为流程图,图示了重新定位可重新定位运输容器的方法的第三部分;

图9为示意图,图示了集群的区域化的二维表达;

图10为流程图,图示了物品处理协调系统的配置方法概要;

图11为配置用于图10中方法的训练集群的流程图;以及

图12为选择用于图10中方法的重新定位行动的流程图;以及

图13为一种分送系统的示意图,构成本发明另外一个实施方式。

具体实施方式

全部下文描述中,相同的附图标记将用于标示相似的部件。

参照图1,在物品处理协调系统中,运输容器的集群100包括复数个运输容器102。该示例中,复数个运输容器102为复数个运输设备,如集装箱。这方面,复数个运输容器102中每一个运输容器都是可重新定位的,即能够横向和纵向移动,即,在三个方向,例如x方向、y方向和z方向。重新定位给定运输容器的驱动原理是借助在集群内提供的物理平移。可以用任意合适的方式提供该移动,例如,机械、机电或磁性技术,或其任意的合适组合,例如第gb1716204.1号、申请日为2017年10月4日的共同未决的英国专利申请(奥卡多创新有限公司,参考号000113gb)所阐述,其内容借引用全文合并于此。在该交叉引用文献中,运输容器102指运输设备,设想到该等术语可能互换使用。

集群100为三维集群,该示例中具有统一的形状。但技术人员应理解,取决于实施偏好,集群能呈现出任何合适的形状。附加地或可选择地,应理解,运输容器102能够用于存放不同的商品。事实上,每一运输容器100能够在运输容器102的单行或列中含有不同商品。另外,应理解,存储在集群中时,存储容器102可能是空的;或可能含有如包裹的货品,或供未来递送的其他货品。

包括复数个运输容器102的集群100包括空间,或能在其中提供空间,来允许数个运输容器102的重组,目的是允许一个或复数个运输容器102能够从各自在集群100内的起始位置重新定位到各自在集群100内的终点位置。这方面,集群100的复数个运输容器102是可分别寻址的,例如可独立地寻址,使得集群具有自重构物理拓扑。应理解,每一运输容器102的可寻址性与运输容器102的物理获取是有区别的。可寻址性意指具有寻址方案,寻址方案可用于向单独的运输容器102或成组的运输容器102发送一条或多条例如运动控制指令的指令,以实现一个或复数个运输容器102的平移,重新定位一个或复数个运输容器102。

为了协调存储容器102在网格上的平移,提供了合适地配置的计算设备以及关联通信网络、设备、软件和固件,来提供实现本发明所述一个或复数个实施方式的平台。

转向图2,计算设备200包括,例如处理资源,如可操作地结合至存储单元204和记忆单元206的中央处理器202,存储单元204如一个或复数个硬盘驱动器或固态驱动器,记忆单元206包括例如数字存储器和随机存取存储器(ram)。cpu202支持操作系统208和应用程序210,并处理数据212。根据需要,操作系统208、应用程序210和数据212在该示例中存储在存储单元204中,加载至记忆单元206中。计算设备200在该示例中还包括图形处理器(gpu)214,图形处理器(gpu)214可操作地结合至cpu202和记忆单元206,以从cpu202卸载例如图像处理和/或机器学习、训练和/或介入的精深加工计算,并与cpu202并行地运行这些计算。操作员216能够使用显示设备218与计算设备200交互,显示设备218经由视频接口220可操作地结合至总线222,总线222可操作地结合至cpu202、存储单元204和记忆单元206。操作员216还可经由各种输入/输出设备(如键盘224、鼠标226)和可拆卸媒体连接器(如通用串行总线端口228),经由输入/输出(i/o)接口230结合至总线222而与计算设备200交互。计算设备200能经由网络接口234形成网络的部分,使计算设备200能够与其他合适地配置的数据处理系统(未示出)通信。一种或多种不同类型的传感器236能用于接收来自各种来源的输入。

参照图3,下面将描述全自动/半自动商品存储和取回系统300的高级示例性实施,系统300构成处理资源。但技术人员应理解,系统300的各种实施所运用的部件可多于或少于本发明描述的部件。

系统300包含运动控制系统302、维护/监控系统304、基站控制器306、一个或复数个基站308a和308b、一个或复数个运输容器102a、102b和102c。虽然上文仅描述了两个基站308a和308b以及三个运输容器102a、102b和102c,应理解,在系统的其他实施方式中,系统300能包含更复数个运输容器102和基站。但在一些示例中,应理解,可能用其他通信系统替代或补充基于无线电频率(rf)的通信系统,目的是促进系统300的扩展,例如光通信系统。

该示例中,系统300还包含一个或复数个仓库管理系统(wms)312、订单管理系统314和一个或复数个信息管理系统316,三者分别可操作地结合至运动控制系统302。仓库管理系统312存储信息,例如订单所需货品、仓库中的库存单位(sku#)、预计/预测订单、订单中缺少的货品、订单将何时装载到运输车、货品有效期限、什么货品位于哪个运输容器和/或货品是否易碎或体积庞大。

运动控制系统302在该示例中被配置为控制运输容器102的导航/路线规划,包括但不限于,从一个位置移动至另一个位置、防撞、移动路径优化和/或控制将要执行的活动。该示例中,运动控制系统302是由一个或复数个服务器来实现的,每一服务器含有一个或复数个处理器,处理器的配置基于存储在一个或复数个非暂时计算机可读存储介质上的指令。运动控制系统302被配置为向一个或复数个运输容器102发送控制消息、从一个或复数个运输容器接收一条或多条更新、以及使用实时或近实时协议与一个或复数个运输容器通信。运动控制系统302从一个或复数个基站308a和308b接收提示运输容器位置和可用性的信息。运动控制系统302被配置追踪可用运输容器的数目、一个或复数个运输容器的状态、一个或复数个运输容器的位置和/或其当前指令集。运动控制系统302在该示例中被配置为,预期到未来移动,处理和/或发送控制消息至一个或复数个运输容器,这样可能会减轻处理器负载,还会主动地就通信链路管理流量负载。考虑到运动控制系统302在确定最优通路、计算运输容器的最优位置、和/或确定预订和/或许可而使用了复杂的算法,这种实施可能是有利的。

维护/监控系统(mms)304在该示例中被配置为提供监控功能,包括从一个或复数个运输容器102或一个或复数个基站308a、308b接收警报,建立连接来查询运输容器102。维护/监控系统304还可包含用于配制监控功能的界面(未示出)。维护/监控系统304与运动控制系统302交互,来提示何时应召回某些运输容器102。

基站控制器306存储路线总图信息,来绘制运输容器、基站和网格。一些示例中,安放有集群100的每一环境都设有一个基站控制器206,环境例如为仓库;但在其他示例中,可运用复数个基站控制器。基站控制器306设计为提供高可用性。基站控制器306被配置为管理一个或复数个基站308a和308b的动态频率选择和频率分配。

基站308a和308b在该示例中被组织为一批基站,接着可将这一批基站配置为运行中、待机或进行系统监控。可经过多种通信装置的路线发送消息至运输容器/从运输容器发送消息。通信装置可能是任何合适的通信装置。一些示例中,通信装置能支持射频链路,如属于802.11系列的无线标准的链路。基站308a和308b在该示例中包含处理单元318a、318b,数字信号处理器320a、320b,以及无线电322a、322b。

一个或复数个运输容器102a、102b、102c被配置为围绕集群100移动和执行操作。操作在该示例中包括将运输容器从集群100内的一个位置移动至另一个位置。一个或复数个运输容器102a、102b和102c被指派与一个或复数个基站308a和308b通信。一个或复数个运输容器102a、102b、102c不一定都是相同类型的运输容器。这一方面,系统300能包含不同的机器人设备,例如,具有不同形状、设计和用途的运输容器,例如,运输容器可在尺寸和所占体积上有所差异。

该示例中,运输容器102a、102b、102c分别具有无线电324a、324b、324c,数字信号处理器326a、326b、326c,处理器328a、328b、328c,实时控制器330a、330b、330c,电池332a、332b、332c,以及发动机、磁铁、传感器和/或连接器334a、334b、334c。

参照图4,运动控制系统302被配置为评估如何改进工作分配、产品移动和产品放置。运动控制系统302被配置为,依照例如各种业务规则和/或优先级的应用,安排特定类型的移动何时应发生以及其发生顺序。为了做出关于例如产品放置的决定,运动控制系统302被配置为确定出入因素。例如,运动控制系统302估计产品供应的递送位置,以及估计的产品出库递送。运动控制系统302做出决定,发出信号,供自动系统执行,和/或能高效地向人(拣选员、装载员等)分配任务。

运动控制系统302确定一个或复数个运输容器102中哪一个参与订单完成或任何其他目的。一个或复数个运输容器的行动可能通常需要运输容器102横穿网格,和/或进行行动,如支持邻近运输容器和/或移动给定运输容器。运动控制系统302被配置为分析集群100中的各种通路,来确定在给定一组约束和条件下,相对其他通路来说潜在优先的一条或多条路径。一次、周期性地和/或动态地向运输容器102提供这些优先通路,来控制其在集群100各处的移动和/或其在集群100内承担的角色。

路径具有优先性的原因可能有多条,包括但不限于:更短的行进距离,装载处理设备的更高预计平均速度,遇到交通(即,拥堵)的概率更低,所需总时间更短,碰撞概率更低,用能更少,容易转换至替换通路,避免障碍的能力,障碍例如故障运输容器、不平路径、和/或正在维修的部分路径。

运动控制系统302使用各种算法来认定、设计和/或控制与其连接的各种运输容器的移动。一些示例中,运动控制系统302由一个或复数个服务器来实现的,每一服务器含有一个或复数个处理器,处理器被配置为执行存储在一个或复数个非暂时计算机可读介质上的一组或多组指令。计算机实施的潜在优势包括但不限于:可扩展性、处理大量运算和计算复杂度的能力、提升的反应速度、快速做出决定的能力、进行复杂统计分析的能力、进行机器学习的能力等等。稍后将在下文中详细的讨论这些用于协调运输容器横穿于集群100各处的算法。

运动控制系统302可能是实时或近实时控制系统(控制各种单元的行动,包括运输容器和可选择的相关的其他单元(例如传送员、拣选员和/或人)的行动)。运动控制系统302包含复数个功能模块。复数个功能模块包括控制界面402、移动优化模块404、产品放置优化模块406、容器物理模型模块408、业务规则模块410、许可模块412、预订模块414、约束检查器模块415、命令生成和调度器模块416、容器通信模块418、主管经理模块420和警报/通知模块422。这些模块402、404、406、408、410、412、414、416、418、420、422以多种方式实施;一些示例中,它们作为应用实施,应用作为指令存储在一个或复数个计算机可读介质上,供一个或复数个处理器执行。

运动控制系统302提供运输容器102的工作分配和/或移动的实时或近实时控制。运输容器102的工作分配和移动能够被与仓库内活动相关的行动促成,活动如履行订单、重新分配运输容器或可选择地布置在其内的集装箱置于更容易获取的位置、预计的调度序列、维护操作和/或未来订单预期。控制界面402为各种外部系统提供界面,用以向运动控制系统302内提供方向和信息。在一些示例中,控制界面402能够为人类使用者提供界面,和/或提供与各种机器和系统连接的接口。

控制界面402能与各种外部数据库交互,外部数据库包括但不限于各种仓库管理系统和订单管理系统。控制界面402还能接收系统中的各种机器人设备的信息,例如运输容器102故障、运输容器102需要充电、运输设备102正在前往目的地的途中、运输容器102遇到意外障碍。

如上文所述,控制界面402还从仓库管理系统312接收并向仓库管理系统312传输关于运输容器102的控制和移动的信息。这种信息可以包括但不限于:网格位置和大小,子网格的建立,库存和订单的主记录和/或调度序列(例如订单需要何时发出)。随着行动的执行,例如不论其中有无集装箱的运输容器被带到工作站,完成工作站操作和/或装满递送提包,控制界面402向仓库管理系统312提供更新。一些示例中,仓库管理系统312和控制界面402之间有一个确认过程。

控制界面402还能接收命令,例如在出现故障或紧急情况时,停止特定运输容器102、一组运输容器102或所有运输容器的运行。

移动优化模块404能被配置为通过应用各种算法,确定从一个位置到另一个位置的潜在优势的路线,来优化运输容器102的移动。潜在优势可以包括更短的行进距离,遇到拥堵的可能性更低,所需时间更短,能耗低,与其他装载处理设备的移动相协调,绕障碍(如运输容器故障或轨道中的故障区域)规划路线,或与各种工作站运行相协调。

移动优化模块404被配置为提供工作分配、规划和安排功能,包括开发一组任务,然后选择哪拣个选站或运输容器来执行哪个任务。为了确定一组潜在优势位置来放置物品,移动优化模块404在该示例中被配置为与产品放置优化模块406交互。优化移动时,移动优化模块404被配置为考虑关于移动和操作二者性能这两方面中所涉及的各种因素,例如到达特定位置的预计所需时间、运输容器102在集群100中的深度、从集群100取出运输容器102需要多长时间、和/或将在上的运输容器102移动至其他位置必需的各种操作。

移动优化模块404还从容器物理模型模块408接收一组输入,容器物理模型模块408能通过对运输容器102移动施加的一组约束,约束视各种因素而定,例如由于运输容器102正在载运易碎物品,所以运输容器102只能以最高速度的50%移动。移动优化模块404协调运输容器102(不论其中有无集装箱)进入集群100、从集群100移除和在集群100内的移动。

一些示例中,在运输容器行程的过程中,移动优化模块404动态地重新计算优先路径,当条件和约束随时间推移发生改变时,潜在地确定一组更新路径。

为了确定提议通路的导航是否会遇到涉及其他运输容器102的许可和预订的问题,以及确定能减少遇到这些问题的可能性的通路,移动优化模块404还与许可模块312和预订模块314交互。

一些示例中,许可模块412、预订模块414和移动优化模块404一起用作路径冲突解决程序,其中移动优化模块404开发路径,然后使用预订模块414预订该路径,最后在运输容器在潜在冲突路径中时许可模块412提供一种即时(just-in-time)方法来确定优先级。

容器物理模型模块408被配置为存储一组变量,这一组变量被设计为建模与运输容器相关的特定物理特性。例如,模型能够提示物理特征,如运输容器102的长度、重量、高度和宽度,运输容器102的最大载运能力,运输容器的旋转速度,运输容器102的最大速度和加速度,运输容器102在一定条件下(例如,一定数量的电池寿命)执行某些行动的能力。容器物理模块308连接业务规则模块410以确定运输容器102的移动的某些特征的限度,包括运输容器102的最大速度、最大加速度和最大旋转速度。例如,如果运输容器102正在载运数盒鸡蛋,由于鸡蛋遇到物理上的作用力易损易碎,所以就要求运输容器102仅以其最大加速度/减速度的25%加速/减速。基于仓库、运输容器102和通信系统的特定状况,业务规则模块410开发和应用一组业务规则。例如,业务规则模块410能为某些类别的货品提供业务规则,对容器物理模型模块408实施了各种限制,以潜在地减少运送过程中造成的商品损失。可以实施业务规则的示例包括,例如酸或漂白剂的高风险产品、带有雾化器的集装箱、含有易燃物的集装箱等等。可采用与其他运输容器不同的方式处理空运输容器。

许可模块412被配置为存储许可,并向各种运输容器102提供许可。可评估许可系统,来确定运输容器102横穿的路径是否已经畅通。能够将许可模块412作为被动防撞系统,其中运输容器102仅被分配不影响其性能的前提下尽可能最小的工作量。向运输容器102提供新指令后,许可模块412基于例如网格尺寸、网格位置、规划生成的移动命令、移动命令的取消(如控制停止的情况下生成)、运输容器102的当前位置和速度、运输容器102的制动性能,以及运输容器102经许可到访的地点,检查使其不与另一个运输容器102相撞。

许可模块412被配置为以“即时(justintime)”的方式发出许可,并被用于向运输容器102授予沿其规划路径继续移动的许可。

许可模块412例如使用本领域已知策略(所以本发明将不再赘述)向控制界面402提供将会有什么路径许可,以及何时发出许可的通知。

预订模块414负责预订集群100内或其周围的空间。

一些示例中,预订模块414用于提前预订路线,并确保运输容器102不计划采取冲突路径,尤其是当同时发生的大量运输容器102行动和任务的情况下。移动优化模块404包含预订模块414,以为运输容器102建立未来足够长时间的路径预订,以实现提前计划。

命令生成和调度器模块416生成将被传输至一个或复数个运输容器102的一组指令。这些指令可包括,例如要求给定运输容器102从位置a移动至位置b,以便正确定位,目的是支持另一个运输容器的移动穿过集群100的部分路径,如为了拣选放置在集群100附近的货品,而去往例如工作站,或如为了将提包插入运输容器或从运输容器移除提包,而去往邻近集群100放置所谓的倾倒站(decantstation)或提包装卸站。这些指令能够以近实时/实时的配置、即时(just-in-time)配置被传输,和/或被提前提供,以允许规划/安排的路线。此外,在一些实施方式中,命令生成和调度器模块416协调预订和许可,以帮助运输容器102迅速地导航穿过设施。

命令生成和调度器模块416被配置为提供命令集,命令集包括单条路径,或一条或多条路径,和/或将要在各种位置执行的数个操作。命令生成和调度器模块416向容器通信模块418提供这些命令以提供至单独的运输容器102。在一些示例中,命令生成和调度器模块416为特定的运输容器102预先填写指令;然后这些指令可通过容器通信模块418被提供至运输容器102,供在未来某个时间执行。

容器通信模块418被配置为经由一个或复数个基站和基站控制器306与运输容器102来回传送通信信息。如上文所述,一些示例中,容器通信模块418可以通过使用无线信号来通信。还如上文所述,这些指令集不一定是即时产生的;指令集可能被发送用于协调未来移动。容器通信模块418从各种运输容器102接收状态报告。容器通信模块418可以采用多种方法实现,如使用同步、异步、轮询、推(push)或拉(pull)方法。此外,各种实施例可以不包括使用通信“握手”。

警报通知模块422被配置为,出现潜在问题时,或基于预设业务规则(例如由于冲突,预设的许可数目被取消),向控制界面402提供警报或通知。

下文将参照例如图1的单个运输容器在简化集群结构中横穿的问题,来描述系统的运行。应该理解的是,下文所述的简化示例能扩展到包括大量运输容器102,比下文所述更大的集群,在x、y和z多方向上行进,以及实际上具有不同形状的集群。

运行中,参照图1和图5,按照上述任何合适的标准来选择位于集群100内起始位置的运输容器104,标准例如,需要找回含有鸡蛋的运输容器,将其装到提包中交付给顾客,还要求将其重新定位到终点位置106。

该示例中,参照图6,集群100被理论上细分为区域,以便于扩展集群100的大小。第一个示例是运输容器104要求从起始位置移动至终点位置106,其中起始位置和终点位置都在同一区域内。本发明下文有所描述的第二个示例,考虑了开始位置和终点位置分别在集群的不同的区域中的情况,因此将在由运动控制系统302针对集群100的不同区域独立执行图6的处理的背景下,描述第二个示例。

因此,对于起始位置和终点位置106所在的集群100的区域,运动控制系统302执行下列处理。首先,运动控制系统302从集群100的区域内的每一运输容器102接收(步骤600)初始状态数据,以了解运输容器102在其集群100内的初始位置。随后,初始化之后,运动控制系统302从(该示例中是)控制界面402接收(步骤602)一个或复数个目标,例如目标为将运输容器104从起始位置重新定位到终点位置106。目标还可能是请求将集群100内的给定位置留空,或使运输容器占用集群100内的给定位置。

运动控制系统302就区域确定起始位置和终点位置106是否位于区域中,当前示例中,起始位置和终点位置106明显在区域内。若起始位置和/或终点没在区域中,运动控制系统302执行算法,试图推进运输容器104的重新定位(步骤606)。但若发现起始位置和终点位置都在区域中,运动控制系统302执行搜索(步骤608),以确定能够实现将运输容器从起始位置重新定位到终点位置的可能的状态序列,下文将对此进行详细描述。

参照图7,对于含有起始位置和终点位置的区域,运动控制系统302确定将运输容器从起始位置重新定位到终点位置106所需要的数个变化状态序列。这方面,运动控制系统302在该示例中限定了搜索树的深度,也就是状态变化的每个不同路径在序列中的状态数目。这方面,从树的顶部到树最下面部分,每一状态序列构成状态的排列。同样地,该示例中,运动控制系统302将计数器初始化(步骤700)为统一值,并用状态变化的最大深度来检查该统一值。运动控制系统接着确定(步骤702)第一组潜在初始步骤。然后,运动控制系统302使用约束检查器模块415,根据集群100的物理约束来确定所确定的状态中哪一个可行(步骤704),物理约束例如集群的形状和如本发明所述的运输容器参数,即没有任何阻碍(如无法支持运输容器104的运动)的状态。一些示例中,为了评估可行性而运用的其他参数包括,例如每一堆垛中运输容器的数目、每一堆垛中未受支撑的运输容器的数目、运输容器中的有效载荷重量、每一运输容器内的重量分布、数个运输容器中的重量分布、运输容器所承担的有效载荷种类,和/或集群100内支撑运输容器的方式,例如,一种类型悬架,如来自单个的相邻运输容器。

此后,运动控制系统302增量(步骤706)计数器,然后检查(步骤708)是否已经达到状态序列树的最大深度。在本示例中,还没达到迭代的最大次数,所以在第一组初始状态经过约束检查器过滤以移除不可行状态后,对第一组初始状态中的剩余状态重复该过程。这方面,运动控制系统302从第一组剩余状态中的每一个开始,确定(步骤704)能够实现的第二组可能的后续状态。再次运用(步骤704)约束检查器,目的是只认定第二组后续状态中的可行状态。然后再次增量(步骤706)计数器,检查计数器来确定(步骤708)是否已经达到迭代的最大次数。

重复上述过程,直至达到迭代的最大次数。该示例中,通过以上步骤,执行如“深度优先迭代深化:最优可容许树搜索”(re科尔夫,人工智能,第27卷,no.1,1985,97-109页)和“寻找24个谜题的最优解”(科尔夫等人,aaai会议公报1996,1202-1207页)中所述的迭代深化a*变体算法,获取搜索树。但当起始位置的当前位置与终点位置106足够靠近时,了实施a*搜索,而不实施迭代深化a*变体算法,目的是减少计算量,以及在一些示例中产生质量上提升(例如与其关联的成本更低)的状态序列的排列。

一旦以计算了搜索树,运动控制系统302就分析(步骤710)状态序列树的树的分支,从所有状态序列中选择由成本函数定义的可接受的便捷的状态序列,由此满足预设度量。这方面,运动控制系统302在该示例中实施对每一状态排列的整体评估。忽略深度,每一状态的每个排列可包括穿过集群100的一个或复数个直线型或l型遍历。对于每个遍历状态,在给定时间内对于集群100的给定整数位置,运输容器104有效的位于运输容器堆垛中。运动控制系统302针对正在分析的状态,评估运输容器104所在的堆垛。例如,在运输容器104堆垛深处的运动控制系统100确定在将不被支撑的运输容器104之上的运输容器的数目。另外,或者,在评估状态的成本时,可以考虑其他因素。例如,有效载荷的财务价值、堆垛中运输容器的数目或堆垛中该运输容器之上的运输容器的数目、一个或复数个运输容器的有效载荷重量、运输容器内的重量分布、运输容器所承担的有效载荷种类,和/或在集群100内支持运输容器的方式,例如一种类型的悬架,如来自单个的相邻运输容器。可通过求和,或例如运用一个使用成本计算参数的成本函数,单独或组合地使用成本计算参数。但技术人员应理解,能够以其他方式参数化成本函数,目的是确定按照状态序列的给定排列来重新定位运输容器104的成本。

一旦确定了每一状态排列的成本和选择了更可取的状态序列,运动控制系统302实施步骤序列,运输容器104相对集群100内的其他运输容器从起始位置移动到终点位置106。这方面,一个或复数个其他运输容器能够与可重新定位的运输容器104协作,以便在集群100内控制移动可重新定位运输容器104。该过程中,预订模块414追踪所选择状态序列的序列中的状态。

另一个实施方式中,为了评估状态(步骤710,图7),可运用监督学习技术。这方面,网络结构被设置为用于确定与确定的状态序列排列关联的成本,确定的状态序列排列由例如上文所述的局部搜索算法生成。使用分别与已知路径关联的成本数据,使用任何适当的搜索和成本计算技术,来“训练”网络结构,从而优化网络结构的参数,以确保网络确定的成本与已知成本数据基本上接近。此后,可运用训练的网络,以分别计算与不同的状态序列排列关联的成本。

在第二个示例中,如上文所述,起始位置和终点位置都位于集群100的不同区域中。

转到图8和图9,该示例中,运输容器104的起始位置110在第一区域112中,终点位置106在集群100的第二区域114中。为了推进运输容器104的重新定位,运动控制系统302尝试在区域之间界限处识别一个路径点位置。应理解,与经由其他区域的更间接路线相比,从路线规划角度来说,将集群100中最明显区域选择为运输容器104重新定位到第二区域114内的终点位置106途中要经过的区域,其便捷程度不一定是可接受的。因此,运动控制系统302考虑经由与某个区域相邻的最多预设数目的区域,本示例中为包含起始位置110的最多4个相邻区域和/或第一区域112,来重新定位运输容器104。

所以,该示例中,运动控制系统302使用针对第一区域112执行的独立线程接收的目标(一个或复数个),询问(步骤800)与第一区域112相邻的最多4个区域,第一区域112包含起始位置。在这方面,分析进入相邻区域的在不同边界位置(构成候选边界位置)处选择的相邻区域的各自区域成本,区域成本是根据对每一相邻区域的局部评估确定的,不考虑集群100中的其他区域、区域的状态、已经预订的区域的位置和目标(一个或复数个)的达成水平。

针对每一候选边界位置,第一区域112的线程采用与上文图7描述相似的方式,执行局部搜索(步骤608),以确定(步骤804)从起始位置到候选边界位置的路径以及与其关联的局部成本。

此后,与运动控制系统302支持的第一区域112相应的线程结合局部成本和区域成本(在本示例中是),以便通过充当路径点的每一候选边界位置得出重新定位运输容器104的总成本。该示例中,选择了最低成本,向与所选候选边界位置120关联的相邻区域118通知该选择。接着,运动控制系统302等待(步骤804)确认:当运输容器104到达边界位置时,与所选候选边界位置120关联的相邻区域118已准备好接收或将准备好接收运输容器104。一旦从相邻区域118接收到确认,运动控制系统302就实施(步骤810)从起始位置到选择的边界路径点位置120的重新定位,并将到达终点位置106的责任移交至与选择的相邻区域118关联的线程,选择的相邻区域118将接收的目标(一个或复数个)作为新目标(一个或复数个)对待,并按照图6的方法论处理目标(一个或复数个)。作为实现目标(一个或复数个)过程中的一部分,可要求与所选区域118关联的线程在所选路径点位置120的附近安排位置,以便运输容器104进入所选区域118中。

技术人员应理解,运输容器104的重新定位可要求涉及其他运输容器,目的是促进运输容器104到终点位置106的移动,方法是例如,一组运输容器在集群100内提供内部物理子拓扑。同样地,通常有必要执行复数个运输容器的移动以提供子拓扑,从而实现将运输容器104从起始位置110重新定位到终点位置106的目标。一些示例中,优化目标主体运输容器104之外的复数个运输容器104的移动是可取的,其实现了数个复数个运输容器的基本同时移动。这方面,可运用并发性控制方法论来最小化实现运输容器104的移动所需的状态变化数目。这种方式能减少搜索树的所谓的“扇出”,类型例如为就图7设计的类型,并提供计算效率。

一些示例中,可通过在发现状态序列实现了低于一个或复数个阈值成本的要求目标(一个或复数个)的情况下,提前终止搜索算法,来取得效率。

此外,或者,上述示例可轻松扩展为复数个运输容器在集群100中从各自的起始位置横穿到各自的终点位置而设的指令。这种示例中,运动控制系统302为集群100内的另一个运输容器确定至少另外一条路径,以供使用确定的至少另外一条路径执行另一个运输容器的后续移动。

还应理解,不一定仅赋予运输容器单个任务,所以完成一条路线后,给定运输容器可承担从当前终点到达新终点的任务。

在另一个实施例中,状态序列的评估和选择能够使用强化学习技术来实现。在这种实施中,强化学习系统包括价值网络、策略网络、推出(rollout)策略(或,能运用这些策略的一个子集的组合,其中可以使用价值网络、策略网络、rollout策略中的零个或复数个),与集群100和/或集群100的区域的当前状态相关的状态数据,以及目标数据。另外,强化学习系统包含所谓的rollout策略和上文描述种类的现存启发式状态序列评估模型。该示例中,rollout策略是通过一种监督学习技术获得的,该技术使用启发式状态序列评估模型从当前状态选择后续状态,以生成训练数据供监督学习技术使用。

运用了合适的强化学习技术,例如在“通过深度神经网络和树搜索来掌握围棋游戏”(西尔弗等人,自然,第529卷,2016年1月28日,484-489页)中的描述,目的是训练强化学习系统和开发策略网络和价值网络。借此,强化学习系统能识别用于重新定位一个或复数个运输容器而使用的最佳状态序列。

一个示例中,可将强化学习技术运用至集群100的一个区域或整个集群100。参照图10,运动控制系统302实现了一个使用强化学习技术来学习的智能体,来配置本发明所述的物品处理系统。智能体的策略或价值网络通过卷积神经网络来提供,这方面,技术人员应理解,可运用任何合适的卷积神经网络。调度前,采用例如以下的方式来训练智能体。

一般原则是,通过使用小于期望集群的训练集群确定解决训练问题的方案,借此训练智能体。迭代地缩放训练集群,直至其达到期望的集群大小和集群密度。同样地,该示例中,采用推理的方式规定(步骤900)集群100的期望大小和期望密度。通常来说,这就是调度集群100时集群100的大小和密度。接着定义所谓的问题空间,通过设置初始训练模拟的参数,以训练智能体。这方面,规定(步骤902)一个训练集群的初始大小以及密度,其初始大小比期望的集群100小。初始集群在该示例中为4x4x1集群。但技术人员应理解,初始集群大小能够所有不同,有不同的尺寸。可将初始集群可以视为训练智能体的起源,其具有支持简单训练模拟的作用,而简单训练模拟又可强化为大型训练模拟。

定义的训练集群包含复数个逻辑上可重新定位要素,这些要素可能是如逻辑提包的逻辑运输容器的位置。复数个逻辑上可重新定位要素被设为,效仿具有可重构拓扑的三维集群。数个复数个逻辑上可重新定位要素可能是空位置,其定义了训练集群的密度。还规定了要分配到终点的训练集群的复数个逻辑运输容器。

为了促进处理和扩展,训练集群内的每个位置都由四维张量代表。该示例中,4d张量的前三个维度对应训练集群100中的坐标。张量的第四维包含元数据,例如为逻辑上可重新定位要素是否被占用,以及逻辑上可重新定位要素的终点的相关位置(被分配了终点时)。元数据还可包括逻辑上可重新定位要素的在先重新定位历史。

接着,如下执行智能体的训练(步骤904)。转到图11,知晓分配至训练集群的终点的大小、密度和数目,智能体将初始规定的训练集群的密度初始地设置(步骤912)为最大值,例如,包括零个空逻辑上可重新定位要素。此后,智能体从训练集群反复随机移出(步骤914、918)一个逻辑运输容器,直至达到训练集群的初始规定的密度。要从训练集群移出的逻辑运输容器,其每一个选择,都要经过验证,以确保移出是得到允许的(步骤916)。移出给定逻辑运输容器的条件可与所运用的运输容器的力学和/或约束有关。约束检查器模块415能用于确定是否允许逻辑运输容器的移出。若不允许移出,则选择另一个逻辑运输容器(步骤914),直至发现能够被正当地移出的逻辑运输容器。一旦达到训练集群的规定密度,智能体随机选择训练集群中将被分配集群内的终点的逻辑运输容器的数目,终点为随机选择,并被分配(步骤920)至所选择的逻辑运输容器。但终点的选择受限于一条或多条约束。例如,由于机械约束的原因,可能禁止将角落选择为终点。还可能禁止将起始位置用作终点。约束检查器模块415可再次用来确定被禁止的终点选择。

基于上文定义的训练集群,智能体接着尝试确定一个或复数个逻辑上可重新定位要素的一个或复数个移动序列(本发明也称为一个或复数个轨迹),以将每一个被分配了终点的逻辑运输容器移动至其各自的被分配的终点。该示例中,训练集群中空位置或空白也构成逻辑上可重新定位要素,智能体就训练集群中空位置或空白的重新定位,考虑解决当前训练模拟,以将被分配了终点的逻辑运输容器移动至其各自的终点。这方面,空位置的重新定位,在计算方面,比考虑重新定位那些围绕训练集群中给定空白或“洞”的逻辑运输容器更高效。

因此智能体访问(步骤922)训练集群的当前状态的存储快照,其能包括训练集群中每一逻辑运输容器的位置。接着,智能体选择(步骤924)一个逻辑上可重新定位要素,并向其分配行动。该示例中,逻辑上可重新定位要素为训练集群内的空位置。智能体维持其已经规划的行动列表,智能体对该信息进行访问(步骤926)来生成(步骤928)训练集群的当前状态的代表,这是因为智能体选择的行动的生成是有顺序的,且智能体需要知晓就在选择后续行动之前的行动作用并将其纳入考虑范围。接着智能体确定(步骤930)所选择的逻辑上可重新定位要素的行动,所选择的逻辑上可重新定位要素例如所选择的空位置。该示例中,按照上文就前面示例描述的方法论选择(步骤930)行动。例如,智能体可按照神经网络支持的智能体至今训练的策略来选择行动。实施了一个奖励函数,其可例如基于一个规则集,该规则集将-1的“奖励”分配给未到达其各自终点的逻辑上可重新定位要素,将0分配至到达了其各自终点的逻辑上可重新定位要素。另外,能就逻辑上可重新定位要素来划分奖励0,除非给定逻辑上可重新定位要素在最终重新定位步骤中到达了被分配的终点,最终重新定位步骤时所有活动的逻辑运输容器都完成了移动,这时奖励与给定逻辑上可重新定位要素的起始位置和终点位置之间的距离成比例,例如所谓的曼哈顿距离。在该示例中,行动用1-热张量来表示,其中0代表保持静止,1至6代表移动方向,例如北、东、南、西、上和下。一旦已经为所选择的逻辑上可重新定位要素选择了重新定位,存储(步骤932)所选择的行动,智能体接着确定(步骤934)是否已经考虑了所有可能的行动。如果可能执行其他行动的情况下,例如由其他逻辑上可重新定位要素执行,重复上述步骤924至934,直至确定无其他可用行动,来确定行动。此后,一旦确定了一组行动,智能体将这些行动记录为选择的轨迹或重新定位路径(步骤936),通过例如更新神经网络中的权重来更新神经网络。一旦所有逻辑运输容器已经到达其被分配的终点,或模拟可在预设时间段内连续进行且逻辑运输容器能够被分配更多的终点,可视为将该组行动完成。但一旦已经完成了训练模拟,规划行动的列表就会被清除。

另一个示例中,生成的轨迹能够用于生成额外数据来更新神经网络,例如借助轨迹的旋转、轨迹的反射、轨迹的逆向时间和/或逆动地改变分配至轨迹的逻辑运输容器的终点。

重复进行使用初始训练集群的训练,直至通过重复图11的过程来重构初始训练集群和逻辑运输容器的分配及其关联终点,然后重复执行图12的过程来确定轨迹,使得使用初始训练集群的训练得到令人满意的优化(技术人员应理解,必需的重复程度依例如训练进程而有所改变,如计算的奖励的变化是否可忽略)。一旦已经就初始训练集群对智能体进行充分的训练,再次参照图10,接着智能体确定(步骤906)训练集群的大小和训练集群的密度是否对应集群100的期望大小和集群100的期望密度。如果训练集群不具有期望的大小和密度,智能体调整(步骤908)训练集群,例如通过降低训练集群的集群密度和/或增加训练集群的大小,并就修正的训练集群来重复(步骤904)上述训练智能体的训练模拟,其中训练集群的初始大小和训练集群的初始密度参数替换为训练集群的更新大小和训练集群的更新密度,两者分别用作输入集群结构和输入集群密度。重复上述过程,直至实现集群的期望大小和集群的期望密度,智能体能够受益于已经从训练模拟中获得的训练,训练模拟是就在先训练集群进行的。

一旦已经训练智能体,能调度智能体来确定在实际集群中重新定位提包的行动,实际集群例如上文就本发明所述其他示例描述的集群100。系统能运用于顾客配送中心(cfc),或形成较大cfc或仓库或线上零售系统的配送中心的部分。

除了运用强化学习,或作为强化学习的代替,例如与上文描述的其他可兼容方法论一起,集群100能被配置为提供复数个运输容器的旋转流,例如集群100内运输容器的一个或复数个环路,一个或复数个环路作为穿过集群100重新配置运输容器的高速公路。这方面,给定运输容器能加入运输容器的环流,目的是借助移动运输容器的“大潮”将该运输容器移至指定给该运输容器的终点位置。运动控制系统被设为,确定重新定位集群100内的运输容器的轨迹时,在集群100内包括这种源源不断的流的存在。当然,需要重新定位的复数个运输容器可利用运输容器的一条或多条流。

另一个实施方式中,运动控制系统302具有维护模式。例如,若运输容器104在集群100内时出现了错误,需要操作员或维护机器人的访问,运动控制系统302就进入维护模式,指示数个运输容器提供数个相邻空白,例如通过使用在集群100中创建一个位置的目标,来使集群100内的数个位置为空,借此创造一条到出错误的运输容器104的通路。

在另一个实施例中,若运输容器104被确定为出错误,运动控制系统302生成将出错误的运输容器104重新定位到在集群100外围的预设位置的目标,从而将出错误的运输容器104有效逐出。这方面,依运输容器104出现的故障而定,能运用可用的不同驱动原理将运输容器104逐出集群100。这方面,运动控制系统302可以运用不同的方式,来协调集群100中的运输容器。例如,在评估状态序列的排列时,运动控制系统302的约束检查器415可以使用不同标准。

已经在包含集群100的仓库的背景下,描述了上述实施。但技术人员应理解,上述系统也可应用于其他环境,例如交通工具内或例如太空的航空背景下。

另外一个实施方式(图13)中,分送系统900包括在第一位置的运输容器的第一集群902、在第二位置的第二集群904以及在第三位置的住所906。第一集群902、第二集群904和住所906都在地面上,由地下的通道网络910提供服务。第一端口912位于第一集群902附近,第二端口914位于第二集群904附近,第三端口916位于住所906附近。第一端口912的设置是为了在第一集群902和通道网络910之间移送运输容器。类似地,第二端口914的设置是为了在第二集群904和通道网络910之间移送运输容器。同样地,第三端口916的设置是为了在住所906和通道网络910之间的移送运输容器。

该示例中,通道网络910运用与第一集群902和第二集群914运用的移动技术兼容的移动技术。类似地,住所运用与通道网络910运用的移动系统兼容的接收移动系统。通道网络900包含分送控制系统(未示出)。

应当理解,可以调度更多或更少数目的集群,且可以在它们之间具有不同距离的位置处进行调度。系统能运用于cfc,和/或第一和第二集群902、904能构成复数个cfc和/或形成较大cfc或仓库或线上零售系统的配送中心的部分。当然,分送系统900可包含更多数目个住所。

运转中,通道网络910与运动控制系统302(上文称为物品处理协调系统)协作,目的是协调例如运输容器104的插入,运输容器104可在集群内重新定位且被放置在(本示例中为)集群内的内部起始位置,例如从第一集群902经由第一端口912进入网络通道910。分送控制系统900然后将运输容器104从第一端口912指引传送至最终终点,例如住所906。

运输容器104到达住所906后,接收移动系统与分送控制系统协作,来接收运输容器104,例如通过将运输容器104从通道网络910抬升到住所906中。当然,应理解,运输容器104能进行例如逆向行程的行程,行程从住所906到第一集群902或第二集群904,例如包括将可重新定位运输容器104插入通道网络910。

一些实施方式中,可运用不同的计算架构,例如运用的服务器能在‘云计算’类型的平台上实施,用于分布式计算。同样地,本发明在云背景下阐述的任何实施方式和实施,都可采用类似方式在一个或复数个本地服务器、单个远程服务器、作为服务平台的软件,或可用来代替云的任何其他计算设备上实施。事实上,可在几乎任何种类的计算机设备上执行本系统和方法,例如台式计算机、笔记本计算机、平板电脑或无线手持设备。

还应理解,虽然上述系统的背景是横穿集群的运输容器,上述技术能应用于任意数目个系统,系统中的数个可移动的货品需要以不受干扰、尽可能简单且快速的方式移动穿过一体积(例如但非排他地是三维结构)。还应理解,尽管上述示例是在集群内重新定位在一个或复数个运输容器的情况下描述的,术语“在……内”旨在包括一个或复数个运输容器在集群的外围表面的重新定位。

本系统和方法还能作为计算机可读/可用介质实施,计算机可读/可用介质包括计算机程序代码,来使一个或复数个计算机设备能够实施根据本发明的方法中各种处理步骤中的每一个步骤。若多于一台计算机设备执行整个运行,计算机设备连接网络,来分发运行的各种步骤。众所周知,术语“计算机可读介质”或“计算机可用介质”包含程序代码的任意类型物理体现中的一个或复数个。特别是,计算机可读/可用介质可包含体现在一个或复数个便携存储制品(例如,光盘、磁盘、磁带等)、计算设备的一个或复数个数据存储分区上的程序代码,存储分区如与计算机关联的存储器和/或存储系统。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1