用于提供物体的运送服务的计算机化系统和方法与流程

文档序号:11236066阅读:272来源:国知局
用于提供物体的运送服务的计算机化系统和方法与流程

本发明在计算机化物体运送服务的通用领域内。



背景技术:

在机器人学、自动驾驶车辆和计算机化过程监控的领域中的技术发展已经导致计算机化物体运送服务的引入和利用。例如,考虑到与操作起重机相关的较高的标价,尤其需要使得向和从港口内的船只运送(装载/卸载)集装箱的过程自动化,以便以有效方式利用并减少诸如起重机(其装载/卸载集装箱)的昂贵资源的闲置时间。

被认为作为背景技术与本公开主题相关的参考文献列举如下:

hoffman、andrewe.等人的us20130103552公开了使用移动驱动单元进行库存管理的系统和方法。该方法包括利用具有第一尺寸的第一移动驱动单元和利用具有第二尺寸的第二移动驱动单元,第一和第二尺寸不同。第一和第二移动驱动单元可操作以将库存物品运输到同一工作区中的多个库存站。

hoffman、andrewe.等人的us20130054005公开了使用移动驱动单元进行库存管理的系统和方法。该方法包括利用具有第一尺寸的第一移动驱动单元和利用具有第二尺寸的第二移动驱动单元,第一和第二尺寸不同。第一和第二移动驱动单元可操作以将库存物品运输到同一工作区中的多个库存站。

d'andrearaffaello等人的us20070294029公开了一种用于管理移动驱动单元的系统和方法。用于使移动驱动单元在工作区内移动的方法包括接收路径。该路径至少包括初始段和一个或多个附加段。初始段包括与第一点相邻的路径的一部分;并且附加段中的至少一个包括与第二点相邻的路径的一部分。该方法还包括存储路径,保留路径的初始段,和沿初始段移动离开第一点。在开始沿着初始段移动之后,该方法包括保留路径的每个附加段并且在该段被保留的同时沿着每个附加段朝向第二点移动。

wurman、peterr.等人的us20070293978公开了一种用于运输库存物品的系统和方法。运输库存物品的方法包括将移动驱动单元移动到工作区内的第一点,第一点是库存储存器的位置。该方法还包括利用库存储存器使移动驱动单元入坞并将移动驱动单元和库存储存器移动到工作区内的第二点,第二点与搬运设备相关联。该方法还包括用搬运设备将库存储存器移动到工作区内的第三点。

hoffman、andrewe.等人的us20080001372公开了一种用于定位移动驱动单元的系统和方法。运输库存物品的方法包括确定移动驱动单元的分配状态。该方法还包括响应于确定移动驱动单元当前没有完成任务,基于移动驱动单元的分配状态来选择移动驱动单元的位置。该方法还包括向移动驱动单元发送标识所选位置的信息。mountz、michaelc.等人的us20080167884公开了一种用于实现订单的系统和方法。用于满足库存请求的方法包括接收请求库存物品的库存请求,并从库存储存器中选择所请求的库存物品。该方法还包括在与库存请求相关联的订单保持器中存储所请求的库存物品,并将订单保持器移动到存储空间。此外,该方法包括检测触发事件并且响应于检测到触发事件,从存储空间找回订单保持器。

d'andrearaffaello等人的us20080051985公开了一种用于协调移动驱动单元的运动的系统和方法。用于在工作区内移动一个或多个移动驱动单元的方法包括从第一移动驱动单元接收请求使用第一路径段以在第一方向上移动的预约请求。该方法还包括确定第二移动驱动单元当前位于第一路径段上和确定第二移动驱动单元是否正在第一方向上移动。另外,该方法包括响应于确定第二移动驱动单元不在第一方向上移动,发送表明预约请求被拒绝的预约响应。该方法还包括响应于确定第二移动驱动单元正在第一方向上移动,发送表明预约请求被许可的预约响应。

wurman、peterr.等人的us20080051984公开了一种生成用于移动驱动单元的路径的系统和方法。运输库存物品的方法包括从移动驱动单元接收路线请求,路线请求标识工作区内的目标位置。工作区包括与第一单元属性相关联的至少一个单元和与第一单元属性不相关联的至少一个单元。该方法包括确定移动驱动单元的状态。该方法还包括响应于确定移动驱动单元与第一状态相关联,生成移动驱动单元的到达目标位置的路径,其穿越与第一单元属性相关联的单元。该方法包括响应于确定移动驱动单元不与第一状态相关联,生成移动驱动单元的到达目标位置的路径,其不穿越与第一单元属性相关联的单元。该方法还包括将路径发送给移动驱动单元。

本文中上述参考文献的确认不被推断为意味着这些文献以任何方式与本发明的主题的可专利性相关。

本领域中需要提供一种用于提供物体的运送服务的新的和改进的系统和方法。



技术实现要素:

根据目前公开的主题的一个方面,提供了一种计算机化的运送服务提供方法,包括:

(i)提供多个车辆和多个隔间;

(ii)选择所述多个车辆中用于分配给资源的车辆;选择关于资源的每个车辆包括:

1.为资源确定所述多个车辆中符合车辆候选资格标准的候选车辆;

2.计算与所述候选车辆中的至少一个相关联的至少一个假定路径路线;每个假定路径路线都包括所述多个隔间中的路径隔间,候选车辆将假定地通过所述路径隔间,并在对应的假定估计到达时间(eta)终止于隔间的运送隔间中,构成假定路径路线的eta,以在候选车辆和资源之间假定地提供运送服务,产生候选车辆的假定路径路线;

3.计算与假定路径路线相关联的假定饥饿时间,饥饿时间的每个假定饥饿时间都限定了假定路径路线的时间间隔,该时间间隔开始于资源的资源服务开始时间并终止于假定路径路线的假定eta,并且在该时间间隔期间,假设资源假定地等待与假定路径路线相关联的候选车辆,以假定地提供运送服务;

4.从相关联的饥饿时间符合饥饿标准的假定路径路线中确定一假定路径路线,并使所确定的假定路径路线作为最佳路径路线,并且从与最佳路径路线相关联的至少一个候选车辆中选择一车辆以在所选车辆和资源之间提供运送服务。

根据目前公开的主题的实施方案,还提供了一种方法,其中,从清单中选择饥饿标准,该清单包括:将所述饥饿时间减少到最小、消除饥饿时间、和饥饿时间落在预定饥饿时间间隔内,无论是正的还是负的。

根据目前公开的主题的实施方案,还提供了一种方法,其中关于资源的饥饿标准进一步取决于其他参数,所述其他参数包括所分派的车辆数量相对于所期望的车辆数量。

根据目前公开的主题的实施方案,还提供了一种方法,其中进一步提供用于在(i)和(ii)之间执行的后面的阶段还包括:

a.关于多个资源中的每一个计算饥饿时间;每个饥饿时间都限定了预测时间间隔,所述预测时间间隔从资源服务开始时间开始并终止于车辆的估计到达时间(eta),在该估计到达时间期间,假设资源等待所述车辆中用于提供运送服务的车辆;

b:根据资源饥饿时间的降序对资源进行优先级排序,其中最高优先级是最差地预测的资源饥饿时间,产生资源的优先级清单;和其中(ii)还包括至少根据优先级清单选择多个车辆中用于分配给资源的车辆。

根据目前公开的主题的实施方案,还提供了一种方法,其中多个隔间中的每个隔间与表明隔间的一系列临时占用状态的隔间状态相关联,和其中每个计算出的假定路径路线的假定估计到达时间(eta)取决于路线的每个隔间的隔间状态。

根据目前公开的主题的实施方案,还提供了一种方法,其中每个临时占用状态至少由(i)空的状态和持续时间或(ii)占用状态和持续时间组成。

根据目前公开的主题的实施方案,还提供了一种方法,其中如果在阶段(ii)(4)中确定了多于一个最佳路径路线,它们都符合饥饿标准,则该方法还包括:

根据车辆最佳路线决策标准,从与所述多于一个最佳路线相关联的车辆中选择一车辆。

根据目前公开的主题的实施方案,还提供了一种方法,其中车辆最佳路线决策标准包括以下中的至少一个:

(i)与未选择的车辆相比,所选车辆具有较低的蓄电池电力;

(ii)与路径路线中包括比第一数量大的第二数量的路径隔间和运送隔间的较长最佳路径路线相比,所选车辆与最佳路线中包括第一数量的路径隔间和运送隔间的较短最佳路径路线相关联,和

(iii)所选车辆符合“及时”标准。

根据目前公开的主题的实施方案,还提供了一种方法,其中即使最佳路径路线不再立即符合饥饿标准,也保持最佳路径路线。

根据目前公开的主题的实施方案,还提供了一种方法,该方法还包括响应于所选车辆开始通过最佳通过路线的第一路径隔间,将所选车辆分类为忙的车辆;

响应于在资源和分配的车辆之间提供运送服务,将所选车辆分类为备用车辆。

根据目前公开的主题的实施方案,还提供了一种计算机化的运送服务提供方法,其还包括:

选择所述多个车辆中用于分配给资源的车辆,并用于在至少两个资源服务周期的每一个的每个资源;

关于服务周期的每个周期执行(ii)(1)的确定,(ii)(2)的计算,(ii)(3)的计算和(ii)(4)的确定。

根据目前公开的主题的实施方案,还提供了一种计算机化的运送服务提供方法,其中关于每个服务周期独立地执行所述计算假定饥饿时间。

根据目前公开的主题的实施方案,还提供了一种运送服务提供方法,其中计算给定服务周期的假定饥饿时间被继续到至少一个后面的服务周期的计算出的假定饥饿时间。

根据目前公开的主题的实施方案,还提供了一种方法,其中资源被分为至少两种类型,和其中所述优先级清单根据所述降序以所述至少两种类型中的第一种类型的资源的较高优先级和所述至少两种类型中的第二种类型的资源的较低优先级,对资源进行优先级排序。

根据目前公开的主题的实施方案,还提供了一种方法,其中所述至少两种类型包括起重机和卡车类型,和其中第一种类型是起重机类型。

根据目前公开的主题的实施方案,还提供了一种方法,其中没有被假设为等待的车辆的资源中的第一资源在优先级清单中具有高于第二资源的优先级,其中第二资源具有假设第二资源在等待的车辆。

根据目前公开的主题的实施方案,还提供了一种方法,其中如果满足以下条件中的至少一个,则符合车辆候选资格标准:

车辆被分类为备用车辆状态;

车辆被分配给已经分配有足够车辆的资源;

车辆被分配给资源,并且将在其他车辆被分类为处于备用车辆状态中之前被分类为备用车辆状态;

车辆属于给定车辆种类;和

车辆具有有利的与车辆候选资格相关的特性。

根据目前公开的主题的实施方案,还提供了一种方法,其中有利的与车辆候选资格相关的特性包括以下中的至少一个:

ⅰ.候选车辆与非候选车辆相比具有较低的蓄电池电力;

ii.和与候选或非候选车辆相关联的较长假定路径路线相比,候选车辆与包括第一数量的路径隔间和运送隔间的较短假定路径路线相关联,其中较长假定路径路线包括比所述第一数量大的第二数量的路径隔间和运送隔间;

iii.候选车辆中的两个候选车辆具有相同的假定路径路线长度,但是具有选自包括第一车辆的组的更好的附加优点,与第二车辆相比,第一车辆具有较少的转弯,或者较少使用电梯隔间,或具有比第二车辆更好的eta;

iv.候选车辆是资源服务队列数据结构中的第一车辆。

根据目前公开的主题的实施方案,还提供了一种方法,其中阶段(ii)(4)的计算包括:

关于候选车辆中的每一个确定与候选车辆相关联的路径路线中的对应的最佳本地候选路线,所述最佳本地候选路线符合本地饥饿标准,产生与候选车辆相关联的最佳本地候选路线;

和其中所述阶段(ii)(4)的确定还包括从本地最佳候选路线中选择符合饥饿标准的最佳路径路线。

根据目前公开的主题的实施方案,还提供了一种方法,其中所述候选车辆中的所述至少一个具有相同的车辆种类。

根据目前公开的主题的实施方案,还提供了一种方法,其还包括:

关于隔间中的每个隔间提供隔间状态,所述隔间状态表明隔间的一系列临时占用状态;

和其中阶段(ii)(2)的与候选车辆相关联的每个假定路径路线的计算包括:

考虑假定路线的每个隔间的隔间状态;

和其中,阶段(ii)(4)的确定最佳路径路线还包括利用反映所选车辆将通过隔间的持续时间的隔间状态来更新最佳路径路线的每个隔间的临时占用状态。

根据目前公开的主题的实施方案,还提供了一种方法,其中隔间状态代表隔间变空的时间点和持续时间。

根据目前公开的主题的实施方案,还提供了一种方法,其中隔间状态代表隔间变成被占用的时间点和持续时间。

根据目前公开的主题的实施方案,还提供了一种方法,其中隔间状态数据结构包括:

至少两种类型,其均取决于不同的车辆属性;

其中与候选车辆相关联的每个假定路径路线的计算取决于来自隔间状态数据结构类型的隔间状态,隔间状态数据结构类型取决于候选车辆属性;

和其中最佳路径路线的确定还包括利用反映所选车辆将通过隔间的持续时间的隔间状态,在取决于所选车辆的属性的隔间状态数据结构类型中更新最佳路径路线的每个隔间的临时占用状态。

根据目前公开的主题的实施方案,还提供了一种方法,其中车辆属性包括(i)装载有物体的车辆或(ii)空载的车辆和(iii)车辆高度。

根据目前公开的主题的实施方案,还提供了一种方法,其还包括:

提供隔间状态数据结构,该隔间状态数据结构可操作以关于所述多个隔间中的每个隔间存储表明隔间的一系列临时占用状态的隔间状态;和其中阶段(ii)(2)的与候选车辆相关联的每个假定路径路线的计算包括:确定(i)隔间中容纳候选车辆的当前隔间,和(ii)隔间的当前或未来时间标签;确定所述多个隔间中接着当前隔间的至少一个路径隔间和所述多个隔间中的运送隔间,运送隔间接着所述一系列路径隔间中的最后一个;对于隔间中的每一个,利用隔间状态数据结构确定车辆到达隔间的假定估计到达时间(eta)表明何时车辆可以利用隔间,产生假定路径路线的eta;

和其中阶段(ii)(4)的与所选车辆相关联的最佳路径路线的确定还包括:

利用反映所选车辆将通过隔间的持续时间的隔间状态来更新最佳路径路线的每个隔间的临时占用状态。

根据目前公开的主题的实施方案,还提供了一种方法,其中隔间状态数据结构包括至少两种类型,其均取决于不同的车辆属性,其中与候选车辆相关联的每个假定路径路线的计算取决于来自隔间状态数据结构类型的隔间状态,隔间状态数据结构类型取决于候选车辆属性;和其中最佳路径路线的确定还包括利用反映所选车辆将通过隔间的持续时间的隔间状态,在取决于所选车辆的属性的隔间状态数据结构类型中更新最佳路径路线的每个隔间的临时占用状态。

根据目前公开的主题的实施方案,还提供了一种方法,其中车辆属性包括(i)装载有物体的车辆或(ii)空载的车辆和(iii)车辆高度。

根据目前公开的主题的实施方案,还提供了一种方法,其中计算d饥饿时间遵照以下公式:

饥饿时间=(eta-现在)-((n-1)*服务时间),

其中,

eta-现在=等于到达运送隔间的估计到达时间减去当前时间,(n-1)*服务时间等于资源可用时间标签,和其中(n-1)等于所述至少两个资源服务周期的周期数。

