CN111062653B - 一种货位选择方法、装置、计算机设备及存储介质 - Google Patents
一种货位选择方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111062653B CN111062653B CN201911167085.1A CN201911167085A CN111062653B CN 111062653 B CN111062653 B CN 111062653B CN 201911167085 A CN201911167085 A CN 201911167085A CN 111062653 B CN111062653 B CN 111062653B
- Authority
- CN
- China
- Prior art keywords
- cargo space
- cargo
- algorithm
- sub
- total demand
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Game Theory and Decision Science (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Educational Administration (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种货位选择方法、装置、计算机设备及存储介质。该方法包括:在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表。该方法可适应复杂仓库的场景、对数据库性能要求低。
Description
技术领域
本发明涉及仓库管理领域,尤其涉及一种货位选择方法、装置、计算机设备及存储介质。
背景技术
现有技术中,仓库管理系统(WMS)已有数十年发展历史,在WMS软件系统内定义的货位,通常为一个平面结构,即所有货位逻辑上主要隶属于同一层级(或可能根据区域简单划分成2-3级)。在定义货位时,一次性创建好所有的货位,并在数据结构上将其再组织成行列层。例如某仓库在一个区域内有2列5行3层,则在同一个货位表格中创建出30个货位记录,每个记录包含其列行层信息,展示时再根据这些信息进行组织。在这种情况下,当进行出入库自动货位选择时,也通常直接使用数据库查询筛选排序或者使用高级语言代替数据库但执行相同逻辑的方法。这种数据库排序方法,无法良好的执行不同逻辑、不同货位的逻辑限制要求,例如在一个容器(托盘)上存放了多种不同物料,或货位布局不规则等情况下,上述方法无法适应和满足这些场景的需求。考虑到自动化仓库的设备性能分散化要求,甚至每次只能选择出一个货位,需要反复重复过程来完成一个出入库单据的完整需求,导致系统对数据库服务器的性能需求偏高。
从数据持久化概念被提出后,程序设计开发过程中,增加了数据的对象化功能,将面向对象的程序设计延伸到了数据库,把每一条数据当作一个数据对象实体来对待。原本在数据库进行的操作,也逐渐可以在程序语言的运行环境下解决,并交由数据引擎实现对数据库的读取、写入、查询等工作。
但市面上的产品中,只是将现有的关系数据库逻辑以程序语言实现,并未使用对象化的设计重新规划数据库中的记录。因此在需要灵活的货位逻辑处理时,依旧受制于数据库的限制。而在使用货位选择算法时,由于性能需求和逻辑复杂度要求,多数依旧直接依赖于数据库的存储过程,对数据库的性能要求高。
在开发云端WMS产品的过程中,对货位通常有更复杂的组合逻辑,并会影响到相关的出入库货位选择算法。现有的数据库模式下,无法良好的同时应用于不同的场景。特别的,云端WMS通常会将不同客户的数据合并存放在同一个数据库系统中,而现有的基于数据库的算法,当需要针对不同客户开发不同逻辑时,则需要增加额外的判断,并且无法及时修改和及时使用。
发明内容
本发明实施例提供了一种货位选择方法、装置、计算机设备及存储介质,旨在解决现有货位选择方法无法适应复杂仓库的场景、对数据库性能要求高等问题。
本发明实施例提供一种货位选择方法,其包括:
当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;
在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回。
优选的,所述根据所述子货位的数量以及总需求量确定各子货位的需求量,包括:
按照以下公式将总需求量分摊至各子货位:
f(r)=rp/n,当f(r)小于m时,以m代替;
其中,r为总需求量,p为聚合货位对应算法放大系数,n为子货位的数量,m为设定值,f(r)为子货位的需求量。
优选的,所述调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量,包括:
若所述子货位仍为聚合货位时,则完整递归调用本流程;若所述子货位为简单货位时,则按照简单货位的流程执行。
优选的,所述若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量,包括:
计算总需求满足量与总需求量之间的差值delta;
按照下述公式计算附加量:
f(delta)=delata*p1/n1,其中n1为有空位的子货位的数量,p1为子货位对应算法的放大系数;
将附加量与所述f(r)相加得到相加值;
将所述相加值作为要求量,重新执行所述子货位对应的算法。
优选的,还包括:
读取各子货位的优先级调整系数和工作量评估值调整系数,计算货位列表中的每个子货位的优先级和工作量评估值。
优选的,所述货位优先级调整系数为a1和b1,所述货位工作量评估值调整系数为a2和b2;
所述优先级按如下方式计算:f(x1)=a1*x1+b1;
所述工作量评估值按如下方式计算:f(x2)=a2*x2+b2;
其中,x1为原优先级,f(x1)为调整后的优先级,x2为原工作量评估值,f(x2)为调整后的工作量评估值。
优选的,所述若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量,包括:
逐个提升货位列表中的子货位的需求满足量,并且按最小步长进行提升。
本发明实施例提供一种货位选择装置,包括:
选择单元,用于当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;
确定单元,用于在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
执行单元,用于调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
筛选单元,用于若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
提升单元,用于若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
补入单元,用于若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
循环单元,用于若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回。
本发明实施例提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的货位选择方法。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如上所述的货位选择方法。
本发明实施例提供了货位选择方法、装置、计算机设备及存储介质,本发明实施例采用了完整的对象定义方式,因此对于各种复杂仓库的货位逻辑,均可以分别满足。本发明实施例不再限定于同一区域必须采用同样策略的限制,而是可以针对每个单独的货位制定不同的策略算法。本发明实施例可以一次可以完成一个品规的需求量锁定,而不必循环每次锁定一个货位,减少执行次数,减轻对数据库的性能需求和执行压力。同时本发明可以针对不同货位进行细节开发,对开发人员的技能需求也有明显的下降,代码的复用程度也有明显提升,开发人员不再需要一次性考虑整个货位算法需求,而是分步骤分解要求,直到最终的简单货位。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的货位选择方法的流程示意图;
图2为本发明实施例提供的货位选择装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的货位选择方法的流程示意图,该方法可以包括:
S101、当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;
其中,算法组为一组算法。在聚合货位上,实际运行的算法需要分组排序,因此每次被外部调用时,需要设置一个算法组,将多个算法一起使用。
可以将算法组内的算法按照优先级排序,然后按照排序高低依次执行,例如先执行优先级高的算法,后执行优先级低的算法。同优先级的算法顺序则可以随机执行。
S102、在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
S103、调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
S104、若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
S105、若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
以简单货位为例,简单货位中会存放一个容器。容器中存放的货物数量,可能与要求不同。例如在出库时,这个货位可能被要求提供某品规(即某品规货物)10个,然而这个货位本身的容器上可能存在此品规12个。这时此货位的需求量为10,最大满足量为12。由于实际操作上,从同一个容器上存取货物,不会因为存取数量的差异带来明显的开销,当由于部分子货位无法提供足够的需求量时,上层的货位可能放大这些结果以直接满足需求而不必带来更多的操作开销。
S106、若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
当某个子货位被标记,意味着本货位的该子货位可以提供更多的货位,但该子货位本次货位选择结果中并未提供。
S107、若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回。
当本算法组执行完某个算法,导致总需求量均被满足,可以进行一个算法指定的选择与排序算法,从结果中进行选择出最终结果,解锁所有在本次操作中被临时锁定的货位,并返回。
本发明实施例采用了完整的对象定义方式,因此对于各种复杂仓库的货位逻辑,均可以满足。本发明实施例不再限定于同一区域必须采用同样策略的限制,而是可以针对每个单独的货位制定不同的策略算法。本发明实施例可以一次可以完成一个品规的需求量锁定,而不必循环每次锁定一个货位,减少执行次数,减轻对数据库的性能需求和执行压力。同时本发明可以针对不同货位进行细节开发,对开发人员的技能需求也有明显的下降,代码的复用程度也有明显提升,开发人员不再需要一次性考虑整个货位算法需求,而是分步骤分解要求,直到最终的简单货位。
具体来说,货位是被抽象化定义。例如,一个仓库内所有可以储存(包括临时停放)货物的位置都被定义为货位,但不包括不可以合规存放货物的载具。例如大部分输送线会被视为货位,因为在设计上输送线上可能预留有货物缓存位;而叉车、堆垛机则不被视为货位,这些载具不被设计用来存放货物,只被视为搬运货物的工具。
按照存放货物的数量,可将货位定义为三种:1、简单货位;2、聚合货位;3、区域货位。
简单货位是指直接用来存放容器,且只能存放最多一个容器。
聚合货位是指多个简单货位或聚合货位的聚合,它包含了一个或者多个简单货位、聚合货位。聚合货位可分为4种:有序堆:每个子货位均可以被存取,且每次存取时需要指定是哪个子货位。因此子货位均需要有一个有效的编号。例如要求到此货位下第三个小格子取走货物。无序堆:每个子货位均可以被存取,但从系统看来这些子货位地位一致,存取时可以随意使用本货位下的任何子货位。子货位可以有编号(用于实际存取后登记)也可以没有(此时在实际登记后只有数量有意义)。例如要求到此货位下取走两大包货物,而每一包货物被视为一个容器时。栈:子货位排成一列,只能从同一侧进出。在同一个货位下只能实现先进后出。通常可用于多深位货架。队列:子货位排成一列,只能从一侧进另一侧出。在同一个货位下只能实现先进先出。通常用于输送线。
区域货位是指关联至多个货位,并设置为一个逻辑上的区域。区域货位通常作为算法的承载,用于实现复杂逻辑上的货位选择算法。不同于聚合货位实际包含有下层逻辑货位,区域货位只是在逻辑上关联了多个货位,并不拥有这些货位。因此一个货位可以属于一个或多个区域货位,也可以不属于任何区域货位。
在WMS理论上,货物不能直接存放在货位上,而是需要先放置在容器中,再将容器放置在货位上。这种方式,可以实现将多个不同货物放在同一个货位上。而同时由于容器的限制,当需在仓库内直接移动时,这些货物将被同时移动。容器可以理解为一个货箱、托盘。容器可以分为实体容器与虚拟容器。实体容器是指实际上物理存在的容器。当货物被设置为需要实际容器存放时,在入库时需提供一个容器(如果货物没有自带容器,则需要从仓库内提供容器)。当货物出库后,容器可能也需要被分离后再次保存回仓库中重复利用。每个实体容器可能有自己的限制(存放货物的品类和数量限制),同时也需要跟踪每个实体容器的每次存放货物的记录。虚拟容器是指只存在于逻辑上的容器。当货物被设置为不需要实际容器存放时,在入库的时候于逻辑上创建一个虚拟的容器。当货物出库后,这个虚拟容器则被销毁。可以被视为此货物以单一存在的形式直接放置在一个货位上。在实际应用中,带有包装的大型货物以及仓库内的托盘组通常被设置为不需要实际容器存放,而在入库时被分配虚拟容器。通过虚拟容器的引入,简化了存储的模型,确保货位-容器-货物的关联关系不会因为货物的差异而发生变化。
本发明实施例中,货位已经被实际分散化布置(每个聚合货位包含下一层的货位,整个仓库实际上被规范为一个聚合货位),而不再属于同一个层,在任何一个货位上,可以设置多个算法。
在一实施例中,所述根据所述子货位的数量以及总需求量确定各子货位的需求量,包括:
按照以下公式将总需求量分摊至各子货位:
f(r)=rp/n,当f(r)小于m时,以m代替;
其中,r为总需求量,p为聚合货位对应算法放大系数,n为子货位的数量,m为设定值,f(r)为子货位的需求量。
此处是指执行聚合货位的算法时会计数作用域内子货位数量n,带入本次总需求量r,聚合货位对应算法放大系数p、设定值m,套以公式f(r)=rp/n,只计数一层,当f(r)结果小于m时,取m代替,计算出每个子货位应被请求的量(子货位的需求量)。然后作用域内每个子货位的指定算法均会被执行,并分别记录每个子货位的算法执行结果。
此处表示的是聚合货位被要求满足一定数量的结果,并将这个要求分割向子货位申请时,应分别申请多少数量。基于数学标准,p可以默认为1,m可以默认为0。意义为将总的需求按照子货位的数量平均分配需求到子货位。但这样做可能带来的问题:如果某个子货位无法满足要求,则总需求就无法被满足。所以本发明实施例可以通过合理设置p与m,在合理的范围内让子货位提供更多的结果,并在之后的位置进行再排序和选择,以减少算法重复调用。在计算f(r)后,取其结果与m中较大者作为结果使用,以防子货位过多时导致每个子货位获得的申请量(也就是需求量)过小。
在以一例子进行说明,例如本货位包含3个子货位。在默认设置(p=1,m=0)时,如果某次操作被请求数量为12,则本货位会对每个子货位申请数量4。如果每个子货位均满足了4,那么本货位汇总结果后会返回12。这样计算量是最小的,但却会带来问题:1、如果某个子货位满足量不足4,会导致无法满足需求。当遇到此情况时,会先考虑将其它子货位返回的结果中的需求满足量,加大到不大于其最大需求满足量。如果仍无法满足需求,则需要将差额再使用一次分配公式,并将分配需求结果加入到上次的需求中,对相关货位再执行一次算法。这样会带来重复计算开销。2、无法选择优化。由于子货位返回的总量即为需求量,只能将其完全返回,而无法使用算法对结果进行再优化。在很多情况下,将工作简单按数量平均分配给子货位,并不是一个最优的解,由于对每个货位的操作代价均有所不同,此结果下会导致无法根据预计工作量进行取舍。
而过分放大p、m的结果是需求太大,导致每个子货位需要返回的值大于需求量过多。这样如果子节点依旧为一个区域货位或者聚合货位,可能导致其排位前方的算法无法满足,而不得不执行后方算法追加结果,而返回值又可能被此货位在最终选择时抛弃,计算量被无谓的消耗。
p=0,m=最小载量的情况:当此货位每个子货位都是简单货位时,此时本货位的目标是获得每个子货位的情况,并进行综合选择。因此当p为0,m为最小载量,均不影响实际结果(不影响简单货位是否可以满足,以及其返回的最小满足量、最大满足量,但会导致需求满足量为m)。
在一实施例中,所述调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量,包括:
若所述子货位仍为聚合货位时,则完整递归调用本流程;若所述子货位为简单货位时,则按照简单货位的流程执行。
在一实施例中,所述若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量,包括:
计算总需求满足量与总需求量之间的差值delta;
按照下述公式计算附加量:
f(delta)=delata*p1/n1,其中n1为有空位的子货位的数量,p1为子货位对应算法的放大系数;
将附加量与所述f(r)相加得到相加值;
将所述相加值作为要求量,重新执行所述子货位对应的算法。
在一实施例中,所述的货位选择方法还包括:
读取各子货位的优先级调整系数和工作量评估值调整系数,计算货位列表中的每个子货位的优先级和工作量评估值。
在一实施例中,所述货位优先级调整系数为a1和b1,所述货位工作量评估值调整系数为a2和b2;
所述优先级按如下方式计算:f(x1)=a1*x1+b1;
所述工作量评估值按如下方式计算:f(x2)=a2*x2+b2;
其中,x1为原优先级,f(x1)为调整后的优先级,x2为原工作量评估值,f(x2)为调整后的工作量评估值。
对于区域货位或聚合货位来说:存在一个或多个算法组,每个算法组有一个名字,并包含一个或多个算法。每个算法包含:
优先级:算法组内按照优先级依次执行。算法需求满足后,未被执行的算法在本次将不被继续执行。
作用域:本算法的作用范围,可以为本聚合货位的任何子货位,也可以包括任何包括区域货位在内的货位而不要求必须属于本货位——此时应提示用户注意避免错误设置作用域。默认为所有子货位。每个项目可以指定一个子货位算法名称,如果指定,对于此子货位将使用此设置指向的算法代替默认子货位算法名称指向的算法。
默认子货位算法名称:待调用的子货位的算法(或算法组)名。
需求分组分配系数(放大系数p、最小值m):以f(r)=rp/n为公式(其中r为本次需求量,n为在算法作用域内的子货位数量-只计数一层),当f(x)结果小于m时,取m代替。
货位优先级调整系数(系数a1、偏移b1):以f(x1)=a1*x1+b1为公式,将子货位查询返回结果的优先级调整为将被作为本货位查询结果中的优先级。
货位工作量评估值调整系数(系数a2、偏移b2):以f(x2)=a2*x2+b2为公式,将子货位查询返回结果的工作量评估值调整为将被作为本货位查询结果中的工作量评估值。
结果整理规则:对算法在子货位上查询的返回列表的需求量整理。不同需求差异较大。
对于简单货位来说,存在一个或多个算法,每个算法有一个名字,不存在算法组。
不论是执行一个算法还是算法组,除了指定名字,还需传入:
品规资料:哪一种物料(或称货物)将被操作。
要求数量:将被操作的物料的数量。
算法(算法组)的返回值包括:
货位列表:每个元素可能是一个货位,也可能是一个子货位列表。
单一货位需要包含:
货位id:用于标记这个货位的唯一id。
优先级:此货位的优先级,将可能在最终排序选择中被参考。
工作量评估值:操作此货位所带来的工作量开销,将可能在最终排序选择中被参考。
需求满足量:满足本次货位选择算法需求的数量。
最小需求满足量:一次操作最小的量。
最大需求满足量:一次操作最大的量。
子货位列表则同货位列表。子货位列表表示本列表下的一级节点只能同时被选中或者抛弃。此种情况通常由于货位有物理上的互相阻挡导致只能或者期待同时被操作。
是否有更多的货位可提供:如果返回的货位列表并不完整(由于需求已经满足而未列出所有可能项),标记此项为真。
在一实施例中,所述若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量,包括:
逐个提升货位列表中的子货位的需求满足量,并且按最小步长进行提升。
也就是说需求满足量增加的量应尽可能的小,避免出现增加后需求满足量之和超过原始需求的情况。
每个算法结束执行后,不论是否需要执行下一个算法,均需对此算法结果进行处理:
1、使用货位优先级调整系数以及货位工作量评估值调整系数,对结果中的优先级、工作量评估值进行调整。
2、如果还需要执行下一个算法,则对这些货位进行临时锁定,以防被后续算法选中。
3、维护一个结果列表,包含了本算法组内所有已经结束的算法的结果。
下面通过一具体实施例来对本发明的实现过程进行说明:
一个仓库,有两个分区:分区A、分区B。其中分区A为自动化仓库,有两台堆垛机,分别管理1、2列与3、4列,每列有4行3层。分区B为人工区,被视为自动化仓库的溢出区使用。入库时尽量存放在自动化仓库,出库时则优先从溢出区出库。同一个容器只能放同一种品规的货物。每一种品规未存满的容器最多只能有一个。
对于一种特定品规(即本实施例所操作的货物),每个容器最大承载量4个,最小承载量1个。
整盘入库是指一个托盘(容器)摆满货物入库。散盘入库是指一个托盘(容器)未摆满货物进行了入库。散盘补入是指将一个未摆满货物的托盘(容器)上追加货物。
设置货位如下:
聚合货位:仓库;仓库下有两个聚合货位:分区A和分区B;即分区A和分区B为仓库的子货位;
分区A下有两个聚合货位:堆垛机1和堆垛机2;即堆垛机1和堆垛机2为分区A的子货位;
其中,堆垛机1下有以下简单货位:分别代表x列y行z层。其中x取1、2;y取1、2、3、4,z取1、2、3。共有24个。
其中,堆垛机2下有以下简单货位:分别代表x列y行z层。其中x取3、4;y取1、2、3、4,z取1、2、3。共有24个。
其中,分区B中的简单货位:若干个。
对于所有简单货位具有如下算法:
算法名:散盘补入。表示当自己货位存放有容器,容器内存的品规与本次算法执行时传入的品规资料一致,且容器未达到此品规在容器中的最大承载量时,返回如下信息:
货位id:自身id
优先级:1
工作量评估值:本货位散盘补入所需的工作量
需求满足值:(此品规单个容器最大承载量–当前容器已有承载量)与要求数量中的较小者
最小需求满足量:0
最大需求满足量:此品规单个容器最大承载量
其他情况,返回空。
算法名:整盘入库。表示当自己货位未存放有容器时,返回如下信息:
货位id:自身id
优先级:1
工作量评估值:本货位整盘入库所需的工作量
需求满足值:此品规单个容器最大承载量
最小需求满足量:此品规单个容器最大承载量
最大需求满足量:此品规单个容器最大承载量
其他情况,返回空。
算法名:散盘入库。表示当自己货位未存放有容器,且要求数量低于此品规单个容器最大承载量时,返回如下信息:
货位id:自身id
优先级:1
工作量评估值:本货位散盘入库所需的工作量
需求满足值:要求数量
最小需求满足量:此品规单个容器最小承载量
最大需求满足量:此品规单个容器最大承载量
其他情况,返回空。
对于堆垛机1和堆垛机2这两个聚合货位来说,均具有如下算法:
算法组名:整盘入库
优先级1:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:整盘入库
需求分组分配系数:p=1;m=1
货位优先级调整系数:a=10;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:满足要求数量则返回结果,否则继续。
算法组名:散盘补入
优先级1:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘补入
需求分组分配系数:p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:满足要求数量则返回结果,否则继续。
算法组名:散盘入库
优先级1:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘入库
需求分组分配系数:p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:满足要求数量则返回结果,否则继续。
对于分区A来说,具有如下算法:
算法组名:入库
优先级1:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:整盘入库
需求分组分配系数:p=1.3(放大了30%);m=1
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:
如果得到的结果的需求满足值总量小于算法的要求数量-此品规单个容器最大承载量:要求继续执行步骤3.8内的后续处理。
否则:如果得到的结果的需求满足值总量小于或等于算法的要求数量:返回结果。如果得到的结果的需求满足值总量大于算法的要求数量:分别计算出每个子货位(本例中为聚合货位:堆垛机1与聚合货位:堆垛机2)返回的算法结果中工作量评估值之和,并找到每个子货位返回的算法结果中最低的优先级值。找到此最低优先级相同的所有子货位中工作量评估之和最高的一个,并从其中删除一条此优先级且工作量评估值最高的货位,重新进行上一规则判断。
此规则等价于:排除掉所有超量入库的情况,使得整盘入库满足的总量不大于算法的总要求数量,且兼顾工作量尽量分散在不同的子货位中。
优先级2:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘补入
需求分组分配系数:p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:只保留最多一个货位结果。如果多个子货位返回了结果,则选择优先级最高的货位。如果优先级相同,每个子货位先选出一个工作量评估值最低的货位,并选择对应子货位的工作量评估之和与这个货位的工作量评估值之和中较小的那个子货位结果中的货位。
优先级3:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘入库
需求分组分配系数:p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:只保留最多一个货位结果。如果多个子货位返回了结果,则选择优先级最高的货位。如果优先级相同,每个子货位先选出一个工作量评估值最低的货位,并选择对应子货位的工作量评估之和与这个货位的工作量评估值之和中较小的那个子货位结果中的货位。如果无结果就返回空。
对于分区B来说,具有如下算法:
算法组名:入库
优先级1:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:整盘入库
需求分组分配系数:p=1;m=1
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:如果得到的结果的需求满足值总量小于或等于算法的要求数量:返回结果。如果得到的结果的需求满足值总量大于算法的要求数量:找出优先级最低的,且此优先级内工作量评估值最高的货位,将其删除,重新进行结果整理规则判断。
优先级2:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘补入
需求分组分配系数:p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:只保留最多一个货位结果。如果多个子货位返回了结果,则选择优先级最高的货位。如果优先级相同,此优先级内工作量评估值最低的货位。如果无结果就返回空。
优先级3:
作用域:默认(本聚合货位所有子货位)
默认子货位算法名称:散盘入库
需求分组分配系数p=0;m=执行本算法时的要求数量
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:只保留最多一个货位结果。如果多个子货位返回了结果,则选择优先级最高的货位。如果优先级相同,此优先级内工作量评估值最低的货位。如果无结果就返回空。
对于仓库来说,具有如下算法:
算法组名:入库
优先级1:
作用域:聚合货位:分区A
默认子货位算法名称:入库
需求分组分配系数:p=2;m=1
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:满足要求数量则返回结果,否则继续。
优先级2:
作用域:聚合货位:分区B
默认子货位算法名称:入库
需求分组分配系数:p=2;m=1
货位优先级调整系数:a=1;b=0
货位工作量评估值调整系数:a=1;b=0
结果整理规则:返回结果。
入库执行时,例如对仓库执行算法“入库”,要求入库x,数量101,其流程可能如下:
聚合货位:仓库:执行算法组:入库,优先级1,要求数量101
聚合货位:分区A:执行算法组:入库
聚合货位:分区A:执行算法组:入库,优先级1,要求数量101
聚合货位:堆垛机1:执行算法组:整盘入库,优先级1,要求数量101*1.3/2=65.65。
其下每个简单货位:执行算法:整盘入库,要求数量65.65*1/24。
对结果进行整理。根据仓库空位情况,可能最终返回16个货位或更少的货位,每个货位需求满足值4,最小需求满足量4,最大需求满足量4。
聚合货位:堆垛机2:执行算法组:整盘入库,优先级1,要求数量101*1.3/2=65.65。
其下每个简单货位:执行算法:整盘入库,要求数量65.65*1/24。
对结果进行整理。根据仓库空位情况,可能最终返回16个货位或更少的货位,每个货位需求满足值4,最小需求满足量4,最大需求满足量4。
对结果进行整理。根据上述两者的需求满足值总和数量判断:
如果为100(25个货位),返回这25个货位;
如果大于100,则会按照两个聚合货位的工作量评估值总和相近且较小的原则,返回其中的25个货位。
否则根据与101的差额,例如返回了92(23个货位),则观察两个聚合货位的返回值中是否包含“有更多的货位可提供”的标记。显然不可能均有。如果均无,则返回这些货位。如果有至少1个(本例最多只能为1个)有此标记,则计算101-92=9,9*1.3/1=11.7,65.65+11.7=77.35,因此对有此标记的聚合货位再以77.35作为要求数量,重新执行执行算法组:整盘入库,并以新的执行结果取代现有的,重新执行判断。
聚合货位:分区A:执行算法组:入库,优先级2,要求数量为101与上者算法的需求满足值总和的差值delta,例如可能的值为1、5、9等。
聚合货位:堆垛机1:执行算法组:散盘补入,优先级1,要求数量delta。
其下每个简单货位:执行算法:散盘补入,要求数量delta。
对结果进行整理。只保留最多一个货位。
聚合货位:堆垛机2:执行算法组:散盘补入,优先级1,要求数量delta。
其下每个简单货位:执行算法:散盘补入,要求数量delta。
对结果进行整理。只保留最多一个货位。
对结果进行整理。如果有返回值,以优先级与工作量评估值为条件,只保留其中一个。
如果仍未满足需求:聚合货位:分区A:执行算法组:入库,优先级3,要求数量为101与上两者算法的需求满足值总和的差值delta2。
聚合货位:堆垛机1:执行算法组:散盘入库,优先级3,要求数量delta2。
其下每个简单货位:执行算法:散盘入库,要求数量delta2。
对结果进行整理。只保留最多一个货位。
聚合货位:堆垛机2:执行算法组:散盘入库,优先级3,要求数量delta2。
其下每个简单货位:执行算法:散盘入库,要求数量delta2。
对结果进行整理。只保留最多一个货位。
对结果进行整理。如果有返回值,以优先级与工作量评估值为条件,只保留其中一个。
对结果进行整理。均分任务工作量到两个聚合货位(堆垛机1与堆垛机2)。
如果仍未满足需求,聚合货位:分区B:执行算法组:入库,要求数量为分区A未能满足的部分,内容略。
最后对结果进行整理,合并结果并返回。
请参阅图2,图2为本发明实施例提供的一种货位选择装置的示意性框图,该货位选择装置200包括:
选择单元201,用于当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;
确定单元202,用于在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
执行单元203,用于调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
筛选单元204,用于若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
提升单元205,用于若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
补入单元206,用于若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
循环单元207,用于若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的货位选择方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如上所述的货位选择方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种货位选择方法,其特征在于,货位包括简单货位、聚合货位和区域货位,其中,简单货位是指:直接用来存放容器,且只能存放最多一个容器;聚合货位是指:指多个简单货位或聚合货位的聚合;区域货位是指:指关联至多个货位,并设置为一个逻辑上的区域,对于区域货位或聚合货位来说:存在一个或多个算法组,每个算法组包含一个或多个算法;对于简单货位来说:存在一个或多个算法;每个算法包含:优先级、作用域、货位优先级调整系数、货位工作量评估值调整系数;
货位选择方法包括:
当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;
在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回;
所述根据所述子货位的数量以及总需求量确定各子货位的需求量,包括:
按照以下公式将总需求量分摊至各子货位:
f(r) = rp / n,当f(r)小于m时,以m代替;
其中,r为总需求量,p为聚合货位对应算法放大系数,n为子货位的数量,m为设定值,f(r)为子货位的需求量;
所述调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量,包括:
若所述子货位仍为聚合货位时,则完整递归调用本流程;若所述子货位为简单货位时,则按照简单货位的流程执行;
所述若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量,包括:
计算总需求满足量与总需求量之间的差值delta;
按照下述公式计算附加量:
f(delta)=delata*p1 / n1,其中n1为有空位的子货位的数量,p1为子货位对应算法的放大系数;
将附加量与所述f(r)相加得到相加值;
将所述相加值作为要求量,重新执行所述子货位对应的算法。
2.根据权利要求1所述的货位选择方法,其特征在于,还包括:
读取各子货位的优先级调整系数和工作量评估值调整系数,计算货位列表中的每个子货位的优先级和工作量评估值。
3.根据权利要求2所述的货位选择方法,其特征在于,所述货位优先级调整系数为a1和b1,所述货位工作量评估值调整系数为a2和b2;
所述优先级按如下方式计算:f(x1) = a1*x1+ b1;
所述工作量评估值按如下方式计算:f(x2) = a2*x2 + b2;
其中,x1为原优先级,f(x1)为调整后的优先级,x2为原工作量评估值,f(x2)为调整后的工作量评估值。
4.根据权利要求3所述的货位选择方法,其特征在于,所述若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量,包括:
逐个提升货位列表中的子货位的需求满足量,并且按最小步长进行提升。
5.一种货位选择装置,其特征在于,包括:
选择单元,用于当一聚合货位接收到货位选择需求时,依次选择所述聚合货位对应算法组中的算法;货位包括简单货位、聚合货位和区域货位,其中,简单货位是指:直接用来存放容器,且只能存放最多一个容器;聚合货位是指:指多个简单货位或聚合货位的聚合;区域货位是指:指关联至多个货位,并设置为一个逻辑上的区域,对于区域货位或聚合货位来说:存在一个或多个算法组,每个算法组包含一个或多个算法;对于简单货位来说:存在一个或多个算法;每个算法包含:优先级、作用域、货位优先级调整系数、货位工作量评估值调整系数;
确定单元,用于在执行所选择的聚合货位对应的算法时,确定在其作用域内的所有子货位以及所述聚合货位所分配的总需求量;并根据所述子货位的数量以及总需求量确定各子货位的需求量;
执行单元,用于调用各子货位的对应算法并执行,并收集各子货位的算法执行结果,并根据所述算法执行结果汇总各子货位的需求满足量得到总需求满足量;其中,所述算法执行结果包括货位列表;
筛选单元,用于若总需求满足量等于总需求量,则返回算法执行结果;若总需求满足量大于总需求量,则从中筛选所需的货位列表并返回算法执行结果,并满足以下条件:工作量评估值最小且总需求满足量等于总需求量;
提升单元,用于若总需求满足量小于总需求量,则遍历所述货位列表,并提升货位列表中子货位的需求满足量,并得到更新后的总需求满足量;
补入单元,用于若更新后的总需求满足量仍小于总需求量,则将子货位的空位补入,并得到更新后的总需求满足量;
循环单元,用于若更新后的总需求满足量仍小于总需求量,则锁定所述聚合货位算法组中当前算法所使用的货位,继续执行所述聚合货位对应算法组中的下一算法,合并各算法执行结果并返回;
所述确定单元具体用于:按照以下公式将总需求量分摊至各子货位:f(r) = rp / n,当f(r)小于m时,以m代替;其中,r为总需求量,p为聚合货位对应算法放大系数,n为子货位的数量,m为设定值,f(r)为子货位的需求量;
所述执行单元具体用于:若所述子货位仍为聚合货位时,则完整递归调用本流程;若所述子货位为简单货位时,则按照简单货位的流程执行;
所述补入单元具体用于:计算总需求满足量与总需求量之间的差值delta;按照下述公式计算附加量:f(delta)=delata*p1 / n1,其中n1为有空位的子货位的数量,p1为子货位对应算法的放大系数;将附加量与所述f(r)相加得到相加值;将所述相加值作为要求量,重新执行所述子货位对应的算法。
6.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4中任一项所述的货位选择方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至4任一项所述的货位选择方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911167085.1A CN111062653B (zh) | 2019-11-25 | 2019-11-25 | 一种货位选择方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911167085.1A CN111062653B (zh) | 2019-11-25 | 2019-11-25 | 一种货位选择方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111062653A CN111062653A (zh) | 2020-04-24 |
CN111062653B true CN111062653B (zh) | 2023-04-25 |
Family
ID=70298228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911167085.1A Active CN111062653B (zh) | 2019-11-25 | 2019-11-25 | 一种货位选择方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111062653B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112278694B (zh) * | 2020-10-16 | 2022-04-29 | 江苏智库智能科技有限公司 | 一种堆垛机出入库货位调度系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106144368B (zh) * | 2016-07-27 | 2018-07-17 | 国网河北省电力公司电力科学研究院 | 一种立体库房的存储分配方法 |
CN109677831B (zh) * | 2018-12-14 | 2021-06-08 | 深圳市今天国际软件技术有限公司 | 自动高架仓库货位分配方法 |
-
2019
- 2019-11-25 CN CN201911167085.1A patent/CN111062653B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111062653A (zh) | 2020-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978423B (zh) | 库存调度方法、装置以及计算机可读存储介质 | |
CN110059992B (zh) | 货物入库方法、装置以及计算机可读存储介质 | |
CN110245890B (zh) | 货品分拣方法及货品分拣系统 | |
CN109934520B (zh) | 货架调度方法和装置 | |
US8417591B2 (en) | Stock flow management system and method | |
US8244645B2 (en) | Method for shipment planning/scheduling | |
Güven et al. | Trip allocation and stacking policies at a container terminal | |
US20050165629A1 (en) | Systems and methods for planning the delivery of goods | |
CN111091328A (zh) | 一种仓储入库管理方法和管理装置 | |
WO2023040659A1 (zh) | 任务分配方法、装置、设备、仓储系统及存储介质 | |
CN110705946A (zh) | 货物配装方法及货物配装系统 | |
US8392292B2 (en) | Method and process for managing inbound and outbound merchandise shipments | |
CN114881564A (zh) | 多深货位分配方法、装置、计算机设备和存储介质 | |
CN111062653B (zh) | 一种货位选择方法、装置、计算机设备及存储介质 | |
US20070050224A1 (en) | System and method of rule-based control over transportation plan in case of order changes | |
CN111126918A (zh) | 一种商品入库的货位分配方法及系统 | |
CN114416846A (zh) | 一种高架库上物料的虚拟盘点方法及装置 | |
CN114212426A (zh) | 轨道贯通式密集货架的出入库货位分配方法及存储介质 | |
CN116542599B (zh) | 一种多维度订单合并方法 | |
US7289969B1 (en) | Inventory commingling and reconciliation of inaccuracies | |
CN115829431A (zh) | 基于优化分支限界法的电力物资配送调配方法 | |
WO2000043931A2 (en) | Distribution center management system | |
CN115796750A (zh) | 货物入库方法、出库方法、装置和计算机设备 | |
Sari | Performance evaluation of flow-rack and unit load automated storage & retrieval systems | |
JPH038602A (ja) | 自動倉庫の棚決定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |