最佳化的應用

最佳化的應用1995 年 8 月 9 日,韓國同步衛星一號搭乘麥格當納-道格拉斯的 Delta II 型火箭升空,準備進入同步軌道。Delta II 火箭的第一級火箭體外掛有 12 支輔助推力筒,一旦燒盡,這 12 支小推力筒便會自行彈射脫離。但當天有一支推力筒無法脫開,跟著整支火箭一直上升,直到第一級火箭燒光,才墜回海面。每支空推力筒重 3,000 磅,很自然地,這人造衛星到不了該到達的高度。

由赤道垂直向上 35,858 公里,就是同步軌道的高度,同步軌道上的任何衛星,繞地球一周的時間恰好是 24 小時。因為其公轉的時間與地球自轉周期一致,以致衛星下的幾個國家,覺得有顆衛星停在附近的天空不去,同步衛星在國防、通訊、海洋、大氣監控上的價值由此可略見一斑。同步衛星軌道很高,因此發射成本比一般低軌道衛星昂貴。

衛星在軌道中運行一段時間後,會因誤差的累積而漸漸偏離原本的姿態,進入軌道後的衛星載有可供 10 年使用的燃料,利用小推力管(催化-聯氨推力管)可把偏離的姿態修正,使通訊保持暢通。

因為前述的推力筒問題,發射衛星的洛克西德馬丁公司(Lockheed-Martin Co.)利用小推力管,在兩周內,把整顆衛星由 31,459 公里的軌道,向上推到 35,858 公里高的同步軌道,其間共經歷了 17 次的噴射,每次噴射的時間由數分鐘到 12 小時都有。雖然韓國衛星已被送入同步軌道,但補救推送的過程卻把可供 10 年調整用的火箭燃料,折損掉 4.5 年,也就是說,該衛星的壽命只剩一半多一些。

洛克西德馬丁公司在處理這個問題時,只憑藉他們過往的經驗,利用推力管慢慢地把衛星推上去,其間並沒有真正使用最佳化技術。發射一顆衛星相當昂貴,而同步衛星更貴,因此伊利諾大學香檳校區航太系在一年後,試著以最佳化控制工程重新尋找這問題的答案。

既然討論到最佳化,一定要知道把什麼東西最佳化。以這個案子來說,儘量保存可用的小推力管的燃料,以供日後調整使用才是正途。伊利諾大學研究團隊試著使用非線性規劃直接定位的技術,來解決這個問題。在軌道轉換時,推力愈強愈好,且噴射推進的時間愈短愈好,才能節省燃料,因此小推力管不能一直開著,要分段點火。這也衍生出下一組問題:分段點火要分幾段?每一段點火的時間各有多長?在軌道上何處點火?

波音公司及史丹福大學把直接定位法轉換成軟體,由 NPSOL,NZSOL,一直演進到如今的 SNOPT 6.0。而執行這些軟體的平臺,也由超級電腦轉進到目前的 PC,例如以配備簡單的 400 MHz、記憶體 128MB 的 Linux 伺服器做為 SNOPT 的作業平臺,便能應付一般的最佳化問題。

直接定位法是如何運作而得到最佳的結果呢?舉個簡單的例子,要開車由高雄前往臺北,到底哪條路才是最快的走法?在毫不知情的情況下,依照傳統方法,你很自然地就往北開,過了桃園,發現終點不是臺北,而是到了淡水。這時候,請由高雄再出發,但方向稍稍向右轉一些。如此不斷修正,數次重新出發後,總會到臺北。

直接定位法則一反前述做法,先任意猜測汽車路徑是:高雄 → 臺東 → 花蓮 → 宜蘭 → 臺北。再來它開始問:高雄 → 臺東,是最快的北上路徑嗎?

臺東 → 花蓮,是最快的北上路徑嗎?

花蓮 → 宜蘭,是最快的北上路徑嗎?

宜蘭 → 臺北,是最快的北上路徑嗎?若不是,電腦會依循非線性規劃理論開始調整,結果,第一次內插呈現:高雄 → 臺南 → 花蓮 → 新竹 → 臺北。再經幾次調整之後,就會變成:高雄 → 臺南 → 臺中 → 新竹 → 臺北,也就是我們熟悉的中山高速公路,這是北高最適行車路線。

利用直接定位法及 CONVEX 超級電腦,伊利諾大學的團隊發現本案確實有改善空間。該衛星連殼帶燃料重 832.1 公斤,洛克希德馬丁公司耗用 121 公斤燃料,在相當於 10 年的壽命中折損掉 4.5 年。在最佳化工程的計算下,本案只需耗用 72 公斤的燃料,便可把衛星修正到同步軌道,10 年的壽命只要折損 2.7 年,仍有 7.3 年可用,結果相當令人振奮。

此外,洛克希德馬丁公司選擇一次壓平 20.7 度的初軌道角,把衛星放到赤道面上,才再進行 17 次的軌道修正。而最佳化工程則建議在 20.7 度中要留下 1.24 度,把 1.24 度歸在修正過程中一併處理,才有最佳效果。修正過程只使用了推力管 11 次來噴射推進,而六紮軌道只需耗時 6.02 天。

最佳化工程的應用相當生活化,不單只用在太空工程。在澎湖科技大學最佳化實驗室中,我們嘗試把直接定位技術用在其他領域,例如澎湖旅館定價技術、汽車高速閃避障礙物行車系統及教會機器手臂接雞蛋。