根据目前公开的主题的一个方面,还提供了一种计算机化的运送服务提供方法,包括:

提供多个车辆和多个隔间;

选择所述多个车辆中用于分配给资源的车辆;

所述选择关于资源的每个车辆包括:

为资源确定所述多个车辆中符合车辆候选资格标准的候选车辆;

计算与所述候选车辆中的至少一个相关联的假定路径路线,每个假定路径路线都包括隔间中的至少一个路径隔间和运送隔间;为所述候选车辆中的所述至少一个产生假定路径路线;

从假定路径路线中确定最佳路径路线,并从与最佳路径路线相关联的所述候选车辆中的所述至少一个中选择车辆,

其中所选车辆将通过在最佳路径路线的运送隔间处终止的至少一个路径隔间,以在所选车辆和资源之间提供运送服务;

和其中最佳路径路线涉及与资源相关联的计算出的饥饿时间,所述计算出的饥饿时间和与资源相关联的任何其他假定路径路线的饥饿时间相比,符合饥饿标准。

根据目前公开的主题的实施方案,还提供了一种方法,其中多个隔间中的每个隔间与表明隔间的一系列临时占用状态的隔间状态相关联,和其中最佳路径路线和其他假定路径路线中的每一个的饥饿时间都取决于路线的每个隔间的隔间状态。

根据目前公开的主题的一个方面,还提供了一种计算机化的运送服务提供方法,包括:

提供多个车辆和多个隔间;

选择所述多个车辆中用于分配给资源的车辆,并用于在至少两个资源服务周期的每一个的每个资源;

关于服务周期的资源服务周期的每个车辆的选择包括:

为所述资源服务周期确定所述多个车辆中符合车辆候选资格标准的候选车辆;

计算与候选车辆中的至少一个相关联的至少一个假定路径路线;

每个假定路径路线包括所述多个隔间中的路径隔间,候选车辆将假定地通过路径隔间并将在对应的假定估计到达时间(eta)终止于隔间的运送隔间中,以在资源服务周期在候选车辆和资源之间假定地提供运送服务,产生候选车辆的假定路径路线;

计算与假定路径路线相关联的假定饥饿时间,饥饿时间的每个假定饥饿时间都限定了假定路径路线的时间间隔,所述时间间隔开始于资源服务周期的资源的资源服务开始时间并终止于假定路径路线的假定eta,并且在该时间间隔期间,假设资源假定地等待与假定路径路线相关联的候选车辆,以在资源服务周期假定地提供运送服务;

从相关联的饥饿时间符合饥饿标准的假定路径路线中确定一假定路径路线,并使所确定的假定路径路线作为最佳路径路线,并且从与最佳路径路线相关联的至少一个候选车辆中选择一车辆,以在资源服务周期在所选车辆和资源之间提供运送服务。

根据目前公开的主题的一个方面,还提供了一种计算机化的车辆导航方法,包括:

(i)提供多个车辆,其仅具有可操作以感测与多个隔间相关联的静态环境的静态感测能力,而没有可操作以利用多个隔间的动态车辆的动态感测能力;

(ii)关于多个隔间中的每个隔间动态地确定表明隔间的一系列临时占用状态的隔间状态,临时占用状态中的每一个至少由(i)空的状态和车辆中的一车辆可以利用隔间的持续时间或(ii)占用状态和车辆中的一车辆利用或将利用隔间的持续时间组成;

(iii)为车辆中的至少一个确定至少一个路径路线,其中路径路线中的每个路径路线都包括所述多个隔间中的起始隔间、至少一个路径隔间和到达隔间;关于每个路径隔间的确定包括:利用可能的隔间的隔间状态的临时占用状态和根据路径路线标准从所述多个隔间的可能的隔间中选择路径隔间,从而便于车辆中与所确定的路径路线相关联的车辆仅基于静态感测能力利用所确定的路径路线的隔间。

根据目前公开的主题的实施方案,还提供了一种方法,其中所述标准规定:到达到达隔间的车辆估计到达时间早于从起始隔间开始并终止于到达隔间的任何其他假定路径隔间。

根据目前公开的主题的一个方面,还提供了一种计算机化的运送服务提供系统,包括:

配置成利用多个隔间的多个车辆;

处理器和相关联的数据库,其配置为

(i)选择所述多个车辆中用于分配给资源的车辆;选择关于资源的每个车辆包括:

a.为资源确定所述多个车辆中符合车辆候选资格标准的候选车辆;

b.计算与所述候选车辆中的至少一个相关联的至少一个假定路径路线;每个假定路径路线都包括所述多个隔间中的路径隔间,候选车辆将假定地通过路径隔间并将在对应的假定估计到达时间(eta)终止于隔间的运送隔间中,构成假定路径路线的eta,用于在候选车辆和资源之间假定地提供运送服务,产生候选车辆的假定路径路线;

c.计算与假定路径路线相关联的假定饥饿时间,饥饿时间的每个假定饥饿时间都限定了假定路径路线的时间间隔,该时间间隔开始于资源的资源服务开始时间并终止于假定路径路线的假定eta,并且在该时间间隔期间,假设资源假定地等待与假定路径路线相关联的候选车辆,以假定地提供运送服务;

d.从相关联的饥饿时间符合饥饿标准的假定路径路线中确定一假定路径路线,并使所确定的假定路径路线作为最佳路径路线,并且从与最佳路径路线相关联的至少一个候选车辆中选择一车辆以在所选车辆和资源之间提供运送服务。

根据目前公开的主题的实施方案,还提供了一种系统,其中处理器包括在车辆外部的处理器和与每个车辆相关联的车辆处理器。

