当前位置 : 主页 > 编程语言 > python >

【智能优化算法-水循环算法】基于蒸发的水循环算法求解用带约束的优化问题

来源:互联网 收集:自由互联 发布时间:2022-09-29
1 内容介绍 2 部分代码 clear all; clc; close all; format long g objective_functinotallow=@fun; cnotallow=@Constraints; for k=1:1 % Number of independent runds %=========================================================================

1 内容介绍

【智能优化算法-水循环算法】基于蒸发的水循环算法求解用带约束的优化问题附matlab代码_性能优化

【智能优化算法-水循环算法】基于蒸发的水循环算法求解用带约束的优化问题附matlab代码_性能优化_02

【智能优化算法-水循环算法】基于蒸发的水循环算法求解用带约束的优化问题附matlab代码_参考文献_03

2 部分代码

clear all;

clc;

close all;


format long g


objective_functinotallow=@fun;

cnotallow=@Constraints;


for k=1:1  % Number of independent runds

    %==========================================================================

    % Problem 1

    % nvars=7;

    % LB=[-10 -10 -10 -10 -10 -10 -10];

    % UB=[10 10 10 10 10 10 10];

    %==========================================================================

    % Problem 2

    % nvars=5;

    % LB=[78 33 27 27 27];

    % UB=[102 45 45 45 45];

    %==========================================================================

    % Problem 3

    % nvars=10;

    % LB=ones(1,nvars)*0;

    % UB=ones(1,nvars)*1;

    %==========================================================================

    % Problem 4

    % nvars=3;

    % LB=ones(1,nvars)*0;

    % UB=ones(1,nvars)*10;

    %==========================================================================

    % Three-bar truss problem

    % nvars=2;

    % LB=[0 0];

    % UB=[1 1];

    %==========================================================================

    % Speed reducer problem

    % nvars=7;

    % LB=[2.6 0.7 17 7.3 7.3 2.9 5];

    % UB=[3.6 0.8 28 8.3 8.3 3.9 5.5];

    %==========================================================================

    % Pressure vessel problem

    % nvars=4;

    % LB=[0 0 10 10];

    % UB=[100 100 200 200];

    %==========================================================================

    % Tension/compression spring design problem

    % nvars=3;

    % LB=[0.05 0.25 2];

    % UB=[2 1.3 15];

    %==========================================================================

    % Welded beam problem

    nvars=4;

    LB=[0.1 0.1 0.1 0.1];

    UB=[2 10 10 2];

    %==========================================================================

    % Rolling Element Bearing

    % nvars=10;

    % D=160;

    % d=90;

    % LB=[0.5*(D+d) 0.15*(D-d) 4 0.515 0.515 0.4 0.6 0.3 0.02 0.6];

    % UB=[0.6*(D+d) 0.45*(D-d) 50 0.6 0.6 0.5 0.7 0.4 0.1 0.85];

    %==========================================================================

    % Multiple disk clutch brake

    % nvars=5;

    %--------------Info

    % % ri=[60,21,21,...,80]; x(1)

    % % ro=[90,91,92,...,110]; x(2)

    % % t=[1,1.5,2,2.5,3]; x(3)

    % % F=[600,610, 620,...,1000]; x(4)

    % % Z=[2,3,4,5,6,7,8,9]; x(5)

    %-------------

    % LB=[60 90 1 2];

    % UB=[80 110 3 9];

    

    [Xmin,Fmin,SUM_Constraints,NFEs,Elapsed_Time]=ERWCA_Const(objective_function,constraints,LB,UB,nvars)

    

    disp(['Run: ',num2str(k),'   Fmin= ',num2str(Fmin),'  Summation Constraint Violations:  ',num2str(SUM_Constraints)]);

    

    F(k)=Fmin;

    N(k)=NFEs;

    

end


[Min_F index]=min(F)

Ave_F=mean(F)

Max_F=max(F)

SD_F=std(F)


[Min_NFEs indexx]=min(N)

Ave_NFEs=mean(N)

Max_NFEs=max(N)

SD_NFEs=std(N)

3 运行结果

【智能优化算法-水循环算法】基于蒸发的水循环算法求解用带约束的优化问题附matlab代码_参考文献_04

4 参考文献

[1]金爱娟, 苏俊豪, 李少龙. 基于水循环算法的开关磁阻电机性能优化[J]. 信息与控制, 2020.

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


上一篇:【光学】基于matlab模拟光栅条纹投影生成
下一篇:没有了
网友评论