您现在正在浏览:首页 > 职教文章 > 职教论文 > 自适应蚁群算法在序列比对中的应用

自适应蚁群算法在序列比对中的应用

日期: 2010/5/16 浏览: 97 来源: 学海网收集整理 作者: 粱栋,霍红卫

第22卷 第1期 计 算 机 仿 真 20O5年1月

文章编号 :1006—9348(2005)01—0100—03

自适应蚁群算法在序列比对中的应用

粱 栋 ,霍红卫

(西安电子科技大学计算机学院,陕西 西安 710071)

摘要 :序列 比对是生物信息学的重要研究-rg。蚁群算法是一种新型的模拟进化算法,并被成功地应用于旅行商问题(TSP)

等组合优化问题中。该文将蚁群算法应用于序列比对,并提出基于 自适应调整信息素的改进算法。仿真结果表明这种新的

比对算法是有效的,而它的改进算法的效果更为理想。

关键词:蚁群算法;序列比对 ;信息素 .

中圈分 类号 :TP301.6 文献标识码 :A

An Adaptive An t Colony Optimization Algorithm and Its Application

to Sequence Alignment

LIANG Dong,HUO Hong—wei

(School of Computer Science,Xidian University,Xi’all S~mnxi 710071,China)

ABSIltAcr:Sequence alignment is one of the moat in驴删 tools in bioinfmmmics m~arch.Ant colony叩而 0Il is a

novd simulated evolutionary algorithm successfully usedin combinatorial 0p血li翻d0Il 】ble蛆 such鹪 I印 .Inthis paper,

ACO is applied in sequence al and improved by adaptive ng the pI螂啊 啦 .The a;n,!A.on results demon-

strate that the Ilew approach is eflldent and the improved algorithm is m帆 efficient.

KEYWORDS:Ant colony op*imlmtion;Sequence a]igmnem;Pheromone

1 引言

序列比对(Sequence Alignment)是一种重要的生物信息处

理技术,通过比对 中获得的序列信息可以推断基因的结构 、

功能和进化关系,是生物信息学的重要研究工具。

蚁群算法(Ac0)是一种新型的模拟进化算法 ,通过由候

选解组成的群体在不断进化的过程 中寻求最优解 ]。它是

在对 自然界蚁群 的寻径 方式进行研究和模拟的基础上,由

DorigoM.等人首先提 出的u J。 目前该算法在 旅行商 问题

( I印)等组合优化问题 中有较多的研究 J。

本文将蚁群算法应用于序列 比对,并在此基础上 。针对

蚁群算法易于陷入局部最优解的特点,提出动态 自适应调整

信息素的改进算法,以求扩大搜索空间,提高收敛速度。仿

真实验证明这种新的比对算法是有效的,而其改进算法的效

果更为理想。

2 序 列比对问题描述

双序列比对是多序列比对和序列 数据库搜索 的基础。