根据目前公开的主题的实施方案,还提供了一种系统,其中(i)(a)的选择、确定,(i)(b的计算,(i)(c)的计算和(i)(d)的确定全部由在车辆外部的处理器执行。

根据目前公开的主题的实施方案,还提供了一种系统,其中,(i)(a)的选择、确定,(i)(b)的计算,(i)(c)的计算和(i)(d)的确定中的至少一部分至少部分地由车辆处理器中的至少一个执行。

根据目前公开的主题的实施方案,还提供了一种机器可读非瞬态存储器,其有形地实施了用于执行上述方法的由处理器可执行的指令的程序。

附图说明

为了更好地理解本文中公开的主题和举例说明其在实践中可以如何实现,现在将参考附图描述仅作为非限制性示例的实施方案,其中:

图1a-b分别示出了根据本发明某些实施方案的机器人运送系统的总体布局的俯视图和侧视图;

图1c是根据本发明某些实施方案的机器人运送系统中的存放装置的多层结构的透视图;

图2是图1中所示的用于机器人运送系统的车辆的示意性透视图;

图3和图4示出了根据本发明某些实施方案的用于在存放装置中将船运集装箱支撑在地板上方的两种相应的布置;

图5是根据本发明某些实施方案的机器人运送系统控制的概括框图;

图6示出了根据本发明某些实施方案的机器人港口的一般操作程序的流程图;

图7示意性地示出了根据本发明某些实施方案的资源服务队列(rsq)数据结构;

图8a示出了根据本发明某些实施方案的用于计算资源的饥饿时间的一般操作流程的流程图;

图8b示意性地示出了根据本发明某些实施方案的资源饥饿时间向量;

图9示出了根据本发明某些实施方案的用于计算假定路径路线的一般操作流程的流程图;

图10示出了根据本发明某些实施方案的用于计算车辆的最佳路径路线的一般操作流程的流程图;和

图11a-f是用于示例根据本发明某些实施方案的机器人运送系统中的操作流程的示意图。

具体实施方式

在继续之前,应该注意,为了清楚的说明,在此参考机器人港口运送系统的具体例子描述本发明的机器人运送系统,其中向或从起重机或车辆如卡车运送(例如装载/卸载)集装箱。本领域技术人员将很容易理解,机器人港口只是一个例子,集装箱是可以运送的物体的例子,起重机或卡车是资源的例子。这样的系统例如在美国专利申请us20120290125中公开,其内容通过引用方式并入本文中。另一个例子是机器人运送系统,其中货物(例如物品)通过机器人车辆(例如,轻型车)在仓库内的不同工作站之间运输。物品是可以向或从工作站(例如分拣站)运送的物体的例子,机器人轻型车是车辆的例子。在后面的例子中有隔间,其形成机器人车辆移动通过的路径。

还应该注意,每当提到车辆时,无论是哪种情况,它都可以包括引导车辆、由操作人员操纵的车辆、部分或完全机动的车辆、部分引导或完全自主的车辆、陆用车辆或空中飞行器等。还要注意,车辆不一定是地面车辆,可以是例如悬停/空中飞行器或混合动力车辆,其例如能够在地上和/或悬停。无论是哪种情况,以下讨论的假定路径路线和/或最佳路径路线可以由包括地面隔间或空中轨道段的隔间组成。

还要注意,在下面的描述中,在各种参数的环境中参考时间值,例如饥饿时间、隔间变空或变成被占用的时间点、(车辆到达运送隔间的)估计到达时间、和其他时间。每个指定的时间值的精度可以根据需要(例如以秒,分钟等测量)并经受时间容差(例如t±δt),并且根据具体应用可以具有不同的容差。

牢记这一点,首先看图1a-b,其分别示出了根据本发明某些实施方案的容纳车辆的机器人运送系统(例如机器人运送港口系统)11的总体布局的俯视图和侧视图。如图所示,船12在存放装置13(例如,机器人港口建筑物)附近停泊在港口码头,存放装置13包括在本实施方案中布置为多层结构14的多个隔间,多层结构14在本例子中包括11层。如图所示(例如关于第一层),每层都包括二维隔间阵列,例如7(参见图1b中的15')乘13(参见图1a中的15”)。

如将在下面参照图2更详细地说明的,隔间可以临时容纳集装箱(例如每个隔间一个集装箱),所述集装箱被指定为由车辆运载到存放装置13的运送隔间(例如,图1a中的露台16a至16d,其中露台16a显示为在建筑物的第三层-见图1b),以在车辆(例如18)和资源(例如起重机19a)之间提供集装箱(例如,集装箱17)的运送服务。注意,通过该实施方案,有四个资源(起重机19a至19d-参见图1a的平面图)。起重机可以将集装箱运载到停泊船2,以例如在集装箱存放区域9中堆放集装箱。同样地,提供物体的运送服务可以应用于将(多个)集装箱从起重机卸载到车辆(图1中未示出)。如将在下面更详细地解释的,车辆被指定为通过给定层的隔间或例如通过利用(多个)通行电梯隔间(例如电梯100和/或110)改变楼层,电梯100和/或110可以容纳一个或多个车辆并将它们从任一层运输到容纳运送隔间的第三层(例如,第三层中的任一个露台16a至16d)。应该注意,取决于隔间的性质和类型,关于隔间的术语“通过”可以被解释为适当的动作。因此,例如,每当隔间代表(比方说)电梯通过时,隔间(或路径隔间)应被解释为利用隔间等。

为了更好地理解,看图1c,其示出了根据本发明某些实施方案的机器人运送系统中的布置的多层结构14的透视图。

如图所示,结构14包括(在本例子中)多个层18,和在它们之间跨越的电梯井120。所述井可以由每个层中的垂直对齐的缺口构成。电梯(隔间)例如110(也看图1b)设置成在井内移动,该电梯(隔间)可以是开放的(即,包括配置成在井120内垂直移动的平台),也可以包括配置成防止其上的车辆(未示出)跌落的可移动的安全轨道(未示出)。(电梯110示于图1c中的结构的底部楼层上)

井120和电梯110的尺寸使得其上具有标准船运集装箱的车辆可以在电梯上被运输到结构14的任何层18。根据某些实施方案,结构14可以包括多于一个的电梯110。

根据某些实施方案,井120和升降机110的尺寸可使得可以在电梯上将多于一个、例如两个且其上均具有标准运输集装箱的车辆(未示出)运输到结构14的任何层18。根据该变型,电梯110的尺寸使得均运载船运集装箱的两个车辆在彼此相邻地布置时可以配合在其上(即,电梯是两个相邻的隔间124的大小)。

用于确定井120和电梯110的尺寸的标准船运集装箱的尺寸可以是例如20英尺的集装箱(尺寸为2.44m高×2.44m宽×6.1m长)、40英尺的集装箱(尺寸为2.44m高×2.44m宽×12.19m长),“高柜”集装箱(尺寸类似于20和40英尺的集装箱,但具有更大的高度,例如2.9m或3.2m),或制造符合iso规格的任何类型的集装箱。

为了简单起见,图1c中所示的用于仓库18a的层18仅包括用于输送物体的通行隔间(例如在机器人港口-集装箱的环境中)。然而,如例如图1a-b中所示,所述层包括用于提供集装箱的运送服务的运送隔间(例如,16a-16d)。

注意,本发明至少不受下列限制:(i)指定的存放装置(例如机器人港口建筑结构)(ii)指定的多层结构,例如结构可以包括一个层(iii)其形式(例如阵列)维数以及层的数量(例如,它可以由单个层或至少两个层组成)(iv)运送隔间的位置(v)通行隔间的类型(例如标准隔间-(例如24),电梯隔间(例如,110)和/或它们的结构和/或尺寸,例如它们是否可以容纳一个物体(例如集装箱)或多于一个的物体;(vi)运送隔间的结构和/或尺寸(iv)电梯隔间和/或其位置的利用,等等。因此,作为例子,存放装置可以是参照美国专利申请us20120290125的图3a-d和4a-b所描述的存放装置中的任一个。

现在转到图2,其示出了图1中所示的机器人运送系统的车辆的示意性透视图。

因此,每个车辆20包括扁平的、齐平的本体21(即,“平板载货车”),其内部本体部分21'可以相对于外部本体部分21”升高并降低直到与外部本体部分21”齐平。在图2中示意性地描绘了后一种状态,图2还示出了多个轮子22。本体具有合适尺寸以便在其上接收并支撑物体,例如标准船运集装箱。车辆可以包括四个、六个、八个或任何其他合适数量的轮子。它可以配置为在任何方向上移动,即向前、向后、侧向、斜对角等等,而不经历任何旋转。另外,它可以被配置为绕轴线枢转。

每个隔间124可以设置有用于将船运集装箱支撑在升高到楼层上方的位置中,同时提供对其下方的车辆20的访问的装置。此外,车辆20或用于支撑集装箱的装置(或两者一起)可以配置成将集装箱从所述装置转移到车辆,反之亦然。

因此,根据图3中所示的某个实施方案,用于支撑船运集装箱的装置包括多个(例如四个)升高的支撑件30,其刚性地连接到每个隔间124的层。每个升高的支撑件30包括由腿部34支撑的上部平台32(将会理解,升高的支撑件30可以设置成没有上部平台32,在这种情况下,上部平台可以是指腿部34的上表面)。

支撑件30布置成使得其所有的上部平台32可以一起在其上接收和支撑标准船运集装箱。支撑件30的相邻腿部34之间的间隔足以允许车辆20通过。为了便于其通过,腿部34可以仅设置在支撑件30的每个角部处,以使得车辆20可以穿过由支撑件30的腿部34限定的区域33。根据图3中所示的某些实施方案,腿部42的高度使得车辆20可以进入也在支撑件30的平台32下方延伸但由腿部34限定的区域33。通常,在平台32的底部边缘和车辆20的外部本体21”的顶部之间允许小的间隙,例如大约几厘米。注意,车辆20的可移动内部本体21'的尺寸小于相邻的支撑件之间的距离,这允许内部本体21'的自由升降,而不会在车辆停泊在区域33中时与支撑件30的平台32碰撞。

根据图4中所示的另一实施方案,存放装置设置有多个可移动支撑件40。每个可移动支撑件40包括由四个腿部42支撑的上部平台41,腿部42的高度使得车辆20可以进入上部平台41下面的区域43中。通常,在上部平台41的底部边缘和车辆20的顶部之间允许小的间隙,例如大约几厘米,并且支撑件40的腿部42搁在车辆20的本体21旁边。

根据图3和4中所示的实施方案中的任一个,车辆20设置有一机构,该机构配置为选择性地升高和/或降低其内部本体21',从而改变其高度。另外,车辆具有合适尺寸以便能够匹配在由各个支撑件30、40的腿部34、42限定的区域33、43内。

根据图3中所示的实施方案,其内部本体部分21'处于升高位置(高于平台水平面)中的车辆20将集装箱(“装载的车辆”)运载到空的隔间(即,没有容纳(比方说)车辆或集装箱的隔间),并且将其自身定位成使得集装箱在平台32上方。然后,它降低内部本体部分21'(直到与外部本体21”齐平),以使得集装箱由支撑件30的平台32支撑,从而将隔间的状态改变成“被占用”。随后,车辆20(现在空载)可以离开隔间。为了从隔间124取回集装箱(从而将其状态改变为“空的”),车辆执行相反顺序的动作。

根据图4中所示的实施方案,当车辆20准备接收集装箱时,它将自身定位在空的支撑件40下方,升高其内部本体21'(从而将支撑件40升高离开楼层),并将支撑件运载到(比方说)存放装置中的另一个隔间(例如运送隔间)。一旦集装箱被装载,即它在由车辆20运载的支撑件40的平台41上接收集装箱,它就向所选的空隔间124进发。车辆20降低其内部本体部分21'(直到与外部本体部分21”齐平),从而使支撑件40的腿部42搁在楼层上并将隔间的状态改变为被占用。随后,空载的车辆20可以离开隔间124,将其上有集装箱的支撑件40留在被占用的隔间中。为了从隔间124取回集装箱,车辆可以执行相反顺序的动作。

根据参照图3描述的某个其他实施方案,支撑件30可以配置成被升高和降低。它们可以被降低以使得其上表面与楼层齐平(或足够接近楼层),以使得车辆20可以在其上方行驶而其运动基本上不会受其影响,或足以使得由车辆20运载的集装箱可以在其上方通过。当集装箱处于支撑件30上方的位置中时,它们升高,从而使集装箱从车辆的本体分离(假定集装箱具有比本体21更大的尺寸),并使其搁置在支撑件30的平台32上。为了从支撑件30取回集装箱,执行相反顺序的动作。

根据参照图3和4描述的实施方案,每个层可以设置有相对于其中的隔间124的数量而言的少量的车辆20,并且每个车辆可以在不使用时占用隔间,例如角落。根据某些实施方案,并且如上面已经论述的,集装箱被存放在允许空载车辆20在其下面通过的位置中。因此,当要求车辆接收来自船资源的位于运送隔间处的集装箱时,它也可以通过被占用的隔间行驶到存放集装箱的隔间(例如通过在支撑件40的平台41下方通过),从而加速到达运送隔间且便于提供集装箱的运送服务。

注意,本发明不受仅为了说明的目的而提供的车辆的具体结构(参考图2描述的)和/或支撑装置(参考图3、4描述的)的限制。

现在转向图5,其示出了根据本发明某些实施方案的机器人运送系统控制的概括框图。

控制系统50配置为与多层结构14(例如,安装在其中的传感器)和车辆20通信。如图5中所示,它可以包括处理器51、一个或多个数据显示单元52、和一个或多个用户输入设备53。数据显示单元52可以包括一个或多个监视器,led,扬声器,声音报警器,和/或任何其他适当的设备。用户输入设备53可以包括一个或多个键盘,触敏显示器,计算机鼠标,麦克风(例如与语音识别软件一起工作),和/或任何其它适当的设备。

另外,控制系统50可以配置为在存储器54中存储信息,例如关于集装箱的识别、每个车辆(和因而它运载的集装箱)的位置、资源(例如起重机/卡车)的识别/位置、历史数据、以及控制车辆以在车辆和资源之间提供运送服务所需的数据,所有这些都将在下面更详细地说明。这些数据可被处理器51利用。

整个控制系统50可以驻留在多层结构14附近,例如定位成使得其操作者具有无阻碍的视野,并且也可以无阻碍地观察在码头和结构之间的路径的至少一部分。

根据某些实施方案,至少部分控制系统50可以位于远离多层结构14的位置。例如,处理器51可以由远程数据中心中的服务器构成。在这种情况下,可以在结构14附近提供适当的装置,用于例如通过通信模块55向其/从其发送/接收信息。另外,包括数据显示单元52和用户输入设备53的“无声终端”可以设置在结构14附近,从而使操作者能够在观察系统其余部分的操作的同时访问处理器51。

除了上述之外,本发明的系统可以包括便于其操作的任何必需的元件/传感器(未示出),诸如gps传感器、rfid(射频识别)标签和(多个)读取器、手动超驰(manualoverride)和/或故障保险装置、手动和/或自动紧急关闭装置、用于车辆20的充电/加油站(根据所用车辆的类型酌情)等等。

注意,根据某些实施方案,可以通过装配在车辆中的控制器(未示出)来执行控制器50的某些操作。

图10和11示出了由控制系统50执行的用于利用起重机将集装箱从船取回到车辆上并将其存放在多层结构14的存储隔间中和从多层结构14中的隔间取回集装箱并将其转移到卡车上的操作流程。本发明不受这些具体的示例性操作流程的限制,所述示例性操作流程说明了在车辆和资源(例如起重机或卡车)之间提供物体(例如集装箱)的运送(无论是装载还是卸载)服务。

如上文简要讨论的,操作诸如起重机的资源具有相对高的标价,因此期望减少或消除资源处于闲置状态中的时间。换句话说,当资源可用于服务时,例如,它已经取回或准备从停泊船取回集装箱,期望减少其等待时间,直到车辆到达运送隔间(例如,露台16-参见图1b)并且起重机可以将集装箱运送到车辆上为止。期望减少或消除这种不必要的闲置等待持续时间(在本文中也称为资源的饥饿时间)以便提高其工作效率,由此节省运行成本。更一般地,无论情况如何,要求是符合饥饿标准(对于一个或多个资源或者甚至每个资源的一个或多个服务周期),例如将假定饥饿时间减少到最小值,消除假定饥饿时间,或者假定饥饿时间落在预定的饥饿间隔或可能的其他时间内。应当注意,为了简单起见,下面的描述有时是指减少或消除饥饿程度(时间)。应该注意,这些仅仅是符合饥饿标准的例子。

在继续之前,应当注意,根据本发明某些实施方案,提供了一种系统和方法,其用于确定所选车辆和相关联的最佳路径路线,相关联的最佳路径路线包括多层结构的路径隔间(包括各种类型的路径隔间,例如(多个)电梯隔间类型,如果需要的话,请看下面-为简单起见,简称为电梯隔间),并且所选车辆将通过它直到到达(多个)运送隔间为止以提供(多个)运送服务,以使得资源(例如,起重机)将被最有效地利用,或者换句话说,将符合饥饿标准,例如消除饥饿时间,以使得起重机不会等待车辆服务。

根据某些实施方案,车辆的最佳路径路线的计算可以考虑隔间的状态(例如,是空的还是被占用的和持续多长时间)以及其它参数,这些都将在下面讨论。

隔间可能例如被正好通过它的另一个车辆占用,或者集装箱存放在其中。注意,根据某些实施方案,车辆属性(例如,是否装载有集装箱,车辆高度-例如高的车辆、低的车辆)可以确定其是否能通过被占用的隔间。

存储器54可以存储在执行各种实施方案的操作流程时由处理器生成或利用的各种数据。因此,例如,指定的数据可以包括(图5中未示出):

·一个或多个停泊船的到达时间;

·与(多个)起重机相关联的指定码头;

··(每船)上载的集装箱数量;

···每资源分派的车辆数量(例如起重机);

·饥饿标准,例如每一个或多个资源允许的一个或多个饥饿间隔时间和/或(多个)起重机的周期;

·设置资源类别类型之间的优先级,例如起重机具有比卡车更高的优先级(例如,假设起重机的运行成本显著高于卡车的运行成本)。

可以存储在数据库54中的其他数据例如是:

·资源饥饿时间向量,如下面将要更详细说明的,其存储用于计算各种资源(例如起重机)的饥饿程度的数据,以便将车辆适当地分派给起重机并减少或消除资源的饥饿时间

·资源服务队列(rsq)数据结构,其存储关于车辆分派给资源的数据,这些都将在下面更详细地说明

·隔间状态数据结构,其关于每个隔间存储表明隔间状态(例如空的或被占用)的数据,这些都将在下面更详细地说明

·资源的优先级清单,候选agc的清单和其他可能的清单,这些都将在下面更详细地说明。

这些数据可以通过通信模块55的传输来接收或例如输入到控制系统50(例如,每起重机分派的默认车辆数量)或由处理器51计算,这全部取决于数据的性质。本发明不受这些示例性数据的限制。

本发明不受指定数据的限制,因此可以添加和/或删除某些数据,并且可以修改其他数据。还要注意,在存储的数据的环境中,本发明不受任何形式的存储的限制。因此,作为例子,当使用给定数据结构时,其仅为了说明的目的而提供,并且可以使用任何本身已知的数据结构(或多个结构)。这适用于在本发明的各种实施方案中使用的其他形式的数据,例如清单(例如资源的优先级清单)。

作为图5中所示例子的替代方案,在一些例子中,系统50可以包括比图5中所示的更少、更多和/或不同的模块。作为图5中所示例子的替代方案,系统50的功能在一些例子中可以在图5所示的模块中被不同地分开。作为图5中所示例子的替代方案,本文所描述的系统50的功能在一些例子中可以被分成比图5中所示的更少、更多和/或不同的模块,和/或系统50在一些例子中可以包括比本文所描述的增加的、较少的和/或不同的功能。

牢记这一点,注意图6,其示出了根据本发明某些实施方案的机器人港口的一般操作流程的流程图(600)。机器人港口是用于在车辆和资源(例如,向/从船装载或取回集装箱的起重机)之间提供物体的运送服务的计算机化系统的例子。

在起始601处,从数据库54提取数据以确定例如为停泊船提供服务所需的资源数量,集装箱是被装载到船和/或从船取回(基于船特性,例如集装箱的尺寸、数量等等),资源类别类型(例如起重机或卡车)及其优先级,资源服务开始时间,其表明资源可以开始和服务于船的最早时间(基于船计划的停泊时间等),例如将集装箱从船装载到车辆或者将集装箱从车辆卸载到船上。

转到602,在提取了提供运送服务所需的资源(例如起重机,卡车)的数量和可能还有其身份以及它们的类型之后,资源可基于其类型(例如在运送服务中,起重机具有比卡车高的优先级)进行优先级排序。根据某些实施方案,对于每种类型,可以基于资源饥饿时间对资源进行优先级排序。将参考图8更详细地描述资源饥饿时间的确定。指定的优先级化步骤的结果是创建资源优先级清单,其可以存储在数据库54中,其中根据某一实施方案,资源被进行优先级排序,该优先级排序是基于资源的类型并且例如根据资源的饥饿时间以降序针对每种类型进行,其中最高优先级是被最差地预测的资源饥饿,产生资源的优先级清单)。本发明不限于这些例子,因此,其他参数可以表明资源的饥饿,例如,如果对于随后的x个服务周期,资源应该被分配x个车辆(关于此事参见下面参考图7和图8的讨论),目前被分配y<x(即它没有足够数量的车辆),则它可以被视为饥饿的资源,并且被恰当地并入资源的优先级清单中。在对资源进行优先级排序中可以考虑的另一个参数例如是以下情况:如果资源被分配了所需的x个车辆,但是它已经被第n(<x)个车辆及时地服务并且正准备被第n+1个车辆((n+1)<x)服务,但是在后者到达运送隔间进行服务之前被迫进行等待,则它也被视为饥饿的资源并被包含在优先级清单中。

本发明不受指定参数的限制,并且根据某些实施方案,取决于具体应用,可以采用其他参数来代替或附加到指定参数中的至少一个,和/或可以添加其他参数和/或可以结合影响优先级的各种参数。

作为例子考虑以下情景:资源a具有足够数量的分派给其的车辆(例如,从资源服务队列(rsq)数据结构获得的x-参见700)并且对于第n个车辆遭受了饥饿,第二资源b没有足够数量的车辆(即,它被分配y个车辆,y<x,x例如从资源服务队列(rsq)数据结构获得-参见700)并且所有车辆(车辆_1,车辆_2……车辆_y)都在所要求的时间到达(没有饥饿)。资源b“作为整体”仍然是饥饿的,因为它必须等待尚未分配给它的第y+1个车辆。因此,有两个要求:“找到”可以更快地服务于第一资源的车辆代替第n+1个车辆(即,减少或消除由于车辆n+1的延迟而导致的资源a的饥饿)和通过找到将作为第y+1个车辆及时到达并服务于资源b的车辆来减少或消除资源b的饥饿。

根据某些实施方案,如果n<y,则考虑到资源a将比资源b更早地遇到饥饿,资源a具有比资源b更高的优先级(在优先级清单中)。另一方面,n(<x)但>y,则资源b在优先级清单中具有比资源a更高的优先级,因为资源b将在资源a之前遇到饥饿。指定的优先级化考虑仅为了说明的目的而提供。

如上详细说明的,根据某些实施方案,饥饿时间的优先级化是重要的,这是基于以下考虑:当资源(例如起重机)可用于服务时,例如它已经或准备从停泊船取回集装箱,期望减少其在车辆到达运送隔间(例如,露台16-参见图1b)并且起重机可以将集装箱装载到车辆上以前的等待时间。期望减少或消除这种不必要的闲置等待持续时间(在本文中也称为资源的饥饿时间),以便提高其工作效率并由此节省运行成本。

根据某些实施方案,可以有影响资源在优先级清单中的优先次序的其他因素/参数,无论是在上面讨论的还是其他的和/或其组合,例如与以下特定的起重机为了提供运送服务所需的车辆数量相比,具有较少数量的分配给其的车辆的起重机(从资源服务队列(rsq)数据结构获得–参见700,在下面更详细地讨论)。

参数的另一个非限制性例子是在某些情况下由可能决定改变优先级的操作员调用的命令。例如,他可能会注意到,某辆卡车(具有比起重机低的优先级)等待时间太长而没有服务,并在起重机刚刚完成服务周期并准备好提供服务之前为该卡车手动地施加运送服务。

本发明不受这些例子的限制。

在对资源进行优先级排序,并假设清单不为空,即存在“饥饿的”资源之后,它们在603被从最高优先级开始以降序进行处理。如果清单是空的,即没有饥饿的资源,则该过程终止于604。

回到603,从下面参考图6描述的计算步骤其将是明显的,每个资源都被处理以分配给其车辆,以使得其提供运送服务(例如,在图1b中的运送隔间-16处)的饥饿时间将符合饥饿标准。

因此,如下面将更详细地讨论的,如果给定的资源在给定的服务周期在提供运送服务时“饥饿”了(即,分配给它的车辆的估计到达时间比起重机的服务开始时间晚),则尝试通过(从候选车辆中)选择可以通过最佳路径路线(例如,具有最小延迟的路径路线)并因此具有比当前分配的车辆更好的估计到达时间(eta)的车辆来减少或消除这个饥饿时间,如果是这样的话,则找到将“替换”先前车辆的车辆(在rsq数据结构中-参见图7),从而为这个特定的起重机和该指定的服务周期实现更好的性能和更少的(或没有)闲置时间。注意,确定最佳路径路线以符合饥饿标准(例如,消除饥饿时间)。最佳路径路线的饥饿标准显然胜过通过考虑到的任何其他假定路径路线实现的饥饿标准(例如,不能消除饥饿时间)。这将在下面参考图10更详细地讨论。

根据某些实施方案,关于每个服务周期和对于每个资源都执行该流程,并且该流程被重复执行以维持资源的有效利用。还要注意,根据某些实施方案,跳过指定的“强制”优先化阶段,并且以任意顺序或其他范例(例如fifo)来服务资源。

牢记这一点并进入步骤605,根据候选资格标准从多个车辆中确定至少一个候选车辆。在稍后的阶段,将从候选车辆中选择车辆。

车辆的候选资格标准例如可以是以下的至少一个:

·车辆被分类为备用车辆状态,即未分配其服务任何资源;

·车辆被分配给已分配有足够车辆的资源。例如,资源需要x个车辆,但是资源服务队列(rsq)数据结构列出了被分配给该资源的x+1个车辆,因此第x+1个车辆是多余的并且符合候选资格标准a;

考虑以下例子:第一艘船正在停泊,第二艘船尚未到达。

在这种情况下,在建筑物(多层结构14)内有许多备用车辆。

可能会将多于所需的x个车辆(手动和/或自动地)分派给停泊船-每个分派的车辆都被分类为忙的。

然后,如果起重机之一对于一个或多个给定服务周期变成饥饿资源,则冗余(忙的)车辆(即第x+1个车辆)可以符合候选资格标准并被分配给饥饿的起重机。

·车辆被分配给资源,并且将在其他车辆被分类为处于备用车辆状态中之前被分类为备用车辆状态。这个条件可能被满足,例如如果所述被分配给资源的车辆在所述其他车辆完成其运送服务之前完成对资源的运送服务;

·车辆是给定的车辆种类;如将在下面更详细地讨论的,车辆种类可以取决于物体(例如,集装箱属性)。例如,车辆种类可以是运载被指定给给定目的港口的(多个)集装箱的所有车辆。具有有利的与车辆候选资格相关的特征的车辆。

本领域技术人员很容易懂得,代替上面指定的符合车辆候选资格标准的参数和/或除了这些参数之外,可以有其他参数。还应该指出,可以基于两个或更多个参数(例如指定参数)的组合来符合指定的候选资格标准。

根据某些实施方案,有利的与候选资格相关的特性可以包括以下中的至少一个:

·候选车辆与非候选车辆相比具有较低的蓄电池电力;

··和与候选或非候选车辆相关联的较长假定路径路线相比,候选车辆与

包括(多层结构14的)第一数量的路径隔间和运送隔间的较短假定路

径路线相关联,其中较长假定路径路线包括比所述第一数量大的第二数

量的路径隔间和运送隔间。

··两个候选车辆具有相同的假定路径路线长度,但是第一车辆(其符合有利的候选资格标准)具有选自以下的更好的附加优点,包括与第二车辆相比,第一车辆具有较少的转弯,或者较少使用电梯隔间,并且具有比第二车辆更好的eta。指定的例子决不意味着限制。

·每个rsq上的第一车辆(其eta将为eta_1+eta_2)。如果它是第一个,那么它即将完成它的移动,并将在短时间内自由(除非它被标记为忙的以便下一次分配紧随其后)。

本领域技术人员将容易懂得,代替上述指定的参数和/或除了上述参数之外,可以有其他和/或修改的参数。还应当指出,可以基于两个或更多个参数(例如指定参数)的组合来符合指定的有利的与候选资格相关的特性。

在605中确定候选车辆的清单之后,在606对每个候选车辆进行处理,以便关于所考虑的资源选择便于减少或消除饥饿时间的车辆(即根据优先级清单进行处理)。注意,候选车辆是被分类为“备用”的车辆,但也可能是被分类为“忙”的车辆,其例如留在rsq数据结构中(参见下面参考图7的讨论)。因此,假设需要为给定起重机的未来的第n次服务周期(现在在第i次服务周期中服务(其中i<<n))选择最佳路径路线(和显然相关联的车辆),则在这个实施方案中,不仅可以考虑当前的“备用”车辆,而且也可以考虑当前“忙”的车辆,因为到第n次服务周期有效的时候,当前“忙”的车辆可能会由于它们将终止它们当前的“忙”的任务而变成“备用”。

因此,在步骤607中,从资源服务队列(rsq)数据结构700计算或获得服务于指定资源的候选车辆的粗略的估计到达时间(eta)。

粗略的估计到达时间例如可以计算如下:

1)确定车辆的开始时间以及当前隔间:确定车辆停放的当前隔间(例如在完成前一个任务因此车辆的状态变为备用之后),和将开始时间(初始eta)确定为前一个任务的结束时间;

2)计算到资源的x-y-z距离:即从当前隔间开始,确定车辆将沿着楼层的x-y维度通过的隔间数量和沿着z维度通过的隔间数量(从当前隔间的楼层至资源的楼层),并分配每隔间给定的(比方说默认的)路径持续时间。然后,粗略的eta将是初始eta+通过x-y-z距离的总路径时间。

