免疫算法实例.docxVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
免疫算法实例

智能控制课程综合报告 学 院自动化学院专 业控制科学与工程学 号学生姓名指导教师 2016年6月7日 基于免疫优化算法的物流中心选址 1、建立模型 在物流配送中心选址模型中做如下假设 1).配送中心的规模容量总可以满足需求点需求,并由其配送辐射范围内的需求量确定。 2).一个需求点仅由一个配送中心供应。 3).不考虑工厂到配送中心的运输费用。 然后要从n个需求点中找出配送中心,并向需求点配送物品。目标函数是各配送中心到需求点的需求量和距离的乘积之和最小。 目标函数如下: 2、问题的求解 2.1算法的实现步骤: 1).产生初始种群。 2).对上述群体中各个抗体进行评价。 3).形成父代群体。 4).判断是否满足条件,是则结束,反之,则继续下一步操作。 5).新种群的产生。 6).转去执行步骤2。 2.2流程图如图1-1: 图1-1 算法流程图 2.3初始群体的产生 如果记忆库非空,则初始抗体群从记忆库中生成。 否则,在可行解空间随机产生初始抗体群。此处 采用简单的编码方式。每个选址方案可形成一个长度为P的抗体(P表示配送中心的数量),每个抗体代表被选为配送中心的需求点的序列。如:考虑包含31个需求点的问题,从中选取6个作为配送中心。抗体[2,7,15,21,29,11]代表一个可行解。 2.4、解的多样性评价 1).抗体与抗原之间的亲和力 表示新的目标函数,分母的第二项表示对违反距离约束的解给予惩罚C取比较大的正数。 2).抗体与抗体之间的亲和力 其反映抗体之间的相似程度,此处借鉴Forrest等人提出的R位连续方法计算抗体之间的亲和力,两个个体有至少R位编码相同则两种抗体近似相同。 其中k表示抗体v和抗体s之间相同的位数,L为抗体的总长。例如,两个抗体[2,7,15,21,5,11]、[15,8,14,26,5,2]经比较有3个相同则亲和度为0.5。 3).抗体浓度 4).期望繁殖概率 在种群中,每个个体的期望繁殖概率与抗体与抗原之间的亲和力A和抗体浓度共同决定。 α是常数,可见个体的适应度越高,则期望繁殖率越大,个体的浓度越大,则期望繁殖率越大。这样就鼓励了高适应度个体,抑制了高浓度个体。 2.5免疫操作 1).选择:按照轮盘赌机制进行选择操作,个体被选择的概率即为期望繁殖概率。 2).交叉:采用单点交叉法进行交叉操作。 3).变异:采用随机变异位进行变异操作。 3.模型的求解 为证明算法的有效性和可行性,采集了31个城市的坐标,每个用户的位置以及物资需求进行仿真。 根据配送中心选址模型,按照免疫算法流程对该例求解。 参数设置: 种群规模:50; 记忆库容量:10; 迭代次数:100; 交叉率:0.5; 变异概率:0.4; 多样性评价参数:0.95; 4. matlab仿真结果 图4-1 适应度曲线 图4-2 选址方案 最后,结果选址方案是[5,25,18,9,12,27],如图中所标,可以看出免疫算法有 较好的收敛性。 5.算法应用展望 免疫算法能够增强系统的鲁棒性,从选址的模型上看,免疫算法就是解决了最优花费的一个聚类,因此,希望在后期的研究中能应用在多模式分类问题上。 附录: Matlab求解的主程序: %% 算法基本参数 sizepop=50; % 种群规模 overbest=10; % 记忆库容量 MAXGEN=100; % 迭代次数 pcross=0.5; % 交叉概率 pmutation=0.4; % 变异概率 ps=0.95; % 多样性评价参数 length=6; % 配送中心数 M=sizepop+overbest; %% step1 识别抗原,将种群信息定义为一个结构体 individuals = struct(fitness,zeros(1,M), concentration,zeros(1,M),excellence,zeros(1,M),chrom,[]); %% step2 产生初始抗体群 individuals.chrom = popinit(M,length); trace=[]; %记录每代最个体优适应度和平均适应度 %% 迭代寻优 for iii=1:MAXGEN %% step3 抗体群多样性评价 for i=1:M in

文档评论(0)

dajuhyy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档