科学者、最初のCUDA飛行を指揮
Tiffany Trader

ジョージア工科大学の教授、Jon Rogersは最近、無人飛行機のおそらく世界初のGPU対応飛行を完了した。Rogersと彼のチームは、2014年1月10日に行われた成功したミッションの一部として、パラフォイルの飛行を誘導するためにCUDA-on-ARM開発ボードを使用した。
パラフォイルは、一般的に遠隔地への食料やその他の物資を提供する目的で使用するパラシュートの一種である。単純な丸いキャノピーデザインよりも、操縦可能であるにもかかわらず、それらはしばしば、突風や乱気流のために自分の目標を失う。Rogersは、風の不確実性により潜在的軌道に関連する障害物の衝突危険度を評価することができるGPU上でのリアルタイムMonte Carloシミュレーションを用いたことを説明する。「不確定な風に基づくリスクをリアルタイムに評価し、それに応じて制御を決定できることが、この健全な誘導アルゴリズムでの成果です。」と教授は指摘する。
実験は、翼長6フィートの動力付きパラフォイルを用いた。チームは、小型電池で駆動するTegra ARMプロセッサに統合されたQuadroカードを含むSECO CARMA開発ボードの一部であるNVIDIA Quadro 1000M GPUを使用した。
HPCwireとの電子メールでの会話で、Rogersは「GPUボードは、着陸軌道指令へのリアルタイム更新を提供するための特注のセンサーパッケージに結合されています。」と説明する。
「初飛行は素晴らしい経験でした ー このような計算能力を持った低コストの航空機を装備することは、誘導制御の観点から変革的です。」とRogersは共有した。「この程度の計算処理量が利用可能な場合に完全に新しい制御タスクは可能になります。私たちは、シミュレーションから飛行試験へ私たちのアイデアを取り入れるために約一年働いてきました。そして、それが報われました。」
今年初めに実施されたNVIDIA CUDAスポットライトのインタビューの一部として、Rogersはロボットシステムの誘導と制御のためにGPUを使用する彼の仕事についての追加の詳細を提供した。「GPUは、私たちがロボットデバイスをリアルタイムで正確に不確実性を定量化することを可能にするツールです。」と彼は述べた。「以前の健全制御アルゴリズムは、線形で、制御公式がリアルタイムで実行できることを保証するためにGaussian近似を行いました。問題は、これらの仮定は、多くの航空宇宙機のために通常は有効ではありませんし、性能低下につながります。GPUは、GPU上に実装された場合に1〜2桁の実行時間の削減をする『完全並列』プロセスのMonte Carloシミュレーション経て、非線形システムのための非Gaussian不確実性を伝播することを可能にします。」
その誘導操作を実行するために、パラフォイルコードは、Monte Carloシミュレーションが実行されるたびに約140万乱数(10万軌道および14の無作為化変数)を生成する必要があり、飛行中の機体における2秒毎を意味する。cuRAND(NVIDIAのCUDA乱数生成ライブラリ)を用いることにより、CPUからこのデータを転送するよりも各GPUスレッドで乱数化された初期条件と風値を生成することができる。これは、コード内の主なボトルネックを除去する。
Rogersは、カリフォルニア州サンノゼで3月26日にNVIDIA GPU技術会議でプロジェクトの詳細について講演する予定である。
「GPUは、閉回路制御システムの一部としてリアルタイムMonte Carloシミュレーションを実行する能力を介して不確実性の定量化のための強力な新しいツールとして注目されはじめています。」とセッションの要約で言及する。「最適制御法でGPUベースの不確実性伝播を組み合わせることによって、ロボット車両は、未知の環境で『彼らの予想の防衛策を講じる』ことができ、予想外の乱れから彼ら自身を守れます。」
成功した飛行の最初の報告についてのMarc Hamiltonのブログ投稿へ感謝の意を表す。