はじめに
凸最適化やMPC(モデル予測制御)は、ロケットの着陸誘導において強力な手法だが、オンラインでの最適化計算には計算時間とプロセッサ資源が必要だ。凸最適化では最適軌道をリアルタイムに求解し、MPCでは予測ホライズンにわたる最適制御を逐次計算する。これらはいずれも計算負荷が高く、リアルタイム制約が厳しい状況やプロセッサが限られた組込みシステムでは制約となる場合がある。
ニューラルネットワーク(NN)誘導は、オフラインで学習したNNモデルによって最適誘導則を近似し、オンラインでは高速な推論(Forward Pass)のみで誘導指令を生成するアプローチだ。学習ベースの誘導は計算効率とロバスト性を兼ね備える可能性があり、将来のロケットGNCの重要な研究テーマとなっている。
NN誘導の基本概念
最適誘導則の関数近似
NN誘導の核心的なアイデアは、最適誘導則を関数近似することにあたる。
従来のオンライン最適化:
状態 x → [最適化ソルバー(凸最適化/NLP)] → 最適制御 u*
↑ 計算時間:数十ms〜数百ms
NN誘導:
状態 x → [NN推論(Forward Pass)] → 近似最適制御 ũ
↑ 計算時間:数μs〜数ms
NNは多数の最適化問題の解(入力:状態x、出力:最適制御u*)を教師データとして学習し、状態空間全体にわたって最適誘導則を近似する。
学習パイプライン
典型的なNN誘導の開発パイプライン:
- 教師データ生成:凸最適化やNLPソルバーで大量の最適軌道を計算
- データセット構築:(状態, 最適制御)のペアをデータセットに整理
- NN学習:教師あり学習でNNを訓練
- 検証:テストセットでの誘導精度を評価
- 閉ループシミュレーション:NNを誘導則として組み込んだ6DoFシミュレーション
- ロバスト性検証:Monte Carloシミュレーションでの統計的評価
NN誘導のアーキテクチャ
全結合ネットワーク(MLP)
最も基本的なNN構造はMLP(Multi-Layer Perceptron)だ。
入力層 隠れ層1 隠れ層2 出力層
[位置] ┌──[64ニューロン]──[64ニューロン]──[推力方向]
[速度] │ (ReLU/tanh) (ReLU/tanh) [スロットル]
[質量] ───┤
[姿勢] │
[時間] └──
入力:現在の状態ベクトル(位置、速度、質量、姿勢等) 出力:制御指令(推力方向、スロットルレベル等)
活性化関数の選択 – ReLU:計算が高速だが、出力が制約なし – tanh:出力が[-1, 1]に制約されるため、正規化された制御指令に適する – Sigmoid:出力が[0, 1]に制約、スロットル等に適する
Time-to-Go予測ネットワーク
NNで残り飛行時間(Time-to-Go: tgo)を予測し、これを閉形式の誘導則(Powered Explicit Guidance等)に代入するアプローチ。
tgoの正確な計算は非線形方程式の反復解法を必要とするが、NNで近似することで計算を大幅に高速化できる。NNの出力が直接的な制御入力ではなくtgoという中間量であるため、物理的な意味が保持され、解釈性が高い。
シーケンスモデル
時系列データを扱うRNN(Recurrent Neural Network)やTransformerベースのアーキテクチャも研究されている。
LSTM/GRU – 過去の状態履歴を考慮した誘導 – 風推定やシステム同定を内包する能力 – シーケンシャルな推論のため計算は遅い
Transformer – 長距離依存性の捕捉に優れる – 並列計算が可能 – 注意機構のメモリ使用量が課題
教師あり学習による誘導
データ生成
教師あり学習の品質はデータの質と多様性に依存する。
サンプリング戦略 – 初期条件(位置、速度、質量)の範囲を定義 – LHS(ラテン超方格サンプリング)で効率的にサンプル – 各初期条件に対して凸最適化/NLPで最適軌道を計算 – 軌道全体をサンプリングして(x, u*)ペアを収集
典型的なデータセットサイズ:10万〜100万サンプル
学習の目的関数
教師あり学習の損失関数:
L = Σ ||u*(xi) – NN(xi; θ)||²
MSE(Mean Squared Error)が基本だが、以下の拡張も有効:
- 制約違反ペナルティ:着陸制約(速度、位置)の違反にペナルティを追加
- 物理制約の組込み:推力上限・下限を出力層のクランプで保証
- 軌道終端条件の重み付け:着陸直前の精度を重視
模倣学習(Imitation Learning)
教師あり学習は模倣学習(Imitation Learning)の一種と見なせる。専門家(最適化ソルバー)の判断を模倣する。
DAgger(Dataset Aggregation) 単純な教師あり学習では、NNの出力が最適軌道から逸脱した場合の復帰が学習されない。DAggerは: 1. NNによる閉ループ軌道を生成 2. 軌道上の各状態で専門家に最適制御を問い合わせ 3. 新しいデータをデータセットに追加して再学習
これによりNNの分布シフト問題を緩和する。
強化学習との組み合わせ
NN誘導 + RL微調整
教師あり学習で事前訓練したNN誘導を、強化学習(RL)で微調整するアプローチ。RLは報酬信号に基づいて方策を改善する手法であり、閉ループ性能の最適化に適している。
- 凸最適化の解で教師あり学習 → 基本的な誘導能力を獲得
- RLで閉ループ性能を最適化 → 外乱応答やロバスト性を向上
- ドメインランダマイゼーションで汎化能力を強化
教師あり学習がRLの初期方策を提供し、探索効率を大幅に改善する。
End-to-End RL
教師データを使わず、RLのみでNN誘導を学習するEnd-to-Endアプローチも研究されている。報酬関数の設計が学習結果を大きく左右する。
安全性の保証
NNの不透明性問題
NN誘導の最大の課題は、NNがブラックボックスであり、その出力に対する形式的な安全性保証が困難なことだ。
| 課題 | 説明 |
|---|---|
| 分布外入力 | 学習データにない状態での挙動が予測不能 |
| 対抗的摂動 | 微小な入力摂動で大きな出力変動 |
| 解釈性 | NNの判断根拠が人間に理解困難 |
| 認証 | 従来のソフトウェア認証手法が適用困難 |
安全フィルタ
NN誘導の安全性を確保するアプローチの一つが安全フィルタ(Safety Filter)だ。
状態 x → [NN誘導] → ũ → [安全フィルタ] → u_safe → プラント
安全フィルタは、NNの出力ũが安全制約を違反する場合に最小限の修正を加えて安全な制御u_safeを出力する。
安全フィルタの実装: – 制御バリア関数(CBF: Control Barrier Function):安全集合の不変性を保証 – 最適化ベース:NN出力に最も近い安全な制御を凸最適化で計算 – リーチャビリティ解析:到達可能集合に基づく安全判定
検証可能なNN
NNの出力に対する形式的保証を提供する研究:
区間解析(Interval Analysis) 入力の不確実性区間に対するNN出力の出力範囲を計算する。
リプシッツ連続性の保証 NNのリプシッツ定数を制約し、入力の微小変動に対する出力変動を限定する。スペクトル正規化等の手法がある。
混合整数計画による検証 ReLUネットワークを混合整数線形計画問題(MILP)としてエンコードし、制約違反の有無を厳密に検証する。計算負荷が大きいがNNサイズが小さければ実用的だ。
組込み実装
推論の高速化
フライトコンピュータ上でのNN推論を高速化する手法:
| 手法 | 効果 | 適用性 |
|---|---|---|
| 量子化(INT8/INT4) | 計算速度2〜4倍、メモリ削減 | 精度劣化に注意 |
| プルーニング | パラメータ数削減 | 構造的プルーニングが有効 |
| 知識蒸留 | 小型モデルへの知識転移 | 精度維持しつつ圧縮 |
| FPGA実装 | 並列演算による高速化 | カスタム設計が必要 |
| TensorRT等の最適化 | GPU向けの推論最適化 | GPU搭載時 |
確定的実行時間
フライトソフトウェアに組み込むNNは確定的な実行時間(WCET)が保証される必要がある。
- 固定アーキテクチャ(動的な構造変更なし)
- メモリアロケーションなし(静的メモリ)
- ループ回数の上限を固定(再帰的構造の回避)
- 浮動小数点演算の決定論的順序
研究動向
NASA / JPLの研究
NASA JPLは、月面着陸や火星着陸の誘導にNNの適用を研究している。特に、地形回避を考慮したリアルタイム軌道計画において、凸最適化のウォームスタートにNNを使用する手法が報告されている。
大学研究
- スタンフォード大学:凸最適化の解をNNで近似するG-FOLD + NN
- ジョージア工科大学:RLとNNを組み合わせた着陸誘導
- イリノイ大学:安全フィルタ付きのNN誘導
産業界
SpaceXの具体的なNN利用は非公開だが、Dragonの自律ドッキングにニューラルネットワーク画像認識が使用されていることが知られている。着陸誘導への応用も進められている可能性がある。
古典的手法との比較
| 項目 | 凸最適化(オンライン) | NN誘導 |
|---|---|---|
| 計算時間 | 数十〜数百ms | 数μs〜数ms |
| 最適性 | 厳密最適 | 近似最適 |
| ロバスト性 | 再計算で対応 | 学習データ範囲内 |
| 制約保証 | 最適化で保証 | 安全フィルタが必要 |
| 認証 | 困難(ソルバー依存) | 非常に困難 |
| 実装の複雑さ | ソルバー統合 | 推論エンジンのみ |
| 汎化能力 | 制約内で汎用 | 学習データ分布に依存 |
実用的な使い分け: – NN誘導で高速な初期解を生成し、凸最適化で精密修正する組み合わせ – NNを凸最適化のウォームスタートに使用して収束を加速 – 通常はNN誘導を使い、安全フィルタが介入する場合のみ凸最適化にフォールバック
まとめ
NN誘導は、最適軌道計算のオフライン/オンライン分離により計算効率の飛躍的向上を実現する手法だ。凸最適化やRLの解を教師データとした学習で、ミリ秒以下の推論時間で近似最適な誘導指令を生成できる。
しかし、安全性保証と認証の課題は依然として大きい。安全フィルタ、検証可能なNN構造、リプシッツ連続性保証等の研究が進んでいるが、有人ロケットの主誘導系としてNN単独で使用されるまでには、まだ技術的・制度的なハードルがある。
現実的なアプローチとしては、NN誘導と凸最適化の組み合わせ、あるいはNNを補助的に使用するハイブリッド方式が、当面の実用化の方向性だ。