CN109761066B - 一种基于组合启发式的三维集装箱装箱方法 - Google Patents

一种基于组合启发式的三维集装箱装箱方法 Download PDF

Info

Publication number
CN109761066B
CN109761066B CN201910192263.XA CN201910192263A CN109761066B CN 109761066 B CN109761066 B CN 109761066B CN 201910192263 A CN201910192263 A CN 201910192263A CN 109761066 B CN109761066 B CN 109761066B
Authority
CN
China
Prior art keywords
goods
coordinate
axis
cargo
dimensional
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
Application number
CN201910192263.XA
Other languages
English (en)
Other versions
CN109761066A (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.)
Liaoning Yangang Logistics Co.,Ltd.
Original Assignee
College of Science and Technology of Ningbo University
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 College of Science and Technology of Ningbo University filed Critical College of Science and Technology of Ningbo University
Priority to CN201910192263.XA priority Critical patent/CN109761066B/zh
Publication of CN109761066A publication Critical patent/CN109761066A/zh
Application granted granted Critical
Publication of CN109761066B publication Critical patent/CN109761066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stacking Of Articles And Auxiliary Devices (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Container Filling Or Packaging Operations (AREA)

Abstract

本发明公开了一种基于组合启发式的三维集装箱装箱方法,首先基于三维集装箱的箱体构建三维坐标系,然后制定货物在集装箱内的摆放规则,接着根据货物不同的装箱要求多次模拟货物的装箱过程,最后分别统计多次模拟装箱过程中装入三维集装箱内的货物的总体积,并比较各个总体积的大小,输出装入三维集装箱内的货物的总体积最大的模拟装箱过程中的各货物的放置起始点,按照这些摆放起始点将对应的货物装入集装箱,从而实现集装箱装箱;优点是能够根据不同装箱要求的货物,在较短的时间内,给出三维集装箱装箱率最高的货物装箱方案,在保证装箱效率的基础上,装箱率较高。

Description

一种基于组合启发式的三维集装箱装箱方法
技术领域
本发明涉及一种三维集装箱装箱方法,尤其是涉及一种基于组合启发式的三维集装箱装箱方法。
背景技术
目前,三维集装箱装箱问题通常描述为:如何将给定外部尺寸以及装箱要求(头装入、尾装入、携带托盘装入、上方不能放置其他货物装入和普通装入)的多件货物,装入一个长、宽和高已知的长方形集装箱(装载总体积已知)中,且货物之间互不发生嵌入关系,最终使装入集装箱中货物的总体积最大,此时集装箱的装载率最大。三维集装箱装箱问题是物流领域的经典问题,研究如何提高集装箱空间利用率,从而降低用户成本,提高用户利润,具有重要意义。
三维集装箱装箱问题是一典型的NP(非确定性多项式,non-deterministicpolynomial,缩写NP)难问题,传统的方法通常是采用精确算法求解该类问题。但是传统的精确算法只适合解决小规模、货物种类较少的三维集装箱问题,但是在实际应用中货物数量规模较大、货物种类较多、约束条件多时,容易发生“组合爆炸”的现象,很难在有限的时间内求得最优解。因此,目前国内外有学者将遗传算法、禁忌算法或者模拟退火算法应用于该问题的求解,在装箱效率方面取得了一定的成果。但是上述遗传算法、禁忌算法或者模拟退火算法这些算法在装箱过程中没有考虑货物不同的装箱要求,而在实际应用中,装入同一集装箱的货物经常会存在各种不同的装箱要求,当考虑这些因素时,上述这些算法的装箱率不高。
发明内容
本发明所要解决的技术问题是提供一种当货物存在多种不同的装箱要求时,在保证装箱效率的基础上,装箱率较高的基于组合启发式的三维集装箱装箱方法。
本发明解决上述技术问题所采用的技术方案为:一种基于组合启发式的三维集装箱装箱方法,包括以下步骤:
(1)以三维集装箱的箱体内部的左前方位于下方的顶角点作为坐标原点,从坐标原点开始向正后方,沿着三维集装箱箱体内部的边缘棱线,设置Y轴坐标系;从坐标原点开始向正右方向,沿着三维集装箱箱体内部的边缘棱线,设置X轴坐标系;从坐标原点开始向正上方向,沿着三维集装箱箱体内部的边缘棱线,设置Z轴坐标系,构建得到三维坐标系,并根据三维集装箱箱体内部尺寸确定三维集装箱箱体在三维坐标系中X轴、Y轴和Z轴的装箱极限坐标值;
(2)制定货物在集装箱内的摆放规则,货物外部形状分别为正方体或者长方体:将正向放置采用摆放方向编码1表示,横向放置采用摆放方向编码2表示,正竖向放置采用摆放方向编码3表示,横竖向放置采用摆放方向编码4表示,正侧向放置采用摆放方向编码5表示,横侧向放置采用摆放方向编码6表示;正向放置指的是货物放置时宽沿X轴方向,长沿Y轴方向,横向放置指的是货物放置时长沿X轴方向,宽沿Y轴方向,正竖向放置指的是货物放置时宽沿X轴方向,高沿Y轴方向,横竖向放置指的是货物放置时高沿X轴方向,宽沿Y轴方向,正侧向放置指的是货物放置时高沿X轴方向,长沿Y轴方向,横侧向放置指的是货物放置时长沿X轴方向,高沿Y轴方向;
(3)设置迭代总次数为T,T为大于等于20且小于等于100的整数,将当前迭代次数记为变量t,对变量t进行初始化,令变量t=0;
(4)对待装箱的货物进行第t次模拟装箱,待装箱的货物的外部形状分别为正方体或者长方体,货物的长、宽和高已知,具体模拟装箱过程为:
A对待装箱的货物的订单号数量进行统计,若待装箱的货物全部属于一个订单号,则将这些货物的摆放方向均设置为正向放置,将其摆放方向编码记为1,若待装箱的货物属于两个或者两个以上不同的订单号,则采用随机函数生成待装箱的货物的摆放方向编码,位于同一订单号的货物的摆放方向编码相同,位于不同订单号的货物的摆放方向编码相同或者不相同;
B统计待装箱的货物中必须头装入三维集装箱的货物件数,将其记为num1,若num1等于0,则表示不存在必须头装入三维集装箱的货物;若num1不等于0,则表示存在必须头装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须头装入三维集装箱的货物的装箱顺序编号分别为1,2,3,…,num1;
C统计货物中必须携带托盘装入三维集装箱的货物件数,将其记为num2,若num2等于0,则表示不存在必须携带托盘装入三维集装箱的货物;若num2不等于0,则表示存在必须携带托盘装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须携带托盘装入三维集装箱的货物的装箱顺序编号分别为num1+1,num1+2,num1+3,…,num1+num2;
D统计普通装入货物件数,将其记为num3,若num3等于0,则表示不存在普通货物;若num3不等于0,则表示存在普通装入货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中普通装入三维集装箱的货物的装箱顺序编号分别为num1+num2+1,num1+num2+2,num1+num2+3,…,num1+num2+num3;
E统计货物中必须尾装入三维集装箱的货物件数,将其记为num4,若num4等于0,则表示不存在必须尾装入三维集装箱的货物;若num4不等于0,则表示存在必须尾装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中尾装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+1,num1+num2+num3+2,num1+num2+num3+3,…,num1+num2+num3+num4;
F统计货物中其上方不能放置其他货物装入三维集装箱的货物件数,将其记为num5,若num5等于0,则表示不存在货物上方不能放置其他货物的货物;若num5不等于0,则表示存在货物上方不能放置其他货物的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中其上方不能放置其他货物装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+num4+1,num1+num2+num3+num4+2,num1+num2+num3+num4+3,…,num1+num2+num3+num4+num5;
G构建用于存放货物的放置起始点的档案库,放置起始点为位于三维坐标系中的三维坐标点;将三维坐标系的原点(0,0,0)放入档案库中;
H将第j号货物的长度记为lj,宽度记为wj,高度记为hj,将货物总数量记为M,M=num1+num2+num3+num4+num5,将装箱顺序编号为j的货物记为第j号货物,j=1,2,…,M;
I对第1号货物进行模拟装箱,具体过程为:
I-1获取第1号货物的摆放方向编码,确定第1号货物的摆放方向;
I-2根据第1号货物的摆放方向,从三维坐标系的原点(0,0,0)开始摆放第1号货物,确定第1号货物从原点出发沿X轴、Y轴和Z轴的三条边的边长,将沿X轴的一条边的边长记为X1,将沿Y轴的一条边的边长记为Y1,将沿Z轴的一条边的边长记为Z1;
I-3完成第1号货物的模拟装箱;
J对档案库进行第1次更新,具体过程为:
J-1将档案库中存放的坐标点(0,0,0)删除;
J-2将坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)放入档案库中;
J-3规定坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)的优先级,使(0,Y1,0)的优先级高于(0,0,Z1)的优先级,(0,0,Z1)的优先级高于(X1,0,0)的优先级;
J-4对档案库第1次更新完成;
K、设置变量i并对其进行初始化,令变量i=2;
L、同时判断第1号货物至第i-1号货物中是否存在其上方不能放置其他货物的货物以及第i号货物是否为必须携带托盘装入三维集装箱的货物,如果第1号货物至第i-1号货物中不存在其上方不能放置其他货物的货物,且第i号货物不为必须携带托盘装入三维集装箱的货物,则进入步骤L-1,否则进入步骤L-2;
L-1、对第i号货物进行模拟装箱,具体过程为:
a获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
b根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
c如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是档案库中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为档案库中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
d如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
L-2、对第i号货物进行模拟装箱,具体过程为:
S1获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
S2判断第i号货物是否为必须携带托盘装入三维集装箱的货物,如果为,则判断档案库中是否存在Z轴坐标值为0的坐标点,如果不存在,则第i号货物无法放入集装箱,进入步骤S5,如果存在,则进入步骤S3-1;如果不为,则进入步骤S3-2;
S3-1根据第i号货物的摆放方向,选取档案库中存在的Z轴坐标值为0的坐标点,按照这些坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为这些坐标点中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S3-2根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值、第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S4当第i号货物为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放,如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
当第i号货物不为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,再判断当前坐标点的Z轴坐标值是否等于0,如果等于0,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果不等于0,则判断按照当前坐标点摆放位置下方货物是否为上方不能放置其他货物的货物,如果不是则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果是,该货物不能摆放于当前坐标点,则判断判断结果中当前试摆放的坐标点是否为优先级最低的坐标点,如果是,则第i号货物无法放入集装箱,如果不是,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
S5如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
(5)分别统计T次模拟装箱过程中装入三维集装箱内的货物的总体积,并比较各个总体积的大小,输出装入三维集装箱内的货物的总体积最大的模拟装箱过程中的各货物的放置起始点,按照这些摆放起始点将对应的货物装入集装箱,完成集装箱装箱。
与现有技术相比,本发明的优点在于通过基于三维集装箱的箱体构建三维坐标系,制定货物在集装箱内的摆放规则,根据货物不同的装箱要求多次模拟货物的装箱过程,分别统计多次模拟装箱过程中装入三维集装箱内的货物的总体积,并比较各个总体积的大小,输出装入三维集装箱内的货物的总体积最大的模拟装箱过程中的各货物的放置起始点,按照这些摆放起始点将对应的货物装入集装箱,从而实现集装箱装箱,由此本发明的方法能够根据不同装箱要求的货物,在较短的时间内,给出三维集装箱装箱率最高的货物装箱方案,在保证装箱效率的基础上,装箱率较高。
附图说明
图1为本发明基于组合启发式的三维集装箱装箱方法中构建的三维坐标系。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
实施例:一种基于组合启发式的三维集装箱装箱方法,包括以下步骤:
(1)以三维集装箱的箱体内部的左前方位于下方的顶角点作为坐标原点,从坐标原点开始向正后方,沿着三维集装箱箱体内部的边缘棱线,设置Y轴坐标系;从坐标原点开始向正右方向,沿着三维集装箱箱体内部的边缘棱线,设置X轴坐标系;从坐标原点开始向正上方向,沿着三维集装箱箱体内部的边缘棱线,设置Z轴坐标系,构建得到三维坐标系,并根据三维集装箱箱体内部尺寸确定三维集装箱箱体在三维坐标系中X轴、Y轴和Z轴的装箱极限坐标值,其中三维坐标系的示意图如图1所示;
(2)制定货物在集装箱内的摆放规则,货物外部形状分别为正方体或者长方体:将正向放置采用摆放方向编码1表示,横向放置采用摆放方向编码2表示,正竖向放置采用摆放方向编码3表示,横竖向放置采用摆放方向编码4表示,正侧向放置采用摆放方向编码5表示,横侧向放置采用摆放方向编码6表示;正向放置指的是货物放置时宽沿X轴方向,长沿Y轴方向,横向放置指的是货物放置时长沿X轴方向,宽沿Y轴方向,正竖向放置指的是货物放置时宽沿X轴方向,高沿Y轴方向,横竖向放置指的是货物放置时高沿X轴方向,宽沿Y轴方向,正侧向放置指的是货物放置时高沿X轴方向,长沿Y轴方向,横侧向放置指的是货物放置时长沿X轴方向,高沿Y轴方向;
(3)设置迭代总次数为T,T为大于等于20且小于等于100的整数,将当前迭代次数记为变量t,对变量t进行初始化,令变量t=0;
(4)对待装箱的货物进行第t次模拟装箱,待装箱的货物的外部形状分别为正方体或者长方体,货物的长、宽和高已知,具体模拟装箱过程为:
A对待装箱的货物的订单号数量进行统计,若待装箱的货物全部属于一个订单号,则将这些货物的摆放方向均设置为正向放置,将其摆放方向编码记为1,若待装箱的货物属于两个或者两个以上不同的订单号,则采用随机函数生成待装箱的货物的摆放方向编码,位于同一订单号的货物的摆放方向编码相同,位于不同订单号的货物的摆放方向编码相同或者不相同;
B统计待装箱的货物中必须头装入三维集装箱的货物件数,将其记为num1,若num1等于0,则表示不存在必须头装入三维集装箱的货物;若num1不等于0,则表示存在必须头装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须头装入三维集装箱的货物的装箱顺序编号分别为1,2,3,…,num1;
C统计货物中必须携带托盘装入三维集装箱的货物件数,将其记为num2,若num2等于0,则表示不存在必须携带托盘装入三维集装箱的货物;若num2不等于0,则表示存在必须携带托盘装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须携带托盘装入三维集装箱的货物的装箱顺序编号分别为num1+1,num1+2,num1+3,…,num1+num2;
D统计普通装入货物件数,将其记为num3,若num3等于0,则表示不存在普通货物;若num3不等于0,则表示存在普通装入货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中普通装入三维集装箱的货物的装箱顺序编号分别为num1+num2+1,num1+num2+2,num1+num2+3,…,num1+num2+num3;
E统计货物中必须尾装入三维集装箱的货物件数,将其记为num4,若num4等于0,则表示不存在必须尾装入三维集装箱的货物;若num4不等于0,则表示存在必须尾装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中尾装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+1,num1+num2+num3+2,num1+num2+num3+3,…,num1+num2+num3+num4;
F统计货物中其上方不能放置其他货物装入三维集装箱的货物件数,将其记为num5,若num5等于0,则表示不存在货物上方不能放置其他货物的货物;若num5不等于0,则表示存在货物上方不能放置其他货物的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中其上方不能放置其他货物装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+num4+1,num1+num2+num3+num4+2,num1+num2+num3+num4+3,…,num1+num2+num3+num4+num5;
G构建用于存放货物的放置起始点的档案库,放置起始点为位于三维坐标系中的三维坐标点;将三维坐标系的原点(0,0,0)放入档案库中;
H将第j号货物的长度记为lj,宽度记为wj,高度记为hj,将货物总数量记为M,M=num1+num2+num3+num4+num5,将装箱顺序编号为j的货物记为第j号货物,j=1,2,…,M;
I对第1号货物进行模拟装箱,具体过程为:
I-1获取第1号货物的摆放方向编码,确定第1号货物的摆放方向;
I-2根据第1号货物的摆放方向,从三维坐标系的原点(0,0,0)开始摆放第1号货物,确定第1号货物从原点出发沿X轴、Y轴和Z轴的三条边的边长,将沿X轴的一条边的边长记为X1,将沿Y轴的一条边的边长记为Y1,将沿Z轴的一条边的边长记为Z1;
I-3完成第1号货物的模拟装箱;
J对档案库进行第1次更新,具体过程为:
J-1将档案库中存放的坐标点(0,0,0)删除;
J-2将坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)放入档案库中;
J-3规定坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)的优先级,使(0,Y1,0)的优先级高于(0,0,Z1)的优先级,(0,0,Z1)的优先级高于(X1,0,0)的优先级;
J-4对档案库第1次更新完成;
K、设置变量i并对其进行初始化,令变量i=2;
L、同时判断第1号货物至第i-1号货物中是否存在其上方不能放置其他货物的货物以及第i号货物是否为必须携带托盘装入三维集装箱的货物,如果第1号货物至第i-1号货物中不存在其上方不能放置其他货物的货物,且第i号货物不为必须携带托盘装入三维集装箱的货物,则进入步骤L-1,否则进入步骤L-2;
L-1、对第i号货物进行模拟装箱,具体过程为:
a获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
b根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
c如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是档案库中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为档案库中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
d如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
L-2、对第i号货物进行模拟装箱,具体过程为:
S1获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
S2判断第i号货物是否为必须携带托盘装入三维集装箱的货物,如果为,则判断档案库中是否存在Z轴坐标值为0的坐标点,如果不存在,则第i号货物无法放入集装箱,进入步骤S5,如果存在,则进入步骤S3-1;如果不为,则进入步骤S3-2;
S3-1根据第i号货物的摆放方向,选取档案库中存在的Z轴坐标值为0的坐标点,按照这些坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为这些坐标点中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S3-2根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值、第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S4当第i号货物为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放,如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
当第i号货物不为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,再判断当前坐标点的Z轴坐标值是否等于0,如果等于0,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果不等于0,则判断按照当前坐标点摆放位置下方货物是否为上方不能放置其他货物的货物,如果不是则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果是,该货物不能摆放于当前坐标点,则判断判断结果中当前试摆放的坐标点是否为优先级最低的坐标点,如果是,则第i号货物无法放入集装箱,如果不是,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
S5如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
(5)分别统计T次模拟装箱过程中装入三维集装箱内的货物的总体积,并比较各个总体积的大小,输出装入三维集装箱内的货物的总体积最大的模拟装箱过程中的各货物的放置起始点,按照这些摆放起始点将对应的货物装入集装箱,完成集装箱装箱。

