还剩3页未读,继续阅读
文本内容:
多种群遗传算法的函数优化算法
1、案例背景 针对遗传算法所存在的问题,一种多种群遗传算法结构模型(MultiplePopulationGA,简称MPGA)可以用来取代常规的标准计算模型(SGA)MPGA在SGA的基础上主要引入了以下几个概念
(1)突破SGA仅靠单个群体进行遗传进化的框架,引入多个种群同时进行优化搜索;不同的种群赋以不同的控制参数,实现不同的搜索目的
(2)各个种群之间通过__算子进行__,实现多种群的协同进化;最优解的获取是多个种群协同进化的综合结果
(3)通过人工选择算子保存各种群每个进化代中的最优个体,并作为判断算法收敛的依据 图 7-1MPGA的算法结构示意图复杂二元函数求最值 图 7-2 二元函数图像
2、案例目录第7章多种群遗传算法的函数优化算法
7.1 理论基础
7.
1.1遗传算法早熟问题
7.
1.2多种群遗传算法概述
7.2案例背景
7.
2.1问题描述
7.
2.2解决思路及步骤
7.3__TLAB程序实现
7.
3.1__算子
7.
3.2人工选择算子
7.
3.3目标函数
7.
3.4标准遗传算法主函数
7.
3.5多种群遗传算法主函数
7.
3.6结果分析
7.4延伸阅读
7.5 ____
3、主程序%%多种群遗传算法clear;clccloseallNIND=40;%个体数目NVAR=2;%变量的维数PRECI=20;%变量的二进制位数GGAP=
0.9;%代沟MP=10;%种群数目FieldD=[repPRECI[1NVAR];[-
34.1;
12.
15.8];rep[1;0;1;1][1NVAR]];%译码矩阵fori=1:MPChrom{i}=crtbpNINDNVAR*PRECI;%创建初始种群endpc=
0.7+
0.9-
0.7*randMP1;%在【
0.
70.9】范围i内随机产生交叉概率pm=
0.001+
0.05-
0.001*randMP1;%在【
0.
0010.05】范围内随机产生变异概率gen=0;%初始遗传代数gen0=0;%初始保持代数__XGEN=10;%最优个体最少保持代数__xY=0;%最优值fori=1:MPO__V{i}=O__ectFunctionbs2rvChrom{i}FieldD;%计算各初始种群个体的目标函数值end__xO__V=zerosMP1;%记录精华种群__xChrom=zerosMPPRECI*NVAR;%记录精华种群的编码whilegen0=__XGENgen=gen+1;%遗传代数加1fori=1:MPFitnV{i}=ranking-O__V{i};%各种群的适应度SelCh{i}=selectsusChrom{i}FitnV{i}GGAP;%选择操作SelCh{i}=recombinxovspSelCh{i}pci;%交叉操作SelCh{i}=mutSelCh{i}pmi;%变异操作O__VSel=O__ectFunctionbs2rvSelCh{i}FieldD;%计算子代目标函数值[Chrom{i}O__V{i}]=reinsChrom{i}SelCh{i}11O__V{i}O__VSel;%重插入操作end[ChromO__V]=immigrantChromO__V;%__操作[__xO__V__xChrom]=EliteInduvidualChromO__V__xO__V__xChrom;%人工选择精华种群YYgen=__x__xO__V;%找出精华种群中最优的个体ifYYgen__xY%判断当前优化值是否与前一次优化值相同__xY=YYgen;%更新最优值gen0=0;elsegen0=gen0+1;%最优值保持次数加1endend%%进化过程图plot1:genYYxlabel进化代数ylabel最优解变化title进化过程xlim[1gen]%%输出最优解[YI]=__x__xO__V;%找出精华种群中最优的个体X=bs2rv__xChromI:FieldD;%最优个体的解码解disp[最优值为num2strY]disp[对应的自变量取值num2strX]
4、运行结果 标准遗传算法运行5次得到的结果图多种群遗传算法运行5次得到的结果图。