资源简介
求解背包问题的离散粒子群算法程序,采用0-1二进制编码,可以直接运行!
代码片段和文件信息
clc;
clear;
%n=10
a=[95 4 60 32 23 72 80 62 65 46];%物品的体积
c=[55 10 47 5 4 50 8 61 85 87];%物品的价值
b=269;%背包的重量限制
%% 初始化程序:
Dim=10;%粒子的维数
xSize=20;%种群数
MaxIt=30;%最大迭代次数
c1=2;
c2=2;%定义加速因子
w=0.8;%定义惯性因子
%%
A=repmat(axSize1);%将a扩展成一个30*10的矩阵
C=repmat(cxSize1);%将c扩展成一个30*10的矩阵
x=round(rand(xSizeDim));%随机取一个30*10的0/1矩阵作为粒子的初始位置
v=rand(xSizeDim);%粒子的初始速度
xbest=zeros(xSizeDim);%单个粒子的初始最佳位置
fxbest=zeros(xSize1);%xbest的适应度
gbest=zeros(1Dim);%粒子群的初始最佳位置
fgbest=0;%gbest的适应度
%粒子群最优位置和单个粒子最优位置的选定
%% 迭代循环算法:
iter=0;
while iter iter=iter+1;
fx=sum((C.*x)‘);%计算粒子群的适应度即背包内物品的价值
sx=sum((A.*x)‘);%限制函数背包内物品的体积
for i=1:xSize
if sx(i)>269
fx(i)=0;%当被包内物品的体积超过限制时将期适应度设置为1
end
end
for i=1:xSize
if fx
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2014 2012-10-15 16:41 ls_PSO.m
相关资源
- HMMforspeechrecogntion 一个可执行的HMM语音
- popular-UCI-datasets 一些非常有用的数据
- GAPSO 这个算法是遗传算法和粒子群优
- synchronization 利用matlab仿真实现载波的
- Gabor Gabor小波变换的matlab实现
- 4 matlab区域填充的具体算法及演示
- MATLAB_image_process_with_PDE 运用偏微分方
- gabijiao 该程序通过实例(函数)
- SIFT2844912
- gbvs 二维图像视觉显著性检测
- wenli 分析了纹理特征提取方法
- EELM
- barcode 基于图像的条形码识别程序(识
-
myaudiopla
yer 使用Matlab GUI实现的音频 - B-spline-surface 在MATLAB-2008a环境下编写的
- NURBS-surface 在MATLAB-2008a环境下编写的
- ACO 用MATLAB编写的蚁群算法最短路径寻
- wavplay 基于matlab GUI界面的播放器
- allfns 是由牛津大学VGG开发的三维重建
- spectrogram_fft
- adaboost 基于adaboost的人脸识别程序
- 2 2课程报告要求:按照讲课内容
- gps GPS信号的捕获、处理程序
- fuzzynetme 模糊神经网络的MATLAB程序
- naive_bayes_numeric 利用matlab实现的朴素贝
- MFandMPF 计算肌电信号积分肌电值
- BM3D BM3D去噪算法的实现和相关文档
- BarrelDistortion 两个matlab程序
- Kalman 用卡尔曼滤波跟踪目标实例
- WSN-matlab-simulation
评论
共有 条评论