一种面向多规格板材的矩形件排样方法转让专利

申请号 : CN201510187909.7

文献号 : CN104820867B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘强张帆陈新张浩林贵祥

申请人 : 广东工业大学

摘要 :

本发明公开了一种面向多规格板材的矩形件排样方法,所述方法包括如下步骤:第一步,输入板材与矩形工件的初始数据;第二步,根据矩形工件规格与数量通过多规格板材排样模块进行多规格板材排样;第三步,根据工件总面积,板材规格及数量通过板材组合构造算法得到板材组合序列;将板材组合序列进行放宽式选取板材组合得到板材组合;接着通过多规格板材排样模块内的及于组化策略的单板材排样算法计算出板材组合是否能排放下所有工件,如果不能则回溯到放宽式选取板材组合;如果可以则输出排样板材件。本发明的面向多规格板材的矩形件排样方法,解决了过往只对矩形原件选择不合理以及对单块板材件排样不合理的局限应用范围更加广泛。

权利要求 :

1.一种面向多规格板材的矩形件排样方法,其特征在于,所述方法包括如下步骤:

第一步,输入板材与矩形工件的初始数据;

第二步,根据矩形工件规格与数量通过多规格板材排样模块进行多规格板材排样;

第三步,根据工件总面积,板材规格及数量通过板材组合构造算法得到板材组合序列;

将板材组合序列进行放宽式选取板材组合得到板材组合;接着通过多规格板材排样模块内的及于组化策略的单板材排样算法计算出板材组合是否能排放下所有工件,如果不能则回溯到放宽式选取板材组合;如果可以则输出排样板材件;

第四步,如果对排样板材件不满意则将其打散和重组;打散后的工件排样重回到第三步执行,直到上一次排样的总利用率与打散与重组后的总利用率之差小于0.1%,排样结束,得到当前的排样解;

其中,所述第一步至第三步具体方法如下:

初始化排样数据、当前排样板材件索引指数i=1、解的控制利用率u=0.9和排样解PackList;计算矩形工件总面积,并通过板材组合选取算法选取板材件组合BinList,且板材件按面积增序排列;判断所有矩形工件排样是否完成,若已经完成,则结束,返回PackList;若未完成,则判断板材件索引指数i大于BinList的长度,若i大于BinList的长度,则判断BinList是否为空,若BinList为空,则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1;若BinList不为空,则再判断BinList里板材件的总面积是否大于最大板材面积的3倍,若大于,则控制利用率u=0.7,且则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1,接着从BinList里面选取第i个板材件B;

若不大于,则由当前库存板材件生成组合BinGroup,组合按面积增序排列,且从BinGroup里面找到当前BinList组合面积相同的组合,替换当前BinList,得到新的BinList,u=0.7,同时i=1,接着从BinList里面选取第i个板材件B;若i不大于BinList的长度,则从BinList里面选取第i个板材件B;然后对B进行排样,返回当前排样最好的解,求得利用率,接着判断当前B的解利用率是否大于u,当前B的解利用率大于u,则将板材件B加入PackList,且从PackList里面删除,i自减1,库存板材件B数量减1,删除已排样切片;当前B的解利用率不大于u,则将板材件B的解设为空;i=i+1,再次判断所有矩形工件排样是否完成,则重复以上操作。

2.根据权利要求1所述的面向多规格板材的矩形件排样方法,其特征在于,所述打散与重组的方法如下:初始化已排样的原片列表PackList,计算当前排样总利用率U,并定义目标优化利用率goalU=U;将PackList里原片利用率大于等于U的存至goodList,小于U的存至badList,从goodList和badList里各选取1/3的已排样原片进行打散,只有一块的也进行打散,并将打散原片从PackList里删除根据打散切片重新选取原片组合,再根据单块原片排样算法进行放宽式排样将重新排样后的原片重新放入PackList,并计算当前总利用率U,如果当前的U与目标优化利用率goalU之差大于0.005,则从PackList里重新选择打散的goodList与badList,进行新一轮的迭代,否则算法结束,返回当前已排样的PackList。

说明书 :

一种面向多规格板材的矩形件排样方法

技术领域

[0001] 本发明涉及一种面向多规格板材的矩形件排样方法,属于排样方法技术领域。

背景技术

