SpaceX火箭回收中的凸优化方法
转载 2022-07-26 10:08 空中机器人前沿 来源:空中机器人前沿全文1967字,
预计阅读时间4分钟
原创 | 米轶泽
编辑 | 吕嘉玲
我们多多少少都曾听过类似的言论:实际控制系统绝大多数用PID就够了,少部分情况用MPC也能填补。那么事实真的如此吗?最近几年所诞生的新兴科技里,究竟有没有前沿控制理论的贡献?本期文章我们从运载火箭的控制入手,一起探究其中的奥秘。
最近几年,埃隆马斯克及其创立的一系列公司如 SpaceX, Tesla, Neuralink, 等等,可谓是万众瞩目的焦点,一时间风光无限。2018年的时候,SpaceX成功地实现了其自研重型运载火箭“猎鹰9号”(Falcon 9)的发射与回收。它是历史上第一枚可多次重复使用一级助推器的液体燃料运载火箭:传统的火箭在携带运载飞船到预定目标之后会自行脱落坠毁,而可回收火箭则可以在使用完成后安全返回地面进行第二次甚至第三次使用。“猎鹰9号”推翻了运载火箭只能一次性使用的思维定势,由此改变了商业航天时代的市场格局 [1]。
而值得注意的是,在猎鹰9号回收过程中,由Stephen Boyd教授主导开发的凸优化算法软件CVXGEN起了重要作用[2],帮助引导猎鹰9号火箭成功着陆完成回收。下面的视频形象地展示了火箭着陆的过程[3]:
那么凸优化是如何帮助火箭进行一级回收的?这项技术的难点何在?下面我们就来剖析一下背后的原理。
▌可回收火箭的软着陆问题
火箭在发射之后想要进行回收,就需要让火箭进行“软着陆”,也就是火箭在靠近地面的时候速度需要尽可能降低,从而最大程度地减小落地带来的冲击而保护火箭完成回收。其中最大的难点是怎样根据火箭的当前运动状态信息(位置、速度、姿态等),在线实时计算出发动机应该提供的推力大小和方向,以实现安全精确着陆,其最核心的技术是着陆段的制导算法[4]。
在可回收火箭中,实现这一目的主要依赖的是轨迹优化的方法:当火箭还在高空的时候根据火箭的运动规划出一条运动轨迹,由此来调整发动机的实时输出。因此,本质上来说,可回收火箭理论上的技术难点就是利用优化方法对轨迹进行实时求解。
这一方法的难处主要在于优化问题中约束项的处理:具体的优化方程见[5],在该问题中,存在两个非凸约束:第一个是发动机推力的幅值约束:
(1.1)
第二个是发动机推力的姿态约束:
(1.2)
其中是人为设定的单位方向向量(比如竖直向上),而是角度的最大转动幅值。这两个约束可以分别直观地用几何表示为图1A和图1B中的红色区域(推力是二维的):
图1A 推力幅值约束的几何表示[6] 图1B 发动机推力姿态约束的几何表示[6]
从图中可以很明显地看到这两个约束是非凸的(区域中存在两点,它们之间的连线上的点不在区域中)这就会导致整个优化的求解变成一个非凸优化问题,一方面会导致求解速度变慢,另一方面最终求得的解的质量也堪忧(可能只是局部极值)。
这些非凸约束的求解瓶颈严重制约着火箭回收时生成的轨迹质量,因此必须要想办法克服。
▌解决方法——无损凸优化技术(lossless convexification)
该方法是由一位土耳其科学家Behçet Açıkmese于2005年首次提出[7],并在之后的十几年间不断完善。该方法的核心是通过增加额外的优化变量来重构约束,这样非凸约束就能转换成凸的。具体来说,我们将额外引入,两个额外变量。这样(1.1)将转换成
(1.3)
而(1.2)将变成
(1.4)
这样约束的几何表示就变成如下的两个凸区域,这样轨迹优化就变成了一个凸优化问题。
图2A 推力的幅值约束的凸化表示[6] 图2B 发动机推力姿态约束的凸化表示[6]
虽然非凸问题成功转换成了凸优化问题,但如何能保证这样转换之后求得的解仍是原问题的解呢?Behçet Açıkmese等利用哈密尔顿函数以及庞特里亚金最大化原理在数学上严格地证实了解的等价性。因此,这项理论的突破才最终有了实际火箭验证的可行性。在2013年,SpaceX就开始测试名为Grasshopper的火箭,将无损凸优化优化算法实现在了真火箭上,用于软着陆:
https://tv.sohu.com/v/cGwvNjM5ODc4My82MzQ1ODA3Mi5zaHRtbA==.html?vid=63458072&wx=0&channeled=1211020100&aid=6442393
之后经过一步步的迭代更新,才有了2018年猎鹰九号的成功回收(软着陆时间是在29min30s-30min):
https://www.youtube.com/watch?v=wbSwFU6tY1c&t=1836s
当然,火箭软着陆问题中的非凸约束远不止这两个,有兴趣的读者可参考列出的参考文献,做进一步详细阅读。此外,关于对无损凸优化方法的评价,可参考
https://www.zhihu.com/question/391756708/answer/2556173863
▌闲谈:控制的理论与技术,以及实际应用的关系
SpaceX猎鹰九号可回收火箭的成功是一个非常漂亮的控制实例:从控制理论问题的提出解决,再到实际实验,形成完善可靠的技术,并不断改进调试,最终产业化。
这一实例不禁让我们再次思考,对于我们这些做工程科学的研究者而言,应该选择怎样的科学问题?如果选择过于理论的课题,最终的结果能否呈现在实际系统上,而非空中楼阁,镜花水月。而如果选择偏实际的课题,其中是否蕴含着有足够深度的研究问题?如果能够找到一个既具有足够的理论深度,同时又具备应用于实际系统的可能,那自然是极好的,也是极幸运的。
路是要一步步地走,就拿无损凸优化技术来说吧,Behçet Açıkmese 最早在2005年就提出了相关的技术[7],后来的十多年里针对不同的约束类型和工况一直在改进和完善,最终才得以真正落地,开花结果。
期待有更多优质的控制方法从论文中走出,变成真正的生产力,推动社会进步。
参考文献
[1]“獵鷹9號運載火箭,” 维基百科,自由的百科全书. Jul. 08, 2022. Accessed: Jul. 22, 2022. [Online]. Available: https://zh.wikipedia.org/w/index.php?title=%E7%8D%B5%E9%B7%B99%E8%99%9F%E9%81%8B%E8%BC%89%E7%81%AB%E7%AE%AD&oldid=72563280
[2] © Stanford University, Stanford, and California 94305, “Stephen Boyd’s CVXGEN software helps guide SpaceX Falcon,” SystemX Alliance, Jan. 05, 2021. https://systemx.stanford.edu/news/2021-01-05-000000/stephen-boyd%E2%80%99s-cvxgen-software-helps-guide-spacex-falcon.
[3] Gfycat, “SCvx FeedForward GIF by embersarc,” Gfycat. https://thumbs.gfycat.com/DaringPortlyBlacklab-size_restricted.gif.
[4] “火箭垂直回收,什么‘姿势’最正确--科技--人民网.” http://scitech.people.com.cn/n1/2019/0507/c1007-31070968.html.
[5] B. Açıkmeşe, J. M. Carson, and L. Blackmore, “Lossless Convexification of Nonconvex Control Bound and Pointing Constraints of the Soft Landing Optimal Control Problem,” IEEE Transactions on Control Systems Technology, vol. 21, no. 6, pp. 2104–2113, 2013, doi: 10.1109/TCST.2012.2237346.
[6] D. Malyuta et al., “Convex Optimization for Trajectory Generation.” arXiv, Jun. 16, 2021. doi: 10.48550/arXiv.2106.09125.
[7] B. Acikmese and S. R. Ploen, “Convex Programming Approach to Powered Descent Guidance for Mars Landing,” Journal of Guidance, Control, and Dynamics, vol. 30, no. 5, pp. 1353–1366, Sep. 2007, doi: 10.2514/1.27553.
封面图片:https://www.youtube.com/clip/Ugkx_k-QAqRs89md9QVqJpltWROgHgdGKHc2
-END-
本文由西湖大学智能无人系统实验室博士生米轶泽原创,申请文章授权请联系后台相关运营人员。
▌知乎:空中机器人前沿
▌Bilibili:西湖大学空中机器人
▌Youtube:Aerial robotics @ Westlake University
▌实验室网站:https://shiyuzhao.westlake.edu.cn