• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 18
    • 下载费用:30 金币  

    重庆时时彩才能稳赚: 用于木工板件零件的智能排样优化方法.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN201410000132.4

    申请日:

    2014.01.02

    公开号:

    CN103793555A

    公开日:

    2014.05.14

    当前法律状态:

    撤回

    有效性:

    无权

    法律详情: 发明专利申请公布后的视为撤回IPC(主分类):G06F 17/50申请公布日:20140514|||实质审查的生效IPC(主分类):G06F 17/50申请日:20140102|||公开
    IPC分类号: G06F17/50; G06N3/12 主分类号: G06F17/50
    申请人: 南通大学
    发明人: 朱志松; 王桂兰; 朱龙彪; 成亚云; 徐海黎; 王恒; 严晓照
    地址: 226000 江苏省南通市啬园路9号
    优先权:
    专利代理机构: 代理人:
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201410000132.4

    授权公告号:

    ||||||

    法律状态公告日:

    2017.03.29|||2014.06.11|||2014.05.14

    法律状态类型:

    发明专利申请公布后的视为撤回|||实质审查的生效|||公开

    摘要

    本发明公开了一种用于木工板件零件的智能排样优化方法,包括下列步骤:S1:初始化遗传算法的相关参数;S2:从零件库中选提取待排样的矩形件信息;S3:从木工板原料库选择可用来排样矩形件的木工板相关信息;S4:对所获得的待排样矩形件的信息进行编码,并随机生成初始种群;S5:利用剩余矩形填充“一刀切”算法对上述初始种群进行逐一解码,以获得每一个排样方案的利用率;S6:应用遗传算法通过选择、交叉、变异操作来优化排样方案,并输出相应的最优解。按照本发明的智能排样方法,可以满足木工板矩形零件“一刀切”工艺要求,并且采用了智能算法和启发式算法相结合,可以较快找到一种优化方案,由此大大提高了企业的材料利用率且显著缩短了排样时间,提高了排样效率。

    权利要求书

    权利要求书
    1.  一种用于木工板件零件的智能排样优化方法,包括下列步骤:
    S1:初始化遗传算法中的相关参数,包括种群Population数量、迭代次数T、交叉概率Pc以及变异概率Pm等;
    S2:从零件库中提取待排样的矩形件,并获得相关参数,包括矩形件种类K、各种类矩形的数量ni、各种类矩形纤维方向的长li和非纤维向的宽wi,以及矩形排样时是否存在纤维方向要求,并对每一个矩形进行十进制整数编码,形成一个矩形件个数的无重复序列;
    S3:从原料库中选取符合上述矩形件排样要求的木工板,并获得木工板的相关参数,包括木工板序号、数量、各序号木工板纤维方向的长L和非纤维方向的宽W在内的相关信息;
    S4:根据上述带排样的矩形件信息随机生成遗传算法的初始种群Population,其中每条染色体就是矩形件的一个排样序列,矩形件的排样序列就是根据矩形编码号构成的不重复的随机序列。
    S5:利用剩余矩形填充“一刀切”算法对遗传算法种群进行解码;
    S6:利用上述步骤S5获得的解码结果生成排样方案图,并计算得到每个排样序列对应的排样利用率,并保留最大利用率gbest(全局最优解即全局最大利用率)以及对应的染色体序列;利用遗传算法中轮盘赌选择算子从中选出数量为Population个数的个体进入下一步;
    S7:对上述步骤S6筛选出的Population中的每相邻的两个染色体都随机产生一个处于0~1之间数值rc,若rc小于遗传算法的交叉概率Pc,则对这两条染色体进行部分匹配交叉运算,若rc大于等于遗传算法的交叉概率Pc,则对这两条染色序列体保持不变;
    S8:对上述步骤S7所得到的Population中的每一条染色体都随机产生一个处于0~1之间的数值rm,若rm小于遗传算法的变异概率Pm,则对该染色体执行变异运算,若rm大于等于遗传算法的变异概率Pm,则该染色体序列保持不变;
    S9:对上述步骤S8所得到的Population中的每一个染色体用剩余矩形填 充“一刀切”算法进行解码,得到对应的排样图及木工板利用率,同时记录这个Population中的最高利用率lbest(局部最优解即局部最大利用率)以及对应的染色体序列,并比较lbest与gbest的大小,若lbest大于gbest,则将lbest赋值给gbest,同时将lbest对应的染色体序列赋给gbest;
    S10:重复以上S6-S9,直到迭代次数达到设定的迭代次数T为止。

    2.  根据权利要求1所述的一种用于木工板件零件的智能排样优化方法,其特征在于:步骤S5中,对每条染色体的解码具体步骤如下:
    为表示与计算方便,用来排放矩形件的原料或者矩形统称为剩余矩形,剩余矩形以及矩形件都以左下角坐标以及长宽表示。
    S51:从原料库选取满足待排样矩形件的矩形木工板作为第一个剩余矩形P1,其左下角坐标为坐标原点,排放矩形均从剩余矩形的左下角开始,此时木工板张数为1;
    S52:每当要排入一个矩形件i时,判断是否存在可以排下矩形件i的剩余矩形;
    S53:如果存在可以排下矩形件i的剩余矩形,将矩形件i的长度与可以排下矩形件i的所有剩余矩形长度进行比较,找出与矩形件i最吻合的剩余矩形,将矩形件i排下,并更新剩余矩形集;
    S54:如果不存在可以排下矩形件i的剩余矩形时,从矩形件i之后向后搜索可以排进剩余矩形集的所有矩形件;
    S55:如果存在矩形件可以排进剩余矩形集,则选择排进剩余矩形最吻合的矩形件j及剩余矩形,交换矩形件j与矩形件i的位置,将此矩形件排进最吻合的剩余矩形,同时更新剩余矩形集;
    S56:如果不存在任何矩形件可以排进剩余矩形集,则加一块木工板,将矩形件i排进剩余矩形,同时更新剩余矩形集;
    S57:重复步骤S52-S56,直到所有矩形件排放完成。

    3.  根据权利要求1所述的一种用于木工板件零件的智能排样优化方法,其特征在于:步骤S7中,执行部分匹配交叉运算的具体子步骤包括:
    S71:随机选择出相邻两个染色体序列C1、C2中处于相同位置上的一部分 连续数字,同时交换C1与C2的这两个部分的连续数字;
    S72:对于所获得的2组连续数字,生成对应的映射关系,在两组数字中共同约掉对应位置相同数字的原则来执行操作,然后由此获得新的对应关系;
    S73:将上述2个染色体序列中除去所述部分连续数字之外的其他部分数字,用上述约掉相同的数所获得的对应关系进行替换,由此完成部分匹配交叉操作过程并获得新的2个染色体序列。

    4.  根据权利要求1所述的一种用于木工板件零件的智能排样优化方法,其特征在于:步骤S8中,执行变异运算的具体子步骤包括:
    S81:随机生成一个处于0~1之间数值r,如果r大于0.5,则对该染色体进行位置变异,否则进行旋转变异;
    S82:位置变异:随机选出2个进行位置变异的数字,交换这两个数字的位置;
    S83:旋转变异:随机选出1个进行旋转变异的数字,将该数字变为其相反数。

    说明书

    说明书用于木工板件零件的智能排样优化方法
    技术领域
    本发明属于加工件排样领域,尤其涉及一种用于木工板件零件的智能排样优化方法。 
    背景技术
    排样问题是指需要开料的工件在板料上的布置和开切方式。选择合理的排样布局方式,是提高材料利用率、降低生产成本和保证工件质量的有效措施。有效的排样方法可以使企业按照最优的方式对所需求的零件进行切割,从而可以极大地提高材料利用率、切割效率及降低生产成本,进而提升企业的经济效益。 
    目前,市场上还大量存在采用人工排样下料方法,人工下料方法由操作工人按照零件尺寸和数量在木工板上简单排列切割下料。这种传统的手工排样下料生产方式容易造成大量边角余料,且企业不能做到排样预算,从而囤积原料造成资金占用,影响企业发展。 
    市场上现有木工板规格都是矩形,主要用于家具、门窗、隔断、假墙、暖气罩、窗帘盒等。所以木工板排样问题就是矩形件排样问题。由于目前应用木工板企业多使用电锯裁切木工板,因此就要考虑“一刀切”工艺问题,可以简单定义为在木工板上的每一次切割轨迹是贯穿一组对边的连通直线,需从长、宽两个方向上考虑如何组合零件排列,才能使废料最少。但是现有的矩形优化排样方法往往没有考虑矩形件的特殊工艺及具有纤维方向,因此不能适用于矩形件“一刀切”的排样优化,特别是对于多品种大批量矩形件排样问题,传统的排样方法耗费时间长效率低下,不能满足企业的要求。采用人工对矩形件进行排样,效率低下且排样效果不理想,已经不能适应市场以及企业的需求。因此如何根据矩形的特定工艺要求及其自身的特性,定制 符合矩形件的加工要求以及企业的需求,能够更有效的提高木工板利用率、大幅度降低生产成本并且效率更高的排样方法,已经成为业内迫切的技术要求。 
    因此,亟需研发出解决上述问题的有效措施。 
    另外,申请人之前申请了一项名称为“用于矩形件的智能排样方法”的发明专利。 
    发明内容
    为解决上述技术问题,本发明的目的在于提供一种能够快速有效地解决木工板多品种大批量矩形件排样、排样结果满足“一刀切”工艺要求的智能排样系统。 
    本发明提供了一种用于木工板件零件的智能排样优化方法,包括下列步骤: 
    S1:初始化遗传算法中的相关参数,包括种群Population数量、迭代次数T、交叉概率Pc以及变异概率Pm等; 
    S2:从零件库中提取待排样的矩形件,并获得相关参数,包括矩形件种类K、各种类矩形的数量ni、各种类矩形纤维方向的长li和非纤维向的宽wi,以及矩形排样时是否存在纤维方向要求,并对每一个矩形进行十进制整数编码,形成一个矩形件个数的无重复序列; 
    S3:从原料库中选取符合上述矩形件排样要求的木工板,并获得木工板的相关参数,包括木工板序号、数量、各序号木工板纤维方向的长L和非纤维方向的宽W在内的相关信息; 
    S4:根据上述带排样的矩形件信息随机生成遗传算法的初始种群Population,其中每条染色体就是矩形件的一个排样序列,矩形件的排样序列就是根据矩形编码号构成的不重复的随机序列。 
    S5:利用剩余矩形填充“一刀切”算法对遗传算法种群进行解码,其中对每条染色体的解码具体步骤如下: 
    为表示与计算方便,用来排放矩形件的原料或者矩形统称为剩余矩形,剩余矩形以及矩形件都以左下角坐标以及长宽表示。 
    S51:从原料库选取满足待排样矩形件的矩形木工板作为第一个剩余矩形P1,其左下角坐标为坐标原点,排放矩形均从剩余矩形的左下角开始,此时木工板张数为1; 
    S52:每当要排入一个矩形件i时,判断是否存在可以排下矩形件i的剩余矩形; 
    S53:如果存在可以排下矩形件i的剩余矩形,将矩形件i的长度与可以排下矩形件i的所有剩余矩形长度进行比较,找出与矩形件i最吻合的剩余矩形,将矩形件i排下,并更新剩余矩形集; 
    S54:如果不存在可以排下矩形件i的剩余矩形时,从矩形件i之后向后搜索可以排进剩余矩形集的所有矩形件; 
    S55:如果存在矩形件可以排进剩余矩形集,则选择排进剩余矩形最吻合的矩形件j及剩余矩形,交换矩形件j与矩形件i的位置,将此矩形件排进最吻合的剩余矩形,同时更新剩余矩形集; 
    S56:如果不存在任何矩形件可以排进剩余矩形集,则加一块木工板,将矩形件i排进剩余矩形,同时更新剩余矩形集; 
    S57:重复步骤S52-S56,直到所有矩形件排放完成。 
    S6:利用上述步骤S5获得的解码结果生成排样方案图,并计算得到每个排样序列对应的排样利用率,并保留最大利用率gbest(全局最优解即全局最大利用率)以及对应的染色体序列;利用遗传算法中轮盘赌选择算子从中选出数量为Population个数的个体进入下一步; 
    S7:对上述步骤S6筛选出的Population中的每相邻的两个染色体都随机产生一个处于0~1之间数值rc,若rc小于遗传算法的交叉概率Pc,则对这两条染色体进行部分匹配交叉运算,若rc大于等于遗传算法的交叉概率Pc,则对这两条染色序列体保持不变; 
    S8:对上述步骤S7所得到的Population中的每一条染色体都随机产生一个处于0~1之间的数值rm,若rm小于遗传算法的变异概率Pm,则对该染色体执行变异运算,若rm大于等于遗传算法的变异概率Pm,则该染色体序列保持不变; 
    S9:对上述步骤S8所得到的Population中的每一个染色体用剩余矩形填充“一刀切”算法进行解码,得到对应的排样图及木工板利用率,同时记录这个Population中的最高利用率lbest(局部最优解即局部最大利用率)以及对应的染色体序列,并比较lbest与gbest的大小,若lbest大于gbest,则将lbest赋值给gbest,同时将lbest对应的染色体序列赋给gbest; 
    S10:重复以上S6-S9,直到迭代次数达到设定的迭代次数T为止。 
    上述优化排样步骤S5中剩余矩形填充“一刀切”算法如下: 
    在剩余矩形填充算法的基础上添加启发式分块原则,使剩余矩形填充算法满足“一刀切”工艺要求。剩余矩形填充算法,采用一连串矩形数据来表示,任何未被排样的空间(包括孤立的缝隙),都在剩余矩形集中表示。 
    剩余矩形以左下角坐标以及长宽表示,木工板纤维方向长为L,非纤维方向宽为W,设木工板的左下角坐标是坐标轴的原点(0,0),则第一个剩余矩形为P1=[0,0,L,W],所有排样点都是以剩余矩形的左下角开始。待排矩形件同样以左下角坐标以及长宽表示,若待排矩形件i,纤维方向长为li,非纤维方向宽为wi,则矩形件i排样后的剩余矩形集如图1所示。为保证一刀切工艺要求,每排一个矩形件,都要确定其切割方向(横切或者竖切),如图中虚线所示。 
    由排样点都是以剩余矩形的左下角开始,可知矩形件i的左下角坐标为(0,0),右上角坐标为(li,wi),剩余矩形减去矩形件i的运算式如式(1)所示。 
    [(0,0),(L,W)]-[(0,0),(li,wi)]={[(0,wi),(L,W)],[(li,0),(L,W)]}    (1) 
    按逆时针方向记录剩余矩形,则有 
    P2=[0,wi,L,W-wi] 
    p3=[li,0,L-li,W] 
    在公式中,希望考虑尽量大的矩形块,因此它们有重复部分。任意两个矩形以左下角及右上角坐标表示[(x1,y1),(x2,y2)]和[(x3,y3),(x4,y4)],重复部分的计算公式如(2)所示。 
    =[(max{x1,x3},max{y1,y3}),(min{x2,x4},min{y2,y4})]       (2) 
    第一次排样后,出现两块剩余矩形。若再进行一次排样,必须从中选定 一块。当选中其中一块之后,采用启发式重新分块,即用公式(2)先求出剩余矩形的重叠部分,然后将未选用的剩余矩形块利用公式(1)减去重叠部分。若未选用的剩余矩形为[0,wi,L,W-wi],则重新分块其减去重叠部分得 
    [(0,yi),(L,W)]-[(xi,yi),(L,W)]=[(0,yi),(xi,W)] 
    P2=[0,yi,L-li,W] 
    得到新的剩余矩形如图1中的矩形块P2,而被选中的剩余矩形按照公式(1)进行运算排样。 
    在第N次切割完成后,共N+1个剩余矩形,其中,N-1个剩余矩形除边界外互不相交,有两个剩余矩形有重叠部分。第N+1次切割从N+1个剩余矩形中选出一个剩余矩形进行排样,选出的剩余矩形有两种可能性。 
    (1)从不相交的N-1个剩余矩形中选出,此时,有重叠部分的两个剩余矩形将重叠部分归于面积较大的那个剩余矩形,因此分为两个互不重叠的剩余矩形; 
    (2)从相交的两个剩余矩形中选择一个,原有重叠部分归于被选择的那个矩形,因此原有重叠部分的剩余矩形分为两个不重合的剩余矩形。 
    在任何一个剩余矩形上排样一次,由图1可知必然生成两个有重叠部分的剩余矩形。第N+1次切割从N+1个剩余矩形中选出一个剩余矩形进行排样,选择规则如下: 
    (1)选择矩形件可以排进去的剩余矩形,即矩形件的长宽不超出剩余矩形的长宽或者矩形件的长不超出剩余矩形的宽; 
    (2)选择矩形件长度与剩余矩形长度最接近的剩余矩形进行排样,即矩形件的长度与剩余矩形的长度比值尽可能大。 
    上述优化步骤S7中执行部分匹配交叉运算的具体子步骤包括: 
    S71:随机选择出相邻两个染色体序列C1、C2中处于相同位置上的一部分连续数字,同时交换C1与C2的这两个部分的连续数字; 
    S72:对于所获得的2组连续数字,生成对应的映射关系,在两组数字中共同约掉对应位置相同数字的原则来执行操作,然后由此获得新的对应关系; 
    S73:将上述2个染色体序列中除去所述部分连续数字之外的其他部分数 字,用上述约掉相同的数所获得的对应关系进行替换,由此完成部分匹配交叉操作过程并获得新的2个染色体序列。 
    上述优化步骤S8中执行变异运算的具体子步骤包括: 
    S81:随机生成一个处于0~1之间数值r,如果r大于0.5,则对该染色体进行位置变异,否则进行旋转变异; 
    S82:位置变异:随机选出2个进行位置变异的数字,交换这两个数字的位置; 
    S83:旋转变异:随机选出1个进行旋转变异的数字,将该数字变为其相反数。 
    本发明的有益效果为:按照本发明的智能排样方法,可以很好的适应多品种大规模矩形件“一刀切”排样优化,并且采用了智能算法遗传算法和剩余矩形填充“一刀切”启发式算法相结合,能快速高效地寻找到一种优化方案,由此大大提高了企业的材料利用率且能显著缩短排样时间,提高排样效率。 
    该技术方案与申请人之前公布的“用于矩形件的智能排样方法”具有以下不同点: 
    1.使用解码方式不同,剩余矩形填充“一刀切”排样算法。 
    2.适应度函数改为总单板面积减去最后一张单板剩余可以利用的剩余矩形总面积。 
    3.对于已经排放完成的单板方案,如果剩余矩形是可以排放下本次排放最小矩形件的余料保留入原料库,作为下次排样的剩余矩形,节省原材料,减少浪费。 
    4.剩余矩形填充“一刀切”算法,在剩余矩形填充算法的基础上添加启发式矩形分开原则,保证每一个矩形件排下之后都已经确定切割方向,保证“一刀切”工艺要求 
    5.适用于多品种大批量矩形件排样优化。 
    6.优化效果好,起始利用率就比之前的高,最后利用率也比之前的高。 
    附图说明
    图1是剩余矩形填充“一刀切”排样运算图; 
    图2是智能算法实现流程图; 
    图3是剩余矩形填充“一刀切”算法流程图; 
    图4是矩形件排样结果示意图。 
    具体实施方式
    为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实例仅仅用于解释本发明,并不用于限定本发明。 
    作为本领域的技术人员所理解的,表现为矩形件的排样方法存在自身的工艺要求及约束,具体来说,譬如包括: 
    (1)矩形互不重叠且不超出木工板边界; 
    (2)矩形排放时边与剩余矩形相平行或者垂直; 
    (3)木工板本身具有纤维方向,而待排矩形件中有的矩形存在纤维方向要求,有的矩形不存在纤维方向,故单种矩形能否竖排(本文规定正数编码表示横排,负数编码表示竖排)要根据矩形自身属性而定; 
    (4)矩形排样后要满足“一刀切”的工艺要求; 
    本发明首先对上述要求及约束建立相应的矩形件排样优化数学模型,例如取笛卡尔二维坐标系,取木工板的左下角为坐标原点,木工板的长与坐标系的X轴重合,木工板的宽与坐标系的Y轴重合。现将K种矩形件排放在木工板上,R={R1,R2,R3,…Rn}其中第i种零件的数量为ni,它的纤维方向长为li,非纤维方向宽为wi,排样时矩形件横排r为1,竖排时r为0;木工板纤维方向的长为L,非纤维方向的宽为W,矩形件排样优化的数学模型如下式所示: 

    目标函数即为板材利用率: 
    F(X)=area1P×A-area2]]>
    式中,area1为所有待排矩形的面积,P为排样所用木工板的张数,A为木工板的面积,aera2表示最后一块木工板使用剩余可利用剩余矩形的总面积。 
    根据矩形件排样要求及约束建立相应的数学模型进行分析,本发明提出利用遗传算法和剩余矩形填充“一刀切”算法对矩形件进行排样优化,结果令人满意。 
    在标准的遗传算法中,遗传操作主要是由选择算子、交叉算子和变异算子组成的。其中,选择算子的作用是根据个体对于目标函数的适应度情况,将高适应度的个体选中同时淘汰低适应度的个体,因此起到筛选和定向进化的功能,最简单也最常用的选择算子是轮盘赌;将生物交配繁殖的过程在遗传算法中予以模拟就是交叉算子,交叉算子的基本过程是首先产生匹配并将个体两两配对以组成若干个母体,然后由每个母体的两个个体进行交叉操作使得每个母体产生一个或多个新个体;此外,为了保证算法不会丢失一些重要的遗传信息或者找到未曾出现在种群中的优良基因,因此需要引入变异算子来获得对整个解进行局部搜索的能力。 
    图2是按照本发明利用遗传算法与剩余矩形填充“一刀切”算法相结合对矩形件智能排样的流程方框图。如图2中所示,按照本发明的用于对矩形件的智能排样方法主要包括下列步骤: 
    (1)初始化遗传算法中包括种群Population、迭代次数T、交叉概率Pc、变异概率Pm在内的参数(考虑到算法的适用性、以及计算机运算处理的效率及工业车间的生产效率等因素,在本实例中可以对相关参数选择适当的范围,譬如将迭代次数T设定为50,同时考虑到反映真实求解过程的代表性和有效性,该交叉概率通常被选择为0.6~0.95的范围内,变异概率通常被选择为 0.05~0.2的范围内,在本实例中譬如可将交叉概率和变异概率分别设定为0.8和0.06),同时将所述种群设定40; 
    (2)从待排矩形中,提取包括矩形种类K、各种类矩形件的数量ni、各种类零件的尺寸即纤维方向的长li和非纤维方向的宽wi,以及矩形件排样时是否存在纤维方向要求在内的矩形件相关信息,由此制定出一个排样计划,例如表1: 
    表1矩形件数据表 

    从木工板库选取符合上述矩形件排样要求的矩形木工板,并提取包括木工板尺寸即纤维方向的长度Li和非纤维方向的宽Wi在内的木工板相关信息,由此获得例如表2所示的木工板信息: 
    表2木工板数据 

    (3)根据上述矩形件信息和木工板信息,对矩形件进行编码,随机生成初始种群Population,其中每个染色体(染色体为矩形件排样的一个解)就 是矩形件的一个排样序列,矩形件的排样序列就是根据矩形编码号构成的不重复的随机序列,为方便检查遗传交叉效果,此处矩形种类数乘以100来表示矩形编码,前面数字表示矩形种类,后面的两位数字表示矩形个数,当矩形个数较多时可以扩展为矩形种类乘以1000或者更多数字位来表示。矩形件横排编码为正数,矩形件竖排编码为负数。此处取随机生成种群的前面两个染色体C1和染色体C2为例。 
    C1:-227 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-105 -306 303 -220 -507 315 234 119 -206 123 -412 -316 -231 -305 -128-319 -504 -414 213 -413 -117 -131 -308 -232 -223 -229 -508 304 -208218 -214 410 -132 602 -116 -212 -403 -301 135 902 302 -604 -216 -312-129 -133 -313 603 -803 901 111 -215 110 -228 -402 -235 -126 -321 506-405 -224 408 -107 -118 415 -109 -322 102 -103 137 -1002 510 114 -407-121 -601 -324 -1003 101 -112 -136 -139 -230 -323 124 203 -138 -210505 -605 320 703 -127 406 705 -115 -801 -503120 106 108 211 -318 -226113 -501 -317 -140 205 207 -411 -122 -130 311 104 -217 -202 221 -225204 -409 -702 -125 307 -310 -404 -233 209 -314 -222 
    C2:-233 -702 703 306 215 -128 111 138 -133 -704 225 208 108 -126324 409 101 209 204 -305 1001 1002 320 234 219 401 316 212 322 309 134206 226 121 224 504 -231 -124 -403 -104 115 603 311 315 312 222 605211 217 137 112 -303 -310 102 113 501 506 216 414 210 -205 117 410 406114 701 1003 302 109 317 -122 119 -307 509 203 127 132 502 -402 -510116 318 -229 314 308 802 503 323 131 602 220 110 415 -228 -103 -201604 -139 313 -230 140 125 130 413 705 202 107 803 136 227 105 601 129505 408 301 412 221 218 213 232 507 -901 -319 -411 321 405 407 -801123 106 -223 135 902 -120 304 -235 -207 -325 -404 508 214 -118 
    (4)接着利用剩余矩形填充“一刀切”算法,通过计算机对上述种群逐一进行解码,其中对于单个解的解码过程具体包括以下子步骤,下面以上述第一个解C1为例予以说明: 
    (41)从原料库选取满足待排样矩形件的矩形木工板作为第一个剩余矩形P1,其左下角坐标为坐标原点,排放矩形均从剩余矩形的左下角开始,此时木工板张数为1; 
    (42)首先竖排2号矩形件,因此时只有一个剩余矩形即原木工板材,2号矩形件的可以排进剩余矩形中,所以将2号矩形件排进剩余矩形中,同时更新剩余矩形集,此时有两个剩余矩形,且具有互相重叠的部分; 
    (43)然后要竖排矩形件4,首先判断矩形件4是否可以排进剩余矩形中,由4号矩形件的长宽分别为400mm、300mm,第一个剩余矩形的长宽为2400mm、900mm,第二个剩余矩形的长宽分别为2200mm、1200mm,显然矩形件4可以排进任何一个剩余矩形中,比较矩形件竖排时横向长度与两个剩余矩形的长度进行比较,明显与第二个剩余矩形的长度比值较大,因此将剩余矩形中重叠部分归第二个剩余矩形,第一个剩余矩形要减去重叠部分,将矩形件4竖排到剩余矩形2中,然后更新剩余矩形集; 
    (44)按照上面的方法将剩下的矩形件依次排进剩余矩形集中; 
    (45)如果矩形件i不能排进任何一个剩余矩形中,则从矩形件i之后向后搜索可以放进剩余矩形中的任何矩形件,并选择最佳吻合的矩形件以及剩余矩形,并交换这个矩形件与矩形件i的位置,将这个矩形件排进剩余矩形中,同时更新剩余矩形集; 
    (46)如果不存在任何矩形件可以排进剩余矩形集,则加一块木工板,将矩形件i排进剩余矩形,同时更新剩余矩形集; 
    (47)按照上述步骤将所有矩形件排放完成。 
    (5)利用上述步骤(4)获得的解码结果以获得排样方案图,由fitness公式可以计算得到每个解对应的排样利用率即适应度值,由此得到C1染色体的利用率是97.37%,目前全局最优解为0,因此将C1利用率以及染色体赋给全局最优解。利用遗传算法的轮盘赌选择算子从中选出数量为Population(在本实例中即为40个,特别需要指出的是,其中各个个体可被重复选择)的个体进入下一步;其具体理论及操作过程为:轮盘赌根据种群所有解的适应度值,计算出每个解占适应度总和的相对适应度值,所有组解的相对适应度值之和 为1,这样,每个解都会对应一个相对适应度值,也即对应着轮盘赌上的一块区域,转动轮盘指针,指针落在的区域所对应的解被选中(相对适应度值大的解被选中的几率也大)进入下一步操作。 
    (6)对上述步骤(5)筛选出的Population中的每相邻的两个染色体都随机产生一个处于0~1之间数值rc,若rc小于交叉概率Pc,则对该这两条染色体进行部分匹配交叉运算,若rc大于等于交叉概率Pc,则对这两条染色序列体保持不变;下面人以上述编码过程中所获得的第一个解和第二个解中的序列C1、C2为例,来进行具体说明所述部分匹配交叉操作的具体步骤: 
    C1:-227 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-105 -306 303 -220 -507 315 234 119 -206 123 -412 -316 -231 -305 -128-319 -504 -414 213 -413 -117 -131 -308 -232 -223 -229 -508 304 -208218 -214 410 -132 602 -116 -212 -403 -301 135 902 302 -604 -216 -312-129 -133 -313 603 -803 901 111 -215 110 -228 -402 -235 -126 -321 506-405 -224 408 -107 -118 415 -109 -322 102 -103 137 -1002 510 114 -407-121 -601 -324 -1003 101 -112 -136 -139 -230 -323 124 203 -138 -210505 -605 320 703 -127 406 705 -115 -801 -503 120 106 108 211 -318 -226113 -501 -317 -140 205 207 -411 -122 -130 311 104 -217 -202 221 -225204 -409 -702 -125 307 -310 -404 -233 209 -314 -222 
    C2:-233 -702 703 306 215 -128 111 138 -133 -704 225 208 108 -126324 409 101 209 204 -305 1001 1002 320 234 219 401 316 212 322 309 134206 226 121 224 504 -231 -124 -403 -104 115 603 311 315 312 222 605211 217 137 112 -303 -310 102 113 501 506 216 414 210 -205 117 410 406114 701 1003 302 109 317 -122 119 -307 509 203 127 132 502 -402 -510116 318 -229 314 308 802 503 323 131 602 220 110 415 -228 -103 -201604 -139 313 -230 140 125 130 413 705 202 107 803 136 227 105 601 129505 408 301 412 221 218 213 232 507 -901 -319 -411 321 405 407 -801123 106 -223 135 902 -120 304 -235 -207 -325 -404 508 214 -118 
    首先,分别随机出上述2个序列中处于相同位置上的一部分连续数字,例 如下面加粗选出的两个连续数字: 
    C1:-227 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-105 -306 303 -220 -507 315 234 119 -206 123 -412 -316 -231 -305 -128-319 -504 -414 213 -413 -117 -131 -308 -232 -223 -229 -508 304 -208218 -214 410 -132 602 -116 -212 -403 -301 135 902 302 -604 -216 -312-129 -133 -313 603 -803 901 111 -215 110 -228 -402 -235 -126 -321 506-405 -224 408 -107 -118 415 -109 -322 102 -103 137 -1002 510 114 -407-121 -601 -324 -1003 101 -112 -136 -139 -230 -323 124  -411 -122 -130 311 104 -217 -202 221 -225204 -409 -702 -125 307 -310 -404 -233 209 -314 -222 
    C2:-233 -702 703 306 215 -128 111 138 -133 -704 225 208 108 -126324 409 101 209 204 -305 1001 1002 320 234 219 401 316 212 322 309 134206 226 121 224 504 -231 -124 -403 -104 115 603 311 315 312 222 605211 217 137 112 -303 -310 102 113 501 506 216 414 210 -205 117 410 406114 701 1003 302 109 317 -122 119 -307 509 203 127 132 502 -402 -510116 318 -229 314 308 802503 323 131 602 220 110 415 -228 -103 -201604 -139  -319 -411 321 405 407 -801123 106 -223 135 902 -120 304 -235 -207 -325 -404 508 214 -118 
    由此,相应获得这2个序列的处于相同位置上的一部分连续数字如下,同时交换C1与C2序列的这两部分连续数字, 
    C1:203 -138 -210 505 -605 320 703 -127 406 705 -115 -801 -503 120106 108 211 -318 -226 113 -501 -317 -140 205 207 
    C2:313 -230 140 125 130 413 705 202 107 803 136 227 105 601 129505 408 301 412 221 218 213 232 507 -901 
    对于所获得的2组连续数字,生成对应的映射关系,在两组数字中共同约掉对应位置相同数字的原则来执行操作,然后由此获得新的对应关系; 
    Temp1:313 -230 140 125 130 413 705 202 107 803 136 227 105 601129 505 408 301 412 221 218 213 232 507 -901 
    Temp2:203 -138 -210 505 -605 320 703 -127 406 705 -115 -801 -503120 106 108 211 -318 -226 113 -501 -317 -140 205 207 
    最后,将这2个序列中除去所述部分连续数字之外的其他部分数字,用上述约掉相同的数所获得的对应关系进行替换,则序列C1和C2分别变为: 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318 -316 -231 -305 -128-319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135 902 302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118 415 -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    C2:-233 -702 202 306 215 -128 111 -230 -133 -704 225 208 408 -126324 409 101 209 204 -305 1001 1002 413 234 219 401 316 212 322 309 134206 221 121 224 504 -231 -124 -403 -104 136 603 311 315 312 222 130301 217 137 112 -303 -310 102 218 213 506 216 414 125 507 117 410 803114 701 1003 302 109 232 -122 119 -307 509 313 107 132 502 -402 -510116 412 -229 314 308 802 105 323 131 602 220 110 415 -228 -103 -201604 -139 203 -138 -210 505 -605 320 703 -127 406 705 -115 -801-503 120 106 108 211 -318 -226 113 -501 -317 -140 205 207 -319 -411321 405 407 227 123 129 -223 135 902 601 304 -235 -901 -325 -404 508214 -118 
    由此完成对序列C1和C2的部分匹配交叉操作过程,上述结果即为原来的第一、第二个解中的矩形序列进行部分匹配交叉操作后的结果。对于通过上 述步骤(5)所筛选出的Population个解,应当从符合部分匹配操纵条件的解中依次选取2组序列(这些序列不被重复地选取,而且如果符合部分匹配操作条件的序列组合总数为单数,则最后一个序列不被选取)进行上述部分匹配交叉操作,一直到所有符合部分匹配操作条件的序列都被选取且执行上述交叉操作过程为止。 
    相应地,对于多个解中的木工板序列,其部分匹配操作的过程与零件序列相类似,在此不再重复。 
    (7)对上述步骤(6)所得到的Population中的每一条染色体都随机产生一个处于0~1之间的数值rm,若rm小于变异概率Pm,则对该染色体执行变异运算,若rm大于等于变异概率Pm,则该染色体序列保持不变; 
    下面仍以上述部分匹配交叉操作后获得的序列C1为例(当然,执行变异操作的序列也可能是未经过上述部分匹配交叉操作获得的序列),来进行具体说明所述变异操作的具体操作步骤: 
    经过部分匹配交叉操作后的序列 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318 -316 -231 -305 -128-319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135 902 302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118 415 -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    随机数若小于0.5则进行位置变异:首先,随机出该序列中两个数字位置,例如下面2个加粗的数字, 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318  -231 -305 -128 -319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135 902 302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118  -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    接着,将序列C1中两个加粗的数字互相交换,则序列C1变为: 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318 415 -231 -305 -128-319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135 902 302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118 -306 -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    随机数若大于等于0.5则进行旋转变异:首先,随机选出一个数字位置,例如下面加粗的1个数字, 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318 415 -231 -305 -128-319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135  302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118 -306 -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125 130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    接着,将序列C1中加粗的数字取其相反数,则序列C1变为: 
    C1:-801 -401 -502 -704 134 309 -802 -201 -325 -219 -1001 509 701-503 -306 303 -220 205 315 234 119 -206 123 -318 415 -231 -305 -128-319 -504 -414 -501 320 -117 -131 -308 -317 -223 -229 -508 304 -208113 -214 410 -132 602 -116 -212 -403 211 135  302 -604 -216 -312106 -133 203 603 406 207 111 -215 110 -228 -402 -235 -126 -321 506 -405-224 108 -127 -118 -306 -109 -322 102 -103 137 -1002 510 114 -407 -121120 -324 -1003 101 -112 -115 -139 -138 -323 124 313 -230 140 125130 413 705 202 107 803 136 227 105 601 129 505 408 301 412 221 218213 232 507 -901 -411 -122 -605 311 104 -217 703 -226 -225 204 -409-702 -210 307 -310 -404 -233 209 -314 -222 
    由此获得对序列C1执行变异操作过程后的结果。对于通过上述步骤(6)交叉操作之后得到的Population种群,应当对符合变异操作条件的序列依次进行上述变异操作,一直到对所有符合变异操作条件的序列都被执行变异操作为止。 
    另外,对于多个解中的板材序列,其变异操作的过程与零件序列相类似,在此不再重复。 
    (8)对上述步骤(7)所得到的Population中的每一个染色体用剩余矩形填充“一刀切”算法进行解码,得到对应的排样图及排样利用率,同时记录这个Population中的最高利用率1best及其对应的染色体序列,并比较lbest与gbest的大小,若lbest大于gbest,则将lbest赋值给gbest,同时将1best对应的染色体序列赋给gbest; 
    (9)重复以上(5)-(8),直到迭代次数达到设定的迭代次数T为止; 
    图3是按照本发明利用遗传算法与剩余矩形填充“一刀切”算法相结合对矩形件执行排样优化后的排样结果示意图。如图4所示,经过按照本发明的智 能排样过程之后,其中白色部分为排样矩形件,黑色为余料,总共使用5张木工板。前面3张单板方案利用率都在98.6%以上,第4张单板的利用率在95.9%,余料可以排下最小排样矩形件的剩余矩形保留可以二次使用,第5张单板剩余矩形余料也可以二次利用,排样结果可以满足企业对利用率的要求,同时满足“一刀切”工艺要求。 
    本领域的技术人员容易理解,以上所述仅为本发明的较佳实例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的?;し段е?。 

    关 键 词:
    用于 木工板 零件 智能 优化 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:用于木工板件零件的智能排样优化方法.pdf
    链接地址://www.4mum.com.cn/p-6156942.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03