- 会員限定
- 2018/02/07 掲載
NASA 小野雅裕氏に聞く、なぜ宇宙では「C言語」が使われるのか
『宇宙兄弟』の人気コラムニスト
宇宙探査機の“知性”を作る仕事
──なぜ、宇宙分野に携わるようになったのですか。小野氏:小さいころから宇宙が好きでした。ボイジャー2号が海王星に行ったときに感動しました。私も将来あんな風になりたいと考え、宇宙工学科に進学しました。まさに「宇宙一筋」です。
──所属するNASAジェット推進研究所では、どのような分野を担当されているのでしょうか?
小野氏:自律化に関することを専門としています。どうやって自ら危険を感知して行動を意思決定できるかを研究しています。また、ロボティックスやAIに関することや火星探査機の自動運転などにも携わっています。
宇宙探査機の操作はこれまで手動で行われてきました。しかし、その方法だけではできることが限られてしまいます。たとえば火星にある洞窟を探索したい場合、コミュニケーションの通信が限られ、事前に軌道上から偵察(reconnaissance)することもできません。手動で探査するには限界があり、その限界を超えるためにロボットがどんどん自律化する必要があります。
私はその一例として、火星探査ミッションで用いる探査機「Mars 2020 Rover」の自動運転機能のソフトウェア開発に携わっています。また、プロジェクトによってはソフトウェア開発以外にもリサーチャーとしての役割を担うこともあります。
──宇宙分野におけるソフトウェア開発はどのような役割を担っているのでしょうか?
小野氏:人間は「ホモ・サピエンス(知恵のある人)」と言われています。その人間を人間足らしめているのは「筋肉」ではなく「知性」だと思います。ロボットの機体はもちろん必要ですが、私たちは宇宙探査機の“知性”を作っています。
現在の業務には5年ほど携わっていますが、自動化させることへの抵抗がいくつかあることが分かりました。まずは、新技術を採用する際の障壁です。新技術には予想外のリスクが伴うことがあります。宇宙探索の場合、絶対に失敗はできません。
そのため、リスクを取って新技術を使うよりも、枯れた技術を使って信頼性を高めるケースが非常に多いです。新技術を使う場合は、絶対にそれが必要とされるときです。自動化は新技術であるため、心理的な障壁は大きいものがあります。その壁と日々戦っています。
宇宙開発を支える枯れた技術たち
小野氏:かなり違うものだと思います。まず、開発には「C言語」を使用しています。PythonやJavaのようなインタープリタや仮想マシンを必要とする言語は計算リソースが非常に限られた宇宙探査機では厳しく、C++よりも長年の蓄積があり単純なCが好まれます。
もちろん、その他にも色々な制約の下、開発が行われています。たとえば、Mars 2020 Roverで利用されているCPUは、1990年台後半の「PowerPC 750」のCPUを改良したバージョンです。そのクロック数は100~200MHz、搭載するRAMの容量は32、または64MBです。宇宙では放射線耐性がある別バージョンを作る必要があるため、PowerPC 750の宇宙バージョンである「RAD 750」を使用しています。新しいCPUを使うと色々なバグがあるので“枯れた技術”を使います。
必ずしも新しい技術がいいとは限りません。ロシアの宇宙船のソユーズは50年近く使われていますが、その間の時代の変化に耐えて使われている抜群の信頼性を持っているともいえます。
しかし、新しい技術が生まれないと変化もありません。そのバランスが大事だと思います。色々な制約の下でソフトウェアを開発する一方で、いずれ5年、10年後に実を結ぶかもしれない先進的な研究にも携わっています。私は、その両側に足を置いて新しい技術を少しずつプロジェクトに落とし込んでいくことを進めています。
その他にも、サードパーティーソフトは原則禁止です。高い信頼性が命なので“非常に保守的なシステム”だといえます。どうやって64メガのRAMで、自動運転や画像認識、経路設計を行うかが非常に大変です。そこは、エンジニアとしての腕の見せ所でもあると考えています。
【次ページ】NASAから見た日本の有望株は?
関連コンテンツ
関連コンテンツ
PR
PR
PR
今すぐビジネス+IT会員にご登録ください。
すべて無料!今日から使える、仕事に役立つ情報満載!
-
ここでしか見られない
2万本超のオリジナル記事・動画・資料が見放題!
-
完全無料
登録料・月額料なし、完全無料で使い放題!
-
トレンドを聞いて学ぶ
年間1000本超の厳選セミナーに参加し放題!
-
興味関心のみ厳選
トピック(タグ)をフォローして自動収集!
投稿したコメントを
削除しますか?
あなたの投稿コメント編集
通報
報告が完了しました
必要な会員情報が不足しています。
必要な会員情報をすべてご登録いただくまでは、以下のサービスがご利用いただけません。
-
記事閲覧数の制限なし
-
[お気に入り]ボタンでの記事取り置き
-
タグフォロー
-
おすすめコンテンツの表示
詳細情報を入力して
会員限定機能を使いこなしましょう!
「」さんのブロックを解除しますか?
ブロックを解除するとお互いにフォローすることができるようになります。
ブロック
さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。
さんをブロックしますか?
ブロック
ブロックが完了しました
ブロック解除
ブロック解除が完了しました