人工免疫克隆选择算法是一种比较新型的智能算法,其基本算法结构与遗传算法是类似的,以下源码是为网络节点分组调度问题而设计的算法。

function

[BestX,BestY,AllABfarm,LC1,LC2]=AIA2(M,N,Ns,Ncm,Nr,Pd,alpha,beta,K,Cx,Cy,r,Sx,Sy)

%% 网络节点分组调度的人工免疫优化算法通用Matlab程序

% GreenSim团队原创作品,转载请注明

% Email:greensim@163.com

% GreenSim团队主页:http://blog.sina.com.cn/greensim

%

[color=red]欢迎访问GreenSim——算法仿真团队→[url=http://blog.sina.com.cn/greensim]http://blog.sina.com.cn/greensim[/url][/color]

%% 输入参数列表

% M------------人工免疫优化算法迭代次数

% N------------抗体群的规模

% Ns-----------免疫选择算子中选中的抗体个数

% Ncm----------克隆变异算子中产生的新抗体的个数

% Nr-----------抑制操作中保留下来的抗体个数

% Pd-----------变异程度控制参数,取值0~1,越大变异越厉害

% alpha--------亲和度加权系数,用于激励度的计算

% beta---------浓度加权系数,用于激励度的计算

% K------------调度分组的个数

% Cx-----------节点的横坐标,1×n的向量

% Cy-----------节点的纵坐标,1×n的向量

% r------------节点的感知半径,1×n的向量

% Sx-----------质点的横坐标,1×m的向量

% Sy-----------质点的纵坐标,1×m的向量

%% 输出参数列表

% BestX--------最优调度方案

% BestY--------最优调度对应的平均覆盖率

% AllABfarm----历史上所有抗体群的集合,M×1的细胞结构

% LC1----------最优抗体亲和度的收敛曲线,M×1

% LC2----------抗体群平均亲和度的收敛曲线,M×1

%%

-----------------------初始化----------------------------------

n=length(Cx);

LC1=zeros(M,1);

LC2=zeros(M,1);

AllABfarm=cell(M,1);

%控制参数初始化

mm=1;%迭代计数器

%调用子函数,抗体群初始化

ABfarm=AntiBodyInitial(N,n,K);

%%

-----------------------迭代过程---------------------------------

while mm<=M%设置停止条件

%调用子函数,计算抗体群亲和度

aff=Affinity(ABfarm,K,Cx,Cy,r,Sx,Sy);

%记录收敛曲线

maxaff=max(aff);

meanaff=mean(aff);

LC1(mm)=maxaff;

LC2(mm)=meanaff;

pos=find(aff==maxaff);

BestPos=pos(1);

BestX=ABfarm(BestPos,:);

BestY=maxaff;

AllABfarm{mm}=ABfarm;

%调用子函数,计算抗体浓度

den=Density(ABfarm);

%调用子函数,计算抗体激励度

sim=SumUp(aff,den,alpha,beta);

%调用子函数,免疫选择算子

ABfarmS=Select(ABfarm,sim,Ns);

%精英抗体保护

ABfarmS(1,:)=BestX;

%调用子函数,克隆变异算子

ABfarmCM=CloneMutation(ABfarmS,Ncm,Pd,K);

%调用子函数,抑制刷新算子

ABfarm=RepresRenewal(ABfarmS,ABfarmCM,Nr,N,K,Cx,Cy,r,Sx,Sy);

disp(mm);

mm=mm+1;

end

免疫优化算法 matlab,基于人工免疫克隆选择算法的调度优化MATLAB源码相关推荐

  1. 【优化求解】基于粒子群算法求解多目标优化问题matlab源码

    [优化求解]基于粒子群算法求解多目标优化问题matlab源码 1 算法介绍 1.1 关于速度和位置 粒子群算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有两个属性:速度和位置,速度代表移动的快 ...

  2. 【Matlab路径规划】蚁群算法求解机器人栅格地图最短路径规划问题【含源码 1580期】

    一.代码运行视频(哔哩哔哩) [Matlab路径规划]蚁群算法求解机器人栅格地图最短路径规划问题[含源码 1580期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...

  3. 【建模算法】基于蚁群算法求解TSP问题(Python实现)

    [建模算法]基于蚁群算法(ACA)求解TSP问题(Python实现) TSP (traveling salesman problem,旅行商问题)是典型的NP完全问题,即其最坏情况下的时间复杂度随着问 ...

  4. 协同过滤推荐算法和基于内容推荐算法的区别?

    文章最前: 我是Octopus,这个名字来源于我的中文名--章鱼:我热爱编程.热爱算法.热爱开源.所有源码在我的个人github :这博客是记录我学习的点点滴滴,如果您对 Python.Java.AI ...

  5. 【安全算法之SHA1】SHA1摘要运算的C语言源码实现

    [安全算法之SHA1]SHA1摘要运算的C语言源码实现 概述 头文件定义 C语言版本的实现源码 测试用例 github仓库 更多参考链接 概述 大家都知道摘要算法在安全领域,也是一个特别重要的存在,而 ...

  6. 【安全算法之DES】DES算法(支持ECB/CBC模式)的C语言源码实现

    [安全算法之DES]DES算法(支持ECB/CBC模式)的C语言源码实现 概述 头文件定义 C语言版本的实现源码 数据分组模式:ECB模式和CBC模式 测试用例 github仓库 更多参考链接 概述 ...

  7. 【安全算法之base64】base64加解密的C语言源码实现

    最近,有项目中需要用到base64的加解密,所以用C语言实现了一遍,测试效果还不错,代码量和RAM消耗都比较低,可以提供给大家参考下. #include <stdbool.h> #incl ...

  8. 【安全算法之SHA512】SHA512摘要运算的C语言源码实现

    [安全算法之SHA512]SHA512摘要运算的C语言源码实现 概述 头文件定义 C语言版本的实现源码 测试用例 github仓库 更多参考链接 概述 大家都知道摘要算法在安全领域,也是一个特别重要的 ...

  9. Opencv基于改进VGG19的表情识别系统(源码&Fer2013&教程)

    1.研究背景 在深度学习中,传统的卷积神经网络对面部表情特征的提取不充分以及计算参数量较大的问题,导致分类准确率偏低.因此,提出了一种基于改进的VGG19网络的人脸表情识别算法.首先,对数据进行增强如 ...

最新文章

  1. 玉米田Corn Fields
  2. 大数据驱动的运营创新和探索
  3. Windows 10下安装scrapy(pip方式,非wheel)
  4. Scala声明变量、常用类型、条件表达式、块表达式、循环
  5. 执子之手简约唯美的表白网站HTML源码
  6. LeetCode 123. 买卖股票的最佳时机 III(Best Time to Buy and Sell Stock III)
  7. 16种oracle查询日期语句
  8. sql_全国省市区、邮编、经纬度、城市拼音、电话区号
  9. 批处理、批量复制文件:复制文件夹及子文件下所有特定文件,并且复制存在特定文件的子文件夹
  10. 如何把视频压缩到最小?请看详细步骤
  11. 交换机和路由器到底有什么区别???
  12. 10-富文本编辑器wangEditor的使用
  13. CADENAS为BELFUSE创建新的电子元件3DCAD产品目录
  14. 山东省下辖16个地级市和山东地形图12.5米
  15. 这些SEO搜索技巧你会不会用?
  16. 关于IDEL中的全局搜索不显示该有的类的解决办法之一
  17. 《乐高EV3机器人搭建与编程》一2.1 零件储存箱
  18. C2B前还有S2b,阿里携手产学研探索新零售时代的供应链未来
  19. clickhouse修改数据存储目录
  20. 聚观早报 | iPhone14 Pro可能是“药丸屏”;SpaceX获14亿美元订单

热门文章

  1. C++面向对象编程之类的使用(从struct到class的进阶)
  2. sklearn下载方法,如果pycharm下载失败的话,你可以看看这里
  3. the dhc driver package_DHC智商低?不,它用1k阅读,444个好看证明了自己
  4. go web框架_golang微服务框架go-micro 入门笔记2.2 micro工具之微应用利器micro web
  5. Python按元组中第一个字符串升序第二个字符串降序排序
  6. 详解Python变量作用域
  7. Python实现计算机屏幕任意区域截图
  8. ajax js引用,ajax 引用js文件内容
  9. Android程序财务管理,基于android的个人财务管理系统的设计与实现..pdf
  10. N皇后问题(暴力法、回溯法)