Claims (1)

1.一种基于组合启发式的三维集装箱装箱方法,包括步骤:(1)以三维集装箱的箱体内部的左前方位于下方的顶角点作为坐标原点,从坐标原点开始向正后方,沿着三维集装箱箱体内部的边缘棱线,设置Y轴坐标系;从坐标原点开始向正右方向,沿着三维集装箱箱体内部的边缘棱线,设置X轴坐标系;从坐标原点开始向正上方向,沿着三维集装箱箱体内部的边缘棱线,设置Z轴坐标系,构建得到三维坐标系,并根据三维集装箱箱体内部尺寸确定三维集装箱箱体在三维坐标系中X轴、Y轴和Z轴的装箱极限坐标值,其特征在于还包括以下步骤:
(2)制定货物在集装箱内的摆放规则,货物外部形状分别为正方体或者长方体:将正向放置采用摆放方向编码1表示,横向放置采用摆放方向编码2表示,正竖向放置采用摆放方向编码3表示,横竖向放置采用摆放方向编码4表示,正侧向放置采用摆放方向编码5表示,横侧向放置采用摆放方向编码6表示;正向放置指的是货物放置时宽沿X轴方向,长沿Y轴方向,横向放置指的是货物放置时长沿X轴方向,宽沿Y轴方向,正竖向放置指的是货物放置时宽沿X轴方向,高沿Y轴方向,横竖向放置指的是货物放置时高沿X轴方向,宽沿Y轴方向,正侧向放置指的是货物放置时高沿X轴方向,长沿Y轴方向,横侧向放置指的是货物放置时长沿X轴方向,高沿Y轴方向;
(3)设置迭代总次数为T,T为大于等于20且小于等于100的整数,将当前迭代次数记为变量t,对变量t进行初始化,令变量t=0;
(4)对待装箱的货物进行第t次模拟装箱,待装箱的货物的外部形状分别为正方体或者长方体,货物的长、宽和高已知,具体模拟装箱过程为:
A对待装箱的货物的订单号数量进行统计,若待装箱的货物全部属于一个订单号,则将这些货物的摆放方向均设置为正向放置,将其摆放方向编码记为1,若待装箱的货物属于两个或者两个以上不同的订单号,则采用随机函数生成待装箱的货物的摆放方向编码,位于同一订单号的货物的摆放方向编码相同,位于不同订单号的货物的摆放方向编码相同或者不相同;
B统计待装箱的货物中必须头装入三维集装箱的货物件数,将其记为num1,若num1等于0,则表示不存在必须头装入三维集装箱的货物;若num1不等于0,则表示存在必须头装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须头装入三维集装箱的货物的装箱顺序编号分别为1,2,3,…,num1;
C统计货物中必须携带托盘装入三维集装箱的货物件数,将其记为num2,若num2等于0,则表示不存在必须携带托盘装入三维集装箱的货物;若num2不等于0,则表示存在必须携带托盘装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中必须携带托盘装入三维集装箱的货物的装箱顺序编号分别为num1+1,num1+2,num1+3,…,num1+num2;
D统计普通装入货物件数,将其记为num3,若num3等于0,则表示不存在普通货物;若num3不等于0,则表示存在普通装入货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中普通装入三维集装箱的货物的装箱顺序编号分别为num1+num2+1,num1+num2+2,num1+num2+3,…,num1+num2+num3;
E统计货物中必须尾装入三维集装箱的货物件数,将其记为num4,若num4等于0,则表示不存在必须尾装入三维集装箱的货物;若num4不等于0,则表示存在必须尾装入三维集装箱的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中尾装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+1,num1+num2+num3+2,num1+num2+num3+3,…,num1+num2+num3+num4;
F统计货物中其上方不能放置其他货物装入三维集装箱的货物件数,将其记为num5,若num5等于0,则表示不存在货物上方不能放置其他货物的货物;若num5不等于0,则表示存在货物上方不能放置其他货物的货物,采用随机函数随机生成这些货物装入三维集装箱的装箱顺序编号,其中其上方不能放置其他货物装入三维集装箱的货物的装箱顺序编号分别为num1+num2+num3+num4+1,num1+num2+num3+num4+2,num1+num2+num3+num4+3,…,num1+num2+num3+num4+num5;
G构建用于存放货物的放置起始点的档案库,放置起始点为位于三维坐标系中的三维坐标点;将三维坐标系的原点(0,0,0)放入档案库中;
H将第j号货物的长度记为lj,宽度记为wj,高度记为hj,将货物总数量记为M,M=num1+num2+num3+num4+num5,将装箱顺序编号为j的货物记为第j号货物,j=1,2,…,M;
I对第1号货物进行模拟装箱,具体过程为:
I-1获取第1号货物的摆放方向编码,确定第1号货物的摆放方向;
I-2根据第1号货物的摆放方向,从三维坐标系的原点(0,0,0)开始摆放第1号货物,确定第1号货物从原点出发沿X轴、Y轴和Z轴的三条边的边长,将沿X轴的一条边的边长记为X1,将沿Y轴的一条边的边长记为Y1,将沿Z轴的一条边的边长记为Z1;
I-3完成第1号货物的模拟装箱;
J对档案库进行第1次更新,具体过程为:
J-1将档案库中存放的坐标点(0,0,0)删除;
J-2将坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)放入档案库中;
J-3规定坐标点(X1,0,0)、(0,Y1,0)、(0,0,Z1)的优先级,使(0,Y1,0)的优先级高于(0,0,Z1)的优先级,(0,0,Z1)的优先级高于(X1,0,0)的优先级;
J-4对档案库第1次更新完成;
K、设置变量i并对其进行初始化,令变量i=2;
L、同时判断第1号货物至第i-1号货物中是否存在其上方不能放置其他货物的货物以及第i号货物是否为必须携带托盘装入三维集装箱的货物,如果第1号货物至第i-1号货物中不存在其上方不能放置其他货物的货物,且第i号货物不为必须携带托盘装入三维集装箱的货物,则进入步骤L-1,否则进入步骤L-2;
L-1、对第i号货物进行模拟装箱,具体过程为:
a获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
b根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
c如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是档案库中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为档案库中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
d如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
L-2、对第i号货物进行模拟装箱,具体过程为:
S1获取第i号货物的摆放方向编码,确定第i号货物的摆放方向;
S2判断第i号货物是否为必须携带托盘装入三维集装箱的货物,如果为,则判断档案库中是否存在Z轴坐标值为0的坐标点,如果不存在,则第i号货物无法放入集装箱,进入步骤S5,如果存在,则进入步骤S3-1;如果不为,则进入步骤S3-2;
S3-1根据第i号货物的摆放方向,选取档案库中存在的Z轴坐标值为0的坐标点,按照这些坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为这些坐标点中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值以及第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S3-2根据第i号货物的摆放方向,按照档案库中坐标点的优先级从高到低对第i号货物进行试摆放,每摆放一次均进行如下判断:当前试摆放的坐标点是否为档案库中优先级最高的坐标点、第i号货物从该坐标点出发沿X轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中X轴的装箱极限坐标值、第i号货物从该坐标点出发沿Y轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Y轴的装箱极限坐标值、第i号货物从该坐标点出发沿Z轴的一条边的另一个端点的坐标值是否超出三维集装箱箱体在三维坐标系中Z轴的装箱极限坐标值;
S4当第i号货物为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放,如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
当第i号货物不为必须携带托盘装入三维集装箱的货物,如果判断结果为三个坐标值都没有超出其对应的装箱极限坐标值,再判断当前坐标点的Z轴坐标值是否等于0,如果等于0,则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果不等于0,则判断按照当前坐标点摆放位置下方货物是否为上方不能放置其他货物的货物,如果不是则该货物试摆放完成,将该货物从当前坐标点开始进行摆放,如果是,该货物不能摆放于当前坐标点,则判断判断结果中当前试摆放的坐标点是否为优先级最低的坐标点,如果是,则第i号货物无法放入集装箱,如果不是,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点是这些坐标点中优先级最高的坐标点,但是有至少一个坐标值超出其对应的装箱极限坐标值,则进入下一次试摆放;如果判断结果中当前试摆放的坐标点为这些坐标点中优先级最低的坐标点,且有至少一个坐标值超出其对应的装箱极限坐标值,则第i号货物无法放入集装箱;
S5如果第i号货物不能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱;
如果第i号货物能够放入集装箱中,则进行如下判断:
判定i是否等于M,如果i等于M,则判断t是否等于T,如果t等于T,那么进入步骤(5),如果t不等于T,则将当前档案库中所有的坐标点删除,采用t的当前值加1的和去更新t的值,返回步骤(4)继续进行下一次模拟装箱;如果i不等于M,则先对档案库进行更新后,采用i的当前值加1得到的值更新i,返回步骤L进行下一次模拟装箱,其中档案库更新的具体过程为:从档案库中删除第i号货物的摆放起始点对应的坐标点,并将第i号货物从摆放起始点出发与X轴、Y轴和Z轴方向平行的的三条边的另一个端点在三维坐标系中的坐标点放入档案库中,然后按照以下方法对档案库中存放的坐标点进行优先级排序:首先获取档案库中存放的坐标点的X轴坐标值,按照X轴坐标值从大到小赋予相应的坐标点优先级,X轴坐标值越大,优先级越小,当出现X轴坐标值相等的至少两个坐标点时,判断其Z轴坐标值,Z轴坐标值越大,优先级越小,如果出现Z轴坐标值相等的至少两个坐标点时,判断其Y轴坐标值,Y轴坐标值越大,优先级越小,档案库更新完成;
(5)分别统计T次模拟装箱过程中装入三维集装箱内的货物的总体积,并比较各个总体积的大小,输出装入三维集装箱内的货物的总体积最大的模拟装箱过程中的各货物的放置起始点,按照这些摆放起始点将对应的货物装入集装箱,完成集装箱装箱。
CN201910192263.XA 2019-03-14 2019-03-14 一种基于组合启发式的三维集装箱装箱方法 Active CN109761066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910192263.XA CN109761066B (zh) 2019-03-14 2019-03-14 一种基于组合启发式的三维集装箱装箱方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910192263.XA CN109761066B (zh) 2019-03-14 2019-03-14 一种基于组合启发式的三维集装箱装箱方法

