蚁群混合遗传算法的研究及应用

合集下载

遗传-蚁群融合算法在离散型优化中的研究及实现

遗传-蚁群融合算法在离散型优化中的研究及实现

1 . 2 蚁 群 算 法 的优 缺 点
蚁群 算法 ( A n t C o l o n y O p t i m i z a t i o n ) 是 由 意 大 利 学 者 M. D o r i g o等 提 出 .近 几 年 逐 渐 发 展 起 来 的 随 机 优 化
方法 。
蚁 群 算 法 是 模 拟蚂 蚁 群 寻 觅 食 物 过 程 .通 过 每 次

中的优缺点 .并采 用 C # 语 言实现通过遗传一 蚁群融合
算 法 进 行 离 散 型数 学 模 型 的 优 化 计 算 .然 后 对 油 田增 产 措 施 方 案 优 化 的实 例 进 行 对 比分 析 .证 明 融 合 算 法
参 考 文 献

[ 1 】 陈 国良, 王熙法 , 庄镇泵等. 遗传算 法及其应用. 北京 : 北 京
衍进化 。 每次淘 汰不 满意解 , 逐步求 出满意解 。遗传算
法具有快速全局搜索 能力 . 前期收敛速度快 . 最 终 解 比
及 复杂程 度的提高 .单一算法 的计算结 果往 往不够优
化 .而 且 每种 算 法 的 局 限 性 均 会 由 于 应 用 复 杂 程 度 的 提 高 而 面 临时 间 效 率 及 优 化 性 能 的双 重 挑 战 。 基 于此 . 本 文研 究 思 想 就 是 充 分 发 挥 遗 传 算 法 的 快 速 全 局 搜 索
1 遗传 一 蚁群 算 法 融合 思 想
1 . 1 遗 传 算 法 的优 缺 点
遗传 算法 ( G e n e t i c A l g o i r t h m) 是 1 9 7 5年 美 国密 执
蚂蚁爬过后积 累下的信 息素 .使最短路径 的信 息素越 来越浓 . 最终形成一条最优路径。 它具有分布 、 并行 、 全 局收敛能力 . 后期收敛速度快 , 运算 速度快 的特点 。

基于蚁群信息素的混合遗传算法

基于蚁群信息素的混合遗传算法

是其个体适应度值和所处子空间的信息素 的函 数 . 体规模 为 , k代 中个 体 U的适 应 度 值 群 第
为 Id ( ) , 体 “ 处 子空 间 的上 一代 中标 n k )个 所 定 的信 息素 表示 为 P k一1 , h( ) 则个 体 被选 中
的概率 为 :
用双 重选择 算 子 、 于“ 交优 势” 想 的 交叉 算子 和 自适应 变异 算 子 的混 合 遗传 基 杂 思 算法. 实验表 明 , 用该 算 法的分 类 系统 的分 类准 确 率、 法运行 时 间、 法收 敛性 采 算 算
等方 面性 能均有 明显提 高.
【 关键词】遗传算法; 信息素 ; 杂交优势; 数据分类
取 自均 匀分解 的子空 间 , 得算 法 可 在解 空 间 中 使
以分类 问题 为例 , 定义 域为 [o hg ] 设 1 i . w, h 将 定义 域均 匀地 分解 为 个 子 空 间 E ,=12 i ,,


则 子 区域 的区 间长度 为 :
均匀 地搜 索 最 优 点 , 而在 一定 程 度 上 克 服 “ 从 早
其 中 : 为个体 所处 子 区域 残 留信 息 素 的相 对重 要程 度 , 为个体适 应度 值 的相对重 要程 度.
P 1 c ( d( ) , 中, h( )= J I 1 ) 其 n C 为根据 问题而 设定的正的常数 ,(n 为个体 ld 的适应 度 f Id) n 值.
1 蚁群信 息素在遗传算 法 中的使用
0 引 言
遗传 算法 改 进 的一 个 重 要 方 向是 将 其 他 智 能启 发算 法 的思想 策 略融合 到遗 传 算 法 中 , 编 对
码方 式 、 制 参 数 的确 定 、 择 方 式 和交 叉 机 理 控 选 1 1 遗传 算 法解 空 间的划分 .

