蚁群算法及其在序列比对中的应用研究综述.docx

上传人:b****1 文档编号:3170761 上传时间:2023-05-05 格式:DOCX 页数:21 大小:168.66KB
下载 相关 举报
蚁群算法及其在序列比对中的应用研究综述.docx_第1页
第1页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第2页
第2页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第3页
第3页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第4页
第4页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第5页
第5页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第6页
第6页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第7页
第7页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第8页
第8页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第9页
第9页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第10页
第10页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第11页
第11页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第12页
第12页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第13页
第13页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第14页
第14页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第15页
第15页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第16页
第16页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第17页
第17页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第18页
第18页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第19页
第19页 / 共21页
蚁群算法及其在序列比对中的应用研究综述.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

蚁群算法及其在序列比对中的应用研究综述.docx

《蚁群算法及其在序列比对中的应用研究综述.docx》由会员分享,可在线阅读,更多相关《蚁群算法及其在序列比对中的应用研究综述.docx(21页珍藏版)》请在冰点文库上搜索。

蚁群算法及其在序列比对中的应用研究综述.docx

蚁群算法及其在序列比对中的应用研究综述

蚁群算法及其在序列比对中的应用研究综述

摘要:

蚁群算法是一种新颖的仿生进化算法。

作为一种全局搜索的方法,蚂蚁算法具有正反馈性、并行性、分布性、自组织性等特点,自提出以来,便在求解复杂组合优化问题上显示出了强大的优势。

序列比对是生物信息学的基础,通过在比对中获得大量的序列信息,可以推断基因的结构、功能和进化关系。

本文首先详细阐述了蚁群算法的基本原理、各种改进技术及收敛性分析,然后对蚁群算法在双序列比对和多序列比对的应用研究进行了综述和评价,最后指出了下一步的研究方向。

关键词:

蚁群算法;序列比对;信息素

Abstract:

Antcolonyalgorithm(ACA)isanovelbionicevolutionaryalgorithm.Asaglobalsearchingapproach,ACAhassomecharacteristic,suchaspositivefeedback,distributing,paralleling,self-organizing,etc,andfromitwasintroduced,ithasbeenusedtosolveallkindsofcomplexoptimizationproblem.SequencealignmentisthebasementofBioinformatics.Withthewealthofsequenceinformationobtainedfromsequencealignment,onecaninfersthestructure,functionandevolutionaryrelationshipofgenes.Inthispaper,thebasicprinciplesofACAareintroducedatlength,andvariousimprovementsandconvergenceAnalysisofACAarealsopresented.Thenthecurrentstudyofdoublesequencealignmentandmultiplesequencealignmentbasedonantcolonyalgorithmarereviewedandevaluated.Finally,somefutureresearchdirectionsaboutACAareproposed.

Keywords:

AntColonyAlgorithm;SequenceAlignment;Pheromone

1引言

蚁群算法(AntAlgorithm)是一种源于大自然中生物世界的新的仿生类算法,作为通用型随机优化方法,它吸收了昆虫王国中蚂蚁的行为特性,通过其内在的搜索机制,在一系列困难的组合优化问题求解中取得了成效。

由于在模拟仿真中使用的是人工蚂蚁概念,因此有时亦被称为蚂蚁系统(AntSystem)。

据昆虫学家的观察和研究发现,生物世界中的蚂蚁有能力在没有任何可见提示下找出从其窝巢至食物源的最短路径,并能随环境的变化而变化,适应性地搜索新的路径,产生新的选择。

作为昆虫的蚂蚁在寻找食物源时,能在其走过的路径上释放一种蚂蚁特有的分泌物——信息激素(Pheromone),使得一定范围内的其他蚂蚁能够察觉到并由此影响它们以后的行为。

当一些路径上通过的蚂蚁越来越多时,其留下的信息激素轨迹(Trail)也越来越多,以致信息素强度增大(随时间的推移会逐渐减弱),后来蚂蚁选择该路径的概率也越高,从而更增加了该路径的信息素强度,这种选择过程被称之为蚂蚁的自催化行为。

由于其原理是一种正反馈机制,因此,也可将蚁群系统理解成增强型学习系统。

