一、获取代码方式

获取代码方式1:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

获取代码方式2:
完整代码已上传我的资源:【单目标优化求解】基于matlab水循环算法求解约束优化问题【含Matlab源码 1428期】

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、部分源代码

clear all;
clc;
close all;format long gobjective_function=@fun;
constraints=@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 problemnvars=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]=WCA_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)
function FVAL=fun(x)
%==========================================================================
% Problem 1
% FVAL=(x(1)-10)^2+5*((x(2)-12)^2)+x(3)^4+3*((x(4)-11)^2)+10*(x(5)^6)+7*(x(6)^2)+x(7)^4-4*x(6)*x(7)-10*x(6)-8*x(7);
%==========================================================================
% Problem 2
% FVAL=5.3578547*x(3)^2+0.8356891*x(1)*x(5)+37.293239*x(1)-40792.141;
%==========================================================================
% Problem 3
% nvars=10;
% a=1;
%
% for i=1:nvars
%     aa=x(i);
%     a=aa*a;
% end
% FVAL=-((sqrt(nvars))^nvars)*a;
%==========================================================================
% Problem 4
% FVAL=-((100-(x(1)-5)^2-(x(2)-5)^2-(x(3)-5)^2)/100);
%==========================================================================
% Three-bar truss problem
% FVAL=(2*sqrt(2)*x(1)+x(2))*100;
%==========================================================================
% Speed reducer problem
FVAL=0.7854*x(1)*x(2)^2*(3.3333*x(3)^2+14.9334*x(3)-43.0934)-1.508*x(1)*(x(6)^2+x(7)^2)+7.4777*(x(6)^3+x(7)^3)+0.7854*(x(4)*x(6)^2+x(5)*x(7)^2);
%==========================================================================
% Pressure Vessel
%FVAL=0.6224*x(1)*x(3)*x(4)+1.7781*x(2)*x(3)^2+3.1661*x(1)^2*x(4)+19.84*x(1)^2*x(3);
%==========================================================================
% Spring design
% FVAL=(x(3)+2)*x(2)*(x(1)^2);
%==========================================================================
% Welded Beam
% FVAL=1.10471*x(1)^2*x(2)+0.04811*x(3)*x(4)*(14+x(2));
%==========================================================================
% Rolling element bearing
% gama=x(2)/x(1);
% fc=37.91*((1+(1.04*((1-gama/1+gama)^1.72)*((x(4)*(2*x(5)-1)/x(5)*(2*x(4)-1))^0.41))^(10/3))^-0.3)*((gama^0.3*(1-gama)^1.39)/(1+gama)^(1/3))*(2*x(4)/(2*x(4)-1))^0.41;
%
% if x(2)<=25.4
%     FVAL=-fc*x(3)^(2/3)*x(2)^1.8;
% else
%     FVAL=-3.647*fc*x(3)^(2/3)*x(2)^1.4;
% end
%==========================================================================
% Multiple disk clutch brake (Discrete variables)
% ri=60:80;
% r0=90:110;
% t=[1.5 2 2.5 3];
% f=600:10:1000;
% z=2:9;
% r0=0.0000078;
% FVAL=pi*(x(2)^2-x(1)^2)*x(3)*(x(5)+1)*r0;
%==========================================================================

三、运行结果

四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.

【单目标优化求解】基于matlab水循环算法求解约束优化问题【含Matlab源码 1428期】相关推荐

  1. 【PID优化】基于花朵授粉算法PID控制器优化设计含Matlab源码

    ​1 内容介绍 PID参数优化对PID控制性能起着决定性作用,针对PID参数寻优问题,提出运用一种花授粉算法(FPA).该算法启发于自然界中花粉的传播授粉过程,以三个PID参数组成每个花粉单元的位置坐 ...

  2. 【智能优化算法】基于寄生捕食优化算法求解单目标优化问题(Parasitism Predation algorithm,PPA)含Matlab源码

    1 简介 Maximizing the classification accuracy and minimizing the number of selected features are the t ...

  3. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  4. 【Matlab电力负荷预测】粒子群优化支持向量机短期电力负荷预测【含GUI源码 751期】

    一.代码运行视频(哔哩哔哩) [Matlab电力负荷预测]粒子群优化支持向量机短期电力负荷预测[含GUI源码 751期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...

  5. 【Matlab图像加密】正交拉丁方置乱算法图像加解密【含GUI源码 182期】

    一.代码运行视频(哔哩哔哩) [Matlab图像加密]正交拉丁方置乱算法图像加解密[含GUI源码 182期] 二.matlab版本及参考文献 一.代码运行视频(哔哩哔哩) [Matlab图像处理]自动 ...

  6. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  7. 【Matlab指纹识别】指纹识别门禁系统【含GUI源码 1692期】

    一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别门禁系统[含GUI源码 1692期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继 ...

  8. 【Matlab指纹识别】指纹识别匹配门禁系统【含GUI源码 587期】

    一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别匹配门禁系统[含GUI源码 587期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  9. 【Matlab路径规划】改进的遗传算法机器人避障路径规划【含GUI源码 703期】

    一.代码运行视频(哔哩哔哩) [Matlab路径规划]改进的遗传算法机器人避障路径规划[含GUI源码 703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

  10. 【Matlab人脸识别】BP神经网络人脸识别(含识别率)【含GUI源码 891期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]BP神经网络人脸识别(含识别率)[含GUI源码 891期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

最新文章

  1. IBM重磅开源Power芯片指令集?国产芯迎来新机遇?
  2. 03系统多界面_领克03+冠军版定制版车联系统全网首测,性能+智能它都给你
  3. 关于SQL查询效率,100w数据,查询只要1秒
  4. 大型web系统数据缓存设计-l转载
  5. 2018学校计算机 远程教学工作总结,2018年远程教育工作总结范文
  6. 学完计算机还是不懂,如果看了这篇文章你还不懂傅里叶变换,那就过来掐死我吧...
  7. “钉钉打卡神器”开发者被判五年半!
  8. pythonpm2.5空气质量提醒_Python实现抓取城市的PM2.5浓度和排名
  9. DotA2表演赛全面总结 EHOME重拾王者霸气
  10. 禁止chrome更新呢
  11. Mysql中使用关键字name做字段名
  12. c语言延时0.5s程序,C语言延时程序(ms,us)
  13. 2020工作第一天,免费请大家喝星巴克咖啡了,速来!
  14. java程序设计实践教程张永常_java程序设计实用教程
  15. 6、春节到了,小明期盼收到压岁钱。他想:如果收到的钱超过1000元,那么捐助失学儿童;收到的钱在500~1000之间,那么购买航模;如果收到的钱不足500元,那么购买百科全书。
  16. practice是什么意思_practice是什么意思
  17. python教程104-Python通过邮箱群发工资条
  18. ios swift UIActivityIndicatorView 菊花 加载中...
  19. 第五章 局域网技术基础及应用
  20. 报错 | vue-router.esm.js?3423:2065 Uncaught (in promise) NavigationDuplicated: Avoided redundant navig

热门文章

  1. FreeBSD常用操作
  2. Ionic开发,手机在线测试
  3. JaveScript简单数据类型(JS知识点归纳二)
  4. 华为OpenStack开源团队人才招募中
  5. shell脚本 空格
  6. iphone NSString 字符串处理:截取字符串、匹配字符串、分隔字符串
  7. 所谓的日常 #10 - 勤王室馬騰舉義 報父仇曹操興師
  8. 经典200例-003 为项目添加已有类
  9. opencv 图像去雾
  10. 将类实现分开以及代码块