资源简介
单目标最优化问题的遗传算法,可用与数学建模中,很方便快捷,matlab

代码片段和文件信息
function[xvfv]=GA(fitnessabNPNGpcpmeps)
%待优化的目标函数:fitness
%自变量下界:a
%自变量上界:b
%种群个体数:NP
%最大进化代数:NG
%杂交概率:pc
%自变量概率:pm
%自变量离散精度:eps
%目标函数取最大值时的自变量值:xm
%目标函数的最大值:fv
L=ceil(log2((b-a)/eps+1)); %根据离散精度,确定二进制编码需要的码长
x=zeros(NPL);
for i=1:NP
x(i:)=Initial(L);%种群初始化
fx(i)=fitness(Dec(abx(i:)L)); %个体适应值
end
for k=1:NG
sumfx=sum(fx); %所有个体适应值之和
px=fx/sumfx; %所有个体适应值的平均值
ppx=0;
ppx(1)=px(1);
for i=2:NP %用于轮盘赌策略的累加
ppx(i)=ppx(i-1)+px(i);
end
for i=1:NP
sita=rand();
for n=1:NP
if sita<=ppx(n)
SelFather=n; %根据轮盘赌策略确定的父亲
break;
end
end
Selmother=floor(rand()*(NP-1))+1; %随机选择母亲
posCut=floor(rand()*(L-2))+1; %随机选择交叉点
r1=rand();
if r1<=pc %交叉
nx(i1:posCut)=x(SelFather1:posCut);
nx(i(posCut+1):L)=x(Selmother(posCut+1):L);
r2=rand();
if r2<=pm %变异
posMut=round(rand()*(L-1)+1);
nx(iposMut)=~nx(iposMut);
end
else
nx(i:)=x(SelFather:);
end
end
x=nx;
for i=1:NP
fx(i)=fitness(Dec(abx(i:)L));%子代适应值
end
end
fv=-inf;
for i=1:NP
fitx=fitness(Dec(abx(i:)L));
if fitx>fv
fv=fitx; %取个体中的最好值作为最终结果
xv=Dec(abx(i:)L);
end
end
function result=Initial(length) %初始化函数
for i=1:length
r=rand();
result(i)=round(r);
end
function y=Dec(abxL) %二进制编码转换为十进制编码
base=2.^((L-1):-1:0);
y=dot(basex);
y=a+y*(b-a)/(2^L-1);
%[xvfv]=GA(@fitness030501000.90.040.01)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2021 2013-09-12 21:03 GA.m
----------- --------- ---------- ----- ----
2021 1
相关资源
- MATLAB 实现各类常见算法
- matlab编写的量子遗传算法
- 协同进化遗传算法求解函数优化问题
- 基于遗传算法的旅游全国的路径最优
- 基于遗传算法的机器人路径规划matl
- 多种群遗传算法的函数优化算法(源
- 遗传算法完整MATLAB程序实数法,轮盘
- 遗传算法解决最优路径、选址问题
- 遗传算法GA车间调度Matlab代码
- 求解多旅行商(MTSP)的遗传算法的
- 基于遗传算法的小波神经网络在股票
- matlab开发-基于遗传算法的机器人运动
- 《Matlab遗传算法工具箱及应用》源码
- 遗传算法图像分割matlab+源代码
- 神经网络、遗传算法、支持向量机、
- 谢菲尔德(Sheffield)遗传算法工具箱
- 遗传算法优化支持向量机GASVM
- 遗传算法工具箱
- MATLAB遗传算法工具箱及应用.zip
- 《MATLAB 遗传算法工具箱及应用》PDF完
- 遗传算法(Genetic Algorithm)MATLAB案例详
- MATLAB遗传算法工具箱及应用》pdf版.
- 基于遗传算法的自动排课系统设计
- MATLAB.遗传算法和粒子群算法程序设计
- 多目标优化文档及代码
- 超完整规范的多目标遗传优化算法M
- 遗传算法 -- matlab ga工具箱
- MATLAB遗传算法工具箱及应用 包含PDF电
- 神经网络的43个源程序及数据
- 基于BP算法和遗传算法的自适应噪声抵
评论
共有 条评论