蚁群算法由意大利学者M.Dorigo等人在20世纪90年代初提出来的[1~3]。

发展到今天已经有十几年的路程,在这一段时间里人们不断的对蚁群算法提出一些改进方法。

有Dorigo等人提出的一种称之为Ant—QSystem[4]的蚁群算法,该算法只让每次循环中的最短路径上的信息量作更新,强化了信息的反馈。

德国学者Stutzle和Hoos提出了一种最大最小蚂蚁系统(MAX-MINantsystem,MMAS)[5],MMAS对信息量的上下界作了限定,并且在算法中采用了轨迹平滑机制。

直到今天,MMAS仍然是解决TSP、QAP等离散域优化问题的最好蚁群算法模型之一,很多对蚁群算法的改进策略都渗透着MMAS的思想。

另外还有国内的学者吴庆洪等人提出了一种具有变异特征的蚁群算法[6],他们在蚁群算法中引入了逆转变异机制。

蚁群算法具有较好的鲁棒性,并行分布式计算及易于与其他启发式方法结合等优点,在短期内得到了很大发展,其应用领域也不断得到扩展[7~10]。

目前已有一些学者将蚁群算法应用到序列比对这一领域当中,其中梁栋等人将蚁群算法应用于序列比对,并提出基于自适应调整信息素的改进算法[11],其结果表明,蚁群算法可以有效地运用于双序列比对问题。

陈娟等人[12,13]提出了蚁群优化算法在多序列比对中的应用及渐进算法结合蚁群算法在多序列比较中的应用,并取得了较好的效果。

YixinChenl等人[14]提出了基于分割方法的蚁群多序列比对方法。

该算法采用蚁群算法将递归地将序列分割成垂直分割成若干子序列。

S.R.Jangam等人[15]在遗传算法中嵌入使用了蚁群算法来解决双序列比对问题。

Zne-JungLe等人[16]结合了遗传算法和蚁群算法来解决多序列比对问题。

为了将这些分散的文献和资料集中起来,本文对蚁群算法及其在序列比对中的应用研究进行了较全面地综述。

2蚁群算法的原理

用于优化领域的人工蚂蚁算法,其基本原理吸收了生物界中蚂蚁群体行为的某些显著特征:

(1)察觉小范围区域内状况并判断出是否有食物或其他同类的信息素轨迹;

(2)释放自己的信息素;

(3)所遗留的信息素数量会随时间而逐步减少。

由于自然界中的蚂蚁基本没有视觉,既不知向何处去寻找和获取食物,也不知发现食物后如何返回自己的巢穴,因此它们仅仅依赖于同类散发在周围环境中的信息素,来决定自己何去何从。

有趣的是,尽管没有任何先验知识,但蚂蚁们还是有能力找到从其巢穴到食物源的最佳路径,甚至在该路线放置障碍物之后,它们仍然能很快重新找到新的最佳路线。

这里,用一个形象化的图2.01来说明蚂蚁群体的路径搜索原理和机制。

图2.01蚂蚁从蚁穴移至食物源

假定障碍物的周围有两条道路可从蚂蚁的巢穴到达食物源:

Nest-ABD-Food和Nest-ACD-Food,分别具有长度4和6。

蚂蚁在单位时间内可移动一个单位长度的距离。

开始时所有道路上都未留有任何信息素。

在t=0时刻,20只蚂蚁从巢穴出发移动到A。

它们以相同概率选择左侧或右侧道路,因此平均有10只蚂蚁走左侧,10只走右侧。

在t=4时刻,第一组到达食物源的蚂蚁将折回。

在t=5时刻,两组蚂蚁将在D点相遇。

此时BD上的信息素数量与CD上的相同,因为各有10只蚂蚁选择了相应的道路。

从而有5只返回的蚂蚁将选择BD而另5只将选择CD。

在t=8时刻,前5个蚂蚁将返回巢穴,而AC,CD和BD上各有5个蚂蚁。

在t=9时刻,前5个蚂蚁又回到A并且再次面对往左还是往右的选择。

这时,AB上的轨迹数是20而AC上是15,因此将有较多数的蚂蚁选择往左,从而增强了该路线的信息素。