Publications (2)

Publication Number Publication Date
CN109761066A CN109761066A (zh) 2019-05-17
CN109761066B true CN109761066B (zh) 2020-07-03

Family

ID=66458440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910192263.XA Active CN109761066B (zh) 2019-03-14 2019-03-14 一种基于组合启发式的三维集装箱装箱方法

Country Status (1)

Country Link
CN (1) CN109761066B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705765B (zh) * 2019-09-25 2022-03-11 北京科技大学 基于遗传算法和启发式策略的电商订单装箱优化方法
CN110717594B (zh) * 2019-10-11 2022-06-03 四川长虹电器股份有限公司 基于移动模式序列与遗传算法的装配箱装配方法
CN112607234B (zh) * 2020-12-30 2022-01-04 武汉理工大学 一种针对组合式集装箱的货物三维装箱方法
CN112837014A (zh) * 2021-02-03 2021-05-25 四川物联亿达科技有限公司 可视化三维立体装箱方法
CN113963140B (zh) * 2021-10-29 2022-07-08 山东大学 一种可变规格圆柱形货物错位摆放装箱系统
CN114684626B (zh) * 2022-04-25 2024-04-09 阿帕数字科技有限公司 规整物体的三维装箱方法、装置和电子设备
CN114742326A (zh) * 2022-06-09 2022-07-12 清华大学深圳国际研究生院 一种不规则物品的三维装箱方法
CN115108274B (zh) * 2022-07-19 2023-04-07 广东工业大学 一种考虑货物成套性的集装箱装箱方法
CN115496453B (zh) * 2022-11-16 2023-05-05 中国外运股份有限公司 货物配载方法、装置、电子设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103761635A (zh) * 2014-01-14 2014-04-30 大连理工大学 一种三维多箱异构货物装载优化方法
CN107977756B (zh) * 2017-12-21 2022-03-11 厦门大学嘉庚学院 解决三维装箱问题的三叉树规划计算方法
CN109345017A (zh) * 2018-10-08 2019-02-15 南京航空航天大学 一种考虑装箱约束的车间物料配送优化方法

