在数学建模中学MATLAB

为期三周的数学建模国赛培训昨天正式结束了,还是有一定的收获的,尤其是在MATLAB的使用上。

1. 一些MATLAB的基础性东西:

  元胞数组的使用:http://blog.csdn.net/z1137730824/article/details/39206823

  对于任意文件夹的同一格式的图片的批量读取:http://blog.csdn.net/haizimin/article/details/39646595

  关于MATLAB在微分/偏微分方程以及其他高等数学问题中的应用。

  关于MATLAB在优化问题的应用、自定义启发式贪心搜索算法以及智能优化算法的应用。

  关于MATLAB在图像处理中的应用以及GUI的制作。

  关于MATLAB在统计中的应用,以及与Excel的结合使用。

2. 在数学与统计中的应用

  这部分是建模中的基础,也是MATLAB的强项所在。

  其实很多的问题仅仅需要一个内置的函数就可以解决(dsolve,ode45,diff,kmeans,fminunc,anova1,var等),但是重点其实是理解背后的数学与统计背景,

  这时就需要比较深厚的数学知识,现在来看,这方面我是比较欠缺的。尤其是对于统计这一块,方差分析、因子分析、主成分分析、回归分析,等等,都不是很熟悉。

  所以其实函数要用到的时候临时查一下用法就行,重点还是背后数学功底的支撑。

3. 智能优化算法

  在解优化问题时,MATLAB除了可以胜任Lingo所能做的所有工作外,在编写智能优化算法方面其实也特别有优势。

  MATLAB的诸多智能算法工具箱已经足够强大,但是,很多时候我们还需要自己来编写智能算法的流程代码。

  典型的有,遗传算法、神经网络、模拟退火,粒子群算法,元胞自动机等,这些算法最好有时间还是自己实现一遍,就用MATLAB写,也可以更深刻地理解其中的精髓所在。

4. 图像处理

  第三次模拟之后又唤起了我对图像处理的兴趣。

  而相比OpenCV来说,MATLAB对图像的处理与操作更方便简单,很多函数都是封装好的。

  MATLAB对于图像的处理甚至是万能的:http://blog.csdn.net/iaiti/article/details/17094027

  针对我自己来说,必须先过一遍图像处理相关的理论知识,就看冈萨雷斯那本著名的教材,然后因为要练习C++的缘故,可以造一些自己认为有意义想要造的*。

  其实归根到底,图像处理的精髓还是在数学,所以还是要夯实自己的数学功底。

  然后进阶过程,就是结合OpenCV和MATLAB,在图像和视频处理这块,多做点有意思的玩意出来。

5. 其他

  MATLAB的常用快捷键基本都熟悉了,程序设计中的逻辑能力也有了一定的提高。

  不过相对于MATLAB的强大来讲,我现在仅仅是接触到了冰山一角而已,例如对于程序的运行效率问题,几乎从来没有考虑过。

  就知道循环有时可以用向量化来提高效率,就是用fun系列的函数,例如:arrayfun。

  MATLAB的学习,任重而道远。

上一篇:Spring boot 官网学习笔记 - Spring Boot 属性配置和使用(转)-application.properties


下一篇:JDBC-Eclipse & Mysql & Servlet实现