• 大小: 2KB
    文件类型: .m
    金币: 2
    下载: 0 次
    发布日期: 2024-01-27
  • 语言: Matlab
  • 标签: pso  

资源简介

通过pso进行简单的单目标搜索案例,体现了简洁的MATLAB 代码,解决问题,通过七个数据内容进行存储速度u,v,的速度更新

资源截图

代码片段和文件信息

%% https://www.youtube.com/watch?v=OQ3T575sbI8
%find minimum of the objective function
%% initialization

clear 
clc
iterations=30;
inertia=1.0;
correction_factor=2.0;
swarms=50;

%------initial swarm position--------
swarm=zeros(507);
step=1;
for i=1:50
    swarm(step1:7)=i;
    step=step+1;
end

swarm(:7)=1000;     %Greater than maximum possible value
swarm(:5)=0;           %initial velocity
swarm(:6)=0;           %initial velocity

%% Iterations
for iter=1:iterations
    
    %------position of swarm------
    for i=1:swarms
        swarm(i1)=swarm(i1)+swarm(i5)/1.2      %update u position
        swarm(i2)=swarm(i2)+swarm(i6)/1.2      %update v
        u=swarm(i1)
        v=swarm(i2)
        
        value=(u-20)^2+(v-10)^2                         %objective function
        
        if value

评论

共有 条评论