电影《火星救援》计算救援轨道时使用超级计算机是否现实?航天器的发射,超算能起那些作用?
17 个回答
【太长了;没空读】:不用,你想算在家都能算
【最后有一点更新。。。。】
我擦,终于遇到“我等你们问这个问题很久了”这种情况了!《火星救援》电影我也就看了6-7遍吧。我不是原著党,但是对Andy Weir这部作品是非常佩服的。看完电影以后也是对剧中那个有些神神叨叨的轨道科学家Rich Purnell印象深刻。
而且我当时看着Rich Purnell蜷缩在超级计算机机房里等结果的时候就想过:用不着吧?这个火星救援轨道其实如剧中描述,就是一个引力弹弓加速。难点无非是正确加速的点火时间长度。NASA历史上玩过的复杂轨道多了去了,如果这都要用超算,像旅行者这样的项目当年是怎么算的?
稍微搜了一下,发现我的直觉是对的。但是结果让我很惊讶。。。这个救援轨道在剧中被叫做"Rich Purnell机动"。如下图和下面的视频:
Hermes飞船轨道https://www.zhihu.com/video/1002619942713139200支持我判断的原因是,我知道这个轨道是作者Andy Weir自己写程序在家里算出来验证过的,所以,应该是不需要剧中那么牛逼的超级计算机的。惊讶的是,这个轨道是Andy Weir自己算出来的!上面那个视频就来自作者自己的主页:
如果你感兴趣,上面还有不少关于原著的好东西。至于作者计算这个轨道所需的C++程序,真正计算的部分全都开源在了GitHub上:
如果你要想,你也可以自己去算算看。
当然,这个轨道是不是现实呢?答案是:基本是的!这是因为NASA的科学家研究了这个轨道!
来自NASA Glenn研究中心的科学家Laura Burke写了篇论文研究这个轨道。论文可以在这里下载到:
当然,这是科幻小说。作者发现Andy的假设很巧妙,这个假设是Hermes这个飞船可以以恒定的加速度 2mm/s^2 持续加速很长时间。要知道现实情况下,随着飞船质量不断变化,保证恒定的加速度难度很大。而这里就是科幻起作用的情况了!作者假设在2035年,离子推动的 The Variable Specific Impulse Magnetoplasma Rocket (VASIMR) 引擎早就可以应用在重达110吨的Hermes飞船上了。所以在这个假设下,计算可以在恒定的单位推进力下进行。
Laura使用了COPERNICUS这个三维轨道优化工具进行了计算。
直接说结论吧:书中给出的Hermes飞船进行火星救援的轨道符合物理原理,也符合Hermes这个级别的飞船的实际需要。连剩余燃料都是基本合理的。
那么有哪些问题呢?Rich Purnell机动会让Hermes飞船进入金星轨道以内,这个时候飞船和宇航员承受的辐射会很高。不过都假设电磁推动广泛应用了,就算小说里没写,也可以假设Hermes可以应付高辐射了吧。
最后,值得一提的是,航天科技发展了这么多年,基本的轨道设计其实并没有太多神秘可言了。NASA甚至都把一个功能很强的项目设计软件开源了,叫 General Mission Analysis Tool (GMAT)
如果你感兴趣,可以在这里下载,安装,自己上手玩:
--------- 补充 -----------
由于我不是航天领域和轨道计算的专业人士,以防误导人,再稍微较个真:
1. 上面的回答说的是火星救援这个电影里Hermes飞船救援任务轨道的情况。在一些特定的假设下,这个轨道设计不需要很强的计算能力。
2. 根据我有限的了解,我知道很多情况下,航天器轨道设计和优化是不需要大型计算机的。
3. 但如果你有计算资源和合适的程序,有大型计算机是没人拦着你的。
4. 我默认肯定是有我不了解的复杂或者精确情况需要使用更强的计算资源做优化的。
关于火星救援中这条轨道的问题,可以看下面这个报告,写得很详细:
如果你对科学设计航天器轨道的细节有兴趣,我找到了一篇关于行星际航天器复杂轨道设计的硕士论文。这是一个假想的到木星Trojan群小行星的任务。由于是硕士论文,基础,假设,工具都讲得很清楚:
这篇论文里使用了欧空局开放的PyKEP和PyGMO工具包来设计和优化轨道,这两个都是底层C++实现,然后用Python做界面的工具,也都是公开的。主页里提供了类似的轨道优化作为例子,感兴趣的可以在自己电脑上跑一次,就知道需要多久了:
其实对我这个完全外行来说,今天搜了一下资料,发现之前没意识到的是航天器轨迹设计和优化 (Trajectory Design) 其实还真挺好玩的,而且有大量的公开的学术文章可以参考。
比如下面这个Delft大学2010年的一个硕士论文讨论了到太阳弓形激波区域和小行星的行星际任务的轨道设计,用的是自己写的Matlab程序。文章里也是有很多非常详尽的技术讨论,其中包括了很多优化算法的,想模拟退火,Genetic Algorithm,Differential Evolution这样的工具。
再比如Adelaide大学2012年的一个PhD论文,讨论的是一个非常低推进月球任务的轨道设计:
里面就提到了轨迹设计的一个长期目标是对任务的不同阶段进行同时的优化,而这个的计算量似乎不小,作者只是说了未来可以用大型计算机的并行任务处理。
还有一篇George理工大学的PhD论文,讨论了航天器轨迹设计里面的算法改进。浏览了一下,似乎主要是通过GPU算法提高效率和精度。作者表示计算效率已经高于某些大型计算机了:
总之就是很好的一个领域!
要算的细致点的话,行星的引力扰动得有吧,轨道本身时间很长,想精确一点的话一条轨道跑个几十分钟挺正常的。
然后主要用超算的理由是:优化求解。
毕竟你要老老实实用两次变轨啊,霍曼转移啊之类的,算起来省事但是飞船飞的慢啊。
就像你从一个地方到另一个地方,很简单。但是要给定出发时间,要求最快到达,那问题一下就复杂多了。
那茫茫太空中,火箭还可以多次变轨,怎么找一条最优的轨道当然上超算跑呗。
另外题主可能对超算有个误解,并不是说超算一定算的快啊,还得看使用了多少资源。正常的超算上都是同时在跑大量任务的。
假如就申请一个核的话那还真没你的个人电脑快。
没仔细看.jpg
Hermes用的是VASIMR引擎,工作在高比冲模式下。推力极小。相对于燃烧时间极短(近似为两次瞬间燃烧)的化学火箭来说,运行轨迹计算复杂得多。
超算绝对不是必要条件。还记得“你手里的iphone计算能力>1969年登月的NASA,你却用它打小鸟”么?
当你连续规划十几个甚至几十个变轨,并且精确算出每次变轨的窗口期,精度冗余,而且要考虑到飞船每次质量的变化,太阳风的作用,稀薄大气的影响,星球每处质量的不均衡,以及各大行星与恒星间的引力扰动对飞船的影响…
超级计算机不是必须,但能大大提高任务成功率小数点后的数字
玩过KSP的都知道。。。
要是只是优化个轨道。。。那是不需要的。。。。。
除非算法写的太垃圾
只要不是离太阳太近(强引力场形成的广义相对论效应),运行轨道都能靠牛顿三定律和高等数学解决。要不然几十年前的旅行者号怎么发出去的?
想要解释电影中使用超算的合理性是很容易的。
首先,这是突发情况,NASA的轨道设计团队需要尽快的找到一条可用轨道。
划重点,找到一条,这不是简单的普通行星探测按着霍曼转移走算算哪里点火点多久就完事了的轨道规划。
按照设定,这是从火星轨道回来飞在半道上,你得在燃料,补给允许的范围内,找到一条最快的回到火星的轨道,还得尽可能的降低火星轨道交汇的难度。
换句话说,这是要在几千上万条可能轨道里找到那条最好的…
我不认为普通个人电脑在算这么多轨道上需要花费的时间是可以接受的。(我甚至并不认为作品中选择的那条轨道就是最优解。虽然这轨道确实是可以存在的)
无论是原著还是电影,都用了一个“观众知道”的小手法来增加娱乐性
说白了这个就是让你看着爽的一个情节,计算的话,你想想当年加加林有586吗
原著中这样的情节是火星沙暴,为了引出下面的内容,作者把前几次在基地的时候火星沙暴的强度大大提升,让他们遭遇危险并丢下马大萌,以及在后面让马大萌展开与天斗其乐无穷的各色桥段
有意思的是,为了后面的内容硬核,作者在马大萌长途奔袭里遇到沙暴的设定里,又把火星沙暴的力量给改回去了,一个人,一台车,出门遇沙暴,强度全靠编2333333333
还有在花絮纪录片里面,nasa说了即使是地面作业服,也不可能那么轻薄
作为nasa协力的片子,这种硬伤如果真的是硬伤,就像蓝鲸有牙,霸王龙能揉眼睛,那是不可原谅的
可这里并不是,这里的关键在于“观众知道”
或者更确切地说是“知道的观众知道,不知道的观众知道也没用”
想要去了解其中信息量和航天知识的学习者、科研人员和爱好者们,一下子就知道你这么设计是故意的,所以反而不会挑你毛病,而对这玩意无所谓的看个爽的观众,你做得再翔实人家也不在乎的,那还不如就直接来爽的
有人问为啥不会挑毛病啊
我举另一个“观众知道”的例子,佳能广告
看下面这个图
你能说大哥不会用相机还胆敢给佳能拍广告吗
为啥他不看着取景器而要怼着左肩?
但是大哥在自己日常用的场景,比如说参加活动试拍拍的时候,是这样的,眼睛都换了
那么大哥为什么在广告里那么端着相机,因为好看啊
知道用相机或者哪怕只是想要买,手头里还没相机的人,都肯定知道这不是“犯错误”而是在摆pose而已,要不然他们真以为就算成龙傻,能傻到明明有取景器不看取景器的程度了?
而完全不知道单反的人,看到这个pose,哇还挺帅的,我买了之后会不会也拍起来这么帅被妹纸崇拜呢?
发现有同学没看清。。。。
那是电影的虚构。
60年代苏联发射一堆火星探测器用的什么计算机计算轨道? 既然这都行,你几十年后的PC机一样也行。
1969年进行阿波罗计划的时候,计算机的运算水平可能还比不上你手中的手机。
所以登月轨道怎么算,拿块大黑板手算啊!
坎巴拉太空计划有多体引力mod
别的不说了,要用就用呗,那哥们拿台笔记本电脑蹲在机房干啥?里面温度又低、风大、还有严重噪声与电磁辐射,通常除了偶尔维护必须要在local登录外,一般都是远程登录就可以了,就算是为了安全等因素考虑也有专用区域使用,完全没必要呆在机房里面。
讲道理一般用户使用超算不用搬着电脑跑到机房去,连到局域网内就可以了。我怀疑他跑机房去是因为要上传下载大量数据?这样直接传可能会比联网快。
用超算是现实的。但我们在美国用的超算都是在家里登陆就行啊,为什么要跑去机房??一脸懵逼
这问题,没有超级计算机前就能计算了。
不应该先问登录火星是否现实?