英才计划与中学生培养(二): 研发国产软件,培养学生建模能力

标签: 专栏 数值计算 建模

社区小助手 2023-03-01 16:53:17

点击链接查看:英才计划与中学生培养(一):卡脖子形势下,人才培养方向何在?

本文为北京大学重庆大数据研究院基础软件科学研究中心执行主任、北太振寰创始人卢朓副教授在中国科协组织的中学生创新人才培养论坛上的分享。


前文观点

WX20230301-162054@2x.png

      计算是求解数学模型的手段。可是对于中学生来说,很多算法的实现并非易事,因此可选择的可以求解的数学模型就很少了。例如,求函数的最大值的问题,往往只能对二次函数,三角函数来求解,稍微复杂的函数就不会了。


使用数值计算通用软件,消除中学生求解难的疑虑


      其实,很多数学模型对中学生来说还是比较容易掌握的。为了让学生建模的时候可以选择更多的模型,我建议学生使用数值计算通用软件来消除求解难的顾虑。


      借助数值计算通用软件,更有利于培养同学们的数学建模能力,我举几个例子:


      第一个例子是线性规划、二次规划和整数规划之类的模型。实际上,中学生已经接触过这样的问题了,但是往往局限在很小的数值范畴内。这种模型的威力并未得到充分展现。
      

      中学生如果使用数值计算通用软件来求解此类问题,那么就可以把更多精力放在体会这种数学模型的特点上。

化学反应式.png


      我在B站上给出了一个视频,展示了如何使用数值计算通用软件求解整数规划问题,我相信感兴趣的中学生可以很快学会使用计算机求解整数规划问题的方式。

      第二个例子与使用常微分方程的初值问题建模有关,这个可以和物理学科结合起来。我们可以通过测量物体在不同时刻的位移,把数据画出来,借助于常微分方程给出物理运动规律,这样就是在重走牛顿当年的发现之路。至于常微分方程初值问题的求解则可以借助数值计算通用软件来完成。

      第三个例子是关于机器学习和人工智能的算法。

朴素贝叶斯算法.png

      我在B站上给出了如何使用数值计算通用软件读取Excel数据,然后如何使用朴素贝叶斯来判断西瓜好坏的例子,也可以供中学生学习。

      总之,我建议中学生借助数值计算通用软件来了解读取数据、数学建模、数值计算以及计算结果的可视化等环节,然后选取自己感兴趣的部分多下功夫,其它环节则可以通过数值计算通用软件具有的内置函数以及插件来完成。

      参加“英才计划”的学生不一定都要找现实中的问题来做数学建模,还可以通过阅读文献来学习。如果对数学或者其他学科的某些定理和知识点感兴趣,可以通过数值计算通用软件来验证,加深对这些定理的理解。 这样的计算不能代替证明,但是帮助大家体会这个知识点的含义。

费马小定理.png

      通过“英才计划”,我希望学生在多个方面有所收获,如:


      1.提升搜集、理解、组织数据的技能,数学建模能力,团队协作能力以及论文写作能力;

      2.培养定量研究发展变化规律的习惯,培养好奇心、想象力、创造力和表达力;

      3.了解计算机算法和原理、数值计算通用软件的基本用法,对数学知识的用途有更深的认识等。


从数值计算通用软件的推荐谈开去:“被禁”以后,我们该做些什么?


      科学计算已经成为与理论和实验并列的科学研究的基本手段。科学计算软件可以分成两种类型:专用型和通用型。

      通用型科学计算软件是开发工业软件的重要基础性工具,长期以来,这一部分的市场由国外公司垄断。通用型数值计算软件就好像连接各个工厂的高速公路一样,是数值计算软件中的基础设施。有了高速公路的连接,工厂的原材料才能运进来,生产的产品才能更方便地送到用户手里。

      在向参加“英才计划”的学生推荐数值计算通用软件时,我最初考虑的是MATLAB。但由于这是一款商业软件,我担心购买软件会给学生带来额外的经济负担,所以并未选择。

      2020年,美国商务部宣布新增33 家中国公司及机构列入 “实体清单”,中国大陆共有 13 所高校被列入该清单,分别为哈尔滨工业大学、哈尔滨工程大学、中国人民大学、北京航空航天大学、西安交通大学、西北工业大学、四川大学、电子科技大学、湖南大学、国防科技大学、同济大学、南昌大学、广东工业大学。MATLAB 所属公司 MathWorks 中止了对以上高校的正版授权。

      这让我为当初自己的选择感到庆幸,也让很多人意识到通用型数值计算软件是一个“卡脖子”技术,没有这个技术,我们自己开发的专用软件或者算法就无法得到广泛的应用。但当时我仍想着:好在,我们还有Python可以使用。

      可在俄罗斯-乌克兰战争爆发后,据相关报道显示“目前已经有多达30个开源项目加入了对俄罗斯的抵制,其中甚至包括亚马逊(AWS Terraform modules)和Oracle等科技巨头的项目,也不乏MongoDB、pnpm、es5-ext、Drupal、Redis Desktop Manager等流行项目”。这让我进一步认识到:这类开源软件的主导权如果是掌握在别人的手里,仍然蕴藏着危险。

      事实上,中国的基础数学和理论数学研究在国际上还是处于领先地位。在涉及具体的算法或专用型数值计算软件领域,我们中国的科学家也取得了很好的成绩,在有关算法的顶级杂志上,中国人发表论文的数量和质量都位于前列,有很多算法被国外的通用型数值计算软件集成,得到了广泛的应用。

      但是我们缺乏像MATLAB这样的数值计算通用软件。这是为什么呢?

      因为,通用型的数值计算软件的开发需要耗费大量的时间,需要投入大量的人力物力,无法在短期内做出高精尖的成果。研发过程中需要有关键的技术基础,要掌握核心关键的规律、知识和方法,这些都只能通过“学中干”和“干中学”相结合才能获得。

      工业软件可以说是现代产业体系之魂。目前,欧美的工业软件几乎已经渗透了所有工业领域的核心环节。发展具有自主知识产权的工业软件刻不容缓,对掌握我国产业发展的主导权,增强工业体系的韧性和抗打击性都非常重要。

      而通用型数值计算软件的研发意义尤为重大:它不仅自己就是一个工业软件,还能够成为其他工业软件的底座,防止国产工业软件被釜底抽薪;同时,数值计算通用软件也是一个非常好的创新平台;正如前文所述,此类软件对于人才培养也至关重要。

      通用型数值计算软件的成功研发,将是对人类文明的贡献,也是国家软实力的标志之一。因此,虽然困难重重,我和其他志同道合的伙伴们还是决心开发具有自主知识产权的通用型数值计算软件,破解“卡脖子”问题。

      (未完待续)


作者简介

图片1.png


1245 1 1 收藏 回复

回复

红枣红枣 2023-03-01 #1

蹲来了后续。对于中学生而言,确实可以借助类似数值计算软件,从而把精力放在其他自己更感兴趣也力所能及的部分。

回复

重置 提交