• 基于战争优化算法(WSO)的光伏模型参数估计研究(Matlab代码实现)


    💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥

    🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

    ⛳️座右铭:行百里者,半于九十。

    目录

    💥1 概述

    📚2 运行结果

    🎉3 参考文献

    🌈4 Matlab代码实现

    算法文献来源:

    https://ieeexplore.ieee.org/document/9718247

    💥1 概述

        该文一种基于古代战争策略的元启发式优化算法。然后基于战争优化算法(WSO)的光伏模型参数估计进行研究。并用Matlab代码实现。

       战争战略优化(WSO)基于战争期间陆军部队的战略调动。战争策略被建模为一个优化过程,其中每个士兵都动态地向最佳值移动。该算法模拟了两种流行的战争策略,即攻击和防御策略。战场上士兵的位置根据实施的策略进行更新。为了提高算法的收敛性和鲁棒性,该文介绍了一种新的权重更新机制和弱兵迁移策略。所提出的战争策略算法实现了勘探和开发阶段的良好平衡。给出了该算法的详细数学模型。在50个基准函数和4个工程问题上测试了所提算法的有效性。将该算法的性能与十种流行的元启发式算法进行了比较。针对各种优化问题的实验结果证明了所提算法的优越性。

    📚2 运行结果

    部分代码:


    function [King_fit,King,Convergence_curve]=WSO(Soldiers_no,Max_iter,lb,ub,dim,fobj)
    % global W1 fitness_history position_history  Trajectories l
    % fitness_history=zeros(Soldiers_no,Max_iter);
    % position_history=zeros(Soldiers_no,Max_iter,dim);
    % initialize alpha, beta, and delta_pos

    King=zeros(1,dim);
    King_fit=inf;
    Positions=initialization(Soldiers_no,dim,ub,lb);
    pop_size=size(Positions,1);Convergence_curve=zeros(1,Max_iter);

    Positions_new=zeros(size(Positions));
    fitness_old=inf*ones(1,pop_size);
    fitness_new=inf*ones(1,pop_size);
    l=1;% Loop counter
    W1=2*ones(1,pop_size);

    Wg=zeros(1,pop_size);


    Trajectories=zeros(Soldiers_no,Max_iter);
    % Main loop
    R=0.8;
    for  j=1:size(Positions,1)
             fitness=fobj(Positions(j,:));
             fitness_old(j)=fitness;

            if fitness             King_fit=fitness;
                King=Positions(j,:);
            end
            
    end
     
    while l %     l
    [~,tindex]=sort(fitness_old);
    Co=Positions(tindex(2),:);
      
      iter =l;
       com=randperm(pop_size);  
        for i=1:pop_size
            RR=rand;
            if RR

                 D_V(i,:)=2*RR*(King-Positions(com(i),:))+1*W1(i)*rand*(Co-Positions(i,:)); 
            else
                D_V(i,:)=2*RR*(Co-King)+1*rand*(W1(i)*King-Positions(i,:)); 
            end
                

                Positions_new(i,:)=Positions(i,:)+D_V(i,:);
                Flag4ub=Positions_new(i,:)>ub;
            
                Flag4lb=Positions_new(i,:)         
                Positions_new(i,:)=(Positions_new(i,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb;  
                fitness=fobj(Positions_new(i,:));
                fitness_new(i) = fitness;

            if fitness             King_fit=fitness;
                King=Positions_new(i,:);
            end
    %         Co

            if fitness             Positions(i,:)=Positions_new(i,:);
                fitness_old(i)=fitness;
    %         else
                Wg(i)=Wg(i)+1;
                W1(i)=1*W1(i)*(1-Wg(i)/Max_iter)^2;

            end
    %         [~,tindex1]=max(fitness_old);
    %         Positions(tindex1,:)=lb+rand*(ub-lb);
    %         W1(tindex1)=0.5;

                  
        end
        if l<1000
            [~,tindex1]=max(fitness_old);
            Positions(tindex1,:)=lb+rand*(ub-lb);
    %         Positions(tindex1,:)=(1-randn(1))*(King-median(Positions(1:pop_size,:)))+Positions(tindex1,:);
    %         Positions(tindex1,:)=rand*King;
    %         W1(tindex1)=0.5;
        end

        l=l+1;    
        Convergence_curve(l)=King_fit;
    end

     

    🎉3 参考文献

    [1]Ayyarao, TummalaS LV, N. S. S. RamaKrishna, Rajvikram Madurai Elavarasam, Nishanth Polumahanthi, M. Rambabu, Gaurav Saini, Baseem Khan, and Bilal Alatas. "War Strategy Optimization Algorithm: A New Effective Metaheuristic Algorithm for Global Optimization." IEEE Access (2022).

    [2]Ayyarao, Tummala SLV, and Polamarasetty P. Kumar. "Parameter estimation of solar PV models with a new proposed war strategy optimization algorithm." International Journal of Energy Research (2022).

    🌈4 Matlab代码实现

  • 相关阅读:
    互联网医院|医疗系统新模式改善看病效率
    【Redis】缓存雪崩、穿透和击穿及解决方法
    Samtec连接器技术前沿 | 全新对准功能确保测试和测量应用中的精确对准
    QT动态加载qss和rcc方式
    浅谈Python中的类型转换
    怎么去别人的github工程下载
    K8S 1.20 弃用 Docker 评估之 Docker CLI 的替代产品
    css3动画库及四方体
    Windows安装cassandra,数小时多个bug总结记录
    自动驾驶自动泊车场景应用总结
  • 原文地址:https://blog.csdn.net/weixin_46039719/article/details/127759278