Also Published As

Publication number Publication date
CN109761066A (zh) 2019-05-17

Similar Documents

Publication Publication Date Title
CN109761066B (zh) 一种基于组合启发式的三维集装箱装箱方法
Zhao et al. Learning practically feasible policies for online 3D bin packing
CN110069880B (zh) 一种基于仿真的多目标设备布局和生产排程协同优化方法
CN104504468B (zh) 基于三维移动模式序列与密母算法的三维装箱方法
CN104408589B (zh) 基于混合粒子群算法的agv优化调度方法
CN110443549B (zh) 一种物流仓库中物品的装箱方案生成方法及系统
CN109472362B (zh) 一种基于可变任务窗的agv动态调度方法及装置
CN107977756B (zh) 解决三维装箱问题的三叉树规划计算方法
CN110738365A (zh) 一种基于粒子群算法的柔性作业车间生产调度方法
CN113222410A (zh) 双向式布局模式下货位分配模型建立方法
CN112180934A (zh) 装车机器人的控制方法、系统、装置及可读存储介质
CN115730789A (zh) 分类存储下的asrs任务调度与货位分配方法及系统
CN113627642A (zh) 基于自适应大规模邻域搜索算法的堆垛机路径优化方法
Chung et al. Setup change scheduling for semiconductor packaging facilities using a genetic algorithm with an operator recommender
US11403438B2 (en) Article-storage simulation device, article-storage simulation method, program, and recording medium
CN109911272B (zh) 一种基于参考线准则的自由码垛装箱方法
CN117611029A (zh) 一种仓储物流系统的进程式仿真方法及系统
CN114537747A (zh) 基于自动化旋转和重组合策略的三维智能装箱方法和系统
CN114971019A (zh) 基于剪枝的混合码垛规划方法、装置及计算设备
CN112308353A (zh) 一种药品仓库作业调度优化方法
CN111160831B (zh) 密集仓储的任务生成方法、装置和电子设备
Piyachayawat et al. A hybrid algorithm application for the multi-size pallet loading problem case study: Lamp and lighting factory
Du et al. Flexible Job Shop scheduling problem solving based on genetic algorithm with model constraints
JP2004018137A (ja) 部品配置演算装置、部品配置演算方法、部品配置演算用プログラム、該プログラムを記録した記録媒体および部品配置支援システム
Yamazaki et al. Study on sequence problem optimization using variation-robust multi-objective optimization genetic algorithm

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
CP02 Change in the address of a patent holder

