引言
优化函数的性能评估有两种:1.利用不同的数学基准测试函数集;2.各种实际工程设计问题。前期已经分享了多种cec数学基准测试函数集:
也分享matlab版的优化算法求解32种工程设计问题:
【一码解决】32个现实世界的工程设计优化问题,让你的论文增色10倍(附matlab代码)
由于目标函数具有大量约束条件的复杂性,现实世界的优化问题相对难以解决。为了验证新设计方法的有效性和强度,应该通过一些复杂的现实问题来对其性能进行基准测试,而不仅仅是来自数值分析领域具有合成目标函数的玩具问题。
本期推出python版的求解工程设计问题,包括170多种优化算法(基础算法和改进算法),30个现实世界的工程约束优化问题,作为验证算法的基准套件进行描述和呈现。这些问题反映了现实优化场景中出现的各种困难和挑战。具体有:
% 1.Three bar truss design, 三杆桁架设计
% 2.Welded beam structure problem, 焊接梁结构问题
% 3.tension/Compression spring design, 张力/压缩弹簧设计问题
% 4.Speed Reducer, 减速器
% 5.Cantilever Beam, 悬臂梁
% 6.Pressure vessel design, 压力容器设计
% 7.I-beam vertical deflection 工字钢垂直挠度
% 8.Gear train design 齿轮系设计
% 9.Tubular column design, 管状柱设计
% 10.Corrugated bulkhead design, 波纹舱壁设计
% 11.Piston lever,活塞杆
% 12.Reinforced concrete beam design, 钢筋混凝土梁设计
% 13.Car side impact design, 汽车侧面碰撞设计
% 14.Sawmill operation problem, 锯木厂运行问题
% 15. hydro-static thrust bearing, 静压推力轴承设计
% 16. Rolling element bearing design 滚动轴承设计
% 17. Multiple disk clutch brake design problem 多盘离合器制动器设计问题
% 18. Step-cone pulley problem 步进圆锥滑轮问题
% 19. Planetary gear train design, 行星轮系设计
% 20. Robot gripper problem, 机器人夹持器问题
% 21. Heat exchanger network design problem, 换热器网络设计
% 22. Heat exchanger network design problem(2) ,换热器网络设计(2)
% 23. Haverly's Pooling Problem,Haverly's 泳池问题
% 24. Blending-Pooling-Separation problem
% 25. Reactor network design, 反应堆网络设计
% 26. Optimal operation of alkylation unit, 烷基化装置的优化操作
% 27. Gas transmission compressor design, 输气压缩机设计
% 28. Two-reactor problem, 两个反应器问题
% 29 industrial refrigeration system, 工业制冷系统
% 30 Himmelblau's function,Himmelblau函数
1.选择其中一个工程约束优化问题:
30种工程约束优化问题集成到了Engineer_problem.py函数中,即插即用,自由切换,只需要输入1-30其中一个整数,就可以选择对应的优化问题。非常方便,代码改动的工作量只有一个数字的量。
2.选择自己的优化算法:
算法的调用在一网打尽!170+种优化算法求解11种cec测试函数(附Python代码)中介绍。以鲸鱼优化算法(WOA)和灰狼优化算法(GWO)为例。设置了最大迭代次数epoch=100,种群数量pop_size=50。有两种调用方式,import的方式也不一样。当然,还有其他170多种算法供君使用。第一种方式可以从mealpy.swarm_based ,mealpy.human_based ,mealpy.math_based等等中import更多的算法。
第二种,直接在get_optimizer_by_name中输入算法对应的名字。似乎第二种方式更便利一些。随后,利用model.solve(problem_dict)求解优化问题。
注意:有些算法输入并不只有(epoch,pop_size)两个输入,还需要查阅mealpy中具体的优化算法的定义和输入,依照python的格式灵活使用。
这样就可以在主函数main_engineering.py里根据上面的输入和输出形式,在相应的位置增加、替换算法,即插即用,自由切换。
Python代码下载
微信搜索并关注-优化算法侠,或扫描下方二维码关注,以算法名字搜索历史文章即可下载。
【简简单单,一码解决】170多种优化算法求解30个现实世界的工程设计优化问题,让你的论文增色10倍(附Python代码)
点击链接跳转:
cec2022测试函使用教程及matlab代码免费下载
绘制cec2017/018/2019/2020/2021/2022函数的三维图像教程,SO EASY!
175种群智能优化算法python库
求解cec测试函数-matlab
解决12工程设计优化问题-matlab
求解11种cec测试函数-python
解决12种工程设计优化问题-python
用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)
沙场大点兵:24种信号分解方法(附matlab代码)
沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd