一种基于均布有序搜索的一维下料优化算法制造技术

技术编号:14081170 阅读:432 留言:0更新日期:2016-11-30 17:35
本发明专利技术公开了一种基于均布有序搜索的一维下料优化算法,用于解决实际生产中一维下料优化的问题。本发明专利技术包括:(1)计算需要原板材的平均总数;(2)计算板条均匀的分布在每块板材中的数量,预防利用率不均匀的情况;(3)构造板条需求对,降序排列;(4)根据构造的板条需求对进行排列,得到一组排版组合;(5)在遍历原则的基础上通过逐步有序剔除法,重组当前排列组合,并保存利用率更优的一组。(6)重复步骤(5),直到满足设定的搜素条件,得到最优组合。本发明专利技术通过平均分布排版,使得整体优化利用率高,且避免利用率不均匀的现象,生产效率得到提高。

【技术实现步骤摘要】

本专利技术涉及板材下料优化算法方法,具体涉及板材的一维下料方法。
技术介绍
板材的一维下料,是指原材料和所需材料维数都为一维时,在已知的订单要求和原料数据下如何优化切割下料,使得原材料尽量得到充分利用,成本尽量得到节约的规划问题。传统的一维下料算法还存在很多不足,浪费大,算法执行不合理,算法执行过程效率低。
技术实现思路
本专利技术所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于均布有序搜索的一维下料优化算法,其算法优势明显,能够高效合理排版。为了达到上述目的,本专利技术采用以下技术方案予以实现:一种基于均布有序搜索的一维下料优化算法,其包含如下步骤:(1)构造板条需求对:按照板条宽度,降序排列板条需求对(Hi,Ni,)队列,从队列中剔除Ni为零的需求对,重新计算需求对的数量n;若n=0,说明本次加工任务全部完成,结束本次加工任务转步骤(7),否则转下一步(2);(2)判断宽度为Ws的板材若只放最宽板条H1,是否可以刚好放下。首先计算板材Ws中可放最宽板条H1的最大排版数量 Q s 1 = W s / H 1 ]]>如果则然后求板材剩余材料宽度 E s 1 = W s - H 1 Q s 1 ]]>若在0-5mm之间,则更新需求对中的N1,前s块板材剩余材料宽度之和保存当前排版数据,O[1].H=H1,本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的第1组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若大于5mm,亦即本次排版为无效排版,转下一步(3);(3)第s次加工板材宽度为Ws的板材时,根据板条需求对(Hi,Ni,)队列,计算理论上需要板材的平均总数量Ms: M s = ( Σ i = 1 n H i N i ) / W ‾ ]]>令板材Ws剩余宽度初始排版次数k=1,取第一组板条需求对即i=1,转下一步(4);(4)若i大于n,则i=1。计算板条Hi在板材Ws上的平均排版数量 P s i = N i / M s ]]>若则更新第i组板条需求对(Hi,Ni,)中的转下一步(5);(5)第s块板材在第k次排版时,取第i组板条需求对(Hi,Ni,),计算 E s k = E s k - 1 - H i P s i ]]>若在0-Hn之间(可通过逐步有序剔除法和遍历算法查找最优的排版组合),则更新第i组板条需求对(Hi,Ni,)中的Ni,前s块板材剩余材料宽度之和保存当前排版数据,O[k].H=Hi,本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若小于0且大于1,则减1,更新第i组需求对(Hi,Ni,)中的后转步骤(5);若小于0且小于等于1,此次排版为无效排版,则取下一组板条i=i+1,转步骤(4);若大于Hn,则更新第i组板条需求对(Hi,Ni,)中的Ni,从队列中剔除Ni为零的需求对,重新计算需求对的数量n。保存当前排版数据,O[k].H=Hi,转下一步(6);(6)若n大于0且在0-Hn之间,则本次宽度为Ws的板材排版结束,前s块板材剩余材料宽度之和取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若n大于0且大于Hn,则取下一组板条i=i+1,k=k+1,转步骤(4);若n等于0,当前宽度为Ws的板材排版结束,且所有板条加工完成。前s块板材剩余材料宽度之和取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,转下一步(7);(7)结束。进一步的是:所述板材为毛坯板材,已知毛坯板材平均宽度为且进一步的是:所述板条为加工后满足客户宽度要求的板材,板条厚度为板条的厚度与切刀的厚度相加。进一步的是:板条需求对(Hi,Ni)表示宽度为Hi的板条需求数量为Ni(i=1,2,…,n);第s块板材排版时,理论需要板材平均总数量为Ms,其计算公式为: M s = ( Σ i = 1 n H i N i ) / W ‾ ]]>第s次加工宽为Ws的板材时,可放板条宽为Hi的平均数量为 P s i = N i / M s ]]>的取值原则为:如果Ni/Ms有小数,则取整数部分后加1,否则直接取整数部分;若大于Ni,则等于Ni,否则按上述的取值原则进行取值;第s次加工宽为Ws的板材在第k次排版时,放进块宽为Hi的板条后,板材Ws剩余材料宽度为为一个循环递减的过程,k为当前板材的有效排版次数;每经过一次有效排版k值加1,直到板材剩余材料宽度小于当前剩余的未加工的板条中最小板条宽度;第s次加工宽为Ws的板材在第k次排版时,可放入第i组板条的最大数量为 Q s i = E s k - 1 / H i , ( E s 0 = W s , k = 1 ) ]]>的取值本文档来自技高网...
一种基于均布有序搜索的一维下料优化算法

