MATLAB代码-粒子群算法

这段代码展示了如何使用MATLAB进行粒子群优化算法的实现,包括种群初始化、速度和位置更新、个体及群体极值搜索等步骤,用于解决优化问题。适应度函数为fun_shiyingdu,通过迭代寻优找到最优个体适应度值。
摘要由CSDN通过智能技术生成

clc;

clear all;

c1 = 1.49445;

c2 = 1.49445;%速度学习因子

max_genxin = 100;%最大迭代次数

size_zhongqun = 20;%种群规模

max_geti = 5;%个体(自变量取值)最大值(位置)

min_geti = -5;

v_max = 1;%速度最大值

v_min = -1;%速度最小值

%%种群初始化

var_num = 2;%适应度函数自变量个数

zhongqun = 5*rand(size_zhongqun,var_num);%初始化粒子

v_zhongqun = rand(size_zhongqun,var_num);%初始化粒子速度

for i = 1:size_zhongqun

  fitness(i) = fun_shiyingdu(zhongqun(i,:)); %计算适应度值

end

%%寻找初始极值

[bestfitness_value, bestfitness_weizhi] =min(fitness);

jizhi_zhongqun =zhongqun(bestfitness_weizhi,:);%群体极值位置

jizhi_geti = zhongqun;%个体极值位置

fitnessbest_geti = fitness;%个体极值适应度值

fitnessbest_group = bestfitness_value;%群体极值适应度值

%%迭代寻优

for i = 1:max_genxin

   for j = 1:size_zhongqun

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值