多种群蚁群遗传算法在车间调度中的研究应用

多种群蚁群遗传算法在车间调度中的研究应用
tenx sci euetegt ouina eiia o u ̄ino eG n t lo tm t bantePrt pi a o t no eMut ojci h etet nw s o slt sh nt p p l o f eei A grh o ti h aeoot l l i t l- bet e o h o t i l h t c i o m su o f h i v
T eR sac n p eS o ce uig h eerha d A pi t fMut l n o y gn t loi m Mut o jci h pS h d l c o i Co i t n i v n
a o tms o ligtepout nshd l gpolms i pp r rsn lpeAn C l y G nt xdAgrh fr h l-bet e l rh rs vn rd ci c eui rbe . 8 ae eet Mut l t oo - e ei Mie lo tm eMut ojci gi f o h o n n p a i n c i ot i v
21 02年
第 1 期 1
S IN E&T C N L G N O MA IN CE C E H O O YI F R TO
0,-  ̄ 教前沿 。 4
科技信息
多种群蚁群遗传算法在车间调度中的研究应用
董 向鹏 ( 岛科技大 学信 息科 学技术 学 院 山东 青
青岛
266 ) 6 0 1
【 bt c] n Cl y l rh n ee tnAgotma o i iot i tna otmt y l a ow oe u adeet e A s atA t o n g i mad nr i l rh ew o c pmz i gr ,e e s to w rl n f i r o A ot G ao e i r t b n i ao l i h a p f h l fcv

遗传算法与蚁群算法的融合研究

遗传算法与蚁群算法的融合研究
第 1 0卷
第l 6期
2 1 6月 0 0年







