2018-4-8免疫算法(Immune IA)

article/2025/9/24 12:36:22

学习资料来源:

【图文】免疫算法_百度文库

https://wenku.baidu.com/view/39eb47ec551810a6f52486ee.html?sxts=1523143415445

《智能优化算法以及matlab实现》包子阳,余继周 编著

自己觉的好资源,但是看不懂

三种人工免疫算法综述_图文_百度文库

https://wenku.baidu.com/view/e84991b3f242336c1fb95e27.html

就是在阅读包子阳老师的那本书的时候会觉的自己动了,但是在看网上的就就的自己看的不是一个版本。很纠结啊。不过包老师的确实讲的很明了。

生物免疫系统是一个分布式、自组织和具有动态平衡能力的自适应复杂系统。它对外界入侵的抗原,可由分布全身的不同种类的淋巴细胞产生相应的抗体,其目标是尽可能保证整个生物系统的基本生理功能得到正常运转。具有较强模式分类能力,尤其对多模态问题的分析、处理和求解表现出较高的智能性和鲁棒性。

1、发展

(1)1958年澳大利亚学者Burnet率先提出了与免疫算法相关的理论-------克隆选择原理

(2)1973年Jerne提出免疫系统的模型,基于Burnet的理论,拆创了独特的网络理论,给出了免疫系统的数学框架,并采用微分方程建模来方阵淋巴细胞的动态变化

(3)1986年Farmal 等人基于免疫网络学说理论构造出的免疫系统动态模型,展示了免疫系统与其他人工智能方法嘉禾的可能性,开创了免疫系统研究的先河。

2.生物免疫系统中的基本的概念

(1)免疫系统


(2)抗原


(3)抗体


(4)T细胞和B细胞

B细胞受到抗原的刺激之后,可以产生大量的浆细胞,而浆细胞具有合成以及分泌抗体的功能(抗体直接与抗原PK)。但是B细胞自己并不能识别抗原,需要接触能够识别抗原的T细胞

(5)生物免疫系统机理

生物免疫系统是由免疫分子,免疫组织和免疫细胞组成的复杂的系统。这些组成免疫系统的组织或器官分布在人体各处,用来完成各种免疫防卫功能

(6)免疫识别

本质就是区分“自己”和“非己”,免疫识别是通过淋巴细胞上的抗原受体与抗原的结合实现的

(7)免疫学习

免疫识别的过程,同时也是学习的过程,学习的结果就是免疫细胞的个体个体亲和度提高,群体规模扩大,并且最优个体以免疫记忆的形式保存(也就是最优的额抗体??、)

(8)免疫记忆‘

当免疫系统初次的遇到抗原时候,淋巴细胞需要一定的时间进行调整去识别抗原,当识别结束后以最有抗体的形式保存对抗原的记忆信息。二挡免疫系统再次遇到相同或结构相似的抗原,在联想记忆的作用下,可以进行快速的应答

(9)克隆选择

免疫应答和免疫细胞的增值在一个特定的匹配阈值上发生。当淋巴细胞实现对抗元的识别,B细胞被集火并增值肤质产生克隆B细胞,随后克隆细胞经历变异过程,产生对抗原具有特异性的抗体

(10)个体多样性

免疫系统有100多种不同的蛋白质,但是外在待识别的模式种类有1000多种就需要抗体多样性的组合机制

(11)免疫调节


3.免疫系统的工作模型:


4.免疫系统以及免疫算法的比较

网上的:


包子阳书籍内容:


而根据包子阳书籍中的对应关系,算法主要的包括以下的几个模块:

(1)抗原识别与初始抗体产生。根据待优化问题的特点设计合适的抗体编码规则,并在此编码下利用问题的先验只剩产生初始抗体种群

(2)抗体评测:对抗体质量进行评价,评价的准则主要包括抗体的亲和度和抗体浓度,评价得出的优质抗体将进行免疫操作,劣质抗体被更新

(3)免疫操作。

免疫算子

(1)亲和度算子:

表征免疫细胞与抗原的结合程度(也就是可行解与待解决问题的结合的程度)。通常函数优化问题可以使用函数的值或者是函数值的倒数作为亲和度评价。aff(x)

----

(2)抗体浓度的评价算子

抗体浓度的是表征抗体种群的多样性好坏。抗体的浓度过高意味着种群中非常类似的个体大量存在,寻优就会集中与一个可行区间的一个区域,不利于全局寻优。

抗体浓度的定义:



抗体间亲和度(表征抗体之间的相似程度)的计算:

基于欧式矩离的抗体间亲和度的方法:

基于海明矩离的抗体-抗体亲和度计算方法


海明矩离:就是抗体A与抗体B的属性值相同的时候才为1,否则为0,然后进行累加的操作。总的来说就是描述其内部属性完全相同的个数的多少啊