[0002] 在玻璃、造纸、木材等行业的生产加工提供合理排样布局方案以及计算需要采购原料数量与规格,提高原料的利用率,为企业节省大量资源;也可根据实际生产约束,在现有库存原料的基础上选择出合理的原料规格,并设计出合理的排样布局图;现有的排样方法是采用不同的优化计算方法,对矩形工件进行排样优化,实现板材原件的利用率最大化;其优化效果比较差,很难针对多规格板材原件的选择与逐步放宽面积的机制,以及对单块矩形原片进行优化处理,以实现对矩形工件的排样与优化,另外也不具有对排样不理想的板材原件打散与重组的功能。

发明内容

[0003] (一)要解决的技术问题
[0004] 为解决上述问题,本发明提出了一种面向多规格板材的矩形件排样方法,可以提高原材料的利用率,减少原材料的浪费,从而实现批量生产;同时,排样图符合工业生产加工的“一刀切”的约束要求,大大便利了工业自动化生产与加工。
[0005] (二)技术方案
[0006] 本发明的面向多规格板材的矩形件排样方法,所述方法包括如下步骤:
[0007] 第一步,输入板材与矩形工件的初始数据;
[0008] 第二步,根据矩形工件规格与数量通过多规格板材排样模块进行多规 格板材排样;
[0009] 第三步,根据工件总面积,板材规格及数量通过板材组合构造算法得到板材组合序列;将板材组合序列进行放宽式选取板材组合得到板材组合;接着通过多规格板材排样模块内的及于组化策略的单板材排样算法计算出板材组合是否能排放下所有工件,如果不能则回溯到放宽式选取板材组合;如果可以则输出排样板材件;
[0010] 第四步,如果对排样板材件不满意则将其打散和重组。打散后的工件排样重回到第三步执行,直到上一次排样的总利用率与打散与重组后的总利用率之差小于0.1%,排样结束,得到当前的排样解。
[0011] 进一步地,所述第一步至第三步具体方法如下:
[0012] 初始化排样数据、当前排样板材件索引指数i=1、解的控制利用率u=0.9和排样解PackList;计算矩形工件总面积,并通过板材组合选取算法选取板材件组合BinList,且板材件按面积增序排列;判断所有矩形工件排样是否完成,若已经完成,则结束,返回PackList;若未完成,则判断板材件索引指数i大于BinList的长度,若i大于BinList的长度,则判断BinList是否为空,若BinList为空,则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1;若BinList不为空,则再判断BinList里板材件的总面积是否大于最大板材面积的3倍,若大于,则控制利用率u=0.7,且则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1,接着从BinList里面选取第i个板材件B;若不大于,则由当前库存板材件生成组合BinGroup,组合按面积增序排列,且从BinGroup里面找到当前BinList组合面积相同的组合,替换当前BinList,得到新的BinList,u=0.7,同时i=1,接着从BinList里面选取第i个板材件B;若i不大于BinList的长度,则从BinList里面选取第i个板材件B;然后对B进行排样,返回当前排样最好的解,求得利用率,接着判断当前B的解利用率是否大于u,当前B的解利用率大于u,则将板材件B加入PackList,且从PackList里面删除,i自减1,库存板材件B 数量减1,删除已排样切片;当前B的解利用率不大于u,则将板材件B的解设为空;i=i+1,再次判断所有矩形工件排样是否完成,则重复以上操作。
[0013] 其中,板材组合构造算法具体原理如下:给定指定规格和指定数量的矩形工件与板材件,我们假设要求加工的矩形工件长和宽及其数量分别为,库存板材件按面积降序后长和宽分别为,且第j类型板材件的库存数量为Cj,由于本算法按照矩形工件总面积来选取板材件组合,因此先求得矩形工件总面积和S为:
[0014] 假设选择第j类型的板材件数量为xj,则板材件组合BinList的定义为:
[0015] 显然,求取BinList可以建模为线性规划问题。针对该问题,本文提出了一种基于贪婪和动态规划思想的列生成算法,算法的主要原理描述如下:
[0016] 首先,从最大面积板材件数量出发,严格按照板材件库存数量表尝试计算下式:
[0017] 将满足r大于零且小于最小板材件面积的xj按照大块优先选择的原则列出来,r值保存到至相应数组a。
[0018] 然后从数组a里选择r为0的可行解BinList存到可行解集solutions,且该解集里每个BinList的解为;若没有为0的解,则选择r值最大且最小面积板材件数量不为Cn的可行解BinList存到可行解集solutions,且该解集里每个BinList的解为。
[0019] 最后需要从可行解集solutions里选择合适的BinList,在这里,本 文从solutions里选择BinList的启发式规则按以下适应度公式作为评估指标:
[0020] 通过计算solutions里面每组BinList的适应度值f,选取f值最大的组合作为初始排样板材件组合BinList。
[0021] 组化策略的单板材排样算法如下:算法开始前,首先对矩形工件数据进行预处理,即将矩形工件预处理成矩形工件组Group存至矩形工件组列表GroupList,排样时,以矩形工件组Group代替矩形工件进行排样。对于单个板材件B的排样,Group的选取与放置按以下适应度公式来选取:
[0022] 当选择出一个Group排放在板材件B的左下角,由于一刀切约束,会产生0块、1块或者2块子层中间板材件C,若形成0块,则算法结束,输出排样结果,若形成1块,则C继续选择Group排样,若形成两块,则有如图5所示切割方式。
[0023] 切割方案的选取按两个子层中间板材件C的长宽比来选择,优先选择长宽比小的切割方案,选择后优先处理面积小的子板材件C,判定是否为余料,若是余料且是否满足该余料小于设定的利用率,则排另一块子板材件;若不满足,回溯重排上一层板材件,满足条件则根据Group快速推荐策略,选出最多checking length个Group的列表checkingGroupList,从checkingGroupList中逐个选取Group排放在C左下角,则继续下一层递归,若不能找到,checking length自增1,重新搜索迭代,通过以上递归排样方式,直到所有子板材件都为余料或者矩形工件排样完成。
[0024] 打散与重组的方法与原理如下:初始化已排样的原片列表PackList, 计算当前排样总利用率U,并定义目标优化利用率goalU=U;将PackList里原片利用率大于等于U的存至goodList,小于U的存至badList,从goodList和badList里各选取1/3的已排样原片进行打散,只有一块的也进行打散,并将打散原片从PackList里删除根据打散切片重新选取原片组合,再根据单块原片排样算法进行放宽式排样将重新排样后的原片重新放入PackList,并计算当前总利用率U,如果当前的U与目标优化利用率goalU之差大于0.005,则从PackList里重新选择打散的goodList与badList,进行新一轮的迭代,否则算法结束,返回当前已排样的PackList。
[0025] (三)有益效果
[0026] 与现有技术相比,本发明的面向多规格板材的矩形件排样方法,解决了过往只对矩形原件选择不合理以及对单块板材件排样不合理的局限,开拓了对矩形工件在实际工业生产加工上的优化处理,应用范围更加广泛。