注意,本发明不受后一个例子的限制。

然后,在步骤608中,对候选车辆进行分选,其中分选清单中的第一个是具有较小的eta或最接近所需eta的eta的候选车辆。后者将是资源的服务开始时间,即资源可用于提供运送服务的最早时间。

根据某些实施方案,跳过指定的步骤607和608,并且以另一种(例如任意)顺序处理车辆。

注意,关于每个候选车辆的估计eta仅是粗略估计,并且在随后的计算步骤610中,基于对车辆将从其当前停放隔间直到运送隔间为止穿越的路径路线的准确(或几乎准确)估计来计算精确eta,在运送隔间,在车辆和资源之间的运送服务实际发生。

现在转到步骤609和610,候选车辆被处理(例如根据分选清单),以便确定(多个)候选车辆将假定地通过的假定路径路线,其从当前停放隔间开始,移动通过一个或多个路径隔间(例如,如果车辆在多层结构14中改变了楼层,则可以包括例如(多个)电梯)直到到达用于在车辆和指定的起重机(现在正在根据资源优先级清单对其进行分析)之间提供运送服务的运送隔间为止。注意,当前停放隔间可以例如是备用车辆当前停放的隔间,或者例如是在当前任务结束时车辆将会停放(并且将其状态从忙的车辆改变为备用车辆)的未来隔间(例如,对于忙的车辆)。注意,指定的路径路线被指示为假定路径路线,因为只有符合饥饿标准的假定路径路线中的“最佳”路径路线(例如,实现最佳减少的饥饿时间)将被实际选择并最终“实施”,即将会(从分配给假定路径路线的所有其他车辆中)选择被指示通过该最佳路径路线的候选车辆。所选车辆将行驶通过最佳路径路线的隔间,并将到达用于提供运送服务的运送隔间。因此,最佳路径路线被选择并被“提交”,即被所选车辆实际使用(参见下面参考步骤612的进一步讨论),并且所有计算出的假定路径路线被“丢弃”并将不再被进一步考虑。然而,注意,可能有下面仅作为例子讨论的情况,其导致丢弃最佳路径路线并分派新的路径路线,该新的路径路线又将变成最佳路径路线。

牢记这一点,并回到步骤609和610,对于每个处理过的候选车辆,分析一个或多个这样的假定路径路线,并确定各个路线的车辆的假定eta(例如记录-但不“提交”-见下面的步骤612)。最终,在611从所有候选车辆的所有假定路径路线中选择最佳路径路线(及其相关联的车辆)。最佳路径符合饥饿标准,例如与被任何其他假定路径路线实现的与资源相关联的假定减少的饥饿时间相比,实现了与资源相关联的最佳假定减少的饥饿时间。根据某些实施方案,最佳减少的饥饿时间消除了饥饿时间,以使得资源不必在闲置状态中等待直到车辆准备好进行运送服务为止。

指定的饥饿标准可以例如是假定饥饿时间的消除,将其假定地减小到最小值,或者假定地落入允许的饥饿间隔内等等。

将在下面参照图9和10更详细地描述用于确定最佳路径路线和车辆选择的操作流程。

从下面参考图9和10进行的描述中显而易见的是,候选路径路线的确定可以考虑隔间的状态(例如,是空的还是被占用的),和利用隔间状态数据结构。

如果确定了多于一条最佳路径路线,例如,有两条或更多条最佳路径路线,它们全部实现了饥饿时间的最佳减少或消除,则根据车辆最佳路线决策标准选择其中的一条。

根据某些实施方案,车辆最佳路线决策标准包括以下中的至少一个:

(i)与未选择的车辆相比,所选车辆具有较低的蓄电池电力;

(ii)与路径路线的较长最佳路径路线相比,所选车辆与包括第一数量的路径隔间和运送隔间的所述最佳路线的较短最佳路径路线相关联,其中较长最佳路径路线包括比第一数量大的第二数量的路径隔间和运送隔间,和

(iii)符合“即时”标准,例如当两个最佳路径路线都达到饥饿标准时,其中两个最佳路径路线都消除了给定服务周期的资源的饥饿时间,但是与第一最佳路径路线相关联的车辆在资源可用于服务之前假定地到达运送隔间x时间单位(例如,秒),而第二“最佳路径路线”的车辆在资源变得可用于服务之前假定地到达y时间单位(例如秒),并且进一步假设y<x,则第二路径路线符合指定的最佳路径路线标准,因为与第一路径路线的车辆的到达时间相比,其相关联的车辆及时到达(即,具有较小的等待“闲置”时间),这是因为第一路径路线的车辆(由于其较早的到达时间)在资源变得可用之前被迫等待较长的时间。

(iv)所选车辆通过最佳路径路线,其具有比其他最佳路径路线有利的最佳路径路线特性(例如较少量的转弯)。

注意,本发明不受指定条件的限制,因此可以被修改,和/或代替指定条件或除了指定条件之外,可以添加其他条件。

如步骤612中所示,一旦车辆被选择(其具有相关联的最佳路径路线),车辆的数据就可以被更新(即,提交),而与所有其他假定路径路线相关的数据都可以丢弃。因此,根据某些实施方案,资源服务队列(rsq)数据结构700被更新(例如,车辆id,其计算出的通过最佳路径路线到达运送隔间的估计到达时间等–参见稍后在下面参考图7的讨论)。

车辆在rsq中被标记为忙,或者如果需要,在不同的数据结构(未示出)中被标记为忙,并且更新所谓的隔间状态数据结构。关于每个隔间(例如图1c的124)存储的隔间状态数据结构是表明隔间的一系列临时占用状态的隔间状态。因此,根据某些实施方案,可以用临时占用状态更新构成最佳路径路线的隔间的隔间状态,其中临时占用状态对应于隔间将被占用的时间点和持续时间(其是行驶通过最佳路径路线的所选车辆计划到达并通过该隔间的时间)。将在下面参照图10和11进一步讨论隔间状态数据结构的临时占用状态的更新。

注意,临时占用的指定表示,即隔间被占用的开始时间和持续时间,仅是例子,其他表示也可能是适用的,例如隔间为空的时间点和持续时间。另一个例子是隔间停用的时间点和持续时间(例如正在进行维护)等。还要注意,指定的临时占用状态可以取决于各种情况,例如,给定类型的隔间可以同时容纳两个车辆,因此如果给定的车辆通过隔间,则其状态可能仍然是“空的”,便于另一车辆在基本上相同的时间的路径。附带地说明,根据某些实施方案,可能存在不同(和可能不同的)类型的隔间。

rsq数据结构和隔间的状态数据结构的更新仅仅是这种提交动作的例子,并且根据各种实施方案,可以根据特定应用来更新指定数据的修改和/或考虑其他数据。这将在下面参照图9和10更详细地讨论。其他数据可以根据需要酌情更新。

进入步骤613,询问车辆是忙的还是处于备用状态。在后一种情况下,它在614中被分类为忙。顺便说明,根据某些其他实施方案,取决于具体应用,车辆还可以具有可以被利用的另外的状态,例如充电、故障、空载/装载中的至少一个。

然后,在615将最佳路径路线特性(例如路径隔间及其穿越时间)发送到车辆以供处理器和存储器存储和使用。

可以发送其他数据,例如集装箱类型,集装箱id,集装箱重量,目的隔间和/或目的资源等。

在616车辆开始根据最佳路线规划移动通过隔间,并且在指定的时刻通过每个路径隔间(其可以包括例如电梯)。为清楚起见,将参考图11来对其进行举例说明。

在到达运送隔间并提供运送服务时,车辆在617再次被分类为备用,并且指定车辆的记录代表信息被从rsq数据结构中移除。

因此,可以更新车辆到达运送隔间的eta(例如,在rsq数据结构中)。这可以触发对饥饿时间的检测,所有这些都将在下面参照图8更详细地讨论。

现在回到询问613,如果车辆忙(618),则最佳路径路线特性(例如路径隔间及其空置时间数据)被发送到车辆,并且将在车辆变成备用车辆时被及时使用(通过步骤614至617)。

注意,当车辆结束其当前任务时,它将再次变得可用(其状态变为备用),并且当它被选择并被分配给未来任务的最佳路径路线(如上详细描述的)时,其状态将再次变成忙。

注意,可以关于资源的每个服务周期应用符合资源的饥饿标准的车辆最佳路径路线的具体确定,例如,期望关于其每个服务周期减少或消除资源的饥饿时间。

注意,根据参考本发明的各种实施方案描述的计算步骤,控制系统的执行时间可以是大约几分之一秒。在这个相对短的时间间隔期间,确定最佳路径路线并选择通过最佳路径路线的车辆,以便在一系列资源服务周期期间向资源提供运送服务,同时符合饥饿标准,例如将预测的资源饥饿时间保持为零或接近零。相比之下,在机器人港口中实际实施该方案,即所选车辆在适当的时刻沿着指定的路径路线移动并在车辆和资源之间提供集装箱的运送服务(无论是装载或卸载集装箱),每服务周期是大约几分钟,或甚至几十分钟。因此,容易出现下列情况:如果一切都按计划进行工作(例如,没有发生来自用户端的中断,起重机操作员没有发生错误,在任何所选的车辆中没有遇到任何故障等等),则实际上可以实现这样确定的最佳路径路线,并且每个资源周期的资源饥饿时间可以保持为零或几乎为零。在这些情况下,根据图6的实施方案,由于不需要修改这样算出的将车辆分配给资源的计划,从而使每个资源服务周期的资源饥饿时间是最小的,所以避免了进一步执行602之后的所有步骤。在例如中断了机器人港口的最佳操作并因此关于至少一个资源的至少一个服务周期生成了饥饿时间情况下,可以再次调用指定的操作流程(步骤602及后面的步骤)。该饥饿事件将被遇到(例如,在下面更详细地讨论的步骤807中),并且将最终触发图6的计算步骤的操作以纠正这种情况并减少或消除如此显露的饥饿时间。这可能需要计算一个或多个新的最佳路径,关于至少一个资源将一个或多个车辆不同地分配给一个或多个服务周期,这全部都根据需要酌情进行。因此,作为例子,如果车辆应该使用的电梯被阻塞,或者由于操作人员干预,它被用于其他东西,则更新该隔间的eta(在步骤616中),这显然延迟了到达运送隔间的eta使其晚于计划,从而产生饥饿(这将在图8的步骤807中显示,参见下面的讨论)。饥饿将触发最佳路径的确定(如上所述,在假定路径路线中执行图6的计算步骤),其中可能识别具有应对这样遇到的饥饿的eta的另一车辆,从而立即“更新”操作。注意,在某些实施方案中,如果当前分配的车辆遇到延迟(比方说由于故障延迟),则尽管存在延迟(并且可能不再符合最佳路径路线条件),但它仍可继续执行任务。这可能会发生,例如,如果没有足够的车辆,或者如果车辆已经运载了必须被运送到起重机以将其装载到船上的集装箱。根据具体应用,其他情况也适用。后者是维持最佳路径路线的条件的一个例子,即使它不再立即符合饥饿标准。