随着该过程的继续,两条道路上信息素数量的差距将越来越大,直至绝大多数蚂蚁都选择了最短的路线。

正是由于一条道路要比另一条道路短,因此,在相同的时间区间内,短的路线会有更多的机会被选择。

蚂蚁有能力在没有任何提示下找到从其巢穴到食物源的最短路径,并且能随环境的变化而变化,适应性的搜索新的路径,产生新的选择。

其根本原因是蚂蚁在寻找食物源时,能在其走过的路上释放信息素,随着时间的推移该物质会逐渐挥发,后来的蚂蚁选择该路径的概率与当时这条路径上该物质的强度成正比,当一定路径上通过的蚂蚁越来越多时,其留下的信息素轨迹也越来越多,后来蚂蚁选择该路径的概率也越高,从而更增加了该路径的信息素强度。

而强度大的信息素会吸引更多的蚂蚁,从而形成一种正反馈机制。

通过这种正反馈机制,蚂蚁最终可以发现最短路径。

特别地,当蚂蚁巢穴与食物源之间出现障碍物时,蚂蚁不仅可以绕过障碍物,而且通过蚁群信息素轨迹在不同路径上的变化,经过一段时间的正反馈,最终收敛到最短路径上。

3基本蚁群算法的过程

基本的蚁群算法可以应用于基于图表示的组合优化问题中(如TSP),其简单表述如下:

在起始时刻进行初始化,将

个蚂蚁随机放在

个城市上,城市间的每一条边都有一个初始外激素强度值

每个蚂蚁

的禁忌表

的第一个元素为其初始城市。

然后每个蚂蚁从城市

到城市

,依据概率函数

(1)

 

选择将要移动的城市,这个概率取决于城市间的距离和信息素的强度。

其中

表示边

上信息素的强度;

表示城市间距离因子,通常取为距离的倒数;集合

,α和β都是控制信息素与可见度的相对重要性的参数。

可见转移概率是可见度和t时刻信息素强度的权衡。

在n次循环后,所有蚂蚁的禁忌表都填满后,计算每个蚂蚁走过的路径的长度,并找到最短路径保存,记录此路径并更改该路径上的信息素。

信息素更新的公式是:

(2)

(3)

其中

表示在某条边上的累加新增信息素的和,ρ表示信息素消散的等级,

表示在时刻t和t+n之间第k个蚂蚁在边(i,j)留下的信息素的数量。

如果在时刻t和t+n之间第k个蚂蚁经过边(i,j),则

(4)

其中Q为常量,

为第k个蚂蚁周游的路径长度。

这一过程重复直至达到最大迭代次数

结束,或者所有蚂蚁都走同一路线。

后一种情况被称为停滞状态。

如果算法在NC次循环后终止,蚂蚁算法的复杂度为

4改进的蚁群算法

4.1最大最小蚂蚁系统

MMAS(MaxMinAntSystem)[5]是到目前为止解决TSP、QAP等问题最好的ACO类算法。

其特点在于:

只对最佳路径增加外激素的浓度,从而更好地利用了历史信息;为了避免算法过早收敛于局部最优解,将各条路径可能的外激素浓度限制于[

],超出这个范围的值被强制设为

或者

,可以有效地避免某条路径上的信息量远大于其余路径,使得所有的蚂蚁都集中到同一条路径上,从而使算法不再扩散;将各条路径上外激素的起始浓度设为

,这样便可以更加充分地进行寻优。

4.2相遇算法

相遇算法(MeetMaxMinAntSystem,MMMAS)[17]的基本思路是将一只蚂蚁的一次周游分由两只蚂蚁分头进行,在路径中间相遇合成一次周游路径。

此外,由于在一次循环中,蚂蚁进行多次周游,最短的一次周游影响路径信息素,因此,在一次周游中,选择一个城市后,即计算当前路径长度,如果长度超过本次循环已得到的最小值即终止此次周游,这样可以进一步缩短计算时间。

其步骤如下:

(1)初始化参数:

(2)NC++

(3)一组蚂蚁开始执行相遇算法,循环变量k++

(i)

两只蚂蚁选择同一起点城市,建立禁忌表

(ii)其中一只蚂蚁以式

