资源简介
简单的遗传算法,计算函数最值. function ga_main() % 遗传算法程序 % n-- 种群规模% ger-- 迭代次数% pc--- 交叉概率% pm-- 变异概率 % v-- 初始种群(规模为n)% f-- 目标函数值% fit-- 适应度向量 % vx-- 最优适应度值向量% vmfit-- 平均适应度值向量 clear all; close all; clc;%清屏 tic;%计时器开始计时 n=20;ger=100;pc=0.65;pm=0.05;%初始化参数 %以上为经验值,可以更改。 % 生成初始种群 v=init_population(n,22); %得到初始种群,
代码片段和文件信息
function ga_main()
% 遗传算法程序
% n-- 种群规模% ger-- 迭代次数% pc--- 交叉概率% pm-- 变异概率
% v-- 初始种群(规模为n)% f-- 目标函数值% fit-- 适应度向量
% vx-- 最优适应度值向量% vmfit-- 平均适应度值向量
clear all;
close all;
clc;%清屏
tic;%计时器开始计时
n=20;ger=100;pc=0.65;pm=0.05;%初始化参数
%以上为经验值,可以更改。
% 生成初始种群
v=init_population(n22); %得到初始种群,22串长,生成20*22的0-1矩阵
[NL]=size(v); %得到初始规模行,列
disp(sprintf(‘Number of generations:%d‘ger));
disp(sprintf(‘Population size:%d‘N));
disp(sprintf(‘Crossover probability:%.3f‘pc));
disp(sprintf(‘Mutation probability:%.3f‘pm)); %sprintf可以控制输出格式
% 待优化问题
xmin=0;xmax=9; %变量X范围
f=‘x+10*sin(x.*5)+7*cos(x.*4)‘;
% 计算适应度,并画出初始种群图形
x=decode(v(:1:22)xminxmax);%22位二进制换成十进制,%冒号表示对所有行进行操作。
fit=eval(f);%eval转化成数值型的 %计算适应度
figure(1);%打开第一个窗口
fplot(f[xminxmax]);%隐函数画图
grid on;hold on;
plot(xfit‘k*‘);%作图画初始种群的适应度图像
title(‘(a)染色体的初始位置‘);%标题
xlabel(‘x‘);ylabel(‘f(x)‘);%标记轴
% 迭代前的初始化
vmfit=[];%平均适应度
vx=[]; %最优适应度
it=1; % 迭代计数器
% 开始进化
while it<=ger %迭代次数 %100代
%Reproduct
相关资源
- PCA主成分分析实现方法Matlab
- MATLAB神经网络30个案例分析
- Computer Programming with MATLAB
- 基于监控视频的前景目标提取matlab
- zw_MATLAB应用精讲:图像处理与GUI设计
- MATLAB控制系统仿真与详解 夏玮
- matlab神经网络30例电子书+源代码
- Matlab图像处理-图像去噪边缘增强
- EEG脑电处理matlab工具包-eeglab
- 《卡尔曼滤波原理及应用-MATLAB仿真》
- 贝叶斯抠图算法matlab实现
- 基于BP神经网络的验证码识别matlab
- 杜勇-数字通信同步技术的MATLAB与FPG
- 数值分析及其Matlab实现
- DSP程序开发:MATLAB调试及直接目标代
- MATLAB优化算法案例分析与应用进阶篇
- DPM算法实现:voc-release5(Win7+matlab20
- 基于稀疏表示和正则化的图像超分辨
- 0积分 系统辨识与自适应控制MATLAB仿真
- 图像处理matlab道路小车跟踪
- 全面详解LTE MATLAB建模、仿真与实现
- adaboost 的matlab代码
- 《信号与系统》MATLAB教程.pdf
- 卷积神经网络完成程序matlab.zip
- matlab图像检索
- 卷积神经网络经典代码
- 现代通信系统第二版MATLAB版) 包括全
- 卡尔曼滤波 Matlab程序
- 稀疏编码matlab 教程
- 系统辨识资料大全(matlab系统辨识工
评论
共有 条评论