第2章 从从容容 游刃有余
重生2011,我是航天总师 作者:佚名
第2章 从从容容 游刃有余
在宋星野的指引下,陈鑫重构了函数逻辑,引入了一组全新的修正项。
那是一种他从未尝试过的、將几何与分析完美结合的优美算法。
接著,秦锐將它们敲进电脑里。
回车。
运行。
只见屏幕上的撞击率瞬间归零,紧接著,一条完美的木星探测轨道,如丝绸般在模擬的太阳系引力场中舒展开来。
秦锐和陈鑫都惊呆了,齐齐佩服的说道:
“厉害啊,原以为这个漏洞又要改一上午呢,没想到这么快就解决了!”
宋星野淡然一笑。
对於这俩初出茅庐的博士生来说,当然觉得这样的漏洞很棘手。
但对他这个在航天一线摸爬滚打二十年的人来说,这种级別的debug早已是从从容容、游刃有余了。
然而,这仅仅是个开始。
宋星野继续滑动滑鼠,去检查后面的內容。
很快,他又在matlab的日誌中,发现了一个鲜红的『报错框』。
担心有遗漏,他还把旁边的內容仔细捋了一遍,果然没发现任何错误。
这金手指简直火眼金睛啊!
既能第一时间快速、精准的锁定漏洞,还没有遗漏,可比自己一行一行校对省事多了。
“这里停一下……引力常数、初始矢量、积分步长都没错,但我们忽略了木星引力在长期积分中的共振效应。”
宋星野打眼一瞧,很快对症下药给出了思路,他指著自己视野中『標红』的內容说:
“从这里,在飞掠木卫二的近拱点时,由於浮点数截断误差累积,探测器的实际高度会比理论高度低2公里。”
“在浩瀚的太空中,2公里微不足道,但在引力弹弓的极限操作中,这2公里就是生与死的界限,明白吧?”
秦锐和陈鑫也不是猪队友,自然一点就通,立即恍然大悟。
陈鑫连忙去改数学公式。
秦锐则摘下眼镜,胡乱的用衣角擦了擦,一脸好奇的问:
“星野,神了啊!这段公式逻辑这么绕,你就在边上瞟一眼,连草稿都不打就看出问题了?之前咋不知道你有这本事?”
宋星野微微一顿。
怎么解释?
告诉他们,那段公式在自己眼里,就像一个正在喷血的大动脉,想不注意都难?
“直觉。”
宋星野敷衍的回了一句,隨即神色一肃,强行將话题拉回正轨:
“老秦,现在的重点是怎么在48小时內改完。我大概扫了一遍,发现咱们的方案,能优化的地方不少,起码有二、三十处吧。”
“多少?二三十处!”秦锐叫了一声,“咱们的方案这么差劲吗?”
宋星野默默点头。
他只看到视野中,此起彼伏的飘浮著红色小方框。
全是报错!
“宋师兄,那……怎么改?”
陈鑫刚改完上一个bug,终於抬起头,现在已经彻底服气了。
但仍不免焦虑道:
“现在的架构是基於遗传算法的全局搜索,要大改的话,连底层积分器都要改动了,很多的优化策略也要推倒重来,很麻烦的……”
“那就推倒重来。”
宋星野果断说道。
秦锐张大了嘴巴,“还剩不到48小时了啊,闹呢?”
“这种题目,要想在有限燃料下,让探测器遍歷木星系统,使用遗传算法本来就是捨近求远,完全是依赖电脑的暴力穷举来寻找轨道。”
宋星野毫不掩饰自己对这种解题方式的鄙夷,
“用电脑像无头苍蝇一样乱撞,直到撞出一条路?这种靠堆砌算力、暴力穷举出来的轨道,根本毫无物理学的美感,只有书呆子才会用!”
秦锐弱弱地插了一句:“可是……用遗传算法解题,当初好像是你提出来的?”
“噢,是吗?那我收回刚刚的话。”
宋星野气势一滯,尷尬地挠了挠头。
陈鑫连忙打圆场:“那不用遗传算法,用什么?”
宋星野立即正色道:
“对於木星系统这种多卫星、多体引力的环境,用微分修正法配合庞特里亚金极值原理,更合適。”
听到这两个名词,秦锐和陈鑫都愣了一下。
理论在课本上见过,但真正敢在竞赛里工程化落地的,凤毛麟角。
因为逻辑变换太复杂了。
为了省事,大家都是用遗传算法,编译好模型后、交给电脑一个个试错就行了。
秦锐心里没底:“这能行吗?咱们时间可不多了。”
宋星野道:“正是因为没时间了,才要挑战一下捷径。”
见状,秦锐和陈鑫也不囉嗦了,反正听安排就是了。
宋星野將白板擦掉后,马克笔在板面上飞速游走。
他將微分修正法与极值原理拆解,大胆引入了庞加莱截面与傅立叶变换,构建出一套全新的算法骨架。
两人虽然听得云里雾里,但隨著推导深入,眼睛却越听越亮。
遗传算法就像是在沙滩捡贝壳,让电脑一颗颗拿起来比对,累死累活,计算速度全靠电脑的算力;
而新算法等於是製造了一把筛子,通过一组组极其优雅的解析不等式,將数据倒进去,不符合条件的瞬间被过滤掉,只剩下最完美的『珍珠』。
简单討论过后,宋星野给秦锐、陈鑫安排好分工,再次忙碌起来。
他们只有两天时间去折腾,必须得爭分夺秒。
“老秦,把matlab的並行计算工具打开,现在要调用实验室所有空閒机子的算力!”
宋星野在一台电脑前忙活著,头也不回地喊道。
“啊?哦!好!”
秦锐此时已经完全沦为了工具人,手忙脚乱的去操作伺服器终端。
“陈鑫,你帮我查一下喷气推进实验室在2009年发布的关於伽利略號探测器最后阶段的数据,我要验证一个引力模型参数!”
“知道了宋师兄。”
陈鑫连忙回復。
他有一种怪异的感觉,觉得宋师兄此刻展现出的状態,太像自己的导师了……
不对,甚至比他导师那种长江学者还要专业,还要压迫感十足。
三小时后。
“搞定!”
秦锐按照宋星野和陈鑫写出的算法,敲下最后一个符號,长舒了一口气。
宋星野向后一仰,靠在椅背上,“跑全流程试试。”
秦锐紧张的按下回车。
空天楼的实验室里,三台工作站同时发出了轰鸣。
进度条飞快地向前推进。
t+100天……木卫二飞掠,成功。
t+200天……木卫三飞掠,成功。
t+400天……木卫四最终入轨,锁定!
屏幕上跳出了最终的结算数据:
【ess】
【总脉衝?v:1600m/s。】
“1600?”
秦锐看著那个数字,眼珠子差点掉出来,“臥槽!”
“多少?”
陈鑫也冲了过来,激动的盯著屏幕,“1600?我记得昨天翻论坛帖子,暂列第一的北航团队,成绩是1550m/s?之前是差距15%,现在快追上了啊!”
“宋神太牛了啊!”
不知不觉中,秦锐这个工具人连称呼都变了。
宋星野看著已经乐傻了的两位队友,嘴角微扬:
“还差点火候,接下来要继续优化,没准咱们能拿一枚金牌回来?”
一听到金牌,秦锐和陈鑫俩人更兴奋了。
若是昨天,这简直是痴人说梦;
但现在,奇蹟似乎触手可及……
正当仨人摩拳擦掌,准备一鼓作气把方案改完的时候,秦锐的肚子先是咕嚕嚕叫起来,紧接著宋星野和陈鑫的肚子也叫了。
仨人尷尬的对视一眼,发现不知不觉已经过去了一上午。
“咳,人是铁饭是钢,还是先吃饭吧,下午再忙活?”秦锐尷尬一笑。
“走唄,去二餐厅?”陈鑫提议。
宋星野却道:“去南街吃麻辣烫吧?”
秦锐一愣:“麻辣烫?昨天不是刚去了,又吃啊,你腻不腻?”
“就想这一口。你们去不去?不去我自己去了。”
毕业没几年那条街就被拆了,宋星野可是许多年没尝过那家麻辣烫了,自然是馋得心痒痒了。
闻言,秦锐和陈鑫都追上来,笑道:“成成成!听你的,中午就吃麻辣烫!”
第2章 从从容容 游刃有余
在宋星野的指引下,陈鑫重构了函数逻辑,引入了一组全新的修正项。
那是一种他从未尝试过的、將几何与分析完美结合的优美算法。
接著,秦锐將它们敲进电脑里。
回车。
运行。
只见屏幕上的撞击率瞬间归零,紧接著,一条完美的木星探测轨道,如丝绸般在模擬的太阳系引力场中舒展开来。
秦锐和陈鑫都惊呆了,齐齐佩服的说道:
“厉害啊,原以为这个漏洞又要改一上午呢,没想到这么快就解决了!”
宋星野淡然一笑。
对於这俩初出茅庐的博士生来说,当然觉得这样的漏洞很棘手。
但对他这个在航天一线摸爬滚打二十年的人来说,这种级別的debug早已是从从容容、游刃有余了。
然而,这仅仅是个开始。
宋星野继续滑动滑鼠,去检查后面的內容。
很快,他又在matlab的日誌中,发现了一个鲜红的『报错框』。
担心有遗漏,他还把旁边的內容仔细捋了一遍,果然没发现任何错误。
这金手指简直火眼金睛啊!
既能第一时间快速、精准的锁定漏洞,还没有遗漏,可比自己一行一行校对省事多了。
“这里停一下……引力常数、初始矢量、积分步长都没错,但我们忽略了木星引力在长期积分中的共振效应。”
宋星野打眼一瞧,很快对症下药给出了思路,他指著自己视野中『標红』的內容说:
“从这里,在飞掠木卫二的近拱点时,由於浮点数截断误差累积,探测器的实际高度会比理论高度低2公里。”
“在浩瀚的太空中,2公里微不足道,但在引力弹弓的极限操作中,这2公里就是生与死的界限,明白吧?”
秦锐和陈鑫也不是猪队友,自然一点就通,立即恍然大悟。
陈鑫连忙去改数学公式。
秦锐则摘下眼镜,胡乱的用衣角擦了擦,一脸好奇的问:
“星野,神了啊!这段公式逻辑这么绕,你就在边上瞟一眼,连草稿都不打就看出问题了?之前咋不知道你有这本事?”
宋星野微微一顿。
怎么解释?
告诉他们,那段公式在自己眼里,就像一个正在喷血的大动脉,想不注意都难?
“直觉。”
宋星野敷衍的回了一句,隨即神色一肃,强行將话题拉回正轨:
“老秦,现在的重点是怎么在48小时內改完。我大概扫了一遍,发现咱们的方案,能优化的地方不少,起码有二、三十处吧。”
“多少?二三十处!”秦锐叫了一声,“咱们的方案这么差劲吗?”
宋星野默默点头。
他只看到视野中,此起彼伏的飘浮著红色小方框。
全是报错!
“宋师兄,那……怎么改?”
陈鑫刚改完上一个bug,终於抬起头,现在已经彻底服气了。
但仍不免焦虑道:
“现在的架构是基於遗传算法的全局搜索,要大改的话,连底层积分器都要改动了,很多的优化策略也要推倒重来,很麻烦的……”
“那就推倒重来。”
宋星野果断说道。
秦锐张大了嘴巴,“还剩不到48小时了啊,闹呢?”
“这种题目,要想在有限燃料下,让探测器遍歷木星系统,使用遗传算法本来就是捨近求远,完全是依赖电脑的暴力穷举来寻找轨道。”
宋星野毫不掩饰自己对这种解题方式的鄙夷,
“用电脑像无头苍蝇一样乱撞,直到撞出一条路?这种靠堆砌算力、暴力穷举出来的轨道,根本毫无物理学的美感,只有书呆子才会用!”
秦锐弱弱地插了一句:“可是……用遗传算法解题,当初好像是你提出来的?”
“噢,是吗?那我收回刚刚的话。”
宋星野气势一滯,尷尬地挠了挠头。
陈鑫连忙打圆场:“那不用遗传算法,用什么?”
宋星野立即正色道:
“对於木星系统这种多卫星、多体引力的环境,用微分修正法配合庞特里亚金极值原理,更合適。”
听到这两个名词,秦锐和陈鑫都愣了一下。
理论在课本上见过,但真正敢在竞赛里工程化落地的,凤毛麟角。
因为逻辑变换太复杂了。
为了省事,大家都是用遗传算法,编译好模型后、交给电脑一个个试错就行了。
秦锐心里没底:“这能行吗?咱们时间可不多了。”
宋星野道:“正是因为没时间了,才要挑战一下捷径。”
见状,秦锐和陈鑫也不囉嗦了,反正听安排就是了。
宋星野將白板擦掉后,马克笔在板面上飞速游走。
他將微分修正法与极值原理拆解,大胆引入了庞加莱截面与傅立叶变换,构建出一套全新的算法骨架。
两人虽然听得云里雾里,但隨著推导深入,眼睛却越听越亮。
遗传算法就像是在沙滩捡贝壳,让电脑一颗颗拿起来比对,累死累活,计算速度全靠电脑的算力;
而新算法等於是製造了一把筛子,通过一组组极其优雅的解析不等式,將数据倒进去,不符合条件的瞬间被过滤掉,只剩下最完美的『珍珠』。
简单討论过后,宋星野给秦锐、陈鑫安排好分工,再次忙碌起来。
他们只有两天时间去折腾,必须得爭分夺秒。
“老秦,把matlab的並行计算工具打开,现在要调用实验室所有空閒机子的算力!”
宋星野在一台电脑前忙活著,头也不回地喊道。
“啊?哦!好!”
秦锐此时已经完全沦为了工具人,手忙脚乱的去操作伺服器终端。
“陈鑫,你帮我查一下喷气推进实验室在2009年发布的关於伽利略號探测器最后阶段的数据,我要验证一个引力模型参数!”
“知道了宋师兄。”
陈鑫连忙回復。
他有一种怪异的感觉,觉得宋师兄此刻展现出的状態,太像自己的导师了……
不对,甚至比他导师那种长江学者还要专业,还要压迫感十足。
三小时后。
“搞定!”
秦锐按照宋星野和陈鑫写出的算法,敲下最后一个符號,长舒了一口气。
宋星野向后一仰,靠在椅背上,“跑全流程试试。”
秦锐紧张的按下回车。
空天楼的实验室里,三台工作站同时发出了轰鸣。
进度条飞快地向前推进。
t+100天……木卫二飞掠,成功。
t+200天……木卫三飞掠,成功。
t+400天……木卫四最终入轨,锁定!
屏幕上跳出了最终的结算数据:
【ess】
【总脉衝?v:1600m/s。】
“1600?”
秦锐看著那个数字,眼珠子差点掉出来,“臥槽!”
“多少?”
陈鑫也冲了过来,激动的盯著屏幕,“1600?我记得昨天翻论坛帖子,暂列第一的北航团队,成绩是1550m/s?之前是差距15%,现在快追上了啊!”
“宋神太牛了啊!”
不知不觉中,秦锐这个工具人连称呼都变了。
宋星野看著已经乐傻了的两位队友,嘴角微扬:
“还差点火候,接下来要继续优化,没准咱们能拿一枚金牌回来?”
一听到金牌,秦锐和陈鑫俩人更兴奋了。
若是昨天,这简直是痴人说梦;
但现在,奇蹟似乎触手可及……
正当仨人摩拳擦掌,准备一鼓作气把方案改完的时候,秦锐的肚子先是咕嚕嚕叫起来,紧接著宋星野和陈鑫的肚子也叫了。
仨人尷尬的对视一眼,发现不知不觉已经过去了一上午。
“咳,人是铁饭是钢,还是先吃饭吧,下午再忙活?”秦锐尷尬一笑。
“走唄,去二餐厅?”陈鑫提议。
宋星野却道:“去南街吃麻辣烫吧?”
秦锐一愣:“麻辣烫?昨天不是刚去了,又吃啊,你腻不腻?”
“就想这一口。你们去不去?不去我自己去了。”
毕业没几年那条街就被拆了,宋星野可是许多年没尝过那家麻辣烫了,自然是馋得心痒痒了。
闻言,秦锐和陈鑫都追上来,笑道:“成成成!听你的,中午就吃麻辣烫!”