资源简介
简单的matlab版本的粒子群算法 可解决TSP问题 简单优化改进版本 fitness 和最后函数自己写 只给了主体函数 其余只有几行代码了 自力更生才学的会啊
![](http://www.nz998.com/pic/40548.jpg)
代码片段和文件信息
function [xmfv] = SelPSO(fitnessNc1c2wMD)
format long;
%------初始化种群的个体------------
%x=[8276;9444;505;498;137;2989;5830;8439;1424;239;382;510;9852;8425;6159;165;8851;912;1932;933;5093;9814;542;429;6162;997;8055;5769;2315;2070;8560;985]
%N=32;
%D=32;
for i=1:N
for j=1:D
x(ij)=randn; %随机初始化位置
v(ij)=randn; %随机初始化速度
end
end
%------初始化Pi和Pg----------------------
for i=1:N
p(i)=fitness(x(i:));
y(i:)=x(i:);
end
pg = x(N:); %Pg为全局最优
for i=1:(N-1)
if fitness(x(i:))
pg=x(i:);
end
end
for t=1:M
for i=1:N
v(i:)=w*v(i:)+c1*rand*(y(i:)-x(i:))+c2*rand*(pg-x(i:));
x(i:)=x(i:)+v(i:);
fx(i) = fitness(x(i:));
if fx(i)
p(i)=fx(i);
y(i:)=x(i:);
end
if p(i)
pg=y(i:);
end
end
[sortfsortx] = sort(fx);%返回位置
exIndex = round((N-1)/2);
x(sortx((N-exIndex+1):N)) = x(sortx(1:exIndex));
v(sortx((N-exIndex+1):N)) = v(sortx(1:exIndex));
end
xm = pg‘;
fv = fitness(pg);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1306 2012-03-14 12:25 SelPSO.m
- 上一篇:用谐波叠加法仿真道路
- 下一篇:buck-boost的simuli
nk电路仿真图
相关资源
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
评论
共有 条评论