(1)计算的转移概率选择一个城市

(iii)另一只蚂蚁也以式

(1)计算的转移概率选择一个城市

(iv)判断当前路径长度,如果大于本次相遇算法m组蚂蚁已找到的最短路径则终止此次两只蚂蚁周游,continue

(v)判断禁忌表,如果未满,转至(ii)

(vi)2-opt局部优化路径(可选)

(4)如果k

(5)计算本次m组蚂蚁相遇循环的最短路径,置空禁忌表

(6)用式

(2)~(4)更新路径信息素(最短路径增加,其他衰减)

(7)如果NC小于

且未进入停滞状态,转至

(2)

(8)输出最优解,算法停止.

从算法描述可以看出,一次周游的两只蚂蚁共用一个禁忌表,这样保证两只蚂蚁不会选择重复的城市。

5蚁群算法的收敛速度分析

应用研究的发展促进了学者们对蚁群算法理论的研究,主要内容在于算法数学模型、收敛性和收敛速度的分析.Gutjah针对一种特殊的蚁群算法(graph-basedantsystem)建立了概率转换模型,并分析了该算法收敛的条件[18~20].受此结果的启发Sttzle和Dorigo[21]进一步给出了保证蚁群算法收敛的一般性条件:

最优解路径对应信息素的下确界应大于0,以确保算法至少有一次找到全局最优解这个结论对于绝大多数蚁群算法的分析都是合适的,不过结论的证明类似于对非启发式随机搜索算法的分析,对算法性能评价以及设计方面的指导意义不明显.Dorigo等又将蚁群算法的收敛性分为两种类型[22,23]:

(1)值收敛(convergenceinvalue),即当迭代时间趋于无穷时,蚁群算法至少一次达到最优解;

(2)解收敛(convergenceinsolution),即当迭代时间趋于无穷时,蚁群算法找到最优解的概率趋于1.两种收敛性的证明[22]都类似于文献[21]的分析,结论充实了蚁群算法的收敛性理论.

上面主要是基于概率模型的收敛性分析,国内外学者还从随机过程的角度研究了蚁群算法的收敛性.Badr和Fahmy[24]利用随机游走模型(randomranching)分析了一种特殊蚁群算法的收敛性.但是由于约束条件较多,其结论难以进行推广.国内Ke和Yang等[25,26]则是利用有限Markov链模型(Markovchain)作为研究ACO收敛性的工具;但是,分析结论只能适用于信息素矩阵状态有限的特殊蚁群算法.黄翰等建立了吸收态Markov过程数学模型,与以往蚁群算法的Markov链模型相比,有着更加广泛的适用性。

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

6.1双序列比对

6.1.1双序列比对问题描述

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

Needlernan和Wunsch提出的比对方法属于动态规划范畴[27]。

对于一个序列S,|S|是S中字符的个数,S[i]表示序列的第i个字符.S[1..i]表示序列的前i个字符组成的子序列。

S中的字符有某个有限字符集合

确定(如DNA由4种核糖核酸A、T、C、G确定)。

基因序列在突变中的变化包括替代、插入和删除,我们用“-”来表示插入和删除所产生的空位。

对于

,定义

为打分函数,表示x,y比较时的得分,设匹配得分为2,失配为-1,空位罚分为-2,则有:

(1)

序列S和T的一个比对A用序列

(插入空位后的序列S和T)中字符一一对应表示,有

序列比对A的得分为:

(2)

序列比对的主要目标是如何寻找出序列间的最大相似度的比对。

那么如何找到两个序列S和T的全局最优比对呢?

一方面依赖于选择什么样的目标函数,另一方面要依靠算法的执行。

目标函数是用来对比对结果进行衡量的一个打分机制。

在序列比对的过程中,需要引入空位,空位的引入是为了补偿那些插入或缺失,使序列的比对能更紧密地符合某种所期望的模型,但是在序列的比对中引入的空位不能不加限制,否则比对结果即使较高,也缺乏生物学依据。

因此,必须有一种机制,对空位的引入加以限制。

常用的方法就是空位罚分,即每插入一个空位,就在总分值中减去一定分值(叫罚分值),即加上一负分值。

