遗传算法优化相关MATLAB算法实现.docx遗传算法优化相关MATLAB算法实现
遗传算法优化相关MATLAB算法实现
1 / 4
遗传算法优化相关MATLAB算法实现
精品文档
遗传算法
、案例背景
遗传算法〔 Genetic Algorithm ,GA 〕是一种进化算法,其根本原理是仿效生物界中的“物竞天择、 适者生存〞的演化法那么。 遗传算法的做法是把问题参数编码为染色体,再利用迭代的
方式进行选择、 交叉以及变异等运算来交换种群中染色体的信息, 最终生成符合优化目标的
染色体。
在遗传算法中, 染色体对应的是数据或数组, 通常是由一维的串结构数据来表示, 串上各个
位置对应基因的取值。基因组成的串就是染色体,或者叫基因型个体 ( Individuals) 。一定数
量的个体组成了群体〔 Population) 。群体中个体的数目称为群体大小〔 Population Size 〕,也
叫群体规模。而各个个体对环境的适应程度叫做适应度 ( Fitness) 。
、遗传算法中常用函数
创立种群函数— crtbp
适应度计算函数— ranking
选择函数— select
交叉算子函数— recombin
变异算子函数— mut
选择函数— reins
实用函数— bs2rv
实用函数— rep
、主程序:
简单一元函数优化:
clc
clear all
close all
画出函数图
figure(1);
hold on;
lb=1;ub=2; %函数自变量范围【 1,2】
ezplot('sin(10*pi*X)/X',[lb,ub]); % 画出函数曲线
xlabel(' 自变量 /X')
ylabel(' 函数值 /Y')
定义遗传算法参数
NIND=40; %个体数目
MAXGEN=20; %最大遗传代数
PRECI=20; %变量的二进制位数
GGAP=; %代沟
px=; %交叉概率
pm=; %变异概率
.
遗传算法优化相关MATLAB算法实现
遗传算法优化相关MATLAB算法实现
4 / 4
遗传算法优化相关MATLAB算法实现
精品文档
trace=zeros(2,MAXGEN); %寻优结果的初始值
FieldD=[PRECI;lb;ub;1;0;1;1]; %区域描述器
Chrom=crtbp(NIND,PRECI); %初始种群
优化
gen=0; %代计数器
X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换
ObjV=sin(10*pi*X)./X; % 计算目标函数值
while gen<MAXGEN
FitnV=ranking(ObjV); % 分配适应度值
SelCh=select('sus',Chrom,FitnV,GGAP); %选择
SelCh=recombin('xovsp',SelCh,px); %重组
Sel
遗传算法优化相关MATLAB算法实现 来自淘豆网m.daumloan.com转载请标明出处.