优化仓库中的托盘位置的制作方法

文档序号:31053715发布日期:2022-08-06 09:50阅读:49来源:国知局
优化仓库中的托盘位置的制作方法

1.本文件描述了通过优化仓库中的托盘位置来实现仓库管理的相关装置、系统和方法。


背景技术:

2.仓库包括用于存放货物托盘的仓库货架。托盘通常是扁平的运输结构,其以稳定的方式支撑货物,并且适合于用叉车和/或其它装置/机器来移动托盘。各种产品的包裹可以堆放在托盘上。仓库被设计成允许叉车根据需要将托盘放置在货架上和从货架上拉出托盘。叉车和其它类型的车辆在仓库中移动并运输托盘和包裹。
3.仓储,包括托盘的运输和存储,是劳动密集型的,并且人工成本占仓库运营费用的很大一部分。降低人工成本的过程需要仔细的仓库劳动力和占用计划,并在效率与保持高水平的客户服务之间取得平衡。运行效率低下的仓库可能会导致不同过程出现瓶颈,例如收货、拣货和包装。例如,规划效率低下的仓库可能会导致工人、叉车和其它车辆行走或运行很长的距离,从而需要更长的时间来完成该过程。


技术实现要素:

4.本文档总体上描述了用于优化仓库空间(例如仓库货架)的基于计算机的技术。该技术的一些实施例确定托盘在仓库中的存储时间,并进一步确定托盘在仓库中的最佳存储位置。例如,该技术可以确定入库托盘将在仓库中停留多长时间,并定位仓库的最佳区域来存放该托盘。选择此类最佳托盘存储区域,可以降低将托盘运进仓库、在仓库内运输和运出仓库的人工成本,并且进一步优化仓库内多托盘的整体管理。举简单的例子,该技术可以确定要存放在仓库中的托盘可能会停留相对较短的时间(例如,几天),然后确定仓库区域的靠近取货区(例如,仓库入口)的一部分,从该取货区将托盘运送到仓库。另一方面,如果确定新托盘可能会停留相对较长的时间(例如,几个月),该技术可以确定离取货区较远的部分仓库区域,从而允许仓库区域的另一部分保持可用于存储时间较短的托盘,使此类存储时间较短的托盘运送较短的距离,从而减少整体人工成本。
5.由于各种动态因素,例如供应商、客户、不同的存储和/或交付要求、产品的季节性、地区、存储和交付的时间等,托盘的存储时间通常不是确定性的。该技术的一些实施例被配置为预测入库托盘将存储在仓库中的预期持续时间。此类预测可以基于各种可用数据、生命体征和统计数据使用机器学习算法来执行。当预测托盘的预期存储时间时,该技术可以确定托盘将被分配至的仓库的最佳区域(例如,仓库货架的位置或部分)。各种机器学习算法可用于预测。用于预测的一些示例机器学习算法采用人工神经网络,其可以包括用于接收输入(例如,本文描述的各种因素)的输入层、用于处理输入的一或多个中间层以及用于生成托盘存储时间(例如,百分位数)的输出层。
6.在一些实施方式中,本文描述的技术可以预测入库托盘在仓库中的存储时间的百分位数。例如,托盘的较低存储百分位数(例如,第10个百分位)可能表明该托盘比具有较高
存储百分位数(例如,第90个百分位,例如,其可以表示在仓库中存储6个月)的托盘停留更短的时间(例如,10天)。
7.可以使用多种因素来预测托盘的存储时间。例如,关于存储相同或相似种类的托盘和/或相同或相似客户的托盘的历史数据可用于预测特定托盘的存储时间。附加地或替代地,不同种类的托盘和/或不同客户的托盘的历史数据可用于预测。在一个示例中,可以考虑同一客户和/或不同客户随时间推移的托盘存储的历史表现,以生成对要存储在仓库中的特定托盘的存储时间的预测。虽然不同的客户对托盘的存储和运输的要求可能不同,但是不同客户的托盘存储和/或运输可以呈现出与托盘属性(例如,托盘中的产品类型)相关联的模式,此类模式可以是用于预测特定托盘的存储时间(例如,托盘的存储百分位数)。举例来说,草莓产品的托盘,无论它们是针对相同的还是不同的客户,都可以类似地处理、存储和分发以在某些情况下保持新鲜度。
8.此外,用于预测托盘存储时间的因素可以包括设施、客户、产品类型、托盘进入仓库的时间(例如,星期几、一年中的第几周等)、物品描述、季节性和其它合适的信息。至少一些因素可以从库存单位(sku)中识别出来。在一些实施方式中,托盘中产品的物品描述(例如,“6盎司草莓果泥”)可以使用例如自然语言处理被解析为机器可理解的语言,以便物品描述可以用于预测托盘在仓库中的存储时间。
9.该技术的一些实施例可以基于将托盘存储时间(例如,百分位数)映射到仓库区域(例如,仓库货架的部分)的预定规则来确定对应于托盘的存储时间(例如,百分位数)的仓库的最佳位置。例如,仓库中的多个存储货架具有对应于托盘存储时间范围的多个部分。每个存储货架中的多个部分可以按照距托盘从其被递送到存储货架的区域(例如,停靠区)的距离来布置。举例来说,存储货架可以具有多个部分,这些部分具有远前部分、远端部分和一或多个中间部分。远前部分最靠近仓库的入口,用于存放存储时间相对较短的托盘(例如,0-10天,或存储时间的0-5的百分位数)。远端部分距离仓库入口最远,用于存放存储时间相对较长的托盘(例如,4-6个月或更长,或存储时间的90-100的百分位数)。中间部分可布置在远前部分和远端部分之间,并在远前部分和远端部分之间分割以用于不同存储时间范围的托盘。
10.该技术的一些实施例还可以考虑入库托盘的尺寸(例如,高度)以确定托盘在仓库中的最佳存储位置,例如包括多个存储货架的仓库,该存储货架具有多个配置为接收具有不同尺寸(例如,高度)的托盘的异构货架开口。入库托盘的最佳存储位置可以通过优化人工成本和空间利用率的方式确定,这不一定是一致的,尤其是在仓库存储货架具有不同尺寸的货架开口的情况下。例如,与托盘的存储时间相匹配的托盘的存储位置不一定与将提供仓库的最大空间利用率的存储位置相同。在简单的示例中,可以基于托盘的预期存储时间来确定托盘最好位于仓库货架前面的第三列中,但第三列可能没有适合托盘的尺寸(例如,高度)的货架开口。在这种情况下,需要确定相对于存储时间和托盘尺寸均进行了优化的另一个货架列和/或开口。
11.在一些实施方式中,可以使用反映托盘存储时间和托盘尺寸的匹配(或其程度)的成本函数来确定托盘的最佳存储位置。例如,该技术可以识别多个可用的候选货架开口(例如,未被占用的货架开口),并根据存储时间和托盘尺寸计算每个候选货架开口的优化值(例如,分数)。可以使用持续时间匹配值(例如,分数)和尺寸匹配值(例如,分数)来计算优
化值。持续时间匹配值可以表示候选货架开口与托盘在托盘存储时间(例如,百分位数)方面的匹配程度。尺寸匹配值可以表示候选货架开口与托盘在托盘尺寸(例如,高度)方面的匹配程度。
12.在一些实施方式中,持续时间匹配值和尺寸匹配值可以是互补加权的,这可以调整以满足不同的需求,例如需要更多地节省人工成本,或者需要增加仓库货架的使用率(例如,占用率)。例如,如果尺寸匹配值的权重大于持续时间匹配值,则可以通过将托盘适配到具有匹配尺寸的货架开口来增加仓库的占用率(无需将小托盘放置到较大的货架开口而浪费其中的剩余空间)。另一方面,如果持续时间匹配值的权重大于尺寸匹配值,则可以通过将托盘放置到仓库货架的预定相应部分来节省更多的人工成本。
13.该技术的一些实施例可以确定仓库(例如,仓库货架)的占用率,并且基于该占用率来缩放仓库的有效空间。举例来说,如果预计仓库仅占用50%,则可以选择仓库的部分,在该部分中根据托盘的存储时间和/或尺寸来分配托盘,使其仅位于占仓库的整个空间的50%的所需部分内(例如,靠近入口的前半部分),因此仓库有效地被视为仓库的一半尺寸。
14.本文描述的特定实施例包括一种用于管理仓库中多个托盘的系统。该系统可以包括具有多个货架开口的多个存储货架、被编程以存储将托盘的预期持续时间与存储货架的多个部分相关联的托盘分配数据的数据库、以及包括一或多个被编程为执行操作的处理器的计算机系统。这些操作可能包括以下一或多个过程:识别递送到仓库的托盘;确定托盘在仓库中的预期存储时间;基于预期存储时间确定托盘在仓库中的存储位置;以及将识别存储位置的信息传输到用于放置托盘的设备。
15.在一些实施方式中,该系统可以可选地包括以下特征中的一或多个。确定托盘的预期存储时间可以包括确定托盘的持续时间百分位数。托盘的预期存储时间可以基于历史库存数据来确定。历史库存数据可以识别存储在仓库中的托盘、托盘被存储的时间以及托盘被存储的持续时间。确定托盘的预期存储时间可以包括使用基于多个输入因素的机器学习来预测预期存储时间。输入因素可以包括托盘中含有的物品类型、托盘的客户、星期几、一年中的第几周、托盘描述、物品描述和历史库存数据中的至少一种。确定托盘在仓库中的存储位置可以包括基于托盘的行进距离确定仓库的区域,行进距离对应于预期存储时间。确定托盘在仓库中的存储位置可以包括基于预期存储时间确定距仓库入口一定距离的区域。多个部分可以按距仓库的入口的距离排列。多个部分可以映射到不同的托盘持续时间百分位数。预期存储时间可以被识别为托盘持续时间百分位数的第一托盘持续时间百分位数。存储位置可以是多个部分中的第一部分,第一部分被映射到第一托盘持续时间百分位数。多个部分可以包括第一部分和比第一部分更远离仓库入口布置的第二部分,第一部分映射到第一百分位数,并且第二部分映射到大于第一百分位数的第二百分位数。仓库可以包括多个存储货架。每个货架可以具有多个部分,并且该多个部分可以映射到不同的托盘持续时间百分位数。多个存储货架可包括一或多个水平杆,该一或多个水平杆可沿存储货架上的多个高度调节以在存储货架内限定多个货架开口。操作可以包括确定托盘的高度。确定托盘在仓库中的存储位置可以包括基于预期存储时间和托盘的高度的成本函数确定存储货架中的多个部分中的一个和存储货架中的货架开口中的一个。操作可以包括确定托盘的高度,识别存储货架中可用的多个候选货架开口,基于预期存储时间和托盘的高度计算候选货架开口的优化值,以及从候选货架开口中确定具有超过阈值的优化值的货架开
口,该货架开口是托盘的存储位置。每个优化值可以包括针对每个候选货架开口的持续时间匹配值和高度匹配值的组合。候选货架开口的持续时间匹配值可以表示适合托盘的预期存储时间的存储货架的部分与候选货架开口所属的存储货架的部分之间的接近度。候选货架开口的高度匹配值可以表示托盘的高度与候选货架开口的高度之间的接近度。持续时间匹配值和高度匹配值可以是互补加权的。设备可以包括叉车,该叉车包括用户界面,该用户界面被编程为响应于接收所传输的信息而自动输出识别存储位置的信息。
16.本文描述的特定实施例包括一种用于管理仓库中多个托盘的方法。该方法可以包括识别递送到仓库的托盘,确定托盘在仓库中的预期存储时间,基于预期存储时间确定托盘在仓库中的存储位置,以及将标识存储位置的信息传输到用于放置托盘的设备。
17.在一些实施方式中,该方法可以可选地包括以下特征中的一或多个。仓库可以包括按距仓库的入口的距离排列的多个部分。多个部分可以被映射到不同的托盘持续时间百分位数。预期存储时间可以被识别为托盘持续时间百分位数的第一托盘持续时间百分位数。存储位置可以是多个部分中的第一部分。第一部分可以被映射到第一托盘持续时间百分位数。多个部分可以包括第一部分和比第一部分更远离仓库入口布置的第二部分。第一部分可以被映射到第一百分位数,并且第二部分可以被映射到大于第一百分位数的第二百分位数。仓库可以包括多个存储货架。每个货架可以具有多个部分。多个部分可以被映射到不同的托盘持续时间百分位数。多个存储货架可包括一或多个水平杆,该一或多个水平杆可沿存储货架上的多个高度调节以在存储货架内限定多个货架开口。该方法可以进一步包括确定托盘的高度。确定托盘在仓库中的存储位置可以包括基于预期存储时间和托盘的高度的成本函数确定存储货架中的多个部分中的一个和存储货架中的货架开口中的一个。该方法可以进一步包括确定托盘的高度,识别存储货架中可用的多个候选货架开口,基于预期存储时间和托盘的高度计算候选货架开口的优化值,以及从候选货架开口中确定具有超过阈值的优化值的货架开口,该货架开口是托盘的存储位置。每个优化值可以包括针对每个候选货架开口的持续时间匹配值和高度匹配值的组合。候选货架开口的持续时间匹配值可以表示适合托盘的预期存储时间的存储货架的部分与候选货架开口所属的存储货架的部分之间的接近度。候选货架开口的高度匹配值可以表示托盘的高度与候选货架开口的高度之间的接近度。持续时间匹配值和高度匹配值可以是互补加权的。
18.本文描述的装置、系统和技术可以提供若干优点。例如,该技术的一些实施例提供了一种解决方案,以基于多种因素确定或预测托盘的存储时间(例如,托盘速度),并选择仓库货架区域或其它托盘存储位置,以优化托盘进出该区域的运输时间和距离,从而节省管理设施方面的人工成本。此外,该技术的一些实施例可以进一步提供一种解决方案,以通过考虑托盘的尺寸和可用于托盘的货架开口的尺寸,提高仓库货架或其它托盘存储位置的空间利用率。该技术可以确定最适合托盘尺寸的货架开口,并进一步满足托盘的存储时间,从而平衡节省人工成本和最大化设施空间利用率的经常不兼容的需求。
19.一或多个实施方式的细节在附图和以下描述中阐述。从描述和附图以及从权利要求中,其它特征和优点将是显而易见的。
附图说明
20.图1图示了用于优化仓库中的托盘存储位置的示例系统。
21.图2是用于确定托盘在仓库中的最佳存储位置并将其放置在确定位置的示例过程的流程图。
22.图3图示了显示具有不同存储时间的托盘分布的示例图表。
23.图4图示了用于基于新托盘的预期存储时间来确定新托盘的最佳存储位置的示例过程。
24.图5图示了用于优化仓库中的托盘存储位置的示例系统。
25.图6是用于确定托盘在仓库中的最佳存储位置并将其放置在确定位置的示例过程的流程图。
26.图7是用于为托盘在仓库中选择最佳货架开口的示例过程的流程图。
27.图8图示了用于基于新托盘的预期存储时间来确定新托盘的最佳存储位置的示例过程。
28.图9图示了用于根据区域的占用率来缩放托盘存储区域的示例技术。
29.图10是可用于实现本文档中描述的系统和方法的作为客户端或作为服务器或多个服务器的计算装置的框图。
具体实施方式
30.一般而言,本文档描述了用于优化存储设施(例如,仓库)处的存储位置并将入库托盘的存放引导至存储设施处的最佳位置(例如存储货架中的最佳位置)的基于计算机的技术。
31.图1图示了用于优化仓库102中的托盘存储位置的示例系统100。仓库102可以包括用于存储托盘的托盘存储区域104。托盘存储区域104可以包括多个仓库货架106,其具有被配置为接收用于存储的托盘的货架开口108。在该示例中,至少一些仓库货架106是具有相同尺寸的货架开口的同质仓库货架。仓库102可以进一步包括装载区域110,托盘114从该装载区域被递送到托盘存储区域104或仓库货架106。装载区域110可以是装载码头或海湾(或靠近装载码头或海湾的区域),在该处托盘从车辆112卸载或装载到车辆上,例如卡车、火车或其它合适的车辆。装载区域110可以是仓库内或仓库外的其它区域,托盘在递送到托盘存储区域104或仓库货架106之前临时放置在该处。托盘114可以使用各种方法从装载区域110运输。在一个示例中,可以操作叉车116来拾取托盘114并将托盘运送到托盘存储区域104中的期望位置或存储货架106的期望货架开口108。
32.示例系统100进一步包括计算机系统120,其被编程为至少部分地基于托盘数据122和/或历史库存数据124确定托盘存储区域104中用于托盘存储的最佳位置(例如,仓库货架106中的货架开口)。托盘数据122包括待存储在托盘存储区域104中的托盘的信息,例如托盘中的物品类型、物品描述、托盘描述、客户、设施、托盘进入仓库的时间(例如,星期几、一年中的第几周等)、季节性等。
33.历史库存数据124包括关于随时间被送入和送出以及存储在托盘存储区域104中的托盘(例如,相同或相似种类的托盘和/或不同种类的托盘)的历史数据。历史库存数据124可以包括例如同一客户和/或不同客户随时间的托盘存储的历史表现,其可以被认为生成对要存储在仓库中的特定托盘的存储时间的预测。不同的客户可能对托盘的存储和运输有不同的要求。然而,不同客户的托盘存储和/或运输可以显示与托盘属性(例如,托盘中的
产品类型)相关联的模式。举例来说,草莓产品的托盘,无论它们是针对相同的还是不同的客户,都可以类似地处理、存储和分发以在某些情况下保持新鲜度。
34.计算机系统120可以确定托盘,例如在装载区域110处的托盘114,被存储在托盘存储区域104(例如,仓库货架106)中的预期持续时间。计算机系统120可以使用托盘数据122和/或历史库存数据124来确定特定托盘的预期托盘存储时间,这可以表示托盘将在托盘存储区域104中停留多长时间,或者在将托盘放置在托盘存储区域104中之后多久托盘将被从托盘存储区域104移除(即,托盘速度)。
35.计算机系统120可以使用托盘分配数据126来确定在托盘存储区域104中存储托盘的最佳位置。托盘分配数据126可以包括用于将识别的托盘分配到托盘存储区域104中的期望位置(例如,货架开口)的规则。如本文所述,托盘分配数据126可以包括将预期存储时间映射到托盘存储区域104的信息。
36.例如,托盘分配数据126包括将不同托盘存储时间与仓库货架106的不同部分相关联的信息(例如,数据表),以降低用于将托盘运进和运出仓库货架106的人工成本。如图1所示,仓库货架106可以具有不同的部分140(例如140a-d),这些部分被分开并布置在距托盘源(例如装载区域110)不同的距离l(例如l1-l4)处。例如,仓库货架106的第一、第二、第三和第四部分140a-d分别布置在距装载区域110的第一、第二、第三和第四距离l1-l4处,其中第一部分140a被布置为最靠近装载区域110并且第四部分140d被布置为离装载区域110最远。托盘分配数据126提供将第一、第二、第三和第四部分140a-d分配给不同范围的托盘存储时间,例如分别为0-10天存储、10-30天存储、30-90天存储和90-200天存储。因此,在该示例中,基于托盘分配数据126,被确定为具有3天存储时间的入库托盘将被分配给第一部分140a。类似地,托盘分配数据126的该示例将具有120天存储时间的托盘分配给第四部分140d。虽然仓库货架106在本文中被示为具有四个部分140,但是仓库货架106可以具有少于或多于四个部分。在一些实施方式中,仓库货架106可以具有100个或更多部分,使得托盘存储时间的每个整数百分位数具有其自己的类别并分配给仓库货架的一或多个部分。举例来说,第5个百分位数的托盘可以存储在对应于这类托盘的一或多个部分中的任何一个中,使得托盘可以比更高的百分位数(例如,第50个百分位数)托盘轮换得更快。这样,相同的百分位数托盘并不总是需要存放在货架的相同位置。
37.计算机系统120可以包括服务器系统、基于云的计算机系统、台式机、膝上型计算机、移动计算装置、其它计算装置/系统。在一些实施方式中,计算机系统120可以被配置为仓库管理系统(也称为“wms”),其是专门的计算机系统,用于管理设施处的库存的存储和检索,并且与设施内部的装置和组件(例如叉车、传感器、hvac系统、照明系统和/或其它装置和组件)交互。例如,wms可以确定到达设施的托盘应该放置在哪里(例如,识别托盘的货架开口),管理和跟踪托盘的位置,识别应该从设施中取出用于运输的托盘,并与叉车(和其它装置)通信,以提供关于托盘的拾取和放置信息。
38.仍然参考图1,系统100可以识别要存储在仓库中的托盘的特征,确定托盘在仓库中的最佳存储位置,并将托盘运输到确定的存储位置进行存储。例如,计算机系统120可以接收关于新托盘114的信息(步骤a)。在一些实施方式中,关于新托盘114的信息可以从叉车116(或其它车辆)传送,该叉车拾取新托盘进行运输。新托盘114或其上的物品(例如,sku)可以在叉车116拾取其之前或之后被扫描,并且扫描的信息可以被传送到计算机系统120。
在其它实施方式中,新托盘信息可以通过其它方式获得,例如在新托盘交付到仓库时由新托盘供应商提供。
39.计算机系统120可以基于所接收的新托盘信息识别新托盘114(步骤b)。计算机系统120可以获得关于新托盘114的托盘信息(步骤c)。例如,计算机系统120可以从托盘数据122检索托盘信息。托盘信息包括设施、客户、产品类型、托盘进入仓库的时间(例如,星期几、一年中的第几周等)、物品描述、季节性和其它合适的信息。。
40.计算机系统120可以确定新托盘114的预期存储时间(步骤d)。可以至少部分地基于托盘信息(例如,托盘数据122)和/或与仓库相关联的历史库存数据来确定新托盘114的预期存储时间。计算机系统120可根据新托盘114的预期存储时间确定最佳存储位置(步骤e)。可以使用托盘分配数据126确定最佳存储位置,该数据可以识别对应于新托盘114的预期存储时间的仓库货架的部分。计算机系统120可以将最佳存储位置传输到叉车116(步骤f),叉车116可以运输新托盘114并将其放置到最佳存储位置(例如,仓库货架的确定部分)(步骤g)。
41.图2是用于确定托盘在仓库中的最佳存储位置并将其放置在确定位置的示例过程200的流程图。过程200可以从接收新托盘数据开始(框202)。新托盘数据可用于识别需要存放在仓库中的新托盘。当托盘被运送到仓库时,新托盘数据可以由新托盘的供应商提供。或者,新托盘数据可以通过与一或多个计算装置,例如计算系统120通信连接的终端手动获得(例如,由识别新托盘并输入有关托盘的信息(例如,sku)的工人获得)。或者,新托盘数据可以通过在仓库中的叉车或其它合适的车辆移动新托盘之前或同时扫描托盘(例如,扫描托盘上的条形码)来获得。新托盘数据可以保存为图1中的托盘数据122。
42.过程200可以进一步包括获得与新托盘相关联的各种因素230(框204)。这些因素包括历史库存信息、托盘物品属性(例如,产品类型、季节性等)、托盘的客户、时间信息(例如,托盘进出仓库时是星期几、一年中的第几周等)、设施信息(例如,设施类型、操作条件等)、托盘描述、托盘物品描述和其它相关信息中的一或多项。
43.历史库存信息可以包括在过去的预定时间段内,或在过去在设施的整个存储时间内,相同或相似种类的托盘和/或相同或相似客户的托盘的存储信息。附加地或替代地,历史库存信息可以包括可以用于预测的不同种类的托盘和/或不同客户的托盘的历史数据。可以考虑同一客户和/或不同客户随时间推移的托盘存储历史表现,以生成对要存储在仓库中的特定托盘的存储时间的预测。
44.物品描述可以指示关于托盘中物品的人类可读描述,例如“6盎司草莓果泥”。可以使用例如自然语言处理将物品描述解析为机器可理解的语言,使得物品描述可以用于预测托盘在仓库中的存储时间。
45.过程200可以包括预测新托盘的预期存储时间(框206)。例如,可以使用机器学习算法来预测预期存储时间。多种机器学习算法可用于预测。用于预测的一些示例机器学习算法采用具有多个层(例如输入层、一或多个中间层和输出层)的人工神经网络。在一些实施方式中,预期存储时间的预测可以由接收与新托盘相关联的各种因素作为输入的输入层(框220)、处理输入的中间层(框222)和生成托盘存储时间的输出层(框224)来执行。如本文所述,托盘的存储时间可以表示为托盘在仓库中的存储时间的百分位数。在一些实施方式中,过程200可以预测输入数据集(例如,输入因素)的分布,从分布中随机采样,然后在将该
持续时间相对于房间中其它托盘的持续时间排序之后转换为百分位数。
46.过程200可以包括基于托盘分配数据240确定对应于所预测的存储时间的最佳存储位置(框208)。托盘分配数据240可以保存为图1中的托盘分配数据126。在一些实施方式中,托盘分配数据240以表格形式提供规则,该表格映射托盘存储时间的范围(例如,百分位数)与存储位置(例如,货架的部分)之间的关系。举例来说,如果预测新托盘具有25的百分位数的存储时间,则使用所示托盘分配数据240确定将新托盘放置在货架的第2部分中。
47.尽管托盘分配数据240在本文中被示为具有针对四个不同百分位数范围的四个部分140,但是仓库货架106可以被分成大量更小的部分(例如,每个货架有100个或更多的更小部分)使得货架的部分按相应的颗粒百分位数连续排列,并且托盘到各个部分的分配是灵活的。在一些实施方式中,仓库货架可以具有100个或更多部分,使得托盘存储时间的每个整数百分位数具有其自己的类别并分配给货架的一或多个部分。举例来说,第5个百分位数的托盘可以存储在对应于这类托盘的一或多个部分中的任何一个中,使得托盘可以比更高的百分位数(例如,第50个百分位数)托盘轮换得更快。这样,相同的百分位数托盘并不总是需要存放在货架的相同位置。
48.过程200可以包括将确定的存储位置传送到诸如叉车的运输设备,以便将新托盘运输并放置到确定的存储位置以存储在仓库中(框210)。
49.图3图示了示例图表300,其示出了具有不同存储时间的托盘的分布。图表300示出了不同存储时间304(横轴)的托盘302的数量(纵轴)。图表300进一步示出示例百分位数310和多个百分位数范围320。例如,图表300描绘示例百分位数(例如,第一百分位数310a、第二百分位数310b和第三百分位数310c)和示例百分位数范围(例如,第一范围320a、第二范围320b、第三范围320c和第四范围320d)。举例来说,如果新托盘预计具有23天的存储时间,则新托盘的存储时间在第一百分位数310a和第二百分位数310b之间,从而落入第二范围320b内。
50.可以在不同的时间点确定用于确定百分位数的存储时间的程度。在一个示例中,新托盘的百分位数可以基于在新托盘被识别为存储在存储区域中时存储在存储区域(例如,仓库货架)中的整个托盘来确定。或者,新托盘的百分位数可以基于在仓库运营的整个时间或预定时间段内历史上存储在存储区域中的托盘来确定。或者,新托盘的百分位数可以基于托盘的预期未来库存来确定,例如在新托盘被识别为存储在存储区域中之后的预定未来时间。
51.图4图示了用于基于新托盘的预期存储时间来确定新托盘的最佳存储位置的示例过程400。在该示例中,如以其侧视图呈现的存储货架402被布置成使得每个货架开口404具有相同的尺寸,如在货架的长度上一致的货架高度所指示的。存储货架402具有多个部分406(包括406a-d),这些部分布置在距托盘410准备好被运输到存储货架402的装载区域408不同的距离处。在所示示例中,存储货架402具有根据距装载区域408的距离排列的四个部分。具体地,第一、第二、第三和第四部分406a-d分别布置在距装载区域408的第一、第二、第三和第四距离l1-l4处。第一距离l1小于第二距离l2,第二距离l2小于第三距离l3,并且第三距离l3小于第四距离l4。
52.每个货架部分406被分配有特定范围的托盘存储时间。这类分配可以预先确定并存储为托盘分配数据或规则412(例如,托盘分配数据240)。在一些实施方式中,托盘的短存
储时间表示托盘的周转时间短(例如,托盘在短时间段内递送进出仓库)。因此,较短的存储时间可以映射到更靠近装载区域408的货架部分406,从而可以将周转更快的货架存储在更靠近装载区域408的位置,从而节省递送进出仓库货架的人工成本。举例来说,如图所示,第一部分406a被分配0到5个百分位数之间的托盘存储时间,第二部分406b被分配5(包括5)到50个百分位数之间的托盘存储时间,第三部分406c被分配50(包括50)到90个百分位数之间的托盘存储时间,并且第四部分406d被分配90(包括90)到100个百分位数之间的托盘存储时间。
53.可以识别从装载区域408递送的托盘410,并且如本文所述确定每个托盘的预期存储时间。在所示示例中,第一托盘410a被确定为具有2个百分位数的存储时间,因此被递送并存储在货架402的第一部分406a中。第二托盘410b被确定为具有25个百分位数的存储时间,因此被存储在货架402的第二部分406b中。第三托盘410c被确定为具有60个百分位数的存储时间,因此被存储在货架402的第三部分406c中。第四托盘410d被确定为具有95个百分位数的存储时间,因此存储在货架402的第四部分406d中。
54.图5图示了用于优化仓库102中的托盘存储位置的示例系统500。系统500被配置为类似于图1中的系统100。例如,系统500可以包括仓库502、托盘存储区域504、具有货架开口508的多个仓库货架506、装载区域510、车辆512和计算机系统520,它们类似于系统100中的仓库102、托盘存储区域104、具有货架开口108的多个仓库货架106、装载区域110、车辆112、计算机系统120。
55.在该示例中,至少一些仓库货架506是具有不同尺寸的货架开口508的异构仓库货架。可以改变货架开口508以增加或最大化特定存储设施的货架空间的使用(或减少或最小化未使用的空间)。在一些实施方式中,货架开口可以随着设施的使用随时间变化而随时间调整(例如,不同的产品存储在仓库中,不同的公司或客户正在使用仓库)。
56.计算机系统520被配置为至少部分地基于托盘数据522、历史库存数据524和/或托盘尺寸数据528确定托盘存储区域504中用于托盘存储的最佳位置(例如,仓库货架506中的货架开口)。类似于图1中的托盘数据122,托盘数据522包括待存储在托盘存储区域504中的托盘的信息。类似于图1中的历史库存数据124,历史库存数据524包括关于随时间已经递送进出并存储在托盘存储区域504中的托盘的历史数据。托盘尺寸数据528包括要存储在托盘存储区域504中的托盘尺寸的信息,例如高度、宽度、长度、体积等。在一些实施方式中,托盘尺寸数据528可以包括在托盘数据522中。与托盘数据类似,托盘尺寸数据528可以在托盘被运送到仓库时由新托盘的供应商提供。或者,托盘尺寸数据528可以通过与一或多个计算装置通信连接的终端手动获得(例如,由识别托盘并输入有关托盘的信息(例如,sku)的工人获得)。或者,托盘尺寸数据528可以通过在仓库中的叉车或其它合适的车辆移动新托盘之前或同时扫描托盘(例如,扫描托盘上的条形码)来获得。
57.计算机系统520可以确定托盘,例如在装载区域510处的托盘514,被存储在托盘存储区域504(例如,仓库货架506)中的预期持续时间。计算机系统520可以使用托盘数据522和/或历史库存数据524来确定特定托盘的预期托盘存储时间,这可以表示托盘将在托盘存储区域504中停留多长时间,或者在将托盘放置在托盘存储区域504中之后多久托盘将被从托盘存储区域504移除(即,托盘速度)。
58.此外,计算机系统520可以确定要存储在托盘存储区域504(例如,仓库货架506)中
的托盘的尺寸。计算机系统520可以从托盘尺寸数据528中检索托盘的尺寸。或者,计算机系统520可以使用托盘数据522、历史库存数据524和/或其它合适的数据来确定或预测特定托盘的尺寸(例如,高度)。
59.计算机系统520可以部分地基于托盘分配数据526、托盘尺寸数据528和/或货架开口数据530来确定在托盘存储区域504中存储托盘的最佳位置。托盘分配数据526可以包括用于将识别的托盘分配到托盘存储区域504中的期望位置(例如,货架开口)的规则。如本文所述,托盘分配数据526可以包括将托盘的预期存储时间和/或尺寸与托盘存储区域504中的位置(例如,部分或货架开口)相关联的信息。例如,与托盘分配数据126类似,托盘分配数据526包括将不同托盘存储时间与仓库货架506的不同部分相关联的信息(例如,数据表),以降低用于将托盘运进和运出仓库货架506的人工成本。如图5所示,仓库货架506可以具有不同的部分540(例如540a-d),这些部分被分开并布置在距托盘源(例如装载区域510)的不同距离l(例如l11-l14)处。例如,仓库货架506的第一、第二、第三和第四部分540a-d分别布置在距装载区域510的第一、第二、第三和第四距离l11-l14处,其中第一部分540a被布置为最靠近装载区域510并且第四部分540d被布置为离装载区域510最远。
60.除了托盘分配数据526之外,计算机系统520可以进一步使用托盘尺寸数据528和货架开口数据530来确定托盘在具有不同尺寸的货架开口508的存储货架506中的最佳存储位置。货架开口数据530可以包括关于每个货架开口的信息,例如位置(例如,与特定区域(例如装载区域)的距离)、部分(例如,百分位数部分)、尺寸(例如,高度)、可用性(例如,货架开口当前是否正在使用或未使用),以及与托盘存储相关的其它数据。
61.考虑到托盘的预期存储时间和尺寸,计算机系统520可以确定优化人工成本节约和空间利用两者的托盘的存储位置。在一些实施方式中,计算机系统520可以使用反映托盘存储时间匹配和托盘尺寸匹配两者的成本函数来确定托盘的最佳存储位置。例如,计算机系统520可以计算每个潜在存储位置(例如货架开口)的成本值或分数,它是托盘存储时间匹配和托盘尺寸匹配的函数。托盘存储时间匹配可以指示潜在存储位置与特定托盘在托盘存储时间(例如,百分位数)方面的匹配程度。托盘尺寸匹配可以指示潜在存储位置在托盘尺寸(例如,高度)方面与托盘的匹配程度。在一些实施方式中,可以对成本函数的分量进行加权。例如,托盘存储时间匹配和托盘尺寸匹配的值可以选择性地加权以反映不同的需求,例如需要更多地节省人工成本或更多的空间利用。例如,如果托盘尺寸匹配的权重大于托盘存储时间匹配,则可以通过将托盘适配到尺寸匹配的货架开口来增加仓库的占用率(无需将小托盘放置到较大的货架开口而浪费其中的空间)。另一方面,如果托盘存储时间匹配的权重大于托盘尺寸匹配,则可以通过将托盘放置到仓库货架的预定相应部分来节省更多人工成本。
62.仍然参考图5,系统500可以识别要存储在仓库中的托盘的特征,确定托盘在仓库中的最佳存储位置,并将托盘运输到确定的存储位置进行存储。例如,计算机系统520可以接收关于新托盘514的信息(步骤a)。在一些实施方式中,关于新托盘514的信息可以从叉车516(或其它车辆)传送,该叉车拾取新托盘进行运输。新托盘514或其上的物品(例如,sku)可以在叉车516拾取其之前或之后被扫描,并且扫描的信息可以被传输到计算机系统520。在其它实施方式中,新托盘信息可以通过其它方式获得,例如在新托盘交付到仓库时由新托盘供应商提供。
63.计算机系统520可以基于所接收的新托盘信息识别新托盘514(步骤b)。计算机系统520可以获得关于新托盘514的托盘信息(步骤c)。例如,计算机系统520可以从托盘数据522中检索托盘信息。托盘信息包括设施、客户、产品类型、托盘进入仓库的时间(例如,星期几、一年中的第几周等)、物品描述、季节性和其它合适的信息。
64.计算机系统520可以确定新托盘514的预期存储时间(步骤d)。可以至少部分地基于托盘信息(例如,托盘数据522)和/或与仓库相关联的历史库存数据来确定新托盘514的预期存储时间。计算机系统520可以确定托盘514的尺寸(例如,高度)(步骤e)。例如,计算机系统520可以从托盘尺寸数据528中获得托盘尺寸,托盘尺寸数据可以是也可以不是托盘数据522的一部分。
65.计算机系统520可以根据新托盘514的预期存储时间和尺寸来确定最佳存储位置(步骤f)。可以确定最佳存储位置以优化人工成本(例如,基于预期存储时间)和存储货架的空间使用(例如,基于托盘尺寸)。计算机系统520可以将最佳存储位置传输到叉车516(步骤g),叉车516可以运输新托盘514并将其放置到最佳存储位置(例如,仓库货架的确定部分)(步骤h)。
66.图6是用于确定托盘在仓库中的最佳存储位置并将其放置在确定位置的示例过程600的流程图。过程600可以从接收新托盘数据开始(框602)。新托盘数据可用于识别需要存放在仓库中的新托盘。当托盘被运送到仓库时,新托盘数据可以由新托盘的供应商提供。或者,新托盘数据可以通过与一或多个计算装置,例如计算系统120通信连接的终端手动获得(例如,由识别新托盘并输入有关托盘的信息(例如,sku)的工人获得)。或者,新托盘数据可以通过在仓库中的叉车或其它合适的车辆移动新托盘之前或同时扫描托盘(例如,扫描托盘上的条形码)来获得。新托盘数据可以保存为图5中的托盘数据522。
67.过程600可以进一步包括获得与新托盘相关联的各种因素630(框604)。这些因素包括历史库存信息、托盘物品属性(例如,产品类型、季节性等)、托盘的客户、时间信息(例如,托盘进出仓库时是星期几、一年中的第几周等)、设施信息(例如,设施类型、操作条件等)、托盘描述、托盘物品描述、托盘尺寸和其它相关信息中的一或多项。
68.历史库存信息可以包括在过去的预定时间段内,或在过去在设施的整个存储时间内,相同或相似种类的托盘和/或相同或相似客户的托盘的存储信息。附加地或替代地,历史库存信息可以包括可以用于预测的不同种类的托盘和/或不同客户的托盘的历史数据。可以考虑同一客户和/或不同客户随时间推移的托盘存储历史表现,以生成对要存储在仓库中的特定托盘的存储时间的预测。
69.物品描述可以指示关于托盘中物品的人类可读描述,例如“6盎司草莓果泥”。可以使用例如自然语言处理将物品描述解析为机器可理解的语言,使得物品描述可以用于预测托盘在仓库中的存储时间。
70.过程600可以包括预测新托盘的预期存储时间(框606)。例如,可以使用机器学习算法来预测预期存储时间。多种机器学习算法可用于预测。用于预测的一些示例机器学习算法采用具有多个层(例如输入层、一或多个中间层和输出层)的人工神经网络。在一些实施方式中,预期存储时间的预测可以由接收与新托盘相关联的各种因素作为输入的输入层(框620)、处理输入的中间层(框622)和生成托盘存储时间的输出层(框624)来执行。如本文所述,托盘的存储时间可以表示为托盘在仓库中的存储时间的百分位数。
71.过程600可以包括确定新托盘的尺寸(框608)。可以主要考虑新托盘的高度来确定新托盘是否和/或如何适合存储货架的货架开口。在一些实施方式中,新托盘的尺寸可以从因素630中获得。
72.过程600可以包括使用成本函数来确定最佳存储位置(框610)。一些示例成本函数被配置为优化用于将托盘递送到托盘存储区域和从托盘存储区域递托盘(例如,一或多个货架所在的区域)的人工成本以及利用托盘存储区域的空间的成本(例如,使用具有已使用和未使用的货架开口的货架的成本)。在一些实施方式中,对于特定托盘,托盘存储区域中每个位置,例如存储货架中的每个货架开口(或每个未占用的货架开口)的成本可以基于存储时间匹配和存储尺寸匹配来计算。存储时间匹配与托盘存储区域中的位置(例如,货架开口)与托盘的预期存储时间(例如,百分位数)的适合程度有关,以节省人工成本。存储尺寸匹配涉及托盘存储区域中的位置(例如,货架开口)与托盘尺寸(例如,高度)的匹配程度,以最大化存储区域的空间利用率。
73.存储时间匹配可以使用托盘分配数据640来确定。托盘分配数据640可以被保存为图5中的托盘分配数据526。在一些实施方式中,托盘分配数据640以表格形式提供规则,该表格映射托盘存储时间的范围(例如,百分位数)与存储位置(例如,货架的部分)之间的关系。举例来说,如果预测新托盘具有25的百分位数的存储时间,则使用所示托盘分配数据640确定新托盘与货架的第2部分相匹配。
74.存储尺寸匹配可以使用货架开口数据642来确定。货架开口数据642可以保存为图5中的货架开口数据530。货架开口数据642可以提供一或多个货架中每个货架开口的尺寸(例如,高度)。货架开口数据642可以进一步提供每个货架开口的可用性,例如货架开口是否打开以存储托盘,或者已经被占用并且不可用于另一个托盘。
75.过程600可以包括将确定的存储位置传送到诸如叉车的运输设备,以便将新托盘运输并放置到确定的存储位置以在仓库中存储(框612)。
76.图7是用于为托盘在仓库中选择最佳货架开口的示例过程700的流程图。过程700可以包括识别一或多个存储货架中的多个候选货架开口(框702)。候选货架开口可以是当前未被占用并因此可用于存放托盘的货架开口。候选货架开口可以基于货架开口数据,例如货架开口数据530、642来确定。
77.过程700可以包括计算候选货架开口的优化值(框704)。在一些实施方式中,可以通过确定存储时间匹配值(框710)、确定存储高度匹配值(框712)以及基于存储时间匹配值和存储高度匹配值计算优化值(框716)来计算候选货架开口中的每一个的优化值。存储时间匹配值可以指示托盘的预期存储时间是否与分配给候选货架开口的存储时间范围匹配,或者托盘的预期存储时间与分配给候选货架开口的存储时间范围的接近程度。存储高度匹配值可以指示托盘的高度是否与候选货架开口的高度匹配,或者托盘与候选货架开口适配的接近度(例如,托盘的高度与候选货架开口的高度的接近度)。
78.可以使用存储时间匹配值和存储高度匹配值的预定函数来计算优化值。例如,优化值可以是存储时间匹配值和存储高度匹配值的总和。
79.存储时间匹配值、存储高度匹配值和优化值可以以各种形式和/或比例来表示。例如,这些值可以表示为缩放或未缩放的分数。在其它示例中,优化值可以表示为二进制数、指标、符号等。
80.在一些实施方式中,存储时间匹配值和/或存储高度匹配值可以被加权以计算优化值(框714)。可以调整存储时间匹配值和/或存储高度匹配值的权重以满足各种目的。例如,如果节省人工成本更受关注,则存储时间匹配值的权重可以比存储高度匹配值更高。如果空间利用率如果更关注,则存储高度匹配值的权重可以比存储时间匹配值更高。优化值的示例加权成本函数可以是:
81.f(x)=cx(x)+(1-c)y(x)
82.其中x是托盘,f是优化值,x是存储时间匹配值,y是高度匹配值,并且c是权重值。
83.过程700可以包括基于计算的优化值从候选货架开口中选择用于托盘的货架开口(框706)。例如,具有最高优化值的候选货架开口中的一个可以被认为是最佳货架开口,并被选为托盘的货架开口。在其它示例中,具有满足阈值(例如,大于阈值)的优化值的候选货架开口中的多个可以被认为是多个最佳货架开口,并且可以选择多个最佳货架开口中的任意一个作为托盘的货架开口。根据成本函数和/或评分方案,最佳货架开口可以具有最高或最低优化值,或者大于或小于阈值的值。
84.除了持续时间匹配和/或高度匹配之外或替代地,其它因素也可以用于计算优化值和/或选择货架开口。例如,可以计算优化值,和/或可以选择货架开口,使得相同的物品在货架中放置在一起或彼此靠近。在另一个示例中,可以计算优化值,和/或可以选择货架开口,以便将要一起运输的物品放置在货架中以分组。其它因素也是可能的。
85.在一些实施方式中,p范数可以用于计算。这里的直觉是“以多种度量计算距离”。根据p的值可以使用各种类型的范数。例如,p=1是“曼哈顿/出租车”距离,p=2是“直线”距离,并且p=3是“直线距离但避开所有麦当劳特许经营权”。在其它示例中使用其它p值进行计算。在其它实施方式中,可以使用其它距离度量来进行计算。
86.图8图示了用于基于新托盘的预期存储时间来确定新托盘的最佳存储位置的示例过程800。在该示例中,如以其侧视图呈现的存储货架802被布置成使得货架开口804被改变以为特定的存储设施增加或最大化对货架空间的使用,或者减少或最小化未使用的空间。在一些实施方式中,货架开口804可以随着设施的使用随时间变化而随时间调整(例如,不同的产品存储在仓库中,不同的公司或客户正在使用仓库)。
87.存储货架802具有多个部分806(包括806a-d),这些部分布置在距托盘810准备好被运输到存储货架802的装载区域808不同的距离处。在所示示例中,存储货架802具有按距装载区域808的距离排列的四个部分。具体地,第一、第二、第三和第四部分806a-d分别布置在距装载区域808的第一、第二、第三和第四距离l11-l14处。第一距离l11小于第二距离l12,第二距离l12小于第三距离l13,并且第三距离l13小于第四距离l14。
88.每个货架部分806被分配有特定范围的托盘存储时间。这类分配可以预先确定并存储为托盘分配数据或规则812(例如,托盘分配数据640)。在一些实施方式中,托盘的短存储时间表示托盘的周转时间短(例如,托盘在短时间段内递送进出仓库)。因此,较短的存储时间可以映射到更靠近装载区域808的货架部分806,从而可以将周转更快的货架存储在更靠近装载区域808的位置,从而节省递送进出仓库货架的人工成本。举例来说,如图所示,第一部分806a被分配0到5个百分位数之间的托盘存储时间,第二部分806b被分配5(包括5)到50个百分位数之间的托盘存储时间,第三部分806c被分配50(包括50)到90个百分位数之间的托盘存储时间,并且第四部分806d被分配90(包括90)到100个百分位数之间的托盘存储
时间。
89.可以识别要被递送到货架的托盘810,并且可以如本文所述确定每个托盘的分配数据820。例如,特定托盘的分配数据820可以包括托盘的预期存储时间(例如,以百分位数表示)和托盘的尺寸(例如,高度)。
90.当识别出将被递送和存储在货架中的特定托盘时,如本文所述生成每个未被占用并因此潜在地可用于托盘的货架开口804的货架开口数据830。例如,货架开口数据830可以包括每个货架开口相对于托盘的优化值。例如,可以基于存储时间匹配值和存储高度匹配值来计算优化值,存储时间匹配值和存储高度匹配值可以加权也可以不加权。在图示的示例中,对于托盘810d,货架开口804b在几个候选货架开口(包括804a-e)中提供最高的优化值(例如,1.0),因此可以被选为托盘810d的最佳货架开口。
91.图9图示了用于根据区域的占用率来缩放诸如一或多个存储货架902之类的托盘存储区域的示例技术900。例如,计算机系统904可以确定存储货架902的占用率(步骤a),并且基于占用率来缩放存储货架902(步骤b)。可以确定占用率以反映在不同时间,例如在预定的过去时间、在当前时间或在预定的未来时间的占用率。在一些实施方式中,可以基于当前库存、历史库存和/或各种其它因素来确定或预测占用率。
92.当确定存储货架902的占用率时,可以基于占用率来调整货架902的有效区域920,从而提高存储货架的空间利用率。举例来说,如果预期存储货架在未来预定时间段内仅被占用75%,则存储货架902的有效区域920可以减少至存储货架902的一半,并且存储货架的部分906a-d可以缩放到减小的有效区域920。存储货架902的剩余区域930未被使用。为了最大限度地节省人工成本,可以将存储货架902的有效区域和缩放部分布置在靠近装载区域908的存储货架902的前部。
93.图10是计算装置1000、1050的框图,计算装置可用于作为客户端或作为服务器或多个服务器实现本文档中描述的系统和方法。计算装置1000旨在表示各种形式的数字计算机,例如膝上型电脑、台式机、工作站、个人数字助理、服务器、刀片式服务器、大型机和其它适当的计算机。计算装置1050旨在表示各种形式的移动装置,例如个人数字助理、蜂窝电话、智能手机和其它类似的计算装置。此处显示的组件、它们的连接和关系以及它们的功能仅作为示例,并不意味着限制本文档中描述和/或要求保护的实施方式。
94.计算装置1000包括处理器1002、存储器1004、存储装置1006、连接到存储器1004和高速扩展端口1010的高速接口1008、以及连接到低速总线1014和存储装置1006的低速接口1012。组件1002、1004、1006、1008、1010和1012中的每一个都使用各种总线互连,并且可以安装在公共主板上或以其它适当的方式安装。处理器1002可以处理用于在计算装置1000内执行的指令,包括存储在存储器1004中或存储装置1006上的指令,以在外部输入/输出装置上显示用于gui的图形信息,例如耦合到高速接口1008的显示器1016。在其它实施方式中,可以酌情使用多个处理器和/或多个总线以及多个存储器和存储器类型。此外,可以连接多个计算装置1000,每个装置提供必要操作的部分(例如,作为服务器组、刀片服务器组或多处理器系统)。
95.存储器1004在计算装置1000内存储信息。在一种实施方式中,存储器1004是易失性存储器单元。在另一实施方式中,存储器1004是非易失性存储器单元。存储器1004也可以是另一种形式的计算机可读介质,例如磁盘或光盘。
96.存储装置1006能够为计算装置1000提供大容量存储。在一种实施方式中,存储装置1006可以是或包含计算机可读介质,例如软盘装置、硬盘装置、光盘装置或磁带装置,闪存或其它类似的固态存储装置,或装置阵列,包括存储区域网络或其它配置中的装置。计算机程序产品可以有形地体现在信息载体中。计算机程序产品还可以包含在执行时执行一或多种方法(例如上述那些方法)的指令。信息载体是计算机或机器可读介质,例如存储器1004、存储装置1006或处理器1002上的存储器。
97.高速控制器1008管理计算装置1000的带宽密集型操作,而低速控制器1012管理较低带宽密集型操作。这类功能分配仅是示例。在一种实施方式中,高速控制器1008耦合到存储器1004、显示器1016(例如,通过图形处理器或加速器),并且耦合到可以接受各种扩展卡(未示出)的高速扩展端口1010。在实施方式中,低速控制器1012耦合到存储装置1006和低速扩展端口1014。低速扩展端口可以包括各种通信端口(例如,usb、蓝牙、以太网、无线以太网),可以例如通过网络适配器耦合到一或多个输入/输出装置,例如键盘、定点装置、扫描仪或网络装置,例如交换机或路由器。
98.如图所示,计算装置1000可以以多种不同的形式实现。例如,它可以实现为标准服务器1020,或者在一组此类服务器中多次实现。它也可以作为货架服务器系统1024的一部分来实现。此外,它可以在个人计算机中实现,例如膝上型计算机1022。或者,来自计算装置1000的组件可以与移动装置(未示出)中的其它组件组合,例如装置1050。每个此类装置可以包含一或多个计算旨在1000、1050,并且整个系统可以由多个相互通信的计算装置1000、1050组成。
99.计算装置1050包括处理器1052、存储器1064、诸如显示器1054的输入/输出装置、通信接口1066和收发器1068,以及其它组件。装置1050还可以配备有存储装置,例如微驱动器或其它装置,以提供额外的存储。组件1050、1052、1064、1054、1066和1068中的每一个都使用各种总线互连,并且可以将若干组件安装在公共主板上或以其它适当的方式安装。
100.处理器1052可以在计算装置1050内执行指令,包括存储在存储器1064中的指令。处理器可以被实现为包括单独和多个模拟和数字处理器的芯片的芯片组。此外,处理器可以使用多种架构中的任何一种来实现。例如,处理器可以是cisc(复杂指令集计算机)处理器、risc(精简指令集计算机)处理器或misc(最小指令集计算机)处理器。例如,处理器可以提供装置1050的其它组件的配合,例如用户界面的控制、装置1050运行的应用程序以及装置1050的无线通信。
101.处理器1052可以通过控制接口1058和耦合到显示器1054的显示接口1056与用户通信。显示器1054可以是例如tft(薄膜晶体管液晶显示器)显示器或oled(有机发光二极管)显示器或其它合适的显示技术。显示接口1056可以包含用于驱动显示器1054向用户呈现图形和其它信息的适当电路。控制接口1058可以接收来自用户的命令并将它们转换以提交给处理器1052。另外,可以提供与处理器1052通信的外部接口1062,以使装置1050能够与其它装置进行近区通信。可以提供外部接口1062,例如,在一些实施方式中用于有线通信,或者在其它实施方式中用于无线通信,并且还可以使用多个接口。
102.存储器1064在计算装置1050内存储信息。存储器1064可以实现为计算机可读介质、易失性存储器单元或非易失性存储器单元中的一或多种。还可以提供扩展存储器1074并通过扩展接口1072连接到装置1050,扩展接口可以包括例如simm(单列直插式存储器模
块)卡接口。这类扩展存储器1074可以为装置1050提供额外的存储空间,或者也可以为装置1050存储应用程序或其它信息。具体地,扩展存储器1074可以包括执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器1074可以作为装置1050的安全模块提供,并且可以用允许安全使用装置1050的指令进行编程。此外,可以通过simm卡提供安全应用程序以及附加信息,例如以不可破解的方式将识别信息放置在simm卡上。
103.存储器可以包括例如闪存和/或nvram存储器,如下所述。在一种实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含在执行时执行一或多种方法(例如上述那些方法)的指令。信息载体是计算机或机器可读介质,例如存储器1064、扩展存储器1074或处理器1052上的存储器,其可以例如通过收发器1068或外部接口1062接收。
104.装置1050可以通过通信接口1066进行无线通信,通信接口在必要时可以包括数字信号处理电路。通信接口1066可以提供各种模式或协议下的通信,例如gsm语音呼叫、sms、ems或mms消息、cdma、tdma、pdc、wcdma、cdma2000或gprs等。例如,可以通过射频收发器1068进行这类通信。此外,可以进行短距离通信,例如使用蓝牙、wifi或其它这类收发器(未示出)。此外,gps(全球定位系统)接收器模块1070可以向装置1050提供额外的导航和位置相关的无线数据,这些数据可以由在装置1050上运行的应用程序适当使用。
105.装置1050还可以使用音频编解码器1060进行可听通信,音频编解码器可以接收来自用户的语音信息并将其转换为可用的数字信息。音频编解码器1060可以类似地为用户生成可听的声音,例如通过扬声器,例如,在装置1050的手机中。这类声音可以包括来自语音电话呼叫的声音,可以包括录制的声音(例如,语音消息、音乐文件等)并且还可以包括由在装置1050上运行的应用程序生成的声音。
106.如图所示,计算装置1050可以以多种不同的形式实现。例如,它可以实现为蜂窝电话1080。它也可以实现为智能手机1082、个人数字助理或其它类似移动装置的一部分。
107.另外,计算装置1000或1050可以包括通用串行总线(usb)闪存驱动器。usb闪存驱动器可以存储操作系统和其它应用程序。usb闪存驱动器可以包括输入/输出组件,例如可以插入到另一个计算装置的usb端口中的无线发射器或usb连接器。
108.本文描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的asic(专用集成电路)、计算机硬件、固件、软件和/或它们的组合中实现。这些各种实施方式可以包括在一或多个计算机程序中的实施方式,该计算机程序在包括至少一个可编程处理器的可编程系统上可执行和/或可解释,该可编程处理器可以是专用或通用的,耦合以从存储系统、至少一个输入装置和至少一个输出装置接收数据和指令,以及向存储系统、至少一个输入装置和至少一个输出装置发送数据和指令。
109.这些计算机程序(也称为程序、软件、软件应用程序或代码)包括用于可编程处理器的机器指令,并且可以用高阶程序和/或目标定向的编程语言和/或用汇编/机器语言来实现。如本文所用,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、器具和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
110.为了提供与用户的交互,本文描述的系统和技术可以在具有用于向用户显示信息的显示装置(例如,crt(阴极射线管)或lcd(液晶显示器)监视器)以及用户可以使用其向计
算机提供输入的键盘和定点装置(例如,鼠标或轨迹球)的计算机上实现。也可以使用其它类型的装置来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈(例如,视觉反馈、听觉反馈或触觉反馈);可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。
111.本文描述的系统和技术可以在包括后端组件(例如,作为数据服务器)或包括中间件组件(例如,应用服务器)或包括前端组件(例如,具有图形用户界面或web浏览器的客户端计算机,用户可以通过它与本文描述的系统和技术的实施方式进行交互)或此类后端、中间件或前端组件的任何组合的计算系统中实现。系统的组件可以通过任何形式或媒介的数字数据通信(例如,通信网络)相互连接。通信网络的示例包括局域网(“lan”)、广域网(“wan”)、对等网络(具有临时或静态成员)、网格计算基础设施和互联网。
112.计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络进行交互。客户端和服务器的关系是通过在各自的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生的。
113.虽然本说明书包含许多具体实施细节,但这些不应被解释为对任何发明的范围或可能要求保护的内容的限制,而是对特定于特定发明的特定实施方式的特征的描述。本说明书中在分开的实施方式的上下文中描述的某些特征也可以在单个实施方式中以组合形式实现。相反,在单个实施方式的上下文中描述的各种特征也可以在多个实施方式中单独或以任何合适的子组合来实现。此外,尽管特征在上文可以被描述为以某些组合起作用并且甚至最初如此要求保护,但是在某些情况下可以从要求保护的组合中去除一或多个特征,并且要求保护的组合可以针对子组合或子组合的变体。
114.类似地,虽然在附图中以特定顺序描绘了操作,但这不应被理解为要求以所示特定顺序或按顺序执行此类操作,或者执行所有所示操作以实现期望结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施方式中各种系统组件的分离不应被理解为在所有实施方式中都需要这类分离,应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或打包成多个软件产品。
115.因此,已经描述了本主题的特定实施方式。其它实施方式涵盖在以下权利要求的范围内。在某些情况下,权利要求中所述的动作可以以不同的顺序执行,并且仍能达到期望的结果。此外,附图中描述的过程不一定要求按照所示出的特定顺序或按照先后顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1