商品上架的方法、装置、电子设备及可读介质
技术领域
本申请涉及物流与通信领域,尤其涉及一种商品上架的方法、装置、 电子设备及可读介质。
背景技术
现代物流中商品上架是仓库生产中的重要环节。当前的商品上架主 要依靠操作员的上架经验,具体为通过操作员在仓库货架中查找可以满 足当前待上架商品需求的储位,从而完成商品的上架任务。现有的商品 上架方法大致可以分为如下4种:
(1)随机上架:上架到可用的储位。
(2)就近上架:上架到上架员遇到的第一个空储位上。
(3)分类上架:根据待上架商品的类别将其上架到规定的区域储位 中。
以上三种方案均为上架员人工查找储位。然而,对大型仓库来说, 储位实时更新速度很快,上架员将花费较多时间寻找当前上架商品的可 用储位。现有的上架方法将降低仓库的运营效率,造成该现象的原因具体 如下:
(1)缺少精确到储位级别实时库存管理***,库存实时管理***要 精确到储位级别,不仅需要完善的软硬件***,更需要健全的管理制度; 同时,由于上架每时每刻都在发生,因此实时查询对***的要求较高, 而通过生产库进行实时数据查询会给生产数据库带来严重的查询压力; 并且,大件上架任务多是整托盘上架,需要空储来满足需求,而当前的实时库存表中无法获取到空储位信息,因此通常难以满足上架查询需 求。
(2)仓库中储位类型多样,例如地堆、拣货区、储货区;而且每种 类型的储位商品上架需求都不一样,每个储位中可能存在的商品类型多 样,而如何根据当前上架需求实时计算储位的可用状态,涉及到复杂的 装箱算法逻辑,目前暂未见到针对仓库不同储位类型上架的装箱算法。
发明内容
有鉴于此,本申请提供一种商品上架的方法、装置、电子设备及可读 介质,可以在不影响生产***的情况下实现多储位类型的实时查询,以 及通过并行装箱运算获得合适的储位集合。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分 地通过本申请的实践而习得。
根据本发明示例实施例的一方面,提出一种商品上架方法,包括: 确定待上架商品的商品信息,所述商品信息包括商品特征与数量;通过 储位明细表与储位商品数量表实时确定仓库中多个待上架区域的储位状 态信息;根据所述商品特征与数量与所述储位状态信息确定可用储位信 息;以及由所述可用储位信息确定待上架储位;其中所述储位明细表与所 述储位商品数量表通过库存表日志实时更新。
在本发明的一种示例实施例中,通过储位明细表与储位商品数量表 实时确定仓库中多个待上架区域的储位状态信息包括:实时获取所述储 位明细表与所述储位商品数量表;以及通过所述储位明细表与所述储位 商品数量表确定所述多个待上架区域的储位状态信息;其中,所述待上 架区域包括空储位区,拣货区,储货区,以及地堆区。
在本发明的一种示例实施例中,实时获取所述储位明细表与所述储 位商品数量表包括:通过分布式发布订阅消息***获取实时生成数据中 的日志信息;以及通过实时计算框架筛选所述日志信息,以对所述储位 明细表与所述储位商品数量表进行更新。
在本发明的一种示例实施例中,对所述储位明细表与所述储位商品 数量表进行更新还包括:通过离线库存初始化储位明细表。
在本发明的一种示例实施例中,对所述储位明细表与所述储位商品 数量表进行更新包括:通过所述储位明细表定时更新所述储位商品数量 表。
在本发明的一种示例实施例中,根据所述商品特征与数量与所述储 位状态信息确定可用储位信息包括:基于所述商品特征与数量与所述储 位状态信息,通过并行运行多个装箱算法以确定可用储位信息。
在本发明的一种示例实施例中,根据所述商品特征与数量与所述储 位状态信息确定可用储位信息包括:获取所述的空间数据,所述空间数 据包括储位尺寸;以及通过所述空间数据与所述商品特征与数量确定可 用储位信息。
在本发明的一种示例实施例中,通过所述空间数据与所述商品特征 与数量确定所述可用储位信息包括:通过二维装箱算法,对所述空间数 据与所述商品特征与数量进行优化求解,以确定所述可用储位信息。
在本发明的一种示例实施例中,根据所述商品特征与数量与所述储 位状态信息确定可用储位信息包括:通过装箱算法、所述商品特征与数 量与空储位区的储位状态信息确定可用储位信息;通过装箱算法、所述 商品特征与数量与拣货区的储位状态信息确定可用储位信息;通过装箱 算法、所述商品特征与数量与储货区的储位状态信息确定可用储位信息; 以及通过装箱算法、所述商品特征与数量与地堆区的储位状态信息确定 可用储位信息。
在本发明的一种示例实施例中,由所述多个第一储位中确定待上架 储位包括:通过狄克斯特拉算法与所述可用储位信息的位置信息确定待 上架储位。
根据本发明示例实施例的另一方面,提供了一种商品上架装置,包 括:商品信息模块,用于确定待上架商品的商品信息,所述商品信息包 括商品特征与数量;储位状态模块,用于通过储位明细表与储位商品数 量表实时确定仓库中多个待上架区域的储位状态信息;储位筛选模块, 用于根据所述商品特征与数量与所述储位状态信息确定可用储位信息; 以及上架模块,用于由所述可用储位信息中确定待上架储位。
根据本发明示例实施例的另一方面,提供了一种电子设备,包括一 个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或 多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实 现上述任一项所述的方法。
根据本发明示例实施例的另一方面,提供了一种计算机可读介质, 其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上 述任一项所述的方法。
本发明提供的一种商品上架的方法、装置、电子设备及可读介质,能 够在不影响生产***的情况下实现多储位类型的实时查询,以及通过并 行装箱运算获得合适的储位集合。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解 释性的,并不能限制本发明。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、 特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些 实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提 下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种商品上架方法及装置的*** 框图;
图2是根据一示例性实施例示出的一种商品上架方法的流程图;
图3是根据一示例性实施例示出的一种装箱算法的示意图;
图4是根据一示例性实施例示出的一种商品上架方法的流程图;
图5是根据一示例性实施例示出的一种商品上架方法的流程图;
图6是根据一示例性实施例示出的一种商品上架方法的流程图;
图7是根据一示例性实施例示出的一种商品上架装置的框图;
图8是根据一示例性实施例示出的用于商品上架的电子设备的框 图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够 以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供 这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传 达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分, 因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一 个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本 公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践 本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它 的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知 方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的 实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或 多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理 器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和 操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可 以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有 可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种 组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与 另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开 概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中 的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中 的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公 开的保护范围。
图1是根据一示例性实施例示出的一种商品上架方法及装置的*** 框图。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设 备101、102、103所进行操作的商品上架***提供支持的后台管理服务 器(仅为示例)。后台管理服务器可以对接收到的商品上架请求等数据进 行分析等处理,并将处理结果(例如推荐的储位、上架路径--仅为示例) 反馈给终端设备。
服务器105可例如确定待上架商品的商品信息,商品信息包括商品 特征与数量;服务器105可例如实时获取仓库中多个待上架区域的储位状 态信息;服务器105可例如根据所述商品特征与数量与所述储位状态信息 确定可用储位信息;服务器105可例如由所述可用储位信息中确定待上架 储位。
服务器105可以是一个实体的服务器,还可例如为多个服务器组成, 服务器105中的一部分可例如作为本公开中的商品库存***,用于实时 更新仓库中的储位存储情况;以及服务器105中的一部分还可例如作为 本公开中的商品上架***,用于确定待上架商品的商品信息;通过储位 明细表与储位商品数量表实时确定仓库中多个待上架区域的储位状态信 息;根据所述商品特征与数量与所述储位状态信息确定可用储位信息; 以及由可用储位信息中确定待上架储位。
需要说明的是,本公开实施例所提供的商品上架的方法可以由服务 器105执行,相应地,商品上架的装置可以设置于服务器105中。而提供 给用户进行可用储位的查询页面与进行商品上架的请求端一般位于终端 设备101、102、103中。
图2是根据一示例性实施例示出的一种商品上架方法的流程图。
参考图2,商品上架方法至少可以包括:
步骤S210,确定待上架商品的商品信息,商品信息包括商品特征与 数量。
步骤S220,通过储位明细表与储位商品数量表实时确定仓库中多个 待上架区域的储位状态信息。
步骤S230,根据所述商品特征与数量与所述储位状态信息确定可用 储位信息。
步骤S240,由可用储位信息中确定待上架储位。
根据图2示出的商品上架的方法,可以在不影响生成***的前提下实 现多储位类型的实时查询,并***推荐合适的待上架储位集合。
下面,将参照图2,对本发明示例实施例中的商品上架方法进行说 明。
在步骤S210中,确定待上架商品的商品信息,所述商品信息包括商 品特征与数量。
其中,商品特征可以记录商品的名称、尺寸。类型、适合存放的储 位类型等,本发明的技术方案对此并不作特殊限定。商品数量可以记录 每种商品的待上架的数量。
在步骤S220中,通过储位明细表与储位商品数量表实时确定仓库中 多个待上架区域的储位状态信息。
根据示例实施例,实时获取所述储位明细表与所述储位商品数量表; 以及通过所述储位明细表与所述储位商品数量表确定所述多个待上架区 域的储位状态信息;其中,待上架区域包括空储位区,拣货区,储货区, 以及地堆区。
根据示例实施例,实时获取所述储位明细表与所述储位商品数量表 包括:通过分布式发布订阅消息***获取实时生成数据中的日志信息; 以及通过实时计算框架筛选日志信息,以对储位明细表与储位商品数量 表进行更新。
其中,分布式发布订阅消息***可以为Kafka***。Kafka***是一 个分布式的发布-订阅消息***,能够支撑海量数据的数据传递。在离线 和实时的消息处理业务***中,Kafka都有广泛的应用。但本发明的技术 方案并不限于此,还可以选择其他的分布式发布订阅消息***进行操作。 日志信息用于记录所有更新了的数据或潜在更新数据。其具体实现可以 选用Binlog日志,本发明对此不作特殊限定。
根据示例实施例,对储位明细表与储位商品数量表进行更新还包括: 通过离线库存初始化储位明细表。其中,离线库存来源于数据集市,数 据集市是为满足特定的部门或者用户的需求,按照多维的方式进行存储, 包括定义维度、需要计算的指标、维度的层次等,生成面向决策分析需 求的数据立方体。数据集市是从更加庞大的数据仓库中抽取出来的,其 特点为迎合了专业用户的特殊需求,例如在分析、内容、表现以及易用 方面。在本示例实施例中,数据集市为面向仓库中储位管理的数据库。
根据示例实施例,对储位明细表与储位商品数量表进行更新还包括: 通过储位明细表定时更新储位商品数量表。当操作员误操作时,可能造 成数据不一致情况。通过上述方法可确保数据的一致性。
在步骤S230中,根据所述商品特征与数量与储位状态信息确定可用 储位信息。
根据示例实施例,基于所述商品特征与数量与储位状态信息,通过并 行运行多个装箱算法以确定可用储位信息。并行运算可同时计算不同储 位类型中满足上架需求的多个第一储位,极大地提升了运算效率。
根据示例实施例,获取所述可用储位信息的空间数据,所述空间数 据包括储位尺寸;以及通过所述空间数据与所述商品特征与数量确定包 含所述可用储位信息。其中,所述可用储位信息的空间数据还可以包括该 储位已放置商品的空间尺寸。
根据示例实施例,通过所述空间数据与所述商品特征与数量确定所 述可用储位信息包括:通过二维装箱算法,对所述空间数据与所述商品 特征与数量进行优化求解,以确定所述可用储位信息。
其中,装箱问题为:把一定数量的物品放入容量相同的一些箱子中, 使得每个箱子中的物品大小之和不超过箱子容量并使所用的箱子数目最 少。装箱问题广泛存在于工业生产,包括服装行业的面料裁剪、运输行 业的集装箱货物装载、加工行业的板材型材下料、印刷行业的排样和现 实生活中包装、整理物件等。
根据示例实施例,根据所述商品特征与数量与储位状态信息确定可 用储位信息包括:通过装箱算法、所述商品特征与数量与空储位区的储 位状态信息确定可用储位信息;通过装箱算法、所述商品特征与数量与 拣货区的储位状态信息确定可用储位信息;通过装箱算法、所述商品特 征与数量与储货区的储位状态信息确定可用储位信息;以及通过装箱算 法、所述商品特征与数量与地堆区的储位状态信息确定可用储位信息。
根据示例实施例,装箱算法可以采用化简为:已知储位L的长宽高 (Ll,Lw,Lh)及L内已有商品(S1,S2,S3,…,Sn);托盘P及长宽高(Pl,Pw,Ph);待上 架商品S及上架数量q。求解:q件商品S能否上架到储位L中。将待上 架商品加入到已有商品列表中,即求解:储位L中能否容纳 (S1,S2,S3,...,Sn,S)商品。
上述装箱问题的求解可以分为如下步骤:
步骤1:离线计算每种商品的托盘规格。仓库内已有商品的托盘规格, 根据每个商品的长宽高计算在托盘P中的可放数量。由于每种大件商品 有特定的码放规则,即最长边立、次长边立、最短边立等,因此每层码 放规则一定,转换为二维平面装箱问题。二维装箱采用启发式方法:(1) 将商品码放到托盘中,相邻边重合:(2)放置后的商品通过另外两边将 托盘底面分为3部分,如图3所示,放置后将托盘分为商品区域,及A、 B、C三个剩余区域。(3)对于A+C和B+C区域,重复使用(1)(2) 操作,并在码放过程中变换长和宽的方向,保存每一步最大码放数,直 到剩余空间无法放置商品为止。(4)使用托盘高整除商品高,得到码放层数。(5)每层码放数量乘以码放层数,即托盘可容纳商品数量。
步骤2:实时计算上架装箱算法。由于储位类型不同,其适用的装箱 算法也有所不同。例如,对于储货位,其装箱算法可以为:(1)计算储 位可容纳托盘数,因为托盘只能保持一个方向码放,因此直接通过储位 长和托盘长即可计算。(2)对于储位L中的每个商品:使用步骤(1) 的计算结果,计算商品占用的托盘数得到该储位目前已用托盘数量。(3) 若储位可容纳托盘数大于已用托盘数量,则返回true。对于拣货位,由 于其不涉及托盘上架,而是多种商品混放,而且每种商品可以码放,因 此也将该问题转换为二维装箱问题。其装箱算法可以为:(1)对于储位 L中的每个商品:通过储位高得到该商品的码放层数,从而得到该sku在 二维装箱中的码放个数,从而得到每个商品的二维码放个数。(2)对于 每种商品,使用步骤(1)中的装箱算法进行计算,从而得到拣货位装箱 结果。
步骤3:采用并行方式执行装箱算法。由于仓库储位较多,库存数量 较大,因此加入了并行计算功能。并行计算将有助于提高计算效率。
在步骤S240中,由可用储位信息中确定待上架储位。
根据示例实施例,由多个第一储位信息中确定待上架储位包括:通 过狄克斯特拉算法与可用储位信息的位置信息确定待上架储位。狄克斯 特拉算法是由荷兰计算机科学家狄克斯特拉于1959年提出的。是从一个 顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题。 运用该算法可以为上架员提供最短上架路径,以提升上架效率。使用狄 克斯特拉算法求解最短距离的步骤可以如下所述:
设仓库门G={g1,g2,…gp},储位L={l1,l2,…lq},U=G∪L,n=p+q;坐标集 合C={(xi,yi)|ui∈U};Dijkstra(l,g)为储位l与仓库门g间最短距离。
(1)储位权重算法步骤如下:
Step 1.构建n×n储位间邻接矩阵A,对行i与列j,若矩阵元素aij=1, 代表仓库门或储位ui与uj相邻且通过有向巷道连通。
Step 2.对所有仓库门,基于邻接矩阵A,使用迪克斯特拉算法计算 其到其他储位的距离:D'={dij|Dijkstra(li,gj),i∈{1,...,q},j∈{1,...,p}}。
Step 3.计算每个储位到任意门的最短距离,作为该储位的出库距离, D={di|min1≤j≤p(dij),dij∈D′};同时获得储位最短出库距离与对应仓库 门间映射关系F={i→gi}。
Step 4.对储位出库距离进行最大最小归一化,作为每个储位的权重
对集合W中任意元素wi,代表储位i的权重。
(2)储位有序列表的生成步骤如下:对li∈L,有wi和(xi,yi),以wi为一 序、xi为二序、yi为三序进行升序排序,获得储位有序列表lList(idx,l,w), 其中idx为列表序号,l为储位,w为权重。
图4是根据一示例性实施例示出的一种商品上架方法的流程图。
参照图4,商品上架方法可以包括:
步骤S410,获取所述可用储位信息的空间数据,空间数据包括储位 尺寸。
根据示例实施例,储位的空间数据还可以包括当前储位已放置商品 的空间尺寸。例如,想要将待上架商品放入已存储有与其相同的商品的 储位时,应考虑当前储位已放置的同类商品的空间尺寸。
步骤S420,通过所述空间数据与所述商品特征与数量确定可用储位 信息。
根据示例实施例,可以采用装箱算法确定多个第一储位。其中,第 一储位可以是能够容置待上架商品的推荐储位。例如,待上架商品数量 较多,一个储位放不下时,可以推荐多个第一储位。又例如,仓库中待 上架商品有多个合适的可放置储位时,则推荐多个第一储位。
图5是根据一示例性实施例示出的商品上架方法的流程图。
参照图5,商品上架方法可以包括:
步骤S510,通过装箱算法、所述商品特征与数量与空储位区的储位 状态信息确定可用储位信息。
步骤S520,通过装箱算法、所述商品特征与数量与拣货区的储位状 态信息确定可用储位信息。
步骤S530,通过装箱算法、所述商品特征与数量与储货区的储位状 态信息确定可用储位信息。
步骤S540,通过装箱算法、所述商品特征与数量与地堆区的储位状 态信息确定可用储位信息。
其中,储位状态信息可以包括当前储位的空间尺寸、已储存商品的 商品信息、空间尺寸等。
根据示例实施例,由于储位类型的不同,其适用的装箱算法在具体 步骤中将有所区别。因此针对每种类型的储位应选择与其匹配的装箱算 法。
根据示例实施例,可以采用并行运算的方式执行上述步骤 S510~S540。并行运算能够极大地提高查询速度,避免了现有技术中大量 分组操作造成的查询速度缓慢现象。
图6是根据一示例性实施例示出的商品上架方法的流程图。
参照图6,商品上架方法可以包括:
步骤S610,通过数据集市的离线数据初始化仓库储位明细表。
其中,数据集市是为满足特定的部门或者用户的需求,按照多维的 方式进行存储,包括定义维度、需要计算的指标、维度的层次等,生成 面向决策分析需求的数据立方体。从范围上来说,数据集市中的数据是 从更加专业的数据仓库中抽取出来的。其重点在于它迎合了专业用户群 的特殊需求,例如在分析、内容、表现以及易用方面。在本示例实施例 中,数据集市为面向仓库中储位管理的数据库。储位明细表可以记录仓 库中所有储位的相关信息,例如储位所在区域,储位类型(包括空储位、 拣货区、储货区、地堆区等)、储位的存储空间尺寸、已放置商品的商品 信息等,本发明的技术方案对此不作特殊限定。
根据示例实施例,当通过数据集市的离线数据初始化储位明细表后, 再通过储位明细表计算出每个储位当前的商品数量,更新实时储位商品 数量表。其中,储位商品数量表可以记录每个储位当前放置的商品的数 量。
步骤S620,从库存实时生产数据库中读取Binlog日志。
根据示例实施例,库存实时生产数据库集合了当前仓库商品的多主 题域的实时数据,其集合了来自不同数据源的数据。Binlog日志用于记 录所有更新了的数据或潜在的更新数据。在Binlog日志中,语句以“事 件”的形式保存,它描述了数据的更改。
步骤S630,将Binlog日志接入Kafka***。
其中,Kafka***是一个分布式的发布-订阅消息***,能够支撑海 量数据的数据传递。在离线和实时的消息处理业务***中,Kafka都有广 泛的应用。上述消息***可将数据从一个应用传递到另外一个应用,应 用只需关注于数据,无需关注数据在两个或多个应用间是如何传递的。 分布式消息传递基于可靠的消息队列,在客户端应用和消息***之间异 步传递消息。但本发明的技术方案并不限于此,还可以采用其他类型的 消息***进行数据的传递。
步骤S640,使用Spark Streaming接收实时Binlog数据。
其中,Spark Streaming是一个运行在Spark Core上的流式计算框架, 用于流式数据的处理。Spark Streaming具有高吞吐量和容错能力强的特 点。且其支持多种数据输入源,例如Kafka、Flume、Twitter、ZeroMQ 等。应该理解,本发明的技术方案并不限于此,还可以采用其他形式的 数据处理框架接收Binlog数据。
步骤S645,根据储位明细表定时更新储位商品数量表。
根据示例实施例,在实际操作中,可能会因为仓库误操作而造成数 据不一致的情况。在这一情况下,可根据储位明细表定时更新储位商品 数量表的方式以确保数据的一致性。
步骤S650,当有上架任务时,获取待上架商品的商品信息。
其中,商品信息包括商品特征与商品数量。商品特征可以包括商品 的类型、尺寸等,本发明的技术方案对此不作特殊限定。
根据示例实施例,商品特征可以包括商品的长宽高、商品类型等信 息,本发明的技术方案对此不作特殊限定。商品数量为待上架商品的个 数。
步骤S660,获取实时储位明细表与实时储位商品数量表。
其中,实时储位明细表和实时储位商品数量表由步骤S410初始化, 并通过步骤S620~S650实时更新得到的。
步骤S670,计算不同类型的储位的库存状态。
其中储位根据其类型可划分为空储位、拣货区、储货区、地堆区等。 库存状态可以包括其当前已经存储的商品的商品信息。
根据示例实施例,在计算库存状态时,可以优先查找仓库中待上架 商品当前已经存储的储位,以便更好地对商品进行同类存储。
步骤S680,使用装箱算法确定不同储位类型中的可用储位列表。
其中,不同类型的储位可以选择不同的装箱算法。其原因是不同类 型储位的特点不同,其上架方式以及适合堆放的商品可能不同。
步骤S690,使用狄克斯特拉算法推荐最佳上架储位。
图7是根据一示例性实施例示出的一种商品上架装置的框图。
参照图7,商品上架装置可以包括:商品信息模块710、储位状态模 块720、储位筛选模块730以及上架模块740。
在商品上架装置中,商品信息模块710用于确定待上架商品的商品信 息,所述商品信息包括商品特征与数量。其中,商品特征可以记录商品的 名称、尺寸。类型、适合存放的储位类型等,本发明的技术方案对此并 不作特殊限定。商品数量可以记录每种商品的待上架的数量。
储位状态模块720用于通过储位明细表与储位商品数量表实时确定 仓库中多个待上架区域的储位状态信息。
根据示例实施例,储位状态模块720用于实时获取所述储位明细表 与所述储位商品数量表;以及通过所述储位明细表与所述储位商品数量 表确定所述多个待上架区域的储位状态信息;其中,待上架区域包括空 储位区,拣货区,储货区,以及地堆区。
根据示例实施例,储位状态模块720用于通过分布式发布订阅消息 ***获取实时生成数据中的日志信息;以及通过实时计算框架筛选日志 信息,以对储位明细表与储位商品数量表进行更新。
根据示例实施例,储位状态模块720还用于通过离线库存初始化储位 明细表。其中,对储位明细表与储位商品数量表进行更新还包括:通过 储位明细表定时更新储位商品数量表。
储位筛选模块730用于根据所述商品特征与数量与所述储位状态信 息确定可用储位信息。
根据示例实施例,储位筛选模块730用于基于所述商品特征与数量 与储位状态信息,通过并行运行多个装箱算法以确定可用储位信息。并行 运算可同时计算不同储位类型中满足上架需求的多个第一储位,极大地 提升了运算效率。
根据示例实施例,储位筛选模块730用于获取所述可用储位信息的 空间数据,所述空间数据包括储位尺寸;以及通过所述空间数据与所述 商品特征与数量确定包含所述可用储位信息。
根据示例实施例,储位筛选模块730用于通过二维装箱算法,对所 述空间数据与所述商品特征与数量进行优化求解,以确定可用储位信 息。
根据示例实施例,储位筛选模块730用于通过装箱算法与空储位区 的储位状态信息确定可用储位信息;通过装箱算法与拣货区的储位状态 信息确定可用储位信息;通过装箱算法与储货区的储位状态信息确定可 用储位信息;以及通过装箱算法与地堆区的储位状态信息确定可用储位 信息。
上架模块740用于由所述可用储位信息中确定待上架储位。
根据示例实施例,上架模块740用于通过狄克斯特拉算法与可用储 位信息的位置信息确定待上架储位。
图8是根据一示例性实施例示出的用于商品上架的电子设备的框 图。
下面参照图8来描述根据本公开的这种实施方式的电子设备800。图 8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使 用范围带来任何限制。
如图8所示,计算机***800包括中央处理单元(CPU)801,其可 以根据存储在只读存储器(ROM)802中的程序或者从储存部分808加载 到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。 在RAM 803中,还存储有***操作所需的各种程序和数据。CPU 801、 ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口 805也连接至总线804。
以下部件连接至I/O接口805:包括触摸屏、键盘等的输入部分806; 包括诸如液晶显示器(LCD)等以及扬声器等的输出部分807;包括闪存 等的储存部分808;以及包括诸如无线网卡、高速网卡等的通信部分809。 通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需 要连接至I/O接口805。可拆卸介质811,诸如半导体存储器、磁盘等, 根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需 要被安装入储存部分808。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描 述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件 的方式来实现。因此,本发明实施例的技术方案可以以软件产品的形式 体现出来,该软件产品可以存储在一个非易失性存储介质(可以是 CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算设备 (可以是个人计算机、服务器、移动终端、或者智能设备等)执行根据本 发明实施例的方法。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的 示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明 或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在 多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到 本申请的其他实施例。本申请旨在涵盖本发明的任何变型、用途或者适应 性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括 本发明未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施 例仅被视为示例性的,本发明的真正范围和精神由权利要求指出。
应当理解的是,本发明并不限于这里已经示出的详细结构、附图方 式或实现方法,相反,本发明意图涵盖包含在所附权利要求的精神和范 围内的各种修改和等效设置。