这可以例如在步骤603中实现,其中没有找到其他具有较低优先级的候选车辆来代替指定的车辆,然后移动到步骤604(结束),结果是当前车辆保留在其任务中。

还应注意,根据某些实施方案,如果控制器50的操作不会收敛以消除资源的饥饿时间,或者经常遇到一个或多个服务周期的一个或多个资源的饥饿时间,则可以将额外的一个或多个车辆加入现有的车队,以应对这个问题。

在某些实施方案中,当遭遇事件但尚未到遭遇饥饿的程度时,例如,在步骤610和后面的步骤中的操作流程被调用。因此,例如,如果一系列的临时占用状态(或多个状态)表明(如此确定的最佳路径路线的-上面讨论的)给定隔间被从某个时间点开始占用了给定的持续时间,并且它证明这些数据与车辆到达隔间的实际到达时间和/或通过隔间的行驶持续时间不一致,(例如,车辆到达给定隔间的eta延迟或提前[由于事件]比方说x时间单位),则重新调用指定步骤610和后面的步骤将纠正隔间状态数据结构以反映一系列临时占用状态(多个)的更新。考虑例如被指明在一eta到达运送隔间的车辆,该eta比给定服务周期的期望服务时间的eta早比方说5秒。如果由于事件而导致到达给定隔间发生2秒的延迟,这导致在运送隔间处的延迟小于5秒,则不会遇到饥饿,但仍然不会更新临时占用状态,因此相应地调用步骤610可导致隔间状态数据结构的更新。步骤610及后面步骤的使用当然是一个例子。后一个例子的x可以根据具体的应用来确定。

虽然参考图6的描述涉及确定行驶到运送隔间的车辆的最佳路径路线,但其也适用于(加以必要的修改)从运送隔间(例如装载有从船取回的集装箱)向不同目的地行驶的车辆,例如用于将集装箱装载到卡车上或将集装箱存放在多层结构中的或与多层结构相关联的指定隔间或位置处的运送隔间。

现在转向图7,其示意性地示出了根据本发明某些实施方案的资源服务队列(rsq)数据结构700。因此,rsq(其可以存储在数据库54中)包括分配给资源的资源(例如起重机)车辆的标志。在本实施方案中,其包括资源id701,和根据被分配车辆的服务顺序,关于资源,表明被分配车辆的记录的清单。因此,记录702代表被指定为关于资源提供(或代表关于资源提供)运送服务的第一车辆。(记录702)的车辆可以在建筑物14的运送隔间例如将(多个)集装箱装载到起重机,或者可以从起重机卸载集装箱。下一个记录703代表分配给相同资源的另一车辆(并且它将在第一车辆完成其任务之后运送服务)等等,直到代表分配给该资源的最后一辆车辆的第n个记录704为止。关于该车辆的数据(例如记录702)在本例子中包括以下字段:车辆的id705,车辆到送运送隔间70的估计到达时间(eta)和可能的其他属性707,例如车辆种类。车辆种类可以基于各种参数确定,例如目的港口和/或重量范围(例如轻型集装箱或重型集装箱)。后者仅仅是集装箱参数的非限制性例子,并且代替指定的参数或除了指定的参数之外,可以添加其它参数。将在下面参照图8详细说明取决于例如集装箱参数的车辆种类的利用。

注意,与分配给给定资源的车辆相关的数据可以是先验地存储和在稍后使用时提取的(在步骤601中)。

还要注意,在分配给给定资源的车辆数量方面,可以根据符合一定的标准来动态地更新rsq数据结构。因此,例如,可以根据所需的服务质量确定用于给定资源的rsq中的车辆数量。例如,考虑具有数百个要取回的集装箱的给定的船,可以确定rsq包含7个车辆,以预先确保车辆被分配以在每7个服务周期期间提供集装箱运送服务,而对于例如卸载几千个集装箱的另一个集装箱船,每小时卸载集装箱数量的速率可能更高(由于例如使用用于较大的船的较先进的船至岸起重机或其他原因),因此对于rsq需要大的车辆缓冲量,即15个车辆以确保较高的起重机卸载和装载速率(起重机生产率)。另一个非限制性的例子可以是给每个资源分派较大量的车辆的情况,其中与可以分派较少数量的车辆的情况(例如当集装箱比较靠近船停泊的码头地存放在一起时)相比,需要装载到船上的集装箱(或其中一些)以彼此相对远的距离散布在建筑物周围。本发明不受这些例子的限制,并且根据特定应用,分派给每个资源的车辆数量可以改变。

根据某些实施方案,在关于给定资源不处理饥饿时间的情况下(例如由于装载或卸载集装箱的高峰需求),可以动态地增加rsq的大小,以便将更大量的车辆分配给指定的资源,或者在活动量低的情况下相应地减少车辆。很明显,rsq的大小可以(可能是动态的)根据诸如高峰或低需求的因素而变化。

一旦车辆完成了运送任务,并且其记录被从rsq数据结构中移除(例如,在图6的步骤617中),则可以例如通过重新执行参考图6描述的操作流程,向其分配新的车辆(并且将其数据记录添加到rsq数据结构)以维持所需的7个待定车辆。

如在上面参考图6描述的(并且将在下面的描述中进一步阐述),rsq可以被动态地更新。因此,如图6中所述,在从被指定通过最佳路径路线的候选车辆中选择车辆(步骤611)之后(例如,为了在给定服务周期减少或消除给定资源的饥饿时间),用于该特定资源的rsq数据结构被更新(步骤612),即将在rsq数据结构中在正确的位置更新代表所选车辆的记录(即,所选车辆的车辆记录将被存储在与该车辆应提供运送服务的服务周期对应的位置中)。

更新可以是例如通过用代表所选车辆的记录替换代表给定车辆的记录(包括车辆id及其相关联的eta),或者更新记录中的字段(在车辆已被分配给资源但例如其eta应该更新的情况下)。同样地,在完成运送服务时,从rsq清单中移除指定车辆的记录(步骤617)。

注意,本发明不受用于存储rsq的数据结构的限制(例如,具有记录的表),因此,可以利用除了指定的数据结构之外或代替指定的数据结构的其他(多个)数据结构。同样,本发明不受关于每个车辆存储的数据(图7中作为例子示出)的限制。其他数据也可以存储在rsq中,这全部都取决于具体应用。作为另一个例子,在车辆的顺序(例如车辆记录)对应于服务周期,并且因而可以确定其他数据结构和布置的场合,本发明不受使用的结构的限制,这全部都根据需要酌情考虑。

再次回到图6,可以想起,基于资源饥饿时间来对资源进行优先级排序(步骤602)。为了更好地理解该计算步骤,注意图8a,其示出了根据本发明某些实施方案的用于计算资源的饥饿时间的一般操作流程800的流程图。因此,操作流程800由图6的步骤602调用。尽管下面参照图8的描述涉及关于路径路线的饥饿时间的计算,但它可以适用于假定路径路线的假定饥饿时间,其中在后者中,候选车辆到达运送隔间的估计到达时间(eta)应当被解读为候选车辆到达运送隔间的假定eta。

牢记这一点,注意图8的步骤802。因此,在开始时(802),对分配给指定资源(具有给定资源id-例如起重机号码)的车辆数量进行合计。这通过访问存储在数据库(54)中的rsq数据结构(参见图7中的700,对于该特定的资源-由资源id标识)来执行。最初,该数量可以是例如通过运行模拟来任意设置或确定。例如,对于给定的存放装置,比方说对于i个车辆进行测试。例如分析模拟结果以查看服务质量是否良好,和是否发生饥饿时间,如果是,可以将车辆的数量例如增加到i+1等等。该分析可以应用于更复杂的情况,例如资源数量等。本发明不受这些例子的限制。

此后,在步骤(803)中,通过将值∞分配给每个单元,对该特定资源id的饥饿时间向量进行初始化。向量850在图8b中示意性地示出。如图所示,向量包括n个单元(其中标记了前两个851、852和最后一个853),每个单元都表示资源在给定服务周期的相应的饥饿时间。

服务周期数量n可以对应于向指定资源提供运送服务所需的车辆数量。因此,例如,如果所需车辆的数量为7,则这意味着在连续7个服务周期中应该分派7个车辆用于服务该特定的起重机。在每个周期#i中,起重机应该装载或取回(情况可能是这样)物体(例如,一个或多个集装箱,这例如取决于起重机和/或车辆的容量),并将其装载到应该停放在多层结构的运送隔间并计划在周期#i期间提供运送服务的车辆上或将其从所述车辆卸载。

如果在指定的7个服务周期的任一个中,起重机“准备好”执行其向(或从)车辆的卸载/卸载任务,而车辆还没有到达运送隔间,这可能导致起重机在该特定服务周期内的不适当的饥饿时间。图8a中的以下步骤将用于计算这个饥饿时间。

根据某些实施方案,关于每个服务周期独立地执行饥饿时间计算,即,如果关于比方说第五服务周期计算饥饿时间,则该饥饿时间值不是结转并增加到关于第六服务周期计算的饥饿时间,而是独立地且“从头开始”执行第六服务周期的饥饿的计算。基本假定是,如果对于第五服务周期发现饥饿时间,则将显著减少或消除(全部都将在下面讨论和举例说明),因此不必将其结转到随后的周期。根据某些其他实施方案,可以应用其他考虑,例如,可以在连续的(多个)服务周期中考虑给定周期的计算出的饥饿时间。后者示出了一个例子,其中所述计算给定服务周期的假定饥饿时间继续到至少一个后面的服务周期的计算出的假定饥饿时间。

转到步骤804,从分配给资源的车辆数量(其从rsq数据结构700获得)中减去该特定资源(例如在步骤601中提取的)所需的车辆数量以获得车辆的“缺少”或“过多”数量。注意,最初,很可能结果表明车辆的“缺少”,因为尚未将车辆分配给资源周期。如从下面的步骤810引起的,这将被图6的步骤602报告和解释为饥饿资源(并入优先级清单中),并且将如上面参照图6详细描述的那样被处理,以例如减少或消除资源的饥饿。后者减少或消除资源的饥饿可以例如通过分派额外数量的车辆直到符合每个资源所需的车辆数量为止来实现。

根据某些实施方案,一旦分派的车辆数量符合期望的车辆数量,则不会遇到饥饿。然而,某些事件可能会破坏这个平衡,例如一故障的车辆(其记录将从rsq中移除),导致该资源的“饥饿”状态(在步骤804中识别出缺少一个车辆),这将导致通过用新的车辆替代缺少的车辆来纠正这种情况。

在某些情况下,可能会向资源分配过多数量的车辆。例如,如果在建筑物中有一百辆车,而只有一艘船停泊在码头并由一台起重机服务,则可能为资源分派比实际所需的更多数量的车辆,或作为另一个例子,在预期到高峰需求的情况下(例如,预期多于平均值的起重机沿着该码头操作,导致来自船的更高的集装箱流),在整个码头先验地分派过多数量(超过平均值)的车辆。

因此,注意,饥饿标准可以取决于除了饥饿时间之外的参数,例如,如果分派的车辆的数量小于(每个周期)每个资源所需的车辆数量,则可能遇到饥饿标准。也可以组合指定的参数,例如,饥饿标准可以取决于饥饿时间和分派车辆的数量相对于每个资源(或资源服务周期)所需的车辆数量。

应当进一步注意,在某些实施方案中,rsq数据结构中列出的车辆记录的顺序(每个记录都代表给定的车辆)对应于起重机的服务周期。因此,例如,假定起重机迄今为止在40个服务周期中提供了用于装载/取回集装箱的服务,并且为此使用了40辆车辆(其中一些可能已被使用不止一次)。然后,对于随后的7个服务周期(第41到第47),对应的7个车辆将被分配以第一车辆记录(例如,在rsq数据结构中的702),其代表被分配用于在第41个服务周期中提供运送服务的具有最早eta的车辆,第二个车辆(具有第二早的eta)用于第42个服务周期等等。然而,注意,各种情况都可能影响车辆的估计到达时间,例如,尽管rsq清单中的第二车辆应该具有第二早的eta,但其eta已经不同(并已在eta字段中更新–如在下面将参照图9-10举例说明的)并且其现在比第六车辆的eta晚。

可能以指定的方式影响eta的例子是:功率损耗,不同的集装箱重量导致车辆的速度不同,未预期到的地面摩擦(下雨之后,或建筑物中的某个区域缺乏维护),另一车辆的故障,其被困在路上并导致交通拥堵和使运行减速,电梯之一发生故障,决定将车辆引导到另一地点的远程用户的干预等。

因此,为了以与服务周期的服务时间相对应的方式维护车辆的eta顺序,可能需要根据其实际eta对rsq中的车辆进行分选,以校验车辆的eta和适当的服务周期之间的对应性,以使得对于第一(最早的)服务周期,将分派具有最早eta的车辆,对于第二(第二早的)服务周期,将分派具有第二早eta的车辆等等。在相应地对eta进行分选之后,然后在步骤805,可以从最早的eta(到运送隔间)开始按升序对车辆进行排序。可能存在某些情况,其中805中的处理不仅基于eta顺序执行,而且受其他参数例如车辆种类的影响-参见下面的进一步讨论。因此,如以下举例说明的,805中的指定询问适用于每个车辆种类的从最早eta预定的eta,即给定种类的所有车辆首先被处理,然后处理另一种类的车辆等等。例如从rsq数据结构中的车辆记录的eta字段中提取eta。

通过该实施方案,分选步骤因而导致车辆#(在分选的清单中)与起重机的指定服务周期#之间的对应性。

注意,根据某些实施方案并且如下面将更详细地说明的,车辆的分选仅适合于具有相同车辆种类(例如按照集装箱参数)的车辆。

然后,在806中,关于车辆的饥饿时间在从清单中的第一个(最早到达的车辆)开始的循环中被处理,并且对于循环包含的每个车辆询问(807)在该车辆的eta(其是从rsq数据结构中的车辆记录的eta字段提取-可能关于当前时间now()被标准化)和这个(比方说第n个)服务周期的资源服务开始时间(服务周期时间资源_id*(n-1),其中服务周期时间资源_id表示资源_id标识的资源的每个周期的服务持续时间)之间是否存在(例如,第n个车辆的)估计的饥饿时间。