Needleman和 Wunsch提出的比对方法属于动态规划范畴[3l。

收稿 日期 :~003—10—14

— 100 一

对于一个序列 S,l S l是 S中的字符个数,S[‘]表示序

列的第 ‘个字符。S[1..i]表示序列的前 个字符组成的子序

列。S中的字符由某个有限字符集合n确定(如DNA由4种核

糖核酸 A, ,C,G确定)。基 因序列在突变 中的变化包括替

代、插入和删除,我们用“一”来表示插入和删除所产生的空

位。对于 ,Y∈n U {一},定义 口( ,Y)为计分函数 ,表示 ,

Y比较时的得分 ,以下是最简单的一种:

f2 Y∈n

口( ,Y)={一1 ≠Y∈n (1) 【



l = ‘一’。r),= ‘一'

S和 的一个 比对A用序列和中字符的一一对应表示 。

其中 ① l l=l, l,② l l,l, l去掉空格就是 S和 。

A的得分为 :

(A):∑ I$1口( [ ], (2)

取得最大值的比对就是最优比对。

3 蚁群算法应用于序列比对

3.1 蚁群算法的原理

人工蚁群算法是受到真实蚁群觅食行为的启发提出的。

维普资讯 http://www.cqvip.com



蚂蚁这种群居昆虫,虽然单个个体的行为十分简单 ,但是由

其组成的群体却能完成较为复杂的行动 ,比如可以找到巢穴

到食物源的最短路径。仿生学家经过研究发现,每只蚂蚁觅

食时在走过的路线上会 留下一种称为信息素(pheromone)的

物质 ,蚂蚁之间就是靠感知这种物质的浓度进行信息传递

的。蚂蚁倾向于朝浓度高的方向移动,而且找到食物后会顺

原路返回。这样就形成 了一种正反馈机制:由于外激素随着

时间而挥发 ,距离短的路径因蚂蚁来回用时少,信息素浓度

将高于距离长的路径,后来 的蚂蚁选择距离短的路径,然后

又留下新的信息素,随着时间的推移,距离短的路径上的信

息素越来越多,选择它的蚂蚁也逐渐增多,最后整个蚁群聚

集到最短路径上。

人工蚁群算法模拟了这一过程。每只蚂蚁在解空间独立

地搜索可行解,解越好留下的信息素越多,随着算法推进,较

优解路径上的信息素增多,选择它的蚂蚁也随之增多,最终

收敛到最优或近似最优的解上 』。

3.2 蚊群比对算法的设计

对序列 S=CAGGA和 T=CGGITA,仿照动态规划法那

样阵建立矩阵(如图 1)。

蚂蚁从矩阵左上角出发选

择一条路线到达右下角,就形成

一 个比对 ,我们规定在水平或垂

直方向上移动一格,表示在相应

的序列中插入一个空位,沿对角

线移动一格表示到达的新位置

对应字符的匹配。图 1中的路线

表示了如下比对结果:

C G G T T A

_

C ll

A ll

6 ■

6

A ■

图1 单个蚂蚁的行走路线

序列 S :CAGG一一A

序列 -I',:c—GGITA

根据式(1)和(2)得分为 5。在找到的所有路线中得分最

高的比对就是最优比对。

与 ISP问题不同,蚂蚁在每个位置选择移动方向的数 目

是固定的,总是向右,向下 ,沿对角线向右下三个方向,序列

比对对加入的空位数量也有一定要求。所以蚁群 比对算法的

设计与 TSP问题有所不同。

我们用 谴(t)表示 t时刻图 1中(i, )位置上第 k个方

向的路径 R谴上的信息素浓度。其中 i=0,1,2? I s I, =

0,1,2...I I,而 k=0,1,2分别表示向右,向下 ,即向右下

方向。初始时刻,设定 r诚(0)= ro(r。为常数)。

蚂蚁 :(:=1,2? m)从矩阵左上角出发,每走一步 ,根

据当前位置上各条路径上的信息素浓度决定 向某一路径转

移。为(i,.,)位置上蚂蚁 ;选择第七个方向的路径定义一个得

分:

SCORE~=讯(f) (3)

讯 (f)的意义如前面所述。肘为启发信息,可 以根据式

(1)来确定 JIIf的值。当 k=2时,即向右下方移动,所到达的

新位置上,序列 s, 对应位置上的字符如果相同,肘 的值取

匹配得分 ,式(1)中为 2,不相同则 JIIf值取不匹配罚分的绝对

值的倒数,为 1。k=0或 1时,即向右或向下移动,必然在序列

中产生空位 ,JIIf的值取空位罚分的绝对值的倒数,为 1。当然

计分方式不同,JIIf的取值方法会不同。

为防止空位过多,应尽量使蚂蚁大致沿着对角线方向行

走。我们采用 d来调整蚂蚁的选择概率,如果蚂蚁的位置为

(



),当 i和,之差的绝对值在某个正数日以内,三个方向的

d值相同,这样三个方向等可能被选择 ,超过 日时,如果 i>

, 我们分配给向右和右下方向更大的 d值 ,增大蚂蚁选择这

两个方向的可能性,i<,的情况类同。日的大小对连续插入

空位的数目起到了限制作用。

a,口,y是分配给信息素,启发信息和 d的权值,体现了

它们对决策的影响力大小,在实验中可以进行合理地调整。

我们采用了这样的选择策略:首先设定 q。∈(0,1),蚂蚁

在选择路径时产生一个(0,1)之间的随机数 P,当 P≤ qo时,

蚂蚁 :选择 SCORE's,(k=0,1,2)之中分值最大的方向 k。当

P> 时,蚂蚁 :按照式(4)决定三个方向被选择的概率。

p

s com '~ ‘4)

式(4)采用轮盘赌的方式实现。如果 q0=0.3,则蚂蚁以

0.3的概率选择分值最大的方向,以 0.7的概率按式(4)决

策。q0选得小,有利于增加解的搜索空间,但不容易收敛。q。

选得大则反之【4J。

经过一代进化,当所有的蚂蚁通过不同的路线到达矩阵

右下角,得到一组比对结果 ,就完成 了寻找最优路线的一次

循环。这时要对每条路径的信息素进行全局更新 ,新的信息

素要加进来 ,旧的信息素要挥发。定义 ∈ (0,1)为衰减系

数 ,则 1一qK反映了信息素的挥发程度。更新公式如下:

r毋(t+1)=叮g×r (f)+△r驰

△ =∑ △r鑫

(5)

(6)

△ 为本次循环 中路径 R 中的信息紊增量。初始时刻

△r =0o△r螽为第;只蚂蚁在路径 上留下的信息素。



f Q×A:(蚂蚁 =经过 )

,、 △略 i0(蚂蚁:未经过R )’ (7)

Q为常数 ,A:与蚂蚁=所走路线代表的序列比对的分值

相关。在 TSP问题中,用 表示路线的长度,它总是大于零

的。但序列比对分值可正可负,所以要将其映射到正值再分

配给 ,比对分值越高,A:越大。

由于蚂蚁选择不同的路线 ,经过的格子数可能不相等,

即不是同时到达矩阵右下角。为每只蚂蚁增加一个初始值为

0标志,当到达右下角时置为 1。当所有的蚂蚁都到达右下角,

完成信息素全局更新后,所有的蚂蚁被重置到矩阵左上角,

置标志为 0,开始下一轮循环。算法在达到最大进化代数或最

一 101 —

维普资讯 http://www.cqvip.com



优解连续 l0代没有变化时终止。

为了加快搜索 ,记录每代取得 的最好的解 ,和历代最好

的解 比较获得最优解。

4 自适应调整信息素的改进算法

蚁群算法通过正反馈机制来强化较好的解,但容易出现

停滞,陷入局部最优解l5J5。针对这个问题 ,提 出自适应调整信

息素的方法 ,根据解的搜索情况,动态地调整信息素的分配。

采用式(8)的时变函数 Q(t)来代替式(7)中的常数 Q。

进化初期为了增大搜索空间,p(t)取较小的值 ,随着算法的

推进取值逐步增大,强化较好的解。在算法的仿真中,我们采

用 ql=0.0001,q2:0.0OO5,Q3:O.001以及 TI:30,TI

: 6o0

r QI(0< t≤ TI)

Q(t)={q2(TI
p3(T2< t)

在陷入局部最优解时,某条路径上的信息素在数量上占

绝对优势[5l,因此我们对信息素的最大值和最小值进行了限

制 ,如规定 r )面 :O.05, 彝(t)一 :30.0o限制最大值可以

防止某条路线的信息素浓度过大,限制最小值可以防止搜索

后期没走过的路径信息素浓度过低 ,使较差的路线被强化。

为了鼓励解质量的改善 ,又不减小搜索空间,在进化一

定代数以后 ,采用式 (9)根据解的情况动态地调整信息素的

分配。若路线 R谴上取得的解(即比对得分)为 Score,较目前

得到的最优解 s∞ 一 有所改善 ,则增大路线 R 上的信息素

增量的分配,并更新 & 一 的值,若低于最优解,则减小信

息素增量的分配。

△礓 : × (9)

如果最优解在几代 内没有改善,则可以适当减小要添加

的信息素,以求摆脱局部最优解。

5 仿真结果

采用 NC=lOO(最

大 进 化 代 数 ),m =

1o(蚂蚁总数),r0=20.

0,a = 4.0, = 3.0,y

= 2.0,qo= 0.3, =

0.8作为蚁群算法的参

数进行仿真实验。

选择平 均长 度 为

520的两条 DNA序列进

行 比对,采用式 (1)作

圈2 两种算法的进化曲线

为计分函数 ,最优解事先通过动态规划算法求得为 902。图 2

显示了基本蚁群算法和自适应蚁群算法 的进化过程。横坐标

轴表示进化的代数 ,纵坐标轴表示某一代取得 的最优解。曲

一 102 一

线 I和 2分别代表基本算法和自适应算法的进化曲线。

从图 2中看出基本算法在第 3l代达到 854,之后就陷入

了局部解 850中。自适应算法增大了解空间,开始阶段解质量

低于基本算法 ,但搜索到更优秀解的概率较大,随着算法的

推进 ,在第 45代收敛到最优解 902,连续 lO代最优解不变后

算法终止。

表 I,表 2显示了在不同长度的几组序列上 ,基本蚁群算

法和 自适应改进算法的比对结果。每组序列进行 20次比

对。从表中可以看出改进算法的寻优能力明显优于基本算

法,在长序列的比对中更为突出。

裹 1 基本蚁群算法比对结果

编号 序列平均长度 最好结果 最坏结果 平均值 已知最优解

l l26 234 230 232.40 234

3 430 768 712 736.65 768

5 ll50 姗 l864 l936.75 嬲

.裒2 自适应蚁群算法比对结果

编号 序列平均长度 最好结果 最坏结果 平均值 已知最优解

l l26 234 230 233.35 234

2 430 768 755 764.00 768

4 l150 嬲 嬲 2053.95 嬲

表 3显示了蚁群算法对氨基酸序列的比对效果。我们

选用 “皮 质 铁 氧 还 蛋 白氧 化 还 原 酶”编号 为 I:'08165和

Q61578,平均长度为492的两条序列,共进行 20次比对。计

分方法采用PAM250替换矩阵和仿射空位罚分,“空位设置罚

分”为 一lO,“空位扩展罚分”为 一0.5,匹配得分为 5,不匹配

罚分为 一4,与“欧洲生物信息研究所(珊 )”提供 的双序列 比

对程序“EMBOSS—Align”一致。最优解也通过该程序计算求

得 。

裹 3 氨基酸序 列比对结果

采用算法 最好结果 最坏结果 平均值 已知最优解

基本算法 2l94.5 208l 2l42.95 2: 1.5

自适应算法 2: 1.5 2181 2l96.55 2: 1.5

从平 均值 看 出 自适 应 算 法 的 结果 更接 近最 优 解。

PA.~.50替换矩阵计分方法比较复杂 ,除了精确匹配外还要

计算相似得分,因此结果偶然性大 ,解的精确性有所下降。

6 结论

仿真实验表明,蚁群算法在序列 比对中的应用取得了较

好的效果,而动态 自适应调整信息素的改进算法可以明显地

提高蚁群算法的寻优能力。相信经过进一步研究 ,蚁群算法

在序列比对中的应用前景会更广阔。

f下转第 1 页

维普资讯 http://www.cqvip.com



2 O.95 O.58 29 不收敛 一

3 O.6 0.48 30 不收敛 ?

4 O.85 O.5 40 收敛 8

5 O.88 0.48 45 收敛 一 10

6 O.9 O.38 90 收敛 一 5

7 O.96 O.8 l20 不收敛 口过大

说明:’*’代 表 化 时 3小 时 以 下;’**’代 表 化 时 3至 7小

时;’***’代表化时 l2小时以上

策略 2:

初始染色体随机生成 4条 7位十进制串;

迭代时间:45分钟 ;

优化后的 BP网络参数 =0.91 a=0.43 n=35;

随后的预测准确次数 37;

参考文献:

[1] w Sebiffm,m~,M Joost,Rwm .0I曲 ∞ 0fthe Backpl叩日 一

/d~rithmforTriningMultilaye~Pe~'eeptromTedmical Rer,lt[1~].

IJnive~ity Kob]6111g,hastitute of科 ,1993.

[2] I-leeht— el。∞ R.|Il啪叮 ot"BEd 唧 ∞ Neural Netw~ [C].

Proe.IJCI~ 一89.1989.1—593.

[3] R P .Pattem 血 ng Neural Netw0IkB[J].珊匝

Cora l,胁 ,Nov.1989,47—64.

[4] SY mg,J NH啪ng.AnAlgebraic Projeeti~ ^I蛐 forovti,i~

Hidden Units Size and bm iⅡg Rates in Back—en3pll~ oll bm iⅡg

[J].皿 ,1991,I:363—370.

[5] s Y mg,I-hiYuHen.AFl~ nim Appr~mo-fioR Redueti~(FARM)

farDete~nlnlg 0ptiⅡ岫lNumber~ffl-liddm u~its[J].珊匝,1991,II:

l63—168.

[6] M T}Iag匝,M B M∞出.Trai,l~,lg Foed F0rWaId Networks with Mar-

quart.AJ~ thm[J].皿匝 Tram.∞ Neural№tW0IkB,1994,5(6):989

— 993.

[7] T P V嘲 ,J K M∞gi8,ect.Accelerated the c啊w日霹臣lce 0fthe Back

nDpag妇 I Methoa[J].Bio.Cyt~m,1988,59(9):256—264.

[8] 蔡国正,屈粱生.共轭梯度神经网络 的研究[J].西安交通大学

学报 ,1995,29(8):73—76.

[9] 叶东毅 .BP网络的一个非单调学习算法[J].模式识别与人工智

能,1997,10(3):221—225.

[1O] 杨秋贵,张杰 ,张素贞 .基于拟牛顿法的前向神经元网络学习

算法[J].控制与决策,1997,12(4):357—360.

[11] 袁曾任.人工神经网络及其应用[M].北京:清华大学出版社,

2OOO

[12] JHHolland.Adll~ ollinNalural and Artifieal Srstems.Ann Arb∞.

MI:Univem tyMichigan P ∞.1975.

[13] 杨启文,等.遗传算法优化速度的改进[J].软件学报,2001,12

(02):270—275.

[14] 唐飞,膝弘飞.十进制整数编码遗传算法的模式定理[J].计算

机科学,1999,12(6):54—56.

[15] 潘正君,等.演化计算[M].北京,清华大学出版社 ,1999.

目 [作者筒介】 闫河(1 一1),男(汉族),陕西勉县人,信息获取与 处理专业在读博士生,讲师,主要研究方向:管理信 息系统、人工智能系统、图象处理技术、模式识别; 成卫(1 一7),男(汉族),重庆市人,硕士,副教授, 主要研究方向:数据库技术、人工智能系统

、 虚拟现

实技术;

潘英俊(19e)一9),男<汉族),重庆市人,教授、博导,主要研究方向:

光电测控与传感技术、智能机器人触觉传感技术、信息光学理论与应

用、微波治疗技术及仪器研制等;.

何光敏(1 73—6),女(汉族),四川平昌县人,本科,高级教师,主要研

究方向:多媒体技术。

(上接第 1112页J

参考文献:

[1] M ,VMiiIlie~o andA Col~i.The Ant :0p血

I,y&eolotq 0f o00p印 ng age,~[J].皿匝 n锄鼬 ∞ Srstems,

Man,and c,bem cs—part B,l996,26(1):l—l3.

[2] 王颖 ,谢剑英.一种 自适应蚁群算法及其仿真研究[J].系统仿

真学报,20吆一l,l4,(1):3l一33.

[3】 S B NeN~llemm and C D~rumeh.A C.meral Method Apl~lleabletothe

SearchforSimilaritiesintheAminoAcid&ql ce 0fTwoR ei|∞[J].

J.1~1o1.Bio1.,1970,48:443—453.

[4] 毕军,付梦印,张宇河.一种改进的蚁群算法求解最短路径问题

一 l06 一

[J].计算机工程与应用,2O113,(3):107—109.

[5] 覃刚力 ,杨家本.自适应调整信息素的蚁群算法[J].信息与控

制,20吆一6,31(3):198—201.

[作者简介】

梁 栋(1974一),男(汉族),河北省行唐县人,硕士研

究生,主要研究方向为算法设计、生物信息学等 ;

霍红卫(1963一),女(汉族),陕西人,教授,博士,主

要研究方向为分布与并行计算、算法设计、生物信息

学等。

维普资讯 http://www.cqvip.com




自适应蚁群算法在序列比对中的应用.pdf

返回顶部