【技术保护点】
一种基于均布有序搜索的一维下料优化算法,其特征在于,包含如下步骤:(1)构造板条需求对:按照板条宽度,降序排列板条需求对(Hi, Ni,)队列,从队列中剔除Ni为零的需求对,重新计算需求对的数量n;若n=0,说明本次加工任务全部完成,结束本次加工任务转步骤(7),否则转下一步骤(2);(2)判断宽度为Ws的板材若只放最宽板条H1,是否可以刚好放下:首先计算板材Ws中可放最宽板条H1的最大排版数量:=Ws/H1如果>N1,则= N1;然后求板材剩余材料宽度:=Ws‑H1若在0‑5mm之间,则更新需求对中的N1,N1=N1‑,前s块板材剩余材料宽度之和=+,保存当前排版数据,O[1].H=H1,O[1].N=;本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的第1组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若大于5mm,亦即本次排版为无效排版,转下一步骤(3);(3)第s次加工板材宽度为Ws的板材时,根据板条需求对(Hi, Ni,)队列,计算理论上需要板材的平均总数量Ms:令板材Ws剩余宽度=Ws,初始排版次数k=1,取第一组板条需求对即i=1,转下一步(4);(4)若i大于n,则i=1,计算板条Hi在板材Ws上的平均排版数量:=Ni/Ms若>Ni,则=Ni,更新第i组板条需求对(Hi, Ni,)中的,转下一步骤(5);(5)第s块板材在第k次排版时,取第i组板条需求对(Hi, Ni,),计算:若在0‑Hn之间(可在遍历原则的基础上通过逐步有序剔除法查找最优的排版组合),则更新第i组板条需求对(Hi, Ni,)中的Ni,Ni=Ni‑,前s块板材剩余材料宽度之和=+,保存当前排版数据,O[k].H=Hi,O[k].N=,本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若小于0且大于1,则减1,更新第i组需求对(Hi, Ni,)中的后转步骤(5);若小于0且小于等于1,此次排版为无效排版,则取下一组板条i=i+1,转步骤(4);若大于Hn,则更新第i组板条需求对(Hi, Ni,)中的Ni,Ni=Ni‑,从队列中剔除Ni为零的需求对,重新计算需求对的数量n,保存当前排版数据,O[k].H=Hi,O[k].N=,转下一步骤(6);(6)若n大于0且在0‑Hn之间,则本次宽度为Ws的板材排版结束,前s块板材剩余材料宽度之和=+,取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若n大于0且大于Hn,则取下一组板条i=i+1,k=k+1,转步骤(4);若n等于0,当前宽度为Ws的板材排版结束,且所有板条加工完成,前s块板材剩余材料宽度之和=+,取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,转下一步(7);(7)结束。...

【技术特征摘要】
1.一种基于均布有序搜索的一维下料优化算法,其特征在于,包含如下步骤:(1)构造板条需求对:按照板条宽度,降序排列板条需求对(Hi, Ni,)队列,从队列中剔除Ni为零的需求对,重新计算需求对的数量n;若n=0,说明本次加工任务全部完成,结束本次加工任务转步骤(7),否则转下一步骤(2);(2)判断宽度为Ws的板材若只放最宽板条H1,是否可以刚好放下:首先计算板材Ws中可放最宽板条H1的最大排版数量:=Ws/H1如果>N1,则= N1;然后求板材剩余材料宽度:=Ws-H1若在0-5mm之间,则更新需求对中的N1,N1=N1-,前s块板材剩余材料宽度之和=+,保存当前排版数据,O[1].H=H1,O[1].N=;本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的第1组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若大于5mm,亦即本次排版为无效排版,转下一步骤(3);(3)第s次加工板材宽度为Ws的板材时,根据板条需求对(Hi, Ni, )队列,计算理论上需要板材的平均总数量Ms:令板材Ws剩余宽度=Ws,初始排版次数k=1,取第一组板条需求对即i=1,转下一步(4);(4)若i大于n,则i=1,计算板条Hi在板材Ws上的平均排版数量:=Ni/Ms若>Ni,则=Ni,更新第i组板条需求对(Hi, Ni, )中的,转下一步骤(5);(5)第s块板材在第k次排版时,取第i组板条需求对(Hi, Ni, ),计算:若在0-Hn之间(可在遍历原则的基础上通过逐步有序剔除法查找最优的排版组合),则更新第i组板条需求对(Hi, Ni, )中的Ni,Ni=Ni-,前s块板材剩余材料宽度之和=+,保存当前排版数据,O[k].H=Hi,O[k].N=,本次宽度为Ws的板材排版结束,取保存的结构体数组O[k]的前k组数据,生成加工的G代码程序,取下一板材(s加1),转步骤(1);若小于0且大于1,则减1,更新第i组需求对(Hi, Ni, )中的后转步骤(5);若小于0且小于等于1,此次排版为无效排版,则取下一组板条i=i+1,转步骤(4);若大于Hn...

【专利技术属性】
技术研发人员:王平江钟治魁肖民生李世其
申请(专利权)人:泉州华中科技大学智能制造研究院
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1