转向分选清单中的第一车辆,询问(在807中)将确定第一车辆是否晚于起重机的(用于其第一个服务周期的)所需资源服务开始时间到达,和如果肯定,则将在饥饿向量850的第一单元851中记录(808)差值(代表第一个服务周期的饥饿时间)。在下一次迭代中,查询(在807中)将确定(分选)清单中的第二车辆是否晚于起重机的用于其第二个服务周期的所需资源服务开始时间到达,如果肯定,则将在饥饿向量850的第二单元852中记录差值(代表第二服务周期的饥饿时间),对于所有7个车辆以此类推。注意,根据某些实施方案,关于每个服务周期的饥饿时间是独立执行的,而不考虑关于先前的服务周期确定的饥饿时间。在某些其他实施方案中,关于给定周期确定的饥饿时间在后续周期的饥饿时间的计算中被推进并考虑(全部或部分地)。例如,考虑以下情况:关于给定服务周期的计算的饥饿时间不被处理,即没有选择车辆沿着(最佳)路径路线行驶,所述(最佳)路径路线符合饥饿标准,例如实现了减少或消除计算出的饥饿时间,这是因为所有车辆都是忙的,并且没有可以分配给该服务周期的单个车辆。这可能导致在计算后续周期的饥饿时间时考虑如此计算的饥饿时间。

现在回到步骤807,对于(例如来自所述7个车辆的)任何车辆#n,通过用(ii)车辆的eta减去(i)该特定资源的第n个服务周期的资源服务开始时间(通过用该起重机的服务周期时间乘以周期的数量(n-1)),来计算饥饿时间[n]。

然后将饥饿时间结果记录在饥饿向量中。

输出将是代表每个资源的每个服务周期的饥饿时间的饥饿向量,和rsq中缺少的车辆数量(参见步骤809和810)。

显然,可以获得其他数据,例如在向量中积累的总延迟等,这全部都根据需要酌情进行。

可以想起,根据某些实施方案,资源的饥饿时间和可能的缺少车辆的数量可以用于对资源进行优先级排序(在向其分派车辆方面)。可以存在影响资源在优先级清单中的优先次序的其他因素,例如分配给其的车辆数量比所需数量少的起重机(例如如参考步骤804所讨论的)。同样如上讨论的,除了资源类型(如果有多于一种的类型)和/或指定的计算出的饥饿时间和/或缺少车辆之外,可以有影响资源的优先级的其他因素,例如操作员的手动干预,例如将较高优先级分配给等待服务过长的持续时间的较低优先级资源类型(例如卡车)。

另一个非限制性的例子是在高峰活动时的卸货码头,其中附近的另一艘船应在当前被服务的船之前离开,因此人为干预可以将起重机的优先级设置为高于当前被服务的船的起重机的优先级。

关于每个资源执行参考图8描述的操作流程,关于每个资源至少产生饥饿向量和缺少车辆的数量。注意,本发明不受指定的输出的限制,因此可以修改指定的输出,和/或可以添加其他输出,这全部都根据需要酌情考虑。

如已经参考图6的步骤602说明的,在被调用到用于关于每个资源计算饥饿向量和缺少车辆的数量的流程(如参照图8a-b所描述的)之后,可以对资源进行优先级排序。根据某些实施方案,资源的优先级排序按照预测的资源饥饿时间的降序执行,其中最高优先级是最差预测的资源饥饿,从而产生资源的优先级清单。

考虑例如三台起重机,每个被分配7个车辆。进一步假定在执行了参考图8描述的操作流程之后,产生以下输出:

与以下饥饿向量[0,0,5,0,0,0,0]相关联的第一起重机,与以下饥饿向量[0,0,0,4,2,6,3]相关联的第二起重机,和与以下饥饿向量[0,0,3,0,0,0,0]相关联的第三起重机。

根据某些实施方案,在利用资源优先次序的场合,资源优先级清单将如下构成:处于最高优先级的第一起重机,然后是第三起重机,最后是第二起重机。该顺序是考虑到下列事实而确定的:第一起重机在第三服务周期饥饿,其饥饿持续时间(5)比第三起重机的饥饿持续时间(3)更长,并且与第二起重机的较晚的服务周期(第四)相比处于较早的服务周期(第三)。注意,虽然第二起重机在四个连续的服务周期(从第四到第七)中饥饿,但是相对于仅在一个服务周期饥饿的其他起重机,它仍然被列为较低的优先级,然而与第二起重机的第四饥饿周期相比,所述其他起重机在较早的饥饿周期(第三)开始饥饿。本发明不受用于确定优先级清单中的优先级的指定标准(在较早的服务周期的饥饿)的限制,因此其他因素例如遇到饥饿的周期数量也可以影响优先级清单中的顺序,以及其他可能的因素。

在另一个例子中,来自上述例子的起重机2属于船a,起重机1、3属于船b。船a计划在一小时内离开,船b计划在当天结束之前离开。所以船a的服务更为迫切。

在另一个例子中,调用了操作人员的干预。因此,远处的操作员由于某些原因立即需要应该在第二起重机的次序[3]卸载的集装箱,因此它收到比起重机1和3更高的优先级。

本发明不受这些例子的限制。

回到图8,可以想起,根据其估计的eta对车辆记录进行分选(步骤805)。注意,根据某些实施方案,指定的分选针对车辆种类。

例如,考虑车辆将集装箱装载到起重机,起重机又将集装箱装载到船上的情况。船上的集装箱可以按照给定的顺序进行装载,比方说第一配额的集装箱被指定为在第一港口卸载(例如当船停泊在塞浦路斯时),第二配额的集装箱被指定为在第二港口(意大利)卸载。被指定给第一港口的集装箱应优选地堆放在船的给定存放区域,而被指定给第二港口的集装箱应优选地堆放在船的不同存放区域(甚至可能第二配额堆积在第一配额上面)。显然,优选地应该避免被指定给第二港口的集装箱堆放在被指定给第一港口的第一区域中的情况(因为这可能导致不希望有的情况,其中被指定给塞浦路斯的集装箱将在意大利卸载,或反之亦然)。在这个例子中,只有运载被指定给塞浦路斯的集装箱的车辆应首先分派给起重机,并装载所有被指定给塞浦路斯的集装箱,然后将运载被指定给意大利的集装箱的车辆分配给起重机(并且从那里例如存放在船中的不同位置)。因此,在步骤805中,给定种类的车辆(例如,运载被指定给第一港口,或指定给第一港口并具有相同重量,或被指定给第一港口并具有相同重量和相同尺寸的集装箱)将被分选出来,忽略其他车辆,即使所述其他车辆具有优选的eta,并且只有在完成对指定车辆的处理并计算出相关的饥饿时间(如上面详细讨论的)时,这时才会关于另一种类的车辆重复该过程(例如,运载被指定给另一港口的集装箱或将具有不同重量级别的集装箱运载到同一港口)。注意,已经仅为了说明的目的提供了处理不同种类的车辆的具体例子(例如,取决于集装箱参数,其例子在上面讨论了,例如集装箱的目的地和/或重量级别和/或尺寸等),因此,集装箱参数例如被指定给不同地点的集装箱不一定需要将车辆划分为不同的种类。

可能(单独地或与其他参数结合地)影响车辆种类的另一个集装箱参数例如是集装箱重量。因此,例如,所有较重的集装箱应首先堆放,较轻的集装箱应堆放在较重的集装箱之上。可以有影响车辆种类的其他参数(集装箱参数和/或其他参数),这全部都根据需要酌情考虑。

再次回到图6,在构建了资源优先级清单和确定候选车辆的清单(全部如上所述)之后,需要确定假定路径路线(关于每个候选车辆-参见图6中的步骤609),并(从假定路径路线中)确定符合饥饿标准(例如实现最佳减少的饥饿时间)的最佳路径路线(参见图6中的步骤610-612)。根据某些实施方案,必须关于每个资源的每个服务周期执行该计算。

关于这一点,注意图9和图10,图9其示出了根据本发明某些实施方案的用于计算假定路径路线的一般操作流程的流程图,图10示出了根据本发明某些实施方案的用于计算车辆的最佳路径路线的一般操作流程的流程图。因此,根据某些实施方案,可以从图6的步骤610调用参考图9和10描述的操作流程。

转到图9,根据某些实施方案,首先确定候选路径路线(901)。根据某些实施方案,候选路径路线可以是基于本身已知的技术确定的最短路径,例如用于在图中找到最短路径的宽度优先搜索(bfs),其中所述图比方说由建筑物14的隔间构成,并且如此确定的路径从当前隔间(其容纳或将容纳候选车辆)开始,并且在提供运送服务的运送隔间结束。注意,顺便提及,确定最短路径路线可以用于确定对应的假定路径路线,并且不一定意味着该路径将会取得符合饥饿标准(例如(对于给定的服务周期)实现最佳减少的饥饿标准)的最佳路径的资格,原因简单地在于在通过路径路线中的一个或多个路径隔间时可能存在延迟。因此,例如,如果最短路径仅包括四个隔间,但是其中一个是电梯隔间,则车辆可能被迫等待较长的时间,直到电梯空出并允许车辆使用它为止,因此最短路径路线不如较长的路径路线(比方说,包括6个隔间),但在每个隔间中具有较少的延迟。本发明不受最短路径计算的使用的限制。

现在转到步骤902,如参考图10更详细地描述的那样计算最佳路径。该过程从所有可能的候选路径路线上的循环1002(例如在步骤901中确定的)开始,并且关于每个候选路径路线执行以下步骤。

在继续之前,根据某些实施方案,提供了隔间的状态数据结构(图10中未示出),其可操作以关于所述多个隔间中的每个隔间存储表明隔间的一系列临时占用状态的隔间状态,和其中每个所述计算出的假定路径路线的假定估计到达时间(eta)的确定考虑了假定路径路线的隔间中的每个隔间的隔间状态。所述系列中的每个临时占用状态可以分别表明所述隔间变成被占用或空的时间点和持续时间。

因此,作为例子,如果假定路径路线包括候选车辆可以通过的某个隔间,则测试隔间状态以确定该特定隔间的假定eta。假设用于当前隔间i的车辆的假定eta为t1。例如,如果隔间i的临时占用状态表明隔间是空的,比方说,从时间点t0持续δ0的时间,以使得t0<t1(意味着隔间i在车辆的假定eta之前变成空的),并进一步假设空的持续时间δ0>>δ1,其中后者是候选车辆通过隔间i所需的穿越时间,以使得t0+δ0晚于t1+δ1,这表明候选车辆可以立即使用隔间,并且候选车辆的假定eta可以被更新为新的假定eta(t1+δ1)。隔间i的(一系列临时占用状态中的)下一个临时占用状态可以表明从时间点t0+δ0开始持续比方说δ2的时间,隔间都是空的等等。

继续这个示例性情况,候选车辆在假定的eta=t1+δ1到达假定路径路线的下一个隔间(隔间i+1)。假设隔间i+1的(所述一系列的临时占用状态中的)临时占用状态表明隔间i+1将在t2>t1+δ1时变得可用,即它将在时间点t2变为空的并持续一段时间δ2,其中时间点t2晚于车辆到达隔间i+1的eta。换句话说,当候选车辆计划假定到达隔间i+1时,该隔间被占用。它可能被占用,是因为例如计划让另一辆车在该持续时间中使用它,或者例如它可能存放了阻挡隔间并且不允许候选车辆通过的集装箱。本发明不受指定例子的限制。

继续这个例子,对于隔间i+1的车辆的假定eta可以被更新为t2+δ1(其中t2是隔间将变空的时间点,其从隔间的临时占用状态获得),δ1是隔间i+1的假定穿越时间。

注意,尽管在这个例子中,两个隔间的假定穿越时间是δ1,但当然不一定总是这样。例如,规则隔间的穿越时间(作为使用时间的一个例子)可能比电梯隔间等的穿越时间短。

过程继续进行,直到确定了候选车辆在假定路径路线的运送隔间处的假定eta为止。

注意,隔间的临时占用状态的表现不一定表明隔间何时是空的,但是例如可以表明隔间何时被占用。此外,指定时间点和持续时间用作临时占用决不是限制。

注意,只要计算与假定路径路线有关,则不更新关于构成假定路径路线的隔间的临时占用数据。如从下面的描述变得明显的,构成路径路线的隔间的临时占用数据将仅在假定路径路线变成(“被提交的”)所选的最佳路径路线时在隔间状态数据结构中进行更新-参见图6的步骤612和下面参照图10进行的说明。

牢记这一点,注意图10。

因此,为了确定关于每个假定路径路线的车辆的估计到达时间(eta),在1003确定容纳候选车辆(其与当前被处理的假定路径路线相关联)的当前隔间以及到达该隔间的假定eta起始。注意,当前隔间可以是这样的隔间,在该隔间,候选车辆可能在未来(例如当它终止其当前任务时)假想地开始其通过假定路径路线的行程。然后,eta起始将指定候选车辆计划假定地到达隔间的未来时间点。

记录用于该起始隔间的当前时间标签t起始,并将eta设置为该值(将会记录将在稍后阶段激活的(例如,用于未来服务周期的)路径路线的未来开始时间),然后在1004对这样假定的路径路线的所有路径隔间进行如下处理:

对于路径隔间中的每一个:在1005确定、利用隔间状态数据结构,特别地,当前隔间的相关临时占用状态(其例如表明相关隔间被占用或空的时间点和持续时间,不论情况如何),路径隔间变空的最早时间,记录这个较早的时间标签,并相应地在1006更新候选车辆的估计到达时间(eta)(例如,在数据库54中)。然后,在1007关于路径的下一个隔间执行类似的计算,等等,直到以类似方式处理运送隔间为止,从而确定通过当前处理的假定路径路线的车辆的假定估计到达时间(1008)。利用如此确定的假定eta来确定当前被处理的假定路径路线的资源的假定减少的饥饿时间,这全部都如上面参照图6和图8详细讨论的。注意,在该实施方案中,关于给定资源(例如起重机)的给定服务周期计算饥饿时间。还要注意,这只是临时的计算,所获得的这个假定路径路线的假定减少的饥饿时间还没有被“提交”并且随后记录在rsq向量中(例如700),并且类似地,不更新隔间的状态向量,因为关于所有假定路径路线进行类似的计算,而只有符合饥饿标准(例如实现最佳减少的饥饿时间)的假定路径路线才会被选择并记录在rsq数据结构中,并且构成所选最佳路径路线的隔间的对应的临时占用数据将在隔间状态数据结构中被更新(在步骤612中)。继续,在步骤1009中,(从假定路径路线中)确定最佳路径路线,以使得符合饥饿标准,例如与通过任何其他假定路径路线实现的与资源相关联的减少的饥饿时间相比,它实现了给定服务周期的与资源(例如,指定的起重机)相关联的最佳减少的饥饿时间。如可以想起的,将饥饿时间(关于给定资源的给定服务周期)计算为从资源服务开始时间开始并终止于到达运送隔间的车辆的eta(如在步骤1008中计算的)的时间间隔,假定资源(起重机)在该时间间隔期间等待车辆以提供运送服务。注意,本发明不受如图10中所示的指定操作流程的限制。因此,作为例子,将应用以下修改的流程来代替确定候选路径路线和从候选路径路线中确定最佳路径路线。因此,根据某些实施方案,关于每个候选车辆确定一个或多个假定路径路线,并从它们之中确定最佳本地候选路径路线(对应于给定候选车辆),其中最佳本地候选路径路线符合本地饥饿标准,例如实现本地最佳减少的饥饿时间。然后从所述本地最佳候选路线中确定最佳路径路线。