(3)激励计算算子

抗体激励是对抗体质量的最终评测结果,需要综合考虑抗体亲和度和抗体浓度,通常亲和度大,浓度低的抗体会得到较大的激励度。



(4)免疫选择算子

免疫选择算子根据抗体的激励度确定选择那些抗体进入克隆选择操作。激励度高的抗体个体具有更好的质量,更有可能被选中进行克隆选择操作

克隆算子

变异算子

实数编码算大变异算子

克隆抑制算子

种群刷新算子

书本的内容:



5.算法的流程:

目前没有同一的免疫算法的流程以及框图,以下是对应以上各种的免疫算子的算法流程

(1)进行抗原识别,也就是理解优化的问题------抗原对应的就是待解决的问题.对问题进行分析,提出先验知识,构造合适的亲和度函数,并制约各种约束条件

(2)产生初始抗体群,通过编码将问题的可行解表示成解空间的抗体,在解空间中随机的产生一个初始的种群(其实说的解空间也就是x的取值,而我们最初的设置初始种群就是在解中找到几个起始的位置)

(3)对种群中每一个可行解进行亲和度评价

(4)判断是否满足终止条件,满足条件终止算法寻优过程,输出计算结果

(5)计算抗体浓度以及激励度

(6)进行免疫处理。

免疫选择:根据种群中抗体的亲和度和浓度计算结果选择优质抗体,使其活化

克隆:对活化的抗体进行克隆复制,得到若干副本

变异:对克隆得到的副本进行变异操作,使其发生亲和度突变

克隆抑制:对变异结果进行再选择,一直亲和度低,保留亲和度高的

(7)种群刷新

以随机生成的新抗体替代种群中激励度低的抗体,形成新一代抗体,转到步骤三

流程图:



自己的感想:

无论是哪种算法无非就是怎样的选择个体(或许是每一代的个体,或许是一个大的群体)也就是类似于采样了

采样之后就是怎样的去评价这个采样的结果的好坏

然后再循环的采样直到找到评价函数最好的那一个---而所谓的记忆应该就是有些函数在采样的时候会记录每一代中的最优的个体。有的时候真的想让自己什么都懂,总觉的自己是一个白痴,好吧,还是慢慢的踱步前行吧


http://chatgpt.dhexx.cn/article/BH3bWjBW.shtml

相关文章

免疫算法(二进制)算例(源码实现)

之前我们讲解了免疫算法以及离散的免疫算法。见链接: 万字长文了解免疫算法原理 及求解复杂约束问题(源码实现) 离散免疫算法求解旅行商问题(源码实现) 今天讲下二进制的免疫算法。 我爱学习,爱玉酱。 算例 假设一个数PD210&#…

免疫算法(Immune Algorithm)

概念 人工免疫算法(Immune Algorithm)是一种具有生成检测 (generate and test)的迭代过程的群智能搜索算法。从理论上分析,迭代过程中,在保留上一代最佳个体的前提下,遗传算法是全局收敛的。 对于遗传算法:在对算法的实施过程中…

人工免疫算法概述

一、免疫系统 什么是病毒? 病毒是一种简单的生活形式:包裹在保护壳中的一些基因。这些基因是制造新病毒的指令。 在细胞外,病毒无法繁殖。但是一旦病毒入侵了活细胞,它就会将该细胞变成病毒工厂。随着时间的流逝,成…

人工智能-免疫算法

这是一类智能的算法,没有什么固定的模式,就是一个算法思想,可以给我们一些有价值的指导,当我们想要做一些相关工作的时候,可以扩宽我们的视野,打开我们的脑洞,借鉴其中的原理。我不想多说里面的…

免疫算法Python实现

1.流程 免疫算法与遗传算法其实非常相似,但其独特的地方在于,免疫算法用激励度而非亲和度来衡量结果的好坏,而激励度又与抗体密度有关,这就使得密度大的抗体激励度反而小,让免疫算法有全局搜索的能力,不容易…

免疫算法详解

基本思想是将想要求解的各类优化问题的目标函数(约束条件)与抗原相对应,找到可以与抗原进行亲和反应的抗体,该抗体就是要求的最优解。 最核心要解决的就是 1.计算抗原和抗体的亲和度,亲和度越高,越可能是最…

人工免疫算法总结

人工免疫算法简介 免疫系统 免疫系统是哺乳动物抵御外来病毒侵害的防御系统,动物的生命过程中会遇到各种伤害可能,免疫系统为其正常的活动起着重要的作用。免疫系统的一大特点就是用有限的资源有效地应对了数量庞大且种类多变的病毒入侵。免疫算法基于…

免疫算法小结及算法实例(附Matlab代码)

