资源简介
遗传算法入门程序,求解一个六峰驼背函数的最小值,绝对经典
代码片段和文件信息
%Generic Algorithm for Function f(x1x2)optimum
clear all;
close all;
x=-3:0.01:3;
y=-3:0.01:3;
[xy]=meshgrid(xy);
f=4*x.^2-2.1*x.^4+1/3*x.^6+x.*y-4*y.^2+4*y.^4;
mesh(xyf);
xlabel(‘x-axis‘)ylabel(‘y-axis‘)zlabel(‘f-axis‘);title(‘六峰值驼背函数‘);
minf=min((min(f))‘);
k=find(f==minf);
%minfx(k)y(k)
%Parameters
Size=80; %种群个数一般20-100;
G=100; %迭代次数,一般100-500;
pc=0.60; %交叉概率,一般0.4-0.99;
pm=0.1; %变异概率,一般0.0001-0.1;
CodeL=10;
N=2^CodeL-1;
umax=3;
umin=-3;
E=round(rand(Size2*CodeL)); %Initial Code
%Main Program
for k=1:1:G
time(k)=k;
%Uncoding
for s=1:1:Size
m=E(s:);
y1=0;y2=0;
m1=m(1:CodeL);
for i=1:CodeL
y1=y1+m1(i)*2^(i-1);
end
x1=(umax-umin)*y1/N+umin;
m2=m(CodeL+1:2*CodeL);
for i=1:CodeL
y2=y2+m2(i)*2^(i-1);
end
x2=(umax-umin)*y2/N+umin;
% F(s)=100*(x1^2-x2)^2+(1-x1)^2;
F(s)=-(4*x1^2-2.1*x1^4+1/3*x1^6+x1*x2-4*x2^2+4*x2^4);
% F(s)=-(x1-1)^2-(x2)^2;
end
% Ji=1./F;
%**********Step1: Evaluate BestJ**********
% BestJ(k)=min(Ji);
ksp=2;
Fmin=min(F);
Fmax=max(F);
fmin=(Fmin+Fmax)/(1+ksp);
fmax=ksp*fmin;
delf=(fmax-fmin)/(Fmax-Fmin);
%fi=fmin
相关资源
- 基于非支配排序遗传算法处理多目标
- 基于Matlab工具的遗传算法求解有约束
- 量子遗传算法求函数最优值
- 基本的遗传算法MATLAB实现
- 遗传算法 实现动力配煤+gui界面 matl
- 遗传算法解决非线性规划问题的Matl
- 基于遗传算法的柔性车间调度.rar
- 遗传算法 MATLAB程序合集
- 遗传算法贪心交叉
- 遗传算法完整MATLAB程序实数法,覆盖
- Matlab遗传算法源程序详解
- 使用遗传算法优化BP神经网络权值 的
- 基于多层编码遗传算法的车间调度算
- 遗传算法优化BPNN车位预测
- 遗传算法优化小波函数车位预测
- 遗传算法改进的模糊C-均值聚类MATLA
- 遗传算法小波神经网络
- 遗传算法Demo
- 遗传算法解决VRP源程序
- 遗传算法优化BP神经网络matlab程序
- 遗传算法优化神经网络的matlab程序
- 直线阵遗传算法优化幅相 降低副瓣
- 一个遗传算法TSP程序(GUI界面)
- 基于遗传算法的投影寻踪模型matlab实
- 用MATLAB实现遗传算法程序
- 遗传算法优化的BP神经网络 - MATLAB源码
- matlab,用遗传算法求f(x)=x·sin(1
-
Simuli
nk仿真_遗传算法PID控制 - matlab中实现遗传算法求解旅行商问题
- 蚁群、粒子群、GA、TS等算法解决Job
评论
共有 条评论