根据某些实施方案,隔间状态数据结构包括至少两种类型(例如两种数据结构类型),每种类型取决于不同的车辆属性。属性的例子例如是装载有(多个)集装箱的车辆,或者空载的车辆。继续这个例子,在某些实施方案中,空载的车辆可以通过被占用的隔间(例如,在图3中的支撑件32下方),而负载的车辆不能这样做。与不能通过这种被占用的隔间直到其空出的负载车辆相比,这对于空载车辆来说可能扩大了选择甚至被占用的隔间的选择,所述被占用的隔间形成候选路径路线的一部分。显然,在这个例子中,对于负载车辆来说,“被占用”的隔间确实被认为是被占用的(直到变空为止),但对于空载车辆来说,其被认为是“空的”(即允许空载车辆容易地利用它们)。负载或空载车辆仅仅是可能影响下列决定的车辆类型的例子,即给定类型的车辆是否可以通过被占用的隔间。再次回到图6,如上面已经描述的(参见图6的步骤612),在确定了最佳路径路线(如参照图10所描述的)之后,选择相关联的车辆并且用车辆数据更新rsq。例如,代表所选车辆的记录将在rsq数据结构中在正确的位置进行更新(即,所选车辆的车辆记录将被存储在与该车辆应提供运送服务的服务周期相对应的位置中)。该更新可以例如用代表所选车辆的记录替换代表给定车辆的记录(包括车辆id及其相关联的eta),或者在存储于rsq数据结构中的车辆记录对应于所选车辆但eta已经得到改善(导致饥饿时间的减少或消除)并相应进行更新的情况下更新记录中的字段。所选车辆可以被分类为忙的(对于指定的最佳路径路线的持续时间),并且最佳路径路线的路径和运送隔间可以通过适当的临时占用状态(在隔间状态向量中),例如通过存储当所选车辆通过如此确定的最佳路径路线的隔间时所述隔间将被占用的时间点和持续时间,来进行更新。参考图6的描述进一步描述了在所选车辆利用(例如穿越)最佳路径路线的隔间时执行的操作流程。在继续之前,应当注意,各个图6、8、9和10中的每个操作流程中的一系列计算步骤仅为了说明的目的而提供,而决不是限制。因此,在任何指定的流程中,某个(些)阶段可以被修改或删除,并且可以添加其他阶段和/或可以修改一些步骤的顺序,这一切都取决于具体的应用。

在继续描述参考图11a-f的例子之前,应当注意,并且如参考处理器50(参见上面的图5)所讨论的,例如参考图6至10讨论的操作(或其一部分)可以在位于车辆外部的处理器执行,或者(加以必要的修改)在留在车辆中的处理器执行或者在车辆处理器和车辆外部的处理器之间进行划分。车辆外部的处理器可以位于远处、本地或两者均有,这取决于具体实施方案。

接下来描述某个实施方案,其中操作部分地在车辆处理器执行。在该例子中,处理器51代表留在车辆上的处理器,也代表留在车辆外部的处理器。

回到图6:

在步骤601中:控制器可以向车辆连续发送资源(例如起重机,amazontm的工作站)的状态,然后车辆可以各自计算和决定(在处理器51中)它应该移动到哪个起重机-全部按照步骤601中规定的。

可以利用处理器51的计算在车辆上执行步骤602至604。

在步骤605中:每个车辆可以根据车辆候选资格标准确定它是否是候选者。每个车辆可以将结果发送到远程控制器(例如候选者/无候选者)。

在步骤607中:车辆可以计算粗略的eta(每个车辆例如利用为此做出的建筑物地图,其例如存储在本地数据库54中)。在步骤608中:所有(候选)车辆可以向远程控制器发送它们的粗略的eta并且远程控制器可以仅对相关车辆返回继续到“609”的请求。

在步骤609中:每个相关车辆可以执行步骤610。

在步骤610中:每个车辆可以利用建筑物地图来实施它。注意,车辆接收(参见601步骤)起重机/工作站rsq,因此它可以计算符合饥饿标准的最佳路线。

在步骤611中:每个车辆可以将其结果发送到远程控制器,并且远程控制器可以选择与最佳路径路线相关联的车辆。然后控制器可以向所有车辆发送决定,因此它们知道哪一个车辆被选中。在某些实施方案中,控制器可以将结果发送到与最佳路径路线相关联的车辆。可以在车辆和远程控制器端执行步骤612。

步骤613至615:可以在车辆上的车辆端执行。

步骤616和616可以在远程控制器处执行。

转到图8:

在步骤802中:如果远程控制器向所有车辆连续发送每个rsq,则该步骤可以在每个车辆执行

步骤803至805可以在车辆端执行(例如利用存储在rsq的参数“忙”):

步骤806可以由车辆(每一车辆)执行,并且可以在车辆中执行后面的步骤807和808。

参考步骤809:现在通过(在车辆端计算的)该车辆的结果在远程控制器上更新rsq,以使得当调用步骤802时更新rsq。

现在转向图10,假设所有车辆还拥有代表建筑物的全部隔间的动态数据库(例如在数据库54中),并且从远程控制器接收它们,于是参考图10描述的各种操作步骤也可以在车辆端执行。一旦确定了最佳路径,控制器就回到图6路径,并且关于如此确定的最佳路径路线的决定被发送到与其相关联的所选车辆(611/612)。

注意,本发明不受上面参考图6、8或10中的任一个描述的指定的一系列动作的限制,所述动作在车辆处理器(和诸如数据库和通信的相关模块)和车辆外部的处理器(和诸如数据库和通信的相关模块)之间进行,其仅为了说明性目的而提供。根据某些实施方案,由至少一个车辆处理器(和诸如数据库和通信的相关模块)部分地执行的动作的其他实现方式也是可应用的,和/或可以在车辆外部的处理器(和诸如数据库和通信的相关模块)执行。

还应当注意,本发明不受关于本发明的各种实施方案描述的指定数据结构的限制。因此,根据某些实施方案,可以利用与车辆相关的数据结构(并且例如存储在数据库54中)。

根据某些实施方案,接下来结合图6、8和10描述使用指定车辆数据结构的各种操作流程。

图6:

步骤601:更新字段5中的数据;对于每个rsq字段,利用来自控制器的关于rsq中的每个车辆的更新数据(id,eta,属性)更新rsq数据结构。

步骤602:更新字段5中的数据-通过车辆本身根据图8的指令对rsq字段的清单进行分选。

步骤605:检查字段1和字段2,并将结果发送到控制器-候选者或非候选者。

步骤607:利用来自字段6的数据更新字段4中的数据(例如当前检查的rsq的车辆eta)-更新车辆当前正在将其自身作为候选者检查的rsq的服务周期的eta。注意-字段4也可以是计算的结果并且是可选的。

步骤608:将来自字段4的数据发送到控制器

步骤610:利用字段6更新字段2中的数据(例如,eta,路径)

步骤612:更新字段1(例如忙)

步骤613:检查字段1

步骤614:更新字段1中的数据

图8:

步骤802:检查字段5

步骤803-804:使用字段5中关于每个rsq的每个车辆的数据执行所需的计算

步骤805:对字段5进行分选

步骤807:利用字段5中的车辆的eta数据进行计算。

图10:

所有这些都可以通过检查字段6(用于大多数更新的建筑物地图),字段1(用于时钟)和字段2(用于设置理论路径和时间直到它被设置(如果被选择/当被选择时)为止)来完成。

参考图6、8和10的指定操作流程仅为了说明的目的而提供,决不意味着限制。

牢记这一点,现在将仅作为例子参考图11a-f描述根据本发明某些实施方案的系统的操作。注意,下面参考图11的描述仅为了说明的目的而提供,决不意味着限制。因此,如图11a中所示,在将在码头1101停泊的船到达前,收集某些数据。注意,总的被标记为1102的其他车辆已经被预定(它们具有或将具有忙的状态)通过停放在多层结构(未示出)的运送隔间附近的起重机1104和1105来服务另一个船1103。总的被标记为1106的其他车辆被分类为备用并且可用于服务即将到来的船。如图6的601中讨论的,被收集并发送到控制系统50的数据(通过通信模块55接收,或从数据库54提取)例如可以包括:#从船上卸载的集装箱#,将被装载到船上的集装箱,在建筑物内将被装载到船上的集装箱的id。船的(预期)到达时间-随着时间的经过更新,直到船实际到达为止。卸载/装载过程的预期开始时间。沿码头停泊的预期位置-定义相关的运送隔间-随着时间的经过更新,直到实际停泊为止#将分配给船上的装载取回动作的起重机。集装箱的详细信息(目的地,尺寸,重量等)。控制系统50可以使用其他数据,例如:所需的从卸货码头退出的时间,分配给船/起重机的所需的#车辆,确切的起重机位置(车辆发送到哪里)-这可以在实际停泊后确定。这也可能会动态地改变-起重机在各排船之间移动。例如,已经完成从船上装载/取回集装箱的任务的起重机可以移动到不同的船,并且可以与服务新船有关地调用上面描述的整个操作流程。初始化命令使备用车辆移动到靠近船的预期停泊位置的位置。注意,后者可以作为初步步骤601执行,或者例如在稍后阶段执行(例如,在602对起重机进行优先级排序和/或在605确定候选车辆之后)。每个起重机的初始化饥饿向量(例如在数据库54中)如下。

为简单起见,描述假设一艘船应在码头1101处服务,为此使用两个起重机a和b(1110和1111,参见图11b),每个起重机都位于对应的运送隔间(未示出)附近。附带说明的是,起重机不一定与固定的运送隔间相关联,并且如果需要,可以在不同的运送隔间移动并提供(或者被提供以)运送服务。指定起重机的饥饿向量被初始化,例如,饥饿_向量_a:[∞∞∞......∞],饥饿_向量_b:[∞∞∞......∞],其中n1:起重机a所需的最小#车辆

n2:起重机b所需的最少#车辆

n1、n2可以任意选择,或者例如根据某些标准选择,例如遵照被执行以评估应分配给每个起重机的车辆数量的初步模拟。另一个例子是停泊位置-例如,用于在建筑物中存放从船卸载的集装箱的空的目标存放隔间远离起重机,因此需要更多的车辆来保持起重机繁忙,从而产生更大数量的所需车辆。在指定的模拟中可能考虑到后一种情况。

sa:服务_周期_时间_起重机a

sb:服务_周期_时间_起重机b

无论哪种情况,服务周期时间都可以相同或不同。

最终,希望符合饥饿标准,例如减少或消除饥饿时间,从而产生以下饥饿向量(在从候选车辆中选择车辆之后,将其分配给起重机的不同服务周期并确定实现饥饿时间的最佳减少或消除的最佳路径路线)。

饥饿_向量_a:[0,0,0,0......0]

饥饿_向量_b:[0,0,0,0......0]

后面的饥饿向量表示期望的最后阶段。

下面的描述说明了如何达到这个期望的结果。注意,由于各种情况(例如技术故障-或其他各种原因),指定的最后阶段(其中起重机的饥饿已被消除)可能会改变。

如上面已经讨论的,指定的开始步骤可以应用于所有起重机,使它们全部“饥饿”。然后,应用根据本发明的各种实施方案的指定的操作流程可以导致饥饿的消除和机器人港口的“平稳运行”,其中所有资源(例如起重机)被有效利用而没有延迟或只有非常小的延迟。

然而,如果遇到“故障”事件,例如发生故障的车辆或移动速度慢于预期的车辆(例如由于车辆之中的不均匀摩擦),发生故障的电梯隔间等,则由于根据最佳路径路线计划的车辆到达隔间(运送隔间和可能的(多个)中间隔间)的eta和车辆到达指定(多个)隔间的实际eta之间的差异,可能导致给定的起重机关于一个或多个服务周期产生饥饿状态。这将要求重新执行根据本发明的各种实施方案的指定方法,从而减少或消除新产生的饥饿事件。

牢记这一点并回到例子,将参考图11c和11d举例说明用于关于指定的服务周期将车辆分配给起重机a和b的操作流程。

暂时集中在起重机a的rsq数据结构上,并假设起重机a在时间tnow(资源服务开始时间是tnow)变得可操作,并进一步假设n=7(代表保证在连续7个服务周期中7个车辆的可用性的服务质量),于是最终rsq列出以下记录:

eta清单

车辆-1

eta:tnow

状态:空

车辆-2

eta:tnow+sa

状态:空

车辆-7

eta:tnow+6*sa

状态:空

其中“状态”是车辆属性的一例子,表明车辆是否为“空”(准备从起重机装载集装箱)。如可以容易地注意到的,第7车辆的eta应该是:tnow(起重机a的第一个服务周期的服务开始时间)+6倍sa,其中sa是起重机a在一个服务周期中提供运送服务所需的持续时间,6表示分派给前六个车辆的6个周期。

为讨论起见,假设在运行时间内可能发生延迟,因此在rsq数据结构中的第7车辆的记录表明两个服务周期的饥饿(即8*sa而不是8*sa),即:

车辆-7

eta:tnow+8*sa

状态:空

因此,两台起重机的饥饿向量如下:

起重机_a_饥饿_向量[0,0,0,0,0,0,2*sa]

例子:起重机_b_饥饿_向量:[0,......0]

其中如图所示,在饥饿向量的第7位置,表明了2*sa的饥饿时间。

应用操作的优先次序(例如步骤602和图8a)将导致起重机a具有比起重机b更高的用于将车辆与其关联的优先级。注意,根据某些实施方案,由于关于起重机b的任何服务周期没有遇到饥饿,所以不需要参照起重机b应用步骤603及后面的步骤。

因而集中于起重机a上,并假设在根据较短的假定路径路线标准应用了车辆候选资格标准之后(参见605),被矩形1112包围的车辆被分类为候选车辆,其中集群1113中的3个车辆是起重机a的候选车辆,而集群1116中的车辆是起重机b的候选车辆。其他车辆(集群1115中)分配给不同的船。

进一步集中在起重机a上,更复杂的候选资格标准可以将车辆(1)1120、(2)1121和(3)1122定义为候选车辆,例如,

车辆(1)即将完成起重机a的任务

车辆(2)处于备用状态;和

车辆(3)是起重机b的rsq数据结构中的过多的车辆。

注意,后者只是车辆候选资格标准的例子。

假设应用例如参照图9-10描述的最佳路径路线分析将导致如下结果:

(1)车辆1120的假定最佳(本地)路径路线(其与其他两条路径(2)和(3)相比也是最短的)将导致其立即到达,即eta(1)=tnow+0*sa=tnow

(2)车辆1121的假定最佳(本地)路径路线将导致其在eta=tnow+5*sa到达

(3)车辆1122的假定最佳(本地)路径路线将导致其在eta=tnow+7*sa到达

如可以想起的,由于在时间=tnow+6*sa时需要车辆,所以这导致了两条最佳(本地)路径路线(1)和(2),这两条路线都消除了第7服务周期的主要饥饿时间(2*sa)。

根据以下示例性车辆最佳路线标准,从两条最佳路径路线中选择路径路线2:沿路径路线(2)行驶的车辆1121的eta晚于沿路径路线(1)行驶的车辆1120的eta,或者换句话说,在起重机a变得可用之前,车辆1121等待的时间比车辆1120少。

注意,在后一例子中,首先,确定关于每个候选车辆(1120,1121和1122)的最佳本地候选路线,并且从指定的假定最佳本地路径路线中选择实现所述最佳的资源减少的饥饿时间的最佳路径路线。

本发明不受特定例子的限制。

还要注意,为了便于说明,描述了两个最佳路径路线(它们又是选自假定路径路线候选)之间的指定选择,因此根据某些实施方案,可以在“假定路径路线分析阶段”执行指定分析,跳过最佳本地候选路线的中间确定,导致最终选择的最佳路径路线。