文章目录 1、免疫算法流程2、关键参数说明3、MATLAB仿真实例3.1 免疫算法求一元函数的极值3.2 免疫算法求二元函数的极值3.3 免疫算法求解旅行商问题 4、免疫算法的特点 1、免疫算法流程 与遗传算法等其他智能优化算法类似,免疫算法的进化寻优过程也是通过算子来实…

免疫优化算法

免疫优化算法 免疫算法是模仿生物免疫机制,结合基因的进化机理,人工构造出的一种新型智能优化算法。 它具有一般免疫系统的特征,采用群体搜索策略,通过迭代计算,最终以较大的概率得到问题的最优解。 相比较于其他算法…

智能优化算法之免疫算法(IA)

这里写目录标题 1. 免疫算法思想起源2. 算法原理3. 免疫算法算子3.1 算法算子3.1.1 亲和度评价算子3.1.2 抗体浓度评价算子:3.1.3 激励度计算算子3.1.4 免疫选择算子3.1.5 克隆算子3.1.6 变异算子3.1.7 实数编码变异算子3.1.8 离散编码变异算子3.1.9 克隆抑制算子3.…

免疫算法(Immune Algorithm,IA)实例详解

免疫算法是将免疫概念及其理论应用于遗传算法,在保留原算法优良特性的前提下,利用抗体浓度评价算子和激励度计算算子来保持群体的多样性,克服了一般寻优过程中(特别是多峰值)不可避免的“早熟”问题。 1 算法概念 免…

一文搞懂什么是免疫算法Immune Algorithm【详细介绍】

本文参考了很多张军老师《计算智能》的第七章知识。 本文来源:https://blog.csdn.net/qq_44186838/article/details/109181453 免疫算法 1.1 算法简介 免疫算法(Immune Algorithm,IA):是指以在人工免疫系统的理论为基…

免疫算法(Immune Algorithm)详解

关于免疫算法(IA),其功能与遗传算法、模拟退火等算法实现的功能是相同的,都是用来求最优解。例如求函数最值、旅行商问题等。从本质上说,免疫算法更像是遗传算法的一种延申。IA虽然其中借鉴了生物学(免疫学…

免疫算法

免疫算法是受生物免疫系统的启发而推出的一种新型的智能搜索算法,是一种确定性和随机性选择相结合并具有"勘探"与"开采"能力的启发式随机搜索算法。 算法主要的步骤: (1)抗原识别与初始抗体产生。 (2)抗体评价 (3)免疫操作 免疫算法的特点: (1)…

闵可夫斯基距离—大白话篇幅[有错误的话请指教]

包括:曼哈顿距离,欧氏距离,切比雪夫距离; 举例子:两个点:A(1,9),B(5,8) 1,曼哈顿距离: 就是取和:|(1-5)||(9-8)|5;曼哈顿…

闵可夫斯基距离(LP距离)、曼哈顿距离、欧式距离、切比雪夫距离、马哈拉诺比斯距离、相关系数、夹角余弦

标题闵可夫斯基距离(LP距离)、曼哈顿距离、欧式距离、切比雪夫距离、马哈拉诺比斯距离、相关系数、夹角余弦 在聚类中,可以将样本集合看作是向量空间中的点的集合,以该空间的距离表示样本之间相似度。常用的距离有闵可夫斯基距离,闵可夫斯基…

【Python经典题目】闵可夫斯基距问题

题目 定义一个高维空间样本点集类HDPoints,须包含以下数据属性与方法属性: (a)数据属性self.points:类型为列表,由多个子列表构成,每个子列表表示高维空间中的一个数据点,且数据维度可以任意,…

欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离

转载自:https://baijiahao.baidu.com/s?id1577090844304882120&wfrspider&forpc 欧氏距离(Euclidean Distance) 欧氏距离是最容易直观理解的距离度量方法,我们小学、初中和高中接触到的两个点在空间中的距离一般都是指欧氏距离。 欧氏距离 二…

数值属性的相异性:闵可夫斯基距离

本文介绍数值属性刻画的对象之间的相异性度量,首先,应该把数据进行规范化,使之落入更小的值域,例[0,1],[0.0,1.0] 1:最流行的距离度量:欧几里得距离 2:曼哈顿距离 3&…

各种距离 欧式距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、标准欧氏距离、马氏距离、余弦距离、汉明距离、杰拉德距离、相关距离、信息熵...

1. 欧氏距离(Euclidean Distance) 欧氏距离是最容易直观理解的距离度量方法,我们小学、初中和高中接触到的两个点在空间中的距离一般都是指欧氏距离。 二维平面上点a(x1,y1)与b(x2,y2)间的欧氏距离: 三维空间点a(x1,y1,z1)与b(x2,y2,z2)间的欧氏距离: n维空间点a(x1…