Vo. 0 No 1 J n 0 0 11 .6 u e2 1
17 —8 5 2 1 )6 4 1 —4 6 11 1 ( 00 1—0 70
S in e T c n l g n gn ei g ce c e h o o y a d En i e rn
D r o等最早 提 出的 , 群 算 法 主要 是 通 过 蚂 蚁 oi g 蚁 群体 之 间 的 信 息 传 递 而 达 到 寻 优 的 目 的 。其 优
点是:
① 其原 理是 一种正 反馈机 制 , 过信 息 素 的不 通 断更新 达 到最终 收敛 于最 优路径 上 ;
成 一个初始 种群 , 后 模拟 遗 传 选 择 和 自然 淘 汰 的 然
而蚁群算法是通过信息素的累积和 更新来收敛 于最优 路径 , 具有分 布、 并行、 局 收敛 能力 , 全 但是搜 索初期信 息素 匮乏 , 导致 算法速度慢。通 过将 两种 算法进行 融合 , 克服两种算法各 自的缺 陷, 优势 互补 , 成一种 时 间效 率和求解效 率都 比较好 的启 形
发 式 算 法 。 并通 过 仿 真计 算 , 明融 合 算 法 的 性 能优 于 遗传 算 法和 蚁 群 算 法 。 表
成为 提高算 法优 化性 能 的一 个重 要 且 有 效 的途 径 ,
③ 具有 可扩展 性 , 以与其他 算法相 结合 。 可
其 缺 点是 : 系 统 中 的反 馈 信 息 利 用 不 够 , 对 当
求解 到一定 范 围时往 往 做 大量 无 为 的冗余 迭代 , 求
精确解 效率 低 。 蚁 群算 法 ( n o n pi i t n 是 近几 年逐 A t l yO t z i ) Co m ao 渐 发展起 来 的 随机 优 化 方 法 , 是 意 大 利 学 者 M. 它

蚁群混合遗传算法的研究及应用

蚁群混合遗传算法的研究及应用
a v na e fte a tc ln lo tm n e ei lo i m n h o n ain frt erf so d a tg so h n oo y ag r h a d g n tc ag r h a d t e fu d to o h i u in: u ig t e go a i t sn h lb l
a 叶弑 21 第 4 第 期 0 年 2卷 4 1
E e to i c. T c . p . 5.2 1 lc r nc S i& e h /A r 1 00

蚁 群 混 合 遗 传 算 法 的 研 究 及 应 用
柏 建 普 ,吴
摘 要

04 1 ) 10 0
( 内蒙古科技大学 信息工程学院 ,内蒙古 包头
为 解 决 组 卷 过 程 中在 一 定 约 束条 件 下存 在 的 多 目标 优 化 问题 ,结 合 蚁群 算 法 和 遗 传 算 法各 自的 优 点 和 它
们融合的基础 ,提 出了一种蚁群算法融合到遗传 算法的策略 :在组卷的前阶段 利用遗传算 法群体性 全局搜 索能 力,快
速 形 成 初 始 解 ,在 满足 终 止遗 传 算 法 的条 件 后 ,将 遗 传 算 法调 度 的较 优 解 转化 为蚁 群 算 法 所 需要 的初 期 信 息 素 ,然 后
Ke wo ds a tc ln g rt ms; g n t lo i ms; h b d ag rtms ts a e e eain y r n oo y a oih l e ei ag rt c h y r lo i i h ; e tp p rg n rto
sr td c n i o s t i p p rp o o e u ig a n oo y ag rt m n ot e g n t lo t m n t e b ss o h ti e o d t n , hs a e rp ssf sn n a tc ln lo h i t h e ei ag r h o h ai ft e c i i c i

人工智能07蚁群算法及其应用

人工智能07蚁群算法及其应用
ij t n 1 ij t ij ij
Q Δτ ij Lgb , 若边 ij 是当前最优解的一部分 0, 否则
——精英蚂蚁在边 ij上增加的信息素量; ——精英蚂蚁个数; Lgb ——当前全局最优解路径长度。
蚁群算法的提出
• 算法的提出 蚁群算法(Ant Colony Optimization, ACO),又称蚂蚁算法——一种用来在图中 寻找优化路径的机率型算法。 它由Marco Dorigo于1992年在他的博士 论文“Ant system: optimization by a colony of cooperating agents”中提出,其灵感来源于 蚂蚁在寻找食物过程中发现路径的行为。 最早用于解决著名的旅行商问题(TSP , traveling salesman problem)。
人工蚁群 VS 自然蚁群
蚁群算法的特征
• • • •

蚁群算法采用了分布式正反馈并行计算机制, 易于与其他方法结合, 并 具有较强的鲁棒性。 (1)其原理是一种正反馈机制或称增强型学习系统;它通过信息素 的不断更新达到最终收敛于近似最优路径上; (2)它是一种通用型随机优化方法;但人工蚂蚁决不是对实际蚂蚁 的一种简单模拟,它融进了人类的智能; (3)它是一种分布式的优化方法;不仅适合目前的串行计算机,而 且适合未来的并行计算机; (4)它是一种全局优化的方法;不仅可用于求解单目标优化问题, 而且可用于求解多目标优化问题; (5)它是一种启发式算法;计算复杂性为 O(NC*m*n2),其中NC 是迭 代次数,m 是蚂蚁数目,n 是目的节点数目。
关于 min , max 的取值,没有确定的方法,有的 书例子中取为0.01,10;有的书提出一个在最大 值给定的情况下计算最小值的公式。

遗传算法与蚁群算法结合

遗传算法与蚁群算法结合

遗传算法与蚁群算法结合遗传算法1、基本思想2、算法原理3、代码实现4、结果截图5、总结1·基本思想吸取两个算法的优点,优缺互补,克服两个算法的缺点,利⽤了遗传算法的快速时间效率,优于蚂蚁算法的时间效率。

并且求解精度效率优于遗传算法。

这样就提⾼了两个算法结合的算法时间效率和求解精度。

2、算法原理这个算法的原理是先利⽤遗传算法的快速性、全局收敛性和随机性求出结果,结果产⽣有关问题的初始信息素分布,遗传算法执⾏完在运⽤蚁群算法,在⼀定初始信息素分布的情况下,充分利⽤蚁群算法并⾏性、正反馈性、求解精度效率⾼的特点。

3、代码实现%mainclear;clc;%%%%%%%%%%%%%%%输⼊参数%%%%%%%%N=50; %%城市的个数M=100; %%种群的个数ITER=500; %%迭代次数%C_old=C;m=2; %%适应值归⼀化淘汰加速指数Pc=0.8; %%交叉概率Pmutation=0.05; %%变异概率%%⽣成城市的坐标pos=randn(N,2);%%⽣成城市之间距离矩阵D=zeros(N,N);for i=1:Nfor j=i+1:Ndis=(pos(i,1)-pos(j,1)).^2+(pos(i,2)-pos(j,2)).^2;D(i,j)=dis^(0.5);D(j,i)=D(i,j);endend%%⽣成初始群体popm=zeros(M,N);for i=1:Mpopm(i,:)=randperm(N);%随机排列,⽐如[2 4 5 6 1 3]end%%随机选择⼀个种群R=popm(1,:);figure(1);scatter(pos(:,1),pos(:,2),'rx');%画出所有城市坐标axis([-3 3 -3 3]);figure(2);plot_route(pos,R); %%画出初始种群对应各城市之间的连线axis([-3 3 -3 3]);%%初始化种群及其适应函数fitness=zeros(M,1);len=zeros(M,1);for i=1:M%计算每个染⾊体对应的总长度len(i,1)=myLength(D,popm(i,:));endmaxlen=max(len);%最⼤回路minlen=min(len);%最⼩回路fitness=fit(len,m,maxlen,minlen);rr=find(len==minlen);%找到最⼩值的下标,赋值为rrR=popm(rr(1,1),:);%提取该染⾊体,赋值为Rfor i=1:Nfprintf('%d ',R(i));%把R顺序打印出来endfprintf('\n');fitness=fitness/sum(fitness);distance_min=zeros(ITER+1,1); %%各次迭代的最⼩的种群的路径总长nn=M;iter=0;while iter<=ITERfprintf('迭代第%d次\n',iter);%%选择操作p=fitness./sum(fitness);q=cumsum(p);%累加for i=1:(M-1)len_1(i,1)=myLength(D,popm(i,:));r=rand;tmp=find(r<=q);popm_sel(i,:)=popm(tmp(1),:);end[fmax,indmax]=max(fitness);%求当代最佳个体popm_sel(M,:)=popm(indmax,:);%%交叉操作nnper=randperm(M);% A=popm_sel(nnper(1),:);% B=popm_sel(nnper(2),:);%%for i=1:M*Pc*0.5A=popm_sel(nnper(i),:);B=popm_sel(nnper(i+1),:);[A,B]=cross(A,B);% popm_sel(nnper(1),:)=A;% popm_sel(nnper(2),:)=B;popm_sel(nnper(i),:)=A;popm_sel(nnper(i+1),:)=B;end%%变异操作for i=1:Mpick=rand;while pick==0pick=rand;endif pick<=Pmutationpopm_sel(i,:)=Mutation(popm_sel(i,:));endend%%求适应度函数NN=size(popm_sel,1);len=zeros(NN,1);for i=1:NNlen(i,1)=myLength(D,popm_sel(i,:));endmaxlen=max(len);minlen=min(len);distance_min(iter+1,1)=minlen;fitness=fit(len,m,maxlen,minlen);rr=find(len==minlen);fprintf('minlen=%d\n',minlen);R=popm_sel(rr(1,1),:);for i=1:Nfprintf('%d ',R(i));endfprintf('\n');popm=[];popm=popm_sel;iter=iter+1;%pause(1);end%end of whilefigure(3)plot_route(pos,R);axis([-3 3 -3 3]);figure(4)plot(distance_min);%交叉操作函数 cross.mfunction [A,B]=cross(A,B)L=length(A);if L<10W=L;elseif ((L/10)-floor(L/10))>=rand&&L>10W=ceil(L/10)+8;elseW=floor(L/10)+8;end%%W为需要交叉的位数p=unidrnd(L-W+1);%随机产⽣⼀个交叉位置%fprintf('p=%d ',p);%交叉位置for i=1:Wx=find(A==B(1,p+i-1));y=find(B==A(1,p+i-1));[A(1,p+i-1),B(1,p+i-1)]=exchange(A(1,p+i-1),B(1,p+i-1));[A(1,x),B(1,y)]=exchange(A(1,x),B(1,y));endend%连点画图函数 plot_route.mfunction plot_route(a,R)scatter(a(:,1),a(:,2),'rx');hold on;plot([a(R(1),1),a(R(length(R)),1)],[a(R(1),2),a(R(length(R)),2)]);hold on;for i=2:length(R)x0=a(R(i-1),1);y0=a(R(i-1),2);x1=a(R(i),1);y1=a(R(i),2);xx=[x0,x1];yy=[y0,y1];plot(xx,yy);hold on;endend%染⾊体的路程代价函数 mylength.mfunction len=myLength(D,p)%p是⼀个排列[N,NN]=size(D);len=D(p(1,N),p(1,1));for i=1:(N-1)len=len+D(p(1,i),p(1,i+1));endend%变异函数 Mutation.mfunction a=Mutation(A)index1=0;index2=0;nnper=randperm(size(A,2));index1=nnper(1);index2=nnper(2);%fprintf('index1=%d ',index1);%fprintf('index2=%d ',index2);temp=0;temp=A(index1);A(index1)=A(index2);A(index2)=temp;a=A;end%适应度函数fit.m,每次迭代都要计算每个染⾊体在本种群内部的优先级别,类似归⼀化参数。

蚁群算法与遗传算法的混合算法

蚁群算法与遗传算法的混合算法

蚁群算法与遗传算法的混合算法蚁群算法(Ant Colony Optimization,ACO)和遗传算法(Genetic Algorithm,GA)都属于启发式算法的范畴,它们分别从不同的角度对问题进行建模和求解。

蚁群算法以模拟蚁群觅食行为为基础,通过信息素和启发式规则指导蚂蚁解空间;而遗传算法通过模拟进化过程,利用交叉和变异运算生成新的个体,并适应性地选择个体进行下一代的繁衍。

两者在解决问题时有各自的局限性,因此将两种算法相结合,形成混合算法,可以克服各自的缺点,实现更有效的求解。

蚁群算法具有较强的全局能力,但其速度较慢,且可能会陷入局部最优解。

而遗传算法能够在过程中较快地收敛到局部最优解,但有可能会陷入局部最优解无法跳出。

因此,将两者结合起来,可以同时利用蚁群算法的全局和遗传算法的局部特性。

混合算法的基本思想是,将蚁群算法作为全局策略,用于生成一组较优的解,然后利用遗传算法在这组解中进行局部优化,以寻找最优解。

整个混合算法的流程如下:1.初始化蚁群相关参数和遗传算法的相关参数,包括蚁群大小、信息素更新速率、遗传算法的种群大小、交叉和变异的概率等;2.使用蚁群算法生成一组初始解,并计算每个解的适应度;3.利用遗传算法从初始解中选择适应度较高的一部分个体,作为种群;4.对种群进行交叉和变异操作,生成下一代个体;5.计算下一代个体的适应度;6.如果满足停止条件(如达到指定迭代次数或找到满意解),则输出结果;否则,返回第3步,继续优化。

在混合算法中,蚁群算法和遗传算法的相互作用可以通过以下几种方式实现:1. 优选策略(Elitism):将蚁群算法生成的一组解合并到遗传算法的种群中,在遗传算法的选择过程中保留一些蚁群算法生成的优秀个体,以避免遗传算法陷入局部最优解。

2.信息素启发式规则:将蚁群算法的信息素启发式规则应用于遗传算法的交叉和变异操作中,以指导交叉和变异过程中的方向,增加遗传算法的全局能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

0 567
平均区分度 0 369
0 382
0 354
0 374
0 390
多知识点
试题总数量 105
112
81
120
125
掌握程序
了解 理解 掌握 应用 综合应用 总计数量
表 2 掌握程度基本信息 题型
选择Байду номын сангаас
填空
判断
简答
205
201
194
52
234
194
162
61
191
163
98
67
29
51
11
69
4
3
2) 用蚂蚁算法求 解出新的可行解, 并将其保 存
下来。
a)将已访问节点列表设置为 NULL, 初始化蚂蚁
未访问节点列表使其成为全集, 然后初始化允许访问
节点列表。
b) 确定蚂蚁路径 的起点, 已访问节 点列表、未 访问结点列表以及允许访问节点列表, 利用下一个结
点的选择策略选择结点。
c)修改已访问节点列表、未访问结点列表以及允 许访问节点列表, 重新计算边的易访问度。
f) 。
3) 将蚂蚁搜寻得到的路径种群保存下来。
4) 比较所有的可行解, 输出最优解。
2 实验与分析
题的具体情况如 表 1所 示, 试题 的掌握程 度如表 2
所示。
表 1 试题库中的基本信息
参数
选择
填空
题型 判断
简答
应用
平均每章
试题数量
51
47
31
22
19
平均难度 0 402
0 421
0 398
0 491
协议 算法及仿真
2011年第 24卷第 4期 E lectron ic Sc i& T ech /A pr 15, 2010
蚁群混合遗传算法的研究及应用
柏建普, 吴 强
(内蒙古科技大学 信息工程 学院, 内 蒙古 包头 014010) 摘 要 为解决组卷过程中 在一定约束条件下存在的多目标优化问题, 结合蚁群算法和 遗传算法各 自的优点 和它 们融合的基础, 提出了一种蚁群算法融合 到遗传算法的策略: 在组卷的前阶段利用遗传算 法群体性 全局搜索能 力, 快 速形成初始解, 在满足终止遗传算法的条 件后, 将 遗传算法调度的较优解转化为蚁群算法 所需要的 初期信息素, 然后 利用蚁群算法所具有的 正反馈、高效等特点快速形成试卷最优解。实践结果证明此算法改善 了试卷的质 量以及系 统的 运行效率, 生成的试卷符合要求 , 达到预 期的结果。 关键词 蚁群算法 ; 遗传算 法; 混合 算法; 组 卷问题 中图分类号 TP301 6 文献标识码 A 文章编 号 1007- 7820( 2011) 04- 020- 04
( 2) 适应度函数。 适应度函数的选 取应该与需要解 决的问题相 结 合, 根据目 标函数来 决定, 本 文中的适 应度函数 F 定义 为 F = F , M easure 其 FM easure 为 评 估 聚 类 算 法 的
图 2 适应度函数流程图
( 3)选择算子。 用锦标赛选择的方法, 根据适应度函数选取要进 行交叉的个体, 然后在锦标赛选择法中, 随机从种群 中挑选预定数目的个体, 从这些个体中选择出具有较 好适应度的个体做为父个体, 这个过程要重复进行, 直到完成所有的父个体选择。
( 1)
x = x + N ( 0,
)
( 2)
其中, N ( 0, )是均值是 0; 标准差是 , 它是 独 立高斯随机数向量。
通过以上描 述, 在混合算 法的后阶 段用蚁群 算 法, 根据 T SP 问题 [ 14] 求解的方法, 流程如下:
1) 将进化种群的信息转化成 蚂蚁出行的信息 素 浓度矩阵。
www d ian zik e ji o rg
21
协议 算法及仿真
柏 建普, 等 : 蚁群混 合遗传算法的研究及应用
( 4) 交叉算子。 利用均匀交叉的方法 [ 11- 13] , 将每个点都作为潜
在的交叉点, 其破坏性能促进对解空间的搜索, 能搜
索到其他交叉方法不能搜索到的模式。其过程是首先
随机产生与父辈个体编码等长的二进制交叉模板串,
d) 判断蚂蚁的未访问结点列 表是不是为 NULL,
若不是, 转到步骤 b); 若是, 则转入步骤 e)。
e)回到出发点, 利用信息素局部的更新策略更新 各节点信息素浓度, 转到步骤 a)。
f) 评估当前蚂蚁通过的路径, 更新为最优路径。
g)判断能否达到 的蚂蚁外出觅食 的次数, 若 不 能, 则次数加 1, 转 到步骤 a), 若能, 则转到步 骤
服遗传算法在搜索到一定阶段时最优解的搜索效率低
以及蚁群算法初始信息素匾乏的问题。
1 3 算法融合的基本环节及其步骤 根据混合算法的思想, 寻找两种算法的最佳结合
点是关键所在。为此提出以下策略用以确保两种算法
的融合在最佳时期。如图 1所示, 设置其最小遗传迭 代次数 ( tb 时刻 )和最大遗传迭代次数 ( tc 时刻 ), 然 后在遗传算法迭代过程中统计子代群体的进化率, 以 及设置子代群体的最小进化率。最后在设置迭代次数
R esearch on and A pp lication of Ant Colony A lgorithm s Hybrid G enetic A lgorithm s
Ba i Jianpu, W u Q iang ( Schoo l of In form at ion Engin eering, InnerM ongo lia Techno logy U n iversity, Baotou 014010, Ch ina) Abstract In order to solve the p rob lem of mu lti ob jective op tmi ization in test p ap er generat ion und er some re stricted cond itions, th is p ap er p roposes fus ing an ant co lony a lgorithm in to the gen et ic algorithm on the basis of the advan tages of th e an t co lony a lgorithm and genetic algorithm and the foundation for the ir fu sion: u sing the global search ing capab ility of the gen et ic algorithm at the early stage of test paper generation, transform ing the op tmi al solu tion schedu led by th e genetic algorithm in to in it ial pheromone th e ant colony need s, and then qu ick ly form ing optmi al so lu tion to th e test pap er by tak ing advan tage of the fact that the an t colony algorithm has the pos itive and negative feedback and the characteristic of h igh effic ien cy. App lication show s th at th is a lgorithm mi proves the qu ality of the test and efficiency of the system s and the generated paper meets the requ irem en t w ith d es ired effect ach ieved. K eywords ant co lony a lgorithm s; gen et ic algorithm s; hybrid algorithms; test paper gen eration
遗传算法 [ 1] ( G enetic A lgorithm s, GA ) 是一种 模 拟自然选择和遗传机制的优化搜索方法, 具有广泛的 适用性。它作为一种实用、高效、鲁棒性较强的优化 技术, 发展迅速, 在各种不同领域中得到广泛应用, 引起学者和专家的关注, 这表现出它具有较强的解决 问题能力。但是遗传算法也有收敛速度比较慢, 对系 统中的反馈信息利用不够, 当求解到一定范围时, 会 产生大量的冗余迭代, 使求解精确效率降低。
的范围内, 如果连续 N 代的子代群体的进化率都 小 于最小进化率, 证明这时遗传算法的优化速度较低, 可以终止遗传算法的过程, 进入蚁群算法。
依据蚁群算法和遗传算法融合的基本思想, 设计 混合算法的操作过程为:
( 1) 染色体的选择、编码以及初始种群的生成。
染色体 用蚁群 算法中 的参数 , , , 0, Q, 这样能利 用 遗传 算 法确 定蚁 群 算法 的 最优 参 数 组 合 [ 9] 。由于实数编码的遗传算法具有精度高、搜索空 间大、易引入特定领域的启发性信息等优点, 所以在 混合算法中可以采用十进制实数编码。初始化种群根 据预设的数量采用随机方式产生。
强等共同 的 特点。广 泛 地 用 于智 能 离 散 系 统工 程 优化, 根据两者各自的优缺点, 本文将这两个算法融 合, 使其优势互补, 提高混合算法的优化性能。
1 蚁群混合遗传算法在组卷问题中的融合
1 1 算法融合的可行性 遗传算法具有较强的全局搜索能力, 尤其是当交
叉概率较大时, 可以产生大量的新个体, 提高了全局 搜索范围。蚁群算法用信息正反馈原理并加入启发式 的搜索思想, 具有了局部搜索能力强和收敛速度快等 优点。遗传算法和蚁群算法具有互补性, 它们可有机 融合 [ 6- 7] 在一起, 用来克服缺点, 发挥优点。 1 2 算法融合的基本思想
相关文档
最新文档