本書の題名にある「3つ」とは、アポロ計画を推進した、技術者・宇宙飛行士・科学者のことです。アポロ計画は、ヒーローとして、宇宙飛行士をメディアの前面に押し出しました。しかし、当然のことながら、技術者の存在がなければ、アポロ計画は進展しませんでした。
私は、本書で初めて、マーガレット・ハミルトン(1936-)の存在を知りました。マーガレット・ハミルトンは、アポロのコンピューター・ソフトウェア作成の功労者です。後年、大統領自由勲章を贈られています。MIT(マサチューセッツ工科大学)でコンピュータープログラマーとして働き始めたのは、24歳の時でした。短期間のつもりで仕事を始めた彼女でしたが、1965年には、アポロのフライト・ソフトウェアの統括をするようになりました。
マーガレット・ハミルトンのソフトウェアに命を救われた宇宙飛行士はたくさんいます。その中で有名なのは、アポロ8号とアポロ11号です。マーガレット・ハミルトンは、幼い娘(ローレンス)を連れて、夜間や週末にもIL(器械工学研究所)のオフィスに詰めて仕事をしていました。幼い娘は、司令船のシュミレーターモデルにある誘導コンピューター(DSKY、ディスキー)で遊んでいました。すると突然、「ママ、来て!」と娘が叫びました。マーガレット・ハミルトンが駆けつけると、ディスプレーの画面に滅茶苦茶な表示が出ていました。利発な娘は、どう操作したかを覚えていて、「P01」と入力したことを告げました。実は、「P01」は、誘導コンピューターを打ち上げ前のプログラムに初期化してしまうコマンドだったのです。もし初期化されてしまったら、宇宙船は現在位置が分からなくてなってしまいます。
マーガレット・ハミルトンは、宇宙飛行士が間違って「P01」を入力した時に備えて、事態を回避するためのコードを導入しようとしました。しかしNASAは、「宇宙飛行士は完璧に訓練されているから、決して『P01』を打つような間違いを犯さない」とコードの導入を何度も拒否しました。マーガレット・ハミルトンは、仕方なくマニュアルに、「飛行中に『P01』を選択しないこと」という言葉を記すに留めました。
ところが、事態は現実に起こりました。アポロ8号が月から地球に向かっていた時です。ジム・ラヴェルが、宇宙船のコースの微調整の際に、「P01」の入力をしてしまいました。誘導コンピューターの位置情報データが、片っ端から上書きされていきます。慌てたNASAは、マーガレット・ハミルトンに助けを求めました。マーガレット・ハミルトンは、「ラヴェルさんと、1つ1つデータを読み合わせしましょう。」と気の遠くなるような時間をかけて作業を始めました。
マーガレット・ハミルトンと娘ローレンスのおかげで、アポロ8号のクルーは救われたのです。
もう一つは、アポロ11号の月着陸船が月面に降下中、アラームが鳴り響いた事件です。今まで見たこともないような表示が出る中、「ゴー」の指令を無理やり管制官は出しました。意味不明な表示が出る中、月面着陸に成功したのは、実はマーガレット・ハミルトンの功績があったからです。彼女は事前に、万一誘導コンピューターに不具合があっても、優先度の高い計算を断固として処理し続けるソフトウェアー(非同期処理システム)を設計し導入していたのです。コンピューターは、数十秒に一回の割合で再起動をしながらも、月面着陸を最後まで誘導し続けたそうです。
参考文献:3つのアポロ月面着陸を実現させた人びと,的川泰宣,B&Tブックス日刊工業新聞社
マーガレット・ハミルトン,Wikipedia,2019.12.1閲覧
0コメント