分享

清华姚班毕业生开发新特效编程语言,99 行代码背后的成长故事

 长沙7喜 2020-01-13

听说,自从家长带小朋友看完《冰雪奇缘 2》之后,女儿们每天都在施展艾莎公主的魔法,穿艾莎公主的裙子,无限循环《Let it go》。

然而,来自 MIT(麻省理工学院)的胡渊鸣同学在看完《冰雪奇缘》之后,用 99 行代码编译出了艾莎公主的冰雪魔法。

果然真正的计算机专业大佬,即便是看动画片也会思索雪的模拟算法。我们一起来看看这位大神究竟是何许人也~

胡渊鸣,毕业于清华大学姚班,MIT 人工智能实验室(CSAIL)的一名博士二年级学生,作为主要作者构建了计算机开源图形库 Taichi(太极)——一种新的 CG 特效编程语言。

如果你对影视效果了解,就一定知道 CG 特效制作有多复杂多昂贵。《阿丽塔:战斗天使》中,仅阿丽塔的一双眼睛制作周期就长达 16 个月,人物的个个方面都力求达到极致。

《冰雪奇缘》用 CG 特效制作,经费高达 1.5 亿美元!仅仅“过雪地”动作就需要花费一周的时间,影片的每一帧都是真金白银。

而胡渊鸣构建的 Taichi,彻彻底底将贵族式的 CG 编程语言打破了。
△白色:雪;红色:果冻;蓝色:水

对于这种普通的演化场景,一般优秀的 PC 操作手需要几分钟完成,而胡渊鸣能直接把速度提高 188 倍,并且编写的代码长度只有别人的十分之一!

难怪计算机图形学知名学者、北大教授陈宝权给予他高度评价:“给胡渊鸣同学点赞!一己之力开发了物理模拟编程语言 Taichi!像渊鸣这样如此投入写有影响力的开源代码实在是难能可贵。”

胡渊鸣的成长之路

在计算机领域成绩如此突出的胡渊鸣,小时候就表现出对编程、科技的兴趣:喜欢机械拼装模型,比如飞机模型、四驱车等,拆了装,装了拆,玩累了就看中央十台的科技节目。

第一次真正接触编程,胡渊鸣正读小学三年级:“我一个堂姐喜欢在家玩《仙剑奇侠传》网游,我看了觉得特别有意思。当时就想,我也要做出一个这样的游戏来。然后就开始有意识地接触这方面的书籍。刚好父亲就是大学信息学教师,帮我买了不少计算机方面的书。”

谈起编程的趣味性,他说,“计算机是我最大的爱好,我并不认为编程枯燥,你要是仔细琢磨,很有意思的。用一种新的算法数据结构优化、迅速地完成一个运算,都是很能带来愉悦感的。”

除了对计算机感兴趣,胡渊鸣的数学、物理知识也很扎实。为了学好计算机,他在初中就学习高中数学,在高中就开始学习大学的高等数学、写编程相关论文。

第十六届全国青少年信息学奥林匹克联赛中,高一的胡渊鸣获得全国一等奖并获得保送资格。第六届亚洲与太平洋地区信息学奥林匹克竞赛(APIO 2012)中,又荣获全国冠军(第一名)。在赛后采访中,他的指导老师倪震祥说:胡渊鸣之所以取得这样的成绩,与他的付出是分不开的。

“一个优秀的信息学奥赛选手,一周投入到竞赛上的时间,至少要有 20 个小时,重大比赛之前有时一天就要训练 10 多个小时,再加上正常学习,晚上我很少 12 点前睡觉。如果夜里有在线比赛,凌晨两点钟睡觉也很正常。”谈及自己的竞赛学习时间,胡渊鸣乐在其中。

正如爱因斯坦所说,“热爱”是最好的老师。胡渊鸣能够找到自己感兴趣的东西并持之以恒,在成长路上可谓百炼成钢。在夺得 APIO 全国冠军之后,胡渊鸣又分别获得 NOI 2012、ACM-ICPC 2013 长沙区域赛、ACM-ICPC 上海区域赛三项金牌。在清华读书期间,曾赴东京大学、斯坦福大学访学。博一期间,发表 6 篇顶级学术论文。关于 Taichi,已发表了多篇文章,并分别被 SIGGRAGH  2018、ICRA 2019、NeurIPS 2019、ICLR  2020 等顶会收录。

简直是我辈之楷模!

如何培养创造性思维

同龄人玩游戏的时候,胡渊鸣想的是如何自己做出有意思的游戏;大家看《冰雪奇缘》艾莎公主撒雪时,他思考如何构建新的物理编程语言。当一个人拥有创造性思维模式,他的未来注定不平凡。

创造性思维成就了胡渊鸣的清华之路,也成就了 Taichi那么,如何培养孩子的创造性思维呢?
1、保持好奇心

好奇心是创造性思维的源泉和动力,也是人类的天性。但小孩子的好奇往往是最多的,作为家长,应该多和孩子接触、交流,关心他们的小脑袋里“奇奇怪怪”的想法,并与孩子一起观察生活,制造问题情境。对于自己不是很了解的东西,不要轻易下判断,在确定答案正确之后再解答,同时引导孩子多问“为什么”。

2、训练发散思维

训练发散性思维有助于培养孩子的想像创造力。要想培养发散性思维,就要做到多角度思考问题。可以让孩子处于放松状态下,与他一起玩“成语接龙”、“造句”等联想游戏,比如在轻松的氛围下,问问孩子由“苹果”一词可以联想到什么,看他能不能想到“水果、乔布斯、维生素 C、红富士、牛顿、青色……”答案越多越好。如果他思维受限,可以适当鼓励、引导孩子进行创造性的想象。
3、手脑并用,全面发展
前苏联教育家苏霍姆林斯基说:“手使脑得到发展,使它更聪明,脑使手得到发展,使它变成创造的聪明工具。”手脑并用可以加强孩子的创造性思维。在孩子学习之余,可以带他们玩益智游戏(乐高、编程游戏)、手工制作(剪纸、折纸)、做家务、进行体育锻炼等,从而提高孩子的语言能力、实践动手能力、协调能力与思维能力等。

关于计蒜客


计蒜客——新型在线计算教育的倡导者。计蒜客以 K12 信息学为切入点,搭建了符合青少儿认知心理、教育心理的完整 K12 信息学制式教育体系。计蒜客团队汇集了国内顶尖信息学教育专家,用独有的伴随式的技术带着同学们亲身参与到计算机学科知识的学习中。让每一个参与学习的同学能感受到更有味的学习过程!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多