MATLAB不能使用。有可行的替代方案吗?这幅画来自cgtn.com
撰文 |仲英杰责编 |叶水送
“由于美国政府的政策,玛氏将禁止向哈尔滨工业大学和哈尔滨工程大学提供技术和客户支持服务。”6月10日,美国软件公司Mathwork客户支持部的员工在给哈尔滨工业大学学生的回复邮件中说。
从6月6日起,哈尔滨工业大学和哈尔滨工程大学的师生不能使用数学软件MATLAB。不幸的是,在未来,这两所学校将无法在他们的论文中展示任何使用MATLAB获得的图表和数据[1]。这是自今年5月底哈尔滨工业大学和哈尔滨工程大学被列为美国实体以来,第一次感受到“迎头痛击”。
对此,一些国内学者评论说,Mathwork公司的行为“违反了合同”并且“没有可信度”
Mathwork的禁令对哈尔滨工业大学和哈尔滨工程大学的师生在工程领域的研究中使用MATLAB软件有什么影响?如何应对这些限制.《知识分子》向一些科学和工程学者和学生了解他们在教学、研究和学习中使用的MATLAB和其他工具,也许能为这次活动提供更多的视角和启示。
MATLAB 在国内理工科院校使用情况如何?
哈尔滨工业大学和哈尔滨工业大学被禁止使用工程中常用的数据计算和仿真软件MATLAB。这是什么样的软件?
MATLAB软件徽标,源维基百科
MATLAB的全称是MATrixLABoratory,这是一个由美国Mathwork公司拥有的商业数学软件。它主要用于数值计算,并使用许多附加工具箱来扩展其功能,涵盖数学和优化、控制系统设计和分析、图像处理等领域。另外,MATLAB有一个强大的软件包Simulink,应用于系统仿真[2]。
“受疫情影响,我无法返回学校。实验的最初部分被改为模拟。这部分工作主要是在MATLAB仿真平台上完成的哈尔滨工业大学电气工程学院的应届毕业生梁韬(化名)告诉《知识分子》,在MATLAB仿真平台上,梁韬绘制了相关功能的三维图,并用Simulink建立了仿真模型。
此外,学校的一些教学工作还涉及到MATLAB工具,如《信号系统》,一些课程报告要求MATLAB建立仿真模型梁韬接着补充道,“但学校教学中涉及的仿真软件仍然相当多样化,还将使用一些专业性很强的软件。”
哈尔滨工业大学材料专业的另一名学生对《知识分子》说,他不怎么使用MATLAB,主要是用来绘图的。不过,他也表示,在《传输过程》和其他课程中,有一些包含复杂方程的数学模型,通常用MATLAB求解。
在没有被列入实体列表的工科院校中,MATLAB也有一定的用户。中国石油大学化学工程双学位和计算机辅修专业的应届毕业生郭叶(化名)告诉《知识分子》,“我的两个专业的毕业设计都是用MATLAB完成的。化工专业的毕业设计是用MATLAB的Simulink来模拟田纳西-伊斯曼化工过程(te过程,即模拟中小型化工厂的动态操作过程),然后用MATLAB编写代码来建立软测量的预测模型(即建立可测变量与不能直接测量的变量之间的关系)。计算机专业的毕业设计采用MATLAB语言编写程序,显示和分析分子动力学模拟数据
中国石油大学数学老师沈阳(化名)对《知识分子》说,他的研究主要集中在符号计算上。近年来,他利用MATLAB进行数学建模和一些数值模拟,并在本科教学中传授一些使用MATLAB的基本方法。
在许多理工科教师和学生的眼中,MATLAB被视为科研和学习的必备“工具”。然而,经过一次小规模的调查,我们发现我国教师和学生对这类工具的使用是多样化的。许多科学和工程学科都有其他专门的计算或模拟软件。例如,学习流体力学的专业可以选择使用OLGA(动态多相流模拟器)进行多相流和传热,化学工程等专业可以使用GAMS(一种操作规划分析软件)进行编程计算,环境工程可以使用Ecopath(一种生态系统模型软件)进行水生生态食物链的模拟。
MATLAB可能只是科学和工程中使用的众多工具之一。当然,工具的选择也与不同研究者的研究方向有关,但总的来说,这种研究工具的使用是多样的。
MATLAB不能使用,有无可行的替代方案?
由于MATLAB不是科学研究人员、教师和学生的唯一选择,他们被禁止进入实体列表上的大学,他们可以用其他软件代替MATLAB吗?“近年来,我只是在学生的推荐下才开始使用MATLAB。以前我主要用的是Mathematica(美国Wolfram公司拥有的商业数学和工程计算软件,和MATLAB一样有名),沈阳说:“一般来说,Mathematica可以做MATLAB能做的符号计算。"
那么,Mathematica能完全取代MATLAB吗?
佐治亚理工学院计算机科学专业的博士生韩枫(化名)认为,“数学和MATLAB有不同的方向。Mathematica的设计更“抽象”和“智能”。MATLAB更适合工程设计。里面的Simulink和其他仿真包基本上是不可替代的。”
有没有其他的“开源”软件,比如Python、R语言、Octave等等。当许可证在MATLAB中被禁用时?一位在美国一家制药公司做数据分析的研究员说,“当时,在中国学习时,老师们经常教MATLAB,但在国外学习后,他们基本上用的是R和Python。特别是,这两种语言的代码基本上是开源的,便于学术交流和共享,更有利于开放存取和出版。此外,我觉得R和Python有一个更好的生态系统,被很多人使用。在出现问题时,调试也很方便。”
“数值计算领域的经典教材,如《Matrix Computation》,通常是用MATLAB语言编写的。当我做数值计算时,我经常使用MATLAB,所以编写的代码更接近书本或论文中的公式,便于比较、检错和后续使用,”韩枫说。“我还试图将工作链接转换成Python,并使用numpy和scipy(Python中两种常用的数值计算和数据分析库),但我觉得不如用MATLAB编写方便,可能是因为我习惯了后者。”
哈佛医学院神经生物学博士后邓夏贤(化名)认为,“80%的MATLAB主要是普通的数学计算,基本上可以用r、Python等工具代替,剩下的20%很难代替,主要是Simulink,涉及一些工业仿真和建模。事实上,这一部分并不是完全不可替代的,但它将非常麻烦和不方便。”
从以上观点来看,虽然MATLAB作为一个用户群体有许多“选择”,可以缓解这种迫切的需求,如使用数学商业软件Mathematica和开源工具,但真正替代MATLAB仍有一些困难。
MATLAB被禁用,给我们带来的思考
美国政府和MATLAB公司的这一波“老虎式操作”可能会让人“一时糊涂”,但冷静思考仍有许多问题值得思考。
第一个问题是,是不是因为美国公司没有信誉,哈尔滨工业大学和哈尔滨工程大学购买的正版软件被禁止了?北京大学讲师陈松凯教授认为,美国数学公司对两所大学的MATLAB行为的禁令“违反了合同”,“没有可信度”。他指出,Matlab以前在中国的工程营销方面做得太好了,它目前的行为“在商业上不合逻辑”。
另一位学者不同意这种观点,认为这应该属于“不可控制的力量”,更不用说违约了,也是数学本身的一个商业损失。
第二个问题是,尽管科学和工程学者和学生有各种各样的研究工具,但大多数都是美国公司的产品,如专门研究计算流体动力学(CFD)的商业软件Fluent和工程专业学生通常需要的工业绘图软件AutoCAD。
虽然目前使用这些产品是“安全的”,但如果将来发生更糟糕的事情,我们怎么能不被像MATLAB这样的“禁令”所控制呢?
在科学研究和工业应用软件领域,也许我们应该走上“自主创新”的道路。即使道路漫长而艰难,我们也应该“上下搜索”,以避免将来“被掐”的痛苦。
参考资料
[1]http://www . jiqizhixin.com/articles/2020-06-11-7
[2]http://zh . m . Wikipedia . org/zh-cn/MATLAB