附图说明

[0027] 图1是本发明的排样方案总体架构图;
[0028] 图2是本发明的排样方案流程图;
[0029] 图3是本发明的单片排样算法流程图;
[0030] 图4是本发明的对初始排样的原片进行打散与重组的算法流程图;
[0031] 图5是本发明的一刀切约束下形成两块的切割图。

具体实施方式

[0032] 如图1所示的面向多规格板材的矩形件排样方法,所述方法包括如下步骤:
[0033] 第一步,输入板材与矩形工件的初始数据;
[0034] 第二步,根据矩形工件规格与数量通过多规格板材排样模块进行多规格板材排样;
[0035] 第三步,根据工件总面积,板材规格及数量通过板材组合构造算法得到板材组合序列;将板材组合序列进行放宽式选取板材组合得到板材组合; 接着通过多规格板材排样模块内的及于组化策略的单板材排样算法计算出板材组合是否能排放下所有工件,如果不能则回溯到放宽式选取板材组合;如果可以则输出排样板材件;
[0036] 第四步,如果对排样板材件不满意则将其打散和重组。打散后的工件排样重回到第三步执行,直到上一次排样的总利用率与打散与重组后的总利用率之差小于0.1%,排样结束,得到当前的排样解。
[0037] 如图2所示,所述第一步至第三步具体方法如下:
[0038] 初始化排样数据、当前排样板材件索引指数i=1、解的控制利用率u=0.9和排样解PackList;计算矩形工件总面积,并通过板材组合选取算法选取板材件组合BinList,且板材件按面积增序排列;判断所有矩形工件排样是否完成,若已经完成,则结束,返回PackList;若未完成,则判断板材件索引指数i大于BinList的长度,若i大于BinList的长度,则判断BinList是否为空,若BinList为空,则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1;若BinList不为空,则再判断BinList里板材件的总面积是否大于最大板材面积的3倍,若大于,则控制利用率u=0.7,且则根据剩余矩形工件面积重新选择板材件组合,组合成新的BinList,同时i=1,接着从BinList里面选取第i个板材件B;若不大于,则由当前库存板材件生成组合BinGroup,组合按面积增序排列,且从BinGroup里面找到当前BinList组合面积相同的组合,替换当前BinList,得到新的BinList,u=0.7,同时i=1,接着从BinList里面选取第i个板材件B;若i不大于BinList的长度,则从BinList里面选取第i个板材件B;然后对B进行排样,返回当前排样最好的解,求得利用率,接着判断当前B的解利用率是否大于u,当前B的解利用率大于u,则将板材件B加入PackList,且从PackList里面删除,i自减1,库存板材件B数量减1,删除已排样切片;当前B的解利用率不大于u,则将板材件B的解设为空;i=i+1,再次判断所有矩形工件排样是否完成,则重复以上操作。
[0039] 如图3,板材组合构造算法具体原理如下:给定指定规格和指定数量的矩形工件与板材件,我们假设要求加工的矩形工件长和宽及其数量分别为,库存板材件按面积降序后长和宽分别为,且第j类型板材件的库存数量为Cj,由于本算法按照矩形工件总面积来选取板材件组合,因此先求得矩形工件总面积和S为:
[0040] 假设选择第j类型的板材件数量为xj,则板材件组合BinList的定义为:
[0041] 显然,求取BinList可以建模为线性规划问题。针对该问题,本文提出了一种基于贪婪和动态规划思想的列生成算法,算法的主要原理描述如下:
[0042] 首先,从最大面积板材件数量出发,严格按照板材件库存数量表尝试计算下式:
[0043] 将满足r大于零且小于最小板材件面积的xj按照大块优先选择的原则列出来,r值保存到至相应数组a。
[0044] 然后从数组a里选择r为0的可行解BinList存到可行解集solutions,且该解集里每个BinList的解为;若没有为0的解,则选择r值最大且最小面积板材件数量不为Cn的可行解BinList存到可行解集solutions,且该解集里每个BinList的解为。
[0045] 最后需要从可行解集solutions里选择合适的BinList,在这里,本文从solutions里选择BinList的启发式规则按以下适应度公式作为评估指标:
[0046] 通过计算solutions里面每组BinList的适应度值f,选取f值最大的组合作为初始排样板材件组合BinList。
[0047] 组化策略的单板材排样算法如下:算法开始前,首先对矩形工件数据进行预处理,即将矩形工件预处理成矩形工件组Group存至矩形工件组列表GroupList,排样时,以矩形工件组Group代替矩形工件进行排样。对于单个板材件B的排样,Group的选取与放置按以下适应度公式来选取:
[0048] 当选择出一个Group排放在板材件B的左下角,由于一刀切约束,会产生0块、1块或者2块子层中间板材件C,若形成0块,则算法结束,输出排样结果,若形成1块,则C继续选择Group排样,若形成两块,则有如图5所示切割方式。
[0049] 切割方案的选取按两个子层中间板材件C的长宽比来选择,优先选择长宽比小的切割方案,选择后优先处理面积小的子板材件C,判定是否为余料,若是余料且是否满足该余料小于设定的利用率,则排另一块子板材件;若不满足,回溯重排上一层板材件,满足条件则根据Group快速推荐策略,选出最多checking length个Group的列表checkingGroupList,从checkingGroupList中逐个选取Group排放在C左下角,则继续下一层递归,若不能找到,checking length自增1,重新搜索迭代,通过以上递归排样方式,直到所有子板材件都为余料或者矩形工件排样完成。
[0050] 如图4所示,打散与重组的方法与原理如下:初始化已排样的原片列表PackList,计算当前排样总利用率U,并定义目标优化利用率goalU=U;将PackList里原片利用率大于等于U的存至goodList,小于U的存至badList, 从goodList和badList里各选取1/3的已排样原片进行打散,只有一块的也进行打散,并将打散原片从PackList里删除根据打散切片重新选取原片组合,再根据单块原片排样算法进行放宽式排样将重新排样后的原片重新放入PackList,并计算当前总利用率U,如果当前的U与目标优化利用率goalU之差大于0.005,则从PackList里重新选择打散的goodList与badList,进行新一轮的迭代,否则算法结束,返回当前已排样的PackList。
[0051] 本发明的工作原理为:主要是运用最小化板材件组合方案和最大化单块板材件利用率方案进行优化的过程。本发明采用Java编写核心算法寻找最优的排样方案,采用Java进行可视化编程,能够以可视化的方式展现矩形工件排样在板材原件上的效果,并统计板材原件的选择方案与材料利用率。
[0052] 上面所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的构思和范围进行限定。在不脱离本发明设计构思的前提下,本领域普通人员对本发明的技术方案做出的各种变型和改进,均应落入到本发明的保护范围,本发明请求保护的技术内容,已经全部记载在权利要求书中。