有很多关于MATLAB是否可以被取代、以及可以被什么软件取代的讨论。这里抛砖引玉,简单讨论一下。
首先需要明晰一点,就是:当我们在说取代时,是只取代MATLAB的部分功能(优化?数据分析?深度学习?仿真?),还是全部功能(MATLAB编程语言+领域工具箱+SIMULINK)?
截至2018a版本,MATLAB的工具箱包括:
- 应用程序部署Application Deployment(3)
- 代码生成Code Generation(7)
- 计算生物学Computational Biology(2)
- 计算金融Computational Finance(8)
- 控制系统Control Systems(8)
- 数据库访问和报告Database Access and Reporting(2)
- 图像处理和计算机视觉Image Processing and Computer Vision(6)
- 数学,统计和优化Math, Statistics, and Optimization(9)
- 并行计算Parallel Computing(2)
- 信号处理和无线通信Signal Processing and Wireless Communications(11)
- 测试与测量Test and Measurement(5)
鉴于现代工程设计的复杂性,一定会涵盖多个领域(软件、硬件、机械、电气、图像与机器视觉、人工智能、大数据等等),所以,我猜测,我们可能很难针对一个大系统设计时,不同功能模块分别采用来自不同厂商的商业软件或者开源软件,因为这样的开发,缺乏效率、结果没有保证。
作者l眼界有限,不知在一个商业化的大系统——比如汽车、飞机、航天这种复杂设计——的设计、仿真与开发过程中,除去MATLAB,是否还有其他可以像MATLAB这样普遍覆盖多个领域的选择?
MATLAB的特点在于,其积累的工程经验和领域知识已经固化在工具箱函数和SIMULINK模块中;再加上具有编程语言的灵活性,成就其难以替代的地位。
商业化系统设计需要商业软件的支撑和效用背书,这个毫无疑问。没有哪个开源软件会为商业化开发结果负责。
可以看看MATLAB官方发出的汽车行业的年会的广告截图,了解一下MATLAB的客户体量和会议主题,进而再考虑,可以取代么?用什么取代?
在细分领域,一定会有超越MATLAB的商业软件,这个没有疑议。
以上供大家商榷。
也可以稍微看看MATLAB历史,了解一下他们这条护城河挖了多久、挖了多深。
吃小羊:MATLAB编年史zhuanlan.zhihu.com