因此,序列比对最终结果的得分值是两个序列之间匹配残基的总分值与空位罚分的总和[28]。

6.1.2蚁群双序列比对算法的设计

对序列S=CAGGA和T=CGGTTA,仿照动态规划法那样阵建立矩阵(如图1)。

蚂蚁从矩阵左上角出发选择一条路线到达右下角,就形成一个比对,我们规定在水平或垂直方向上移动一格,表示在相应的序列中插入一个空位,沿对角线移动一格表示到达的新位置对应字符的匹配。

图1中的路线表示了如下比对结果:

序列S’:

CAGG一一A

序列T’:

C—GGTTA

 

C

G

G

T

T

A

C

A

G

G

A

图1单个蚂蚁的行走路线

与TSP问题不同,蚂蚁在每个位置选择移动方向的数目是固定的,总是向右,向下,沿对角线向右下三个方向,序列比对对加入的空位数量也有一定要求。

所以蚁群比对算法的设计与TSP问题有所不同。

用表示t时刻蚂蚁在(i,j)位置上沿着k方向的路径上的信息素浓度,k=1,2,3分别表示水平向右、垂直向下和沿对角线三个方向。

蚂蚁路径选择时的转移概率计算:

蚂蚁从矩阵左上角出发,每走一步都要根据当前位置可选择的各条路径上的信息素浓度以及启发信息决定下一个移动的方向。

这里的启发信息包括表示字符匹配程度的矩阵D及方向权值d。

(3)

蚂蚁在路径选择时采用的策略是:

首先设定

,然后产生一个随机数,当这个随机数小于

时,选择对角线方向移动;当这个随机数大于

时,计算三个方向的概率,然后用轮盘赌法在三个方向中选择一个移动。

当所有的蚂蚁通过不同的路线到达矩阵右下角,得到一组比对结果,就完成了寻找最优路线的一次循环。

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

信息素的更新公式如下:

(4)

(5)

其中canshu为信息素增量转化参数,它用来将比对得分小于0的分数转化成正数增量,Q为信息素增加强度系数。

6.1.3改进的蚁群双序列比对算法

蚁群算法通过正反馈机制来强化较好的解,但容易出现停滞,陷入局部最优解[29]。

针对这个问题,提出自适应调整信息素的方法,根据解的搜索情况,动态地调整信息素的分配。

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

进化初期为了增大搜索空问,Q(t)取较小的值,随着算法的推进取值逐步增大,强化较好的解。

在算法的仿真中,我们采用Q1=0.0001,Q2=0.0005,Q3=0.001以及T1=30,T2=60。

(6)

在陷入局部最优解时,某条路径上的信息素在数量上占绝对优势,因此我们对信息素的最大值和最小值进行了限制,如规定

限制最大值可以防止某条路线的信息素浓度过大,限制最小值可以防止搜索后期没走过的路径信息素浓度过低,使较差的路线被强化。

为了鼓励解质量的改善,又不减小搜索空间,在进化一定代数以后,采用式(7)根据解的情况动态地调整信息素的分配。

若路线

上取得的解(即比对得分)为Score,较目前得到的最优解

有所改善,则增大路线

上的信息素增量的分配,并更新

的值,若低于最优解,则减小信息素增量的分配。

(7)

如果最优解在几代内没有改善,则可以适当减小要添加的信息素,以求摆脱局部最优解。

6.2多序列比对

6.2.1多序列比对问题描述

多重序列的某个比对[30]实际上就是多个序列之间的一种排列方式。

图2是六个蛋白质序列片段的多重比对的例子。

我们用字符“-”表示插入的空位。

-GRRRSVOWCAVSNPEATKCFOWORNMRKVR---GPPVSCLKRDSPIOCIOAI

----KTVRWCAVNDHEASKCANFRDSMKKVLPEDGPRIICVKKASYLDCIKAI

------VKWCVKSEOELRKCHDLAAKVAE--------FSCVRKDGSFECIOAI

--KEKOVRWCVKSNSELKKCKDLVDTCKNK----EIKLSCVEKSNTDECSTAI

-----EVRWCATSDPEOHKCGNMSEAFREAGI--OPSLLCVRGTSADHCVOLI

