CN109665328A - 一种动态优化箱子码垛方法、信息数据处理终端 - Google Patents

一种动态优化箱子码垛方法、信息数据处理终端 Download PDF

Info

Publication number
CN109665328A
CN109665328A CN201811443840.XA CN201811443840A CN109665328A CN 109665328 A CN109665328 A CN 109665328A CN 201811443840 A CN201811443840 A CN 201811443840A CN 109665328 A CN109665328 A CN 109665328A
Authority
CN
China
Prior art keywords
gap
chest
pallet
usable
box
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.)
Granted
Application number
CN201811443840.XA
Other languages
English (en)
Other versions
CN109665328B (zh
Inventor
黄金
施鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Video Bit Robot Co Ltd
Original Assignee
Hunan Video Bit Robot Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan Video Bit Robot Co Ltd filed Critical Hunan Video Bit Robot Co Ltd
Priority to CN201811443840.XA priority Critical patent/CN109665328B/zh
Publication of CN109665328A publication Critical patent/CN109665328A/zh
Application granted granted Critical
Publication of CN109665328B publication Critical patent/CN109665328B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G61/00Use of pick-up or transfer devices or of manipulators for stacking or de-stacking articles not otherwise provided for
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Landscapes

  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Finance (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Accounting & Taxation (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Stacking Of Articles And Auxiliary Devices (AREA)

Abstract

本发明属于物流技术领域,公开了一种动态优化箱子码垛方法、信息数据处理终端;将托盘进行空间划分,对空隙信息表进行初始化;将箱子信息按照顺序放入到动态箱子队列中,建立/更新空隙信息表Gap_Table;寻找放置箱子的可用空隙:结合box尺寸,在Gap_Table表中找出所有能容纳该箱子的空隙并存储到Gap_Usable中;对Gap_Usable中的空隙进行优先排序,给出优先顺序;启发式动态规划箱子放置位置;换托盘。本发明在实现的过程中确保箱子数量和尺寸信息不完全约束、码垛次序约束和稳定性约束这三个约束,本发明采用完全支撑,保证整个垛保持稳定,不垮塌;本发明能适应实际的码垛场景,并且保证了良好的托盘空间利用率。

Description

一种动态优化箱子码垛方法、信息数据处理终端
技术领域
本发明属于物流技术领域,尤其涉及一种动态优化箱子码垛方法、信息数 据处理终端。
背景技术
目前,业内常用的现有技术是这样的:
在现代物流行业中,码垛耗费大量人力,人们一直尝试用机器人取代人进 行这一繁重而又重复的工作。而现有的各种码垛方法,在面临实际的应用场景 还有很大的局限。现有的码垛方法大多根据经典的三维装箱(3D—BP)问题发 展而来,在经典的三维装箱问题中,需码垛箱子的数量和尺寸信息是完全掌握 的,码放箱子的次序是可以任意调整的,对于箱子支撑性问题和整个垛的稳定 性问题都没有做硬性约束。
而实际的码垛场景中,需要码垛的箱子是连续不断的放到传送带上,机器 人再从传动带上抓取货物,最后整齐的码放到托盘上,在码垛的过程中,必须 确保箱子被支撑,并且保证整个垛的稳定性。也就是说,要让码垛方法能适应 实际场景,就必须设计出能处理箱子信息不完全、箱子码垛次序不能调整、箱 子支撑性和垛的稳定性得到保证的方法。
综上所述,现有技术存在的问题是:
(1)现有的物流技术中,箱子信息不完全、箱子码垛次序不能调整,而传 统的箱子码垛算法需要掌握所有箱子的尺寸信息并能够任意调整箱子的码垛次 序。这就导致了传统的码垛算法不能适应实际的码垛需求。而且由于传送带上 的箱子尺寸的不确定性,让动态规划箱子的码放位置变得十分困难;
(2)现有的物流技术中,箱子支撑性和垛的稳定性不能得到保证,在实际 的使用中,如果不能确保支撑性和稳定性,机器人码垛将无法确保能持续进行 下去。
解决上述技术问题的难度和意义:在现有技术中,处理箱子信息不完全、 箱子码放次序确定条件下的自动码垛方法还没有相关研究成果。而利用传统的 3D-BP方法无法解决箱子信息不完全约束和箱子码垛次序固定约束。将箱子信 息不完全约束和码垛次序固定约束加入到码垛方法中,就决定了不能使用传统 的启发式方法,而是要根据实际情况设计出适应传动带上机器人自动抓取码垛 的方法。满足上述约束的码垛算法能在实际的物流场景中进行自动码垛。
发明内容
针对现有技术存在的问题,本发明提供了一种动态优化箱子码垛方法、信 息数据处理终端。
本发明是这样实现的,一种动态优化箱子码垛方法,具体包括以下步骤:
步骤一:将托盘进行空间划分,对空隙信息表进行初始化;
步骤二:将箱子信息按照顺序放入到动态箱子队列中,建立/更新空隙信息 表Gap_Table;
步骤三:寻找放置箱子的可用空隙:结合box尺寸,在Gap_Table表中找出 所有能容纳该箱子的空隙;
步骤四:对Gap_Usable中的空隙进行优先排序:对于即将放置的箱子box, 尝试放置到Gap_Usable中的每个空隙中,每放入一个空隙,对放置后的效果进 行评估,根据评估状况进行排序,给出优先顺序;
步骤五:启发式动态规划箱子放置位置:将获取的传送带上的箱子信息按 照机器人的可抓取顺序放到箱子动态队列中,机器人每次抓取(或者确定放弃 抓取)的箱子是队列中的第一个箱子,每当机器人抓取箱子后,队列中删除第 一个箱子信息,再从传送带上补充一个箱子进入队列最尾端;
步骤六:换托盘:当托盘空间不能容纳任何箱子或当前的状况满足设定的 换托盘条件时,发送指令,拉走当前托盘,换上新的空托盘。
进一步,步骤一中,当前托盘的所有可承载箱子的空隙信息,由于空隙要 确保能承载箱子,就需要满足以下条件:
(1)该空隙范围中,所有体素都未被占用;
(2)该空隙范围必须有支撑,即空隙下方必须有托盘支撑或者有其他箱子 表面支撑,确保码垛方法的稳定性约束。
进一步,步骤二中,在二维平面上找出所有独立的空隙信息的具体步骤为:
(1)首先根据空间划分的体素被占用情况结合平面所在的Z坐标的下方是 否有支撑计算出二维矩阵matrix,如果未被占用且有支撑,则该则该体素在 matrix中的值设为1,否则为0;
(2)初始化:m表示矩阵列数,n表示矩阵行数,left[n]记录当前空隙X 方向最小值,初始化全为零,right[n]记录当前空隙X方向最大值,初始化全为 n,height[n]记录当前空隙Y方向连续未被占用的体素个数,初始化全为零; cur_left=0,cur_right=n,记录当前left值和当前right值,i=0,表示当前行;
(3)遍历matrix中每一行,根据每一行中matrix的值,计算出对应每个点 的height、left、right值;
(4)根据height、left、right值,计算出空隙的范围;
(5)判断计算出的空隙是否被之前的空隙包含,或者包含空隙表中的任何 一个空隙,进行相应的放弃和删除处理,如果不被包含且不包含已有空隙,则 将计算出的空隙存入空隙表中;
(6)重复步骤(3)至步骤(5),直至遍历完每一行。
进一步,步骤三中,对于一个指定的箱子box,寻找可用空隙Gap_Usable 的方法具体:
(1)判断当前空隙的X维度是否大于box的X维度,如果是,进入步骤2, 否则,进入步骤3;
(2)判断当前空隙的Y维度是否大于box的Y维度,如果是,进入步骤5, 否则进入步骤3;
(3)判断当前空隙的X维度是否大于box的Y维度,如果是,进入步骤4, 否则放弃当前空隙,判断下一个空隙;
(4)判断当前空隙的Y维度是否大于box的X维度,如果是,进入步骤5, 否则放弃当前空隙,判断下一个空隙;
(5)判断当前空隙上所处的高度加上box的Z维度,是否超过托盘的最大 高度,如果是,放弃当前空隙,判断下一空隙,否则进入步骤6;
(6)将当前空隙存入到Gap_Usable表中,作为可用空隙。
进一步,步骤四中,对Gap_Usable中的空隙进行优先排序具体步骤为:
(1)每次放入一个空隙,评估函数根据更新后的托盘空间情况进行评分;
(2)然后再恢复到未放置box的状态,再将box放入到下一个空隙中进行 评估,直至Gap_Usable中的每个空隙都进行了评估;
(3)根据评估状况进行排序,并给出优先顺序。
进一步,步骤四中,评估的依据是放置后对托盘承载能力的影响。
进一步,步骤四中,评估函数具体为:
(1)从Gap_Usable中取一个空隙,在此空隙中放入箱子后,更新空隙表; 再判断录入的各种箱子类型是否能放入到更新后的空隙表,计算出能放入更新 后的空隙表的箱子类型数目;用zero_num、one_num、two_num、…..all_num来 记录能容纳箱子类型的数目,zero_num=1表示该空隙不能放入任何一种类型的 箱子,three_num=1表示能容纳三种类型的箱子,all_num=1表示能容纳所有类 型的箱子;
(2)将每个空隙的评估值evaluate_value进行计算,然后将所有 evaluate_value进行累加,各个变量前的系数是通过实验得出的经验值
evaluate_value=6*all_num+4*four_num+3*three_num+2*two_num+one_num-3*zero_num;
(3)通过评估函数,计算出箱子放入每个待选空隙的评估值evaluate_value, 按照累加后的评估值evaluate_value的大小顺序,将空隙信息存入到Gap_Order 中。
进一步,步骤五中,动态队列中箱子的数目设置为5,规划的目标设置为:
(1)尽可能多的让队列中的箱子放入到托盘中;
(2)如果队列中所有的箱子都能够放入到托盘中,则比较各种方案中经过 评估函数评估后最好的方案;
(3)如果搜索的方案都不能放入所有箱子,则选取放入箱子数量最多的方 案,并在这些方案中,选取经过评估函数评估后最好的方案。
进一步,步骤五中,动态规划箱子放置位置具体步骤为:
(1)取出队列中第一个箱子box,计算出该箱子对应的Gap_Usable,并按 照第四个步骤中的方法对Gap_Usable进行排序;
(2)按循序将box放入到Gap_Usable中的空隙中,对于每次放置,再依 次取队列中的第2-5个箱子,放置箱子时,也评估对应的可用空隙,选取评估值 最高的空隙放入;
(3)遍历了所有Gap_Usable中的空隙并在随后放入动态箱子队列中的箱 子后,在遍历的结果中,选取放入箱子最多的方案,并在这些方案中,最终选 择最后一个箱子放入后评估值最高的方案。
进一步,步骤六中,换托盘采用的换托盘策略为:
(1)当放置一个箱子后,检查当前托盘的空隙情况,如果在剩余的空隙中, 不能容纳下任何一个类型的箱子时,换托盘。
(2)当前托盘能够容纳部分类型的箱子,但放弃抓取的箱子较多,且空间 利用率达到一定条件时,表明当前的托盘已经码放了一定数量的箱子,而且放 弃码放了部分箱子,可以换一个托盘进行码垛。
进一步,步骤六中,如果当前抓取的箱子无法放入到托盘中,进行换托盘 判断,换托盘的条件如下:
(1)如果空间利用率超过0.7,且放弃抓取的箱子数量大于5;
(2)如果空间利用率超过0.65,且放弃抓取的箱子数量大于6;
(3)如果空间利用率超过0.6,且放弃抓取的箱子数量大于7;
(4)放弃抓取的箱子数量大于8。
综上所述,本发明的优点及积极效果为:
本发明为了适应实际的码垛场景,在传统的三维装箱问题的基础上,加了 三个必要的约束:
箱子数量和尺寸信息不完全约束:传统的三维装箱问题中,掌握了所有箱 子数量和尺寸。而实际的物流场景中,传送带上的箱子数量有限,我们能掌握 的只有放到传送带上的箱子数目和尺寸,不可能完全掌握码放到托盘的所有箱 子数目和尺寸。
码垛次序约束:在传统的三维装箱问题中,箱子码放的次序是可以任意调 整的。而现实场景中,机器人码放箱子的次序只能根据传送带上箱子的次序来 确定,不能够调整箱子的码放次序。
稳定性约束:每个放到托盘的箱子,都必须确保得到托盘或者其他箱子表 面的支撑,包括完全支撑和部分支撑,完全支撑是指箱子底部与托盘或其他箱 子顶部完全接触,部分支撑允许箱子底部存在部分悬空,但要确保在物理上能 支撑起箱子,保证整个垛保持稳定,不垮塌,本发明中采用的是完全支撑。
本发明在实现的过程中确保箱子数量和尺寸信息不完全约束、码垛次序约 束和稳定性约束这三个约束,本发明采用完全支撑,保证整个垛保持稳定,不 垮塌;本发明能适应实际的码垛场景,并且保证了良好的托盘空间利用率。
对本发明的方法进行测试,根据物流企业的实际情况,将托盘尺寸设置为 120cm*100cm,托盘限制高度180cm,箱子的尺寸的长、宽、高的范围从15cm 至65cm,这些尺寸范围能基本覆盖50kg码垛机器人码垛货物的尺寸。取某物 流企业的零食配送仓的真实箱子尺寸数据进行测试,将测试数据分为三批,分 别是尺寸较小的一类箱子码垛、尺寸较大的一类箱子码垛、尺寸相差较大的箱 子码垛。
(1)尺寸较小的一类箱子码垛:箱子1(长:39,宽:29,高:17),箱子2(长:41,宽:32,高:21),箱子3(长:42,宽:32,高:21),箱子4(长:29,宽: 27,高:22),箱子5(长:42,宽:31,高:20),箱子6(长:39,宽:28,高: 13)。让计算机在6种箱子中进行随机挑选,确定好5000个箱子的尺寸和顺序。 然后再安装本发明的方法进行模拟码垛。
通过对5000个箱子进行模拟测试,平均的托盘利用率(即托盘上箱子的体 积除以托盘的承载空间)为68.32%,计算每个箱子的放置位置以及空隙更新的 时间在200ms~700ms之间,平均时间为437ms。
(2)尺寸较大的一类箱子码垛:箱子1(长:52,宽:35,高:20),箱子2(长: 47,宽:51,高:34),箱子3(长:52,宽:42,高:21),箱子4(长:66,宽: 42,高:33)。让计算机在4种箱子中进行随机挑选,确定好5000个箱子的尺寸 和顺序。然后再安装本发明方法进行模拟码垛。
通过对5000个箱子进行模拟测试,平均的托盘利用率(即托盘上箱子的体 积除以托盘的承载空间)为61.87%,计算每个箱子的放置位置以及空隙更新的 时间在150ms~620ms之间,平均时间为385ms。
(3)尺寸相差较大的一类箱子码垛:箱子1(长:39,宽:29,高:17),箱 子2(长:41,宽:32,高:21),箱子3(长:42,宽:32,高:21),箱子4(长: 29,宽:27,高:22),箱子5(长:42,宽:31,高:20),箱子6(长:39,宽: 28,高:13),箱子7(长:52,宽:35,高:20),箱子8(长:47,宽:51,高: 34),箱子9(长:52,宽:42,高:21),箱子10(长:66,宽:42,高:33)。让 计算机在10种箱子中进行随机挑选,确定好5000个箱子的尺寸和顺序。然后 再安装本发明方法进行模拟码垛。
通过对5000个箱子进行模拟测试,平均的托盘利用率(即托盘上箱子的 体积除以托盘的承载空间)为50.22%,计算每个箱子的放置位置以及空隙更新 的时间在250ms~820ms之间,平均时间为461ms。
实验结果表明,本发明方法对不同尺寸箱子的码垛,均可以获得满意的效 果,如果对箱子类型按尺寸大小进行简单的分类,效果会更好。
附图说明
图1是本发明实施例提供的动态优化箱子码垛方法流程图。
图2是本发明实施例提供的动态优化箱子码垛方法技术路线图。
图3是本发明实施例提供的空隙信息表格示意图。
图4是本发明实施例提供的建立空隙信息表的流程图。
图5是本发明实施例提供的启发式动态规划箱子放置位置的程序流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例, 对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以 解释本发明,并不用于限定本发明。
下面结合附图对本发明的应用原理进行进一步详细说明;
如图1所示,本发明实施例提供的动态优化箱子码垛方法,具体包括以下 步骤:
S101:将托盘进行空间划分,对空隙信息表进行初始化;
S102:将箱子信息按照顺序放入到动态箱子队列中,建立/更新空隙信息表 Gap_Table;
S103:寻找放置箱子的可用空隙:结合box尺寸,在Gap_Table表中找出 所有能容纳该箱子的空隙;
S104:对Gap_Usable中的空隙进行优先排序:对于即将放置的箱子box, 尝试放置到Gap_Usable中的每个空隙中,每放入一个空隙,对放置后的效果进 行评估,根据评估状况进行排序,给出优先顺序;
S105:启发式动态规划箱子放置位置:将获取的传送带上的箱子信息按照 机器人的可抓取顺序放到箱子动态队列中,机器人每次抓取(或者确定放弃抓 取)的箱子是队列中的第一个箱子,每当机器人抓取箱子后,队列中删除第一 个箱子信息,再从传送带上补充一个箱子进入队列最尾端;
S106:换托盘:当托盘空间不能容纳任何箱子或当前的状况满足设定的换 托盘条件时,发送指令,拉走当前托盘,换上新的空托盘。
步骤S101中,本发明实施例提供的当前托盘的所有可承载箱子的空隙信息, 由于空隙要确保能承载箱子,就需要满足以下条件:
(1)该空隙范围中,所有体素都未被占用;
(2)该空隙范围必须有支撑,即空隙下方必须有托盘支撑或者有其他箱子 表面支撑,确保码垛方法的稳定性约束。
步骤S102中,本发明实施例提供的在二维平面上找出所有独立的空隙信息 的具体步骤为:
(1)首先根据空间划分的体素被占用情况结合平面所在的Z坐标的下方是 否有支撑计算出二维矩阵matrix,如果未被占用且有支撑,则该则该体素在 matrix中的值设为1,否则为0;
(2)初始化:m表示矩阵列数,n表示矩阵行数,left[n]记录当前空隙X 方向最小值,初始化全为零,right[n]记录当前空隙X方向最大值,初始化全为 n,height[n]记录当前空隙Y方向连续未被占用的体素个数,初始化全为零; cur_left=0,cur_right=n,记录当前left值和当前right值,i=0,表示当前行;
(3)遍历matrix中每一行,根据每一行中matrix的值,计算出对应每个点 的height、left、right值;
(4)根据height、left、right值,计算出空隙的范围;
(5)判断计算出的空隙是否被之前的空隙包含,或者包含空隙表中的任何 一个空隙,进行相应的放弃和删除处理,如果不被包含且不包含已有空隙,则 将计算出的空隙存入空隙表中;
(6)重复步骤(3)至步骤(5),直至遍历完每一行。
步骤S103中,本发明实施例提供的对于一个指定的箱子box,寻找可用空 隙Gap_Usable的方法具体:
(1)判断当前空隙的X维度是否大于box的X维度,如果是,进入步骤2, 否则,进入步骤3;
(2)判断当前空隙的Y维度是否大于box的Y维度,如果是,进入步骤5, 否则进入步骤3;
(3)判断当前空隙的X维度是否大于box的Y维度,如果是,进入步骤4, 否则放弃当前空隙,判断下一个空隙;
(4)判断当前空隙的Y维度是否大于box的X维度,如果是,进入步骤5, 否则放弃当前空隙,判断下一个空隙;
(5)判断当前空隙上所处的高度加上box的Z维度,是否超过托盘的最大 高度,如果是,放弃当前空隙,判断下一空隙,否则进入步骤6;
(6)将当前空隙存入到Gap_Usable表中,作为可用空隙。
步骤S104中,本发明实施例提供的对Gap_Usable中的空隙进行优先排序 具体步骤为:
(1)每次放入一个空隙,评估函数根据更新后的托盘空间情况进行评分;
(2)然后再恢复到未放置box的状态,再将box放入到下一个空隙中进行 评估,直至Gap_Usable中的每个空隙都进行了评估;
(3)根据评估状况进行排序,并给出优先顺序。
步骤S104中,本发明实施例提供的评估的依据是放置后对托盘承载能力的 影响。
步骤S104中,本发明实施例提供的评估函数具体为:
(1)从Gap_Usable中取一个空隙,在此空隙中放入箱子后,更新空隙表; 再判断录入的各种箱子类型是否能放入到更新后的空隙表,计算出能放入更新 后的空隙表的箱子类型数目;用zero_num、one_num、two_num、…..all_num来 记录能容纳箱子类型的数目,zero_num=1表示该空隙不能放入任何一种类型的 箱子,three_num=1表示能容纳三种类型的箱子,all_num=1表示能容纳所有类 型的箱子;
(2)将评估值evaluate_value进行累加,各个变量前的系数是通过实验得 出的经验值
evaluate_value=6*all_num+4*four_num+3*three_num+2*two_num+one_num-3*zero_num;
(3)通过评估函数,计算出箱子放入每个待选空隙的评估值,按照评估值 的大小顺序,将空隙信息存入到Gap_Order中。
步骤S105中,本发明实施例提供的动态队列中箱子的数目设置为5,规划 的目标设置为:
(1)尽可能多的让队列中的箱子放入到托盘中;
(2)如果队列中所有的箱子都能够放入到托盘中,则比较各种方案中经过 评估函数评估后最好的方案;
(3)如果搜索的方案都不能放入所有箱子,则选取放入箱子数量最多的方 案,并在这些方案中,选取经过评估函数评估后最好的方案。
步骤S105中,本发明实施例提供的动态规划箱子放置位置具体步骤为:
(1)取出队列中第一个箱子box,计算出该箱子对应的Gap_Usable,并按 照第四个步骤中的方法对Gap_Usable进行排序;
(2)按循序将box放入到Gap_Usable中的空隙中,对于每次放置,再依 次取队列中的第2-5个箱子,放置箱子时,也评估对应的可用空隙,选取评估值 最高的空隙放入;
(3)遍历了所有Gap_Usable中的空隙并在随后放入动态箱子队列中的箱 子后,在遍历的结果中,选取放入箱子最多的方案,并在这些方案中,最终选 择最后一个箱子放入后评估值最高的方案。
步骤S106中,本发明实施例提供的换托盘采用的换托盘策略为:
(1)当放置一个箱子后,检查当前托盘的空隙情况,如果在剩余的空隙中, 不能容纳下任何一个类型的箱子时,换托盘。
(2)当前托盘能够容纳部分类型的箱子,但放弃抓取的箱子较多,且空间 利用率达到一定条件时,表明当前的托盘已经码放了一定数量的箱子,而且放 弃码放了部分箱子,可以换一个托盘进行码垛。
步骤S106中,本发明实施例提供的如果当前抓取的箱子无法放入到托盘中, 进行换托盘判断,换托盘的条件如下:
(1)如果空间利用率超过0.7,且放弃抓取的箱子数量大于5;
(2)如果空间利用率超过0.65,且放弃抓取的箱子数量大于6;
(3)如果空间利用率超过0.6,且放弃抓取的箱子数量大于7;
(4)放弃抓取的箱子数量大于8。
如图2所示,本发明实施例提供的动态优化箱子码垛方法技术路线图。具 体技术路线为:
(1)将托盘进行空间划分,对空隙信息表进行初始化;
(2)将箱子信息按照顺序放入到动态箱子队列中,建立/更新空隙信息表 Gap_Table;
(3)从队列中取出第一个箱子box;
(4)结合box尺寸,在Gap_Table表中找出所有能容纳该箱子的空隙,并 存储到Gap_Usable中。如果Gap_Usable为空,看是否满足换托盘条件,如果 满足,则换托盘,进入1,如果不满足换托盘条件,放弃放入此箱子,进入2, 同时Abandon_Num++;
(5)将box尝试放入到Gap_Usable中的每一个空隙,并放入队列中的第 2-5个箱子,然后利用空隙质量评估函数评估放置后的最终效果;
(6)选取可放置箱子数量最多的方案中,评估函数评估最终效果最好的方 案;
(7)是否停止抓取,若是,则结束,否则继续抓取箱子,进入3。
如图3所示,本发明实施例提供的空隙信息表格示意图。
对于托盘为空的情况,只需设置Gap_Table中的最底层为一个面积长宽和 托盘长宽相等的,也就是说,托盘为空时,只有最底层才可以放置箱子,而且 最底层放置箱子的面积为整个托盘面积。
当机器人抓取箱子并放置到托盘后,就需要对托盘空隙表进行更新,由于 存储到空隙信息表中的空隙必须保证有支撑,所以在放置箱子后,只需更新箱 子的最底层和箱子最顶层的上一层的空隙信息。
空隙信息包含了此平面上所有未被占用且底面有支撑的面,空隙互相之间 不能被完全包含,如图3所示,用颜色标记出来的面为独立的空隙(1表示未被 占用,0表示被占用)用颜色框标记出来的面就是需要存储的独立空隙信息。
如图4所示,本发明实施例提供的建立空隙信息表的流程图。
如图5所示,本发明实施例提供的启发式动态规划箱子放置位置的程序流 程图。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组 合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程 序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指 令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可 以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算 机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向 另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、 计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或 无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据 中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用 介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。 所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、 或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。

Claims (10)

1.一种动态优化箱子码垛方法,其特征在于,所述的动态优化箱子码垛方法包括以下步骤:
步骤一:将托盘进行空间划分,对空隙信息表进行初始化;
步骤二:将箱子信息按照顺序放入到动态箱子队列中,建立/更新空隙信息表Gap_Table;
步骤三:寻找放置箱子的可用空隙:结合box尺寸,在Gap_Table表中找出所有能容纳该箱子的空隙,并存储在Gap_Usable中;
步骤四:对Gap_Usable中的空隙进行优先排序:对于即将放置的箱子box,尝试放置到Gap_Usable中的每个空隙中,每放入一个空隙,对放置后的效果进行评估,根据评估状况进行排序,给出优先顺序;
步骤五:启发式动态规划箱子放置位置:将获取的传送带上的箱子信息按照机器人的可抓取顺序放到箱子动态队列中,机器人每次抓取的箱子是队列中的第一个箱子,每当机器人抓取箱子后,队列中删除第一个箱子信息,再从传送带上补充一个箱子进入队列最尾端;
步骤六:换托盘:当托盘空间不能容纳任何箱子或当前的状况满足设定的换托盘条件时,发送指令,拉走当前托盘,换上新的空托盘。
2.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述步骤一中,当前托盘的所有可承载箱子的空隙信息,由于空隙要确保能承载箱子,就需要满足以下条件:
(1)该空隙范围中,所有体素都未被占用;
(2)该空隙范围必须有支撑,即空隙下方必须有托盘支撑或者有其他箱子表面支撑,确保码垛方法的稳定性约束。
3.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述在二维平面上找出所有独立的空隙信息的具体步骤为:
(1)首先根据空间划分的体素被占用情况结合平面所在的Z坐标的下方是否有支撑计算出二维矩阵matrix,如果未被占用且有支撑,则该则该体素在matrix中的值设为1,否则为0;
(2)初始化:m表示矩阵列数,n表示矩阵行数,left[n]记录当前空隙X方向最小值,初始化全为零,right[n]记录当前空隙X方向最大值,初始化全为n,height[n]记录当前空隙Y方向连续未被占用的体素个数,初始化全为零;cur_left=0,cur_right=n,记录当前left值和当前right值,i=0,表示当前行;
(3)遍历matrix中每一行,根据每一行中matrix的值,计算出对应每个点的height、left、right值;
(4)根据height、left、right值,计算出空隙的范围;
(5)如果计算出的空隙被空隙表Gap_Table中的空隙包含,或者包含空隙表Gap_Table中的任何一个空隙,进行相应的放弃和删除处理,如果不被包含且不包含已有空隙,则将计算出的空隙存入空隙表中;
(6)重复步骤(3)至步骤(5),直至遍历完每一行。
4.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述对于一个指定的箱子box,寻找可用空隙Gap_Usable的方法具体:
(1)判断当前空隙的X维度是否大于box的X维度,如果是,进入步骤2,否则,进入步骤3;
(2)判断当前空隙的Y维度是否大于box的Y维度,如果是,进入步骤5,否则进入步骤3;
(3)判断当前空隙的X维度是否大于box的Y维度,如果是,进入步骤4,否则放弃当前空隙,判断下一个空隙;
(4)判断当前空隙的Y维度是否大于box的X维度,如果是,进入步骤5,否则放弃当前空隙,判断下一个空隙;
(5)判断当前空隙上所处的高度加上box的Z维度,是否超过托盘的最大高度,如果是,放弃当前空隙,判断下一空隙,否则进入步骤6;
(6)将当前空隙存入到Gap_Usable表中,作为可用空隙。
5.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述对Gap_Usable中的空隙进行优先排序具体步骤为:
(1)每次放入一个空隙,评估函数根据更新后的托盘空间情况进行评分;
(2)然后再恢复到未放置box的状态,再将box放入到下一个空隙中进行评估,直至Gap_Usable中的每个空隙都进行了评估;
(3)根据评估状况进行排序,并给出优先顺序。
6.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述步骤四中,评估的依据是放置后对托盘承载能力的影响。
7.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述步骤四中,评估函数具体为:
(1)从Gap_Usable中取一个空隙,在此空隙中放入箱子后,更新空隙表;再判断录入的各种箱子类型是否能放入到更新后的空隙表,计算出能放入更新后的空隙表的箱子类型数目;用zero_num、one_num、two_num、…..all_num来记录能容纳箱子类型的数目,zero_num=1表示该空隙不能放入任何一种类型的箱子,three_num=1表示能容纳三种类型的箱子,all_num=1表示能容纳所有类型的箱子;
(2)将每个空隙的评估值evaluate_value进行计算,然后将所有evaluate_value进行累加,各个变量前的系数是通过实验得出的经验值
evaluate_value=6*all_num+4*four_num+3*three_num+2*two_num+one_num-3*zero_num;
(3)通过评估函数,计算出箱子放入每个待选空隙的评估值evaluate_value,按照累加后的评估值evaluate_value的大小顺序,将空隙信息存入到Gap_Order中。
8.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述步骤五中,动态队列中箱子的数目设置为5,规划的目标设置为:
(1)尽可能多的让队列中的箱子放入到托盘中;
(2)如果队列中所有的箱子都能够放入到托盘中,则比较各种方案中经过评估函数评估后最好的方案;
(3)如果搜索的方案都不能放入所有箱子,则选取放入箱子数量最多的方案,并在这些方案中,选取经过评估函数评估后最好的方案。
9.如权利要求1所述的动态优化箱子码垛方法,其特征在于,所述步骤五中,动态规划箱子放置位置具体步骤为:
(1)取出队列中第一个箱子box,计算出该箱子对应的Gap_Usable,并按照第四个步骤中的方法对Gap_Usable进行排序;
(2)按顺序将box放入到Gap_Usable中的空隙中,对于每次放置,再依次取队列中的第2-5个箱子,放置箱子时,也评估对应的可用空隙,选取评估值最高的空隙放入;
(3)遍历了所有Gap_Usable中的空隙并在随后放入动态箱子队列中的箱子后,在遍历的结果中,选取放入箱子最多的方案,并在这些方案中,最终选择最后一个箱子放入后评估值最高的方案;
所述步骤六中,换托盘采用的换托盘策略为:
(1)当放置一个箱子后,检查当前托盘的空隙情况,如果在剩余的空隙中,不能容纳下任何一个类型的箱子时,换托盘;
(2)当前托盘能够容纳部分类型的箱子,但放弃抓取的箱子较多,且空间利用率达到一定条件时,表明当前的托盘已经码放了一定数量的箱子,而且放弃码放了部分箱子,换一个托盘进行码垛;
所述步骤六中,如果当前抓取的箱子无法放入到托盘中,进行换托盘判断,换托盘的条件如下:
(1)如果空间利用率超过0.7,且放弃抓取的箱子数量大于5;
(2)如果空间利用率超过0.65,且放弃抓取的箱子数量大于6;
(3)如果空间利用率超过0.6,且放弃抓取的箱子数量大于7;
(4)放弃抓取的箱子数量大于8。
10.一种应用权利要求1~9任意一项所述动态优化箱子码垛方法的信息数据处理终端。
CN201811443840.XA 2018-11-29 2018-11-29 一种动态优化箱子码垛方法、信息数据处理终端 Active CN109665328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811443840.XA CN109665328B (zh) 2018-11-29 2018-11-29 一种动态优化箱子码垛方法、信息数据处理终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811443840.XA CN109665328B (zh) 2018-11-29 2018-11-29 一种动态优化箱子码垛方法、信息数据处理终端

Publications (2)

Publication Number Publication Date
CN109665328A true CN109665328A (zh) 2019-04-23
CN109665328B CN109665328B (zh) 2021-05-11

Family

ID=66144985

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811443840.XA Active CN109665328B (zh) 2018-11-29 2018-11-29 一种动态优化箱子码垛方法、信息数据处理终端

Country Status (1)

Country Link
CN (1) CN109665328B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110706086A (zh) * 2019-09-16 2020-01-17 西门子(中国)有限公司 用于开关柜投标的方法和装置
CN110723553A (zh) * 2019-10-23 2020-01-24 安吉智能物联技术有限公司 一种基于搬运机器人用的垛型生成方法
CN110888348A (zh) * 2019-10-17 2020-03-17 广东原点智能技术有限公司 一种基于激光slam的机器人码垛控制方法及其控制系统
CN111302078A (zh) * 2020-02-20 2020-06-19 深圳市今天国际物流技术股份有限公司 一种垛型自动变换方法及其装置
CN111891758A (zh) * 2020-08-04 2020-11-06 广东工业大学 一种欠完备信息的在线货物码垛方法
CN112085385A (zh) * 2020-09-09 2020-12-15 广东力生智能有限公司 基于订单的稳定混箱垛型供箱序列的生成系统及其方法
CN113222257A (zh) * 2021-05-17 2021-08-06 广东工业大学 一种基于缓冲区的在线混合码垛方法
CN113213053A (zh) * 2021-05-12 2021-08-06 深圳市海柔创新科技有限公司 空箱入库方法、系统、设备、电子设备及可读存储介质
CN113998477A (zh) * 2021-12-31 2022-02-01 南京尚景智造科技有限公司 一种基于启发式模型的装箱方法及系统
CN114021826A (zh) * 2020-06-01 2022-02-08 梅卡曼德(北京)机器人科技有限公司 托盘空间建模规划方法、装置、电子设备
CN114084683A (zh) * 2021-12-02 2022-02-25 长沙长泰智能装备有限公司 确定垛型的方法和装置
CN114529155A (zh) * 2022-01-17 2022-05-24 湖南视比特机器人有限公司 工件动态码垛装框方法及系统
CN114692237A (zh) * 2022-06-02 2022-07-01 杭州灵西机器人智能科技有限公司 基于多模态评估指标的混合码垛方法、装置、设备及介质
CN115392842A (zh) * 2022-10-30 2022-11-25 合肥焕智科技有限公司 一种基于人工智能的托盘识别分析方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1173678A (zh) * 1996-07-08 1998-02-18 美国电报电话公司 对资源分配进行动态优化的设备、方法和介质
CN1791475A (zh) * 2003-04-16 2006-06-21 瑞得包裹邮递股份公司 用于分配包裹或类似的输送货物的方法和装置
JP2011051721A (ja) * 2009-09-01 2011-03-17 Nifty Corp 倉庫管理システム及び倉庫管理プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1173678A (zh) * 1996-07-08 1998-02-18 美国电报电话公司 对资源分配进行动态优化的设备、方法和介质
CN1791475A (zh) * 2003-04-16 2006-06-21 瑞得包裹邮递股份公司 用于分配包裹或类似的输送货物的方法和装置
JP2011051721A (ja) * 2009-09-01 2011-03-17 Nifty Corp 倉庫管理システム及び倉庫管理プログラム

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110706086A (zh) * 2019-09-16 2020-01-17 西门子(中国)有限公司 用于开关柜投标的方法和装置
CN110706086B (zh) * 2019-09-16 2022-10-14 西门子(中国)有限公司 用于开关柜投标的方法和装置
CN110888348A (zh) * 2019-10-17 2020-03-17 广东原点智能技术有限公司 一种基于激光slam的机器人码垛控制方法及其控制系统
CN110723553B (zh) * 2019-10-23 2021-09-10 安吉智能物联技术有限公司 一种基于搬运机器人用的垛型生成方法
CN110723553A (zh) * 2019-10-23 2020-01-24 安吉智能物联技术有限公司 一种基于搬运机器人用的垛型生成方法
CN111302078A (zh) * 2020-02-20 2020-06-19 深圳市今天国际物流技术股份有限公司 一种垛型自动变换方法及其装置
CN111302078B (zh) * 2020-02-20 2021-05-28 深圳市今天国际物流技术股份有限公司 一种垛型自动变换方法及其装置
CN114021826A (zh) * 2020-06-01 2022-02-08 梅卡曼德(北京)机器人科技有限公司 托盘空间建模规划方法、装置、电子设备
CN111891758A (zh) * 2020-08-04 2020-11-06 广东工业大学 一种欠完备信息的在线货物码垛方法
CN111891758B (zh) * 2020-08-04 2021-01-05 广东工业大学 一种欠完备信息的在线货物码垛方法
CN112085385A (zh) * 2020-09-09 2020-12-15 广东力生智能有限公司 基于订单的稳定混箱垛型供箱序列的生成系统及其方法
CN113213053A (zh) * 2021-05-12 2021-08-06 深圳市海柔创新科技有限公司 空箱入库方法、系统、设备、电子设备及可读存储介质
CN113213053B (zh) * 2021-05-12 2023-02-28 深圳市海柔创新科技有限公司 空箱入库方法、系统、设备、电子设备及可读存储介质
CN113222257A (zh) * 2021-05-17 2021-08-06 广东工业大学 一种基于缓冲区的在线混合码垛方法
CN114084683A (zh) * 2021-12-02 2022-02-25 长沙长泰智能装备有限公司 确定垛型的方法和装置
CN114084683B (zh) * 2021-12-02 2023-09-01 中轻长泰(长沙)智能科技股份有限公司 确定垛型的方法和装置
CN113998477A (zh) * 2021-12-31 2022-02-01 南京尚景智造科技有限公司 一种基于启发式模型的装箱方法及系统
CN113998477B (zh) * 2021-12-31 2022-03-22 南京尚景智造科技有限公司 一种基于启发式模型的装箱方法及系统
CN114529155A (zh) * 2022-01-17 2022-05-24 湖南视比特机器人有限公司 工件动态码垛装框方法及系统
CN114692237A (zh) * 2022-06-02 2022-07-01 杭州灵西机器人智能科技有限公司 基于多模态评估指标的混合码垛方法、装置、设备及介质
CN115392842A (zh) * 2022-10-30 2022-11-25 合肥焕智科技有限公司 一种基于人工智能的托盘识别分析方法
CN115392842B (zh) * 2022-10-30 2023-01-31 合肥焕智科技有限公司 一种基于人工智能的托盘识别分析方法

Also Published As

Publication number Publication date
CN109665328B (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
CN109665328A (zh) 一种动态优化箱子码垛方法、信息数据处理终端
CN111149071B (zh) 物品处理协调系统和重新定位运输容器的方法
DE102019130923B4 (de) Robotersystem für das palettieren von paketen unter verwendung von echtzeit-platzierungssimulation
DE102019130635B4 (de) Ein robotersystem mit packmechanismus
CN110322172B (zh) 库存调度方法、装置以及计算机可读存储介质
JP6970666B2 (ja) 倉庫内の資源を管理する方法
US9317034B2 (en) System and method for inventory management using mobile drive units
KR102443182B1 (ko) 반송 디바이스의 움직임을 제어하기 위한 방법, 시스템 및 장치
CN109948991A (zh) 一种智能装箱方法、设备及存储介质
Beckschäfer et al. Simulating storage policies for an automated grid-based warehouse system
EP3872009A1 (en) Inventory region integrating goods preparation and picking, and inventory management system and method
CN107748975A (zh) 仓库存储面积计算方法、获取方法以及仓库建立方法
CN111747008B (zh) 出库定位方法、装置和系统
Kofler et al. Rassigning storage locations in a warehouse to optimize the order picking process
Schwab A decentralized control strategy for high density material flow systems with automated guided vehicles
CN111382969B (zh) 订单处理方法、装置、设备及存储介质
CN114435816A (zh) 一种立体库房盘点的储位分配方法
CN110880089A (zh) 基于知识图谱的仓库空间分配方法及系统
US8489228B2 (en) Path planning in a warehouse
CN113495557A (zh) 确定目标设备数量的方法和装置
Baray et al. Design methodology for a multiple-level warehouse layout based on particle swarm optimization algorithm
Jeroen et al. A literature survey on planning and control of warehousing systems
CN111062653A (zh) 一种货位选择方法、装置、计算机设备及存储介质
Mazur et al. Designing a Physical Packing Sequence Algorithm with Static Stability for Pallet Loading Problems in Air Cargo
JP6887041B1 (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