用免疫算法求TSP问题
基于免疫算法的TSP问题求解
1 一般免疫算法的基本框架及实现 、 在生 物免疫 系统 中 , 免疫 应答是一个 不断识别 、 清除 的循 环过程 ,
没有一 个终极 目 而会结束 免疫识别 。例如 , 我们人类所 生存 的周 标 在 围环境 中时时刻 刻会有异 物( 抗原 ) 害我们 的机体 , 侵 因而我们 的机体 免疫 系统需要不停 识别抗 原 、 结合抗 原 、 消灭异 物 , 保持 我们 机体 的平 衡 。根 据生物 免疫 系统 的免疫过程 的抽象 , 出了一般免疫 算法 的实 提
N
..一
-
1
D Ⅳ= >:( …) (ⅣP) dP, P +dP , 1
பைடு நூலகம்百
其中 d A, ) ( B 表示城市 A B间的距离 。根据问题的特点 , 、 我们可以 以最简单的整数字符 序列来定抗体基 因, 例如序列 {, , , 1 2 3 …N一1M , 表示从城市 1 出发 , 经过城 市2 城市 3 、 等等 , 最后到达城市 N 再 回到出 , 发点城市 1 。 4 用改进 的免疫算法解决 T 、 SP问题 的实验结果 我们选择 国际上通用 的 T P问题 的测 试库 中的 B y 9 c y在该 S as 一i , 2 t 图 1一般免疫算法流程 图 如果把实 际求解 问题 的 目标 函数视为外来 人侵 的抗 原 , 免疫 响应 中产生 的抗 体视为 问题的解 , 则不 同亲和度 抗体 的进 化与成熟机 制就 是 寻找 目标 函数最优 解 的过程 。抗 体 与抗原之 间 的匹配度 称为 亲和 度, 在此 , 亲和度定义为抗体( 所对应 的函数值 。 解) 算法 的主要步骤如下 : 步骤 1抗原 产生 : 最优化问题的 目标 函数和约束条件 的描述 。 步骤 2初始抗 体产生 : 把抗体定 义为 目标 函数在 约束条件 下的可 行 解。 步骤 3亲和力计算 : 计算解群 中每一个解 的亲 和力或者适应度 , 并 为后面的记 }细胞的产生提供依据 。 乙 步骤 4产生记忆细胞 : 按亲 和度 的高低进 行排 序 , 从中选择亲和度 较高的个体构成新的群体, 取前几个抗体构成记忆库 。 步骤 5抗体的促进和抑制 : 计算抗体 的浓度 , 合前面的抗体适 并结 应 度来 确定抗体的死亡和分裂的概率 。 步骤6 群体更新 : 利用交叉和变异算子对抗体进行进化更新 。 步骤 7终止条件 判断 : 判断是否满足终 止条件( 到最优 解或达到 找 例子 中一共 有 2 个城市 , 中提供 的最优 路径的行走距 离为 9 9 . , 9 库 2 1 5 3 具体行走路径如图 2 所示 :
蚂蚁算法与免疫算法结合求解TSP问题
蚂蚁算法与免疫算法结合求解 T P问题 S
陈 旭, 宋爱 国
( 东南大学仪 器科 学与工程系 , 京 20 9) 南 106
摘 要: 针对传统蚂蚁算法存在的 加速收 敛与早熟、 停滞现象之间的矛盾。 通过接种疫苗和免疫选择两个步骤完成免疫过
程 , 与蚂蚁算法相结合 , 计出新颖的免疫蚂蚁算法 , 并 设 并将其应用于求解复 杂的 T P问题 数值模拟表 明, S 该算法可 以有效
地克服基本蚁群算 法容易出现停滞现象的缺陷 , 有更好的全局搜索能力 和稳定性 。 具
关键 词 : 蚂蚁算法; 免疫算法; 旅行商问题
中图分类号 :P 8 T I
文献标识码 : A
文章编号 :04l9 (O6 O_S 4 4 10 一 9 20 )20O — 6 0
蚂蚁算法是近年来出现的一种新型的模拟进化
c ln p i z t n ag rt m no d rt k aa c e we n a c lr tn o v r e c n v rig p e o o y o t a i lo ih i r e o ma e b ln eb t e c eea i gc n e g n ea da e tn r— mi o
c ct swel tg a in o iy a l sa n to .Th i ua in r s lso e e a Pswih dfe e tsz ss o h tt eag — esm lto e ut n s v r l TS t i r n ie h wst a h lo f
宋爱 国(9 8) 男 , 16 一 , 教授 , 博士生导师 , 检测 技术及仪器方向 。
维普资讯
Ab ta t A sr c : i u eo e ao Sr aie y v ci ai n a d i u es lcin,w hc Sc mb n d wih a t mm n p r t ri e l d b a cn t n mm n ee to z o ih i o ie t n
免疫模拟退火算法求解TSP
文 章 编 号 1 0 — 3 1 2 0 ) 8 0 3 — 2 文 献 标识 码 A 0 2 8 3 (0 6 2 — 0 8 0
I mm u e S m u a e n ai g Al o ih n i l t d An e l g rt m o P n f r TS
po oe o te a i f i ltd n el g lg r h rp s d n h b ss s o muae a n ai a o t m a d mmu e lo tm.y et g h d t o C n i n i n ag r h B tsi te aa f HN 4 n i n 1 a d 4
Ab t a t a r c :T e p p r i t d c s s me t e r s o mmu o o yA e i h a e nr u e o h o e f i o i n l g . n w mmu e smu ae n e l g ag r h fr T P i n i lt d a n a i lo i m o S s n t
P 0 2, e e p re c s s o h t t e ag rtm a o d p r r n e R1 0 t x e n e h w t a h lo h h s a g o e f ma c . h i i o Ke wo d y r s: t v l g ae ma p o lm ,i lt d n e l g l o t m , r ei s ls n r b e s a n mu ae a n a i a g r h i n i mmu e ag r h ,mmu e i ltd n e l g n lo t m i i n smu ae a n a i n ag r h lo tm i
一种求解TSP问题的改进人工免疫算法
体的蛋 白质多肽链结构并将优势肽植入新生抗体 ,
基酸分子组成的肽称二肽 , 由三个氨基酸分子组成 的肽称三肽 , 由三个 以上 氨基酸分子组成的肽称 多
模拟 了免疫系统的浓度调节机制 , 并定义 了一种新
的抗体相似性判 断方 法。改进后 的人工免疫算 法
肽, 抗体和其他 蛋 白质一样 , 由许 多氨基酸分子 是 借肽键连接起来 的多肽链结 构体。当有抗原入侵 机体时 , 抗原会刺激那些 与之匹配较好 的抗体进行 克隆繁殖 , 克隆体通过变异从而产生与抗原匹配更 好 的抗 体。匹配得 越好 , 克隆得越 多。同时, 免疫 调节机制会控制抗 体 的克隆数量 。当系统 内某种 抗体的浓度过 高时 , 它会 受到抑止 。 而减少克隆 从
既具有理论价值 又有广 泛的工 程应用价值 的组 合 法 , 越来越受到人们 的关注。免疫算法通过模拟 自
优化 问题 。因此 , 人们不 断地寻找能够有效地解决 T P的各种方法…。除了局部搜索法、 S 贪婪算法、 动
态规划等传统方法外 , 各种智能优化 算法 , 如神经 搜索 、 优化 、 机器学习等领域 J 。 网络算法、 拟退 火算 法、 模 禁忌搜 索算 法、 遗传 算 在自 然免疫 系统 中存在着 大量 的抗 体用于保
解问题的 目标 函数 、 候选解 、 候选解 对 目标 函数的
生抗体补充进入 A s b 替换 亲和力最低 的抗体 。新细
胞的数量是 A s b 规模 Ⅳ的 5 %一l%。 0
维普资讯
1 期
黎 湖广 , : 等 一种 求解 T P问题的改进人工免疫算法 S
6 1
规模。另外 , 免疫系统会不 断产生新 的抗体补充进
Sp : t 通过变异算子对克 隆抗 体群体 A s 进 e6 b
用免疫算法求解TSP问题
用免疫算法求解TSP问题1.免疫算法的生物学基础免疫系统是哺乳动物抵御外来有害物质侵害的防御系统,动物一生始终处于复杂多变的、充满伤害的自然环境中,能够平安无事、进行正常的生命活动,免疫系统在其中起着重要的作用。
免疫是生物体的特异性生理反应, 由具有免疫功能的器官、组织、细胞、免疫效应分子及基因等组成。
免疫系统通过分布在全身的不同种类的淋巴细胞识别和清除侵入生物体的抗原性异物。
当生物系统受到外界病毒侵害时, 便激活自身的免疫系统,其目标是尽可能保证整个生物系统的基本生理功能得到正常运转。
免疫功能主要是通过分布全身的免疫细胞来实现的,免疫细胞主要有巨噬细胞、抗体及淋巴细胞等。
其中淋巴细胞主要有B细胞和T细胞两种类型,它们是免疫反应中的主要作用细胞根据Burnet的细胞克隆选择学说和Jerne免疫网络学说:生物体内先天具有针对不同抗原特性的多样性B细胞克隆,抗原侵入机体后,在T细胞的识别和控制下,选择并刺激相应的B细胞系,使之活化、增殖并产生特异性抗体结合抗原:同时,抗原与抗体、抗体与抗体之间刺激和抑制关系形成的网络调节结构维持着免疫平衡。
图I所示为免疫系统的反应过程的一种抽象描述。
当人工免疫系统受到外界攻击时, 内在的免疫机制被激活, 其目标是保证整个智能信息系统的基本信息处理功能正常运作。
免疫系统以其有限的资源,能够有效地应付数量庞大得几近无限的不同种类的病毒的侵害,这一特性无疑引起了人们特别的关注。
在学科交叉性越来越大的今天,人们在从医学的角度,分析和研究这一特性的同时,也希望能以此作为启发,设计出新的具有突破性的应用方法,以解决某些应用领域中目前难以解决的难题,免疫算法正是这一思路的产物,是受生物免疫系统的启示而设计出来的一种具有对多峰值函数进行多峰值搜索及全局寻优能力的新型算法。
2.免疫算法的提出在生命科学领域中,人们已经对遗传(Heredity)与免疫(Immunity)等自然现象进行了广泛深入的研究。
基于免疫算法的TSP问题求解
1.1 研究背景与意义
在目前的智能算法研究中, 遗传算法和人工神经网络被认为是受启发于生物信息 处理系统处理机制的两个非常成功的算法架构,因此对它们的研究也比较系统和深 入。而基于生物免疫学理论的人工免疫系统的提出则相对较晚,对它的研究也刚刚开 始。但因为生物免疫系统是一个高度发展和成熟的信息处理系统,因此它所隐含的一 些信息处理机制也是前面两者所无法替代和超越的。 遗传算法的核心机制是生物进化 论中的“优胜劣汰”的选择机制,在宏观上表现为生物能更好地适应周围的环境。而基 于人工免疫系统构建的免疫算法在宏观上不但具有识别和适应环境的能力, 而且在微 观上拥有更丰富的复杂处理机制,具有学习、记忆等更多的特性。当然在现阶段要构 建这样一个包含所有的免疫机制的免疫算法还不太可能,而系统的理论研究更是困 难。 但是深入研究其中某些机制还是有一定的迫切性和现实意义, 主要包括两个方面: 一、为以后的系统理论打下基础;二、在实际工程中也有具体的应用价值。
III
基于免疫算法的 TSP 问题求解
第一章
绪论
第一章
绪论
随着信息科学的不断发展, 用一些传统的方法去解决复杂问题越来越显得力不从 心,因此人们需要去寻求更加合理有效的算法。人们在生命科学领域中,已经对遗 传与免疫等自然现象进行了广泛深入的研究。 很多先驱在对这些研究成果进行分 析与理解的基础上,借鉴其相关内容和知识,并由此形成算法,将其成功应用 于工程科学的某些领域,收到了良好的效果。可见,生命科学与工程数学的相互 交叉、 相互渗透和相互促进是近代科学技术发展的一个显著特点, 而遗传算法(Genetic Algorithm)、 免疫算法(Immune Algorithm)、 人工神经网络(Artificial Neural Network) 和 人工免疫系统(Artificial Immune System)的蓬勃发展正体现了科学发展的这一特征和 趋势,因而具有深远的研究意义和广泛的应用前景。
用一种免疫遗传算法求解MST、TSP问题
北京工业大学硕士学位论文用一种免疫遗传算法求解MST、TSP问题姓名:***申请学位级别:硕士专业:运筹学与控制论指导教师:***20040501摘要遗传算法是借鉴生物的自然选择和遗传化机制而开发出的一种全局优化自适应概率搜索算法,它更表现出比其他传统优化方法更加独特和优越的性能,隐含并行性和全局搜索特点是遗传算法的两大显著特征,因此关于遗传算法的研究越来越受到重视。
考虑到遗传算法中选择和交叉算子对群体多样性的影响,本文进一步明确遗传算法存在易陷入早熟收敛和后期收敛速度慢的缺点。
正是由于考虑到选择和交叉算子对算法的多样性影响,改进选择算子和交叉算子是本文主要关注的两个问题。
人体免疫功能的特点对于改进和提高遗传算法的能力是十分有启迪性的.本文在选择算予改进上不仅考虑适应度概率来选择,并加入浓度概率来加以选择,这样既确保了适应度高的个体能传到下一代,同时也保持了群体的多样性。
同时考虑算子的可行性和效率,采用了矢量距浓度概率的计算;在交叉算子设计上,为了避免多样性由交叉而丢失,采用的交叉算子应尽量减少由交叉所得群体中相似个体的比例;同时采用了最优保持策略,有益于群体多样性的保持。
图论是数学中有广泛实际应用的一个分支,其中典型问题包括:MST、TSP问题。
本文以图论中MST、TSP问题为例,以改进的遗传算法来求解,取得较好的结果;关键词:遗传算法免疫多样性交叉AbstractGeneticAlgorithm(GA)isanadaptableprobabilitysearchalgorithmthatiscreatedthroughadaptationinNatureandroleofGenetics.Ithassuperiortootherconventionaloptimizationalgorithminspecializedquality.ImplicitparallelandglobalsearchingaretworemarkablecharacteristicsofGA.ThestudyofGAisgettingmoreandmoreattentive.BecausetheselectingandcrossoveroperationsinGAplayasignificantroleinGA,thispaperfurthershowsthatGAhastwodeficiencies:prematureconvergenceandslowconvergencespeedinlaterphrase.Sothispapertakesmoreattentiontoselectandcrossoveroperations.ImmunequalityhasagoodedificatoryeffectinimprovingGA.Inthispaperweconsiderthatchoosingoperationactsbybothadaptprobabilityandconcen订ationprobability,soitcanassurethatchromosomewithhigheradaptabilitycanbegoroundtothenextgeneration.Meanwhileitretainscolonydiversity.Inevaluatingchromosomeconcentration,anewconcentrationprobabilitymethodisused.Incrossoveroperation,inordertoavoiddiversitylosingbycrossoveLweshouldreducesimilarchromosomepercentagethrou曲employingspecialcrossoveroperatortothequestion.Classicindividualreservationisbeneficialtokeepcolonydiversity.Graphtheoryisabranchofmathematics,whichhasextensiveapplication.InGraphtheorytypicalproblemsincludeMSTandTSEThispaperusesimprovedGAtoseekanswerstothetwoquestions,gainingbetteranswers.KeyWords:GeneticAlgorithms;Immune;Diversity;Crossover.独创性声踢本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果.尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育饥构的学位或证书面使用过的材料.与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意.签名缓盔H&日期:兰竺芏!』:墨关于论文使用授权的说明本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文.(保密的论文在解密后应遵守此规定)签名:二垂继导师签名;j数日期b坤.占第1章绪论基本遗传算法是一种新兴的优化算法,它有其很多的优点,为许多领域带来了全新的概念和解决思路;但基本遗传算法也有其弊端和不足,这篇文章主要想改进一般遗传算法,考虑到遗传算法是一新的算法,首先我们从介绍遗传算法开始。
基于动态疫苗提取的免疫遗传算法求解TSP问题
在染 色体上一个或几个位 置固定 的基 因决定 的 换句
话 说 ,基 因 能够 影 响生 物 性 状 不 仅 取 决 于 基 因本 身 碱
1 I GAB
把 免疫 的 思想 融 入 到遗 传 算 法 当 中去 .不 仅 保 留 了 遗传 算 法本 身 的优 良特 性 .还 通 过 增 加 免 疫 算 子 来 抑 制其 迭代 过 程 中 出现 的退 化 现 象 .提 高 算 法 的 收敛
在 迭 代后 期容 易 出现 退 化 现 象 等
法的执行效率 在很大程度上 取决于免 疫疫苗 的选取 . 优 良的免 疫 疫 苗 是 免 疫 算 子 有 效 发 挥 作 用 的基 础 和 保
障。值得注 意的是选取疫苗 的优劣 , 生成抗体的好坏 ,
只会 严 重 影 响 到 免 疫 算 子 中 接 种 疫 苗 作 用 的发 挥 . 不 至 于 涉及 到算 法 的 收敛 性 因为 免 疫 算 法 的 收 敛 性 归 根 结 底 是 由免 疫算 子 中 的免 疫 选 择来 保 证 的 尽 管 免 疫 疫 苗 的 优 劣 并 不 影 响 免 疫 算 法 的 收 敛
在 迭 代 过 程 中 出现 的退 化 现 象 , 高算 法的 收 敛 速度 。 提
关键 词 :免 疫遗 传 算 法 ; 苗 ; 态疫 苗提 取 ; S 疫 动 TP
0 引 言
基于达尔文遗传理论的遗 传算法 已经被成功应 用
于各个 领域 , 其还存 在许多缺点 . 如收 敛速度慢 . 但 例
摘
要 :针 对 免 疫 系统 能 通过 注射 疫苗 来 达 到 快 速 识 别 抗 原 的 特 性 , 免 疫 遗 传 算 法进 行 改 进 。根 对
免疫遗传算法实例
免疫遗传算法实例
免疫遗传算法是一种借鉴生物免疫系统和遗传算法的优化算法。
它通过模拟免疫系统的识别、学习、记忆等机制来解决优化问题。
以下是一个简单的免疫遗传算法的实例,用于解决旅行商问题(TSP):
1. 初始化:
生成一个随机抗体种群,每个抗体代表一个可能的旅行路线。
设定免疫遗传算法的参数,如抗体种群大小、免疫选择比例、抗体克隆扩增的倍数、最大进化代数等。
2. 亲和度评价:
计算每个抗体的亲和度,亲和度表示该抗体(即旅行路线)的优劣。
在本例中,亲和度可以基于路线的总距离、旅行时间等因素进行计算。
3. 免疫处理:
免疫选择:选择亲和度靠前的部分抗体进行免疫处理,一般取前
NP/2,使其活化。
克隆:对活化的抗体进行克隆复制,产生更多的相似抗体。
变异:对克隆副本进行变异操作,保留被克隆抗体,主要针对亲和度。
克隆抑制:对变异结果进行筛选,保留亲和度高的变异结果。
4. 种群刷新:
随机生成部分新的抗体种群,与免疫处理的抗体合并,形成新一代抗体。
5. 重复步骤2-4直到达到最大进化代数或满足终止条件:
最大进化代数是为了避免算法陷入局部最优解,当达到最大进化代数时停止迭代。
6. 输出最优解:
最终剩下的高亲和度抗体即为最优解,即最优的旅行路线。
以上是一个简化的免疫遗传算法实例,实际应用中可能还需要考虑其他因素和步骤,如基于欧式距离或海明距离计算抗体之间的距离等。
此外,针对不同的问题和数据集,还需要调整算法参数和步骤以获得更好的优化效果。
基于免疫算法的TSP问题求解
基于免疫算法的TSP问题求解摘要:TSP问题(Traveling Salesman Problem )是一个典型的组合优化问题,有效地解决TSP问题在可计算理论上有着重要的理论价值,本文介绍了一种基于免疫算法的解决TSP问题的方法,体现了免疫算法在进化计算过程中的抗原学习、记忆机制、浓度调节机制以及多样性抗体保持策略等优良特性,这使得免疫算法有较强的收敛性和较好的求解结果。
关键词:TSP、免疫算法、记忆机制、抗体Solving The TSP Problem Based onImmune AlgorithmAbstract: The TSP (Traveling Salesman Problem) is a typical combinatorial optimization problem effectively solve the problem in computability theory TSP has important theoretical value, this paper presents a method to solve the TSP immune algorithm based on immune algorithm reflects antigen learning process of evolutionary computation, memory mechanism, the antibody concentration was adjusted to maintain the diversity of mechanisms and strategies of excellent features, which makes it immune algorithm has strong convergence and better solution results.Keywords:TSP,Immune Algorithm,Memory mechanism,Antibody1.引言近年来,越来越多的学者把生物免疫系统的一些行为引入到传统的仿生算法中,构造出的免疫算法可以大大提高传统仿生算法的效率。
面向TSP问题的免疫遗传算法研究
面向TSP问题的免疫遗传算法研究摘要:TSP问题作为NP 难题的典型代表,计算机算法理论研究的热点,各种针对该问题的算法层出不穷。
对近期出现的面向TSP问题的免疫遗传算法进行了介绍与总结,在分析了算法特点之后,提出了算法的改进方向,对TSP问题的研究进行了展望。
关键词:TSP问题;NP 难题;免疫遗传算法1 TSP问题的几类求解方法由于TSP是一个NP难题,国内外许多研究人员尝试用各种算法来求解TSP问题。
其中,遗传算法以其良好的鲁棒性、灵活性、通用性,以及特别适合于求解大规模组合优化问题等特点,得到了应用。
但由于算法本身还存在着一些缺陷,如易出现未成熟收敛,局部搜索能力差,进化过程中不能很好地利用系统信息,进化后期易出现振荡现象等,因此不能保证以最大概率收敛到全局最优解。
此外,近年来出现的免疫算法借鉴生物免疫机理,能充分利用最优个体及系统的信息,且能有效保持种群多样性,在优化过程中,吸取了已有优化算法的有益思想,将随机搜索和确定性的变化结合在一起,减小了随机因素对算法本身的影响,能较好地消除不成熟收敛及振荡现象。
因此在TSP问题的求解中得到广泛应用。
免疫遗传算法是基于生物免疫机制提出的一类改进的遗传算法。
生物免疫系统在免疫应答过程中, 部分抗体作为记忆细胞保存下来, 当同类抗原再次侵入时, 记忆细胞被激活并产生大量抗体, 使再次应答比初次应答更迅速,体现了免疫系统的记忆功能。
同时, 抗体与抗体之间也相互促进和抑制, 以维持抗体的多样性及免疫平衡, 体现了免疫系统的自我调节功能。
免疫遗传算法保留了遗传算法的强大的全局随机搜索能力,提高了算法的搜索进度和速度。
2 免疫遗传算法原理免疫遗传算法模拟生物抗体浓度自适应调节过程,将最优化解的目标函数对应为入侵生命体的抗原, 而解Xi的适应度f(Xi)对应为免疫系统产生的抗体,并根据抗体的浓度自适应的调节搜索方向和解群的分布,从而大大提高算法克服局部收敛的能力。
一种求解TSP问题的分层免疫算法
Ab ta t I r e o s leta eig s ls n po lm r fiin l sn rica mm u eag rt m , wo f o src no d rt ov rv l ae ma r be mo eef e tyu ig a t iili n c f n lo i h at -l r o
we e o e a e y b to f o r p r t d b o t m l ri u e o e a o s l c lo t z t n i o mm n p r t r :o a p i a i mi o mmu o o n n e co a ee t n a t d ie — n d mi a c , ln l lc i , n i y d v r s o o b s t mei r t n b s d o o u n o m a in e to y mu tp e s b p p lto s we e as p r t d b o o r g n t iy a l a i a e n l c s i f r t n r p , l l u - o u a in r lo o e a e y t p f o o o i l e ei c
mo e a e n mut l u - o ua in mm u ee ou ina l a irrhc Ilc l p i z t n i d l sd o li es b p p lt si b p o n v lt swel shea c ia o a t o o miai o mmu o o n n e n d mia c co a eeto lo ih ( ln lslcin ag rtm HL0I A)wa u owad Toq ik yo t i h lb l p i m , lpes b p p lt n CS sp tfr r . uc l bant ego a t o mu mut l u - o uai s i o
基于免疫-蚁群算法的TSP问题研究
中图分类 T 31 号: P0. 6
基 于免 疫. 蚁群 算 法 的 T P 问题研 究 S
叶 菁
( 福州大学数学与计 算机科学( 软件) 院,福州 3 00 ) 学 5 1 8
摘
要: 针对蚁群算法加速收敛和 早熟停滞现象 的矛盾 ,借鉴免疫系统 的自我调节机制来保持种群 的多样性 的能力 ,提出免疫一 蚁群算法。
a d t a 1i f r t n u d t g i l t n e p rme t lr s l n s mme rc a d a y n het i n o ma i p a i .S mu a i x e i n a e u t o y r o n o s ti n s mme rc TS h w h t h r s n e l o t m a c t P s o t a e p e e t d a g r h h smu h i t i
S u y o P Pr b e s d o m m u e An l n g rt m t d n TS o lm Ba e n I n - tCo o y Al o i h
YE Jng i
( l g f te t s n o ue ce c ( o wae, u h uUnv ri , u h u 3 0 0 , h n ) Col eo h mai dC mp tr i e S f r )F z o i es y F z o 5 1 8 C ia e Ma ca S n t t
州 一
r m
2
』
1 Байду номын сангаас
、; / 卜
用数学模型聚度来衡量多样化程 度, 在【,】 ( 01之间,所 ) 有路径 上蚂蚁 的分布相对 比较分散时 ,聚度就较小 ,微观多 样性 就强 ,在所有路径 上蚂蚁 的分布相对 比较集 中时 ,聚度 就较大 ,微观多样性就弱。例如 ,当蚂蚁在以城市 i 为起始 点的 r条路径上均匀分布时,即每条路上有 m r只蚂蚁时 , / d (等于 1 ) ;当蚂蚁集中 r 条路径 中的某一条上时 ,d ) ( 等于 O 。
免疫遗传算法的研究及其在TSP中的应用
免疫遗传算法的研究及其在TSP中的应用免疫遗传算法(Immune Genetic Algorithm, IGA)是一种将免疫系统的特点和遗传算法相结合的优化算法。
它依据免疫系统的免疫原理以及基于生物遗传学的基因操作,通过模拟人体免疫系统中的免疫记忆、免疫选择和免疫调控等机制,在求解优化问题中具有较强的全局能力和优化性能。
免疫遗传算法的研究主要集中在两个方面:对免疫机制的理论研究和在具体问题中的应用。
在理论研究方面,主要涉及到免疫系统中的免疫记忆、抗体选择、抗体调节和抗体突变等机制的建模与模拟,以及算法的收敛性和收敛速度等性能评估。
在应用方面,免疫遗传算法已经成功应用于诸如旅行商问题(Traveling Salesman Problem, TSP)、生产调度问题、组合优化问题等多个领域,取得了较好的效果。
其中,免疫遗传算法在旅行商问题中的应用是最为典型和广泛的。
旅行商问题是在给定一组城市和其之间的距离矩阵的情况下,求解最短路径经过每个城市一次的问题。
这是一个经典的组合优化问题,属于NP-hard问题,因此求解该问题的最优解具有很高的难度。
免疫遗传算法可以通过将免疫系统中的记忆细胞与抗体模拟为种群中的个体,通过抗体选择、免疫调节和抗体突变等操作来优化求解过程。
具体地,免疫遗传算法首先采用遗传算法的方式生成一个初始种群,然后通过评估每个个体的适应度值来选择和更新下一代个体。
在选择过程中,免疫遗传算法通过模拟抗体的选择机制,选择适应度高的个体作为“记忆细胞”,并以一定的概率引入免疫调节来保持种群的多样性。
随后,免疫遗传算法利用交叉和变异等遗传操作对选出的“记忆细胞”进行优化,生成新的个体。
通过多次迭代操作,免疫遗传算法能够逐步优化个体,寻找到更优的解。
免疫遗传算法在TSP中的应用通过大量的实验和比较研究已经证明了其有效性。
具体来说,免疫遗传算法在解决TSP问题时有以下特点:首先,免疫遗传算法通过模拟记忆和突变等免疫机制,能够有效地保持种群的多样性,避免早熟问题。
免疫遗传算法的研究及其在TSP中的应用
免疫遗传算法的研究及其在TSP中的应用刘旭旺,齐微辽宁工程技术大学理学院,辽宁阜新(123000)E-mail:liuxuwang007@,qiwei1119@摘要:本文针对遗传算法(GA)在优化计算中存在的某些缺陷,并影响着一些问题求解中的正确性和有效性的现实问题,将生物免疫算法与遗传算法相结合,提出了一种免疫遗传算法(IGA)。
这种方法在一定程度上避免了遗传算法易出现早熟、搜索效率低及不能很好的保持个体多样性等问题。
实验结果表明,免疫遗传算法可有效改善基本遗传算法未成熟收敛、收敛速度慢等缺陷,提高了全局搜索的效率及能力,在TSP求解中取得了满意的结果。
关键词:遗传算法,免疫遗传算法,优化,TSP1.引言传统的遗传算法虽然自成体系且使用广泛,但是依然有许多不足,例如对于局部空间的搜索问题不是很有效,个体的多样性减少的很快等,这些缺陷的存在限制了遗传算法的应用。
而近年来在生物学领域的研究发现免疫原理对改进和提高遗传算法的性能具有重要的启迪作用,免疫行为可以很好的保持多样性,防止早熟收敛。
但是目前对于免疫遗传算法还是不太完善,所以研究这个课题很有意义。
2.预备知识2.1 遗传算法遗传算法(以及普遍意义上的进化算法)出现在20世纪60年代早期,并在计算机科学的确定性和非确定性算法之间占据了一席之位。
本质上,遗传算法具有希望的确定性,意味着用户可以决定重复次数和结束条件。
由于遗传算法自身存在许多难以解决的问题(如早熟收敛、随机漫游、控制参数的选择等),而这些问题的存在,给遗传算法的实际应用带来了极大的不便。
因此,研究如何解决这些问题,提高优化效率,对于遗传算法的实际应用十分必要。
为此,需要从遗传算法的机理开始研究。
利用遗传算法解最优化问题,首先应对可行域中的点进行编码(一般采用二进制或者十进制编码),然后在可行域中随机挑选一些编码组成作为进化起点的第一代编码组,并计算每一个解的目标函数值,也就是编码的适应度。
基于动态疫苗提取的免疫遗传算法求解TSP问题
基于动态疫苗提取的免疫遗传算法求解TSP问题
靳宗信;刘寒冰;樊红娟
【期刊名称】《现代计算机(专业版)》
【年(卷),期】2010(000)004
【摘要】针对免疫系统能通过注射疫苗来达到快速识别抗原的特性,对免疫遗传算法进行改进.根据抗体的优劣来从中提取不同长度的疫苗,并在此基础上提出一种基于动态疫苗提取的免疫遗传算法(IGAB),将其用于TSP问题的求解中,实验结果表明,IGAB能够抑制遗传算法在迭代过程中出现的退化现象,提高算法的收敛速度.【总页数】3页(P20-22)
【作者】靳宗信;刘寒冰;樊红娟
【作者单位】黄河科技学院信息工程学院计算机系,郑州,450063;黄河科技学院信息工程学院计算机系,郑州,450063;河南省劳动干部学校电教中心,郑州,450011【正文语种】中文
【相关文献】
1.求解TSP问题免疫算法的动态疫苗策略 [J], 戚玉涛;刘芳;焦李成
2.基于最早开工时间疫苗的免疫遗传算法求解JSP [J], 周帅;黄宗南
3.基于遗传算法的动态TSP问题求解 [J], 王磊;牛晓云
4.基于移民策略求解动态TSP问题的遗传算法 [J], 付兴武;张剑光
5.基于Elitism策略的改进免疫遗传算法求解TSP问题 [J], 王曙霞;涂俊英;郑艳君因版权原因,仅展示原文概要,查看原文内容请购买。
求解大规模TSP问题的自适应归约免疫算法
求解大规模TSP问题的自适应归约免疫算法
戚玉涛;刘芳;焦李成
【期刊名称】《软件学报》
【年(卷),期】2008(19)6
【摘要】从理论上分析了影响多级算法性能的因素,并以此为依据构造了求解TSP 问题的自适应归约免疫算法.该算法借助归约集的进化使归约集规模自适应增长,归约边的预测精度不断提高,从而提高了算法在归约后找到全局最优解的概率.实验结果表明,该算法比其他算法获得了质量更高的解.
【总页数】9页(P1265-1273)
【作者】戚玉涛;刘芳;焦李成
【作者单位】西安电子科技大学,智能信息处理研究所,陕西,西安,710071;西安电子科技大学,智能信息处理研究所,陕西,西安,710071;西安电子科技大学,智能信息处理研究所,陕西,西安,710071
【正文语种】中文
【中图分类】TP301
【相关文献】
1.求解较大规模TSP问题的改进蚁群算法 [J], 方霞;曹洁;张平凤
2.基于并行人工免疫算法的大规模TSP问题求解 [J], 戚玉涛;焦李成;刘芳
3.求解TSP问题的多级归约算法 [J], 邹鹏;周智;陈国良;顾钧
4.求解大规模TSP问题的带导向信息素蚁群算法 [J], 顾竞豪;王晓丹;贾琪
5.基于聚类集成的蚁群算法求解大规模TSP问题 [J], 叶家琪; 符强; 贺亦甲; 叶浩
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用免疫算法求解TSP问题1.免疫算法的生物学基础免疫系统是哺乳动物抵御外来有害物质侵害的防御系统,动物一生始终处于复杂多变的、充满伤害的自然环境中,能够平安无事、进行正常的生命活动,免疫系统在其中起着重要的作用。
免疫是生物体的特异性生理反应, 由具有免疫功能的器官、组织、细胞、免疫效应分子及基因等组成。
免疫系统通过分布在全身的不同种类的淋巴细胞识别和清除侵入生物体的抗原性异物。
当生物系统受到外界病毒侵害时, 便激活自身的免疫系统,其目标是尽可能保证整个生物系统的基本生理功能得到正常运转。
免疫功能主要是通过分布全身的免疫细胞来实现的,免疫细胞主要有巨噬细胞、抗体及淋巴细胞等。
其中淋巴细胞主要有B细胞和T细胞两种类型,它们是免疫反应中的主要作用细胞根据Burnet的细胞克隆选择学说和Jerne免疫网络学说:生物体内先天具有针对不同抗原特性的多样性B细胞克隆,抗原侵入机体后,在T细胞的识别和控制下,选择并刺激相应的B细胞系,使之活化、增殖并产生特异性抗体结合抗原:同时,抗原与抗体、抗体与抗体之间刺激和抑制关系形成的网络调节结构维持着免疫平衡。
图I所示为免疫系统的反应过程的一种抽象描述。
当人工免疫系统受到外界攻击时, 内在的免疫机制被激活, 其目标是保证整个智能信息系统的基本信息处理功能正常运作。
免疫系统以其有限的资源,能够有效地应付数量庞大得几近无限的不同种类的病毒的侵害,这一特性无疑引起了人们特别的关注。
在学科交叉性越来越大的今天,人们在从医学的角度,分析和研究这一特性的同时,也希望能以此作为启发,设计出新的具有突破性的应用方法,以解决某些应用领域中目前难以解决的难题,免疫算法正是这一思路的产物,是受生物免疫系统的启示而设计出来的一种具有对多峰值函数进行多峰值搜索及全局寻优能力的新型算法。
2.免疫算法的提出在生命科学领域中,人们已经对遗传(Heredity)与免疫(Immunity)等自然现象进行了广泛深入的研究。
六十年代Bagley和Rosenberg等先驱在对这些研究成果进行分析与理解的基础上,借鉴其相关内容和知识,特别是遗传学方面的理论与概念,并将其成功应用于工程科学的某些领域,收到了良好的效果。
时至八十年代中期,美国Michigan大学的Hollan教授不仅对以前的学者们提出的遗传概念进行了总结与推广,而且给出了简明清晰的算法描述,并由此形成目前一般意义上的遗传算法(GeneticAlgorithm)GA。
由于遗传算法较以往传统的搜索算法具有使用方便、鲁棒性强、便于并行处理等特点,因而广泛应用于组合优化、结构设计、人工智能等领域。
另一方面,Farmer和Bersini等人也先后在不同时期、不同程度地涉及到了有关免疫的概念。
遗传算法是一种具有生成+检测(generate and test)的迭代过程的搜索算法。
从理论上分析,迭代过程中,在保留上一代最佳个体的前提下,遗传算法是全局收敛的。
然而,在对算法的实施过程中不难发现两个主要遗传算子都是在一定发生概率的条件下,随机地、没有指导地迭代搜索,因此它们在为群体中的个体提供了进化机会的同时,也无可避免地产生了退化的可能。
在某些情况下,这种退化现象还相当明显。
另外,每一个待求的实际问题都会有自身一些基本的、显而易见的特征信息或知识。
然而遗传算法的交叉和变异算子却相对固定,在求解问题时,可变的灵活程度较小。
这无疑对算法的通用性是有益的,但却忽视了问题的特征信息对求解问题时的辅助作用,特别是在求解一些复杂问题时,这种忽视所带来的损失往往就比较明显了。
实践也表明,仅仅使用遗传算法或者以其为代表的进化算法,在模仿人类智能处理事物的能力方面还远远不足,还必须更加深层次地挖掘与利用人类的智能资源。
从这一点讲,学习生物智能、开发、进而利用生物智能是进化算法乃至智能计算的一个永恒的话题。
所以,研究者力图将生命科学中的免疫概念引入到工程实践领域,借助其中的有关知识与理论并将其与已有的一些智能算法有机地结合起来,以建立新的进化理论与算法,来提高算法的整体性能。
基于这一思想,将免疫概念及其理论应用于遗传算法,在保留原算法优良特性的前提下,力图有选择、有目的地利用待求问题中的一些特征信息或知识来抑制其优化过程中出现的退化现象,这种算法称为免疫算法(ImmuneAlgorithm)IA。
下面将会给出算法的具体步骤,证明其全局收敛性,提出免疫疫苗的选择策略和免疫算子的构造方法,理论分析和对TSP问题的仿真结果表明免疫算法不仅是有效的而且也是可行的,并较好地解决了遗传算法中的退化问题。
3.免疫算法中涉及的术语简介抗原:在生命科学中,是指能够刺激和诱导机体的免疫系统使其产生免疫应答,并能与相应的免疫应答产物在体内或体外发生特异性反应的物质。
在我们的算法中,是指所有可能错误的基因,即非最佳个体的基因。
抗体:在生命科学中,是指免疫系统受抗原刺激后,免疫细胞转化为浆细胞并产生能与抗原发生特异性结合的免疫球蛋白,该免疫球蛋白即为抗体。
在本文中是指根据疫苗修正某个个体的基因所得到的新个体。
其中,根据疫苗修正某个个体基因的过程即为接种疫苗,其目的是消除抗原在新个体产生时所带来的负面影响。
免疫疫苗:根据进化环境或带球问题,所得到的对最佳个体基因的估计。
免疫算子:同生命科学中的免疫理论类似,免疫算子也分两种类型:全免疫和目标免疫,二者分别对应于生命科学中的非特异性免疫和特异性免疫。
其中,全免疫是指群体中每个个体在变异操作后,对其每一环节都进行一次免疫操作的免疫类型;目标免疫则指个体在进行变异操作后,经过一定判断,个体仅在作用点处发生免疫反应的一种类型。
前者主要应用于个体进化的初始阶段,而在进化过程中基本上不发生作用,否则将很有可能产生通常意义上所说的“同化现象”;后者一般而言将伴随群体进化的全部过程,也是免疫操作的一个常用算子。
免疫调节:在免疫反应过程中,大量的抗体的产生降低了抗原对免疫细胞的刺激,从而抑制抗体的分化和增殖,同时产生的抗体之间也存在着相互刺激和抑制的关系,这种抗原与抗体、抗体与抗体之间的相互制约关系使抗体免疫反应维持一定的强度,保证机体的免疫平衡。
免疫记忆:指免疫系统将能与抗原发生反应的抗体作为记忆细胞保存记忆下来,当同类抗原再次侵入时,相应的记忆细胞被激活而产生大量的抗体,缩短免疫反应时间。
抗原识别:通过表达在抗原表面的表位和抗体分子表面的对位的化学基进行相互匹配选择完成识别,这种匹配过程也是一个不断对抗原学习的过程,最终能选择产生最适当的抗体与抗原结合而排除抗原。
4.免疫算法的算法思想、具体步骤免疫算法主要包括如下几个关键步骤:(1) 产生初始群体:对初次应答,初始抗体随机产生;而对再次应答,则借助免疫机制的记忆功能,部分初始抗体由记忆单元获取。
由于记忆单元中抗体具有较高的适应度和较好的解群分布,因此可提高收敛速度。
(2) 根据先验知识抽取疫苗(3) 计算抗体适应度(4) 收敛判断若当前种群中包含了最佳个体或达到最大进化代数,则结束算法;否则进行以下步骤。
(5) 产生新抗体每一代新抗体主要通过两条途径产生:(a) 基于遗传操作生成新抗体:采用赌轮盘选择机制,当群体相似度小于阀值A 0时,多样性满足要求,则抗体被选中的概率正比于适应度;反之,按下述(b)的方式产生新抗体,交叉和变异操作均采用单点方式。
(b) 随机产生P 个新抗体:为保证抗体多样性,模仿免疫系统细胞的新陈代谢功能,随机产生P 个新抗体,使抗体总数为N+P ,再根据群体更新,产生规模为N 的下一代群体。
(6) 群体更新:对种群进行接种疫苗和免疫选择操作,得到新一代规模为N 的父代种群,返回步骤3免疫算法的流程图如下:根据流程图具体过程为:①随机产生初始父代种群A1;②根据先验知识抽取疫苗;③若当前群体中包含最佳个体,则算法停止运行并输出结果;否则继续;④对于目前的第k 代父本种群A k 进行交叉操作,得到种群B k ;⑤对B k 进行变异操作,得到种群Ck ;⑥对C k 进行接种疫苗操作,得到种群D k ;⑦对D k 进行免疫选择操作,得到新一代父本A k+1,转至③。
5.免疫算法的收敛性一代种群的规模为n 0,则所有种群的规模均为n 0,种群中的所有个体均为l 位的q 进制编码。
算法中的交叉操作选择一点或多点均可。
变异操作是对每个基因位以概率P M 相互独立地进行变异,变异后处于其它任一状态的概率均为1/q-1。
算法的状态转移情况可用如下的随机过程来表述:其中从A k 到D k 的状态转换构成了马尔可夫链,而A k+1的状态与前面各变量的状态均有关。
但是随机过程{A k |k=1,2,…,}显然仍是一个马尔可夫过程。
设X 为搜索空间,即所有个体的空间,将规模为n 0的群体认为是状态空间S=X n0中的一个点,其每个坐标分别是X 中的个体。
用|S|表示S 中状态的数量,用i s S ∈,i=1,2,…,|S|,表示s i 是S 中的某一状态,用i j s s ⊆表示s i ,s j 作为X 的子集时的包含关系。
用ik V 表示随机变量V 在第k 代时处于状态s i 。
设f 是X 上的适应度函数,令则可如下定义算法的收敛性。
定义1 如果对于任意的初始分布均有*lim {}1i k k s S P A →∞≠Φ=∑,则称算法收敛。
该定义表明:算法收敛是指当算法迭代到足够多的次数以后,群体中包含全局最佳个体的概率接近于1。
这种定义即为通常所说的概率1收敛。
定理 免疫算法是概率1收敛的。
定理的证明过程略。
不过,这里需要说明的一点是,如果把免疫算子从免疫算法中略去,可以证明该算法将不再保证收敛到全局最优值,或者说它是强不收敛的。
6.TSP 问题描述TSP 问题是优化搜索算法尝试求解的经典问题之一,属于NP 完全问题。
TSP 问题是旅行商问题的简称,即一个商人从某一城市出发,要遍历所有目标城市,其中每个城市必须而且只须访问一次。
TSP 问题是寻找一条最短的遍历n 个城市的路径,或者说搜索整数子集X={1,2,…,n}(X 的元素表示对n 个城市的编号)的一个排列{V 1,V 2,..…V n ),使1111(,)(,)n d i i n i T d v v d v v -+==+∑取最小值,式中的1(,)i i d v v +表示城市i v 到城市1i v +的距离。
由于它是诸多领域内出现的多种复杂问题的集中概括和简化形式,所以成为各种启发式的搜索、优化算法的间接比较标准。
该问题是一个典型的NP 问题,即随着规模的增加,可行解的数目将做指数级增长。
6.免疫算子的构造方法免疫算子包括全免疫和目标免疫两种。
对于TSP 问题,要找到适用于整个抗原(即全局问题求解)的疫苗极为困难,所以不妨采用目标免疫。