APPKTTVRWCTISSAEEKKCNSLKDHMOOER----VTLSCVOKATYLDCIKAI

图2多重序列比对

对于一个比对,可以用SP模型对它打分以评价比对的好坏。

我们假设得分函数具有加和性,即多重比对的得分是各列得分总和那么,我们首先考虑如何给比对的每一列打分。

对于一列字符打分可用SP函数,SP函数定义为一列中所有字符对得分之和:

(8)

其中,

表示该列中的第

个字符,

表示字符

和字符

比较所得分值。

将各列的分值加起来就成为比对的总得分。

我们进行序列多重比对的目标是要在许多比对方案中,寻找得分最高的比对和在此比对的分值,以其代表序列之间的相似性。

6.2.2蚁群多序列比对算法的设计

设有N个序列,其中第i个序列长度为

,我们将序列中的字符看作是蚂蚁所要走过路径上的节点。

算法首先对序列1分配一个蚂蚁,令蚂蚁从序列1中的第一个字符出发,依次选择序列2,…,序列N中的某个字符(即节点)与之匹配。

选择的概率取决于字符的匹配程度、匹配的位置偏差以及路径上的信息素。

蚂蚁也能以一定的概率选择一个空位插入序列中的某个位置。

在完成第一个字符的匹配后,便得到一条路径。

这条路径所经过的各个序列中的字符便为与序列1第一个字符相匹配的字符。

蚂蚁接着从序列1中的第二个字符出发,再依次选择其他序列中的节点或空位与之匹配,如此处理序列1中的各个字符。

在蚂蚁选择路径时,不允许出现线段交叉的情况,因为这意味着不可能的比对。

当蚂蚁走完时,便得到

条路径所对应的一个比对。

其他蚂蚁也以同样的方式选择各自的路径集合。

为了使解具有多样性,这些蚂蚁的处理过程不一定都从序列1开始,我们均匀地分布各个蚂蚁的开始序列。

从第i条序列开始的蚂蚁,从序列i中的字符出发,依次选择序列i+1,i+2,…,N,1,2,…,i-1中的某字符(即节点)与之匹配。

通过蚂蚁求出的每个路径集合,我们可找出对应的一个比对,路径中的节点便是蚂蚁所选择的相匹配的字符。

对于不在路径上的字符,我们可以用其他方法简单地求出它们在比对中的位置,如靠左对齐、右边加空位,以得到一个完整的比对。

在所有蚂蚁完成路径的集合后,算法根据打分机制求出各个比对的得分,根据分值的高低对路径上的信息素进行更新以增大分值高的路径上的信息素。

这样当下一个蚂蚁选择节点时,就以新的信息素作为选择的依据,从而构成信息学习的正反馈机制。

(1)概率选择公式

设在第k个序列的第l个字符选择第n个序列中的第m个字符的概率为:

(9)

其中,

是在第

个序列的第

个字符处选择第

个序列的第

个字符的信息素指标;

是第

个序列的第

个字符和第

个序列的第

个字符的匹配得分;

是第

个序列的

位置与第

个序列的第

个字符选择的第

个序列的字符位置的偏差;

分别为信息素、匹配程度、位置偏差三个指标相应的重要性参数;

)是从第

个序列的第

个字符出发选择第

个序列中的字符时起始的字符位置;

是允许最大的字符选择的范围参数。

这样的概率公式可以使得信息素较高、匹配程度较好且相对位置偏离较小的字符被选中的概率较大。

(2)蚂蚁字符选择方法

在第

个序列的第

个字符

选择第

个序列中某个字符时,首先对允许范围内的所有字符计算选择概率,得到使得选择概率最大的字符

,如果

,则选择该字符;否则以一定的概率选择空位,以剩余的概率选择字符

(3)信息素的全局更新

设定信息素全局更新的蒸发系数为evap1,每当一个蚂蚁走完得到一个比对时,对蚂蚁所经过的所有节点上的信息素按式(10)进行更新。

(10)

(4)信息素的调节

在经历了一定代数以后,由于信息素的渐渐集中,算法会陷入局部最优。

为了解决这个问题,我们采取了以

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2