基于蚁群算法的矩形件优化排样问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第32卷第1期2011年2月 青岛科技大学学报(自然科学版)
Jo urnal of Qing dao U niver sity o f Science and T echno lo gy (N atural Science Edition)V ol.32N o.1
Feb.2011
文章编号:1672 6987(2011)01 0090 05
基于蚁群算法的矩形件优化排样问题
冯 琳,史俊友*
(青岛科技大学机电工程学院,山东青岛266061)
摘 要:由于蚁群算法具有正反馈并行自催化机制和较强的鲁棒性等优点,逐渐成为一种应用广泛的元启发式算法。
针对矩形毛坯在定宽无限长的板材上排样这个NP 难问
题,提出采用蚁群算法进行求解。
采用1种2步法:第1步利用蚁群算法寻找最优底部毛坯排放顺序得到条形料排放顺序,第2步采用一种宽度方向最大填充排放算法来排放每个条形料。
并将得到的结果与以往算法的结果进行比较,进一步验证了蚁群算法的优越性及处理矩形件排样问题的有效性。
关键词:蚁群算法;矩形件排样;剪切下料;条形料排样中图分类号:T P 391.7 文献标志码:A
Optimization of Rectangle Packing Problems Based on Ant Colony Algorithm
FENG Lin,SHI Jun you
(Colleg e of Electromechan ical E ngineering,Qingdao U niver sity of S cien ce and T echnology,Qingdao 266061,Ch ina)
Abstract:Since the ant colony algorithm s autocatalytic,positive feedback,parallel mecha nism and the strong robustness,it has become a widely used meta heuristic algorithm.In the w ork presented here,we used an ant colony optimization (ACO)approach to solve the two di mensional strip packing problem (2D SPP),which consists of orthogonally placing all the pieces within the container,w ithout overlapping,such that the overall length of the layout is minimized.One additional constraint the guillotine constraint can be taken into account.In this paper,a two step method was used,the first step is using the ant colony algorithm to find the optimal order of every strip s bottom rectangular piece,and the second step is using a least w aste at w idth methods to fill each strip.The ant colony algorithm is subjected to a compre hensive test using benchmark pared to Genetic Simulated Annealing algorithm and Knapsack algorithm methods from the literature the ant colony algorithm performs best.Key w ords:ant alg orithm ;r ectangle packing ;guillotine cutting ;strip packing 收稿日期:2010 09 20
作者简介:冯 琳(1986 ),女,硕士研究生. *通信联系人.
本研究主要讨论将一系列不同尺寸的矩形毛坯在定宽无限长的板材上的排样问题(strip packing problem,SPP)[1]。
因为SPP 问题是NP 难问题[2]
,除极少部分能用确定性算法求解外,大部分采用元启发式方法来求解,如遗传算法[2]、模拟退火算法[3]
、禁忌搜索[4]
等。
而有时候由于这些元启发式算法本身的局限性和在处理SPP 问
题时未采用合适的排放方法,导致利用率不高。
而蚁群算法由于其本身的许多优点,如它采用了正反馈并行自催化机制,具有较强的鲁棒性、采用优良的分布式计算机制等,使得它在处理许多优化问题时展现出非常优异的性能。
本研究将它应用到SPP 问题中,采用2步法,将该方法的排样结果与以往算法相比较,进一步验证蚁群算法的
第1期 冯 琳等:基于蚁群算法的矩形件优化排样问题
优越性和处理矩形件排样问题的有效性。
1 问题描述
在板材(宽度为定值,长度视为无限)上排放m种矩形毛坯,第i(1!i!m)种毛坯的尺寸为l i∀w i,需求数量为n i,排样目标是寻找可行的矩形排放布局,并使板材占用长度最小。
所谓可行的排放方式满足以下几点:
1)矩形毛坯排放在板材之内;
2)矩形毛坯在板材上无重叠排放;
3)矩形毛坯正交排放在板材上,即矩形毛坯的边与板材的边相平行。
针对这个问题,通常会考虑以下2个约束:
1)矩形毛坯排放方向约束,矩形毛坯在板材上的排放方式只能按既定的方式(横排或纵排),而不能旋转90#排放;
2)剪切约束,该约束要求板材上的矩形毛坯能够不断的由贯通且平行于板材边的剪切得到。
根据是否考虑这2个约束,SPP问题又通常被分为4类:1)2个约束都不考虑;2)考虑方向约束,不考虑剪切约束;3)不考虑方向约束,考虑剪切约束;4)2个约束都考虑。
并且可以知道,适用于第2、3、4类问题的解决方式都可以解决第1类问题。
本研究将主要考虑第3类问题,即考虑剪切约束,因为实际生产很多时候有剪切约束要求。
2 SPP问题的蚁群算法原理及实现
2.1 蚁群算法的基本原理
蚁群优化(ant colony optimization)是由意大利学者Marco Dor ig o等根据蚂蚁觅食行为设计的优化算法。
首先来看蚂蚁的觅食行为,根据生物学家对蚂蚁行为研究发现,大部分蚂蚁视觉感知系统发育不全,群体中的个体之间的信息传递大部分都是依赖蚂蚁产生的化学物质进行的,人们把这种化学物质称为信息素(pherom one)。
蚂蚁种群在寻找食物时,刚开始可能有几条不同的路径被蚂蚁选择,并且在找到食物的路径上会释放信息素,由于短路径上信息素积累速度比长路径上的快,而这种高浓度的信息素将会促使更多蚂蚁选择这条路径,根据这种自身催化过程,最终绝大多数蚂蚁会选择短路径。
在这个过程中,可以发现起作用的主要是信息素、自身催化和差异路径长度等机制。
在将自然蚂蚁的觅食行为转化为人工蚂蚁处理复杂的组合优化问题时,也主要是从这么几个方面来考虑的[5]。
蚁群优化最早用于解决著名的旅行商问题(T SP,traveling salesman problem)这个经典的组合优化问题并且取得了很好的效果。
目前对于许多NP难问题如车辆路由问题、调度问题、子集问题、箱子包装问题都可以用蚁群优化来解决[6 7]。
2.2 SPP问题的蚁群算法求解
2.2.1 问题求解基本思路
对于考虑剪切约束的SPP问题,本研究对最终的排样布局的产生采用2步生成方式:第1步生成条形料;所谓的条形料就是1个尺寸由排放在最底部矩形件决定的矩形区域;第2步条料上排放零件;在条形料上排放零件时,提出一种宽度方向最大填充的排放算法,具体见2.2.4。
这2个步骤交替进行,直到所有毛坯被排放,可见影响最终布局的因素有:条形料底部毛坯的顺序和单个条形料上的排放方法。
采用蚁群算法主要是为了得到条形料的底部毛坯排放顺序。
蚁群算法求解基本思路是:设有m种矩形毛坯,第i(1!i!m)种毛坯的尺寸为l i∀w i,需求数量为n i。
将这m种毛坯视为m个结点,每一个代表该种毛坯的结点都分配了该种毛坯的数量和尺寸。
采用蚁群算法计算的过程就是利用结点之间的信息素和结点的启发式信息走出一条条形料底部毛坯的顺序。
在这个过程中,每个结点的信息(毛坯数量和信息素)是变化的。
在蚁群算法中,信息素和启发式信息对蚂蚁的行动有指导作用,而这里蚂蚁访问矩形的先后顺序对应着条形料底部毛坯排放顺序,也就直接影响最终的排样布局。
因此问题中的信息素和启发式信息的定义以及信息素的更新规则如何确定,是问题求解的关键。
2.2.2 启发式信息的定义及信息素的计算和更新
在一般矩形件排放过程中,矩形往往按面积从大到小进行排放,因此这里受其启发将启发式信息定义为其面积,即第i种毛坯的启发式信息 i被设定为其面积l i∀w i。
即在选择底部毛坯时会优先选择剩余毛坯中面积大的矩形件。
而信息素的基本含义是结点与结点之间的关系,本研究采用蚁群算法是为了得到合适的底部毛坯顺序,假设有m种待排矩形毛坯,给毛坯件编号为(1, 2,3,∃,m),最终的解的形式为3555666429的编码形式。
信息素 ij定义为选择第i种毛坯后选择
91
青岛科技大学学报(自然科学版)第32卷
第j 种毛坯的概率。
初始时由于还没有生成路径,结点同结点之间没有信息素差异。
初始信息素 ij 均设为1,随着计算的进行,蚂蚁生成了不同的路径,并释放信息素,这里信息素的更新规则为:采用仅当前迭代中最好的解释放信息素,如果当前迭代中有多个解的评价函数相等则都释放信息素。
解的评价函数如式(1),含义为第n i 次迭代中第i 只蚂蚁的解所用的板材长度。
f n i =uselen
g t
h (i)。
(1)
在当前迭代的最优解中,如果选择了第i 种毛坯后选择第j 种毛坯时,就增大 ij 的值,更新规则如式(2):
ij %(1- ) ij +m ij 。
(2)
式中的m ij 表示最优解中选择第i 种毛坯后选择第j 种毛坯的次数, 为信息素的蒸发率。
2.2.3 求解算法步骤
采用蚁群算法处理SPP 问题的流程图见图1。
图1 蚁群算法流程图
Fig.1 Flow chart of ant colony alg orith m
图1中第k 只蚂蚁求解的具体步骤如下:
1)按照一定的策略,确定该蚂蚁访问的第一个矩形;蚂蚁的数量设为毛坯的种类数,让每只蚂蚁分别从不同的结点开始访问,这样是为了尽可能的搜索全局的路径,防止陷入局部最优。
在每个蚂蚁访问了第1个结点后更新该结点的毛坯的数量;
2)根据蚂蚁访问结点,该结点所代表的矩形毛坯作为一个条形料的底部毛坯;根据条形料中排放规则,进行计算,选择毛坯排放该条形料,直到不能再排放,经过计算后更新每个结点处毛坯数量;
3)判断是否有剩余毛坯,无剩余毛坯则执行第7)步,有则继续进行下一步;
4)根据新的结点信息,计算邻域N k
b ,N k
b 表示蚂蚁k 对条形料b 的可行邻域N k
b ,在长度无限板材上处理时,邻域是所有毛坯数量不为0的结点;
5)蚂蚁k 在邻域中按照下面这个状态转移公式,访问下一个结点,作为新的一个条形料底部毛坯。
蚂蚁k 访问面积为l i ∀w i 的结点j 的概率见式(3):
P k
jb
=
j !( j )
∀
h &N
k b
h !( h )∀
,(3)
其中 j 的确定是由上一个条料中的底部毛坯件i 来决定的,见式(4):
j = ij 。
(4)
式(3)中的!是信息素的影响因子,∀是启发式信息的影响因子,它们的取值的原则是保持信息素和启发式信息有相同的数量级,也就是让它们对解的构建产生均衡的影响;6)返回执行第2)步;
7)计算此解的评价函数。
2.2.4 排放方法说明
在每一个条形料的底部毛坯确定以后,条形料的尺寸就决定了,如果再次排放的零件在宽度方向上小于条形料宽度,则会产生未排区域采取横切还是纵切的问题。
在很多文献中对于此时的选择做出了研究[8],对于这个问题,本研究提出一个新的选择方法,按照宽度方向最大填充原则排放,即在排放零件时,在所有未排放的零件中选择放入一个零件或多个相同零件来使纵向剩余最小,切割线只采取横切方式。
毛坯选择排放方式见图2。
92
第1期 冯 琳等:基于蚁群算法的矩形件
优化排样问题
图2 2种排放方式Fig.2 Tw o kinds of layout way
图2(a)中R Z i 为在宽度为W 的条形料排放第i 种毛坯(l i ∀w i )时零件纵排时宽度方向剩余量,图2(b)中R H i 为横排时宽度方向剩余量。
R Z i 与R H i 的计算方法如下:
首先计算条形料宽度方向上能够纵排或横排的毛坯数量,这里的INT (i)函数的意思是将非正整数i 舍去小数部分。
纵排:
N i =INT(W/w i ),(5)横排:
M i =INT (W /l i )。
(6)
再比较第i 种毛坯未排放数目R i 与N i 和
M i 的关系,确定n i 和m i 的取值:
n i =min (N i ,R i ),(7)m i =m in (M i ,R i )。
(8)最后得到R Z i ,R H i 的计算式如下:R Z i =W -n i ∀w i ,(9)R H i =W -m i ∀l i 。
(10)当R Z i >R H i ,则选择横排,反之则选择纵排。
最后在所有剩余的未排的矩形毛坯中分别计算这2个值,选出其中的最小值,并将与之对应的毛坯排放。
3 运行实例
用背包算法所利用的板材长度l usex =1260
mm,采用遗传模拟退火算法所利用的板材长度
l usex =1245m m,采用蚁群算法所利用的板材长度是l usex =1220mm 。
从数据库中随机选取了一组参加排样的零件,板材宽度600mm ,参加排样的零件各参数见表1。
表1 参加排样的零件参数
Table 1 Param eters of taking part in layout 零件编号
零件长度/m m 零件宽度/mm
零件数量
5402040815678125030191502559650406491863515
45152623515493
6040664
80
40
80
排样效果图见图3。
图中从上到下依次为蚁群算法、遗传模拟退火算法、背包算法所得到的排样图。
图3 排样效果图Fig.3 Effect chart of layout
93
青岛科技大学学报(自然科学版)第32卷
在对相同的毛坯零件排样时,可以看出蚁群算法得到的排样图明显比另外两种算法得到的排样图紧凑,材料利用率的计算方法为:p=(l usex∀
600)/ n i=1ar ea(i),它们的材料利用率分别为:蚁群算法9983%,模拟退火算法9782%,背包算法9597%。
可见采用蚁群算法比背包算法和遗传模拟退火算法排样材料利用率高。
4 结 语
本研究针对定宽无限长板材上的矩形件排样问题,提出采用蚁群算法解决该类问题,详细叙述了计算过程的设计,并将实例计算结果同背包算法和遗传模拟退火算法相比较。
结果显示:蚁群算法的排样效果明显优于背包算法和遗传模拟退火算法,从而验证了蚁群算法的优越性。
在采用该方法时,可以有效提高材料利用率,同时考虑了剪切约束,而满足剪切约束正好符合许多剪切下料设备的要求,因此,本方法可以在实际生产的下料问题中应用。
参 考 文 献
[1]Gerhard W scher,H eike H au∀ner,Holger Schumann.An i m
proved typology of cutting and packi ng problems[J].European Journal of Operational Res earch,2007,183:1109 1130.
[2]Andr eas Bortfeldt.A g enetic algorithm for th e tw o dimen
s ional s trip packin g problem w ith rectangular pieces[J].Eu r op ean J ou rnal of Operational Research,2006,172:814 837.
[3]杨彩,史俊友,顾海明.基于遗传模拟退火算法的矩形件排样
[J].青岛科技大学学报:自然科学版,2004,25(5):452 456.
[4]Iori M,M artello S,M onaci M.M etah euris tic algorithms for
th e s trip packing problem[J].Optimization and Indu stry, 2003,78:159 179.
[5]M arco Dorigo,Th om as St tzle.蚁群优化[M].张军,译.北
京:清华大学出版社,2007:63 115.
[6]段海滨.蚁群算法原理及其应用[M].北京:科学出版社,
2005:100 117.
[7]Levin e J,Ducatelle F.Ant colon y optimization and local
search for b in pack ing and cu tting s tock problems[J].Jour n al of the Operational Research S ociety,2004,55:705 716. [8]崔耀东,黄健民,张显全.矩形毛料无约束二维剪切排样的递
归算法[J].计算机辅助设计与图形学学报,2006,18(7):948 951.
(责任编辑 姜丰辉)
(上接第89页)
[4]洪在地,贠超,陈力.柔性臂漂浮基空间机器人建模与轨迹跟
踪控制[J].机器人,2007,29(1):92 96.
[5]张晓东,贾庆轩,孙汉旭,等.空间机器人柔性关节轨迹控制
研究[J].宇航学报,2008,29(6):1865 1869.
[6]Green A,S asiadek J Z Adaptive control of a flexible robot u
sing fuzzy logic[C]//AIAA,Am erica in stitu te of Aeronau tics and As tron autics,2004:1 10.
[7]洪在地,贠超,陈力.漂浮基空间机器人及其柔性影响下逆模
神经网络控制[J].宇航学报,2007,28(6):1510 1514.
[8]洪昭斌,陈力.基于高斯基模糊神经网络的漂浮基柔性空间
机械臂自学习控制[J].工程力学,2008,29(6):172 177.[9]Yoshida K,H as hizum e K,Ab iko S.Zero reaction m an euver
flight validation w ith ET S VII space robot and extens ion to kin ematically redundant arm[C]//Proceedings of the IEEE Intern ational conference on Robotics and Automation,Piscat aw ay,US A:IEE E,2001:441 446.
[10]Chen Li.Adaptive and r ob ust compos ite control of coordi
nated motion of space rob ot system w ith prismatic joint
[C]//Proc of the4th World Congress on Intelligent C on tr ol
and Au tom ation,Shanghai,C hina,2002,2:1255 1259.
(责任编辑 姜丰辉)
94。