继续到图11e,以下是用于说明如何从车辆1121的可能的假定路径路线中选择最佳(本地)路径路线(2)(eta=tnow+5*sa)的操作流程。图11e示出了每层具有7乘10个隔间的多层结构1123的平面图,其中车辆1121停放在比方说第6层的隔间1124(坐标为3,6)(也被标记为3,6,6),并且需要使用电梯(分别位于坐标(5,3),(5,6)和(5,9)),以便到达与起重机a1111相关联的运送隔间。

为简单起见,仅绘制了四个可能的路径-路径21、22、23和24,例如通过利用图9的操作流程来选择(在该例子中跳过步骤901)。

路径21具有最短路径距离,因为它需要车辆沿着第6层中的两个隔间行驶(从坐标(3,6,6)到位于(5,6,6)的电梯,然后沿着第五层中的另外五个路径隔间(从坐标(5,6,5)至(1,7,5))行驶),直到它到达运送隔间为止。

然而,如将在下面阐明的,最短路径将不会优于其他三个可选的候选路径路线。

计算每个路径的假定eta,并相应地更新隔间空位时间。

从路径21开始(通过遵循例如图10的计算步骤1004-1007),并且为简单起见,假设在下一个隔间[4,6,6]中没有遇到延迟(利用隔间状态向量),则处理路径中后面的隔间,即在第6层中的[5,6,6]处的电梯隔间。假设车辆在etat1到达电梯隔间[5,6,6],并且隔间状态数据结构中的临时占用隔间状态表明该电梯隔间的占用持续时间=[1,180]。换句话说,电梯被占用(“1”)长达180秒的持续时间(例如由于服务另一车辆而被占用)。通过对当前eta增加180秒来更新假定的eta,并且后面的隔间(是路径21[5,7,5]至[1,7,5])以及运送隔间(全部都是空的)以类似的方式进行处理,其仅对路径21的eta增加了短的持续时间(假设隔间的临时占用状态表明它们都是空的,并且通过每个隔间的穿越时间大约为3秒(例如,车辆速度为1m/s(负载)或3m/s(空载)。注意,每个隔间的后3秒穿越时间仅为了说明的目的而提供,并且对于车速也是如此。

继续到路径23,行驶通过路径23的车辆具有最长的距离,该距离从隔间[3,6,6]开始,行驶到隔间[3,10,6],然后到[5,10,6],然后通过[5,9,6]处的电梯隔间至第五层,并从其通过隔间[5,7,5]至[1,7,5],到达运送隔间。路径24包括与路径23正好相同数量的路径隔间。

假设所有隔间都是空的,则通过添加3秒的行驶时间(如隔间的状态持续时间表明的)来更新每个隔间的eta。

路径22反过来略短于23,但是在隔间[4,9,6]中,隔间状态数据结构表明车辆必须等待50秒(例如,不同的车辆在指定的隔间中装载集装箱)。

因此,应当理解,就eta而言,车辆(1121)的假定最佳(本地)路径路线是最长的路径23和24,然而,根据某些实施方案,最佳本地路径路线被选择为路径24,因为它具有有利的最佳路径路线特性,其在该例子中是较少的90度转弯(与路径23的三个相比,路径24是两个)。转弯的数量当然是有利的最佳路径路线特性的例子,并且虽然在该例子中应用于在两个或更多个类似的最佳本地路径路线之间进行选择,但根据某些实施方案,也可以在稍后的阶段应用。

这样选择的车辆1121的最佳路径路线24的eta等于如上讨论的指定的tnow+5*sa。

在后一个例子中,13个隔间被通过+通过一个电梯的电梯_利用_时间,一个楼层(第六=>第五)产生13*3_秒+10_秒=总共49秒,用于行驶通过最佳路径路线。

如先前指明的,5*sa=5*2分钟=10分钟=600秒

注意,指定持续时间之间的差异源于为了清楚而提供的非常简单的例子,只有13个隔间(非常小的存放装置),仅行驶通过一层等。

在后一个例子中,所选车辆可以在闲置时间中等待直到起重机变得可用为止,即超过9分钟,假设它不被分配进行不同的任务的话。在遵照“及时”行事的情况下,所选的车辆1121比必须等待更多时间的车辆1120到达得“更”及时。

如上面进一步讨论的和根据某些实施方案,对于其他两个候选车辆选择假定最佳本地路径路线,并且从假定最佳本地路径路线中选择并确定占优的一个(路径24)作为最佳路径路线。在rsq数据结构的正确位置更新所选车辆的数据记录以及在隔间状态数据结构中更新临时占用状态(也参见上面参考步骤612的讨论),所述临时占用状态表明在通过最佳路径路线行驶时当所选车辆1121通过隔间时隔间将被占用的时间点和持续时间。

一旦车辆1121已经完成提供所选服务,它就被分类为备用(假设它已经将集装箱装载到起重机上)。

相同的操作流程(加以必要的修改)适用于装载有集装箱且必须将其运载到多层结构中或其附近的存放区域,或者根据某些实施方案,将其运载到卡车上的车辆。

根据某些实施方案,卡车可以被看作另一种类型的资源(可能具有比起重机更低级别的种类类型-例如参见步骤602),并且以与上面参照起重机描述的类似的方式进行管理(加以必要的修改)。

根据某些实施方案,如果装有集装箱的车辆试图通过其中具有集装箱的另一个隔间,则与空载(空的)车辆试图通过指定隔间且可以没有延迟地通过隔间的情况相比,车辆将被迫等待德尔塔t>0。这可以例如通过利用具有至少两种类型的隔间状态数据结构来实现,每种类型都取决于不同的车辆属性。这种性质可以是例如负载或空载的车辆。注意,指定的数据结构可以被实施为在指定的数据结构中,或在某些实施方案中,实施在不同的结构。

注意图11f,其示意性地示出了空卡车1151的情况,其正在接近多层结构1151以拾取存放在给定隔间中的集装箱,比方说1152,并且离开装载有指定集装箱的区域。通过后一个例子,空的卡车可以在第一层下面行驶通过建筑物。根据某些实施方案,卡车进入入口,例如1151,车辆将集装箱带到底层,集装箱将被装载到卡车上(根据上述各种实施方案控制卡车指定到达、车辆行驶和装载集装箱的地点),并且卡车将以相反的模式离开(通过1151)。本发明当然不受集装箱和卡车之间指定的相互作用的限制,后者可以根据具体应用而变化。

回到图11f,从多个候选车辆(未示出)中选择车辆1153以移动通过最佳路线路径,首先拾取集装箱1152,然后到达运送隔间以卸载集装箱。控制器50将根据上面描述的操作流程(加以必要的修改)来挑选车辆。

根据本发明的一方面,提供了一种计算机化的车辆导航方法,其包括提供多个车辆,其仅具有可操作以感测与多个隔间相关联的静态环境的静态感测能力,而没有可操作以利用多个隔间的动态车辆的动态感测能力。

可操作以感测与多个隔间相关联的静态环境的静态感测能力可以包括例如安装在参考图2作为例子描述的车辆上和/或车辆内的以下传感器中的至少一种(i)能够从例如安装在存放装置(例如,参照图1c所描述的建筑物)的预定位置上的rfid(发射机)接收信号的rfid标签(接收器),(ii)能够例如根据(多个)预定标记感测隔间的穿越的图像采集传感器(例如相机),其被描绘或设置在隔间的(多个)预定位置,例如诸如描绘在每个隔间地面中间的x标志的已知标记。在后一个例子中,照相机可以安装在车辆的底部,并配置成获取地面的图像,(iii)基于车轮的转数的距离计量传感器,其基于车轮的预定已知直径,可能具有用于测量车辆旋转角度的角度计量传感器。例如假设每个隔间的尺寸是已知的,则通过使用指定的距离计量传感器和角度计量传感器,(例如,与参考以上各种实施方案所讨论的车辆相关联的)处理器可以确定车辆正在使用哪个隔间和车辆何时移动到相邻的隔间。这也适用于利用指定的图像采集装置,其中处理器可以利用本身已知的图像处理软件通过识别标记来断定隔间正在被使用,和当识别出另一个标记时断定遇到另一个隔间。在rf发射器例如安装在建筑物的预定位置的情况下,通过感测rfid发射的信号,rfid可以识别例如何时使用隔间。本发明不受可操作以感测与多个隔间相关联的静态环境的静电感测能力的这些具体例子的限制。

如进一步说明的那样,车辆没有可操作以利用多个隔间的动态车辆的动态感测能力,例如,安装在车辆上的图像采集装置,其配置成感测移动的物体,诸如穿越其路线的车辆(无论后者是移动的还是静止的),但是没有具有指定穿越车辆的预定“知识”的感测车辆,其利用感测车辆希望利用的隔间。注意,在静态感测能和动态感测能力之间可能存在重合,例如两者都是相机,然而与(在许多情况下)赋予指定的静态感测能力的更退化的软件/硬件相比,前者具有与其相关联的赋予指定的动态感测能力的软件和/或硬件。

注意,在某些实施方案中,可操作以感测与多个隔间相关联的静态环境的静态感测能力可以比可操作以利用多个隔间的动态车辆的动态感测能力便宜得多,从而降低与车辆相关联的总标价,在某些实施方式中,它可能构成重要的竞争因素。

牢记这一点,进一步提供了关于多个隔间中的每个隔间动态地确定代表隔间的一系列临时占用状态的隔间状态,所述临时占用状态中的每一个都至少由(i)空的状态和所述车辆中的一车辆可以利用所述隔间的持续时间或(ii)占用状态和所述车辆中的一车辆利用或将利用所述隔间的持续时间组成;和为所述车辆中的至少一个确定至少一个路径路线,其中所述路径路线中的每个路径路线都包括所述多个隔间中的起始隔间、至少一个路径隔间和到达隔间;所述关于每个路径隔间的确定包括,利用所述可能的隔间的隔间状态的临时占用状态和根据路径路线标准从所述多个隔间的可能的隔间中选择所述路径隔间。

后者仅参考各种实施方案同时至少参考图5和图10的系统作为例子进行描述,其中作为例子,到达隔间是指定的运送隔间。

注意,在某些实施方案中,所述标准规定,所述到达隔间的车辆估计到达时间早于从所述起始隔间开始并在所述到达隔间结束的任何其他假定路径隔间。然而这不是限制。根据某些实施方案,指定的标准可以包括符合饥饿标准,其全部如上面例如参考图6和8所讨论的。

基于上述内容,与确定的路径路线相关联的所述车辆中的一车辆可操作以仅基于所述静态感测能力利用所述确定的路径路线的隔间。

考虑图11e的例子,其仅为了说明的目的而提供。车辆2可以沿着所选的路径24移动,同时在没有动态感测能力时,仅利用静态感测能力来识别其需要利用的路径隔间单元,因为它不会在任何路径隔间中遇到任何意外的移动或静止的车辆。这是有保证的,因为当所选车辆使用相应的隔间时,路径路线中的任何一个隔间已被确定为空的。这已经通过利用隔间的一系列临时占用状态来实现,全部如上面详细讨论的。

除非另有明确说明,如从以下讨论中明显的,应该懂得,在整个说明书中,使用的术语诸如“提供”、“选择”、“确定”、“计算”、“减少”、“优先级排序”、“分类”、“提供”、“更新”等包括将数据操纵和/或转换成其他数据的处理器的动作和/或过程,所述数据表示为物理量,例如电子数量,和/或所述数据表示物理的物体。术语“处理器”和“控制器”应被广泛地解释为涵盖具有数据处理能力的任何类型的一个或多个电子设备。

根据本文中的教导的操作可以由为所需目的专门构造的处理器或由为所需目的专门配置的通用处理器通过存储在非瞬态计算机可读存储介质(存储器)中的计算机程序来执行。术语“非瞬态”在本文中用于排除短暂的、传播的信号,但是另外包括适用于该应用的任何易失性或非易失性计算机存储技术。

如本文所使用的,术语储存器或存储器是指用于短期和/或长期在本地和/或远程地存储数据的任何可读介质。存储器的例子尤其包括:任何类型的盘,包括软盘、硬盘、光盘、cd-rom、磁光盘,磁带,闪速存储器,随机存取存储器(ram),动态随机存取存储器(dram),静态随机存取存储器(sram),只读存储器(rom),可编程只读存储器prom,电可编程只读存储器(eprom),电可擦除和可编程只读存储器(eeprom),磁卡,光卡,适用于存储电子指令并且能够耦合到系统总线的任何其他类型的介质,上述的任意组合等。

应当懂得,除非另有明确说明,为清楚起见在不同的实施方案的上下文中描述的目前公开的主题的某些特征也可以在单个实施方案中组合提供。相反,为简洁起见在单个实施方案的上下文中描述的目前公开的主题的各种特征也可以单独提供或以任何合适的子组合方式提供或者包括在不同的实施方案中。

在目前公开的发明的实施方案中,图6、8和10的任一个中所示的一个或多个阶段(步骤)可以以不同的顺序执行,和/或可以同时执行一组或多组的阶段,和/或可以修改或删除一些步骤,和/或可以添加其他步骤。附图示出了根据目前公开的发明的实施方案的系统架构的总的示意图(例如图5),附图中的每个模块可以由执行本文中定义和解释的功能的软件、硬件和/或固件的任何组合组成,附图中的模块可以集中在一个位置或分散在多于一个的位置上。

在目前公开的主题的实施方案中,与图6、8和10的任一个中所示的相比,可以执行更少、更多和/或不同的阶段。在目前公开的主题的实施方案中,图6、8和10的任一个中所示的一个或多个阶段可以以不同的顺序执行和/或一组或多组的阶段可以同时执行。图5示出了根据目前公开的发明的实施方式的系统架构的一般示意图。图5中的每个模块可以由执行本文中定义和解释的功能的软件、硬件和/或固件的任何组合组成,图5中的模块可以集中在一个位置中(例如遥远的位置)或分散在多于一个的位置上(例如,也在车辆中)。在目前公开的发明的其它实施方案中,系统可以包括比图5中所示的更少、更多和/或不同的模块。

文本或附图中出现的任何商标均为其所有者的财产,仅在本文中出现以解释或说明当前讨论的主题可以如何实施的一个例子。

图5的系统包括一个或多个处理器或者以其他方式与一个或多个处理器相关联,所述处理器配置为执行本文中公开的操作。本文使用的术语处理器应被广泛地解释为涵盖具有数据处理能力的任何类型的一个或多个电子设备,作为非限制性的例子包括,个人计算机,服务器,计算系统,通信设备,处理器(例如数字信号处理器(dsp),微控制器,现场可编程门阵列(fpga),专用集成电路(asic)等),任何其他电子计算设备,和或其任何组合。注意,所有例子可以由单个设备或位于彼此附近的和/或彼此远离的两个或更多个设备组成,其可能独立地或联合地操作。

应当理解,目前公开的主题在其应用上不限于在本文包含的描述中阐明的或在附图中示出的细节。目前公开的主题可以具有其他实施方案并且可以各种方式实践和执行。因此,应当理解,本文中使用的措辞和术语是为了描述的目的,不应被视为限制。因此,本领域技术人员应该理解,本公开所基于的概念可以容易地用作设计用于执行目前公开的主题的几个目的的其他结构、方法和系统的基础。

还应该理解,根据目前公开的主题的系统可以至少部分地被实施为适当编程的处理器。同样,目前公开的主题考虑了用于执行所公开的方法的计算机可读取的计算机程序。目前公开的主题进一步考虑了机器可读非瞬态存储器,其有形地实施了可由用于执行所公开方法的机器(处理器)执行的指令的程序。

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