机械优化设计课本里的优化方法,在minFD.m
里有了挺不错的实现,代码不复杂,注释也比较清楚。你如果刚看完《精通 MATLAB 最优化计算》,这段代码结合书里讲的思路来理解,效果好,像是边学边练那种感觉。
文件minFD.m
用的是比较经典的有限差分法做设计变量的敏感度,挺适合做结构优化或者机械零件的参数优化。代码流程清晰,比如你有一个目标函数和一堆约束,用它就能直接跑出来最优解。
里面的函数用法不复杂,fmincon
这些都没绕太多弯子。调试起来也方便,响应也快。重点是你能看出书上讲的那些优化理论,怎么一步步落到代码上,蛮有成就感的。
建议你先把原理弄懂,再照着代码跑一遍。如果你是机械或者结构方向的学生,理解优化算法的过程会更扎实,之后写自己的代码也更有思路。
另外,下面这些链接也是我看完觉得还不错的资料,讲得比较细:
- MATLAB 最优化计算教程
- Matlab 最优化讲义
- 马昌凤最优化方法及其 Matlab 程序设计
- 最优化算法详解
- AWDO 算法在 matlab 中的单目标最优化求解源码
- 数控编程机械制造工艺优化
如果你刚入门 MATLAB 优化,或者想把课本知识转成实际代码,可以从minFD.m
开始试试,比较容易上手,练完你会发现自己理解多了不少。