Address after: 315331 No. 521, Wenwei Road, Baisha road street, Cixi City, Ningbo City, Zhejiang Province

Patentee after: COLLEGE OF SCIENCE & TECHNOLOGY NINGBO University

Address before: 315212 No. 505 Yuxiu Road, Zhuangshi Street, Zhenhai District, Ningbo City, Zhejiang Province

Patentee before: COLLEGE OF SCIENCE & TECHNOLOGY NINGBO University

CP02 Change in the address of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20220922

Address after: Room 2202, 22 / F, Wantong building, No. 3002, Sungang East Road, Sungang street, Luohu District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen dragon totem technology achievement transformation Co.,Ltd.

Address before: 315331 No. 521, Wenwei Road, Baisha road street, Cixi City, Ningbo City, Zhejiang Province

Patentee before: COLLEGE OF SCIENCE & TECHNOLOGY NINGBO University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221216

Address after: 115007 Port Business Office of Railway Transportation Management Center, Fantun Village, Lutun Town, Bayuquan District, Yingkou City, Liaoning Province

Patentee after: Liaoning Yangang Logistics Co.,Ltd.

Address before: Room 2202, 22 / F, Wantong building, No. 3002, Sungang East Road, Sungang street, Luohu District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen dragon totem technology achievement transformation Co.,Ltd.

TR01 Transfer of patent right