【微电网优化】基于粒子群算法实现分布式电源的选址和定容附matlab代码

1 简介

2 部分代码

%% 粒子群算法function [Best_pos,Best_score,curve]=PSO(pop,Max_iter,lb,ub,dim,fobj,Vmax,Vmin)%% 参数设置w = 0.9;      % 惯性因子c1 = 2;       % 加速常数c2 = 2;       % 加速常数Dim = dim;            % 维数sizepop = pop;       % 粒子群规模maxiter  = Max_iter;      % 最大迭代次数if(max(size(ub)) == 1)   ub = ub.*ones(1,dim);   lb = lb.*ones(1,dim);  endfun = fobj; %适应度函数%% 粒子群初始化Range = ones(sizepop,1)*(ub-lb);pop = rand(sizepop,Dim).*Range + ones(sizepop,1)*lb;    % 初始化粒子群V = rand(sizepop,Dim)*(Vmax-Vmin) + Vmin;                 % 初始化速度fitness = zeros(sizepop,1);for i=1:sizepop    fitness(i,:) = fun(pop(i,:));                         % 粒子群的适应值end%% 个体极值和群体极值[bestf, bestindex]=min(fitness);zbest=pop(bestindex,:);   % 全局最佳gbest=pop;                % 个体最佳fitnessgbest=fitness;              % 个体最佳适应值fitnesszbest=bestf;               % 全局最佳适应值%% 迭代寻优iter = 0;while( (iter < maxiter ))    for j=1:sizepop        % 速度更新        V(j,:) = w*V(j,:) + c1*rand*(gbest(j,:) - pop(j,:)) + c2*rand*(zbest - pop(j,:));        if V(j,:)>Vmax            V(j,:)=Vmax;        end        if V(j,:)            V(j,:)=Vmin;        end        % 位置更新        pop(j,:)=pop(j,:)+V(j,:);        for k=1:Dim            if pop(j,k)>ub(k)                pop(j,k)=ub(k);            end            if pop(j,k)                pop(j,k)=lb(k);            end        end        % 适应值        fitness(j,:) =fun(pop(j,:));        % 个体最优更新        if fitness(j) < fitnessgbest(j)            gbest(j,:) = pop(j,:);            fitnessgbest(j) = fitness(j);        end        % 群体最优更新        if fitness(j) < fitnesszbest            zbest = pop(j,:);            fitnesszbest = fitness(j);        end    end    iter = iter+1;                      % 迭代次数更新    curve(iter) = fitnesszbest;end%% 绘图Best_pos = zbest;Best_score = fitnesszbest;end

3 仿真结果

4 参考文献

[1]陈眩姿. 基于粒子群算法的微电网分布式电源优化规划[J]. 电力电子, 2013(3):6.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章